:root{
    --primary-color: hsl(208, 42%, 17%);
    --secondary-color: hsl(14, 91%, 54%);
    --highlight-color: hsl(14, 91%, 54%);
    --neutral-color-1:hsl(0, 0%, 100%);
    --neutral-color-2:hsl(46, 64%, 95%);
    --neutral-color-3:hsl(46, 64%, 87%);
    --neutral-color-4:hsl(46, 64%, 84%);
    --neutral-color-5:hsl(0, 0%, 50%);
    --neutral-color-6:hsl(0, 0%, 40%);
    --neutral-color-7:hsl(0, 0%, 30%);
    --neutral-color-8:hsl(0, 0%, 25%);
    --neutral-color-9: hsl(0, 0%, 17%);
    --neutral-color-10: hsl(0, 0%, 0%);
    --primary-font: "Noto Sans", sans-serif;
    --secondary-font: "Montserrat", sans-serif;
    --awesome-font: 'Font Awesome 6 Pro';
    --animate-duration: 500ms;
    --animate-delay: 0.5s;
    --star-size: 2rem;
    --star-color: var(--neutral-color-3);
    --star-background: hsl(44, 100%, 55%);
}

/* Lenis Smooth Scroll */
html.lenis, html.lenis body {
    height: auto;
}
.lenis.lenis-smooth {
    scroll-behavior: auto !important;
}
.lenis.lenis-smooth [data-lenis-prevent] {
    overscroll-behavior: contain;
}
.lenis.lenis-stopped {
    overflow: hidden;
}
.lenis.lenis-smooth iframe {
    pointer-events: none;
}

/* Hide native scrollbar - OverlayScrollbars will replace it */
html, body {
    scrollbar-width: none;
    -ms-overflow-style: none;
}
html::-webkit-scrollbar,
body::-webkit-scrollbar {
    display: none;
}

/* OverlayScrollbars Custom Theme - floating handle, no track */
body .os-scrollbar.os-theme-custom,
.os-scrollbar.os-theme-custom {
    --os-size: 10px;
    --os-padding-perpendicular: 2px;
    --os-padding-axis: 2px;
    --os-handle-bg: var(--highlight-color);
    --os-handle-bg-hover: var(--highlight-color);
    --os-handle-bg-active: var(--highlight-color);
    --os-handle-border-radius: 0;
    --os-track-bg: transparent;
    --os-track-bg-hover: transparent;
    --os-track-bg-active: transparent;
    box-sizing: border-box;
}
body .os-scrollbar.os-theme-custom.os-scrollbar-vertical,
.os-scrollbar.os-theme-custom.os-scrollbar-vertical {
    width: 10px !important;
    right: 0 !important;
    background: transparent !important;
}
body .os-scrollbar.os-theme-custom .os-scrollbar-track,
.os-scrollbar.os-theme-custom .os-scrollbar-track {
    background: transparent !important;
}
body .os-scrollbar.os-theme-custom .os-scrollbar-handle,
.os-scrollbar.os-theme-custom .os-scrollbar-handle {
    background: var(--highlight-color) !important;
    border-radius: 0 !important;
}

/* Carousel Component - Split Layout */
.carousel.fma-flex-container {
    --carousel-transition: 800ms;
    --carousel-interval: 5000ms;
}

/* Split-1 needs to contain the absolutely positioned car-items */
.carousel.fma-flex-container .split-1 {
    position: relative;
    overflow: hidden;
}

/* Split-1 text container needs to fill the space */
.carousel.fma-flex-container .split-1 .container-content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* Split-2 image container */
.carousel.fma-flex-container .split-2 .fma-image-cover {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

/* Carousel items - stacked, start zoomed in */
.carousel.fma-flex-container .split-1 .car-item,
.carousel.fma-flex-container .split-2 .car-item {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    visibility: hidden;
    z-index: 1;
}

/* Inactive items stay zoomed in, ready to animate */
.carousel.fma-flex-container .split-1 .car-item {
    transform: scale(1.08);
    transition: opacity var(--carousel-transition) ease-in-out,
                visibility var(--carousel-transition) ease-in-out,
                transform var(--carousel-transition) ease-out;
}

.carousel.fma-flex-container .split-2 .car-item {
    transform: scale(1.08);
    transition: opacity var(--carousel-transition) ease-in-out,
                visibility var(--carousel-transition) ease-in-out,
                transform var(--carousel-transition) ease-out;
}

/* Active items: fade in while zooming out to 100% */
.carousel.fma-flex-container .split-1 .car-item.active,
.carousel.fma-flex-container .split-2 .car-item.active {
    opacity: 1;
    visibility: visible;
    transform: scale(1);
    z-index: 2;
}

/* Split-1 text items positioning */
.carousel.fma-flex-container .split-1 .car-item {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-inline: max(80px, 8vw);
    padding-block: max(100px, 5vw);
}
/* Floor the hero text box height so short copy doesn't let the section
   collapse behind the top-left logo. fma-height.js measures with margins,
   so this also raises the section min-height. */
.carousel.fma-flex-container .split-1 .hero-text-box {
    margin-block: 200px;
}
/* Split-2 image items */
.carousel.fma-flex-container .split-2 .car-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Slide Number Indicator — hidden per client request */
.carousel.fma-flex-container .carousel-slide-number {
    display: none;
    position: absolute;
    bottom: 25px;
    right: 40px;
    font-family: 'Noto Sans', sans-serif;
    font-weight: 800;
    font-size: 162px;
    line-height: 1;
    letter-spacing: -0.03em;
    color: rgba(255, 255, 255, 0.6);
    z-index: 5;
    pointer-events: none;
    mix-blend-mode: overlay;
}

/* Navigation Arrows - positioned in split-2 */
.carousel.fma-flex-container .carousel-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    background: rgba(0, 0, 0, 0.3);
    border: none;
    padding: 16px 12px;
    cursor: pointer;
    transition: background 0.3s ease, opacity 0.3s ease;
    opacity: 0;
}

.carousel.fma-flex-container:hover .carousel-nav {
    opacity: 1;
}

.carousel.fma-flex-container .carousel-nav:hover {
    background: rgba(0, 0, 0, 0.6);
}

.carousel.fma-flex-container .carousel-prev {
    left: 20px;
}

.carousel.fma-flex-container .carousel-next {
    right: 20px;
}

.carousel.fma-flex-container .carousel-nav svg {
    display: block;
}

/* Dot Navigation - positioned in split-1 */
.carousel.fma-flex-container .carousel-dots {
    position: absolute;
    bottom: 30px;
    left: 60px;
    z-index: 10;
    display: flex;
    gap: 10px;
    align-items: center;
}

/* Dot button - larger touch target, visual sliver inside */
.carousel-dot {
    position: relative;
    width: 50px;
    height: 33px;
    border-radius: 0;
    background: transparent;
    border: none;
    cursor: pointer;
    padding: 0;
}

/* Visual sliver (background track) */
.carousel-dot::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
    height: 3px;
    background: rgba(255, 255, 255, 0.4);
    transition: height 0.2s ease;
}

.carousel-dot:hover::before {
    background: rgba(255, 255, 255, 0.6);
}

.carousel-dot.active::before {
    height: 5px;
    background: rgba(255, 255, 255, 1);
}

/* Progress fill inside dots */
.carousel-dot .dot-progress {
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 3px;
    background: var(--highlight-color, #f4511f);
    z-index: 2;
    transition: height 0.2s ease;
}

.carousel-dot.active .dot-progress {
    height: 5px;
}

/* Progress bar container - hidden, progress now in dots */
.carousel.fma-flex-container .carousel-progress-container {
    display: none;
}

.carousel.autoplay-paused .carousel-progress {
    animation-play-state: paused;
}

/* Ping-pong carousel — grid-stacked fade so the first slide carries the layout dimensions */
.carousel.ping-carousel {
    display: grid;
    grid-template-columns: 1fr;
    grid-auto-rows: auto;
    position: relative;
    width: 100%;
    overflow: hidden;
}
.carousel.ping-carousel .car-item {
    grid-column: 1 / 2;
    grid-row: 1 / 2;
    width: 100%;
    opacity: 0;
    visibility: hidden;
    z-index: 1;
    transition: opacity var(--ping-carousel-transition, 800ms) ease-in-out,
                visibility var(--ping-carousel-transition, 800ms) ease-in-out;
}
.carousel.ping-carousel .car-item.active {
    opacity: 1;
    visibility: visible;
    z-index: 2;
}
.carousel.ping-carousel .car-item img {
    width: 100%;
    height: auto;
    object-fit: cover;
    display: block;
}
.carousel.ping-carousel .carousel-dots {
    position: absolute;
    bottom: 16px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
    display: flex;
    gap: 8px;
    align-items: center;
}

p, a, html {
    font-family: var(--secondary-font);
    font-size: 20px;
}
.wpforms-field-container * input {
    font-family: var(--secondary-font)!important;
    font-size: 20px;
}
a {
    color: var(--secondary-color);
    font-weight: 600;
}
p, .wys p, .wpforms-description{
    font-weight: 400!important;
    line-height: 1.5!important;
    letter-spacing: .5px!important;
    margin: 0!important;
    font-family: var(--secondary-font);
}
.primary-font{
    font-family: var(--primary-font);
}
.secondary-font{
    font-family: var(--secondary-font);
}
ul, li{
    font-family: var(--primary-font);
}
h1, h2, h3, h4, h5{
	font-family: var(--primary-font);
    line-height: 1;
    margin:0;
    font-weight: 700;
} 
.wpforms-title{
    font-size: 2.25rem!important;
    font-family: var(--primary-font);
}
.h1, .h2, .h3, .h4, .h5{
	font-family: var(--secondary-font);
    line-height: 1;
    font-weight: 600;
    margin:0;
}
*[data-color="white"], *[data-color="neutral-1"] {
    color: var(--neutral-color-1);
}
*[data-color="black"]{
    color: var(--neutral-color-9);
}
*[data-color="primary"]{
    color: var(--primary-color);
}
*[data-color="highlight"]{
    color: var(--secondary-color);
}
*[data-color="secondary"]{
    color: var(--secondary-color);
}
h1, .h1{
    letter-spacing: 0;
	position: relative;
}

#footer h3{
    font-size: 16px;
}
.footer-1-container {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    align-items: center;
}
.image-hl-lt{
	border-right: 10px solid var(--secondary-color);
}
.image-hl-rt{
	border-left: 10px solid var(--secondary-color);
}
h1.entry-title {
    padding-bottom: 20px;
}
.flag {
    font-family: var(--secondary-font);
    line-height: 1;
    font-weight: 600;
    width: fit-content;
    letter-spacing: 0px;
    font-size: .9rem !important;
    text-transform: capitalize;
    padding-bottom: 10px !important;
}
.flag a {
    font-family: var(--secondary-font);
    line-height: .8rem;
    font-weight: 700;
    width: fit-content;
    letter-spacing: 3px;
    font-size: .8rem!important;
    text-transform: uppercase;
    padding-bottom: 10px!important;
}

.flag::after {
    content: "";
    position: absolute;
    background-color: var(--highlight-color);
    width: 80%;
    height: 3px;
    left: 0;
    bottom: 0px;
}
.flag-container{
    display: flex;
    justify-content: center;
    align-items: center;
}
.flag[data-flag-color='primary']:before, .flag[data-flag-color='primary']:after{
    color: var(--primary-color);
}
.flag[data-flag-color='white']:before, .flag[data-flag-color='white']:after, .flag[data-flag-color='neutral-1']:after{
    color: var(--neutral-color-1);
}
.flag[data-flag-color='black']:before, .flag[data-flag-color='black']:after{
    color: var(--neutral-color-10);
}
.flag[data-flag-color='highlight']:before, .flag[data-flag-color='highlight']:after{
    color: var(--secondary-color);
}
.flag[data-flag-color='secondary']:before, .flag[data-flag-color='secondary']:after{
    color: var(--secondary-color);
}
.wh-hl-flag::before {
    content: "";
    border-left: 5px solid;
    position: absolute;
    width: 5px;
    color: var(--neutral-color-1);
    height: calc(100% - 30px);
    display: block;  
    position: absolute;  
    top: 3px;
    left: -30px;  
}
.bk-hl-flag::before {
    content: "";
    border-left: 5px solid;
    position: absolute;
    width: 5px;
    color: var(--neutral-color-9);
    height: calc(100% - 30px);
    display: block;  
    position: absolute;  
    top: 3px;
    left: -30px;  
}
.bx-wrapper {
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    border: none;
    background: none;
    margin: 0;
}

.glimmer {
  /* 1. Define the gradient as a background image */
  background: linear-gradient(to bottom right, var(--secondary-color), var(--secondary-color));

  /* 2. Clip the background to the text content */
  -webkit-background-clip: text;
  background-clip: text;

  /* 3. Make the actual text transparent to reveal the background below it */
  -webkit-text-fill-color: transparent; 
  color: transparent;
  position: relative;
}
.glimmer::after{
    content: url('/wp-content/uploads/2026/01/underline_thin.svg');
    position: absolute;
    width: 100%;
    height: auto;
    z-index: 0;
    left: 0;
    bottom: -15px;
    opacity: .3;
}
.underline-txt{
    position: relative;
}
.underline-txt::after{
    content: url('/wp-content/uploads/2026/01/underline_thin.svg');
    position: absolute;
    width: 100%;
    height: auto;
    z-index: 0;
    left: 0;
    bottom: -15px;
}
.custom-logo {
    width: 270px;
    height: auto;
}
h2, .h2{
    letter-spacing: -.5px;
    position: relative;
    z-index: 1;	
}
.flag-center{
    text-align: center;
}
.flag-center:after {
    content: '';
    display: block;
    height: 2px;
    width: 40px;
    margin-top: 15px;
    margin-inline: auto;
}
.flag-center[data-color="primary"]:after {
    background: var(--primary-color);
}
.flag-left:after {
    content: '';
    display: block;
    height: 2px;
    width: 40px;
    background: var(--secondary-color);
    margin-top: 25px;
}
h3, .h3{
	position: relative;
	z-index:1;
}
.h3-box{
    border: 5px solid var(--secondary-color);
	padding: 10px;
    display: block;  
	text-align: center;
    min-height: 128px;
	display: grid;
    align-content: center;
    max-width: 600px;
}

a:hover, a:focus {
    color: var(--secondary-color);
    text-decoration: none;
}
.quote{
    font-size: 2.75rem;
    font-family: var(--primary-font);
    line-height: 1.3 !important;
    font-style: italic;
}
.author {
    font-family: var(--secondary-font);
    font-weight: 700!important;
    font-size: 1rem;
}
.quote-icon {
    width: 130px;
    height: auto;
    z-index: 0;
    position: absolute;
    top: 40px;
    opacity: .2;
    filter: saturate(0);
}
.lh-1{
	line-height:1;
}
.image-portrait.dark-overlay-1{
	position:sticky;
}
.floating-box {
    position: absolute;
    max-width: 50%;
    min-width: 45%;
    z-index: 1;
    border-radius: 5px;
}
.bk-color-fill{
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;

}
.image-z {
    z-index: 0;
}
.outline {
    -webkit-text-stroke: 1px;
    color: transparent;
    z-index: 0;
    position: absolute;
    font-size: 10rem;
    transform: translateY(-30%);
    opacity: .5;
    left: -50px;
}
.outline[data-color="white"], .outline[data-color="neutral-1"]  {
    -webkit-text-stroke-color: var(--neutral-color-1);
}
.outline[data-color="black"] {
    -webkit-text-stroke-color: var(--neutral-color-4);
}
.outline[data-color="primary"] {
    -webkit-text-stroke-color: var(--primary-color);
}
.outline[data-color="highlight"] {
    -webkit-text-stroke-color: var(--secondary-color);
}

.btn-theme[data-button-color="highlight"]{
    color:var(--highlight-color);
}
.btn-theme[data-button-color="highlight"]:hover{
    color:var(--neutral-color-1);
}
.btn-theme[data-button-color="secondary"]{
    color:var(--neutral-color-8);
}
.btn-theme[data-button-color="secondary"]:hover{
    color:var(--neutral-color-1);
}
.btn-theme[data-button-color="white"], .btn-theme[data-button-color="neutral-1"]{
    color:var(--neutral-color-1);
}
.btn-theme[data-button-color="white"]:hover, .btn-theme[data-button-color="neutral-1"]:hover{
    color:var(--highlight-color);
}
.btn-theme[data-button-color="primary"]{
    color:var(--primary-color);
}
.btn-theme[data-button-color="primary"]:hover{
    color:var(--highlight-color);
}

.btn-theme, .btn-theme:visited, .btn-theme:focus {
    font-weight: 600;
    letter-spacing: .5px;
    transition: all .5s ease;
    font-size: 1rem;
    display: flex;
    text-decoration: none;
    font-family: var(--secondary-font);
    width: fit-content;
    text-transform: uppercase;
    z-index: 100;
    position: relative;
        align-items: center;
        gap: 1rem;
}
.btn-theme:hover{
    color: var(--secondary-color);
}
.btn-theme[data-btn-size="lg"]::before{
    content: '';
    background-image: url('/wp-content/uploads/2026/01/cta-btn.svg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    width: 80px;
    aspect-ratio: 1;
    position: relative;
}
.btn-theme[data-btn-size="lg"]::after{
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 80px;
    aspect-ratio: 1;
    background-color: currentColor;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='4' stroke-linecap='square' stroke-linejoin='miter'%3E%3Cpath d='M9 5l7 7-7 7'/%3E%3C/svg%3E") center/30% no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='4' stroke-linecap='square' stroke-linejoin='miter'%3E%3Cpath d='M9 5l7 7-7 7'/%3E%3C/svg%3E") center/30% no-repeat;
}
.btn-theme[data-btn-size="sm"]::before{
    content: '';
    background-image: url('/wp-content/uploads/2026/01/cta-btn.svg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    width: 50px;
    aspect-ratio: 1;
    position: relative;
}
.btn-theme[data-btn-size="sm"]::after{
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 50px;
    aspect-ratio: 1;
    background-color: currentColor;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='4' stroke-linecap='square' stroke-linejoin='miter'%3E%3Cpath d='M9 5l7 7-7 7'/%3E%3C/svg%3E") center/30% no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='4' stroke-linecap='square' stroke-linejoin='miter'%3E%3Cpath d='M9 5l7 7-7 7'/%3E%3C/svg%3E") center/30% no-repeat;
}
.btn-theme span {
    padding-left: 10px;
}
.intrude {
    position: relative;
    z-index: 10;
    transform: translateY(-50%);
}
.box-adj{
	position:relative;
	z-index:10;
}
.text-box {
    padding-block: 50px max(60px, 5vw);
    aspect-ratio: 20/9;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.pic-side{
    position: relative;
}
.site-header {
    position: absolute;
    z-index: 1000;
    width: 100%;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.site-header.stick, .site-header-solid.stick{
    background-color: rgba(255, 255, 255, .1);
    backdrop-filter: blur(16px);
    box-shadow: 0 0px 6px 2px rgba(0,0,0,.05);
    top: -200px;
    animation: slideDown .5s ease-out forwards;
}
.site-header.stick .site-branding img, .site-header.solid .site-branding img{
    filter: brightness(1) invert(0);
}
.site-header.solid, .site-header-solid.solid{
    justify-content: center;
    align-items: center;
    transition: all .15s ease-in;
}
.site-header.toggled{
    position: fixed;
}

.price-container {
    position: absolute;
    bottom: 50px;
    right: 50px;
}
.price-box{
    display: flex;
    color: var(--neutral-color-1);
    font-size: 4.5rem;
    line-height: 1;
    font-family: var(--primary-font);
    font-style: italic;
    justify-content: center;
    align-items: center;
}
.price-box span{
    color: var(--neutral-color-1);
    font-size: 2rem;
    font-family: var(--secondary-font);
}
@keyframes slideDown {
    to {
        top:0;
        position: fixed;
    }
  }
.site-branding{
    position: absolute;
    z-index: 1;
    left: 5vw;
}
.site-branding.toggled{
	position:fixed;
    top: 0;
}
.site-branding .custom-logo, #footer .custom-logo{
    display:flex;
}
.preloader .custom-logo{
    display:flex;
}

.footer-logo {
    width: 240px;
    height: auto;
    & .icon{
        width: 240px;
        height: auto;
    }
}
.main-navigation{
    display:flex;
    flex-direction: row;
    width: 90vw;
}
.search-box{
    height: 100%;
    aspect-ratio: 1;
    border-left: 1px solid var(--neutral-color-3);
    border-bottom: 1px solid var(--neutral-color-3);
    display: flex;
    justify-content: center;
}
.social-box{
    height: 100%;
    aspect-ratio: 1;
    border-right: 1px solid rgba(255, 255, 255, .1);
    display: flex;
    justify-content: center;
    align-items: center;
}
.sub-nav-box {
    height: 100%;
    aspect-ratio: 1;
    border:1px solid var(--secondary-color);
    background-color: var(--secondary-color);
}
.sub-nav-container {
    height: 30px;
    width: 100%;
    background-color: var(--neutral-color-1);
    border-bottom: 1px solid var(--neutral-color-3);
    display: flex;
    justify-content: space-between;
}
.sub-nav-left-container{
    padding-block:5px;
}
.icon-box {
    height: 15px;
    aspect-ratio: 1;
}

.info-block {
    display: flex;
    flex-direction: row;
    padding-inline: 20px;
    gap: 0.5rem;
    color:var(--neutral-color-7);
    font-size: .8rem;
}
.main-navigation-left li, .main-navigation-right li {
    position: relative;
    list-style-type: none;
    width: fit-content;
    text-align: center;
}

#secondary-menu li{
    list-style-type: none;
}
#secondary-menu li a{
    font-size: 0.7rem!important;
}
.menu-main-navigation-container{
    display: flex;
    justify-content: right;
    align-items: center;
    position: relative;
    width: 90vw;
}
.menu-main-navigation-container li a{
    position: relative;
    z-index: 1;
}
.main-navigation-left{
    flex-direction: row-reverse;
}
.main-navigation-left, .main-navigation-right{
    display: flex;
    align-items: center;
}
.main-nav .menu{
    padding: 0;
    margin: 0;
}
.mobile-nav .menu{
    text-align: center;

}
.nav-menu{
	position:relative;
    right: 0;
    margin-bottom: 0px;
    flex-direction: row;
    display: flex;
    -moz-transition: all .5s ease;
    -webkit-transition: all .5s ease;
    -o-transition: all .5s ease;
    transition: all .5s ease;
    padding: 0;
    justify-content: center;
    align-items: center;
    gap: 2.5vw;
}
.nav-menu.down {
    top: calc(100vh*.1);
    -moz-transition: all 1s ease;
    -webkit-transition: all 1s ease;
    -o-transition: all 1s ease;
    opacity: 1;
    transition: all 1s ease;
	display:initial;
	transition-delay: .5s;
}
.background-texture{
    background: url('/wp-content/uploads/2026/01/cardboard.png');
    background-repeat: repeat;
    background-size: auto;
    position: fixed;
    width: 100vw;
    height: 100vh;
    z-index: 2;
    opacity: .5;
    inset: 0;
}
.background-texture-1{
    background: url('/wp-content/uploads/2026/01/cardboard.png');
    background-repeat: repeat;
    background-size: auto;
    position: fixed;
    width: 100vw;
    height: 100vh;
    z-index: 2;
    opacity: .25;
    inset: 0;
}
.img-texture{
    background: url('/wp-content/uploads/2026/01/cardboard.png');
    background-repeat: repeat;
    background-size: auto;
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 2;
    opacity: .5;
    inset: 0;
}
.bk-texture{
    background: url('/wp-content/uploads/2026/01/cardboard.png');
    background-repeat: repeat;
    background-size: auto;
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 0;
    opacity: .5;
    inset: 0;
}

.nav-menu li{
    cursor: pointer;
    list-style-type: none;
    position: relative;
}
.nav-menu li:hover a, #sub-menu li a:hover{
	color:var(--secondary-color);
}
.nav-menu li.current_page_item a, .nav-menu li.current-page-ancestor a, #sub-menu li a[aria-current='page'] {
	color:var(--neutral-color-1)!important;
}
.see-more-btn{
    font-size: 28px;
    text-align: center;
    display: flex;
    width: 45px;
    height: auto;
    aspect-ratio: 1;
    cursor: pointer;
    justify-content: center;
    align-items: center;
    z-index: 150;
    border-radius: 1px;
    right: auto;
    outline: 1px solid var(--secondary-color);
    outline-offset: -5px;
}
.see-more-btn i, .see-up-btn i {
    font-size: 1rem;
}
.see-up-btn{
    display: flex;
    padding: 0;
    width: 45px;
    height: auto;
    aspect-ratio: 1;
    justify-content: center;
    align-items: center;
    border-radius: 0;
    right: 50px;
    border-radius: 1px;    
    outline: 1px solid var(--secondary-color);
    outline-offset: -5px;
}
#footer-menu {
    padding: 0;
    margin: 0;
    list-style-type: none;
}
#footer-menu .menu-item a, #footer-menu .menu-item a:visited{
    color: var(--primary-color);
    font-family: var(--secondary-font);
    font-weight: 600;
    font-size: 1.25rem;
    text-transform: uppercase;
    letter-spacing: 1px;
}
#footer-menu .menu-item a:hover{
	color:var(--secondary-color);
	text-decoration: none;
}
#footer-menu .current-menu-item > a{
	color:var(--secondary-color)!important;
    font-weight: 700;
	list-style-type: none;
}
#footer-menu .current-menu-item{
	list-style-type: none;
}
#footer-menu .current-menu-item::marker {
	color:var(--secondary-color)!important;
}
#footer-menu .menu-item{
    padding-bottom: 10px;
    text-align: right;
}
#sub-footer #footer-menu .menu-item {
    width: max-content;
    padding: 0;
}
#footer-menu.current-page-ancestor a{
	color:var(--neutral-color-1);
}

#footer p{
	font-size:14px;
}
#footer .fab{
    font-size: 25px;
    padding-right: 20px;
}
.fa-quote-left, .fa-quote-right{
	font-style: italic!important;
}
#footer .menu-main-navigation-container {
    position: relative;
    top: 0px;
	right: 0px;
}

.menu-item-has-children{
    position: relative;
}
.menu-item-has-children > .sub-menu {
    display: none;
}
.menu-item-has-children:hover > .sub-menu  {
   display: list-item;
}

#primary-menu .menu-item:hover > a {
    color: var(--secondary-color);
    transition: all .5s ease;
}

.menu-main-navigation-container #primary-menu .menu-item.current-menu-item a {
    position: relative;
    z-index: 2;
}
.menu-mobile-container #primary-menu .menu-item {
    padding-block: 1.25rem;
    list-style-type: none;
}
.menu-mobile-container #primary-menu .menu-item.current-menu-item a { 
    color: var(--secondary-color)!important;
}

.menu-main-navigation-container > #primary-menu > .menu-item.current-menu-item:not(.nav-btn-theme)::after  {
    content: "";
    position: absolute;
    bottom: -10px;
    background-color: var(--secondary-color);
    width: 80%;
    height: 3px;
}
.hamburger.open .hamburger__top-bun, .hamburger.open .hamburger__mid-bun, .hamburger.open .hamburger__bottom-bun {
    background-color: var(--neutral-color-1);
}
.hamburger.stick .hamburger__top-bun, .hamburger.stick .hamburger__mid-bun, .hamburger.stick .hamburger__bottom-bun {
    background-color: var(--primary-color);
}
.sub-menu{
    display: list-item;
    box-shadow: none!important;
    background-color: hsl(205, 77%, 99%);
    padding: 20px;
    position: absolute;
    width: max-content;
    list-style-type: none;
    top: 126px;
    box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px!important;
}
.sub-menu li{
    text-align: left;
    line-height: 1;
    padding-block: 10px!important;

}
.sub-menu li a{
	color: var(--primary-color)!important;
    padding: 0!important;
}
.sub-menu li:hover a{
	color:var(--secondary-color)!important;
}
#footer-menu .sub-menu {
	background-color:transparent;
	padding:0;
}
#footer-menu .sub-menu li{
	margin-top:0;
}
.nav-menu .sub-menu li.current_page_item, .nav-menu .sub-menu li.current-page-ancestor {
    border-radius: 0px;
    background-color: transparent;
}
.sub-menu li.current_page_item a, .sub-menu li.current-page-ancestor a{
        color: var(--secondary-color)!important;
}
.ulwrap-1{
    column-count: 1;
    column-fill: balance;
}
.ulwrap-2{
    column-count: 2;
    column-fill: balance;
}
.ulwrap-3{
    column-count: 3;
    column-fill: balance;
}
.bullet::marker{
	color:var(--secondary-color);
}
li.bullet:last-child {
    padding-bottom: 30px;
}
.bullet {
    font-size: 15px;
    font-weight: 300;
	list-style-position: inside;
	transition: all .3s ease;
    padding-bottom: 20px;
}
.indent{
	margin-left:20px;
	padding-left:0px;
}

.table-col-box{
    border-right: 1px solid #e6e7e8;
	border-bottom: 1px solid #e6e7e8;	
	border-top: 1px solid #e6e7e8;
	border-left: 1px solid #e6e7e8;
	margin-bottom:50px;
	background-color:#f9f9f9;
}

.title {
    margin-top: 0;
}
i.fa-solid.fa-dollar-sign {
    font-size: 32px;
}
.vert-sep{
	height: 80px;
	width: 2px;
	background:var(--secondary-color);
	margin: 50px auto;
}
.wp-post-icon {
    height: 70px;
    margin: auto;
    display: block;
    max-width: 150px;
}
.gallery-thumb {
    width: 100%;
    padding-bottom: 60%;
    background-position-y: 0%;
    background-position-x: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
}
.play-btn{
    height: 50px;
    display: flex;
    align-items: center;
	color:var(--neutral-color-1);
	font-weight:800;
}
a.play-btn, a.play-btn:visited{
	color:var(--secondary-color);
}
a.play-btn:hover {
	color:var(--neutral-color-1);
}
.play-btn::before {
    content: "";
    background-image: url(/wp-content/uploads/2022/05/play-button.svg);
    width: 50px;
    height: 50px;
    display: inline-block;
    margin-right: 20px;
}
.mfp-iframe-holder .mfp-content {
    max-width: 80%;
}
.service-category-list {
    list-style: none;
    padding: 0;
    margin: 0;
    position: relative;
    z-index: 1;
}
.service-category-list li {
    padding: 10px 0;
    border-bottom: 1px solid rgba(0,0,0,0.1);
}
.service-category-list li:last-child {
    border-bottom: none;
}
.service-category-list a {
    text-decoration: none;
    font-weight: 500;
    transition: opacity 0.2s ease;
}
.service-category-list a:hover {
    opacity: 0.7;
}
.video-popup-container {
    max-width: 80vw;
    width: 80vw;
    margin: 0 auto;
    position: relative;
    background: #000;
}
.video-popup-container video {
    display: block;
    width: 100%;
    height: auto;
}
::selection {
    color: var(--neutral-color-1);
    background-color: var(--secondary-color);
}
.main-navigation.toggled{
	position:fixed;
    right: 0px;
}

.portfolio-text-box{
	padding: 50px;
	
}
.portfolio-overlay{
	margin: auto;
	position: absolute;
	bottom: 0px;
	height: fit-content;
	height: -moz-fit-content;
	z-index: 1;
}
.border-box img{
	border-radius: 80px;
	box-shadow: 0 0 0 50px transparent;
	padding:50px;
}
.img-box{
        position: relative;
}
.img-box img{
    position: relative;
    overflow: visible;
}
.tout-img {
    max-width: min(130px, 50%);
    display:flex;
}
.tout-container{
    display: flex;
    gap: 1rem;
    justify-content: flex-end;
}
.tout{
    display:flex;
    position:relative;
    gap: 1.5rem;
    max-width: 33%;
    box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
    margin-bottom: 3vw;
}
.tout:before{
    content: "";
    width: 100%;
    position: absolute;
    height: 100%;
}
.tout[data-bk-color="white"]:before{
    background-color: white;
}
.tout[data-bk-color="frost"]:before{
    backdrop-filter: blur(10px);
}
.tout[data-bk-color="red"]:before{
    background-color: var(--secondary-color);
}
.tout-content {
    display: flex;
    flex-direction: column;
    align-self: center;
    z-index: 0;
    padding-right: 10px;
}

.flex-middle {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.flex-wrap {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.shadow{
	box-shadow: 0 0 134px -120px #000000;
}
.half-top-white-bk{
    background-color: var(--neutral-color-1);
    width: 100%;
    height: 50%;
    position: absolute;
    z-index: -1;
    left: 0;
    top: 0px;
}
.half-top-lt-grey-bk{
    background-color: var(--neutral-color-2);
    width: 100%;
    height: 50%;
    position: absolute;
    z-index: -1;
    left: 0;
    top: 0px;
}
.half-bot-lt-grey-bk{
    background-color: var(--neutral-color-2);
    width: 100%;
    height: 50%;
    position: absolute;
    z-index: -1;
    left: 0;
    bottom: 0px;
}
.half-bot-white-bk{
    background-color: var(--neutral-color-1);
    width: 100%;
    height: 50%;
    position: absolute;
    z-index: -1;
    left: 0;
    bottom: 0px;
}
.service:hover li{
	color:#0c1e27;
	font-weight:600;
	transition: all .3s ease;
}
.tag-tab {
    color: #0c1e27!important;
    padding: 10px 15px;
    border: 3px solid #0c1e27;
	border-radius: 8px;
    display: inline-block;
    font-size: 9px;
    letter-spacing: .5px;
    font-weight: 600;
    margin-bottom: 3px;
}

.nav-links {
    font-family: 'Futura Bold';
}
.nav-links a:hover{
	color:#0c1e27;
}
.page-numbers{
	background-color:var(--secondary-color);
	color:var(--neutral-color-1);
    padding:5px;
	border-radius: 3px;
}
.page-numbers.current{
	background-color:#0c1e27;
}
.prev.page-numbers, .next.page-numbers{
	background-color:transparent;
	color:var(--secondary-color);
}
.pagination{
	width:100%;
}
.no-indent{
	padding-left:0px;
}
.ulwrap-1 li{
	padding-bottom:20px;
}
.shape-overlay {
    position: absolute;
    height: 100%;
    width: max(300px, 20%);
    z-index: 1;
    mix-blend-mode: color;
}

.shape-overlay[data-side='left']{
    left: 0;

}
.shape-overlay[data-side='right']{
    right:0;
}
.shape-container-left {
    left: 0;
    position: absolute;
    width: fit-content;
    height: 100%;
    z-index: 1;
}
.shape-container-right {
    right: 0;
    position: absolute;
    width: fit-content;
    height: 100%;
    z-index: 1;
}
.main-nav {
    width: 100%;
    height: 170px;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    position: relative;
}
.main-nav.toggled .main-navigation{
    display: none;
}
.info-bar {
    font-family: var(--primary-font);
    width: 70%;
    line-height: 1;
    text-transform: uppercase;
    font-size: 0.7rem;
    padding-block: 10px;
    display: flex;
    justify-content: flex-start;

}
.sub-nav{
    font-family: var(--primary-font);
    width: 30%;
    line-height: 1;
    text-transform: uppercase;
    font-size: 0.7rem;
    padding-block: 10px;
    display: flex;
    justify-content: flex-end;
}
.flex-row{
    flex-direction: row;
}
.logo-box{
    display: flex;
    align-items: center;
}
.icon-position{
    max-width:200px;
    margin: auto
}
.watermark {
    position: fixed;
    z-index: 0;
    right: 0;
    transform: translateX(50%);
    height: 100vh;
    top: 0;
    overflow: visible;
    opacity: .3;
    mix-blend-mode: color-dodge;
}
.water-image{
    height:100%;
    width: auto;
}

.mosaic-grid{
    display:grid;
    gap: 1.5rem;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: 40vh;
}
.project-grid-1{
    grid-column: span 12;
}
.project-grid-2{
    grid-column: span 8;
}
.project-grid-3{
    grid-column: span 4;
}
.project-grid-4{
    grid-column: span 4;
}
.grid-col-span-4{
    grid-column: span 12;
}
.grid-col-span-3{
    grid-column: span 8;
}
.grid-col-span-2{
    grid-column: span 6;
}
.grid-col-span-1{
    grid-column: span 4;
}
.back-image-100 {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0;
    top: 0;
}
.quote-container{
    display:flex;
    margin: 0;
}
.float-box{
    border-radius: 1rem;
 box-shadow: rgba(0, 0, 0, 0.16) 0px 10px 36px 0px, rgba(0, 0, 0, 0.06) 0px 0px 0px 1px;
 margin-inline: 20px;
}
*[data-bk-color="white"], *[data-bk-color="neutral-1"]{
    background-color:var(--neutral-color-1);
}
*[data-bk-color="primary"]{
    background-color:var(--primary-color);
}
*[data-bk-color="highlight"]{
    background-color:var(--secondary-color);
}
*[data-bk-color="neutral-2"]{
    background-color:var(--neutral-color-2);
}
*[data-bk-color="neutral-3"]{
    background-color:var(--neutral-color-3);
}
*[data-bk-color="black"]{
    background-color: var(--neutral-color-9);
}
*[data-bk-color="secondary"]{
    background-color: var(--secondary-color);
}

.quote-text-left {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding-block: max(5vw, 70px);
    padding-inline: 20px;
}
.topic-content[aria-selected='false']{
    display:none;
}
.topic-btn{
    width:100%;
    text-align: left;
    border: none;
    padding: 10px;
    border-bottom: 1px solid white;
}
.topic-btn[aria-pressed='true']{
    color: var(--neutral-color-1);
    background-color: var(--secondary-color);
}
.topic-btn[aria-pressed='true']:after{
    content: "\f061";
    font-family: var(--awesome-font);
    padding-left: 20px;
    float: right;
}
.footer-top {
    max-width: 600px;
    margin-inline: auto;
    transform: translateY(18%);
}
.wys h2 {
    font-size: 2.1rem;
    padding-block: 20px;
}
.wys li p{
    padding: 0;
}
.wys h3 {
    font-size: 1.25rem;
    padding-bottom: 20px;
}
.wys p {
    padding-bottom: 20px;
}
.wys li{
    font-family: var(--secondary-font);
    font-size: 1rem;
    padding-bottom: 10px;
    letter-spacing: .5px;
    font-weight: 300;
}
.wys h4{
    font-size: 1rem;
    padding-bottom: 10px;
}
b, strong {
    font-weight: 700;
    font-family: var(--secondary-font);
}
.se-season-microsites-external-iframe {
    height: 750px!important;
}
.wp-caption-text {
    text-align: center;
    margin-bottom: 30px;
    font-style: italic;
}
figure {
    width: 100%!important;
    height: auto;
}
#secondary-menu {
    display: flex;
    flex-direction: row;
    gap: 3vw;
}
.logo-grid-5 {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 1rem;
}
.logo-grid-4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
}
.logo-grid-3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
}
.logo-grid-2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
}

.topic-dropdown button:after{
    content: "\f063";
    font-family: var(--awesome-font);
    padding-left: 20px;
    float: right;
}
.topic-dropdown button.active, .topic-dropdown button.active:hover {
    background-color: var(--primary-color);
    text-transform: uppercase;
    font-family: var(--primary-font);
    font-size: .9rem;
    color: #ffffff;
    cursor: pointer;
    padding: 12px 20px;
    text-align: left;
    border: none;
    width: 100%;
    border-bottom: 1px solid var(--neutral-color-100-08);
    -webkit-transition: all .3s ease-in;
    -moz-transition: all .3s ease-in;
    -ms-transition: all .3s ease-in;
    -o-transition: all .3s ease-in;
    transition: all .3s ease-in;
    transition-delay: .2s;
}
.topic-btn:hover{
    background-color: var(--primary-color);
    color:var(--neutral-color-1);
}
.hfaq__question {
    cursor: pointer;
    font-size: 2.5rem!important;
    font-family: 'WAL Primary';
    text-transform: uppercase;
}
.hfaq__answercontent p{
    margin-left: 40px;
}
.hfaq__answercontent p span {
    font-size: 1.25rem!important;
}
.search-icon{
    width:20px;
    height:auto;
}
.sub-footer{
    border-top: 1px solid rgba(255, 255, 255, .1);
}
.sub-footer-container{
    display:flex;
    flex-direction: row;
    height:70px;
}
.logo-box-container {
    display:flex;
    align-items: center;
    width: 15vw;
    justify-content: center;
}
.logo-box-container .custom-logo{
    display: flex;
    margin: auto;
    filter: brightness(0) invert(1);
    width: 50px;
    height: auto;
}
footer#sub-footer {
    border-top: 1px solid rgba(255, 255, 255, .1);
}
.copyright-box {
    display: flex;
    justify-content: end;
    align-items: center;
    width: 100%;
    border-right: 1px solid rgba(255, 255, 255, .1);
}
.parent-logo {

    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: .5rem;


    & img{
    width: 80px;
    height: auto;
    }
}
.copyright-box p{
    margin-bottom: 0;
    padding-inline: 20px;

}
.logo-box-container .custom-logo-link{
    display: inline-block;
    width: 180px;
    height: auto;
    min-width: max-content;
}
.ping-img-box{
    isolation: isolate;
    width: 100%;
}
.ping-img-container{
    width: 100%;
}
.icon-container {
    display: flex;
    justify-content: start;
    align-items: center;
    margin-bottom: 30px;
    height: 100px;
}
.card-copy-container{
    display: flex;
    flex: 1;
    flex-direction: column;
    justify-content: center;
}
.gap-1{ gap:1rem;}
.gap-2{ gap:2rem;}
.card-flex-container{
    display: grid;
    gap: 4rem;
    grid-template-columns: repeat(auto-fit, minmax(440px, 1fr));
}
.card-flex-container[data-column-num="1"]{ grid-template-columns: 1fr; }
.card-flex-container[data-column-num="2"]{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
.card-flex-container[data-column-num="3"]{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
.card-flex-container[data-column-num="4"]{ grid-template-columns: repeat(4, minmax(0, 1fr)); }
.card-flex-container[data-column-num="5"]{ grid-template-columns: repeat(5, minmax(0, 1fr)); }
.card-flex-container[data-column-num="6"]{ grid-template-columns: repeat(6, minmax(0, 1fr)); }
@media (max-width: 900px){
    .card-flex-container[data-column-num="3"],
    .card-flex-container[data-column-num="4"],
    .card-flex-container[data-column-num="5"],
    .card-flex-container[data-column-num="6"]{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
.card-container {
    display: flex;
    gap: 1rem;
    flex-direction: column;
    flex: 1;
}
.bx-wrapper .bx-pager.bx-default-pager a.active, .bx-wrapper .bx-pager.bx-default-pager a:focus, .bx-wrapper .bx-pager.bx-default-pager a:hover {
    background: var(--secondary-color);
}
.bx-wrapper .bx-prev {
    left: -40px;
    background: none;
    position: relative;
        background-color: var(--secondary-color);

}

.bx-wrapper .bx-next {
    right: -40px;
    background: none;
    position: relative;
    background-color: var(--secondary-color);
    z-index: 0;
}
.bx-wrapper .bx-prev::after {
    content: '';
    width: 30px;
    aspect-ratio: 1;
    display: flex;
    z-index: 1;
    position: absolute;
    justify-content: center;
    align-items: center;
    inset: 0;
    background-color: white;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='4' stroke-linecap='square' stroke-linejoin='miter'%3E%3Cpath d='M15 19l-7-7 7-7'/%3E%3C/svg%3E") center/50% no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='4' stroke-linecap='square' stroke-linejoin='miter'%3E%3Cpath d='M15 19l-7-7 7-7'/%3E%3C/svg%3E") center/50% no-repeat;
}
.bx-wrapper .bx-next::after {
    content: '';
    width: 30px;
    aspect-ratio: 1;
    display: flex;
    z-index: 1;
    position: absolute;
    justify-content: center;
    align-items: center;
    inset: 0;
    background-color: white;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='4' stroke-linecap='square' stroke-linejoin='miter'%3E%3Cpath d='M9 5l7 7-7 7'/%3E%3C/svg%3E") center/50% no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='4' stroke-linecap='square' stroke-linejoin='miter'%3E%3Cpath d='M9 5l7 7-7 7'/%3E%3C/svg%3E") center/50% no-repeat;
}
.corner-5{
    border-radius: 5px;
}
.corner-25{
    border-radius: 25px;
}
.full {
    width: 100%;
}
#primary-menu li a{
    font-weight: 600;
    color: var(--neutral-color-1);
    display: block;
}
.play-button{
    width: 80px;
    height: auto;
}
.center-overlay{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 1;
}
.bot-bk-container, .top-bk-container{
    position: absolute;
    z-index: 0;
    width: 100%;
    height: 50%;
}
.bot-bk-container{
    bottom: 0;
}
.top-bk-container{
    top: 0;
}
.accordion {
    font-family: var(--secondary-font);
    font-size: 1.75rem;
    background-color: transparent;
    border: none;
    width: 100%;
    padding: 0;
    text-align: left;
    padding-bottom: 10px;
}
.wys {
    position: relative
}
.accordion .fa-solid {
    font-size: 1rem;
    top: -2px;
    position: relative;
}
/* Style the accordion panel. Note: hidden by default */
.panel {
  padding: 0 18px;
  background-color: transparent;
  display: none;
  overflow: hidden;
}
.contact-container{
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 5vw;
}
div.wpforms-container-full .wpforms-form textarea.wpforms-field-medium {
    height: 50px!important;
}
.wpforms-field-container input[type='text'], .wpforms-field-container input[type='email'], .wpforms-field-container input[type='tel'], .wpforms-field-container textarea  {
    border: none !important;
    border-bottom: 1px solid var(--neutral-color-10) !important;
    background-color: transparent !important;
    border-radius: 0 !important;
}
.wpforms-container .wpforms-field, .wp-core-ui div.wpforms-container .wpforms-field {
    padding-block: 0 10px!important;
}
.wpforms-container-full {
    margin: 0!important;
}
div.wpforms-container-full .wpforms-form .wpforms-head-container {
    padding: 0 0 20px 0!important;
}
.flex-container {
    display: flex;
    width: 100%;
    height: 100%;
    align-items: center;
    justify-content: center;
    padding-inline: 10%;
    padding-block: 200px 100px;
    gap: 50px;
}
.contact-box {
    padding: 50px;
    background: white;
    box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
    width: min(500px, 100%);
    margin-inline: auto;
}
.wpforms-container .wpforms-field {
    padding: 10px 0;
}
.fit-content{
    width: 100%;
    height: fit-content;
}
.inset{
    inset: 0;
}
.header-btn, .header-btn:visited, .header-btn:focus{
    background-color: var(--secondary-color);
    padding: 16px 30px 18px!important;
    font-weight: 600;
    letter-spacing: .5px;
    transition: all .5s ease;
    font-size: .9rem;
    display: inline-block;
    text-decoration: none;
    font-family: var(--secondary-font);
    width: fit-content;
    position: absolute;
    right: 50px;
    top: 36px;
    color: var(--neutral-color-1);
    border-radius: 5px;
        
    border-left: 5px solid var(--neutral-color-1);
    -moz-transition:    all .15s ease-in;
    -webkit-transition: all .15s ease-in;
    -o-transition:      all .15s ease-in;
    transition:         all .15s ease-in;
}
.header-btn:hover{
    color: var(--neutral-color-1);
    background-color: var(--secondary-color);
    -moz-transition:    all .5s ease-out;
    -webkit-transition: all .5s ease-out;
    -o-transition:      all .5s ease-out;
    transition:         all .5s ease-out;
}
.mar-box{
    margin-block: 100px;
    margin-inline: 5vw;
}

/* If using Font Awesome (ensure Font Awesome is enqueued) */
.menu-item-has-dropdown > a::after {
    font-family: "Font Awesome 6 Pro"; /* Or your specific Font Awesome family */
    font-weight: 900; /* For solid icons */
    content: "\f107"; /* Font Awesome unicode for caret-down */
    margin-left: 5px;
}
.grid-container{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 1rem;
}
.map-container{
        display: block;
    width: 100%;
    aspect-ratio: 22/9;
}
.acf-map {
    width: 100%;
    height: 100%;
    overflow: visible;
    border-radius: 1rem;
}
.acf-map img {
max-width: inherit !important;
}
.menu-footer-auxillary-container{
    display: flex;
    flex-direction: row;
}
#sub-footer #footer-menu {
    padding: 0;
    margin: 0;
    list-style-type: none;
    display: flex;
    align-items: center;
    gap: 1rem;
}
.legal-box{
    display: flex;
    align-items: center;
    gap: 1rem;
}
.legal-box a{
    font-size: .8rem!important;
    font-weight: 300!important;
    color: var(--neutral-color-5)!important;
    text-transform: uppercase;
    letter-spacing: .5px;
    text-decoration: none;
    white-space: nowrap;
}
.legal-box a:hover{
    color: var(--secondary-color)!important;
}
.footer-title {
    color: var(--neutral-color-1);
    text-transform: uppercase;
    font-family: 'Noto Sans';
    font-weight: 600;
    letter-spacing: .5px;
    font-size: .9rem!important;
        padding-bottom: 20px;
}
.column-one-container, .column-two-container {
    display: flex;
    flex: 1;
    flex-direction: column;
    max-width: 900px;
}
.column-container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 5rem;
}
.menu-main-menu-container #primary-menu, .menu-main-menu-right-container #primary-menu {
    display: flex;
    gap: 1.35vw;
}
.mobile-menu-bk{
    background-color: var(--primary-color);
}
.mobile-menu-bk .background-texture-1{
    display: none;
}
.mobile-menu-bk.down .background-texture-1{
    display: block;
}
.mobile-nav{
    display: none;
}
.no-scroll {
  overflow: hidden!important;
  height: 100vh!important; /* Ensures the body doesn't scroll on mobile */
  touch-action: none;
}
.mobile-nav.down{
    display: flex;
    flex-direction: column;
    width: 100%;
    position: absolute;
    height: 100vh;
    justify-content: center;
    align-items: center;
    top: 0;
    transition: all .5s ease-out;
}
.mobile-nav.down li a{
    padding-inline: 15px;
        font-size: 1.5rem;
    font-family: var(--primary-font);
    color: var(--neutral-color-1)!important;
}
.star-rating input[type="radio"] {
    display: none;
}
.star-rating label {
    font-size: 2em; /* Adjust star size */
    color: lightgray; /* Default star color */
    cursor: pointer;
    padding: 0 5px; /* Spacing between stars */
}
.star-rating{
    width: fit-content;
    --percent: calc(var(--rating) / 5 * 100%);
    display: inline-block;
    font-size: var(--star-size);
    font-family: Times; 
    line-height: 2;
    &::before {
        content: '★★★★★';
        letter-spacing: 3px;
        background: linear-gradient(90deg, var(--star-background) var(--percent), var(--star-color) var(--percent));
        -webkit-background-clip: text;
        background-clip: text;
        -webkit-text-fill-color: transparent;
    }
}
.testimonial-container {
    padding-bottom: 50px;
    margin-bottom: 50px;
    border-bottom: 1px solid var(--neutral-color-3);
}
.mobile-nav.down .sub-menu{
    right: 0;
    top: 130px;
}
.mobile-nav.down .menu-item-has-children:hover{
    background-color: var(--neutral-color-2);
    backdrop-filter: blur(16px);
}
.split-1, .split-2{
    display: flex;
    flex: 1;
}

.split-1{
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.fma-box {
    width: min(1024px, 100%);
    padding-inline: 20px;
    padding-block: 100px 50px;
}
.fma-split-box {
    width: 50%;
    padding-inline: 20px;
}
.fma-text-overlay {
    margin: auto;
    position: absolute;
    z-index: 1;
    margin-top: 80px;
}
.fma-image-cover {
    width: 100%;
    height: 100vh;
    isolation: isolate;
}
.fma-flex-container {
    display: flex;
    width: 100%;
    height: 100%;
    flex-direction: row;
    position: relative;
}
.fma-grid-container {
    display: grid;
    width: 100%;
    height: 100%;
    position: relative;
    grid-template-columns: 1fr 1fr;
}
.price-card-container .wys > ul{
    margin-bottom: 0;
}
.mar-btn{
    margin-top: 100px;
}
.footer-flex-container {
    display: flex;
    justify-content: space-between;
    align-items: end;
}
.check{
    position: relative;
    list-style-type: none;
    font-size: 1rem!important;
    font-family: var(--secondary-font)!important;
}
.check::before {
    content: '\f14a ';
    font-family: var(--awesome-font);
    font-size: 1.5rem;
    top: -2px;
    position: absolute;
    left: -30px;
}
.check[data-check-color="highlight"]::before{
    color: var(--secondary-color);
}
.check[data-check-color="white"]::before{
    color: var(--neutral-color-1);
}
.price-pos {
    position: absolute;
    bottom: 50px;
    left: 50px;
}
.top-fade {
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 200px;
    background: linear-gradient(to top, rgba(0,0,0,0), rgba(0,0,0,.75));
    inset: 0;
    mix-blend-mode: darken;
}
.bot-fade {
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 200px;
    background: linear-gradient(to bottom, rgba(0,0,0,0), rgba(0,0,0,.75));
    bottom: 0;
    mix-blend-mode: darken;
}
.heading {
    font-family: var(--headline-font)!important;
    font-style: normal;
    font-weight: 600;
}
.bx-wrapper .bx-controls-direction a {
    z-index: 100;
    top: calc(50% - 16px);
    margin-top: 0;
    border-radius: 5px;
}
.ping-pong-container {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 2rem;
}
@media (min-width: 1025px) {
    .ping-pong-container > .pic-side {
        flex: 0 0 60%;
    }
}
button#past-events-show-more {
    padding-inline: 20px;
    padding-block: 10px;
    background-color: white;
}
.reverse {
    flex-direction: row-reverse;
}
.ping-pong-container.reverse .pic-container{
    right: 40px;
    left: auto;
    overflow-x: clip;
}
.ping-pong-container .pic-container{
    left: 40px;
    right: auto;
    overflow-x: clip;
}
.bookend {
    width: 100%;
}
.bookend-box {
    padding: max(50px, 4vw);
    max-width: 1024px;
    margin-inline: auto;
}
.bookend-container {
    display: flex;
    flex-direction: row;
}
.flex-grow-1{
    flex: 1;
}
.flex-grow-2{
    flex: 2;
}
.flex-grow-3{
    flex: 3;
}
.fullscreen-slide-center{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100vw;
    height: 100%;
    position: absolute;
}
.sub-center {
    width: fit-content;
    margin-inline: auto;
}
.par-max{
    width: min(750px, 100%);
}
.center-btn {
    display: flex;
    width: 100%;
    justify-content: center;
    align-items: center;
    bottom: -10px;
    position: absolute;
    z-index: 10;
}
.ul-wrap-2{
    column-count: 2;
}
.visible{
    overflow-y: visible;
}
.nav-btn-theme{
    position: relative;
    display: flex;
    flex-direction: row;
    gap: 1rem;
    align-items: center;
}
.nav-btn-theme a:hover{
    color: var(--highlight-color)!important;
}
.nav-btn-theme::after{
    content: '';
    background-image: url('/wp-content/uploads/2026/01/nav-cta-arrow.svg');
    background-size: cover;
    width: 40px;
    aspect-ratio: 1;
    position: relative;
}
.message-container {
    display: flex;
    flex-direction: row;
    width: 90%;
    margin-inline: auto;
    height: 50px;
    align-items: center;
}
.message-box {
    position: relative;
    flex: 2;
}
.message-box a{
    font-size: .9rem;
    line-height: 0;
}
.portal-container {
    position: relative;
}
.portal-btn-theme{
    color: var(--secondary-color);
    font-size: .9rem;
}
.max-ht-100{
    max-height: calc(100vh - 50px);
}
.menu-toggle{
    background-color: transparent;
}
.star-bk{
    position: absolute;
    z-index: 1;
    background-repeat: no-repeat;
    mix-blend-mode: attr(data-blend-mode);
    filter: invert(1);
    height: 100%;
    top: 0;
    overflow: clip;
        display: flex;
    justify-content: center;
    align-items: center;
}
.star-bk img{
    height: min(870px, 120vw);
    transform: rotate(11deg);
    width: auto;
    left: -180px;
    position: relative;
    z-index: 8;
    opacity: .05;
}
.wax-8 {
    position: absolute;
    z-index: 1;
    width: 130px;
    height: fit-content;
    top: 0px;
    right: -80px;
}
.wax-8.reverse {
    top: -60px;
    left: -80px;
}
.wax-8 img{
    width: 100%;
    height: auto;
}
.calendar-bk{
    position: absolute;
    z-index: 1;
    background-repeat: no-repeat;
    mix-blend-mode: attr(data-blend-mode);
    filter: invert(1);
    height: 100%;
    top: 0;
    overflow: clip;
        display: flex;
    justify-content: center;
    align-items: center;
}
.calendar-bk img{
    height: min(710px, 120vw);
    width: auto;
    left: -30px;
    position: relative;
    z-index: 8;
    opacity: .05;
}
.star-bk.reverse{
    right: 0;
}
.star-bk.reverse img{
    right: -180px;
    left: auto;
}
.fullscreen-slide-cell{
    position: absolute;
    width: 100vw;
    height: 100%;
    display: flex;
    align-items: center;
}
.fullscreen-slide-cell .cell-left{
    left: 5%;
}
.content-flex-overview {
    display: flex;
    align-items: end;
    gap: 1rem;
}
.image-flex-container {
    display: flex;
    gap: 2rem;
}
.copy-flex-overview {
    display: flex;
    align-items: start;
    gap: 1rem;
}
.content-title {
    flex: 1;
}
.content-copy {
    flex: 2;
}
.content-copy .wys p{
    padding-bottom: 0;
}
.wys.hero > p{
    font-weight: 500!important ;
}
.pic-icon{
    position: absolute;
    z-index: 1;
    & img{
        width: 40px;
        aspect-ratio: 1;
    }
}
.pic-icon-bk {
    position: absolute;
    z-index: 0;
    opacity: .2;
    & img{
        width: 130px;
        aspect-ratio: 1;
    }
}
.pic-icon-bk.right{
    right: -65px;
    top: -65px;
}
.pic-icon-bk.left{
    left: -65px;
    top: -65px;
}
.ping-img-box.right{
    right: -35px;
    top: -35px;
}
.pic-icon.right{
    right: -20px;
    top: -20px;
}
.pic-icon.left{
    left: -20px;
    top: -20px;
}
.social-flex-container {
    display: flex;
    gap: 1rem;
    align-items: center;
}
.bullet-head{
    padding-bottom: 10px;
}
.bullet-head::before{
    content:'\2b';
    position: absolute;
    font-family: var(--awesome-font);
    left: -30px;
}
.ping-ul{
    padding-left: 30px;
}
.ping-num {
    line-height: .8;
    font-size: 5.4rem;
    letter-spacing: -2px;
}
.ping-num::after{
    content: "";
    position: absolute;
    background-image: url(/wp-content/uploads/2026/01/number-flare.svg);
    background-size: cover;
    width: 230px;
    aspect-ratio: 1;
    z-index: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    top: -80px;
    left: -72px;
}
.headline-num-flex-container {
    display: flex;
    gap: 1rem;
}
.partners-flex-container {
    display: flex;
    gap: 5rem;
}
/* Logo Scroller */
.logo-scroller {
    display: flex;
    align-items: center;
    gap: 20px;
    width: 80vw;
    max-width: 80vw;
    margin-left: 50%;
    transform: translateX(-50%);
    position: relative;
}
@media (max-width: 768px) {
    .logo-scroller {
        width: 100vw;
        max-width: 100vw;
        padding: 0 40px;
    }
    .logo-scroller-prev,
    .logo-scroller-next {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        z-index: 2;
    }
    .logo-scroller-prev { left: 0; }
    .logo-scroller-next { right: 0; }
}
.logo-scroller-viewport {
    flex: 1;
    overflow: hidden;
    position: relative;
}
.logo-scroller-track {
    display: flex;
    align-items: center;
    will-change: transform;
    /* gap calculated dynamically by JS based on visible logos */
}
.logo-scroller-track img {
    flex-shrink: 0;
    height: auto;
    object-fit: contain;
}
.logo-scroller-prev,
.logo-scroller-next {
    flex-shrink: 0;
    width: 44px;
    height: 44px;
    border: none;
    background: transparent;
    color: currentColor;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: opacity 0.2s ease;
    opacity: 0.7;
}

.logo-scroller-prev:hover,
.logo-scroller-next:hover {
    opacity: 1;
}

.logo-scroller-prev svg,
.logo-scroller-next svg {
    width: 24px;
    height: 24px;
}
.overview-flex-container {
    display: flex;
    flex-direction: row;
    gap: 2rem;
}
.overview-details-1 {
    display: flex;
    flex-direction: column;
    flex: 2;
}
/* Add breathing room before each new section heading
   (Overview / Approach / Results stack inside .overview-details-1). */
.overview-details-1 h2:not(:first-child) {
    margin-top: 3rem;
}
.overview-details-2 {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-width: 0;
    gap: 2rem;
    position: relative;
    z-index: 1;
}
.overview-details-2 img {
    max-width: 100%;
    height: auto;
}
.img-flex-box {
    width: 100%;
    isolation: isolate;
}
.info-graf{
    font-size: 9rem;
    font-style: italic;
    mix-blend-mode: overlay;
}
.infographic-flex-container {
    display: flex;
    flex-direction: row;
    gap: 2rem;
}
.work-grid-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
}
.work-grid-container.related {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
}
.work-box {
    isolation: isolate;
    aspect-ratio: 1;
    position: relative;
    display: flex;
    align-items: end;
}
.work-text-overlay {
    position: absolute;
    z-index: 1;
    color: white;
    padding: 50px 50px 70px 70px;
    font-size: 2rem;
    font-weight: 800;
    display: flex;
    justify-content: center;
}
.work-text-overlay::before{
    content: '';
    background-image: url('/wp-content/uploads/2026/01/work-headline-icon.svg');
    position: absolute;
    background-size: cover;
    width: 80px;
    aspect-ratio: 1;
    z-index: -1;
    left: 41px;
    top: 33px;
}
.card-flex-box{
    flex-direction: row;
}
.pic-container {
    width: 100%;
}
.bx-wrapper .bx-pager {
    position: relative;
    z-index: 1;
    bottom: 50px;
}
/* Calendar Buttons */
.calendar-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
}
.btn-calendar {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 12px 24px;
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
	border-radius: 4px;
	transition: all 0.3s ease;
	cursor: pointer;
	border: 2px solid currentColor;
    font-size: .7rem!important;
}
.btn-calendar:hover {
	text-decoration: none;
	transform: translateY(-2px);
}

/* News Search and Sort Controls */
.news-controls {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: 20px;
}
.news-filters {
	display: flex;
	align-items: center;
	gap: 20px;
}
.search-wrapper,
.sort-wrapper {
	position: relative;
	display: flex;
	align-items: center;
}
.news-search-input {
	padding: 12px 45px 12px 16px;
	border: none;
	border-bottom: 2px solid var(--primary);
	background: transparent;
	font-size: 1rem;
	min-width: 200px;
	outline: none;
	transition: border-color 0.3s ease;
}
.news-search-input:focus {
	border-bottom-color: var(--highlight);
}
.news-search-input::placeholder {
	color: var(--primary);
	opacity: 0.7;
}
.search-wrapper .tc-icon {
	position: absolute;
	right: 12px;
	pointer-events: none;
}
.news-sort-select {
	padding: 12px 40px 12px 16px;
	border: none;
	border-bottom: 2px solid var(--primary);
	font-size: 1rem;
	min-width: 150px;
	cursor: pointer;
	outline: none;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	transition: border-color 0.3s ease;
}
.news-sort-select:focus {
	border-bottom-color: var(--highlight);
}
.sort-wrapper .tc-icon {
	position: absolute;
	right: 12px;
	pointer-events: none;
}
#news-grid .news-article {
	transition: opacity 0.3s ease;
}
#news-grid .no-results {
	grid-column: 1 / -1;
	text-align: center;
}

/* Event Badge */
.post-thumbnail {
	position: relative;
}
.event-badge {
	position: absolute;
	top: 12px;
	right: 12px;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 2;
}
.event-badge.past-event {
	background-color: var(--neutral-color-7);
}
.event-badge .tc-icon {
	fill: white;
}
.news-search-input, .news-sort-select{
    background-color: white;
    border-radius: 50px;
}
img.past-event{
    filter: saturate(0);
}
.article-image{
    width: 100%;
    height: 100%;
    position: relative;
    display: block;
}
.article-image:hover, .work-box:hover {
    & .thumbnail-overlay::before{
        opacity: 1;
        transition: all .25s ease-in;
    }
    & img{
        filter: contrast(.4) brightness(1.4);
        transition: all .25s ease-in;
    }
}

.thumbnail-overlay:before{
    content: "";
    display: block;
    background-color: var(--highlight-color);
    mix-blend-mode: color;
    transition: opacity 0s ease-in-out;
    opacity: 0;
    position: absolute;
    width: 100%;
    height: 100%;
    inset: 0;
    z-index: 3;
}
.wys[data-size="t-100"] * {
    font-size: 1rem;
}
.wys[data-size="t-125"] * {
    font-size: 1.25rem;
}
.wys[data-size="t-150"] * {
    font-size: 1.5rem;
}
.wys[data-size="t-175"] * {
    font-size: 1.75rem;
}
.card-flex-container > .card-solid-container{
    padding: 1.5rem;
    z-index: 1;
    box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;

}
@media (min-width:1250px){
        aspect-ratio: 16/13;
}
@media (min-width:1500px){
    aspect-ratio: 16/9;
}

@media (max-width:1250px){
    .tout{
        max-width:50%;
    }
}
@media (max-width: 1200px){
	.flex-container{
		flex-direction: column;
        padding-inline: 0;
	}
}
@media (min-width:1025px){
    .header-btn{
        display: inline-block;
    }
    .intrude{
        max-height: 170px;
    }

    .topic-dropdown{
        display: none;
    }
    .topic-nav{
        display:block;
    }
	.menu-toggle {
        display:none;
	}
    .bookend-container{
        flex-direction: row;
    }
}
@media (max-width: 1024px){
    .main-nav{
        height: 120px;
    }
    .custom-logo {
        width: 230px;
    }
    .wys p{
        font-size: .9rem;
    }
    .t-450{
        font-size: 3.5rem;
    }
    .contact-container{
        width: 100%;
    }
    .text-box {
        padding-inline: 20px;

    }
    /* Carousel Responsive - Tablet */
    .carousel.fma-flex-container {
        display: block;
    }
    .ht-100{
        height: auto;
    }
    .carousel.fma-flex-container .split-1 .hero-text-box {
        margin-block: 40px;
    }
    .carousel.fma-flex-container .split-1 .car-item {
        padding-block-start: 220px;
    }
    .carousel.fma-flex-container .split-1 {
        height: auto;
        min-height: 750px;
    }
    .carousel.fma-flex-container .split-1 .container-content {
        position: relative;
        min-height: 750px;
    }
    .carousel.fma-flex-container .split-2 {
        height: calc(100vh - 650px);
        min-height: 450px;
    }
    .carousel.fma-flex-container .split-2 .fma-image-cover {
        height: 100%;
        min-height: 450px;
    }
    .carousel.fma-flex-container .carousel-dots {
        position: absolute;
        bottom: 30px;
        left: 50%;
        transform: translateX(-50%);
        justify-content: center;
    }
    .carousel.fma-flex-container .carousel-progress-container {
        position: absolute;
        bottom: 0;
        left: 0;
    }
    .carousel.fma-flex-container .carousel-slide-number {
        font-size: 90px;
        bottom: 20px;
        right: 20px;
    }
    .carousel.fma-flex-container .split-1 .car-item{
        justify-content: end;
    }
    .split-1{
        height: 750px;
        justify-content: end;
    }
    .content-flex-overview{
        flex-direction: column;
        align-items: start;
    }
    .fullscreen-slide-cell > .cell-left{
        left: 0;
    }
    .fma-box {
        padding-block: 280px 50px;
    }
    .fma-image-cover {
        height: auto;
        aspect-ratio: 16 / 9;
    }
    .fma-flex-container{
        display:block;
    }
    .wax-8{
        right: calc(50% - 75px);
        bottom: -90px;
        top: auto;
    }
    .wax-8.reverse{
        left: calc(50% - 56px);
        bottom: -90px;
        top: auto;
    }
    .star-bk{
        width: 100%;
        height: fit-content;
    }
    .star-bk img{
        left: auto;
    }
    .star-bk.reverse img {
        right: auto;
    }
    .visible{
        overflow-y: visible;
    }
    .ping-pong-container .pic-container {
        left: 0; 
        bottom: -40px;
    }
    .ping-pong-container.reverse .pic-container {
        right: auto;
        left: auto;
    }
    .main-nav::after{
        display: none;
    }
    .ping-pong-container{
        flex-direction: column;
        align-items: stretch;
    }
    .ping-pong-container > .pic-side {
        flex: 0 0 auto;
        width: 100%;
    }
    .main-nav {
        justify-content: center;
        width: 100%;
    }
    .main-navigation-left, .main-navigation-right {
        display:none;
    }
    .price-card-flex-container {
        grid-template-columns: 1fr;

    }
    .header-btn{
        display: none;
    }
    .menu-main-menu-container, .menu-main-menu-right-container{
        display: none;
    }
    .column-container{
        grid-template-columns: 1fr;
    }
    .mar-box{
        margin-inline: 0;
    }

    h1.t-500{
        font-size: 4rem;
    }
    .intrude{
        max-height: fit-content;
    }
    .topic-btn.active{
        display:none;
    }
    .topic-dropdown{
        display: block;
    }
    .topic-nav{
        display:none;
    }
    .topic-nav.active{
        display:block;
    }
    .bookend-container{
        flex-direction: column;
    }
    .grid-col-span-1, .grid-col-span-2, .grid-col-span-3, .grid-col-span-4{
        grid-column: span 12;

    }
    .quote-container {
        flex-direction: column;
    }

    .tout{
        max-width: 100%;
    }
    .tout-container{
        flex-direction: column;
    }
    .menu-toggle {
        display:block;
    }

    .nav-menu{
        flex-direction: column;
    }
    .main-navigation .menu-main-menu-container {
        transform: translateY(-200%);
    }
    .main-navigation .menu-main-menu-container.down {
        transform: translateY(0%);
        -moz-transition:    all .5s ease-out;
        -webkit-transition: all .5s ease-out;
        -o-transition:      all .5s ease-out;
        transition:         all .5s ease-out;
        transition-delay: .5s;
    }
    .nav-menu li a {
        font-size: 1.75rem;
    }
	.half-top-lt-grey-bk {
	    height: 400px;
	}
	.border-box img {
	    border-radius: 50px;
	    padding: 20px;
	}
	.main-navigation li{
		margin: 0;
	}
	.fullscreen-slide-left {
	    margin-left: 0px;
		margin-right: 0px;
		padding-left: 60px;
		padding-right: 60px;
	}
	.main-navigation ul ul{
		float:none;
		position: initial;
	    background-color: transparent;
	    padding: 0;
	}
	.main-navigation ul ul a{
		width: 100%!important;
	    color: var(--neutral-color-1);
		padding-left:0px;
		padding-right:0px;
	}
	.nav-menu li.current_page_item, .nav-menu li.current-page-ancestor {
	    border-radius: 0px;
	}
	.main-navigation {
	    width: 100%;
	    float: none;
	}
	.menu-main-navigation-container {
        transform:translateY(-100vh);
	}
}
@media(max-width:998px){

    h2.t-275, .h2.t-275, h2.t-225, h2.t-300, h2.t-400{
        font-size: 2.25rem;
    }
    .floating-box {
        position: relative;
        max-width: 80%;
        display: inline-block;
        bottom: 50px;
    }
    .card-flex-box{
    flex-direction: column;
    }
}
@media (min-width:769px){

}
@media (max-width: 768px){

    .footer-flex-container{
        flex-direction: column;
        align-items: center;
    }
    .parent-logo{
        flex-direction: column;
        padding-bottom: 50px;
    }
    .legal-box {
        flex-direction: column;
    }

    #footer-menu .menu-item {
    text-align: center;
    }

    .sub-footer-container{
        flex-direction: column;
        height: auto;
        padding: 1.5rem 0;
        gap: 1rem;
    }
    .sub-footer-container .copyright-box{
        border-right: none;
        justify-content: center;
        text-align: center;
        width: 100%;
    }
    .sub-footer-container .copyright-box p{
        text-align: center;
    }
    .sub-footer-container .legal-box{
        align-items: center;
        text-align: center;
    }
    #footer-menu.menu{
        flex-direction: column;
    }
    .overview-flex-container, .copy-flex-overview, .image-flex-container, .infographic-flex-container{
        flex-direction: column;
    }
    .work-grid-container {
        grid-template-columns: 1fr;
    }
    /* Carousel Responsive - Mobile */
    .carousel.fma-flex-container .carousel-nav {
        padding: 12px 8px;
    }
    .carousel.fma-flex-container .carousel-prev {
        left: 10px;
    }
    .carousel.fma-flex-container .carousel-next {
        right: 10px;
    }
    .carousel-dot {
        width: 40px;
    }
    .carousel.fma-flex-container .split-1 .car-item {
        padding: 30px;
        padding-top: 140px;
    }
    .carousel.fma-flex-container .split-1 .container-content {
        padding-inline: 20px;
        padding-block: 40px;
    }
    .carousel.fma-flex-container .carousel-slide-number {
        font-size: 72px;
        bottom: 15px;
        right: 15px;
    }
  
    h1.t-500{
        font-size: 3rem;
    }
    .bx-wrapper {
        margin-inline: 30px;
    }
    .quote{
        font-size: 1.75rem;
    }
    .menu-toggle{
        right: 30px;
    }    
    .logo-grid-3, .logo-grid-4, .logo-grid-5{
        grid-template-columns: repeat(2, 1fr);
    }
	.text-box-100 {
	    padding: 100px 30px;
	}
	.box-highlight-rt, .box-highlight-rt-blend {
	    top: -20px;
	    right: -5px;
	}
	.box-highlight-lt, .box-highlight-lt-blend {
	    bottom: -20px;
	    left: -5px;
	}
	.fullscreen-slide-left {
	    margin-left: 15px;
	}
}
@media (max-width: 600px){
    .card-flex-container{
        grid-template-columns: 1fr!important;
    }
    .t-450{
        font-size: 2.5rem;
    }
    .carousel.fma-flex-container .split-1 .car-item {
        padding-block: 100px;
    }
    .card-flex-container{
    gap: 1rem;
    grid-template-columns: 1fr;
    }
    p, .wys p, .wpforms-description{
        line-height: 1.5!important;
    }
    .price-card-container{
        padding: 50px 20px;
    }
    .price-pos{
        left: 30px;
    }
    h3.t-100{
        font-size: .85rem;
    }
	.fullscreen-slide-left {
	    margin-left: 0;
	    padding-left: 40px;
	    padding-right: 40px;
	}
    .see-more-btn{
        bottom: 10px;
    }
    .see-up-btn{
        right: 20px;
    }
}
@media (max-width: 480px){
    .logo-grid-3, .logo-grid-4, .logo-grid-5{
        grid-template-columns: repeat(1, 1fr);
    }
	.calendar-buttons {
		flex-direction: column;
	}
	.btn-calendar {
		width: 100%;
		justify-content: center;
	}
}



@media (max-width: 768px) {
	.news-controls {
		flex-direction: column;
		align-items: flex-start;
	}
	.news-filters {
		width: 100%;
		flex-direction: column;
		align-items: stretch;
	}
	.news-search-input,
	.news-sort-select {
		width: 100%;
		min-width: unset;
	}
}
