 @import url(https://fonts.googleapis.com/css?family=Noto+Sans+HK:300,400,700&display=swap);@charset "UTF-8";
/**
 * Base - global styles, utlilities, mixins, and variables
 */
/* ====================================================================================
~ Functions
================================================================================= */
/* =================================================================================
~ Variables
================================================================================= */
/*-------------------------------------------------------------------
 * z-indexes
 *-----------------------------------------------------------------*/
/* =================================================================================
~ Mixins
================================================================================= */
/* =================================================================================
~ Breakpoints - Credit: Bootstrap 4
================================================================================= */
/* =================================================================================
~ Clearfix
================================================================================= */
/* =================================================================================
~ Container
================================================================================= */
/* =================================================================================
~ Gradients - Credit: Bootstrap 4
================================================================================= */
.vertical-center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .vertical-center > *, .vertical-center::before {
    -webkit-box-flex: 1;
        -ms-flex: 1 1;
            flex: 1 1; }

/* =================================================================================
~ Icons
================================================================================= */
/* =================================================================================
~ Images - Credit: Bootstrap 4
================================================================================= */
/* =================================================================================
~ Screenreaders
================================================================================= */
/* =================================================================================
~ Size
================================================================================= */
/* =================================================================================
~ Utilities
================================================================================= */
/* =================================================================================
~ Clearfix
================================================================================= */
.clearfix::after {
  display: block;
  clear: both;
  content: ""; }

/* =================================================================================
~ Container
================================================================================= */
.container {
  width: 100%;
  margin-right: auto;
  margin-left: auto; }
  @media (min-width: 576px) {
    .container--max-width {
      max-width: 540px; } }
  @media (min-width: 768px) {
    .container--max-width {
      max-width: 720px; } }
  @media (min-width: 992px) {
    .container--max-width {
      max-width: 897px; } }
  @media (min-width: 1200px) {
    .container--max-width {
      max-width: 1105px; } }
  @media (min-width: 1440px) {
    .container--max-width {
      max-width: 1345px; } }
  .container--padded {
    padding-left: 2rem;
    padding-right: 2rem; }

/* =================================================================================
~ Embed - maintains aspect ratio responsively - Credit: Nicolas Gallagher and SUIT CSS
================================================================================= */
.embed {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden; }
  .embed:before {
    display: block;
    content: "";
    padding-top: 100%; }
  .embed__item,
  .embed iframe,
  .embed embed,
  .embed object,
  .embed video {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0; }
  .embed--21by9:before {
    padding-top: 42.85714%; }
  .embed--2by1::before {
    padding-top: 50%; }
  .embed--16by9:before {
    padding-top: 56.25%; }
  .embed--4by3:before {
    padding-top: 75%; }
  .embed--3by2::before {
    padding-top: 66.66667%; }
  .embed--3by4::before {
    padding-top: 133.33333%; }

/* =================================================================================
~ Screenreaders
================================================================================= */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0; }

.sr-only-focusable:active, .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal; }

/* =================================================================================
~ WordPress - classes used by the default WordPress TinyMCE editor
================================================================================= */
.alignleft {
  float: left;
  margin: 0 1em 1em 0; }

.alignright {
  float: right;
  margin: 0 0 1em 1em; }

.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto; }

.wp-caption img {
  width: 100%;
  height: auto; }

.wp-caption .wp-caption-text {
  margin-top: 1rem;
  font-size: .85em;
  font-style: italic; }

/* =================================================================================
~ Career Page Video Additional CSS
================================================================================= */

@media (max-width: 950px){
body.page-id-44 .home-culture__title .h1, h2, h3, h4, h5, h6 {
  text-align: center;
}}

body.page-id-44 .home-culture__copy {
  margin-bottom: 1rem; /* or whatever value you need */
    margin-top: 1rem;
}

@media (max-width: 767px) {
  body.page-id-44 .home-culture__arrow svg {
    width: 1.5rem !important;
    height: 1.5rem !important;
    min-width: 2.5rem !important;
    min-height: 2.5rem !important;
    max-width: 1.5rem !important;
    max-height: 1.5rem !important;
    /* Optional: vertically align, if needed */
    vertical-align: middle;
    display: inline-block;
    margin-top: -1rem;
  }
}

body.page-id-44 .home-culture__viewall {
  padding-top: 2.5rem !important; /* or whatever value you need */
}

@media (max-width: 950px) {
  body.page-id-44 .job-listings__list {
    grid-template-columns: 1fr !important;
    gap: 1.3rem 0 !important;
    max-width: 98vw !important;
    padding: 0 1vw !important;
  }
  body.page-id-44 .job-listings__item {
    padding: 3.05rem 0.9rem 1rem 0.7rem !important;
    margin-bottom: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    border-bottom: 2px solid #b9e518 !important;
  }
  body.page-id-44 .job-listings__header-row {
    gap: 0 !important;
    margin-bottom: 0.22rem !important;
    flex-wrap: nowrap !important;
  }
  body.page-id-44 .job-listings__title {
    font-size: 1.18rem !important;
    margin-bottom: 0.15rem !important;
    line-height: 1.23 !important;
  }
  body.page-id-44 .job-listings__arrow {
    margin-left: 0.6rem !important;
    margin-top: 0.12rem !important;
  }
  body.page-id-44 .job-listings__arrow svg {
    width: 36px !important;
    height: 36px !important;
    color: #a8de00 !important;
  }
  body.page-id-44 .job-listings__type {
    font-size: 1.01rem !important;
    margin-bottom: 0.59rem !important;
    margin-top: -0.09rem !important;
  }
  body.page-id-44 .job-listings__info {
    font-size: 1.13rem !important;
    margin-top: -1rem !important;
    gap: 0.13rem !important;
  }
  body.page-id-44 .job-listings__pay,
  body.page-id-44 .job-listings__location,
  body.page-id-44 .job-listings__date {
    font-size: 1.06rem !important;
    line-height: 1.73rem !important;
    gap: 0.38rem !important;
  }
  /* Remove underline from last card on mobile */
  body.page-id-44 .job-listings__item:last-child {
    border-bottom: none !important;
  }
}
@media (max-width: 950px) {
  body.page-id-44 .job-listings__header-row {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    gap: 0.3rem !important;
    margin-bottom: 0.22rem !important;
  }
  body.page-id-44 .job-listings__arrow {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-left: 0.2rem !important;
    margin-top: 0.10rem !important;
    min-width: 44px !important;
    min-height: 44px !important;
    /* Ensures clickable/tap area is big enough on mobile */
  }
  body.page-id-44 .job-listings__arrow svg {
    display: block !important;
    width: 36px !important;
    height: 36px !important;
    color: #a8de00 !important;
    margin: 0 !important;
  }
}

@media (max-width: 950px){
 body.page-id-44 .page-header__title {
   visibility: hidden; }}


@media (max-width: 950px){
 body.page-id-44 .page-header__title {
   visibility: hidden; 
    margin-top: -8rem;}}

@media (max-width: 767.98px) {
  /* 1. Green background for the video section, minimal bottom padding */
  body.page-id-44 .home-video {
    background: #3a4440 !important;
                }

  /* 2. All video section text is white and centered */
  body.page-id-44 .home-video,
  body.page-id-44 .home-video__header,
  body.page-id-44 .home-video__description {
    color: #fff !important;
    text-align: center !important;  
    margin-bottom: -14rem !important;
  }

  /* 3. Hide the YouTube plugin video title (plugin element) */
  body.page-id-44 .sb_youtube[id^=sb_youtube_] .sby_video_title,
  body.page-id-44.et-db #et-boc .sb_youtube[id^=sb_youtube_] .sby_video_title {
    visibility: hidden !important;
      }

  @media (max-width: 767.98px) {
  body.page-id-44 .home-video__feed {
    margin-bottom: 16rem;
    transform: translateY(130px);
  }
}
}

/* =================================================================================
~ Breakpoints - Credit: Bootstrap 4
================================================================================= */
.d-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.flex-row {
  -webkit-box-orient: horizontal !important;
  -webkit-box-direction: normal !important;
      -ms-flex-direction: row !important;
          flex-direction: row !important; }

.flex-column {
  -webkit-box-orient: vertical !important;
  -webkit-box-direction: normal !important;
      -ms-flex-direction: column !important;
          flex-direction: column !important; }

.flex-row-reverse {
  -webkit-box-orient: horizontal !important;
  -webkit-box-direction: reverse !important;
      -ms-flex-direction: row-reverse !important;
          flex-direction: row-reverse !important; }

.flex-column-reverse {
  -webkit-box-orient: vertical !important;
  -webkit-box-direction: reverse !important;
      -ms-flex-direction: column-reverse !important;
          flex-direction: column-reverse !important; }

.flex-wrap {
  -ms-flex-wrap: wrap !important;
      flex-wrap: wrap !important; }

.flex-nowrap {
  -ms-flex-wrap: nowrap !important;
      flex-wrap: nowrap !important; }

.flex-wrap-reverse {
  -ms-flex-wrap: wrap-reverse !important;
      flex-wrap: wrap-reverse !important; }

.justify-content-start {
  -webkit-box-pack: start !important;
      -ms-flex-pack: start !important;
          justify-content: flex-start !important; }

.justify-content-end {
  -webkit-box-pack: end !important;
      -ms-flex-pack: end !important;
          justify-content: flex-end !important; }

.justify-content-center {
  -webkit-box-pack: center !important;
      -ms-flex-pack: center !important;
          justify-content: center !important; }

.justify-content-between {
  -webkit-box-pack: justify !important;
      -ms-flex-pack: justify !important;
          justify-content: space-between !important; }

.justify-content-around {
  -ms-flex-pack: distribute !important;
      justify-content: space-around !important; }

.align-items-start {
  -webkit-box-align: start !important;
      -ms-flex-align: start !important;
          align-items: flex-start !important; }

.align-items-end {
  -webkit-box-align: end !important;
      -ms-flex-align: end !important;
          align-items: flex-end !important; }

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

.align-items-baseline {
  -webkit-box-align: baseline !important;
      -ms-flex-align: baseline !important;
          align-items: baseline !important; }

.align-items-stretch {
  -webkit-box-align: stretch !important;
      -ms-flex-align: stretch !important;
          align-items: stretch !important; }

.align-content-start {
  -ms-flex-line-pack: start !important;
      align-content: flex-start !important; }

.align-content-end {
  -ms-flex-line-pack: end !important;
      align-content: flex-end !important; }

.align-content-center {
  -ms-flex-line-pack: center !important;
      align-content: center !important; }

.align-content-between {
  -ms-flex-line-pack: justify !important;
      align-content: space-between !important; }

.align-content-around {
  -ms-flex-line-pack: distribute !important;
      align-content: space-around !important; }

.align-content-stretch {
  -ms-flex-line-pack: stretch !important;
      align-content: stretch !important; }

.align-self-auto {
  -ms-flex-item-align: auto !important;
      align-self: auto !important; }

.align-self-start {
  -ms-flex-item-align: start !important;
      align-self: flex-start !important; }

.align-self-end {
  -ms-flex-item-align: end !important;
      align-self: flex-end !important; }

.align-self-center {
  -ms-flex-item-align: center !important;
      align-self: center !important; }

.align-self-baseline {
  -ms-flex-item-align: baseline !important;
      align-self: baseline !important; }

.align-self-stretch {
  -ms-flex-item-align: stretch !important;
      align-self: stretch !important; }

@media (min-width: 576px) {
  .d-sm-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .flex-sm-row {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: row !important;
            flex-direction: row !important; }
  .flex-sm-column {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: column !important;
            flex-direction: column !important; }
  .flex-sm-row-reverse {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: row-reverse !important;
            flex-direction: row-reverse !important; }
  .flex-sm-column-reverse {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: column-reverse !important;
            flex-direction: column-reverse !important; }
  .flex-sm-wrap {
    -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important; }
  .flex-sm-nowrap {
    -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important; }
  .flex-sm-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important; }
  .justify-content-sm-start {
    -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important; }
  .justify-content-sm-end {
    -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important; }
  .justify-content-sm-center {
    -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important; }
  .justify-content-sm-between {
    -webkit-box-pack: justify !important;
        -ms-flex-pack: justify !important;
            justify-content: space-between !important; }
  .justify-content-sm-around {
    -ms-flex-pack: distribute !important;
        justify-content: space-around !important; }
  .align-items-sm-start {
    -webkit-box-align: start !important;
        -ms-flex-align: start !important;
            align-items: flex-start !important; }
  .align-items-sm-end {
    -webkit-box-align: end !important;
        -ms-flex-align: end !important;
            align-items: flex-end !important; }
  .align-items-sm-center {
    -webkit-box-align: center !important;
        -ms-flex-align: center !important;
            align-items: center !important; }
  .align-items-sm-baseline {
    -webkit-box-align: baseline !important;
        -ms-flex-align: baseline !important;
            align-items: baseline !important; }
  .align-items-sm-stretch {
    -webkit-box-align: stretch !important;
        -ms-flex-align: stretch !important;
            align-items: stretch !important; }
  .align-content-sm-start {
    -ms-flex-line-pack: start !important;
        align-content: flex-start !important; }
  .align-content-sm-end {
    -ms-flex-line-pack: end !important;
        align-content: flex-end !important; }
  .align-content-sm-center {
    -ms-flex-line-pack: center !important;
        align-content: center !important; }
  .align-content-sm-between {
    -ms-flex-line-pack: justify !important;
        align-content: space-between !important; }
  .align-content-sm-around {
    -ms-flex-line-pack: distribute !important;
        align-content: space-around !important; }
  .align-content-sm-stretch {
    -ms-flex-line-pack: stretch !important;
        align-content: stretch !important; }
  .align-self-sm-auto {
    -ms-flex-item-align: auto !important;
        align-self: auto !important; }
  .align-self-sm-start {
    -ms-flex-item-align: start !important;
        align-self: flex-start !important; }
  .align-self-sm-end {
    -ms-flex-item-align: end !important;
        align-self: flex-end !important; }
  .align-self-sm-center {
    -ms-flex-item-align: center !important;
        align-self: center !important; }
  .align-self-sm-baseline {
    -ms-flex-item-align: baseline !important;
        align-self: baseline !important; }
  .align-self-sm-stretch {
    -ms-flex-item-align: stretch !important;
        align-self: stretch !important; } }

@media (min-width: 768px) {
  .d-md-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .flex-md-row {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: row !important;
            flex-direction: row !important; }
  .flex-md-column {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: column !important;
            flex-direction: column !important; }
  .flex-md-row-reverse {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: row-reverse !important;
            flex-direction: row-reverse !important; }
  .flex-md-column-reverse {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: column-reverse !important;
            flex-direction: column-reverse !important; }
  .flex-md-wrap {
    -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important; }
  .flex-md-nowrap {
    -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important; }
  .flex-md-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important; }
  .justify-content-md-start {
    -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important; }
  .justify-content-md-end {
    -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important; }
  .justify-content-md-center {
    -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important; }
  .justify-content-md-between {
    -webkit-box-pack: justify !important;
        -ms-flex-pack: justify !important;
            justify-content: space-between !important; }
  .justify-content-md-around {
    -ms-flex-pack: distribute !important;
        justify-content: space-around !important; }
  .align-items-md-start {
    -webkit-box-align: start !important;
        -ms-flex-align: start !important;
            align-items: flex-start !important; }
  .align-items-md-end {
    -webkit-box-align: end !important;
        -ms-flex-align: end !important;
            align-items: flex-end !important; }
  .align-items-md-center {
    -webkit-box-align: center !important;
        -ms-flex-align: center !important;
            align-items: center !important; }
  .align-items-md-baseline {
    -webkit-box-align: baseline !important;
        -ms-flex-align: baseline !important;
            align-items: baseline !important; }
  .align-items-md-stretch {
    -webkit-box-align: stretch !important;
        -ms-flex-align: stretch !important;
            align-items: stretch !important; }
  .align-content-md-start {
    -ms-flex-line-pack: start !important;
        align-content: flex-start !important; }
  .align-content-md-end {
    -ms-flex-line-pack: end !important;
        align-content: flex-end !important; }
  .align-content-md-center {
    -ms-flex-line-pack: center !important;
        align-content: center !important; }
  .align-content-md-between {
    -ms-flex-line-pack: justify !important;
        align-content: space-between !important; }
  .align-content-md-around {
    -ms-flex-line-pack: distribute !important;
        align-content: space-around !important; }
  .align-content-md-stretch {
    -ms-flex-line-pack: stretch !important;
        align-content: stretch !important; }
  .align-self-md-auto {
    -ms-flex-item-align: auto !important;
        align-self: auto !important; }
  .align-self-md-start {
    -ms-flex-item-align: start !important;
        align-self: flex-start !important; }
  .align-self-md-end {
    -ms-flex-item-align: end !important;
        align-self: flex-end !important; }
  .align-self-md-center {
    -ms-flex-item-align: center !important;
        align-self: center !important; }
  .align-self-md-baseline {
    -ms-flex-item-align: baseline !important;
        align-self: baseline !important; }
  .align-self-md-stretch {
    -ms-flex-item-align: stretch !important;
        align-self: stretch !important; } }

@media (min-width: 992px) {
  .d-lg-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .flex-lg-row {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: row !important;
            flex-direction: row !important; }
  .flex-lg-column {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: column !important;
            flex-direction: column !important; }
  .flex-lg-row-reverse {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: row-reverse !important;
            flex-direction: row-reverse !important; }
  .flex-lg-column-reverse {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: column-reverse !important;
            flex-direction: column-reverse !important; }
  .flex-lg-wrap {
    -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important; }
  .flex-lg-nowrap {
    -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important; }
  .flex-lg-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important; }
  .justify-content-lg-start {
    -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important; }
  .justify-content-lg-end {
    -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important; }
  .justify-content-lg-center {
    -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important; }
  .justify-content-lg-between {
    -webkit-box-pack: justify !important;
        -ms-flex-pack: justify !important;
            justify-content: space-between !important; }
  .justify-content-lg-around {
    -ms-flex-pack: distribute !important;
        justify-content: space-around !important; }
  .align-items-lg-start {
    -webkit-box-align: start !important;
        -ms-flex-align: start !important;
            align-items: flex-start !important; }
  .align-items-lg-end {
    -webkit-box-align: end !important;
        -ms-flex-align: end !important;
            align-items: flex-end !important; }
  .align-items-lg-center {
    -webkit-box-align: center !important;
        -ms-flex-align: center !important;
            align-items: center !important; }
  .align-items-lg-baseline {
    -webkit-box-align: baseline !important;
        -ms-flex-align: baseline !important;
            align-items: baseline !important; }
  .align-items-lg-stretch {
    -webkit-box-align: stretch !important;
        -ms-flex-align: stretch !important;
            align-items: stretch !important; }
  .align-content-lg-start {
    -ms-flex-line-pack: start !important;
        align-content: flex-start !important; }
  .align-content-lg-end {
    -ms-flex-line-pack: end !important;
        align-content: flex-end !important; }
  .align-content-lg-center {
    -ms-flex-line-pack: center !important;
        align-content: center !important; }
  .align-content-lg-between {
    -ms-flex-line-pack: justify !important;
        align-content: space-between !important; }
  .align-content-lg-around {
    -ms-flex-line-pack: distribute !important;
        align-content: space-around !important; }
  .align-content-lg-stretch {
    -ms-flex-line-pack: stretch !important;
        align-content: stretch !important; }
  .align-self-lg-auto {
    -ms-flex-item-align: auto !important;
        align-self: auto !important; }
  .align-self-lg-start {
    -ms-flex-item-align: start !important;
        align-self: flex-start !important; }
  .align-self-lg-end {
    -ms-flex-item-align: end !important;
        align-self: flex-end !important; }
  .align-self-lg-center {
    -ms-flex-item-align: center !important;
        align-self: center !important; }
  .align-self-lg-baseline {
    -ms-flex-item-align: baseline !important;
        align-self: baseline !important; }
  .align-self-lg-stretch {
    -ms-flex-item-align: stretch !important;
        align-self: stretch !important; } }

@media (min-width: 1200px) {
  .d-xl-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .flex-xl-row {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: row !important;
            flex-direction: row !important; }
  .flex-xl-column {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: column !important;
            flex-direction: column !important; }
  .flex-xl-row-reverse {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: row-reverse !important;
            flex-direction: row-reverse !important; }
  .flex-xl-column-reverse {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: column-reverse !important;
            flex-direction: column-reverse !important; }
  .flex-xl-wrap {
    -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important; }
  .flex-xl-nowrap {
    -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important; }
  .flex-xl-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important; }
  .justify-content-xl-start {
    -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important; }
  .justify-content-xl-end {
    -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important; }
  .justify-content-xl-center {
    -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important; }
  .justify-content-xl-between {
    -webkit-box-pack: justify !important;
        -ms-flex-pack: justify !important;
            justify-content: space-between !important; }
  .justify-content-xl-around {
    -ms-flex-pack: distribute !important;
        justify-content: space-around !important; }
  .align-items-xl-start {
    -webkit-box-align: start !important;
        -ms-flex-align: start !important;
            align-items: flex-start !important; }
  .align-items-xl-end {
    -webkit-box-align: end !important;
        -ms-flex-align: end !important;
            align-items: flex-end !important; }
  .align-items-xl-center {
    -webkit-box-align: center !important;
        -ms-flex-align: center !important;
            align-items: center !important; }
  .align-items-xl-baseline {
    -webkit-box-align: baseline !important;
        -ms-flex-align: baseline !important;
            align-items: baseline !important; }
  .align-items-xl-stretch {
    -webkit-box-align: stretch !important;
        -ms-flex-align: stretch !important;
            align-items: stretch !important; }
  .align-content-xl-start {
    -ms-flex-line-pack: start !important;
        align-content: flex-start !important; }
  .align-content-xl-end {
    -ms-flex-line-pack: end !important;
        align-content: flex-end !important; }
  .align-content-xl-center {
    -ms-flex-line-pack: center !important;
        align-content: center !important; }
  .align-content-xl-between {
    -ms-flex-line-pack: justify !important;
        align-content: space-between !important; }
  .align-content-xl-around {
    -ms-flex-line-pack: distribute !important;
        align-content: space-around !important; }
  .align-content-xl-stretch {
    -ms-flex-line-pack: stretch !important;
        align-content: stretch !important; }
  .align-self-xl-auto {
    -ms-flex-item-align: auto !important;
        align-self: auto !important; }
  .align-self-xl-start {
    -ms-flex-item-align: start !important;
        align-self: flex-start !important; }
  .align-self-xl-end {
    -ms-flex-item-align: end !important;
        align-self: flex-end !important; }
  .align-self-xl-center {
    -ms-flex-item-align: center !important;
        align-self: center !important; }
  .align-self-xl-baseline {
    -ms-flex-item-align: baseline !important;
        align-self: baseline !important; }
  .align-self-xl-stretch {
    -ms-flex-item-align: stretch !important;
        align-self: stretch !important; } }

@media (min-width: 1440px) {
  .d-xxl-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .flex-xxl-row {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: row !important;
            flex-direction: row !important; }
  .flex-xxl-column {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: column !important;
            flex-direction: column !important; }
  .flex-xxl-row-reverse {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: row-reverse !important;
            flex-direction: row-reverse !important; }
  .flex-xxl-column-reverse {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: reverse !important;
        -ms-flex-direction: column-reverse !important;
            flex-direction: column-reverse !important; }
  .flex-xxl-wrap {
    -ms-flex-wrap: wrap !important;
        flex-wrap: wrap !important; }
  .flex-xxl-nowrap {
    -ms-flex-wrap: nowrap !important;
        flex-wrap: nowrap !important; }
  .flex-xxl-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
        flex-wrap: wrap-reverse !important; }
  .justify-content-xxl-start {
    -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important; }
  .justify-content-xxl-end {
    -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important; }
  .justify-content-xxl-center {
    -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important; }
  .justify-content-xxl-between {
    -webkit-box-pack: justify !important;
        -ms-flex-pack: justify !important;
            justify-content: space-between !important; }
  .justify-content-xxl-around {
    -ms-flex-pack: distribute !important;
        justify-content: space-around !important; }
  .align-items-xxl-start {
    -webkit-box-align: start !important;
        -ms-flex-align: start !important;
            align-items: flex-start !important; }
  .align-items-xxl-end {
    -webkit-box-align: end !important;
        -ms-flex-align: end !important;
            align-items: flex-end !important; }
  .align-items-xxl-center {
    -webkit-box-align: center !important;
        -ms-flex-align: center !important;
            align-items: center !important; }
  .align-items-xxl-baseline {
    -webkit-box-align: baseline !important;
        -ms-flex-align: baseline !important;
            align-items: baseline !important; }
  .align-items-xxl-stretch {
    -webkit-box-align: stretch !important;
        -ms-flex-align: stretch !important;
            align-items: stretch !important; }
  .align-content-xxl-start {
    -ms-flex-line-pack: start !important;
        align-content: flex-start !important; }
  .align-content-xxl-end {
    -ms-flex-line-pack: end !important;
        align-content: flex-end !important; }
  .align-content-xxl-center {
    -ms-flex-line-pack: center !important;
        align-content: center !important; }
  .align-content-xxl-between {
    -ms-flex-line-pack: justify !important;
        align-content: space-between !important; }
  .align-content-xxl-around {
    -ms-flex-line-pack: distribute !important;
        align-content: space-around !important; }
  .align-content-xxl-stretch {
    -ms-flex-line-pack: stretch !important;
        align-content: stretch !important; }
  .align-self-xxl-auto {
    -ms-flex-item-align: auto !important;
        align-self: auto !important; }
  .align-self-xxl-start {
    -ms-flex-item-align: start !important;
        align-self: flex-start !important; }
  .align-self-xxl-end {
    -ms-flex-item-align: end !important;
        align-self: flex-end !important; }
  .align-self-xxl-center {
    -ms-flex-item-align: center !important;
        align-self: center !important; }
  .align-self-xxl-baseline {
    -ms-flex-item-align: baseline !important;
        align-self: baseline !important; }
  .align-self-xxl-stretch {
    -ms-flex-item-align: stretch !important;
        align-self: stretch !important; } }

/* =================================================================================
~ Fonts
================================================================================= */
@font-face {
  font-family: 'fontello';
  src: url(../fonts/fontello.eot);
  src: url(../fonts/fontello.eot#iefix) format("embedded-opentype"), url(../fonts/fontello.woff2) format("woff2"), url(../fonts/fontello.woff) format("woff"), url(../fonts/fontello.ttf) format("truetype"), url(../fonts/fontello.svg#fontello) format("svg");
  font-weight: normal;
  font-style: normal; }

[class^="icon-"]:before, [class*=" icon-"]:before {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: none;
  /* For safety - reset parent styles, that can break glyph codes*/
  font-variant: normal;
  text-transform: none;
  /* fix buttons height, for twitter bootstrap */
  line-height: 1em; }

.icon-right-small:before {
  content: '\E800'; }

/* '' */
.icon-down-open:before {
  content: '\E801'; }

/* '' */
.icon-up-open:before {
  content: '\E802'; }

/* '' */
.icon-search:before {
  content: '\E803'; }

/* '' */
.icon-share:before {
  content: '\E804'; }

/* '' */
.icon-cancel:before {
  content: '\E805'; }

/* '' */
.icon-plus:before {
  content: '\E806'; }

/* '' */
.icon-check:before {
  content: '\E807'; }

/* '' */
.icon-minus:before {
  content: '\E809'; }

/* '' */
.icon-warning-empty:before {
  content: '\E80A'; }

/* '' */
.icon-linkedin:before {
  content: '\F05C'; }

/* '' */
.icon-info:before {
  content: '\F086'; }

/* '' */
.icon-menu:before {
  content: '\F0C9'; }

/* '' */
.icon-pinterest:before {
  content: '\F0D3'; }

/* '' */
.icon-play-circled:before {
  content: '\F144'; }

/* '' */
.icon-link-ext:before {
  content: '\F14C'; }

/* '' */
.icon-youtube:before {
  content: '\F166'; }

/* '' */
.icon-mail:before {
  content: '\F199'; }

/* '' */
.icon-file-pdf:before {
  content: '\F1C1'; }

/* '' */
.icon-twitter:before {
  content: '\F304'; }

/* '' */
.icon-facebook:before {
  content: '\F30E'; }

/* '' */
.icon-instagram:before {
  content: '\F32D'; }


/* =========================================================
   Hospitality Page Only (page-id-4406)
   ========================================================= */
body.page-id-4406 {

  /* =========================================================
     Hospitality Materials Grid (ONLY this section)
     Targets: <section class="healthcare-featured-products hospitality-materials">
     ========================================================= */

  /* Center the heading in this section only */
  section.healthcare-featured-products.hospitality-materials .section-header,
  section.healthcare-featured-products.hospitality-materials .section-header h2 {
    text-align: center !important;
    margin: 0 0 2rem 0;
    margin-top: -15rem;
  }

  /* GRID */
  section.healthcare-featured-products.hospitality-materials .featured-product-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));  /* desktop: 3 per row */
    gap: 1.5rem;
    align-items: stretch;
    justify-items: center;
    width: 100%;
  }

  /* Tablet: 2 per row */
  @media (max-width: 1024px) {
    section.healthcare-featured-products.hospitality-materials .featured-product-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }

  /* Mobile: 1 per row */
  @media (max-width: 640px) {
    section.healthcare-featured-products.hospitality-materials .featured-product-grid {
      grid-template-columns: 1fr;
      margin-bottom: 3.5rem;
    }
  }

  /* CARD */
  section.healthcare-featured-products.hospitality-materials .product-card {
    position: relative;
    display: block;
    overflow: hidden;
    border-radius: 0;
    aspect-ratio: 10 / 9;
    width: 100%;
    max-width: 500px;
    text-decoration: none;
  }

  /* IMAGE: always fill, no gaps */
  section.healthcare-featured-products.hospitality-materials .product-card img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    vertical-align: middle !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  /* Hover zoom (desktop) */
  @media (hover:hover) {
    section.healthcare-featured-products.hospitality-materials .product-card:hover img {
      transform: scale(1.05);
      transition: transform .3s ease;
    }
  }

  /* LABEL (use your existing typography) */
  section.healthcare-featured-products.hospitality-materials .product-label {
    position: absolute;
    bottom: 1rem;
    left: 50%;
    transform: translateX(-50%);
    color: #fff;
    font-size: 2.4rem;
    font-weight: 650;
    text-shadow: 0 2px 5px rgba(0,0,0,.4);
    pointer-events: none;
    text-align: center;
    white-space: nowrap;
  }

  /* Defensive: prevent any parent overflow from clipping images */
  section.healthcare-featured-products.hospitality-materials,
  section.healthcare-featured-products.hospitality-materials .container--max-width {
    overflow: visible !important;
  }

  @media (max-width: 767.98px) {
    .home-culture.container.container--padded.container--max-width {
      margin-bottom: 2.5rem !important;
    }
  }

  @media (max-width: 767.98px) {
    .home-culture.container.container--padded.container--max-width {
      margin-bottom: 0rem !important;
      margin-top: 1.5rem !important;
    }
  }

  @media (max-width: 767.98px) {
    section.healthcare-featured-products.hospitality-materials .section-header,
    section.healthcare-featured-products.hospitality-materials .section-header h2 {
      margin-top: -1.5rem !important;
      font-size: 2.7rem !important;
      margin-bottom: 3rem !important;
    }
  }

  @media (max-width: 767.98px) {
    body.page-template-hospitality .collage-card.collage-card--left {
      margin-top: 2rem !important;
    }
  }

  @media (max-width: 767.98px) {
    .collage-cards__inner {
      position: relative;
      display: block !important;
      margin: 0 auto;
      max-width: 120%;
margin-top: 3rem;
    }

    /* Hide the rightmost (third) image */
    .collage-card--right {
      display: none !important;
    }

    /* Base: make all cards stack naturally first */
    .collage-card {
      position: relative;
      width: 100%;
      margin: 0 auto;
      border-radius: 4px;
    }

    /* Left card = base layer */
    .collage-card--left {
      z-index: 1;
      border-radius: 4px;
      height: 45%;
      width: 70%;
      right: 5rem;
    }

    /* Center card overlaps bottom-right with white frame (mobile) */
    .collage-card--center {
      position: absolute;
      top: 20%;
      left: 25%;
      width: 73%;
      z-index: 2;
      border: 6px solid #fff;
      box-shadow: 0 2px 12px rgba(0, 0, 0, 0.15);
      overflow: hidden;
      border-radius: 4px;
      height: 50%;
    }

    .collage-card img {
      display: block;
      width: 100%;
      height: 100%;
      border-radius: 0;
    }
  }

  /* ==============================
     Hospitality Featured Grid Toggle
     ============================== */

  /* Default (desktop/tablet): show background-image grid, hide mobile */
  .featured-grid--mobile {
    display: none !important;
  }

  /* Mobile only: show mobile grid, hide desktop one */
  @media (max-width: 767.98px) {
    .featured-grid {
      display: none !important;
    }
    .featured-grid--mobile {
      display: grid !important;
      grid-template-columns: 1fr;
      gap: 1.5rem;
      padding: 0 1rem;
    }
  }

  /* =========================================================
     Hospitality Materials Grid (ONLY this section)
     ========================================================= */

  /* Center the heading in this section only */
  section.healthcare-featured-products.hospitality-materials .section-header,
  section.healthcare-featured-products.hospitality-materials .section-header h2 {
    text-align: center !important;
    margin: 0 0 2rem 0;
  }

  /* GRID */
  section.healthcare-featured-products.hospitality-materials .featured-product-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.5rem;
    align-items: stretch;
    justify-items: center;
    width: 100%;
  }

  /* Tablet: 2 per row */
  @media (max-width: 1024px) {
    section.healthcare-featured-products.hospitality-materials .featured-product-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }

  /* Mobile: 1 per row */
  @media (max-width: 640px) {
    section.healthcare-featured-products.hospitality-materials .featured-product-grid {
      grid-template-columns: 1fr;
      margin-bottom: 3.5rem;
    }
  }

  /* CARD */
  section.healthcare-featured-products.hospitality-materials .product-card {
    position: relative;
    display: block;
    overflow: hidden;
    border-radius: 0;
    aspect-ratio: 10 / 9;
    width: 100%;
    max-width: 500px;
    text-decoration: none;
  }

  /* IMAGE */
  section.healthcare-featured-products.hospitality-materials .product-card img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    vertical-align: middle !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  /* Hover zoom (desktop) */
  @media (hover:hover) {
    section.healthcare-featured-products.hospitality-materials .product-card:hover img {
      transform: scale(1.05);
      transition: transform .3s ease;
    }
  }

  /* LABEL */
  section.healthcare-featured-products.hospitality-materials .product-label {
    position: absolute;
    bottom: 1rem;
    left: 50%;
    transform: translateX(-50%);
    color: #fff;
    font-size: 2.4rem;
    font-weight: 650;
    text-shadow: 0 2px 5px rgba(0,0,0,.4);
    pointer-events: none;
    text-align: center;
    white-space: nowrap;
  }

  /* Defensive: prevent any parent overflow from clipping images */
  section.healthcare-featured-products.hospitality-materials,
  section.healthcare-featured-products.hospitality-materials .container--max-width {
    overflow: visible !important;
  }

  /* Hide mobile grid on tablet/desktop; show only on mobile */
  .featured-grid--mobile { display: none; }

  @media (max-width: 767.98px) {
    .featured-grid--mobile {
      display: grid;
      grid-template-columns: 1fr;
      gap: 1.25rem;
      margin: 0 auto 2rem auto;
      width: 100%;
      max-width: 640px;
      padding: 0 1rem;
    }
  }

  /* Each card has a fixed visual ratio so all tiles are the same height */
  .featured-grid--mobile .fgm-card {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    box-shadow: 0 8px 22px rgba(0,0,0,.12);
    -webkit-tap-highlight-color: transparent;
  }

  /* Image fills the frame */
  .featured-grid--mobile .fgm-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transform: scale(1);
    transition: transform .35s ease;
  }

  /* Overlay */
  .featured-grid--mobile .fgm-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
      to bottom,
      rgba(168,222,0,0.85) 0%,
      rgba(168,222,0,0.9) 100%
    );
    color: white;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 1.25rem;
    opacity: 0;
    visibility: hidden;
    transition: opacity .25s ease, visibility .25s ease;
  }

  /* Title & CTA */
  .featured-grid--mobile .fgm-overlay h3 {
    font-size: 2rem;
    line-height: 1.2;
    font-weight: 700;
    margin: 0 0 2.2rem 0;
    color: #fff;
  }

  .featured-grid--mobile .fgm-cta {
    position: absolute;
    bottom: 1rem;
    right: 1.25rem;
    display: inline-block;
    font-weight: 700;
    font-size: 1.8rem;
    color: #fff;
    text-align: right;
    padding-bottom: .05rem;
  }

  /* Reveal overlay on tap/focus/hover */
  .featured-grid--mobile .fgm-card:focus .fgm-overlay,
  .featured-grid--mobile .fgm-card:focus-within .fgm-overlay,
  .featured-grid--mobile .fgm-card:active .fgm-overlay,
  .featured-grid--mobile .fgm-card:hover .fgm-overlay {
    opacity: 1;
    visibility: visible;
  }

  .featured-grid--mobile .fgm-card:focus img,
  .featured-grid--mobile .fgm-card:focus-within img,
  .featured-grid--mobile .fgm-card:active img,
  .featured-grid--mobile .fgm-card:hover img {
    transform: scale(1.03);
  }

  /* Accessibility focus ring on mobile */
  @media (max-width: 767.98px) {
    .featured-grid--mobile .fgm-card:focus-visible {
      outline: 3px solid #a8de00;
      outline-offset: 3px;
    }
  }

  /* Ensure the desktop grid stays hidden on phones (defensive) */
  @media (max-width: 767.98px) {
    .featured-grid { display: none !important; }
  }
}





/* '' */
/* =================================================================================
~ Reboot - combination of normalization, reset, and defaults
================================================================================= */
*, *:before, *:after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0;
  padding: 0; }

html {
  font-size: 62.5%;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -ms-overflow-style: scrollbar;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

body {
  background-color: #fff;
  color: #3c4440;
  font-family: "Segoe UI", "Segoe UI", "Roboto", "Helvetica Neue", Arial, sans-serif;
  font-size: 1.7rem;
  font-weight: 400;
  line-height: 1.6;
  text-align: left;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block; }

h1, h2, h3, h4, h5, h6 {
  color: inherit;
  font-family: "Segoe UI","Segoe UI", "Roboto", "Helvetica Neue", Arial, sans-serif;
  font-weight: 700; }

a {
  color: inherit;
  text-decoration: none; }

address {
  font-style: normal;
  line-height: inherit; }

sub, sup {
  position: relative;
  font-size: .85em;
  line-height: 0;
  vertical-align: baseline; }

sub {
  bottom: -.25em; }

sup {
  top: -.5em; }

pre, code {
  font-family: Monaco, Consolas, monospace;
  font-size: 1em; }

ul, ol {
  list-style: none; }

img {
  border-style: none;
  display: block;
  max-width: 100%;
  height: auto; }

svg:not(:root) {
  overflow: hidden; }

label {
  display: inline-block; }

button {
  background: transparent;
  border: none;
  border-radius: 0; }

input,
button,
select,
optgroup,
textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit; }

textarea {
  overflow: auto;
  resize: vertical; }

table {
  border: 0;
  border-collapse: collapse;
  empty-cells: show;
  font-size: 1em; }

caption, th, td {
  vertical-align: top;
  text-align: inherit;
  font-weight: normal; }

[tabindex="-1"]:focus {
  outline: 0 !important; }

@-ms-viewport {
  width: device-width; }

/* =================================================================================
~ Media Queries
================================================================================= */
@media (min-width: 768px) {
  body {
    font-size: 1.8rem; } }

/* =======================================================================================
~ Common Styles
======================================================================================= */
/* =======================================================================================
~~ Typography
======================================================================================= */
.text, .projects--grid .project__title, .section__headline {
  line-height: calc( 1em + 1rem); }
  .text--descriptor {
    font-size: 1.4rem;
    text-transform: uppercase; }
  .text--head {
    font-size: 2.5rem;
    font-weight: 700; }
  .text--hero {
    font-size: 5rem;
    font-weight: 700; }
  .text--subhead, .projects--grid .project__title, .section__headline {
    font-size: 2rem;
    font-weight: 700; }

@media (min-width: 992px) {
  .text--descriptor {
    font-size: 2rem; }
  .text--head {
    font-size: 6.5rem; }
  .text--hero {
    font-size: 2.5rem; }
  .text--subhead, .projects--grid .project__title, .section__headline {
    font-size: 3.5rem; } }

@media (max-width: 991.98px) {
 body.page-id-4406 .text--subhead, .projects--grid .project__title, .section__headline {
    font-size: 2.2rem !important;
    font-weight: 700; }
}

/* =======================================================================================
~~ Animations
======================================================================================= */
/* =======================================================================================
~ Selected fSelect code
======================================================================================= */
.fs-wrap {
  display: inline-block;
  cursor: pointer; }

.fs-label-wrap {
  position: relative;
  cursor: default; }

.fs-label-wrap,
.fs-dropdown {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.fs-label-wrap .fs-label {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden; }

.fs-dropdown {
  position: absolute;
  background-color: #fff;
  z-index: 1000; }

.fs-dropdown .fs-options {
  max-height: 200px;
  overflow: auto; }

.fs-search input {
  border: none !important;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  outline: none;
  padding: 6px 0;
  width: 100%; }

.fs-option,
.fs-search,
.fs-optgroup-label {
  cursor: default; }

.fs-option:last-child {
  border-bottom: none; }

.fs-no-results {
  padding: 6px 8px; }

.fs-option {
  cursor: pointer;
  word-break: break-all; }

.fs-option.disabled {
  opacity: 0.4;
  cursor: default; }

.fs-option.hl {
  background-color: #f5f5f5; }

.fs-wrap.multiple .fs-option {
  position: relative; }

.fs-optgroup-label {
  font-weight: bold;
  text-align: center; }

.hidden {
  display: none; }

/**
 * Components - reusable components
 */
/* =================================================================================
~ Button
================================================================================= */
.btn, .form .gfield--fileupload .gfield_label {
  background: none;
  border: none;
  cursor: pointer;
  display: inline-block;
  text-align: center;
  text-transform: uppercase;
  position: relative; }
  .btn--default, .form .gfield--fileupload .gfield_label {
    font-weight: 700;
    padding: 0.4em 1.25em; }
    @media (min-width: 992px) {
      .btn--default, .form .gfield--fileupload .gfield_label {
        padding: 0.8em 2.5em; } }
    .btn--default::before, .form .gfield--fileupload .gfield_label::before, .btn--default::after, .form .gfield--fileupload .gfield_label::after {
      display: block;
      content: '';
      position: absolute;
      width: 100%;
      height: 100%;
      border-radius: 2px;
      border-color: #a8de00;
      border-width: 2px; }
    .btn--default::before, .form .gfield--fileupload .gfield_label::before {
      bottom: 0;
      right: 0;
      border-style: solid solid none none; }
    .btn--default::after, .form .gfield--fileupload .gfield_label::after {
      top: 0;
      left: 0;
      border-style: none none solid solid; }
    .btn--default:hover::before, .form .gfield--fileupload .gfield_label:hover::before {
      -webkit-animation: btn-animate-before 600ms linear;
              animation: btn-animate-before 600ms linear; }
    .btn--default:hover::after, .form .gfield--fileupload .gfield_label:hover::after {
      -webkit-animation: btn-animate-after 600ms 200ms linear;
              animation: btn-animate-after 600ms 200ms linear; }
  .btn--dark {
    color: #fff; }
  .btn--alt {
    font-weight: 700;
    padding: 1.5rem .3rem; }
    .btn--alt::after {
      margin-left: 1.5rem;
      content: '\2192'; }
    .btn--alt::before {
      content: '';
      display: block;
      position: absolute;
      bottom: 0;
	border-bottom: solid 2px #a8de00;
        -webkit-transition: left 150ms linear;
      transition: left 150ms linear;
      right: calc( 1.5rem + 1em);
      left: calc( 100% - 1.5rem + 1em); }
    .btn--alt:hover::before {
      left: 0; }


footer .btn--default, 
footer .form .gfield--fileupload .gfield_label {
    padding: 0.4em 1.25em;
}



@-webkit-keyframes btn-animate-before {
  0% {
    width: 100%;
    border-top-color: #a8de00; }
  16% {
    width: 0;
    border-top-color: transparent;
    height: 100%;
    border-right-color: #a8de00; }
  33% {
    height: 0;
    border-right-color: transparent;
    top: initial;
    left: initial;
    bottom: 0;
    right: 0; }
  66% {
    top: 0;
    left: 0;
    bottom: initial;
    right: initial;
    width: 0;
    border-top-color: transparent; }
  83% {
    width: 100%;
    border-top-color: #a8de00;
    height: 0;
    border-right-color: transparent; }
  100% {
    height: 100%;
    border-right-color: #a8de00;
    top: 0;
    left: 0;
    bottom: initial;
    right: initial; } }

@keyframes btn-animate-before {
  0% {
    width: 100%;
    border-top-color: #a8de00; }
  16% {
    width: 0;
    border-top-color: transparent;
    height: 100%;
    border-right-color: #a8de00; }
  33% {
    height: 0;
    border-right-color: transparent;
    top: initial;
    left: initial;
    bottom: 0;
    right: 0; }
  66% {
    top: 0;
    left: 0;
    bottom: initial;
    right: initial;
    width: 0;
    border-top-color: transparent; }
  83% {
    width: 100%;
    border-top-color: #a8de00;
    height: 0;
    border-right-color: transparent; }
  100% {
    height: 100%;
    border-right-color: #a8de00;
    top: 0;
    left: 0;
    bottom: initial;
    right: initial; } }

@-webkit-keyframes btn-animate-after {
  0% {
    width: 100%;
    border-bottom-color: #a8de00; }
  16% {
    width: 0;
    border-bottom-color: transparent;
    height: 100%;
    border-left-color: #a8de00; }
  33% {
    height: 0;
    border-left-color: transparent;
    bottom: initial;
    right: initial;
    top: 0;
    left: 0; }
  66% {
    bottom: 0;
    right: 0;
    top: initial;
    left: initial;
    width: 0;
    border-bottom-color: transparent; }
  83% {
    width: 100%;
    border-bottom-color: #a8de00;
    height: 0;
    border-left-color: transparent; }
  100% {
    height: 100%;
    border-left-color: #a8de00;
    bottom: 0;
    right: 0;
    top: initial;
    left: initial; } }

@keyframes btn-animate-after {
  0% {
    width: 100%;
    border-bottom-color: #a8de00; }
  16% {
    width: 0;
    border-bottom-color: transparent;
    height: 100%;
    border-left-color: #a8de00; }
  33% {
    height: 0;
    border-left-color: transparent;
    bottom: initial;
    right: initial;
    top: 0;
    left: 0; }
  66% {
    bottom: 0;
    right: 0;
    top: initial;
    left: initial;
    width: 0;
    border-bottom-color: transparent; }
  83% {
    width: 100%;
    border-bottom-color: #a8de00;
    height: 0;
    border-left-color: transparent; }
  100% {
    height: 100%;
    border-left-color: #a8de00;
    bottom: 0;
    right: 0;
    top: initial;
    left: initial; } }

.bubble {
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, -100%);
          transform: translate(-50%, -100%); }
  .bubble__content {
    background-color: rgba(168, 222, 0, 0.95);
    padding: 1rem; }
  .bubble::after {
    content: '';
    display: block;
    margin: auto;
    position: relative;
    top: -1px;
    width: 30%;
    padding-top: 15%;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none' viewBox='0 0 100 100'%3E%3Cpolygon points='0 0, 100 0, 50 100, 0 0' fill='rgba(168, 222, 0, 0.95)'/%3E%3C/svg%3E");
    background-size: 100% 100%; }

/* =======================================================================================
~ Callout
======================================================================================= */
.callout {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  position: relative;
  margin-top: 2.5rem;
  margin-bottom: 2.5rem; }
  .callout__copy {
    margin-top: 2.5rem; }
    .callout__copy .wysiwyg {
      max-width: initial; }
  .callout__primary-image img, .callout__secondary-image img, .callout__video img {
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%; }
  .callout__subhead {
    margin-bottom: 1rem; }
  .callout__subhead--no-video {
    font-size: 4.5rem; }
  .callout__body--no-video {
    font-size: 2.75rem; }
    .callout__body--no-video .btn, .callout__body--no-video .form .gfield--fileupload .gfield_label, .form .gfield--fileupload .callout__body--no-video .gfield_label {
      font-size: 2rem; }
  .callout__video {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 60%;
            flex: 0 1 60%;
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
    width: 100%; }
  .callout--featured {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start; }
    .callout--featured .callout__copy {
      margin-top: 2.5rem; }
  .callout--standard {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start; }

@media (min-width: 992px) {
  .callout {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; }
    .callout__video {
      -webkit-box-ordinal-group: unset;
          -ms-flex-order: unset;
              order: unset; }
    .callout--video .callout__copy {
      -webkit-box-flex: 0;
          -ms-flex: 0 1 35%;
              flex: 0 1 35%; } }

@media (max-width: 1199.98px) {
  .callout__secondary-image {
    display: none; }
  .callout__primary-image {
    margin-left: -2rem;
    width: calc( 100% + ( 2 * 2rem )); } }

@media (min-width: 1200px) {
  .callout {
    margin-top: 5rem;
    margin-bottom: 5rem; }
    .callout__subhead {
      margin-bottom: 3rem; }
    .callout--featured .callout__copy {
      font-size: 2.2rem; }
    .callout:not(.callout--video) {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row; }
    .callout--standard .callout__copy {
      -webkit-box-flex: 0;
          -ms-flex: 0 1 33%;
              flex: 0 1 33%; }
    .callout--standard .callout__primary-image {
      -webkit-box-flex: 1;
          -ms-flex: 1 1;
              flex: 1 1; }
    .callout--standard.callout--double {
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start;
      margin-top: 16.5rem; }
      .callout--standard.callout--double .callout__copy {
        margin-bottom: 3rem;
        margin-top: calc(35% + -3.5rem); }
      .callout--standard.callout--double .callout__secondary-image {
        position: absolute;
        width: 35%;
        top: -6.5rem; }
    .callout--standard.callout--double.callout--left .callout__secondary-image {
      left: 6.5rem; }
    .callout--standard.callout--double.callout--left .callout__primary-image {
      margin-right: -2rem;
      margin-left: 3rem; }
    .callout--standard.callout--double.callout--right .callout__secondary-image {
      right: 6.5rem; }
    .callout--standard.callout--double.callout--right .callout__primary-image {
      margin-left: -2rem;
      margin-right: 3rem; }
    .callout--standard.callout--left .callout__copy {
      -webkit-box-ordinal-group: 0;
          -ms-flex-order: -1;
              order: -1; }
    .callout--standard.callout--single {
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      .callout--standard.callout--single .callout__copy {
        min-width: 16em; }
    .callout--standard.callout--single.callout--left .callout__copy {
      margin-right: 5rem; }
    .callout--standard.callout--single.callout--right .callout__copy {
      margin-left: 5rem; } }

@media (min-width: 1200px) {
  .callout--standard.callout--double.callout--left .callout__primary-image {
    margin-right: -11rem; }
  .callout--standard.callout--double.callout--right .callout__primary-image {
    margin-left: -11rem; } }

@media (max-width: 767.98px) {
  .callout [data-aos^=fade][data-aos^=fade] {
    opacity: 1;
    -webkit-transform: none;
            transform: none; } }

.expander__toggle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  cursor: pointer; }
  .expander__toggle .icon-::before {
    content: "\E806"; }
  .expander__toggle.active .icon-::before {
    content: "\E809"; }

@media (max-width: 991.98px) {
  .expander__content:not(.active) {
    display: none !important; } }

@media (min-width: 992px) {
  .expander__toggle .icon- {
    display: none; } }

/* =================================================================================
~ Filters
================================================================================= */
.filters {
  /* Removed display: none to show filters */
  /* Acts as positioned parent for toggle instead of __controls, so dropdowns can exceed hidden overflow.
  @see https://css-tricks.com/popping-hidden-overflow/ */
}

.filters select {
  color: inherit; 
}

.filters .facetwp-counter,
.filters .facetwp-display,
.filters .facetwp-selection-label,
.filters .facetwp-hidden,
.filters .facetwp-overlay {
  display: none;
}

.filters .proximity-icon,
.filters .fs-label-wrap,
.filters .facetwp-selection-value,
.filters .facetwp-sort-select {
  cursor: pointer;
}

.filters .fs-dropdown {
  cursor: default;
  display: none; /* Hide dropdown menus by default */
}

/* Show dropdown when the parent has .fs-open class */
.fs-wrap.fs-open .fs-dropdown {
  display: block;
}

.filters .facetwp-sort::after,
.filters .fs-arrow::after {
  font-family: "fontello" !important;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  speak: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.filters .fs-label-wrap {
  display: flex;
  align-items: center;
}

.filters .fs-option-label {
  display: inline-block;
  padding: 0.4rem;
  border-radius: 0.2rem;
}

.filters .fs-search {
  display: none;
}
.filters .location-results {
    display: none;
}
.filters__controls {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 1rem 0.5rem;
    border-top: solid 1px #e0e3e6;
}
.filters__controls .facetwp-btn {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
}
.filters__controls .facetwp-facet {
    z-index: 3;
}
.filters__controls .facetwp-facet-search {
    right: 0;
}
.filters__controls .facetwp-search-wrap {
    display: inherit;
    -webkit-box-pack: inherit;
        -ms-flex-pack: inherit;
        justify-content: inherit;
    width: 100%;
}
.filters__controls .facetwp-sort {
    position: relative;
}
.filters__controls .facetwp-sort::after {
    position: absolute;
    right: 0;
    z-index: -1;
}
.filters__controls .facetwp-sort-select {
    padding-right: 2em;
    background: none;
    border: none;
    -webkit-appearance: none;
       -moz-appearance: none;
        appearance: none;
    vertical-align: middle;
}
@supports (-moz-appearance: none) {
  .filters__controls .facetwp-sort-select {
    margin-left: -4px;
  }
}
.filters__controls .facetwp-sort::after,
.filters__controls .fs-arrow::after {
    font-size: 2em;
    content: "\E806";
    vertical-align: middle;
}
.filters__controls .fs-label {
    padding-right: 2rem;
}
.filters__controls--toggle .facetwp-facet-search {
    -ms-flex-item-align: end;
    align-self: flex-end;
    max-width: 100%;
}
.filters .search-form--active {
    width: 270px;
}
.filters__location {
    font-size: 2.4rem;
    margin-top: 4rem;
    margin-bottom: 4rem;
    cursor: default;
}
.filters__location small {
    display: block;
    font-size: 1.6rem;
    color: #798592;
}
.filters__location .facetwp-facet-region {
    display: inline-block;
}
.filters__location .facetwp-location {
    border: none;
    width: 4em;
}
.filters__location .fs-label, .filters__location .location-wrap {
    position: relative;
    color: #a8de00;
    white-space: unset;
}
.filters__location .fs-label::after, .filters__location .location-wrap::after {
    border-bottom: solid 0.2rem #a8de00;
    content: '';
    position: absolute;
    bottom: 0.25em;
    left: 0;
    right: 0;
}
.filters__location .location-wrap::after {
    bottom: 0.17em;
}
.filters__location .facetwp-location, .filters__location .location-wrap ::-webkit-input-placeholder {
    color: #a8de00;
}
.filters__location .facetwp-location, .filters__location .location-wrap ::-moz-placeholder {
    color: #a8de00;
}
.filters__location .facetwp-location, .filters__location .location-wrap ::-ms-input-placeholder {
    color: #a8de00;
}
.filters__location .facetwp-location, .filters__location .location-wrap ::placeholder {
    color: #a8de00;
}
.filters__location .fs-arrow, .filters__location .proximity-icon {
    height: 1em;
    width: 1em;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
        justify-content: center;
    margin-left: 1.5rem;
    position: relative;
    border: solid 2px #a8de00;
    border-radius: 0.2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
}
.filters__location .fs-arrow > *, .filters__location .fs-arrow::before, .filters__location .proximity-icon > *, .filters__location .proximity-icon::before {
    -webkit-box-flex: 1;
        -ms-flex: 1 1;
        flex: 1 1;
}
.filters__location .proximity-icon {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    text-align: center;
    bottom: 0.08em;
}
.filters__location .proximity-icon::before {
    font-size: 0.8em;
}
.filters__location .facetwp-facet-proximity {
    display: inline-block;
}
.filters__location .fs-arrow {
    bottom: -0.05em;
}
.filters__location .fs-arrow::after {
    font-size: 0.8em;
    content: "\E801";
}
.filters__location .fs-dropdown {
    padding: 1.5rem;
    font-size: 1.8rem;
}
.filters__location .fs-option {
    margin: 0.1em 0;
}
.filters__location .fs-option.selected .fs-option-label {
    background: #a8de00;
}
.filters__location .fs-wrap {
    z-index: 4;
}
.filters__selections {
    min-height: calc( 1em + 3rem);
}
.filters__selections .facetwp-selection-value {
    background: #e0e3e6;
    border-radius: 0.2rem;
    text-transform: uppercase;
    padding: 0.5rem 1rem;
    font-weight: 700;
    margin-right: 1rem;
    margin-bottom: 1rem;
    white-space: nowrap;
    display: inline-block;
}
.filters__selections .facetwp-selection-value::after {
    font-family: "fontello" !important;
    font-style: normal !important;
    font-weight: normal !important;
    font-variant: normal !important;
    text-transform: none !important;
        speak: none;
        line-height: 1;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        content: "\E809";
        width: 1.25em;
        height: 1.25em;
        border-radius: 1em;
        background: #fff;
        display: inline-block;
        text-align: center;
        margin-left: 2rem;
        padding-top: 0.3rem;
        position: relative;
        top: -0.2rem; }
    .filters__selections .facetwp-selections ul {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
    .filters__selections .facetwp-selections li {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  .filters__toggle {
    text-transform: uppercase;
    letter-spacing: 0.06em;
    position: absolute; }
    .filters__toggle i {
      color: #a8de00;
      font-size: 2em;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      .filters__toggle i > *, .filters__toggle i::before {
        -webkit-box-flex: 1;
            -ms-flex: 1 1;
                flex: 1 1; }
  .filters__wrapper {
    position: relative; }

.page-template-projects .facetwp-load-more {
  opacity: 0;
  visibility: hidden; }

.page-template-latest .facetwp-facet-search,
.page-template-projects .facetwp-facet-search {
  display: none; }

@media (max-width: 767.98px) {
  .filters .facetwp-selections li:not([data-facet=proximity]) {
    display: none; }
  .filters .fs-wrap:focus {
    outline: none; }
    .filters .fs-wrap:focus .fs-label {
      outline: 1px black dotted; }
  .filters__controls {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
    .filters__controls .facetwp-facet {
      opacity: 1 !important; }
      .filters__controls .facetwp-facet-search {
        -webkit-box-ordinal-group: 0;
            -ms-flex-order: -1;
                order: -1; }
      .filters__controls .facetwp-facet:not(:first-child) .fs-open {
        border-top: solid 1px #a8de00; }
      .filters__controls .facetwp-facet:first-child {
        margin-top: 0.5rem; }
    .filters__controls .facetwp-sort-select {
      width: 100%;
      max-width: unset !important; }
    .filters__controls .facetwp-sort, .filters__controls .fs-wrap {
      width: 100%;
      padding: 1rem 0; }
    .filters__controls .fs-arrow {
      margin-left: auto; }
    .filters__controls .fs-checkbox i {
      border: 2px solid #333333;
      border-radius: 2px;
      -ms-flex-negative: 0;
          flex-shrink: 0;
      margin-top: .7rem;
      margin-right: 1.5rem;
      width: 1.5rem;
      height: 1.5rem;
      display: inline-block; }
    .filters__controls .fs-dropdown {
      position: unset; }
    .filters__controls .fs-open {
      border-bottom: solid 1px #a8de00; }
      .filters__controls .fs-open .fs-arrow::after {
        content: "\E809"; }
    .filters__controls .fs-option.selected .fs-checkbox i::after {
      font-family: "fontello" !important;
      font-style: normal !important;
      font-weight: normal !important;
      font-variant: normal !important;
      text-transform: none !important;
      speak: none;
      line-height: 1;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      content: "\E807";
      position: absolute;
      top: .8rem;
      left: .3rem; }
    .filters__controls:not(.filters__controls--toggle) .facetwp-facet-search {
      width: 100%;
      background: #a8de00; }
    .filters__controls--toggle .facetwp-facet-search {
      margin-bottom: 1rem;
      margin-top: -0.2rem; }
    .filters__controls--toggle:not(.active) > :not(.filters__toggle):not(.facetwp-facet-search) {
      display: none; } }

@media (min-width: 768px) {
  .filters {
    margin-bottom: 1.5rem; }
    .filters .facetwp-sort::after,
    .filters .fs-arrow::after {
      color: #a8de00;
      content: "\E801"; }
    .filters .fs-dropdown {
      padding: 1.5rem; }
    .filters .fs-option {
      margin: 0.1em 0; }
      .filters .fs-option.selected .fs-option-label {
        background: #a8de00; }
    .filters .fs-wrap {
      position: relative; }
    .filters .fs-dropdown {
      min-width: 100%;
      white-space: nowrap; }
    .filters__controls {
      padding-right: calc(1em + 5rem); }
      .filters__controls::before {
        margin-left: -1.5rem;
        content: ''; }
      .filters__controls .facetwp-facet {
        -webkit-box-flex: 0;
            -ms-flex: 0 1 auto;
                flex: 0 1 auto;
        min-width: 0; }
        .filters__controls .facetwp-facet-search {
          position: absolute;
          top: 50%;
          -webkit-transform: translateY(-50%);
                  transform: translateY(-50%); }
      .filters__controls .facetwp-sort {
        padding-left: 1.5rem; }
      .filters__controls .facetwp-sort-select--max-width {
        max-width: 5em; }
      .filters__controls .facetwp-sort-select, .filters__controls .fs-label {
        text-transform: uppercase;
        font-size: 1.6rem;
        letter-spacing: 0.06em; }
      .filters__controls .fs-wrap {
        max-width: 100%;
        padding-left: 1.5rem;
        padding-right: 3rem;
        position: relative; }
      .filters__controls .fs-dropdown {
        left: 0; }
    .filters__location {
      font-size: 4rem; }
      .filters__location .fs-arrow {
        color: unset; }
    .filters .filters__toggle {
      display: none; } }

@media (min-width: 1200px) {
  .filters__controls .facetwp-facet:not(:last-child) {
    margin-right: 2rem; } }

/* Ensure fs-wrap has proper positioning for z-index to work */
.fs-wrap {
  position: relative;
  z-index: 4; /* Adjust z-index as needed */
}


.fs-hidden {
   display: none;
}

/* Hide the counts next to FacetWP filter items */
.facetwp-counter {
  display: none;
}

/* =================================================================================
~ Form
================================================================================= */
.form input[type="text"],
.form input[type="email"],
.form input[type="password"],
.form textarea,
.form select {
  background: #fff;
  border: 2px solid #e0e3e6;
  border-radius: 2px;
  color: #333333;
  font-size: 1.8rem;
  padding: 2.25rem 1rem .75rem;
  width: 100%; }

.form textarea {
  height: 20rem; }

.form select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }

.form input[type=checkbox] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }

.form input[type=checkbox]:checked::after {
  top: -0.5rem;
  left: -0.2rem;
  padding-left: 0.3rem; }

.form input[type=checkbox], .form .ginput_container_checkbox label:before {
  border: 2px solid #333333;
  border-radius: 2px;
  content: '';
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-right: 1.5rem;
  width: 1.5rem;
  height: 1.5rem;
  position: relative;
  top: 0.1rem; }

.form input[type=checkbox]:checked:after, .form .ginput_container_checkbox input:checked + label:after {
  font-family: "fontello" !important;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  speak: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\E807";
  position: absolute; }

.form .ginput_container_checkbox input:focus + label::before {
  outline: auto 5px;
  outline-color: #6797ef;
  outline-color: -webkit-focus-ring-color; }

.form .ginput_container_textarea {
  position: relative; }
  .form .ginput_container_textarea:before {
    background: #fff;
    content: '';
    position: absolute;
    top: 2px;
    left: 2px;
    width: calc( 100% - 4px);
    height: 3rem; }

.form .ginput_container_select {
  position: relative; }
  .form .ginput_container_select:after {
    font-family: "fontello" !important;
    font-style: normal !important;
    font-weight: normal !important;
    font-variant: normal !important;
    text-transform: none !important;
    speak: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "\E801";
    font-size: 2.6rem;
    position: absolute;
    top: 2rem;
    right: 2rem; }

.form .ginput_container_checkbox input {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0; }

.form .ginput_container_checkbox li {
  padding-right: 2rem; }

.form .ginput_container_checkbox label {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  font-size: 1.8rem;
  position: relative;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  cursor: pointer; }

.form .ginput_container_checkbox input:checked + label:after {
  top: .5rem;
  left: .3rem; }

.form .gform_fields {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }

.form .gfield {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  margin-bottom: 2rem;
  padding-left: 2rem;
  position: relative; }
  .form .gfield--fileupload {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-left: 0; }
    .form .gfield--fileupload input {
      display: none; }
    .form .gfield--fileupload .gfield_label {
      margin-bottom: 0;
      margin-right: 2rem; }
    .form .gfield--fileupload [id^=gform_preview_]:empty::after {
      content: 'No file selected'; }
  .form .gfield--floating-label {
    padding-left: 0; }
    .form .gfield--floating-label .gfield_label {
      font-size: 1.8rem;
      font-weight: 400;
      margin-bottom: 0;
      position: absolute;
      top: 1.7rem;
      left: 2.2rem;
      -webkit-transition: top 200ms ease-in-out, left 200ms ease-in-out, font-size 200ms ease-in-out, font-weight 200ms ease-in-out;
      transition: top 200ms ease-in-out, left 200ms ease-in-out, font-size 200ms ease-in-out, font-weight 200ms ease-in-out;
      z-index: 980; }
  
.form .gfield--active .gfield_label#input_12_19-ts-label {
  font-size: 1.8rem;
  font-weight: 400;
  margin-bottom: 0;
  position: absolute;
  top: 1.7rem;
  left: 2.2rem;
  -webkit-transition: top 200ms ease-in-out, left 200ms ease-in-out, font-size 200ms ease-in-out, font-weight 200ms ease-in-out;
  transition: top 200ms ease-in-out, left 200ms ease-in-out, font-size 200ms ease-in-out, font-weight 200ms ease-in-out;
  z-index: 980;
}

.form .gfield--active .gfield_label {
    font-size: 1.2rem;
    font-weight: 700;
    left: 1.2rem;
    top: .75rem; }

.form .gfield_checkbox {
  display: grid; }
  @media (min-width: 768px) {
    .form .gfield_checkbox {
      grid-template-columns: repeat(3, 1fr); } }

.form .gfield_label {
  color: #333333;
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 1rem; }

.form .gform_heading {
  font-size: 3.4rem;
  font-weight: 700;
  margin-bottom: 5rem; }

.form .validation_error {
  color: #dc3545;
  margin-bottom: 2rem; }

.form .validation_message {
  color: #dc3545; }

.form .gfield:not(.gfield--custom_message) .validation_message {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0; }

.form .gfield_error input[type="text"],
.form .gfield_error input[type="email"],
.form .gfield_error input[type="password"],
.form .gfield_error textarea,
.form .gfield_error select {
  border-color: #dc3545; }

.form .gform_hidden {
  display: none; }



.form .ginput_preview {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.form .gform_delete {
  margin-left: 1rem;
  color: #a8de00;
  border-radius: 2em;
  border: solid 1px #a8de00;
  width: 1em;
  height: 1em;
  cursor: pointer;
  margin-top: 0.4rem;
  text-align: center;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto; }

@media (max-width: 767.98px) {
  .form .gf_manufacturers {
    border-radius: 2px;
    border: 2px solid #e0e3e6;
    max-height: 200px;
    overflow: scroll;
    padding-top: 2rem;
    padding-bottom: 2rem; } }

@media (min-width: 768px) {
  .form .gf_left_half,
  .form .gf_right_half {
    -ms-flex-preferred-size: calc( 50% - 1rem);
        flex-basis: calc( 50% - 1rem); }
  .form .gf_left_third,
  .form .gf_middle_third,
  .form .gf_right_third {
    -ms-flex-preferred-size: calc( 33.3% - 1rem);
        flex-basis: calc( 33.3% - 1rem); }
  \--search {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    border-radius: 10rem;
    padding: 0.5rem 1rem; }
    \--search__input {
      background: transparent;
      border-style: none;
      color: #fff;
      width: 0;
      margin: 0; }
    \--search, \--search__input {
      -webkit-transition: width 150ms linear;
      transition: width 150ms linear; }
    \--search__submit {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      \--search__submit > *, \--search__submit::before {
        -webkit-box-flex: 1;
            -ms-flex: 1 1;
                flex: 1 1; }
      \--search__submit.icon-::before {
        content: "\E803"; }
    \--search--active {
      background: #a8de00; }
    \--search--active \--search__input {
      width: 200px;
      margin-left: 1.5rem;
      margin-right: 1rem; } }

/* =================================================================================
~ Grid
================================================================================= */
.grid {
  display: grid;
  grid-gap: 4rem; }
  .grid--two-columns {
    grid-template-columns: repeat(2, 1fr); }
  .grid--three-columns {
    grid-template-columns: repeat(3, 1fr); }
  .grid--four-columns {
    grid-template-columns: repeat(4, 1fr); }

.hero--project {
  position: relative; }
  .hero--project .hero__link {
    display: block; }
    .hero--project .hero__link:hover .hero__title span::after {
      width: 100%; }
  .hero--project .hero__title {
    background: #fff;
    position: absolute;
    bottom: 0;
    right: 0;
    padding: 1.5rem 2em 0.5rem 1.5rem;
    min-width: 25%;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 1.4rem; }
    .hero--project .hero__title .icon {
      font-size: 1.5em;
      position: absolute;
      right: 0.5rem;
      top: calc(50% + 0.5rem);
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%); }
    .hero--project .hero__title span {
      position: relative;
      padding-bottom: 0.4rem;
      display: inline-block; }
      .hero--project .hero__title span::after {
        position: absolute;
        content: '';
        display: block;
        bottom: 0;
        right: 0;
        width: 0;
        border-bottom: solid 2px #a8de00;
        -webkit-transition: width 150ms linear;
        transition: width 150ms linear; }
      .hero--project .hero__title span:hover::after {
        width: 100%; }
    @media (min-width: 768px) {
      .hero--project .hero__title {
        font-size: 1.6rem; } }

.hero + .content .page-header {
  margin-top: 5rem; }

/* =================================================================================
~ Menu
================================================================================= */
.menu .sub-menu {
  display: none;
  padding-left: 2rem; }
  @media (min-width: 992px) {
    .menu .sub-menu {
      background: #fff;
      margin-left: -2rem;
      padding: 0 2rem 1rem;
      position: absolute;
      z-index: 999; } }

.menu--header .menu-item.menu-item-has-children {
  margin-right: 3rem; }

.menu .menu-item {
  position: relative;
  white-space: nowrap; }
  .menu .menu-item.sub-menu-opened > .sub-menu {
    display: block; }
  .menu .menu-item.sub-menu-opened::after {
    display: inline-block;
    padding-left: 0;
    padding-right: 1rem;
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg); }
  .menu .menu-item-has-children::after {
    content: "\E801";
    font-size: 2rem;
    padding-left: 1rem;
    vertical-align: middle;
    color: #a8de00;
    font-family: "fontello" !important;
    font-style: normal !important;
    font-weight: normal !important;
    font-variant: normal !important;
    text-transform: none !important;
    speak: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

   @media (max-width: 991.98px) {
  .menu .menu-item-has-children::after {
    position: absolute;
    right: 10px; /* was 0 — this moves it left */
    top: 0;
  }
}

.menu--social {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .menu--social i {
    font-size: 3rem; }
  .menu--social .menu-item {
    margin-right: 1rem;
    margin-bottom: 0.2rem; }
    .menu--social .menu-item:hover {
      color: #a8de00; }

.menu--footer {
  font-size: 1.6rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-column-gap: 3rem;
  grid-row-gap: 1rem;
  -ms-flex-line-pack: justify;
      align-content: space-between; }
  .menu--footer .menu-item a {
    position: relative;
    padding-bottom: 0.4rem;
    display: inline-block;
    padding-bottom: 0; }
    .menu--footer .menu-item a::after {
      position: absolute;
      content: '';
      display: block;
      bottom: 0;
      right: 0;
      width: 0;
      border-bottom: solid 2px #a8de00;
      -webkit-transition: width 150ms linear;
      transition: width 150ms linear; }
    .menu--footer .menu-item a:hover::after {
      width: 100%; }
    .menu--footer .menu-item a::after {
      bottom: -2px; }
    .menu--footer .menu-item a:hover {
      text-shadow: 1px 0 0 #333333; }
  .menu--footer .current-menu-item a {
    text-shadow: 1px 0 0 #333333; }
    .menu--footer .current-menu-item a::after {
      width: 100%; }

.menu--header .menu-item {
  margin: 1rem 0; }

@media (min-width: 992px) {
  .menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .menu-item:last-child {
      margin-right: 0; }
    .menu--footer {
      display: grid; }
    .menu--header {
      -webkit-box-align: end;
          -ms-flex-align: end;
              align-items: flex-end; }
      .menu--header .menu-item {
        margin: 0;
        margin-right: 4rem; }
        .menu--header .menu-item a {
          position: relative;
          padding-bottom: 0.4rem;
          display: inline-block; }
          .menu--header .menu-item a::after {
            position: absolute;
            content: '';
            display: block;
            bottom: 0;
            right: 0;
            width: 0;
           
            -webkit-transition: width 150ms linear;
            transition: width 150ms linear; }
          .menu--header .menu-item a:hover::after {
            width: 100%; }
      .menu--header .current-menu-item a, .menu--header a:hover {
        text-shadow: 1px 0 0 #333333; }
      .menu--header .current-menu-item > a::after,
      .menu--header .current-menu-item > a:hover::after {
        width: 100%; } }

.modal {
  cursor: pointer; }
  .modal__inner {
    max-width: 100%;
    max-height: 100%;
    cursor: default; }
  .modal__scroll {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    overflow-y: auto; }
  .modal__toggle {
    z-index: 1;
    cursor: pointer; }
  .modal--active {
    z-index: 100;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.8); }
    .modal--active .modal__inner {
      position: fixed;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%); }
  .modal:not(.modal--active) {
    display: none; }

.resource {
  font-size: 1.2em;
  word-break: break-all;
  margin-bottom: 3rem;
  width: 100%; }
  .resource:nth-child(odd) {
    margin-right: 1em; }
  .resource__icon {
    font-size: 6rem;
    color: #a8de00;
    margin-right: 3rem; }
  .resource__link {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }

.resources {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }

@media (min-width: 576px) {
  .resource {
    width: calc( 50% - 0.5em); } }

/* =================================================================================
~ Search Form
================================================================================= */
.search-form {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  border-radius: 0.9em;
  max-width: 100%;
  -webkit-transition: width 250ms linear, background 100ms linear 250ms;
  transition: width 250ms linear, background 100ms linear 250ms; }
  .search-form__input, .search-form input {
    background: transparent;
    border-style: none;
    text-align: right;
    width: 100%;
    margin: 0.5rem 0;
    min-width: 0; }
  .search-form__submit {
    padding: 0.5rem 1rem;
    cursor: pointer;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .search-form__submit > *, .search-form__submit::before {
      -webkit-box-flex: 1;
          -ms-flex: 1 1;
              flex: 1 1; }
    .search-form__submit::before {
      font-family: "fontello" !important;
      font-style: normal !important;
      font-weight: normal !important;
      font-variant: normal !important;
      text-transform: none !important;
      speak: none;
      line-height: 1;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      content: "\E803"; }
  .search-form:not(.search-form--active) {
    width: calc(1em + 2rem); }
    .search-form:not(.search-form--active) .search-form__input {
      width: 0; }
  .search-form--active {
    background: #a8de00;
    -webkit-transition: width 250ms linear, background 100ms linear;
    transition: width 250ms linear, background 100ms linear; }
    .search-form--active .search-form__input {
      margin: 0.5rem 1rem; }

.slider {
  position: relative; }
  .slider__indicators {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    position: relative; }
    .slider__indicators::before {
      content: '';
      position: absolute;
      width: 100%;
      height: 0.6rem;
      padding: 0.2rem 0;
      background: #a8de00;
      background-clip: content-box; }
  .slider__indicators-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .slider__indicators-container > *:not(:last-child) {
      margin-right: 1rem; }
  .slider__indicator {
    width: 2rem;
    height: 0.6rem;
    padding: 0.2rem 0;
    z-index: 1;
    cursor: pointer; }
  .slider__current {
    cursor: pointer;
    position: absolute;
    width: 2rem;
    height: 0.6rem;
    background: #a8de00;
    display: block;
    -webkit-transition: left 500ms;
    transition: left 500ms;
    left: 0; }
  .slider__link {
    text-transform: uppercase;
    font-weight: 700;
    font-size: 1.6rem; }
    .slider__link i {
      vertical-align: text-top;
      margin-left: 2.5rem;
      font-size: 2.5rem;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      display: -webkit-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex; }
      .slider__link i > *, .slider__link i::before {
        -webkit-box-flex: 1;
            -ms-flex: 1 1;
                flex: 1 1; }
  .slider__links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-transition: all 200ms ease-out 0s;
    transition: all 200ms ease-out 0s; }
  .slider__links-container {
    margin-top: 1rem;
    height: 2.5rem;
    overflow: hidden; }
  .slider__controls > * {
    background: #fff; }
  .slider__index {
    font-weight: 700;
    font-size: 1.4rem; }
  .slider__length {
    font-weight: 700;
    font-size: 1.2rem; }
  .slider__arrows {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .slider__slide {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover; }
  .slider__prev, .slider__next {
    cursor: pointer;
    display: table; }
    .slider__prev > *, .slider__prev::before, .slider__next > *, .slider__next::before {
      display: table-cell;
      vertical-align: middle; }
    .slider__prev::before, .slider__next::before {
      -webkit-transform: rotate(-90deg);
              transform: rotate(-90deg);
      -webkit-text-stroke-width: 1px;
      -webkit-text-stroke-color: white; }
  .slider__prev {
    position: relative; }

@media (max-width: 991.98px) {
  .slider__controls {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 1rem 0; }
  .slider__links-container {
     }@media (max-width: 991.98px) {
  body.page-id-4406 .slider__link {
    font-size: 0.5rem !important;
overflow: hidden;
  }
}
  .slider__prev {
    padding: 0 0.7rem 0 0.6rem; }
  .slider__prev, .slider__next {
    padding: 0 0.6rem; }
  .slider__slides {
    margin-left: -2rem;
    margin-right: -2rem; } }

@media (max-width: 1199.98px) {
  .slider__text {
    font-size: 4.5rem; }
  .slider__description {
    font-size: 3rem;
    color: white;
  }
   }

@media (min-width: 992px) {
  .slider {
    margin-left: -6rem;
    margin-right: -6rem; }
    .slider__index {
      font-size: 2rem; }
    .slider__length {
      font-size: 1.4rem; }
    .slider__arrows {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      font-size: 2.5rem;
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      width: 6rem; }
    .slider__prev {
      border-bottom: solid 1px #a8de00; }
    .slider__prev, .slider__next {
      padding: 0.6rem; }
    .slider__slides {
      width: calc( 100% - 6rem); }
    .slider__navigation {
      padding: 1.5rem 2rem 0.5rem;
      position: absolute;
      bottom: 0;
      right: 6rem; }
    .slider__text {
      position: absolute;
      max-width: 48%;
      bottom: 6rem;
      left: 6rem;
      color: #fff; }
      .slider__text.color-light {
        color: #fff; }
      .slider__heading {
        font-size: 2rem;
        text-transform: uppercase;
        font-weight: 500;
        line-height: 1.5;
        color: white;
      }
      .slider__description {
        font-size: 3rem;
        line-height: 1.6;
        color: white;
      } }

/* =======================================================================================
~ Social Sharing
======================================================================================= */
.social-share {
  position: relative;
  display: inline-block; }
  .social-share__btn {
    color: #333333;
    cursor: pointer; }
  .social-share__btns {
    font-size: 3rem; }
    .social-share__btns:not(.active) {
      visibility: hidden; }
  .social-share .bubble {
    white-space: nowrap;
    line-height: 1;
    min-width: 100%; }
    .social-share .bubble__content {
      padding: 0.5em;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: distribute;
          justify-content: space-around; }
  .social-share__btn i {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .social-share__btn i > *, .social-share__btn i::before {
      -webkit-box-flex: 1;
          -ms-flex: 1 1;
              flex: 1 1; }

.video {
  position: relative; }
  .video i {
    color: transparent;
    -webkit-text-stroke: 2px #fff;
    z-index: 1;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    font-size: 5rem; }
  .video .modal__inner {
    max-width: 90vw;
    background: #000; }

@media (min-width: 768px) {
  .video i {
    font-size: 10rem; }
  .video .modal__inner {
    max-width: 70vw; } }

/* =======================================================================================
~ WYSIWYG - intended to be used on any element whose content is populated by a CMS WYSIWYG
======================================================================================= */
.wysiwyg {
  line-height: 1.6; }
  .wysiwyg::after {
    display: block;
    clear: both;
    content: ''; }
  .wysiwyg a:not(.btn) {
    text-decoration: underline; }
    .wysiwyg a:not(.btn):hover {
      color: #a8de00; }
  .wysiwyg ul:not(.gform_fields):not(.gfield_radio):not(.gfield_checkbox),
  .wysiwyg ol {
    list-style: none;
    padding-left: 2rem; }
    .wysiwyg ul:not(.gform_fields):not(.gfield_radio):not(.gfield_checkbox) li,
    .wysiwyg ol li {
      padding: 0.5rem 0; }
    .wysiwyg ul:not(.gform_fields):not(.gfield_radio):not(.gfield_checkbox) ul, .wysiwyg ul:not(.gform_fields):not(.gfield_radio):not(.gfield_checkbox) ol,
    .wysiwyg ol ul,
    .wysiwyg ol ol {
      margin-bottom: 0; }
  .wysiwyg ol {
    list-style: none;
    counter-reset: ol-item; }
    .wysiwyg ol li {
      counter-increment: ol-item; }
      .wysiwyg ol li::before {
        content: counter(ol-item) " ";
        font-weight: 700;
        margin-right: 1rem;
        margin-left: -2rem; }
  .wysiwyg ul:not(.gform_fields):not(.gfield_radio):not(.gfield_checkbox) {
    list-style: disc outside; }
  .wysiwyg h1, .wysiwyg h2, .wysiwyg h3, .wysiwyg h4, .wysiwyg h5, .wysiwyg h6 {
    font-weight: bold; }
  .wysiwyg h1 {
    font-size: 3.6rem; }
  .wysiwyg h2 {
    font-size: 4.05rem; }
  .wysiwyg h3 {
    font-size: 3.6rem; }
  .wysiwyg h4 {
    font-size: 3.15rem; }
  .wysiwyg h5 {
    font-size: 2.7rem; }
  .wysiwyg h5 {
    font-size: 2.25rem; }
  .wysiwyg h6 {
    font-size: 1.8rem; }
  .wysiwyg blockquote {
    font-weight: 300; }
    .wysiwyg blockquote cite {
      font-size: 1.4rem;
      font-style: normal; }
      .wysiwyg blockquote cite::before {
        content: '\2014   '; }
    .wysiwyg blockquote q {
      font-size: 2.4rem;
      line-height: 1.5;
      display: inline; }
      .wysiwyg blockquote q::after {
        content: '\201D'; }
      .wysiwyg blockquote q::before {
        content: "\201C";
        margin-left: -1em; }
  .wysiwyg img, .wysiwyg figure {
    max-width: 100%; }
  .wysiwyg > * {
    margin-bottom: 2.5rem; }
    .wysiwyg > *:last-child {
      margin-bottom: 0; }

@media (max-width: 575.98px) {
  .wysiwyg > img,
  .wysiwyg > .wp-caption {
    width: 100% !important;
    height: auto !important; } }

@media (min-width: 992px) {
  .wysiwyg {
    max-width: 80%; }
    .wysiwyg blockquote {
      margin-right: -20%; }
      .wysiwyg blockquote q {
        font-size: 4rem; }
      .wysiwyg blockquote cite {
        font-size: 1.4rem; }
    .wysiwyg ul:not(.gform_fields):not(.gfield_radio):not(.gfield_checkbox),
    .wysiwyg ol {
      margin-left: 8%;
      margin-right: 24%; }
    .wysiwyg img.alignright {
      margin-right: -20%;
      max-width: 60%;
      clear: both; }
    .wysiwyg img.alignleft {
      max-width: 60%;
      clear: both; } }

/* =======================================================================================
~ Gmap - Google Maps styling
======================================================================================= */
.gmap {
  height: 600px; }
  .gmap * {
    -webkit-box-sizing: unset;
            box-sizing: unset; }
  .gmap img[src$='iw_close.gif'] {
    opacity: 0;
    top: 9px !important;
    right: 9px !important; }
  .gmap [class*='_ibani']::before {
    font-family: "fontello" !important;
    font-style: normal !important;
    font-weight: normal !important;
    font-variant: normal !important;
    text-transform: none !important;
    speak: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "\E805";
    position: absolute;
    z-index: 100;
    top: 6px;
    right: 10px;
    font-size: 2rem; }
  .gmap__bubble {
    white-space: nowrap;
    line-height: 1.5;
    font-family: "Noto Sans HK", "Segoe UI", "Roboto", "Helvetica Neue", Arial, sans-serif;
    height: 5em;
    width: 10em;
    font-size: 1.6rem; }
    @media (min-width: 576px) {
      .gmap__bubble {
        font-size: 2.2rem; } }

@media (min-width: 992px) {
  .overlay.js-overlay {
    margin-bottom: var(--overlay-bottom);
    top: var(--overlay-top);
    z-index: 99; }
  .overlay.js-background .project__overlay {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0; }
  .overlay__background {
    left: 0;
    right: 0;
    top: var(--overlay-top); }
    .overlay__background.js-overlay {
      position: fixed; }
  body.js-background {
    padding-top: var(--overlay-top); }
  header.overlay__background {
    z-index: 999; }
  footer.overlay__background {
    z-index: 999; } }

/*=======================================================================================
 * Maintenance
 *=====================================================================================*/
.maintenance {
  margin-top: 5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  @media (max-width: 767.98px) {
    .maintenance {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }
  @media (max-width: 767.98px) {
    .maintenance > :not(:last-child) {
      margin-bottom: 3rem; } }
  @media (min-width: 768px) {
    .maintenance > :not(:last-child) {
      margin-right: 4rem; } }
  .maintenance__icon {
    font-size: 15rem;
    color: #a8de00;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex; }
    @media (min-width: 768px) {
      .maintenance__icon {
        font-size: 20rem; } }

/* =================================================================================
~ Manufacturer
================================================================================= */
.manufacturer {
  padding: 2rem 3rem;
  background-color: #fff;
  border: solid 1px #e0e3e6; }
  .manufacturer__info {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 2;
    width: 100%;
    padding: 2.5rem;
    background-color: #a8de00;
    font-size: 1.6rem;
    opacity: 0;
    -webkit-transition: opacity linear 300ms;
    transition: opacity linear 300ms; }
  .manufacturer__link {
    position: relative;
    -webkit-transition: left linear 150ms;
    transition: left linear 150ms;
    left: 0; }
    .manufacturer__link:hover {
      left: 1rem; }
    .manufacturer__link a {
      display: inline-block;
      padding-left: 1em;
      position: relative; }
      .manufacturer__link a::before {
        content: "\E801";
        font-family: 'fontello';
        -webkit-transform: rotate(-90deg);
                transform: rotate(-90deg);
        position: absolute;
        left: 0;
        font-weight: 400; }
  .manufacturer__links {
    font-weight: 700;
    border-top: solid 1px rgba(60, 68, 64, 0.5);
    padding-top: 1rem; }
  .manufacturer__logo {
    cursor: pointer;
    display: block; }
    .manufacturer__logo img {
      width: 100%; }
  .manufacturer__name {
    font-size: 1.8rem;
    margin-bottom: 1rem; }
  .manufacturer__text {
    margin-bottom: 2.5rem; }
  .manufacturer.active .manufacturer__info {
    opacity: 1; }
  .manufacturer:not(.active) .manufacturer__info {
    pointer-events: none; }
    .manufacturer:not(.active) .manufacturer__info > * {
      visibility: hidden; }

/* =================================================================================
~ Post - used for styling posts within the loop ( partials/loop-post.php )
================================================================================= */
.post:last-child {
  margin-bottom: 0; }

.post__byline {
  font-size: .85em;
  margin-bottom: 0.5rem; }

.post__link {
  cursor: pointer;
  display: block; }
  .post__link:hover .post__title span::after {
    width: 100%; }

.post__thumbnail img {
  -o-object-fit: cover;
     object-fit: cover; }

.post__thumbnail ~ .post__title {
  margin-top: 1rem; }

.post__title {
  font-weight: 700;
  display: inline-block;
  width: 100%;
  padding-right: 1.5em;
  position: relative; }
  .post__title::after {
    font-family: "fontello" !important;
    font-style: normal !important;
    font-weight: normal !important;
    font-variant: normal !important;
    text-transform: none !important;
    speak: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "\E800";
    font-size: 1.4em;
    position: absolute;
    top: 2px;
    right: 0; }
  .post__title span {
    position: relative;
    padding-bottom: 0.4rem;
    display: inline-block; }
    .post__title span::after {
      position: absolute;
      content: '';
      display: block;
      bottom: 0;
      right: 0;
      width: 0;
      border-bottom: solid 2px #a8de00;
      -webkit-transition: width 150ms linear;
      transition: width 150ms linear; }
    .post__title span:hover::after {
      width: 100%; }

.post__type {
  text-transform: uppercase;
  letter-spacing: 0.06em;
  padding: 0.4rem 1rem;
  border-radius: 0.2rem;
  background: #a8de00;
  font-weight: 700;
  font-size: 1.6rem;
  display: inline-block; }

.post--video .post__title::after {
  content: '\25B5';
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg); }

.posts {
  margin-top: 3rem;
  display: grid;
  grid-template-columns: 1fr;
  grid-column-gap: 2rem;
  grid-row-gap: 2rem; }

@media (min-width: 576px) {
  .posts {
    grid-template-columns: repeat(3, 1fr); } }

.position {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 1.5rem;
  background: #3c4440;
  color: #fff; }
  .position .wysiwyg {
    max-width: unset; }
  .position__copy {
    overflow: hidden;
    margin-top: 1rem;
    margin-bottom: 1rem; }
  .position__title {
    color: #a8de00;
    -ms-flex-item-align: stretch;
        align-self: stretch; }
  .position__toggle {
    float: right;
    color: #fff;
    margin: -1rem -0.5rem 0 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .position__toggle > *, .position__toggle::before {
      -webkit-box-flex: 1;
          -ms-flex: 1 1;
              flex: 1 1; }
  .position .btn, .position .form .gfield--fileupload .gfield_label, .form .gfield--fileupload .position .gfield_label {
    margin-top: auto; }

.positions {
  grid-template-columns: 1fr; }

@media (min-width: 576px) {
  .positions {
    grid-template-columns: repeat(2, 1fr); } }

@media (min-width: 768px) {
  .position {
    padding: 3rem; }
    .position__copy {
      margin-top: 2rem;
      margin-bottom: 2rem; }
    .position__toggle {
      margin: -1.7rem -1rem 0 0; } }

@media (min-width: 1440px) {
  .positions {
    grid-template-columns: repeat(3, 1fr); } }

/* =================================================================================
~ Project
================================================================================= */
.project {
  position: relative; }
  .project__architects li, .project__links li {
    display: inline; }
    .project__architects li:not(:last-child)::after, .project__links li:not(:last-child)::after {
      content: ', '; }
  .project__architects a, .project__links a {
    text-decoration: underline; }
  .project__buttons > :not(:last-child) {
    margin-right: 2rem;
    margin-bottom: 1.5rem; }
  .project__buttons .social-share__toggle {
    color: inherit; }
  .project__details {
    margin-top: 2rem;
    margin-bottom: 2rem;
    table-layout: fixed;
    width: 100%; }
    .project__details th {
      font-weight: 700; }
    .project__details tr:not(:last-child) {
      border-bottom: solid 1px #a8de00; }
  .project__gallery-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .project__gallery-row:last-child {
      margin-bottom: -2rem; }
  .project__gallery-image {
    margin-bottom: 2rem;
    position: relative;
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
    background-color: #798592; }
    .project__gallery-image img {
      -o-object-fit: cover;
         object-fit: cover;
      width: 100%; }
    .project__gallery-image i {
      position: absolute;
      top: 0;
      right: 0;
      padding: 0.9rem;
      color: #fff;
      z-index: 1; }
    .project__gallery-image:not(:hover) .project__gallery-info {
      display: none; }
    .project__gallery-image:hover img {
      mix-blend-mode: multiply; }
    @supports (-ms-ime-align: auto) {
      .project__gallery-image:hover::after {
        display: block; } }
    @supports (-ms-ime-align: auto) {
      .project__gallery-image::after {
        content: '';
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        background-color: rgba(121, 133, 146, 0.75);
        display: none; } }
  .project__gallery-info {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 1.5rem 2rem;
    z-index: 1;
    font-size: 1.6rem;
    color: #fff; }
    .project__gallery-info > :not(:last-child) {
      margin-right: 1em; }
  .project__gallery-credit {
    text-align: right;
    margin-left: auto; }
  .project__hero {
    position: relative; }
  .project__material {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 2.5rem; }
  .project__material-labels {
    display: none; }
  .project__material-properties {
    margin-left: 2rem; }
  .project__material-label {
    font-weight: 700; }
    .project__material-label--inline {
      display: inline-block;
      margin-right: .5rem; }
  .project__overlay {
    color: #fff;
    background: rgba(60, 68, 64, 0.97);
    padding: 2.5rem; }
    .project__overlay .wysiwyg {
      max-width: 100%; }
  .project__related-projects .projects {
    grid-template-columns: 1fr;
    grid-row-gap: 3rem; }
  .project__related-posts .posts {
    margin-top: 0; }
  .project__subtitle {
    text-transform: uppercase; }
  .project__thumbnail {
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center; }

@media (max-width: 991.98px) {
  .project__copy {
    margin-bottom: 5rem; }
  .project__details th, .project__details td {
    display: block; }
  .project__details tr > :first-child {
    padding-top: 2rem; }
  .project__details tr > :last-child {
    padding-bottom: 2rem; }
  .project__gallery {
    margin-left: -2rem;
    margin-right: -2rem; }
  .project__hero {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
    .project__hero picture {
      -webkit-box-ordinal-group: 0;
          -ms-flex-order: -1;
              order: -1; }
  .project__materials .section__headline {
    margin-bottom: 0; }
  .project__materials .expander__content {
    border-top: solid 1px #a8de00;
    padding-top: 2rem;
    margin-top: 2rem; }
  .project__overlay {
    -webkit-transform: none !important;
            transform: none !important; }
  .project__related-projects {
    border-bottom: solid 1px #a8de00; }
    .project__related-projects .projects {
      margin-bottom: 2.5rem; }
  .project__related-posts {
    margin-top: 2rem; } }

@media (min-width: 540px) {
  .project__related-projects .projects {
    grid-template-columns: repeat(2, 1fr); } }

@media (min-width: 768px) {
  .project__gallery-image:not(:last-child) {
    margin-right: 2rem; }
  .project__gallery-row {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap; } }

@media (min-width: 992px) {
  .project__copy {
    margin-top: 2.5rem;
    margin-bottom: 2.5rem; }
  .project__details th, .project__details td {
    padding: 1.5rem 0; }
  .project__details th {
    width: 30%; }
  .project__material {
    margin-bottom: 1.5rem;
    margin-top: 1.5rem; }
  .project__material-labels {
    border-bottom: 2px solid #a8de00;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-weight: 700;
    padding-bottom: .5rem; }
  .project__material-label {
    -ms-flex-preferred-size: 33%;
        flex-basis: 33%; }
  .project__material-checkbox-container {
    padding-left: 1rem;
    -ms-flex-preferred-size: 5rem;
        flex-basis: 5rem; }
  .project__material-properties {
    margin-left: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%; }
  .project__material-property {
    -ms-flex-preferred-size: 33%;
        flex-basis: 33%; }
  .project__material-label--inline {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0; }
  .project__overlay {
    padding: 4rem;
    position: absolute;
    margin-top: 2rem;
    margin-right: 2rem;
    width: 55%;
    z-index: 1;
    position: relative;
    margin-left: auto; }
  .project__hero .hero__image:not(.js-background) {
    position: fixed; }
  .project__related {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .project__related-projects {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 55%;
            flex: 0 1 55%;
    margin-right: 5%; }
  .project__related-posts {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 40%;
            flex: 0 1 40%; }
    .project__related-posts .posts {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; }
      .project__related-posts .posts li:not(:last-child) {
        margin-bottom: 3rem; } }

.projects {
  display: grid;
  gap: 2rem; }
  .projects .project__link {
    display: block; }
  .projects .project__subtitle {
    display: none; }
  .projects:not([class*=projects--]) .project__title {
    font-weight: 700;
    margin-top: 1rem;
    display: inline-block;
    width: 100%;
    padding-right: 1.5em;
    position: relative; }
    .projects:not([class*=projects--]) .project__title::after {
      font-family: "fontello" !important;
      font-style: normal !important;
      font-weight: normal !important;
      font-variant: normal !important;
      text-transform: none !important;
      speak: none;
      line-height: 1;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      content: "\E800";
      font-size: 1.4em;
      position: absolute;
      top: 0;
      right: 0; }
    .projects:not([class*=projects--]) .project__title span {
      position: relative;
      padding-bottom: 0.4rem;
      display: inline-block; }
      .projects:not([class*=projects--]) .project__title span::after {
        position: absolute;
        content: '';
        display: block;
        bottom: 0;
        right: 0;
        width: 0;
        border-bottom: solid 2px #a8de00;
        -webkit-transition: width 150ms linear;
        transition: width 150ms linear; }
      .projects:not([class*=projects--]) .project__title span:hover::after {
        width: 100%; }
  .projects:not([class*=projects--]) .project__link:hover .project__title span::after {
    width: 100%; }
  .projects--grid {
    display: grid;
    grid-auto-flow: dense;
    grid-template-columns: 1fr; }
    .projects--grid .project {
      position: relative;
      grid-row-end: span 1;
      grid-column-end: span 1;
      -webkit-box-ordinal-group: var(--grid-order);
          -ms-flex-order: var(--grid-order);
              order: var(--grid-order); }
      .projects--grid .project::after {
        content: '';
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        display: block;
        -webkit-transition: background 250ms;
        transition: background 250ms; }
      .projects--grid .project img {
        width: 100%; }
      .projects--grid .project__head {
        color: #fff;
        position: absolute;
        padding: 2rem;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 1;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        -webkit-box-pack: end;
            -ms-flex-pack: end;
                justify-content: flex-end; }
      .projects--grid .project__title {
        word-break: break-word; }
      .projects--grid .project:not(:hover) .project__title {
        font-size: 1em; }
      .projects--grid .project:hover .project__head {
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        color: #3c4440; }
      .projects--grid .project:hover .project__subtitle {
        display: unset; }
      .projects--grid .project:hover::after {
        background: rgba(168, 222, 0, 0.8); }
      .projects--grid .project--1x1:hover .project__title {
        font-size: 2rem; }

@media (min-width: 768px) {
  .projects {
    grid-template-columns: repeat(6, 1fr); }
    .projects--grid .project--1x1--3x3 {
      grid-column-end: span 2;
      grid-row-end: span 2; }
    .projects--grid .project--1x1--2x2 {
      grid-column-end: span 3;
      grid-row-end: span 3; }
    .projects--grid .project--2x2 {
      grid-column-end: span 6;
      grid-row-end: span 6; }
    .projects--grid .project--3x3 {
      grid-column-end: span 6;
      grid-row-end: span 6; } }

@media (min-width: 768px) and (max-width: 1199.98px) {
  .projects--grid .project--3x3 {
    -webkit-box-ordinal-group: NaN;
        -ms-flex-order: calc( var(--grid-order) - 1);
            order: calc( var(--grid-order) - 1); } }

@media (min-width: 1200px) {
  .projects {
    grid-template-columns: repeat(4, 1fr); }
    .projects--grid .project--1x1 {
      grid-column-end: span 1;
      grid-row-end: span 1; }
    .projects--grid .project--2x2 {
      grid-column-end: span 2;
      grid-row-end: span 2; }
    .projects--grid .project--3x3 {
      grid-column-end: span 3;
      grid-row-end: span 3; } }

.search-result {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }
  .search-result:not(:last-child) {
    margin-bottom: 5rem; }
  .search-result__left {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 75%;
            flex: 0 1 75%; }
  .search-result__thumbnail img {
    -o-object-fit: cover;
       object-fit: cover; }
  .search-result__title {
    margin-top: 0.6rem;
    margin-bottom: 0.6rem;
    font-size: 1.8rem; }

@media (max-width: 767.98px) {
  .search-result__thumbnail {
    margin-top: 2rem; } }

@media (min-width: 768px) {
  .search-result {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start; }
    .search-result__thumbnail {
      margin-left: 10%;
      -webkit-box-flex: 0;
          -ms-flex: 0 1 200px;
              flex: 0 1 200px; } }

.team-member .modal .modal__toggle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 3rem;
  position: absolute;
  top: 0.6rem;
  right: 1rem;
  background: #fff; }
  .team-member .modal .modal__toggle > *, .team-member .modal .modal__toggle::before {
    -webkit-box-flex: 1;
        -ms-flex: 1 1;
            flex: 1 1; }

.team-member .modal .team-member__name {
  font-size: 3rem; }

.team-member .modal .team-member__contact, .team-member .modal .team-member__copy, .team-member .modal .team-member__download {
  margin-top: 4.5rem; }

.team-member .modal .team-member__contact-name {
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 1.5rem; }

.team-member .modal .team-member__social {
  margin-top: 1.5rem; }

.team-member .modal .team-member__thumbnail-modal {
  background: none;
  -webkit-box-flex: 0;
      -ms-flex: 0 1 280px;
          flex: 0 1 280px; }
  .team-member .modal .team-member__thumbnail-modal + div {
    -webkit-box-flex: 1;
        -ms-flex: 1 1;
            flex: 1 1; }

.team-member .modal__inner {
  width: 80vw;
  height: 80vh;
  background: #fff; }

.team-member .modal__scroll {
  padding: 3rem; }

.team-member .wysiwyg {
  max-width: unset; }

.team-member__name {
  font-weight: 700; }
  .team-member__name span {
    position: relative;
    padding-bottom: 0.4rem;
    display: inline-block; }
    .team-member__name span::after {
      position: absolute;
      content: '';
      display: block;
      bottom: 0;
      right: 0;
      width: 0;
      border-bottom: solid 2px #a8de00;
      -webkit-transition: width 150ms linear;
      transition: width 150ms linear; }
    .team-member__name span:hover::after {
      width: 100%; }
  .team-member__name i {
    float: right;
    color: #a8de00; }

.team-member__social {
  font-size: 3rem; }
  .team-member__social a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .team-member__social a > *, .team-member__social a::before {
      -webkit-box-flex: 1;
          -ms-flex: 1 1;
              flex: 1 1; }
    .team-member__social a:hover {
      color: #a8de00; }
  .team-member__social li:not(:last-child) {
    margin-right: 1rem; }

.team-member__thumbnail {
  margin-bottom: 0.6rem; }
  .team-member__thumbnail img {
    -o-object-fit: cover;
       object-fit: cover; }
  @supports (-ms-ime-align: auto) {
    .team-member__thumbnail::after {
      content: '';
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      background-color: rgba(168, 222, 0, 0.75);
      display: block; } }

.team-member__img-hover {
  display: none; }

.team-member:hover .team-member__name span::after {
  width: 100%; }

.team-member:hover .team-member__thumbnail {
  background: #a8de00; }
  .team-member:hover .team-member__thumbnail img {
    mix-blend-mode: multiply; }
  @supports (-ms-ime-align: auto) {
    .team-member:hover .team-member__thumbnail::after {
      display: block; } }

.team-member:hover .team-member__img-hover {
  display: block; }
  .team-member:hover .team-member__img-hover ~ picture .team-member__img-default, .team-member:hover .team-member__img-hover ~ .team-member__img-default {
    display: none; }

@media (min-width: 992px) {
  .team-member .modal .modal__toggle {
    top: 2.6rem;
    right: 3rem; }
  .team-member .modal__scroll {
    padding: 7rem; }
  .team-member__thumbnail-modal {
    margin-right: 5%; } }

.team-members {
  grid-template-columns: 1fr; }

@media (min-width: 576px) {
  .team-members {
    grid-template-columns: repeat(4, 1fr); } }

/* =================================================================================
~ Content
================================================================================= */
.content {
  padding-bottom: 2rem; }

@media (min-width: 992px) {
  .content {
    padding-left: 7rem;
    padding-right: 7rem; } }

/* =================================================================================
~ Header
================================================================================= */
.header__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  background: #fff;
  position: relative; }

.header__toggle {
  cursor: pointer;
  font-size: 2.6rem;
  width: 1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .header__toggle > *, .header__toggle::before {
    -webkit-box-flex: 1;
        -ms-flex: 1 1;
            flex: 1 1; }
  .header__toggle::before {
    content: "\F0C9"; }
  .header__toggle.active::before {
    content: "\E805"; }

.header__nav {
  position: relative;
  letter-spacing: 0.05em; }
  @media (min-width: 1200px) {
    .header__nav {
      font-size: 2rem; } }

.header__logo {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 400px;
          flex: 0 1 400px; }
  .header__logo a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .header__logo a > *, .header__logo a::before {
      -webkit-box-flex: 1;
          -ms-flex: 1 1;
              flex: 1 1; }

.header__spacer {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 2em;
          flex: 1 0 2em; }

@media (max-width: 991.98px) {
  .header__nav {
    background: #a8de00;
    display: none;
    padding: 3rem 2rem 5rem;
    position: absolute;
    top: calc( 100% - 1px);
    left: 0;
    width: 100%; }
    .header__nav.active {
      display: block;
      z-index: 999;
      min-height: calc( 100vh - 100%); }
  .header__menu {
    margin-bottom: 6rem; }
  .header__container {
    padding-top: 3rem;
    padding-bottom: 1rem;
    max-width: 95%; }
  .header__logo {
    -ms-flex-negative: 1;
        flex-shrink: 1; }
    .header__logo a {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      .header__logo a > *, .header__logo a::before {
        -webkit-box-flex: 1;
            -ms-flex: 1 1;
                flex: 1 1; }
  .header__spacer {
    width: 1em; }
  .header.active {
    position: fixed;
    height: 100vh;
    width: 100vw;
    top: 0;
    z-index: 999;
    overflow-y: auto; }
    .header.active .header__container {
      background: #a8de00; }
    .header.active .cls-1, .header.active .cls-2 {
      fill: #fff; }
  .header .search-form {
    border-bottom: solid 1px #333333;
    padding: 0 0 0.4rem;
    border-radius: 0;
    width: 100%; }
    .header .search-form .search-form__input {
      width: 100%;
      margin-left: 1rem;
      margin-right: 1rem; }
    .header .search-form__submit::before {
      content: "\E800";
      font-size: 1.2em; }
    .header .search-form::before {
      font-family: "fontello" !important;
      font-style: normal !important;
      font-weight: normal !important;
      font-variant: normal !important;
      text-transform: none !important;
      speak: none;
      line-height: 1;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      content: "\E803";
      -ms-flex-item-align: center;
          align-self: center; }
  body.active {
    overflow-y: hidden; } }

@media (min-width: 992px) {
  .header__container {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-top: 5rem;
    padding-bottom: 2rem; }
  .header__toggle {
    display: none; }
  .header__nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    min-width: 0;
    -webkit-box-flex: 1;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .header__menu {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    margin-right: calc(1em + 1rem); }
    .header__menu .menu {
      -ms-flex-pack: distribute;
          justify-content: space-around; }
      .header__menu .menu-item--hide-desktop {
        display: none; }
  .header .search-form {
    right: 0;
    bottom: 0;
    position: absolute; }
    .header .search-form--active {
      width: 100%; } }

/* Medium devices (tablets, <992px) */
@media (max-width: 991.98px) {
  .header__logo svg {
    max-height: 20px !important;
    width: auto !important;
    height: auto !important;
    display: block;
  }
}

/* Small devices (phones, <576px or <768px) */
@media (max-width: 575.98px) {
  .header__logo svg {
    max-height: 10px !important;
  }
}


/* Small devices (phones, <576px or <768px) */
@media (max-width: 575.98px) {
  .header__logo svg {
    max-height: 10px !important;
  }
}

@media (max-width: 991.98px) {
  .header__container {
    justify-content: flex-start !important;
  }

  .header__logo {
    flex: 0 0 auto !important;
    margin-right: auto !important;
  }

  .header__toggle {
    margin-left: auto !important;
  }
}

@media (max-width: 991.98px) {
  .header__logo {
    flex: 0 1 auto !important;
    overflow: visible !important;
    max-width: 80% !important; /* or 100% if no other item crowds it */
  }

  .header__logo a {
    display: block !important;
    overflow: visible !important;
  }

  .header__logo svg {
    height: 40px !important; /* or your desired height */
    width: auto !important;
    display: block;
  }
}



/* =================================================================================
~ mega menu
================================================================================= */

.header__menu {
  position: relative;
}
/* --- DESKTOP VERSION --- */
@media (min-width: 769px) {
  .mega-menu__column li ul.sub-menu li a::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0; 
    bottom: 0;
    width: 1px;
    background-color: #ddd;
  }
}
/* --- MOBILE VERSION (edit these values) --- */
@media (max-width: 768px) {
  .mega-menu__column li ul.sub-menu li a::before {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 1px;
    background-color: #ddd;
  }
}

@media (max-width: 768px) {
.mega-menu__column li ul.sub-menu li a {
    left: -54px;
}
}



.mega-menu__column li ul.sub-menu li a {
  display: block;
  padding: 3px 57px; /* Keep your existing padding */
  padding-left: 10px; /* Add some left padding to offset the pseudo-element */
  border-bottom: none !important;
  position: relative; /* Needed for absolute positioning of ::before */
}
/* === Mega Menu Base Styles (applies to all screens) === */
.header__menu .mega-menu {
  position: fixed; /* changed from absolute */
  top: 140px; /* adjust to line up under header */
  left: 50vw;
  transform: translateX(-50%);
  background: #fff;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08);
  border-radius: 2rem;
  z-index: 1000;
  transition: opacity 0.3s ease, transform 0.3s ease;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  overflow: visible;
  width: calc(75vw - 20px);
  max-width: 740px;
  padding: 2rem;
}

/* === Desktop Only: hide mega menu until hover === */
@media (min-width: 992px) {
  .header__menu .mega-menu {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
  }

  .header__menu .menu-item:hover .mega-menu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateX(-50%) translateY(0);
  }
}

.header__menu::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  width: 100vw;
  height: 50px;
  background: transparent;
  pointer-events: auto;
  z-index: 50;
}
.header__menu .mega-menu {
  width: calc(75vw - 20px); /* Reduce width from 90vw to 75vw */
  max-width: 740px; /* Reduce max width from 800px to 700px */
  padding: 2rem 2rem; /* Slightly reduce padding */
}


/* Extends hoverable area to prevent menu from closing */
.header__menu .menu-item {
  position: relative;
}

/* === Desktop: hide the default submenu arrow */
@media (min-width: 992px) {
  .header__menu .menu-item::after {
    content: none !important;
  }
}

/* Show menu on hover */
.header__menu .menu-item:hover .mega-menu {
  opacity: 1;
  visibility: visible;
  transform: translate(-50%, 0);
  pointer-events: auto;
}

/* === Footer Area === */
.footer__logo-img {
  width: auto;
  max-width: 95%;
}

.mega-menu__footer {
  grid-column: 1 / -1;
  background: #eeeeee;
  margin-top: -1rem;
  padding: 2.65rem; /* Adjusted padding */
  text-align: center;
  font-size: 1.6rem;
 margin-left: -2rem;
    margin-right: -2rem;
    margin-bottom: -3rem;
  border-bottom-left-radius: 1rem;
  border-bottom-right-radius: 1rem;
}

/* Newsletter Button */
.mega-menu__footer a {
  background: none;
  border: none;
  cursor: pointer;
  display: inline-flex; /* Use flexbox for alignment */
  justify-content: center; /* Center text horizontally */
  align-items: center; /* Center text vertically */
  text-align: center;
  text-transform: uppercase;
  position: relative;
  font-weight: 600; /* Original font-weight */
  text-decoration: none; /* To remove the default underline from the <a> tag */
  color: inherit; /* Initial text color */
  border-radius: 0.3rem; /* Original border-radius */
  transition: color 0.2s ease; /* Smooth color transition */
  line-height: 2.5; /* Ensure line-height doesn't interfere */
    padding: 0.65rem 1.65rem;
    margin-top: 15px;
}

/* Create the border animation effect */
.mega-menu__footer a::before,
.mega-menu__footer a::after {
  display: block;
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 0.3rem; /* Match the original border-radius */
  border-color: #a8de00;
  border-width: 2px;
}

.mega-menu__footer a::before {
  bottom: 0;
  right: 0;
  border-style: solid solid solid none; /* Bottom, Right, Top, Left */
}

.mega-menu__footer a::after {
  top: 0;
  left: 0;
  border-style: none none solid solid; /* Top, Right, Bottom, Left */
}

/* Hover animation */
.mega-menu__footer a:hover {
  color: inherit; /* Keep text color black on hover */
}

.mega-menu__footer a:hover::before {
  -webkit-animation: btn-animate-before 1200ms linear; /* Looping animation */
  animation: btn-animate-before 1200ms linear; /* Looping animation */
}

.mega-menu__footer a:hover::after {
  -webkit-animation: btn-animate-after 1200ms 600ms linear; /* Looping animation with delay */
  animation: btn-animate-after 1200ms 600ms linear ; /* Looping animation with delay */
}

/* Keyframe animations for a continuous loop */
@-webkit-keyframes btn-animate-before {
  0% {
    border-top-color: #a8de00;
    border-left-color: #a8de00;
    border-bottom-color: #a8de00;
    border-right-color: transparent;
  }
  25% {
    border-top-color: transparent;
    border-left-color: #a8de00;
    border-bottom-color: #a8de00;
    border-right-color: #a8de00;
  }
  50% {
    border-top-color: transparent;
    border-left-color: transparent;
    border-bottom-color: #a8de00;
    border-right-color: #a8de00;
  }
  75% {
    border-top-color: #a8de00;
    border-left-color: transparent;
    border-bottom-color: transparent;
    border-right-color: #a8de00;
  }
  100% {
    border-top-color: #a8de00;
    border-left-color: #a8de00;
    border-bottom-color: transparent;
    border-right-color: transparent;
  }
}

@keyframes btn-animate-before {
  0% {
    border-top-color: #a8de00;
    border-left-color: #a8de00;
    border-bottom-color: #a8de00;
    border-right-color: transparent;
  }
  25% {
    border-top-color: transparent;
    border-left-color: #a8de00;
    border-bottom-color: #a8de00;
    border-right-color: #a8de00;
  }
  50% {
    border-top-color: transparent;
    border-left-color: transparent;
    border-bottom-color: #a8de00;
    border-right-color: #a8de00;
  }
  75% {
    border-top-color: #a8de00;
    border-left-color: transparent;
    border-bottom-color: transparent;
    border-right-color: #a8de00;
  }
  100% {
    border-top-color: #a8de00;
    border-left-color: #a8de00;
    border-bottom-color: transparent;
    border-right-color: transparent;
  }
}

@-webkit-keyframes btn-animate-after {
  0% {
    border-top-color: transparent;
    border-left-color: transparent;
    border-bottom-color: #a8de00;
    border-right-color: #a8de00;
  }
  25% {
    border-top-color: #a8de00;
    border-left-color: transparent;
    border-bottom-color: transparent;
    border-right-color: #a8de00;
  }
  50% {
    border-top-color: #a8de00;
    border-left-color: #a8de00;
    border-bottom-color: transparent;
    border-right-color: transparent;
  }
  75% {
    border-top-color: transparent;
    border-left-color: #a8de00;
    border-bottom-color: #a8de00;
    border-right-color: transparent;
  }
  100% {
    border-top-color: transparent;
    border-left-color: transparent;
    border-bottom-color: #a8de00;
    border-right-color: #a8de00;
  }
}

@keyframes btn-animate-after {
  0% {
    border-top-color: transparent;
    border-left-color: transparent;
    border-bottom-color: #a8de00;
    border-right-color: #a8de00;
  }
  25% {
    border-top-color: #a8de00;
    border-left-color: transparent;
    border-bottom-color: transparent;
    border-right-color: #a8de00;
  }
  50% {
    border-top-color: #a8de00;
    border-left-color: #a8de00;
    border-bottom-color: transparent;
    border-right-color: transparent;
  }
  75% {
    border-top-color: transparent;
    border-left-color: #a8de00;
    border-bottom-color: #a8de00;
    border-right-color: transparent;
  }
  100% {
    border-top-color: transparent;
    border-left-color: transparent;
    border-bottom-color: #a8de00;
    border-right-color: #a8de00;
  }
}
/* ======= Add arrow pointing up (triangle) ======= */
.header__menu .mega-menu::before {
  content: "";
  position: absolute;
  top: -11px;
  left: 50%;
  transform: translateX(-50%);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 11.5px solid #fff;
  z-index: 10;
}

.header__menu .mega-menu::after {
  content: "";
  position: absolute;
  top: -14px;
  left: 50%;
  transform: translateX(-50%);
  border-left: 11px solid transparent;
  border-right: 11px solid transparent;
  border-bottom: 12px solid rgba(0, 0, 0, 0.015);
  z-index: 5;
}

/* ======= Sub Menu ======= */

.mega-menu__column li {
  position: relative;
}

.mega-menu__column li ul.sub-menu {
  position: absolute;
  top: -75px;
  padding-left: 33rem;
  width: auto;
  min-width: 700px;
  background-color: white;
  z-index: -3;
  font-size: 93%
}

.mega-menu__column li ul.sub-menu li a {
  display: block;
  padding: 5.0px 60px;
  border-bottom: none !important; 
}
.mega-menu__column li a {
  display: block;
  padding: 10px;
  }

/* ======= description ======= */

.menu-item-description {
  display: block;
  font-size: 0.75em;
  color: #666;
  margin-top: 5px;
  line-height: 1.6;
   
}

.mega-menu__column li a:hover {
  background-color: #f0f0f0;
}

.mega-menu__column li a {
  display: block;
  width: 245px; /* Set a fixed width */
  padding: 10px 0;
  border-bottom: 1px solid lightgray;
}


/* ======= Article Section  ======= */
.mega-menu__article {
  grid-column: 2 / -1;
  display: flex;
  padding-left: 150px;
  padding-top: 10px;
    border-radius: 0px;
  align-items: flex-start; /* Align items to the top */
    z-index: -5
}

.mega-menu__article-content {
  flex-grow: 1;
}

.mega-menu__article-button {
  display: inline-flex;
  align-items: center;
  color: inherit;
  padding: 1.3px 1px;
  border-radius: 4px;
  position: absolute;
  bottom: 46.8px;
    top: 163px;
  right: 10px;
  font-size: 1.7rem;
  text-decoration: none;
  font-weight: 550;
    z-index: 1; /* ensures content sits above pseudo-element */
}

.mega-menu__article-button::before {
  content: "";
  position:  absolute;
  inset: 0; /* shorthand for top/right/bottom/left: 0 */
  z-index: -1; /* put behind the button content */
}

.mega-menu__article-button span {
    text-decoration-color: inherit;
    box-shadow: 0 .5px 0 #a8de00; /* Add a white box-shadow below the text */
 margin-top: 81px;
   
}

.mega-menu__article-button::after {
    content: ""; /* Remove the pseudo-element arrow */
}

.mega-menu__article-button::after {
    content: "→"; /* Add the arrow */
    margin-left: 5px; /* Add some space between text and arrow */
 margin-top: 81px;
 }

.mega-menu__article {
    position: relative; /* Make the article container relative for absolute positioning */
    grid-column: 2 / -1;
    display: flex;
    padding-left: 150px;
    padding-top: 10px;
    border-radius: 0px;
    align-items: flex-start;
}

@media (max-width: 768px) {
    .header__menu.menu-item:hover .mega-menu { /* Target the hovered mega menu */
        width: 98%;
        padding: 1rem;
    }
}

  .mega-menu__article {
    flex-direction: column;
    align-items: flex-start;
  }

 .mega-menu__article img {
    width: 120%; /* Increase width to extend left */
    max-width: none; /* Remove width restrictions */
    height: 80%; /* Maintain aspect ratio */
    position: relative; /* Allows shifting */
    left: -5.2rem; /* Move it towards the left */
     top: 1rem;
}

  .mega-menu__article-content {
    width: 100%; /* Make content full width */
  }

  .mega-menu__article-button {
    margin-top: 1.5rem; /* Adjust button margin */
  }
/*fixes issue with current menu items all going bold on mega menu*/
/* 1 ─ Highlight ONLY the top‑level label that’s active */
.menu--header > li.current-menu-item        > a,
.menu--header > li.current-menu-parent      > a,
.menu--header > li.current-menu-ancestor    > a,
.menu--header > li.current_page_item        > a{
    text-shadow: 1px 0 0 #333;          /* or any style you like */
}

/* 2 ─ Strip the shadow from *every* link inside a mega‑menu … */
.menu--header .mega-menu a{
    text-shadow: none !important;
}

/* 3 ─ … then put it back ONLY on the submenu link for the current page */
.menu--header .mega-menu li.current-menu-item    > a,
.menu--header .mega-menu li.current_page_item    > a{
    text-shadow: 1px 0 0 #333 !important;  /* same highlight, or change colour */
    font-weight: 600;                      /* optional extra emphasis */
}

.menu--header li a {
  cursor: pointer !important;
}

/* --- Prevent bold styling on current menu items --- */
.menu--header li.current-menu-item > a,
.menu--header li.current_page_item > a,
.menu--header li.current-menu-ancestor > a,
.menu--header li.current-menu-parent > a {
  font-weight: normal !important;
  text-shadow: none !important;
}

body {
  overflow-x: hidden;
}


/* Rule for screens between 1300px and 1400px wide */
@media (max-width: 1400px) and (min-width: 1300px) {
  #menu-new-mega-menu li.menu-item.menu-item-type-post_type.menu-item-object-page.menu-item-has-children.sub-menu-opened:hover .mega-menu {
    left: 313.1px !important; /* Adjust this value as needed for this range */
  }
}

/* Rule for screens between 1401px and 1500px wide */
@media (max-width: 1500px) and (min-width: 1401px) {
  #menu-new-mega-menu li.menu-item.menu-item-type-post_type.menu-item-object-page.menu-item-has-children.sub-menu-opened:hover .mega-menu {
    /* You might need a different 'left' value for this slightly wider screen range */
    left: 355.5px !important; /* Adjust this value as needed for this range */
  }
}

}

.mega-menu__article img {
    width: 115% !important;
    max-width: none;
    height: 80%;
    position: relative;
    left: -4.2rem;
    top: 1rem;
}
.mega-menu__article {
    margin-bottom: 0px !important;
}
.mega-menu__article-button {
     top: 150px !important; 
     right: 10px !important;
}
.mega-menu__footer {
margin-top:10px !important;
}
/* mega menu on laptop view */
/* end */

/* ======= Sub Menu for mobile and tab view (24-04-25) ======= */
@media (max-width:991px) and (min-width:750px) {
  .header.active {
    position: fixed;
    width: 98vw !important;
    top: 0;
    height: -webkit-fill-available;
    z-index: 999;
    overflow-y: hidden !important;
    margin: 0px 10px 0px 10px;
}

} 

 @media (max-width:749px) and (min-width:499px) {
  .header.active {
    width: 97vw !important;
}

} 

@media (max-width:991px) {
  .header__search {
	display: none !important;
}
  .header__menu #menu-new-mega-menu .mega-menu {
    position: static;
    display: flex;
    overflow: hidden !important;
    flex-direction: column;
    flex-wrap: nowrap;
  width: 100% !important;
    max-width: 100% !important;
    padding: 2rem 2rem;
  margin-top:10px;
   display:none;
} 
.sub-menu-opened .mega-menu {
  display:block !important;
}
  #menu-new-mega-menu .menu-item.menu-item-has-children {
    margin-right: 10px !important;
}
#menu-new-mega-menu .mega-menu {
    transform: translateX(0%) !important;
}
#menu-new-mega-menu .mega-menu__article img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    position: relative;
    left: 0px !important;
    top: 0px;
}
#menu-new-mega-menu .mega-menu__article {
    padding-left: 0px;
}
#menu-new-mega-menu .mega-menu__footer {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    align-content: center;
  margin-top:10px;
  font-size:10px;
  line-height:25px;
 
}
#menu-new-mega-menu .mega-menu__article-button {
    top: -90px;
}
.header__nav.active {
    display: block;
    z-index: 999;
    min-height: auto;
}
.header.active {
    position: fixed;
    width: 95vw;
    top: 0;
    height: -webkit-fill-available;
    z-index: 999;
    overflow-y: hidden !important;
    margin: 0px 10px 0px 10px;
}
.header__nav {
    background: #fff;
    padding: 0px;
}
.header__menu {
    padding: 20px;
}
.header__menu .mega-menu {
      box-shadow: none !important;
   
}
li.sub-menu-opened {
    background-color: #eeeeee !important;
  padding:10px;
  border-radius:10px;
}
.mega-menu {
  background-color:transparent !important;
  padding:10px !important;
  margin-top:0px !important;
}
.mega-menu__column li a {
    display: inline-block;
    padding: 5px 0;
    border-bottom: none;
}
button.submenu-toggle {
    position: absolute;
    right: 10px;
    top: 10px;
    font-size: 15px;
}
.sub-menu .menu-item-has-children > .sub-menu {
    display: none;
    position: static !important;
    top: 0;
    left: 100%;
    z-index: 1;
}
.header__search {
    padding: 10px 10px 20px 10px;
    background-color: #eeeeee;
    border-radius: 0px 0px 10px 10px;
}
.header__menu {
    margin-bottom: -11px !important;
}
.mega-menu__article {
  display:none;
}
.mega-menu__separator {
  display:none !important;
}
.mega-menu__footer {
  display:none !important;
}
button.submenu-toggle {
    display: block !important;
}
.header.active .header__container {
    background: white !important;
}
.header.active .cls-1, .header.active .cls-2 {
    fill: black !important;
}
.header.active polygon.cls-2 {
    fill: #a8de00 !important;
}
.submenu-toggle .fa-chevron-down {
  transform: rotate(270deg);
  transition: transform 0.5s ease;
}

.sub-menu-opened .submenu-toggle .fa-chevron-down {
  transform: rotate(0deg);
  transition: transform 0.5s ease;
} 
.mega-menu__column li ul.sub-menu {
    position: static !important;
    top: 0px;
    padding-left: 0px !important;
    width: auto;
    min-width: 700px;
    background-color: #eeeeee;
    z-index: -3;
    font-size: 14px;
}
.header__button .btn {
    display: block;
    content: '';
    width: 80%;
    border-radius: 0.3rem;
    border-color: #a8de00;
    border : 2px solid #a8de00;
  Padding: 10px 15px;
  font-size:14px !important;
}

.header__button {
    display: flex !important;
    flex-direction: column;
    align-items: center;
    flex-wrap: nowrap;
    padding: 25px 10px !important;
    background-color: #eeeeee;
    border-radius: 0px 0px 8px 8px !important;
    font-weight: bold;
}
.mega-menu__column li ul.sub-menu li a {
  display: block;
  padding: 4px 90px;
  border-bottom: none !important; 
width: 297px;
}
.header.active {
    position: fixed;
    width: 95vw;
    top: 0;
    height: -webkit-fill-available;
    z-index: 999;
    overflow-y: scroll !important;
    margin: 0px 10px 0px 10px;
}
.menu-item-description {
    font-size: 12px; 
}
.mega-menu {
    padding: 0px !important;
}

}
button.submenu-toggle {
    display: none;
}

@media (max-width: 500px) {
    .header__search {
        display: none;
    }

    .header__button {
        display: block;
    }
}


@media (min-width: 501px) {
    .header__search {
        display: block;
    }

    .header__button {
        display: none;
    }
}
 @media (max-width: 767px) {
  .filters__controls:not(.filters__controls--toggle) .facetwp-facet-search {
    display: none;
  }
}


=================================================================================
~ Footer
================================================================================= */
.footer {
  background: #fff; }
  .footer__container {
    padding-top: 2rem;
    padding-bottom: 2rem;
    margin-top: 5.5rem;
    margin-bottom: 1rem; }
    .footer__container::before {
      content: '';
      display: block;
      left: 0;
      right: 0;
      border-top: solid 1px #e0e3e6;
      -webkit-transform: translateY(-2.5rem);
              transform: translateY(-2.5rem); }
  .footer__copyright {
    font-size: 1.2rem;
    margin-top: 1.2rem; }
  .footer__info {
    font-size: 1.4rem; }
  .footer__logo {
    margin-bottom: 3rem;
    max-width: 100%;
    width: 300px; }
  .footer__address {
    margin-bottom: 3rem; }
  .footer__nav .menu--footer {
    height: 100%; }

@media (max-width: 991.98px) {
  .footer__social, .footer__contact {
    margin-bottom: 3rem; }
  .footer__nav--menu {
    display: none; } }

    /* Ensure this media query targets screens wider than 992px */
@media (min-width: 992px) {
  /* Target the specific page with its unique class structure */
  .no-js .page-template-people-national.page-id-8552 .content.container--padded .section {
      margin-top: 5rem;
  }
}

@media (min-width: 992px) {
  .footer__container {
    margin-top: 15rem;
    margin-bottom: 3rem; } }
  @media (min-width: 992px) and (min-width: 576px) {
    .footer__container {
      max-width: 540px; } }
  @media (min-width: 992px) and (min-width: 768px) {
    .footer__container {
      max-width: 720px; } }
  @media (min-width: 992px) and (min-width: 992px) {
    .footer__container {
      max-width: 897px; } }
  @media (min-width: 992px) and (min-width: 1200px) {
    .footer__container {
      max-width: 1105px; } }
  @media (min-width: 992px) and (min-width: 1440px) {
    .footer__container {
      max-width: 1345px; } }

@media (min-width: 992px) {
    .footer__container::before {
      -webkit-transform: translateY(-7rem);
              transform: translateY(-7rem); }
    .footer__container > :first-child > * {
      margin-right: auto; }
  .footer__copyright {
    margin-top: 6rem; }
  .footer__info {
    font-size: 1.6rem; } }

/* ==================================================================================
~ Page Header
================================================================================= */
.page-header {
  margin-top: 7.5rem;
  margin-bottom: 4rem; }
  .page-header__body {
    margin-top: 1rem;
    font-size: 1.6rem; }
  .page-header__caption {
    position: absolute;
    bottom: 0;
    right: 0;
    padding: 1rem 0 0.5rem 1rem;
    padding-right: 1.5em;
    min-width: 50%;
    z-index: 2;
    text-transform: uppercase;
    font-weight: 700;
    background: #fff; }
    .page-header__caption .icon {
      font-size: 1.4em;
      position: absolute;
      right: 0.5rem;
      top: calc( 50% + 0.5rem);
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%); }
    .page-header__caption span {
      position: relative;
      padding-bottom: 0.4rem;
      display: inline-block; }
      .page-header__caption span::after {
        position: absolute;
        content: '';
        display: block;
        bottom: 0;
        right: 0;
        width: 0;
        border-bottom: solid 2px #a8de00;
        -webkit-transition: width 150ms linear;
        transition: width 150ms linear; }
      .page-header__caption span:hover::after {
        width: 100%; }
  .page-header__link {
    display: block; }
    .page-header__link:hover .page-header__caption span::after {
      width: 100%; }
  .page-header__media img {
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%; }
  .page-header__meta > * {
    padding-bottom: 1.8rem; }
    .page-header__meta > *:not(:first-child) {
      padding-top: 1.8rem; }
    .page-header__meta > *:not(:last-child) {
      border-bottom: solid 1px #a8de00; }
  .page-header__meta-title {
    font-weight: 700;
    margin-bottom: 1rem; }
  .page-header__subtitle {
    font-weight: 700;
    font-size: 2.6rem;
    line-height: 1.2; }
  .page-header__title {
    font-size: 1.4rem;
    font-weight: 400;
    text-transform: uppercase; }
  .page-header:not([class*="page-header--"]) .page-header__subtitle {
    max-width: 75%; }
  .page-header[class*="page-header--"] .page-header__copy .wysiwyg {
    max-width: unset; }
  .page-header--post .page-header__copy {
    padding-right: 1em; }
  .page-header--single {
    margin-bottom: 3.5rem; }
    .page-header--single .page-header__subtitle {
      margin-bottom: 4.5rem; }

@media (max-width: 991.98px) {
  .page-header__copy {
    margin-bottom: 3rem; }
  .page-header__media {
    margin-left: -2rem;
    margin-right: -2rem;
    width: auto; }
  .page-header--single .btn, .page-header--single .form .gfield--fileupload .gfield_label, .form .gfield--fileupload .page-header--single .gfield_label {
    -ms-flex-item-align: center;
        align-self: center; }
  .page-header--single .page-header__meta {
    margin-top: 2rem; } }

@media (min-width: 992px) {
  .page-header {
    margin-top: 12rem;
    margin-bottom: 8rem; }
    .page-header::after {
      content: '';
      clear: both;
      display: block; }
    .page-header__body {
      margin-right: 2rem;
      margin-top: 5rem;
      font-size: 2.2rem; }
    .page-header__subtitle {
      font-size: 5rem; }
    .page-header__title {
      font-size: 2rem; }
    .page-header--image .page-header__copy {
      width: 40%;
      z-index: 1;
      position: relative;
      margin-top: 4.5rem; }
    .page-header--image .page-header__subtitle {
      margin-right: -25%; }
    .page-header--image .page-header__copy, .page-header--post .page-header__copy {
      width: 40%;
      z-index: 1;
      position: relative;
      margin-top: 4.5rem; }
    .page-header--image .page-header__copy, .page-header--image .page-header__media, .page-header--post .page-header__copy, .page-header--post .page-header__media {
      float: left; }
    .page-header--image .page-header__media, .page-header--post .page-header__media {
      width: 60%; }
    .page-header--post .page-header__media::after {
      font-size: 7.5rem; }
    .page-header--single {
      position: relative;
      margin-bottom: 3.5rem; }
      .page-header--single .page-header__media {
        -webkit-box-flex: 0;
            -ms-flex: 0 0 75%;
                flex: 0 0 75%;
        margin-right: 2rem; } }

@media (max-width: 1199.8px) and (min-width: 992px) {
  .page-header--single .social-share__toggle {
    font-size: 1.4rem; } }

.section {
  margin-top: 3rem; }
  .section__headline {
    margin-bottom: 2rem; }

@media (min-width: 992px) {
  .section {
    margin-top: 10rem; }
    .section__headline {
      margin-bottom: 3rem; } }

/* =================================================================================
~ Sidebar
================================================================================= */
.sidebar {
  background-color: #eeeeee; }

/**
 * Templates - styles specific to an individual page or template
 */
.page-template-about .callouts {
  margin-top: 0; }

@media (max-width: 767.98px) {
  .page-template-about .callout:first-child .callout__primary-image {
    display: none; }
  .page-template-about .callout:first-child .callout__copy {
    margin-top: 0; } }

@media (min-width: 1200px) {
  .page-template-about .page-header {
    margin-bottom: 4rem; }
  .page-template-about .callout:first-child {
    margin-top: 0;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start; }
    .page-template-about .callout:first-child .callout__copy {
      -webkit-box-flex: 0;
          -ms-flex: 0 1 60%;
              flex: 0 1 60%;
      margin-top: 0; }
    .page-template-about .callout:first-child .callout__primary-image {
      margin-right: -11rem;
      margin-top: -20rem;
      -webkit-box-flex: 0;
          -ms-flex: 0 1 40%;
              flex: 0 1 40%; } }

@media (min-width: 1440px) {
  .page-template-about .page-header {
    margin-bottom: 8rem; }
  .page-template-about .callout:first-child .callout__primary-image {
    margin-top: -16rem; } }

/* =================================================================================
~ Home
================================================================================= */
body.page-id-5 {
  overflow-x: hidden !important;
}

html:has(body.page-id-5) {
  overflow-x: hidden !important;
}

@media (max-width: 991.98px) {
  body.page-id-5 .home-video__header {
    text-align: center !important;
font-size: 1.5rem !important;
  }
}


@media (max-width: 991.98px) {
  body.home .story-card__title {
    font-size: 2.5rem !important;
  }
}


@media (max-width: 960px) {
  body.home .home-culture__title {
    font-size: 3rem !important;
  }

  body.home .home-culture__copy {
    font-size: 1.65rem !important;
  }
}

@media (max-width: 960px) {
  body.home .featured-grid__top,
  body.home .featured-grid__bottom {
    display: flex !important;
    flex-direction: column !important;
    gap: 2rem !important;
  }

  body.home .featured-grid__card {
    min-height: 180px !important;
    width: 100% !important;
    position: relative !important;
  }

  body.home .featured-grid__overlay {
    position: absolute !important;
    inset: 0 !important;
    background-color: rgba(168, 222, 0, 0.85) !important;
    padding: 2rem !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    opacity: 0 !important;
    transition: opacity 0.3s ease !important;
    pointer-events: none !important;
  }

  body.home .featured-grid__card:active .featured-grid__overlay,
  body.home .featured-grid__card:focus .featured-grid__overlay,
  body.home .featured-grid__card:hover .featured-grid__overlay {
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  body.home .featured-grid__overlay h3 {
    font-size: 2rem !important;
    margin-bottom: 1rem !important;
  }

  body.home .featured-grid__cta .custom-arrow svg {
    width: 2rem !important;
    margin-top: 0 !important;
  }
}




@media (max-width: 960px) {
  body.home .slider__arrows {
    align-content: left;
      padding-left: -10rem;
      margin-left: -10rem;
  }
}

@media (max-width: 991.98px) {
  body.home .story-card__title {
    font-size: 2.5rem;
  }
}
@media (max-width: 991.98px) {
  body.home .slider__links-container {
    display: block !important;
  }
}

/* Base styles for slider link text — mobile only on homepage */
@media (max-width: 991.98px) {
  body.home .slider__link {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 1.1rem; /* Adjust as needed */
    line-height: 2.5;
    max-width: 100%;
  }
  /* Hide the right arrow icon inside links */
  body.home .slider__link .icon-right-small::before {
    content: none !important;
    display: none !important;
  }
}


body.home .featured-grid__cta {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-weight: bold;
  border-bottom: 2px solid transparent;
  transition: border-color 0.3s ease;
  padding-bottom: 0.2rem;
  align-self: flex-end; /* Aligns CTA to the right within the overlay */
}
body.home .featured-grid__cta:hover {
  border-bottom-color: #a8de00;
}
body.home .featured-grid__cta {
  display: inline-block;
   text-align: right;
  margin-top: 2rem;
  font-size: 18px
}

body.home .featured-grid__overlay h3 {
  /* your styles here */
  margin-bottom: 2rem;
}

body.home .featured-grid {
  margin: 0 auto;
  width: 100%;
}

body.home .featured-grid__top {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 2rem;
  margin-bottom: 2rem;
}

body.home .featured-grid__bottom {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
}

body.home .featured-grid__card {
  background-size: cover;
  background-position: center;
  position: relative;
  min-height: 350px;
  text-decoration: none;
  color: white;
  overflow: hidden;
}

body.home .featured-grid__overlay {
  position: absolute;
  inset: 0;
  background-color: rgba(168, 222, 0, 0.85);
  padding: 2rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
 padding-bottom: 5rem;
}
.featured-grid__cta .custom-arrow svg {
 margin-top: 0rem;
    width: 3rem;
 
}
body.home .featured-grid__card:hover .featured-grid__overlay {
  opacity: 1;
  pointer-events: auto;
}

body.home .featured-grid__cta {
  display: inline-block;
  margin-top: 1rem;
  font-weight: bold;
}

body.home .featured-grid__cta i {
  margin-left: 0.5rem;
}


body.home .home-culture {
  text-align: center;
  padding-top: 3rem;
  padding-bottom: 3rem;
}

body.home .home-culture__title {
  font-size: 3.5rem;
  line-height: 1.2;
  font-weight: 700;
  margin: 0 0 1rem;
  color: #2b2b2b; /* adjust to your brand */
    padding-bottom: 1rem;
}

body.home .home-culture__copy {
  max-width: 840px;
  margin: 0 auto;
  font-size: 2.2rem;
  line-height: 1.7;
  color: #3b3b3b;
}

/* Optional: a touch more space from the slider above */
body.home .hero__slider + .home-culture {
  margin-top: 1rem;
}


.latest-luxury__wrapper {
  display: flex;
  gap: 1rem;
  justify-content: center;
  align-items: stretch; /* Ensure equal height cards */
  height: auto;
  margin: 0;
  padding: 0 3vw; /* Prevent edge overflow */
  position: relative;
  overflow-x: clip;
}

.latest-luxury__card {
  flex: 1;
  display: flex;
  flex-direction: column;
  text-decoration: none;
  color: inherit;
  transition: transform 0.3s ease, flex 0.3s ease;
  cursor: pointer;
  overflow: hidden;
  transform-origin: center center;
  height: 100%; /* Match wrapper height */
}

/* Force left and right cards to scale inward */
.latest-luxury__card:first-child {
  transform-origin: right center;
}
.latest-luxury__card:last-child {
  transform-origin: left center;
}

@media (min-width: 768px) {
  .latest-luxury__image {
    width: 100%;
    height: 0;
    padding-bottom: 66%;  /* 66% = 2:3 ratio; 56.25% = 16:9; tweak as needed */
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    transition: transform 0.3s ease;
    border-radius: 0 !important;
    display: block;
    position: relative;
    box-shadow: 0 0px 2.3px rgba(0,0,0,0.28);
  }
}

/* Slight image zoom on hover */
.latest-luxury__card:hover .latest-luxury__image {
  transform: scale(1.02);
}
/* HIDE/SHOW SECTIONS BY SCREEN SIZE */
.latest-luxury-mobile { display: none; }

@media (max-width: 767px) {
  .latest-luxury { display: none !important; }
  .latest-luxury-mobile { display: block !important; }

  /* HIDE RADIO BUTTONS COMPLETELY */
  .latest-luxury-mobile input[type="radio"] {
    display: none !important;
    appearance: none !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    position: absolute !important;
    left: -9999px !important;
  }

  /* SLIDER LAYOUT */
  .latest-luxury__slider {
    position: relative;
    max-width: 430px;
    margin: 0 auto;
  }
  .latest-luxury__wrapper {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: stretch;
    overflow: hidden;
    width: 100%;
    background: none;
    gap: 0;
  }

  /* CARD LAYOUT (NO FORCED HEIGHT, SHRINK-WRAPS CONTENT) */
  .latest-luxury__card { 
    display: none;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    width: 92vw;
    max-width: 400px;
    border-radius: 0 !important;
    overflow: hidden;
    flex-direction: column;
    padding: 0 !important;
    margin: 0 auto;
    align-items: stretch;
    background: #fff;  /* Or set to your section bg color if needed */
  }
  /* SLIDER LOGIC: Only show the active card! */
  #latest-slide-1:checked ~ .latest-luxury__wrapper .latest-luxury__card--1 { display: flex; }
  #latest-slide-2:checked ~ .latest-luxury__wrapper .latest-luxury__card--2 { display: flex; }
  #latest-slide-3:checked ~ .latest-luxury__wrapper .latest-luxury__card--3 { display: flex; }

  /* IMAGE: FULL VIEW, NO CROP, BARS MATCH CARD/SECTION BG */
  .latest-luxury__image {
    width: 100%;
    aspect-ratio: 16 / 9;
    height: auto !important;
    min-height: 120px;
    max-height: 275px;
    border-radius: 0 !important;
    background-size: contain !important;         /* SHOW FULL IMAGE, NO CROP */
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-color: #fff !important;           /* MATCH CARD/SECTION BG COLOR */
    margin: 0;
    padding: 0;
    display: block;
    flex-shrink: 0;
  }
  .latest-luxury__meta {
    padding: 0.75rem 1rem 0.5rem;
    background: #fff;
    box-sizing: border-box;
    width: 100%;
    min-height: 0;
  }

  /* ARROWS: PLAIN, NO CIRCLES, ONLY THE CORRECT ONE IS VISIBLE */
  .latest-luxury__arrow {
    display: none;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    font-size: 2.5rem;
    color: #222;
    background: none;
    border: none;
    box-shadow: none;
    border-radius: 0;
    z-index: 10;
    cursor: pointer;
    user-select: none;
    opacity: 1;
    width: auto;
    height: auto;
    align-items: center;
    justify-content: center;
    padding: 0;
  }
  .latest-luxury__arrow--left  { left: 0.5rem; }
  .latest-luxury__arrow--right { right: 0.5rem; }

  /* SHOW THE RIGHT ARROW(S) FOR EACH SLIDE */
  #latest-slide-1:checked ~ .latest-luxury__arrow[for="latest-slide-3"],
  #latest-slide-1:checked ~ .latest-luxury__arrow[for="latest-slide-2"],
  #latest-slide-2:checked ~ .latest-luxury__arrow[for="latest-slide-1"],
  #latest-slide-2:checked ~ .latest-luxury__arrow[for="latest-slide-3"],
  #latest-slide-3:checked ~ .latest-luxury__arrow[for="latest-slide-2"],
  #latest-slide-3:checked ~ .latest-luxury__arrow[for="latest-slide-1"] {
    display: flex !important;
  }
}

.latest-luxury__meta {
  display: none;
  padding: 1rem 0 0;
}

.latest-luxury__card:hover .latest-luxury__meta {
  display: block;
}

.latest-luxury__subtitle {
  font-size: 1rem;
  margin: 0;
}

/* Shrink non-hovered cards */
.latest-luxury__wrapper:hover .latest-luxury__card {
  transform: scale(0.75);
  transition: transform 0.3s ease;
}

/* Grow hovered card */
.latest-luxury__wrapper .latest-luxury__card:hover {
  transform: scale(1.045);
  z-index: 2;
}

/* Nudge center card when side cards are hovered */
.latest-luxury__wrapper .latest-luxury__card:first-child:hover ~ .latest-luxury__card:nth-child(2) {
  transform: translateX(0.5rem) scale(0.75);
}
.latest-luxury__wrapper .latest-luxury__card:last-child:hover ~ .latest-luxury__card:nth-child(2) {
  transform: translateX(-0.5rem) scale(0.90);
}
.latest-luxury__wrapper .latest-luxury__card:nth-child(2):hover {
  transform: scale(1) !important;
}
.latest-luxury__card {
  margin: 0 0.5rem; /* Add margin between cards */
  box-sizing: border-box;
}

.latest-luxury__wrapper {
  padding: 0 3rem; /* Prevent cards from hugging screen edge */
}

.latest-luxury__wrapper:hover .latest-luxury__card {
  transform: scale(0.75); /* Slight scale down */
  transition: transform 0.3s ease;
}

.latest-luxury__wrapper .latest-luxury__card:hover {
  transform: scale(1.045);
  z-index: 2;
}


.title-with-arrow {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  vertical-align: top;
}

.custom-arrow .arrow-icon {
  width: 3.25rem;   /* adjust size here */
  height: 3.25rem;
  fill: currentColor;
  display: inline-block;
  vertical-align: top;
  margin-top: -1.1rem; /* tiny nudge to line up */
}


.latest-luxury__card:hover .latest-luxury__title::after {
  transform: translate(5px, -50%);
}

.latest-luxury__heading {
  text-align: center;
  margin: 0 auto;
}

.latest-luxury__title {
  /*! display: inline-block; */
  position: relative;
  transition: border-color 0.2s ease;
  border-bottom: 2px solid transparent;
}

.latest-luxury__title:hover {
  border-bottom-color: #a8de00;
}

.latest-luxury__card {
  padding-bottom: 10rem; /* Reserve space for the meta */
  position: relative;
}

.latest-luxury__meta {
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
  position: absolute;
  bottom: 1.5rem;
  left: 1.5rem;
  right: 1.5rem;
}

.latest-luxury__card:hover .latest-luxury__meta {
  opacity: 1;
  pointer-events: auto;
}

@media (max-width: 767px) {
body .sb_youtube[id^=sb_youtube_] .sby_info,
body.et-db #et-boc .sb_youtube[id^=sb_youtube_] .sby_info {
   margin:-20px !important;
}}

@media (max-width:767.98px){
 body.page-id-5 .home-video__feed{
    margin:-140px auto 0 !important;
  }
}

@media (max-width: 767px) {
  .latest-luxury-mobile {
    margin-top: -35px !important;
  }
}



/* ========== Full-Bleed Trio Section ========== */
.story-trio {
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  margin-right: calc(-50vw + 50%);
  overflow: hidden;
}

.story-trio__inner {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  gap: 1.5rem; /* spacing between blocks */
  padding: 0 .5rem;
  box-sizing: border-box;
}

.story-card {
  position: relative;
  flex: 1 1 calc(33.333% - 1rem);
  aspect-ratio: 1 / 0.7; /* ↓ was 1/1 — now shorter height */
  text-decoration: none;
  color: white;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #000;
}

.story-card__bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  transition: transform 0.3s ease;
  z-index: 0;
}

.story-card__scrim {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,0.6), rgba(0,0,0,0.1));
  z-index: 1;
}

.story-card__title {
  position: absolute;
  bottom: 2rem; /* Adjust as needed */
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
  text-align: center;
  font-size: 4rem;
  font-weight: 700;
  line-height: 1.2;
  max-width: 90%;
  color: #fff;
}

/* Hover zoom effect */
.story-card:hover .story-card__bg {
  transform: scale(1.05);
}

/* ========== Mobile ========== */
@media (max-width: 991px) {
  .story-card {
    flex: 1 1 100%;
    aspect-ratio: 16 / 9;
  }
}


/* ===========================
   Home: Video Hub (final safe version)
=========================== */

body.page-id-5 .slider__text {
    visibility: Hidden;
    margin-top: -12rem;
  }

body.page-id-5 .home-video{
  background:#3a4440;
  color:#fff;
  position:relative;
  overflow:visible;
  padding:4rem 0 0.75rem;     /* tighter bottom band */
  margin-bottom:200px;        /* matches translateY below */
  margin-top: 70px;
}

body.page-id-5 .home-video__inner{
  max-width:1200px;
  margin:0 auto;
  padding:0 2rem;
}

/* Header */
body.page-id-5 .home-video__header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:2rem;
  margin-bottom:0;
}

body.page-id-5 .home-video__title{ margin:0; line-height:1.1; }

/* CTA arrow */
body.page-id-5 .home-video__cta{
  display:inline-flex; align-items:center; gap:.5rem; line-height:1;
  font-weight:600; text-decoration:none; color:#fff;
  border-bottom:2px solid transparent; white-space:nowrap;
  transition:border-color .2s ease;
    }
body.page-id-5 .home-video__cta:hover,
body.page-id-5 .home-video__cta:focus{ border-bottom-color:#a7ff4e; }
body.page-id-5 .home-video__cta .arrow-icon{ width:18px; height:18px; display:block; margin-left: 10px; }

/* Feed (no gap above + strong hang below) */
body.page-id-5 .home-video__feed{
  margin:-180px auto 0;
  transform:translateY(200px);
  display:flex;
  justify-content:center;  /* keeps iframe centered */
}

/* Tablet */
@media (max-width:1199.98px){
  body.page-id-5 .home-video__feed{
    margin:-190px auto 0;
    transform:translateY(210px);
  }
}

/* Mobile */
@media (max-width:767.98px){
  body.page-id-5 .home-video{
    padding:2.25rem 0 .75rem;
    margin-bottom:150px;
  }
  body.page-id-5 .home-video__header{
    flex-direction:column; align-items:center; gap:.5rem;
  }
  body.page-id-5 .home-video__feed{
    margin:-120px auto 0;
    transform:translateY(150px);
  }
}

/* Optional polish */
body.page-id-5 .home-video__feed iframe,
body.page-id-5 .home-video__feed img{
  border-radius:6px;
  box-shadow:0 12px 36px rgba(0,0,0,.28);
}

/* Plugin cleanup (remove extra spacing / caps, but no width:auto) */
body.page-id-5 .home-video__feed .sby_header{ display:none; }
body.page-id-5 .home-video__feed .sby_items_wrap,
body.page-id-5 .home-video__feed .sby_items{
  margin-top:0 !important;
  padding-top:0 !important;
  max-width:none !important;   /* allow iframe to stretch */
  margin-left:auto !important;
  margin-right:auto !important;
}


body .sb_youtube[id^=sb_youtube_],
body.et-db #et-boc .sb_youtube[id^=sb_youtube_] {
  padding-top: 3.5rem !important;
}

body .sb_youtube[id^=sb_youtube_] .sby_footer,
body.et-db #et-boc .sb_youtube[id^=sb_youtube_] .sby_footer {
  visibility: hidden;
}
body .sb_youtube[id^="sb_youtube_"] .sby_items_wrap .sby_inner_item, body.et-db #et-boc .sb_youtube[id^="sb_youtube_"] .sby_items_wrap .sby_inner_item {
    display: unset!important;;
}
/* Keep text aligned with video width */
body.page-id-5 .home-video__header {
  padding: 0 1.5rem;   /* adjust this value until it lines up with video edges */
  box-sizing: border-box;
}
.latest-luxury__heading {
    padding-top: 70px;
}

/* Mobile: slightly less padding */
@media (max-width: 767.98px) {
  body.page-id-5 .home-video__header {
    padding: 0 2rem;
  }
}


body.page-id-5 .home-video .custom-arrow .arrow-icon {
  margin-top: 0 !important;
}


body.page-id-5 .home-video__cta .arrow-icon{ margin-left: 10px; }


.sby_play_btn::before {
  content: "";
  display: block;
  width: 145px;
  height: 145px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 640'%3E%3Cpath fill='white' d='M187.2 100.9C174.8 94.1 159.8 94.4 147.6 101.6C135.4 108.8 128 121.9 128 136L128 504C128 518.1 135.5 531.2 147.6 538.4C159.7 545.6 174.8 545.9 187.2 539.1L523.2 355.1C536 348.1 544 334.6 544 320C544 305.4 536 291.9 523.2 284.9L187.2 100.9z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  pointer-events: none;
  opacity: 0.75; /* <-- Adjust this value to your liking */
}

/* Hide the default YouTube button and background */
.sby_play_btn svg,
.sby_play_btn_bg {
  display: none !important;
}

/* =================================================================================
~ Products
================================================================================= */
.page-template-products .page-header , .page-template-find-your-region .page-header, .page-template-national .page-header{
  margin-bottom: 4rem; }

.page-template-products .manufacturer , .page-template-find-your-region .manufacturer, .page-template-national .manufacturer{
  margin-bottom: 2rem; }

.page-template-products .manufacturers__gutter , .page-template-find-your-region .manufacturers__gutter, .page-template-national .manufacturers__gutter{
  width: 0; }

.page-template-products .manufacturers__column, .page-template-products .manufacturer , .page-template-find-your-region .manufacturers__column, .page-template-find-your-region .manufacturer, .page-template-national .manufacturers__column, .page-template-national .manufacturer{
  width: 100%; }

.page-template-national .page-header {
  margin-bottom: 4rem;
}

.page-template-national .manufacturer {
  margin-bottom: 2rem;
}

.page-template-national .manufacturers__gutter {
  width: 0;
}

.page-template-national .manufacturers__column,
.page-template-national .manufacturer {
  width: 100%;
}

.page-template-products .hide.section__headline{display:none;}

@media (max-width: 960px) {
body.page-id-4406 .slider__slide {
 padding-top: 2rem;
}
}

.page-template-hospitality .page-header {
  margin-bottom: 4rem; }

.page-template-hospitality .manufacturer {
  margin-bottom: 2rem; }

.page-template-hospitality .manufacturers__gutter {
  width: 0; }

.page-template-hospitality .manufacturers__column, .page-template-hospitality .manufacturer {
  width: 100%; }

@media (min-width: 768px) {
  .page-template-products .manufacturers__gutter , .page-template-find-your-region .manufacturers__gutter, .page-template-national .manufacturers__gutter{
    width: 2rem; }
  .page-template-products .manufacturers__column, .page-template-products .manufacturer , .page-template-find-your-region .manufacturers__column, .page-template-find-your-region .manufacturer, .page-template-national .manufacturer, .page-template-national .manufacturers__column{
    width: calc( 50% - 1rem); } }

@media (min-width: 768px) {
  .page-template-hospitality .manufacturers__gutter {
    width: 2rem; }
  .page-template-hospitality .manufacturers__column, .page-template-hospitality .manufacturer {
    width: calc( 50% - 1rem); } }

@media (min-width: 1200px) {
  .page-template-products .manufacturers__column, .page-template-products .manufacturer , .page-template-find-your-region .manufacturers__column, .page-template-find-your-region .manufacturer, .page-template-national .manufacturer, .page-template-national .manufacturers__column{
    width: calc( 25% - 1.5rem); } }

@media (min-width: 1200px) {
  .page-template-hospitality .manufacturers__column,
  .page-template-hospitality .manufacturer {
    width: calc(25% - 1.5rem);
  }
}

@media (min-width: 768px) {
  .page-template-hospitality article.content .hospitalityIntro {
    width: 100%;
    margin: 0;
    padding-top: 5rem;
    text-align: left !important;
    font-size: 2.5rem;
  }

  .page-template-hospitality .hospitalityIntro {
    margin-bottom: 0;
  }

  .page-template-hospitality .hospitalityIntro + .section {
    margin-top: 0;
    padding-top: 0;
  }

  .page-template-hospitality .filters__selections {
    min-height: unset;
    padding-top: 0.5rem;
    padding-bottom: 1.8rem;
  }

   .page-template-hospitality .embed iframe,
  .page-template-hospitality .embed embed,
  .page-template-hospitality .embed object,
  .page-template-hospitality .embed video {
    top: 10px;
  }


/* =============================================
    Careers Page
    ============================================= */

@media (max-width: 950px){
body.page-id-44 .home-culture__title .h1, h2, h3, h4, h5, h6 {
  text-align: center;
}}

body.page-id-44 .home-culture__copy {
  margin-bottom: 1rem; /* or whatever value you need */
    margin-top: 1rem;
}

@media (max-width: 767px) {
  body.page-id-44 .home-culture__arrow svg {
    width: 1.5rem !important;
    height: 1.5rem !important;
    min-width: 2.5rem !important;
    min-height: 2.5rem !important;
    max-width: 1.5rem !important;
    max-height: 1.5rem !important;
    /* Optional: vertically align, if needed */
    vertical-align: middle;
    display: inline-block;
    margin-top: -1rem;
  }
}

body.page-id-44 .home-culture__viewall {
  padding-top: 2.5rem !important; /* or whatever value you need */
}




@media (max-width: 950px) {
  body.page-id-44 .job-listings__list {
    grid-template-columns: 1fr !important;
    gap: 1.3rem 0 !important;
    max-width: 98vw !important;
    padding: 0 1vw !important;
  }
  body.page-id-44 .job-listings__item {
    padding: 3.05rem 0.9rem 1rem 0.7rem !important;
    margin-bottom: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    border-bottom: 2px solid #b9e518 !important;
  }
  body.page-id-44 .job-listings__header-row {
    gap: 0 !important;
    margin-bottom: 0.22rem !important;
    flex-wrap: nowrap !important;
  }
  body.page-id-44 .job-listings__title {
    font-size: 1.18rem !important;
    margin-bottom: 0.15rem !important;
    line-height: 1.23 !important;
  }
  body.page-id-44 .job-listings__arrow {
    margin-left: 0.6rem !important;
    margin-top: 0.12rem !important;
  }
  body.page-id-44 .job-listings__arrow svg {
    width: 36px !important;
    height: 36px !important;
    color: #a8de00 !important;
  }
  body.page-id-44 .job-listings__type {
    font-size: 1.01rem !important;
    margin-bottom: 0.59rem !important;
    margin-top: -0.09rem !important;
  }
  body.page-id-44 .job-listings__info {
    font-size: 1.13rem !important;
    margin-top: -1rem !important;
    gap: 0.13rem !important;
  }
  body.page-id-44 .job-listings__pay,
  body.page-id-44 .job-listings__location,
  body.page-id-44 .job-listings__date {
    font-size: 1.06rem !important;
    line-height: 1.73rem !important;
    gap: 0.38rem !important;
  }
  /* Remove underline from last card on mobile */
  body.page-id-44 .job-listings__item:last-child {
    border-bottom: none !important;
  }
}
@media (max-width: 950px) {
  body.page-id-44 .job-listings__header-row {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    gap: 0.3rem !important;
    margin-bottom: 0.22rem !important;
  }
  body.page-id-44 .job-listings__arrow {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-left: 0.2rem !important;
    margin-top: 0.10rem !important;
    min-width: 44px !important;
    min-height: 44px !important;
    /* Ensures clickable/tap area is big enough on mobile */
  }
  body.page-id-44 .job-listings__arrow svg {
    display: block !important;
    width: 36px !important;
    height: 36px !important;
    color: #a8de00 !important;
    margin: 0 !important;
  }
}

@media (max-width: 950px){
 body.page-id-44 .page-header__title {
   visibility: hidden; }}


@media (max-width: 950px){
 body.page-id-44 .page-header__title {
   visibility: hidden; 
    margin-top: -8rem;}}

@media (max-width: 767.98px) {
  /* 1. Green background for the video section, minimal bottom padding */
  body.page-id-44 .home-video {
    background: #3a4440 !important;
                }

  /* 2. All video section text is white and centered */
  body.page-id-44 .home-video,
  body.page-id-44 .home-video__header,
  body.page-id-44 .home-video__description {
    color: #fff !important;
    text-align: center !important;  
    margin-bottom: -14rem !important;
  }

  /* 3. Hide the YouTube plugin video title (plugin element) */
  body.page-id-44 .sb_youtube[id^=sb_youtube_] .sby_video_title,
  body.page-id-44.et-db #et-boc .sb_youtube[id^=sb_youtube_] .sby_video_title {
    visibility: hidden !important;
      }

  @media (max-width: 767.98px) {
  body.page-id-44 .home-video__feed {
    margin-bottom: 16rem;
    transform: translateY(130px);
  }
}
}

.job-listings__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
 gap: 1.4rem 20.2rem; /* 1.4rem vertical, 3.2rem horizontal */
  padding: 0;
  margin: 0 auto;
  max-width: 1040px;
  list-style: none;
}

.job-listings__item {
  background: #fff;
  border-radius: 0;
  box-shadow: none;
  border-bottom: 2px solid #b9e518;
  padding: 1.6rem 2.1rem 1.3rem 0.6rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  min-height: 140px;
}

.job-listings__header-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1rem;
}

.job-listings__arrow {
  margin-left: 16px;
  margin-top: 4px;
  text-decoration: none;
  display: flex;
  align-items: center;
}
.job-listings__arrow svg {
  width: 36px;
  height: 36px;
  display: block;
  transition: transform 0.2s;
}
.job-listings__arrow:hover svg {
  transform: scale(1.09) rotate(-5deg);
  filter: drop-shadow(0 0 1px #a8de00);
}

.job-listings__title {
  font-weight: 700;
  font-size: 1.70rem;
  margin: 0 0 0.5rem 0;
  line-height: 1.18;
}

.job-listings__type {
    font-size: 1.53rem;
  margin: 0 0 0.85rem 0;
  font-weight: 450;
  letter-spacing: 0.01em;
margin-bottom: -.05rem;
}

.job-listings__info {
  font-size: 1.33rem;
   margin-top: 0.12rem;
  display: flex;
  flex-direction: column;
  gap: 0.32rem;
}

.job-listings__info svg {
  margin-right: 0.15em;
  opacity: 0.82;
}

.job-listings__pay,
.job-listings__location,
.job-listings__date {
  font-size: 1.40rem;
  display: flex;
  align-items: center;
    line-height: 2.8rem;
  gap: 0.95rem;
}

.job-listings__icon {
  display: inline-block;
  width: 1.14rem;
  height: 1.14rem;
  vertical-align: middle;
  line-height: 1;
}

@media (max-width: 950px) {
  .job-listings__list {
    grid-template-columns: 1fr;
    gap: 1.7rem 0;
    padding: 0;
  }
  .job-listings__item {
    padding-right: 1rem;
  }
}

@media (max-width: 650px) {
  .job-listings__list {
    grid-template-columns: 1fr;
    gap: 1.1rem 0;
    max-width: 100vw;
  }
  .job-listings__item {
    padding: 1.12rem 0.6rem 1.1rem 0.35rem;
  }
  .job-listings__title {
    font-size: 1.11rem;
  }
}

body.page-id-44 .page-header__subtitle {
  font-size: 2.2rem;
}
body.page-id-44 .page-header__body {
  font-size: 1.15rem;
}

@media (min-width: 600px) {
  body.page-id-44 .page-header__subtitle {
    font-size: 2.5rem;
  }
  body.page-id-44 .page-header__body {
    font-size: 1.35rem;
  }
}
@media (min-width: 900px) {
  body.page-id-44 .page-header__subtitle {
    font-size: 2rem;
  }
  body.page-id-44 .page-header__body {
    font-size: 1.1rem;
  }
}
@media (min-width: 1200px) {
  body.page-id-44 .page-header__subtitle {
    font-size: 2.8rem;
  }
  body.page-id-44 .page-header__body {
    font-size: 1.8rem;
  }
}

@media (min-width: 992px) {
  body.page-id-44 .page-header {
    font-size: 2.0rem;
  }
   body.page-id-44 .page-header__body {
    margin-right: -2rem;
    margin-top: 1.5rem;
  
  }
  body.page-id-44 .content {
    padding-bottom: 2rem;
  }
}

/* On desktop: Reverse image/text order just for Careers page */
@media (min-width: 992px) {
  body.page-id-44 .page-header--image .page-header__media,
  body.page-id-44 .page-header--post .page-header__media {
    float: left !important;  /* (Keep as is, image first in HTML stays left) */
    order: 1 !important;
  }
  body.page-id-44 .page-header--image .page-header__copy,
  body.page-id-44 .page-header--post .page-header__copy {
    float: right !important;
    order: 2 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  /* If you want to make sure text stays right and media left even if HTML order changes: */
  body.page-id-44 .page-header--image,
  body.page-id-44 .page-header--post {
    display: flex !important;
    flex-direction: row !important;
    align-items: stretch;
  }
  body.page-id-44 .page-header__media {
    width: 48% !important;
    margin: 0 !important;
    align-self: center;
  }
  body.page-id-44 .page-header__copy {
    order: 2 !important;
    width: 40% !important;
    margin: 0 !important;
  }
}
@media (min-width: 992px) {
  body.page-id-44 .page-header--image,
  body.page-id-44 .page-header--post {
    display: flex !important;
    flex-direction: row !important;
    align-items: stretch;
    gap: 7rem; /* <---- THIS CONTROLS THE SPACE BETWEEN IMAGE & TEXT */
  }
}
@media (min-width: 992px) {
  body.page-id-44 .page-header__title  {
        visibility: hidden;
}

@media (max-width: 960px) {
  body.page-id-44 .slider__slide {
    padding-top: 2rem;
  }
}

body.page-id-44 {
  overflow-x: hidden !important;
}

html:has(body.page-id-44) {
  overflow-x: hidden !important;
}

/* Responsive: slider__arrows left-align mobile */
@media (max-width: 960px) {
  body.page-id-44 .slider__arrows {
    align-content: left;
    padding-left: -10rem;
    margin-left: -10rem;
  }
}

/* Responsive: block links on mobile */
@media (max-width: 991.98px) {
  body.page-id-44 .slider__links-container {
    display: block !important;
  }
}

/* Slider link text styles — mobile only */
@media (max-width: 991.98px) {
  body.page-id-44 .slider__link {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 1.1rem; /* Adjust as needed */
    line-height: 2.5;
    max-width: 100%;
  }
  /* Hide the right arrow icon inside links */
  body.page-id-44 .slider__link .icon-right-small::before {
    content: none !important;
    display: none !important;
  }
}

/* =======================================================
     HERO — full-bleed + single-view + reduced height
     (only affects this page’s hero header)
  ======================================================= */

/* 1) Remove container caps/padding and break out to viewport edges */
body.page-id-44 .hero__slider.container,
body.page-id-44 .hero__slider.container--max-width,
body.page-id-44 .hero__slider.container--padded,
body.page-id-44 .hero.hero_slider.container,
body.page-id-44 .hero.hero_slider.container--max-width,
body.page-id-44 .hero.hero_slider.container--padded {
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  padding-top: 2rem;
}

body.page-id-44 .hero__slider,
body.page-id-44 .hero.hero_slider {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
}

body.page-id-44 main.main {
  overflow: visible !important;
}

/* 2) Height control (reduce the hero height) */
body.page-id-44 .hero__slider .embed--16by9,
body.page-id-44 .hero.hero_slider .embed--16by9 {
  position: relative !important;
  height: clamp(360px, 80vh, 800px) !important;
}

body.page-id-44 .hero__slider .embed--16by9::before,
body.page-id-44 .hero.hero_slider .embed--16by9::before {
  content: none !important;
}

/* 3) Media fill/crop and tidy picture/img */
body.page-id-44 .hero__slider .embed__item,
body.page-id-44 .hero.hero_slider .embed__item,
body.page-id-44 .hero__slider picture > img,
body.page-id-44 .hero.hero_slider picture > img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

body.page-id-44 .hero__slider picture,
body.page-id-44 .hero__slider img {
  display: block !important;
}

body.page-id-44 .hero__slider img:not(.embed__item) {
  position: relative;
  top: 1rem;
  left: 5rem;
}

/* desktop-only: nudge hero images down a bit on post 44 */
@media (min-width: 992px) {
  body.page-id-44 .hero__slider .embed__item,
  body.page-id-44 .hero.hero_slider .embed__item,
  body.page-id-44 .hero__slider picture > img,
  body.page-id-44 .hero.hero_slider picture > img {
    margin-top: 1.3rem;
  }
}

/* keep existing mobile overrides */
@media (max-width: 767px) {
  body.page-id-44 .slider__slide {
    font-size: 2.0rem;
    padding-top: 2.5rem;
  }
}

@media (max-width: 960px) {
  body.page-id-44 .slider__prev,
  body.page-id-44 .slider__next {
    padding: 0 1.4rem;
  }
  body.page-id-44 .hero__slider img:not(.embed__item) {
    visibility: hidden;
  }
}

body.page-id-44 .home-culture__arrow svg {
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  display: inline-block;
}

body.page-id-44 .home-culture__header,
body.page-id-44 .home-culture {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 1rem 2rem 1rem;
}

/* Title Centered */
body.page-id-44 .home-culture__title {
  text-align: center;
  font-size: 4.7rem;
  font-weight: 700;
  line-height: 1.1;
padding-top: 3rem;
padding-bottom: 3.5rem;
}

/* Row: Center whole group under heading */
body.page-id-44 .home-culture__row {
  display: flex;
  align-items: center;
  justify-content: center;      /* Center as a group */
  gap: 3rem;
  max-width: 950px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  flex-wrap: nowrap;
  min-width: 0;
}

/* Text: Centered under heading, large font, never shrinks */
body.page-id-44 .home-culture__copy {
  font-size: inherit;
  margin: 0;
  text-align: center;          /* <-- If you want left-aligned, change to left */
  line-height: 1.35;
}

body.page-id-44 .home-culture__copy a {
  color: #2b6cb0;
  text-decoration: underline;
  transition: color 0.2s;
}

body.page-id-44 .home-culture__copy a:hover {
  color: #82bc00;
}

/* VIEW ALL Button Area */
body.page-id-44 .home-culture__viewall {
  display: inline-flex;
  align-items: center;
  gap: 0.6em;
  text-decoration: none;
  font-size: 2rem;
  font-weight: 400;
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  position: relative;
  min-width: 110px;
  margin-bottom: 0.8rem;
  transition: color 0.2s;
  white-space: nowrap;          /* Prevent wrapping */
  color: #333;                  /* Keeps text/arrow color the same */
}

body.page-id-44 .home-culture__arrow {
  margin: 0;
  display: flex;
  align-items: center;
}

body.page-id-44 .home-culture__viewall span {
  margin-bottom: 0;
}

/* Underline: hidden by default, appears only on hover/focus */
body.page-id-44 .home-culture__viewall::after {
  content: '';
  display: block;
  width: 100%;
  height: 4px;
  background: #b8dc57;
  border-radius: 2px;
  position: absolute;
  left: 0;
  bottom: -10px;
  opacity: 0;
  transition: opacity 0.22s;
}

body.page-id-44 .home-culture__viewall:hover::after,
body.page-id-44 .home-culture__viewall:focus::after {
  opacity: 1;
}

/* Remove ALL text/arrow color hover effects */
body.page-id-44 .home-culture__viewall:hover,
body.page-id-44 .home-culture__viewall:focus {
  color: #333;
}

body.page-id-44 .home-culture__viewall:hover .home-culture__arrow svg,
body.page-id-44 .home-culture__viewall:focus .home-culture__arrow svg {
  color: #333;
}

/* ===========================
   Careers Page: Video Hub (page-id-44)
=========================== */

@media (min-width: 768px) {
  body.page-id-44 .home-video__feed .sby_video_thumbnail {
    height: 640px !important;
  }
}

body.page-id-44 .slider__text {
  visibility: hidden;
  margin-top: -12rem;
}

body.page-id-44 .home-video {
  background: #3a4440;
  color: #fff;
  position: relative;
  overflow: visible;
  padding: 4rem 0 0.75rem;
  margin-bottom: 150px;
  margin-top: 70px;
}

body.page-id-44 .home-video__inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 2rem;
}

/* Header */
body.page-id-44 .home-video__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  margin-bottom: 0;
  padding: 0 1.5rem; /* aligns text with video width */
  box-sizing: border-box;
}

body.page-id-44 .home-video__title {
  margin: 0;
  line-height: 1.1;
}

/* CTA arrow */
body.page-id-44 .home-video__cta {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  line-height: 1;
  font-weight: 600;
  text-decoration: none;
  color: #fff;
  border-bottom: 2px solid transparent;
  white-space: nowrap;
  transition: border-color .2s ease;
}
body.page-id-44 .home-video__cta:hover,
body.page-id-44 .home-video__cta:focus {
  border-bottom-color: #a7ff4e;
}
body.page-id-44 .home-video__cta .arrow-icon {
  width: 18px;
  height: 18px;
  display: block;
  margin-left: 10px;
}

/* Feed (no gap above + strong hang below) */
body.page-id-44 .home-video__feed {
  margin: -180px auto 0;
  transform: translateY(200px);
  display: flex;
  justify-content: center;  /* keeps iframe centered */
}

/* Tablet */
@media (max-width:1199.98px) {
  body.page-id-44 .home-video__feed {
    margin: -190px auto 0;
    transform: translateY(210px);
  }
}

/* Mobile */
@media (max-width:767.98px) {
  body.page-id-44 .home-video {
    padding: 2.25rem 0 .75rem;
    margin-bottom: 150px;
  }
  body.page-id-44 .home-video__header {
    flex-direction: column;
    align-items: center;
    gap: .5rem;
    padding: 0 2rem;
  }
  body.page-id-44 .home-video__feed {
    margin: -120px auto 0;
    transform: translateY(150px);
  }
}

/* Optional polish */
body.page-id-44 .home-video__feed iframe,
body.page-id-44 .home-video__feed img {
  border-radius: 6px;
  box-shadow: 0 12px 36px rgba(0,0,0,.28);
}

/* Plugin cleanup (remove extra spacing / caps, but no width:auto) */
body.page-id-44 .home-video__feed .sby_header { display: none; }
body.page-id-44 .home-video__feed .sby_items_wrap,
body.page-id-44 .home-video__feed .sby_items {
  margin-top: 0 !important;
  padding-top: 0 !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body .sb_youtube[id^=sb_youtube_],
body.et-db #et-boc .sb_youtube[id^=sb_youtube_] {
  padding-top: 3.5rem !important;
}

body .sb_youtube[id^=sb_youtube_] .sby_footer,
body.et-db #et-boc .sb_youtube[id^=sb_youtube_] .sby_footer {
  visibility: hidden;
}
body .sb_youtube[id^="sb_youtube_"] .sby_items_wrap .sby_inner_item,
body.et-db #et-boc .sb_youtube[id^="sb_youtube_"] .sby_items_wrap .sby_inner_item {
  display: unset !important;
}

/* Keep text aligned with video width */
body.page-id-44 .home-video__header {
  padding: 0 1.5rem;
  box-sizing: border-box;
}
.latest-luxury__heading {
  padding-top: 70px;
}

/* Mobile: slightly less padding */
@media (max-width: 767.98px) {
  body.page-id-44 .home-video__header {
    padding: 0 2rem;
  }
}

body.page-id-44 .home-video .custom-arrow .arrow-icon {
  margin-top: 0 !important;
}

body.page-id-44 .home-video__cta .arrow-icon {
  margin-left: 10px;
}

.sby_play_btn::before {
  content: "";
  display: block;
  width: 145px;
  height: 145px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 640'%3E%3Cpath fill='white' d='M187.2 100.9C174.8 94.1 159.8 94.4 147.6 101.6C135.4 108.8 128 121.9 128 136L128 504C128 518.1 135.5 531.2 147.6 538.4C159.7 545.6 174.8 545.9 187.2 539.1L523.2 355.1C536 348.1 544 334.6 544 320C544 305.4 536 291.9 523.2 284.9L187.2 100.9z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  pointer-events: none;
  opacity: 0.75;
}

/* Hide the default YouTube button and background */
.sby_play_btn svg,
.sby_play_btn_bg {
  display: none !important;
}




  /* ============================================
     Spartan Hospitality Floor & Wall (Post 4406)
     Scope all rules to this page only
  ============================================ */
  body.page-id-4406,
  body.postid-4406 {}

  /* =======================================================
     HERO — full-bleed + single-view + reduced height
     (only affects this page’s hero header)
  ======================================================= */

  /* 1) Remove container caps/padding and break out to viewport edges */
  body.page-id-4406 .hero__slider.container,
  body.page-id-4406 .hero__slider.container--max-width,
  body.page-id-4406 .hero__slider.container--padded,
  body.page-id-4406 .hero.hero_slider.container,
  body.page-id-4406 .hero.hero_slider.container--max-width,
  body.page-id-4406 .hero.hero_slider.container--padded {
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-top: 2rem;
  }

  body.page-id-4406 .hero__slider,
  body.page-id-4406 .hero.hero_slider {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
  }

  body.page-id-4406 main.main {
    overflow: visible !important;
  }

  /* 2) Height control (reduce the hero height) */
  body.page-id-4406 .hero__slider .embed--16by9,
  body.page-id-4406 .hero.hero_slider .embed--16by9 {
    position: relative !important;
    height: clamp(360px, 80vh, 800px) !important;
  }

  body.page-id-4406 .hero__slider .embed--16by9::before,
  body.page-id-4406 .hero.hero_slider .embed--16by9::before {
    content: none !important;
  }

  /* 3) Media fill/crop and tidy picture/img */
  body.page-id-4406 .hero__slider .embed__item,
  body.page-id-4406 .hero.hero_slider .embed__item,
  body.page-id-4406 .hero__slider picture > img,
  body.page-id-4406 .hero.hero_slider picture > img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
  }

  body.page-id-4406 .hero__slider picture,
  body.page-id-4406 .hero__slider img {
    display: block !important;
  }

  body.page-id-4406 .hero__slider img:not(.embed__item) {
    position: relative;
    top: 1rem;
    left: 5rem;
  }
}

/* desktop-only: nudge hero images down a bit on post 4406 */
@media (min-width: 992px) {
  body.page-id-4406 .hero__slider .embed__item,
  body.page-id-4406 .hero.hero_slider .embed__item,
  body.page-id-4406 .hero__slider picture > img,
  body.page-id-4406 .hero.hero_slider picture > img {
    margin-top: 1.3rem;
  }
}

/* keep existing mobile overrides */
@media (max-width: 767px) {
  .page-template-hospitality article.content .hospitalityIntro {
    font-size: 2.0rem;
    padding-top: 2.5rem;
  }
}

@media (max-width: 960px) {
  body.page-id-4406 .slider__prev,
  .slider__next {
    padding: 0 1.4rem;
  }

  body.page-id-4406 .hero__slider img:not(.embed__item) {
    visibility: hidden;
  }
}

/* ===========================
   TEXT AREAS (Design Collab. / general copy)
=========================== */
body.page-id-4406 .home-culture,
body.postid-4406 .home-culture {
  text-align: center;
  padding-top: 3rem;
  padding-bottom: 3rem;
}
body.page-id-4406 .home-culture__title,
body.postid-4406 .home-culture__title {
  font-size: 3.5rem;
  line-height: 1.2;
  font-weight: 700;
  margin: 0 0 1rem;
  color: #2b2b2b;
  padding-bottom: 1rem;
 padding-top: 1rem;
}
body.page-id-4406 .home-culture__copy,
body.postid-4406 .home-culture__copy {
  max-width: 840px;
  margin: 0 auto;
  font-size: 2.2rem;
  line-height: 1.7;
  color: #3b3b3b;
}
@media (max-width: 960px) {
  body.page-id-4406 .home-culture__title,
  body.postid-4406 .home-culture__title { font-size: 3rem !important; }
  body.page-id-4406 .home-culture__copy,
  body.postid-4406 .home-culture__copy { font-size: 1.65rem !important; margin-bottom: -1rem;}
}


/* ===========================
   “Search Our Hospitality Products” header
   — Keep contained and tight above module
=========================== */
body.page-id-4406 .content > .hospitalityIntro:first-child,
body.postid-4406 .content > .hospitalityIntro:first-child {
  width: auto !important;
  max-width: 1200px !important;      /* match global container */
  margin-left: auto !important;
  margin-right: auto !important;
      /* consistent gutters */
  padding-right: 2rem !important;
}
body.page-id-4406 .hospitalityIntro,
body.postid-4406 .hospitalityIntro {
  margin-top: 1.5rem !important;
  margin-bottom: .5rem !important;
}
body.page-id-4406 .hospitalityIntro h2,
body.postid-4406 .hospitalityIntro h2 {
  margin: 0 !important;
  line-height: 1.2;
  margin-top: 1rem;
}
body.page-id-4406 .hospitalityIntro + .section,
body.postid-4406 .hospitalityIntro + .section { margin-top: 0 !important; }
@media (max-width: 991.98px) {
 .text--subhead, .projects--grid .project__title, .section__headline {
    font-size: 2.2rem !important;
    font-weight: 700; }
}

/* ==========================================================================
   Collage Cards — Post 4406 (cleaned & de-duplicated)
   Scope: body.page-id-4406 only. Replace previous collage rules with this.
   ========================================================================== */

/* Base container (visual, centered) */
body.page-id-4406 .collage-cards {
  margin: 0 auto;
  padding: 2rem 0;
  box-sizing: border-box;
  position: relative;
  overflow: visible;
}

/* Inner grid (three columns; tuned ratios you provided) */
body.page-id-4406 .collage-cards__inner {
  max-width: 100%;
  margin: 0 auto;
  position: relative;               /* stacking context for cards */
  display: grid;
  grid-template-columns: 1.3fr 1.2fr 0.8fr;
  align-items: end;
  gap: 1.5rem;
  box-sizing: border-box;
  margin-top: 1.5rem;
  padding-left: 0;
  padding-right: 0;
}

/* Card basics */
body.page-id-4406 .collage-card {
  position: relative;
  overflow: visible;
  display: block;
  aspect-ratio: 16 / 9;
  min-height: 220px;
  border-radius: 2px;
  box-sizing: border-box;
}
body.page-id-4406 .collage-card img {
  width: 100%;
  height: 100%;
  /*! object-fit: cover; */
  display: block;
  border-radius: 2px;
}
@media (min-width: 768px) and (max-width: 991.98px) {
  body.page-id-4406 .collage-card--left {
   transform: translateX(clamp(7rem, -6vw, 2rem)) !important;
  }
  body.page-id-4406 .collage-card--center{
    transform: translateX(clamp(-18rem, -6vw, -10rem)) !important;
  }
}
/* Left card: behind, slightly lower */
body.page-id-4406 .collage-card--left {
  z-index: 1;
  transform: translateY(18px);
  grid-column: 1 / 2;
}

/* Left card desktop tweak */
@media (min-width: 762.1px) {
  body.page-id-4406 .collage-card--left {
    aspect-ratio: 11 / 9;
    min-height: 360px;
  }
}
@media (max-width: 762px) {
  body.page-id-4406 .collage-card--left {
    aspect-ratio: 6 / 7;
    min-height: 350px;
    
  }
    body.page-id-4406 .collage-card--center{
       
    }
}
/* Center card: framed, topmost, overlapping left */
body.page-id-4406 .collage-card--center {
  z-index: 3;
  grid-column: 2 / 3;
  margin-left: -6%;
  margin-right: -6%;
  align-self: center;
  box-shadow: 0 12px 30px rgba(0,0,0,0.12);
  border: 8px solid #fff;
  border-radius: 2px;
  background-clip: padding-box;
  aspect-ratio: 20 / 8.5;
  
}

/* Right card: sits to the right with vertical offset you provided */
body.page-id-4406 .collage-card--right {
  z-index: 2;
  grid-column: 3 / 4;
  transform: translateY(-100px);
    /*! width: 31rem; */
  margin-top: 5rem;
}

/* Right card desktop tweak */
@media (min-width: 992px) {
  body.page-id-4406 .collage-card--right {
    aspect-ratio: 12/ 9;
    min-height: 500px;
  }
}

/* Tablet: slightly reduce overlap & tighten sizing */
@media (min-width: 768px) and (max-width: 991.98px) {
  body.page-id-4406 .collage-cards__inner {
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
    margin-bottom: 2.6rem;
  }
  body.page-id-4406 .collage-card--center {
    margin-left: -3%;
    margin-right: -3%;
    border-width: 10px;
  }
}

/* Mobile: show only left + center in two columns; hide right card */
@media (max-width: 991.98px) {
  body.page-id-4406 .collage-cards__inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem;
    padding: 0 0.75rem;
  }
  body.page-id-4406 .collage-card--right {
    display: none !important;
  }
  body.page-id-4406 .collage-card {
    /*! aspect-ratio: 4 / 3; */
    /*! min-height: 10px; */
  overflow:hidden;
  }
  body.page-id-4406 .collage-card--left {
    transform: none;
      height: 18rem;
  }
 }
@media (max-width: 761px) {
  body.page-id-4406 .collage-card--center {
                     /* stop layout overflow */
    transform: translateX(clamp(-18rem, -6vw, 7rem)); /* keep the overlap */
    z-index: 2;                     /* sit above the first card if needed */
    position: relative;             /* enable z-index stacking */
    object-fit: contain !important;
      margin-left: -40px;
  }
}
/* Accessibility helper (unchanged) */
body.page-id-4406 .sr-only {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* -------------------------
   FULL-BLEED: break the section out of the site container
   (keeps the inner grid centered / constrained)
   Put these AFTER your theme container rules so they override them.
   ------------------------- */

/* Section-level full-bleed (defensive selectors) */
body.page-id-4406 .collage-cards.container,
body.page-id-4406 .collage-cards.container--padded,
body.page-id-4406 .collage-cards.container--max-width,
body.page-id-4406 .collage-cards {
  width: calc(100vw + 2px) !important;   /* +2px guards scrollbar/subpixel gaps */
  max-width: none !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}

/* ------------------------------------------------------------------
   Collage: center overlap & right-card border/align tweaks (desktop)
   Paste at the END of your stylesheet (scoped to page-id-4406)
   ------------------------------------------------------------------ */
@media (min-width: 992px) {
  /* move center framed card further left so it overlaps left image more */
  body.page-id-4406 .collage-card--center {
    margin-left: -20%!important;  /* was -6% — increase negative for stronger overlap */
    margin-right:-20% !important;  /* keep a little intrusion into the right column */
    z-index: 4 !important;         /* ensure it sits above the other cards */
      
  }

  /* make framed card image flush with the white border */
  body.page-id-4406 .collage-card--center img {
    border-radius: 0 !important;
    display: block;
  }

  /* give the right card the same framed look and align vertically */
  body.page-id-4406 .collage-card--right {
    border: 14px solid #fff !important;        /* matching white frame */
    box-shadow: 0 12px 30px rgba(0,0,0,0.12) !important;
    background-clip: padding-box !important;
    border-radius: 2px !important;
    z-index: 2 !important;
  }

  /* make the right card image sit flush inside the new border */
  body.page-id-4406 .collage-card--right img {
    border-radius: 0 !important;
    display: block;
  }
}


/* Desktop: align right card to match center card (post 4406) */
@media (min-width: 992px) {
  body.page-id-4406 .collage-card--right {
    /* move the card down to align with center */
    transform: translateY(18px) !important;

    /* match the center card's sizing so bottoms/visual height align */
    aspect-ratio: 12 / 9.5 !important;
    min-height: 430px !important;

    /* ensure proper stacking and alignment in the grid */
    align-self: center !important;
    z-index: 2 !important;
  }

  /* make sure the image sits flush if you have a border applied */
  body.page-id-4406 .collage-card--right img {
    border-radius: 0 !important;
    display: block;
    height:100%;
  }
}


/* Desktop: align right card to visually match center framed card (post 4406) */
@media (min-width: 992px) {
  /* make sure center stays on top and overlaps correctly */
  body.page-id-4406 .collage-card--center {
    margin-left: -20% !important;
    margin-right: -20% !important;
    z-index: 4 !important;
  }
  @media (min-width: 992px) {
  /* center framed card — ensure image fills the frame and is positioned nicely */
  body.page-id-4406 .collage-card--center img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    box-sizing: border-box !important;
    object-fit: cover !important;
    object-position: center 85% !important; /* change this to taste */
    border-radius: 0 !important;
    position: relative !important; /* valid value instead of the typo */
    align-self: center !important;
  }
}

  /* RIGHT card: match center size + lift slightly so bottoms align */
  body.page-id-4406 .collage-card--right {
    z-index: 3 !important; /* below center but above left */
    align-self: center !important;

    /* visual frame & shadow to match center */
    border: 14px solid #fff !important;
    box-shadow: 0 12px 30px rgba(0,0,0,0.12) !important;
    background-clip: padding-box !important;
    border-radius: 2px !important;

    /* sizing: use same visual aspect/height as center */
    min-height: 300px !important;
    box-sizing: border-box !important; /* include border in sizing */

    /* vertical nudge: negative moves it up; adjust by small steps if needed */
    transform: translateY(-1px) !important;
  }

  body.page-id-4406 .collage-card--right img {
    border-radius: 0 !important;
    height: 100% !important;
    display: block !important;
    object-fit: cover !important;
  }
}

@media (min-width: 768px) and (max-width: 991.98px) {
  body.page-id-4406 .collage-cards__inner {
    /* Remove horizontal padding to let items hit the edge */
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  body.page-id-4406 .collage-card--left {
    grid-column: 1 / 2;
    margin-left: -10rem !important;
    left: 1 !important;
    width: 100% !important;
    max-width: none !important;
    /* Negative margin cancels grid gap on left */
    margin-right: 0 !important;
    /* If you want it absolutely at the edge even if grid gap exists: */
    position: relative;
    left: calc(-1 * 0.5rem); /* If your grid gap is 1rem, use -0.5rem */
    width: calc(100% + 0.5rem);
  }
}


/* =========================================================
   Collage cards — force uniform height for center + right
   Scope: post 4406. Drop this AFTER your existing rules.
   ========================================================= */

@media (min-width: 992px) {
  /* One responsive height for the collage (tweak middle value to taste) */
  body.page-id-4406 {
    --collage-h: clamp(299px, 30vw, 450px);
  }

  /* Ensure the grid aligns by height, not baseline */
  body.page-id-4406 .collage-cards__inner {
    align-items: center !important;
  }

  /* Reset any aspect-ratio constraints so explicit heights win */
  body.page-id-4406 .collage-card {
    aspect-ratio: auto !important;
    height: auto;
  }

  /* Images always fill their card cleanly */
  body.page-id-4406 .collage-card img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
  }

  /* Center card = master height */
  body.page-id-4406 .collage-card--center {
    height: var(--collage-h) !important;
    /* keep your overlap + frame */
    margin-left: -20% !important;
    margin-right: -20% !important;
    z-index: 4 !important;
    border: 14px solid #fff !important;
    box-shadow: 0 12px 30px rgba(0,0,0,0.12) !important;
    background-clip: padding-box !important;
    border-radius: 2px !important;
      margin-top: 5rem !important;
  }

  /* Right card: always match the center height */
  body.page-id-4406 .collage-card--right {
    height: var(--collage-h) !important;     /* ⟵ the key */
  
    z-index: 41 !important;

    /* keep the framed look to match center */
    border: 14px solid #fff !important;
    box-shadow: 0 12px 30px rgba(0,0,0,0.12) !important;
    background-clip: padding-box !important;
    border-radius: 2px !important;
  }

  /* Optional: left card a touch shorter for the staggered feel */
  body.page-id-4406 .collage-card--left {
    height: calc(var(--collage-h) - -150px) !important; /* adjust offset if desired */
    transform: translateY(18px) !important;
    /*! align-self: center !important; */
  }
}

/* Tablet: keep three-up but soften overlaps; still lock heights */
@media (min-width: 768px) and (max-width: 991.98px) {
  body.page-id-4406 { --collage-h: clamp(280px, 42vw, 480px); }
  body.page-id-4406 .collage-card--center,
  body.page-id-4406 .collage-card--right {
    height: calc(var(--collage-h) - 40px);
  }
  body.page-id-4406 .collage-card--left {
    height: calc(var(--collage-h) - -15px) !important;
  }

  body.page-id-4406 .collage-card--center {
    margin-left: -6% !important;
    margin-right: -6% !important;
    border-width: 10px !important;
  }
}

@media (min-width: 768px) and (max-width: 991.98px) {
  body.page-id-4406 .collage-card--left {
   transform: translateX(clamp(7rem, 6vw, 00rem)) !important;
  }
  body.page-id-4406 .collage-card--center{
    transform: translateX(clamp(-15rem, -6vw, -13rem)) !important;
  }
}

/* === Desktop: Make right card flush and keep proportions (fix for Post 4406) === */
@media (min-width: 1200px) {
  body.page-id-4406 .collage-cards__inner {
    grid-template-columns: 1.3fr 1.2fr 1fr !important;
    width: 100vw !important;
    max-width: 100vw !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  body.page-id-4406 .collage-card--right {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    align-self: stretch !important;
    /* Make sure the white frame is included */
    border: 14px solid #fff !important;
    box-shadow: 0 12px 30px rgba(0,0,0,0.12) !important;
    background-clip: padding-box !important;
    border-radius: 2px !important;
  }
  body.page-id-4406 .collage-card--right img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 0 !important;
  }
  /* Keep right card matching center card height at all zooms */
  body.page-id-4406 .collage-card--center,
  body.page-id-4406 .collage-card--right {
    height: var(--collage-h, 560px) !important;
    min-height: var(--collage-h, 560px) !important;
    max-height: var(--collage-h, 560px) !important;
    aspect-ratio: auto !important;
    align-self: center !important;
  }
}
/* ===========================
   PRODUCT GRID — Green overlay pattern
   (Assumes .featured-grid__card / __overlay structure)
=========================== */
body.page-id-4406 .featured-grid,
body.postid-4406 .featured-grid { margin: 0 auto; width: 100%; }

/* Desktop */
body.page-id-4406 .featured-grid__top,
body.postid-4406 .featured-grid__top {
  display: grid; grid-template-columns: 1fr 2fr; gap: 2rem; margin-bottom: 2rem;
}
body.page-id-4406 .featured-grid__bottom,
body.postid-4406 .featured-grid__bottom {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem;
}

/* Card + overlay */
body.page-id-4406 .featured-grid__card,
body.postid-4406 .featured-grid__card {
  background-size: cover; background-position: center;
  position: relative; min-height: 350px; text-decoration: none; color: #fff; overflow: hidden;
}
body.page-id-4406 .featured-grid__overlay,
body.postid-4406 .featured-grid__overlay {
  position: absolute; inset: 0;
  background-color: rgba(168, 222, 0, 0.7);
  padding: 2rem; display: flex; flex-direction: column; justify-content: flex-end;
  width: 100%; height: 100%;
  opacity: 0; transition: opacity .3s ease; pointer-events: none;
  padding-bottom: 5rem;
}
body.page-id-4406 .featured-grid__card:hover .featured-grid__overlay,
body.postid-4406 .featured-grid__card:hover .featured-grid__overlay,
body.page-id-4406 .featured-grid__card:focus-within .featured-grid__overlay,
body.postid-4406 .featured-grid__card:focus-within .featured-grid__overlay {
  opacity: 1; pointer-events: auto;
}
body.page-id-4406 .featured-grid__overlay h3,
body.postid-4406 .featured-grid__overlay h3 { margin-bottom: 2rem; }
body.page-id-4406 .featured-grid__cta,
body.postid-4406 .featured-grid__cta {
  display: inline-block; text-align: right; margin-top: 2rem; font-size: 18px; font-weight: bold;
  border-bottom: 2px solid transparent; transition: border-color .3s ease; padding-bottom: .2rem; align-self: flex-end;
}
body.page-id-4406 .featured-grid__cta:hover,
body.postid-4406 .featured-grid__cta:hover { border-bottom-color: #a8de00; }
body.page-id-4406 .featured-grid__cta .custom-arrow svg,
body.postid-4406 .featured-grid__cta .custom-arrow svg { width: 3rem; /*! margin-top: -6px; */ }
/* Mobile override */
@media (max-width: 767.98px) {
  body.page-id-4406 .featured-grid__cta .custom-arrow svg,
  body.postid-4406 .featured-grid__cta .custom-arrow svg {
    width: 1.1rem;      /* Slightly smaller on mobile */
    margin-top: -5px;   /* Less vertical offset on mobile */
  }
}
/* Responsive grid */
@media (max-width: 960px) {
  body.page-id-4406 .featured-grid__top,
  body.postid-4406 .featured-grid__top,
  body.page-id-4406 .featured-grid__bottom,
  body.postid-4406 .featured-grid__bottom {
    display: flex !important; flex-direction: column !important; gap: 2rem !important;
  }
  body.page-id-4406 .featured-grid__card,
  body.postid-4406 .featured-grid__card { min-height: 180px !important; width: 100% !important; position: relative !important; }
  body.page-id-4406 .featured-grid__overlay,
  body.postid-4406 .featured-grid__overlay {
    position: absolute !important; inset: 0 !important;
    background-color: rgba(168, 222, 0, 0.7) !important;
    padding-top: 17.5rem !important; display: flex !important; flex-direction: column !important; justify-content: flex-end !important;
    opacity: 0 !important; transition: opacity .3s ease !important; pointer-events: none !important;
    margin-bottom: 3rem;
  }
  body.page-id-4406 .featured-grid__card:active .featured-grid__overlay,
  body.postid-4406 .featured-grid__card:active .featured-grid__overlay,
  body.page-id-4406 .featured-grid__card:focus .featured-grid__overlay,
  body.postid-4406 .featured-grid__card:focus .featured-grid__overlay,
  body.page-id-4406 .featured-grid__card:hover .featured-grid__overlay,
  body.postid-4406 .featured-grid__card:hover .featured-grid__overlay {
    opacity: 1 !important; pointer-events: auto !important;
    margin-bottom: 3rem;
  }
  body.page-id-4406 .featured-grid__overlay h3,
  body.postid-4406 .featured-grid__overlay h3 { font-size: 1.4rem !important; margin-bottom: 1rem !important; }
}
/* Mobile override */
@media (max-width: 767.98px) {
  body.page-id-4406 .featured-grid__cta,
  body.postid-4406 .featured-grid__cta {
    font-size: 1.2rem;  /* Or whatever size works best on mobile */
    letter-spacing: 0.01em; /* Optional for legibility */
  }
}

/* ===========================
   OPTIONAL — Story tiles on this page
=========================== */
@media (max-width: 991.98px) {
  body.page-id-4406 .story-card__title,
  body.postid-4406 .story-card__title { font-size: 2.5rem !important; }
}

@media (max-width: 767.98px) {
  body.page-id-4406 p,
  .page-id-4406 .featured-grid p {
    font-size: 1.10rem; /* Adjust as needed for mobile */
    line-height: 1.5;
  }
}

/* =======================================================================================
~ Page Template: Contact
======================================================================================= */

.page-template-contact .gform_wrapper {
  max-width: 850px;
  margin-left: 0;
  margin-right: auto;
  width: 100%;
  padding-left: 0;
  padding-right: 0;
}


.locations-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2rem;
  margin-top: 3rem;
}

.location {
  text-align: left;
}

.location__image {
  width: 100%;
  height: 250px; /* forces square shape with width */
  object-fit: cover;
  border-radius: 0; /* removes curve */
  box-shadow: none; /* remove shadow if needed */
}

.location__title {
  margin-top: 0.75rem;
  font-size: 1.1rem;
  font-weight: 600;
}

.location__info {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-top: 0.25rem;
  font-size: 0.95rem;
  line-height: 1.4;
}
.page-template-find-a-location .location__icon {
  font-size: 1.70rem; 
  color: black;
  line-height: 1;
  margin-top: 2px; /* Fine-tune vertical alignment */
}
.page-template-find-a-location .location__info {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  font-size: inherit;
  line-height: 1.4;
}

.page-template-find-a-location .location__icon {
  color: black;
  font-size: 1.70rem;
  line-height: 1.4;
  padding-top: 0.2rem;
}


/*/* ===========================
   FIND A LOCATION PAGE HERO SLIDER — DESKTOP ONLY
   =========================== */
@media (min-width: 992px) {
  /* 1) Remove container caps/padding and break out to viewport edges */
  body.page-template-find-a-location .hero__slider.container,
  body.page-template-find-a-location .hero__slider.container--max-width,
  body.page-template-find-a-location .hero__slider.container--padded,
  body.page-template-find-a-location .hero.hero_slider.container,
  body.page-template-find-a-location .hero.hero_slider.container--max-width,
  body.page-template-find-a-location .hero.hero_slider.container--padded {
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.page-template-find-a-location .hero__slider,
  body.page-template-find-a-location .hero.hero_slider {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
  }

  body.page-template-find-a-location main.main {
    overflow: visible !important;
  }

  /* 2) Height control */
  body.page-template-find-a-location .hero__slider .embed--16by9,
  body.page-template-find-a-location .hero.hero_slider .embed--16by9 {
    position: relative !important;
    height: clamp(360px, 80vh, 800px) !important;
  }
  body.page-template-find-a-location .hero__slider .embed--16by9::before,
  body.page-template-find-a-location .hero.hero_slider .embed--16by9::before {
    content: none !important;
  }

  /* 3) Media fill/crop */
  body.page-template-find-a-location .hero__slider .embed__item,
  body.page-template-find-a-location .hero.hero_slider .embed__item,
  body.page-template-find-a-location .hero__slider picture > img,
  body.page-template-find-a-location .hero.hero_slider picture > img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
    margin-top: 1.3rem; /* desktop nudge */
  }

  body.page-template-find-a-location .hero__slider picture,
  body.page-template-find-a-location .hero__slider img {
    display: block !important;
  }

  body.page-template-find-a-location .hero__slider img:not(.embed__item) {
    position: relative;
    top: 1rem;
    left: 5rem;
  }

  /* 4) Controls & Navigation */
  body.page-template-find-a-location .slider__arrows {
    display: none !important;
  }

  body.page-template-find-a-location .slider__controls {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 0 40px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    z-index: 5;
    width: 100%;
    pointer-events: none;
  }
  body.page-template-find-a-location .slider__controls > * {
    pointer-events: auto;
  }

  body.page-template-find-a-location .slider__navigation {
    padding: 2.5rem 2rem 0.5rem;
    position: absolute;
    bottom: 0;
    right: 5rem;
  }

  body.page-template-find-a-location .slider__text {
    max-width: 48%;
    text-align: left;
    visibility: hidden;
  }

  body.page-template-find-a-location .slider__indicators {
    display: flex;
    align-items: center;
  }
}

@media (max-width: 991.98px) {
  body.page-template-find-a-location .slider__links-container {
    
  }
 .slider__link {
    text-transform: uppercase;
    font-weight: 600 !important;
    font-size: 1.2rem !important; }
}

@media (max-width: 991.98px) {
  body.page-template-find-a-location .slider__link {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 1.1rem;
    line-height: 2.5;
    max-width: 100%;
  }
}

@media (max-width: 991.98px) {
  body.page-template-find-a-location .icon-right-small::before {
    visibility: hidden;
}}


@media (max-width: 991.98px) {
[class^="icon-"]::before, [class*=" icon-"]::before {
   padding-top: 2rem;
}
}

@media (max-width: 991.98px) {
.page-id-4406 [class^="icon-"]::before, [class*=" icon-"]::before {
   padding-top: 0rem !important;
}
}

@media (max-width: 991.98px) {
.page-id-4406 .icon-right-small::before {
   visibility: hidden;
}}

@media (max-width: 991.98px) {
body.page-id-4406 .home-culture__title,
body.postid-4406 .home-culture__title {
margin-top: -5rem;
}
}

.page-template-contact .contact {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }
  .page-template-contact .contact__info {
    font-size: 2rem; }
    .page-template-contact .contact__info > * {
      margin-bottom: 3.5rem; }

.page-template-contact .hero {
  position: relative; }
  .page-template-contact .hero__image {
    -webkit-filter: grayscale(100%);
            filter: grayscale(100%); }
  .page-template-contact .hero .bubble {
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%);
            transform: translate(-50%);
    padding: 1em;
    font-size: 1.2rem; }

@media (max-width: 991.98px) {
  .page-template-contact .hero .bubble::after {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
    top: 1px; } }

@media (min-width: 992px) {
  .page-template-contact .hero .bubble {
    -webkit-transform: translate(-50%, -100%);
            transform: translate(-50%, -100%); }
    .page-template-contact .hero .bubble__content {
      font-size: 2.2rem;
      padding: 1.14em; } }

@media (min-width: 1200px) {
  .page-template-contact .contact {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; }
    .page-template-contact .contact__info {
      -webkit-box-flex: 0;
          -ms-flex: 0 1 40%;
              flex: 0 1 40%;
      margin-right: 20rem; } }

.page-template-find-a-location .page-header__title {
  display: none !important;


}

.page-template-find-a-location .location__title {
  font-size: inherit;
}

.page-template-find-a-location .location__info {
  font-size: 20px;
}

/* ===========================
     Home Page
  ============================ */

body.page-id-5 .slider img {
  image-rendering: auto;
  image-rendering: crisp-edges;
  image-rendering: -webkit-optimize-contrast;
  -ms-interpolation-mode: nearest-neighbor;
  }

  @media (min-width: 768px) {
  /* ===========================
     Full-width slider container
  ============================ */
  body.page-id-5 .hero__slider.container,
  body.page-id-5 .hero__slider.container.container--max-width {
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* ===========================
     Slider Wrapper & Slides
  ============================ */
  body.page-id-5 .slider {
    position: relative;
    overflow: hidden;
  }

  body.page-id-5 .slider__slides {
    overflow: hidden;
  }

  body.page-id-5 .slider__slides > div {
    padding: 0 !important;
  }

  body.page-id-5 .slider__slide {
    flex: 0 0 100% !important;
    width: 100%;
     }

  /* ===========================
     Embed container
  ============================ */
  body.page-id-5 .embed {
    position: relative;
    display: block;
    width: 100%;
    padding: 0;
    overflow: hidden;
  }

  body.page-id-5 .embed--16by9::before {
    padding-top: 35%;
  }

  /* ===========================
     Image Styling
  ============================ */
  body.page-id-5 .slider__slide picture,
  body.page-id-5 .slider__slide img {
    width: 100%;
    height: auto;
    object-fit: cover;
    display: block;
    max-height: 700px; /* Optional: limit image height without vh */
  }

  /* ===========================
     Controls & Navigation
  ============================ */
  body.page-id-5 .slider__arrows {
    display: none !important;
  }

  body.page-id-5 .slider__controls {
    position: absolute;
    bottom: 0; /* stays anchored to image */
    left: 0;
    right: 0;
    padding: 0 40px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    z-index: 5;
    width: 100%;
    pointer-events: none;
  }

  body.page-id-5 .slider__controls > * {
    pointer-events: auto;
  }

  body.page-id-5 .slider__navigation {
    padding: 2.5rem 2rem 0.5rem;
    position: absolute;
    bottom: 0;
    right: 4rem;
  }

  body.page-id-5 .slider__text {
    max-width: 48%;
    text-align: left;
    visibility: hidden;
  }

  body.page-id-5 .slider__indicators {
    display: flex;
    align-items: center;
  }
}

    
.locations-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2rem;
  margin-top: 3rem;
}

/* Two columns on smaller screens */
@media (max-width: 767px) {
  .locations-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}


@media (max-width: 767px) {
  /* 2-column layout on mobile */
  .page-template-find-a-location .locations-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  /* Square, responsive images */
  .page-template-find-a-location .location__image {
    width: 100%;
    height: auto !important;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: 0;
    box-shadow: none;
  }

  /* Smaller title text */
  .page-template-find-a-location .location__title {
    font-size: 1.3rem;
  }

  /* Smaller address + hours text */
  .page-template-find-a-location .location__info {
    font-size: 1.5rem;
  }

  /* Smaller icons */
  .page-template-find-a-location .location__icon {
    font-size: 1.15rem;
  }
}

@media (max-width: 767px) {
  .page-template-find-a-location .content {
    margin-top: -3rem;
  }
}

.fa-chevron-down::before {
  content: none !important;
  display: none !important;
}
@media (min-width: 768px) {
  .page-template-find-a-location .location {
    margin-bottom: 5rem; /* or adjust as needed */
  }
}

@media (min-width: 768px) and (max-width: 1199.98px) {
  .page-template-find-a-location .locations-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .page-template-find-a-location .location__image img {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    object-fit: cover;
  }
}

@media (min-width: 768px) and (max-width: 991.98px) {
  .page-template-find-a-location .locations-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .page-template-find-a-location .location__image {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    height: auto !important;
  }
}

.page-template-find-a-location .location__info {
  line-height: 1.5;
}

@media (max-width: 768px) {
body.page-id-15 .content {
  margin-bottom: -7rem !important;
    }}

/* Hide page header title on all devices */
body.page-id-15 .page-header:not(.page-header--manual) .page-header__title {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

/* Margin fix for intro heading (applies to all) */
body.page-id-15 .wysiwyg--intro h2:first-of-type {
	margin-top: -70px;
}

/* Tablet and up (≥768px) — apply contact margin fix */
@media (min-width: 768px) {
  .page-template-contact .contact {
    margin-bottom: -70px;
  }

  body {
    font-size: 2.2rem;
  }
}

/* Desktop only (≥992px) — optional header font size override */
@media (min-width: 992px) {
  body.page-id-15 .page-header__body {
    font-size: 2.2rem;
  }
}

@media (min-width: 768px) {
  body.page-id-15 {
    font-size: 2.2rem;
  }
}

@media (max-width: 991.98px) {
  body.page-id-15 .wysiwyg h2 {
    font-size: 2.90rem;
  }

  body.page-id-15 .page-header {
    margin-bottom: 7rem;
  }

  body.page-id-15 .btn--default {
    margin-bottom: 1rem !important;
  }
}


body.page-id-5 .slider__slide {
  object-fit: cover;
}


/* =================================================================================
~ Products
================================================================================= */
.page-template-latest .posts {
  margin-bottom: 10rem; }

.page-template-latest .fwp-load-more {
  display: block;
  margin: auto; }

/**
 * Modules
 */
body[data-aos-duration='50'] [data-aos], [data-aos][data-aos][data-aos-duration='50'] {
  -webkit-transition-duration: 50ms;
          transition-duration: 50ms; }

body[data-aos-delay='50'] [data-aos], [data-aos][data-aos][data-aos-delay='50'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='50'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='50'].aos-animate {
    -webkit-transition-delay: 50ms;
            transition-delay: 50ms; }

body[data-aos-duration='100'] [data-aos], [data-aos][data-aos][data-aos-duration='100'] {
  -webkit-transition-duration: 100ms;
          transition-duration: 100ms; }

body[data-aos-delay='100'] [data-aos], [data-aos][data-aos][data-aos-delay='100'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='100'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='100'].aos-animate {
    -webkit-transition-delay: 100ms;
            transition-delay: 100ms; }

body[data-aos-duration='150'] [data-aos], [data-aos][data-aos][data-aos-duration='150'] {
  -webkit-transition-duration: 150ms;
          transition-duration: 150ms; }

body[data-aos-delay='150'] [data-aos], [data-aos][data-aos][data-aos-delay='150'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='150'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='150'].aos-animate {
    -webkit-transition-delay: 150ms;
            transition-delay: 150ms; }

body[data-aos-duration='200'] [data-aos], [data-aos][data-aos][data-aos-duration='200'] {
  -webkit-transition-duration: 200ms;
          transition-duration: 200ms; }

body[data-aos-delay='200'] [data-aos], [data-aos][data-aos][data-aos-delay='200'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='200'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='200'].aos-animate {
    -webkit-transition-delay: 200ms;
            transition-delay: 200ms; }

body[data-aos-duration='250'] [data-aos], [data-aos][data-aos][data-aos-duration='250'] {
  -webkit-transition-duration: 250ms;
          transition-duration: 250ms; }

body[data-aos-delay='250'] [data-aos], [data-aos][data-aos][data-aos-delay='250'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='250'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='250'].aos-animate {
    -webkit-transition-delay: 250ms;
            transition-delay: 250ms; }

body[data-aos-duration='300'] [data-aos], [data-aos][data-aos][data-aos-duration='300'] {
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms; }

body[data-aos-delay='300'] [data-aos], [data-aos][data-aos][data-aos-delay='300'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='300'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='300'].aos-animate {
    -webkit-transition-delay: 300ms;
            transition-delay: 300ms; }

body[data-aos-duration='350'] [data-aos], [data-aos][data-aos][data-aos-duration='350'] {
  -webkit-transition-duration: 350ms;
          transition-duration: 350ms; }

body[data-aos-delay='350'] [data-aos], [data-aos][data-aos][data-aos-delay='350'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='350'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='350'].aos-animate {
    -webkit-transition-delay: 350ms;
            transition-delay: 350ms; }

body[data-aos-duration='400'] [data-aos], [data-aos][data-aos][data-aos-duration='400'] {
  -webkit-transition-duration: 400ms;
          transition-duration: 400ms; }

body[data-aos-delay='400'] [data-aos], [data-aos][data-aos][data-aos-delay='400'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='400'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='400'].aos-animate {
    -webkit-transition-delay: 400ms;
            transition-delay: 400ms; }

body[data-aos-duration='450'] [data-aos], [data-aos][data-aos][data-aos-duration='450'] {
  -webkit-transition-duration: 450ms;
          transition-duration: 450ms; }

body[data-aos-delay='450'] [data-aos], [data-aos][data-aos][data-aos-delay='450'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='450'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='450'].aos-animate {
    -webkit-transition-delay: 450ms;
            transition-delay: 450ms; }

body[data-aos-duration='500'] [data-aos], [data-aos][data-aos][data-aos-duration='500'] {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms; }

body[data-aos-delay='500'] [data-aos], [data-aos][data-aos][data-aos-delay='500'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='500'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='500'].aos-animate {
    -webkit-transition-delay: 500ms;
            transition-delay: 500ms; }

body[data-aos-duration='550'] [data-aos], [data-aos][data-aos][data-aos-duration='550'] {
  -webkit-transition-duration: 550ms;
          transition-duration: 550ms; }

body[data-aos-delay='550'] [data-aos], [data-aos][data-aos][data-aos-delay='550'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='550'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='550'].aos-animate {
    -webkit-transition-delay: 550ms;
            transition-delay: 550ms; }

body[data-aos-duration='600'] [data-aos], [data-aos][data-aos][data-aos-duration='600'] {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms; }

body[data-aos-delay='600'] [data-aos], [data-aos][data-aos][data-aos-delay='600'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='600'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='600'].aos-animate {
    -webkit-transition-delay: 600ms;
            transition-delay: 600ms; }

body[data-aos-duration='650'] [data-aos], [data-aos][data-aos][data-aos-duration='650'] {
  -webkit-transition-duration: 650ms;
          transition-duration: 650ms; }

body[data-aos-delay='650'] [data-aos], [data-aos][data-aos][data-aos-delay='650'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='650'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='650'].aos-animate {
    -webkit-transition-delay: 650ms;
            transition-delay: 650ms; }

body[data-aos-duration='700'] [data-aos], [data-aos][data-aos][data-aos-duration='700'] {
  -webkit-transition-duration: 700ms;
          transition-duration: 700ms; }

body[data-aos-delay='700'] [data-aos], [data-aos][data-aos][data-aos-delay='700'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='700'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='700'].aos-animate {
    -webkit-transition-delay: 700ms;
            transition-delay: 700ms; }

body[data-aos-duration='750'] [data-aos], [data-aos][data-aos][data-aos-duration='750'] {
  -webkit-transition-duration: 750ms;
          transition-duration: 750ms; }

body[data-aos-delay='750'] [data-aos], [data-aos][data-aos][data-aos-delay='750'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='750'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='750'].aos-animate {
    -webkit-transition-delay: 750ms;
            transition-delay: 750ms; }

body[data-aos-duration='800'] [data-aos], [data-aos][data-aos][data-aos-duration='800'] {
  -webkit-transition-duration: 800ms;
          transition-duration: 800ms; }

body[data-aos-delay='800'] [data-aos], [data-aos][data-aos][data-aos-delay='800'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='800'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='800'].aos-animate {
    -webkit-transition-delay: 800ms;
            transition-delay: 800ms; }

body[data-aos-duration='850'] [data-aos], [data-aos][data-aos][data-aos-duration='850'] {
  -webkit-transition-duration: 850ms;
          transition-duration: 850ms; }

body[data-aos-delay='850'] [data-aos], [data-aos][data-aos][data-aos-delay='850'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='850'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='850'].aos-animate {
    -webkit-transition-delay: 850ms;
            transition-delay: 850ms; }

body[data-aos-duration='900'] [data-aos], [data-aos][data-aos][data-aos-duration='900'] {
  -webkit-transition-duration: 900ms;
          transition-duration: 900ms; }

body[data-aos-delay='900'] [data-aos], [data-aos][data-aos][data-aos-delay='900'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='900'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='900'].aos-animate {
    -webkit-transition-delay: 900ms;
            transition-delay: 900ms; }

body[data-aos-duration='950'] [data-aos], [data-aos][data-aos][data-aos-duration='950'] {
  -webkit-transition-duration: 950ms;
          transition-duration: 950ms; }

body[data-aos-delay='950'] [data-aos], [data-aos][data-aos][data-aos-delay='950'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='950'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='950'].aos-animate {
    -webkit-transition-delay: 950ms;
            transition-delay: 950ms; }

body[data-aos-duration='1000'] [data-aos], [data-aos][data-aos][data-aos-duration='1000'] {
  -webkit-transition-duration: 1000ms;
          transition-duration: 1000ms; }

body[data-aos-delay='1000'] [data-aos], [data-aos][data-aos][data-aos-delay='1000'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1000'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1000'].aos-animate {
    -webkit-transition-delay: 1000ms;
            transition-delay: 1000ms; }

body[data-aos-duration='1050'] [data-aos], [data-aos][data-aos][data-aos-duration='1050'] {
  -webkit-transition-duration: 1050ms;
          transition-duration: 1050ms; }

body[data-aos-delay='1050'] [data-aos], [data-aos][data-aos][data-aos-delay='1050'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1050'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1050'].aos-animate {
    -webkit-transition-delay: 1050ms;
            transition-delay: 1050ms; }

body[data-aos-duration='1100'] [data-aos], [data-aos][data-aos][data-aos-duration='1100'] {
  -webkit-transition-duration: 1100ms;
          transition-duration: 1100ms; }

body[data-aos-delay='1100'] [data-aos], [data-aos][data-aos][data-aos-delay='1100'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1100'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1100'].aos-animate {
    -webkit-transition-delay: 1100ms;
            transition-delay: 1100ms; }

body[data-aos-duration='1150'] [data-aos], [data-aos][data-aos][data-aos-duration='1150'] {
  -webkit-transition-duration: 1150ms;
          transition-duration: 1150ms; }

body[data-aos-delay='1150'] [data-aos], [data-aos][data-aos][data-aos-delay='1150'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1150'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1150'].aos-animate {
    -webkit-transition-delay: 1150ms;
            transition-delay: 1150ms; }

body[data-aos-duration='1200'] [data-aos], [data-aos][data-aos][data-aos-duration='1200'] {
  -webkit-transition-duration: 1200ms;
          transition-duration: 1200ms; }

body[data-aos-delay='1200'] [data-aos], [data-aos][data-aos][data-aos-delay='1200'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1200'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1200'].aos-animate {
    -webkit-transition-delay: 1200ms;
            transition-delay: 1200ms; }

body[data-aos-duration='1250'] [data-aos], [data-aos][data-aos][data-aos-duration='1250'] {
  -webkit-transition-duration: 1250ms;
          transition-duration: 1250ms; }

body[data-aos-delay='1250'] [data-aos], [data-aos][data-aos][data-aos-delay='1250'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1250'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1250'].aos-animate {
    -webkit-transition-delay: 1250ms;
            transition-delay: 1250ms; }

body[data-aos-duration='1300'] [data-aos], [data-aos][data-aos][data-aos-duration='1300'] {
  -webkit-transition-duration: 1300ms;
          transition-duration: 1300ms; }

body[data-aos-delay='1300'] [data-aos], [data-aos][data-aos][data-aos-delay='1300'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1300'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1300'].aos-animate {
    -webkit-transition-delay: 1300ms;
            transition-delay: 1300ms; }

body[data-aos-duration='1350'] [data-aos], [data-aos][data-aos][data-aos-duration='1350'] {
  -webkit-transition-duration: 1350ms;
          transition-duration: 1350ms; }

body[data-aos-delay='1350'] [data-aos], [data-aos][data-aos][data-aos-delay='1350'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1350'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1350'].aos-animate {
    -webkit-transition-delay: 1350ms;
            transition-delay: 1350ms; }

body[data-aos-duration='1400'] [data-aos], [data-aos][data-aos][data-aos-duration='1400'] {
  -webkit-transition-duration: 1400ms;
          transition-duration: 1400ms; }

body[data-aos-delay='1400'] [data-aos], [data-aos][data-aos][data-aos-delay='1400'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1400'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1400'].aos-animate {
    -webkit-transition-delay: 1400ms;
            transition-delay: 1400ms; }

body[data-aos-duration='1450'] [data-aos], [data-aos][data-aos][data-aos-duration='1450'] {
  -webkit-transition-duration: 1450ms;
          transition-duration: 1450ms; }

body[data-aos-delay='1450'] [data-aos], [data-aos][data-aos][data-aos-delay='1450'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1450'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1450'].aos-animate {
    -webkit-transition-delay: 1450ms;
            transition-delay: 1450ms; }

body[data-aos-duration='1500'] [data-aos], [data-aos][data-aos][data-aos-duration='1500'] {
  -webkit-transition-duration: 1500ms;
          transition-duration: 1500ms; }

body[data-aos-delay='1500'] [data-aos], [data-aos][data-aos][data-aos-delay='1500'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1500'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1500'].aos-animate {
    -webkit-transition-delay: 1500ms;
            transition-delay: 1500ms; }

body[data-aos-duration='1550'] [data-aos], [data-aos][data-aos][data-aos-duration='1550'] {
  -webkit-transition-duration: 1550ms;
          transition-duration: 1550ms; }

body[data-aos-delay='1550'] [data-aos], [data-aos][data-aos][data-aos-delay='1550'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1550'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1550'].aos-animate {
    -webkit-transition-delay: 1550ms;
            transition-delay: 1550ms; }

body[data-aos-duration='1600'] [data-aos], [data-aos][data-aos][data-aos-duration='1600'] {
  -webkit-transition-duration: 1600ms;
          transition-duration: 1600ms; }

body[data-aos-delay='1600'] [data-aos], [data-aos][data-aos][data-aos-delay='1600'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1600'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1600'].aos-animate {
    -webkit-transition-delay: 1600ms;
            transition-delay: 1600ms; }

body[data-aos-duration='1650'] [data-aos], [data-aos][data-aos][data-aos-duration='1650'] {
  -webkit-transition-duration: 1650ms;
          transition-duration: 1650ms; }

body[data-aos-delay='1650'] [data-aos], [data-aos][data-aos][data-aos-delay='1650'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1650'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1650'].aos-animate {
    -webkit-transition-delay: 1650ms;
            transition-delay: 1650ms; }

body[data-aos-duration='1700'] [data-aos], [data-aos][data-aos][data-aos-duration='1700'] {
  -webkit-transition-duration: 1700ms;
          transition-duration: 1700ms; }

body[data-aos-delay='1700'] [data-aos], [data-aos][data-aos][data-aos-delay='1700'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1700'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1700'].aos-animate {
    -webkit-transition-delay: 1700ms;
            transition-delay: 1700ms; }

body[data-aos-duration='1750'] [data-aos], [data-aos][data-aos][data-aos-duration='1750'] {
  -webkit-transition-duration: 1750ms;
          transition-duration: 1750ms; }

body[data-aos-delay='1750'] [data-aos], [data-aos][data-aos][data-aos-delay='1750'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1750'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1750'].aos-animate {
    -webkit-transition-delay: 1750ms;
            transition-delay: 1750ms; }

body[data-aos-duration='1800'] [data-aos], [data-aos][data-aos][data-aos-duration='1800'] {
  -webkit-transition-duration: 1800ms;
          transition-duration: 1800ms; }

body[data-aos-delay='1800'] [data-aos], [data-aos][data-aos][data-aos-delay='1800'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1800'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1800'].aos-animate {
    -webkit-transition-delay: 1800ms;
            transition-delay: 1800ms; }

body[data-aos-duration='1850'] [data-aos], [data-aos][data-aos][data-aos-duration='1850'] {
  -webkit-transition-duration: 1850ms;
          transition-duration: 1850ms; }

body[data-aos-delay='1850'] [data-aos], [data-aos][data-aos][data-aos-delay='1850'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1850'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1850'].aos-animate {
    -webkit-transition-delay: 1850ms;
            transition-delay: 1850ms; }

body[data-aos-duration='1900'] [data-aos], [data-aos][data-aos][data-aos-duration='1900'] {
  -webkit-transition-duration: 1900ms;
          transition-duration: 1900ms; }

body[data-aos-delay='1900'] [data-aos], [data-aos][data-aos][data-aos-delay='1900'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1900'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1900'].aos-animate {
    -webkit-transition-delay: 1900ms;
            transition-delay: 1900ms; }

body[data-aos-duration='1950'] [data-aos], [data-aos][data-aos][data-aos-duration='1950'] {
  -webkit-transition-duration: 1950ms;
          transition-duration: 1950ms; }

body[data-aos-delay='1950'] [data-aos], [data-aos][data-aos][data-aos-delay='1950'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='1950'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1950'].aos-animate {
    -webkit-transition-delay: 1950ms;
            transition-delay: 1950ms; }

body[data-aos-duration='2000'] [data-aos], [data-aos][data-aos][data-aos-duration='2000'] {
  -webkit-transition-duration: 2000ms;
          transition-duration: 2000ms; }

body[data-aos-delay='2000'] [data-aos], [data-aos][data-aos][data-aos-delay='2000'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2000'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2000'].aos-animate {
    -webkit-transition-delay: 2000ms;
            transition-delay: 2000ms; }

body[data-aos-duration='2050'] [data-aos], [data-aos][data-aos][data-aos-duration='2050'] {
  -webkit-transition-duration: 2050ms;
          transition-duration: 2050ms; }

body[data-aos-delay='2050'] [data-aos], [data-aos][data-aos][data-aos-delay='2050'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2050'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2050'].aos-animate {
    -webkit-transition-delay: 2050ms;
            transition-delay: 2050ms; }

body[data-aos-duration='2100'] [data-aos], [data-aos][data-aos][data-aos-duration='2100'] {
  -webkit-transition-duration: 2100ms;
          transition-duration: 2100ms; }

body[data-aos-delay='2100'] [data-aos], [data-aos][data-aos][data-aos-delay='2100'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2100'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2100'].aos-animate {
    -webkit-transition-delay: 2100ms;
            transition-delay: 2100ms; }

body[data-aos-duration='2150'] [data-aos], [data-aos][data-aos][data-aos-duration='2150'] {
  -webkit-transition-duration: 2150ms;
          transition-duration: 2150ms; }

body[data-aos-delay='2150'] [data-aos], [data-aos][data-aos][data-aos-delay='2150'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2150'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2150'].aos-animate {
    -webkit-transition-delay: 2150ms;
            transition-delay: 2150ms; }

body[data-aos-duration='2200'] [data-aos], [data-aos][data-aos][data-aos-duration='2200'] {
  -webkit-transition-duration: 2200ms;
          transition-duration: 2200ms; }

body[data-aos-delay='2200'] [data-aos], [data-aos][data-aos][data-aos-delay='2200'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2200'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2200'].aos-animate {
    -webkit-transition-delay: 2200ms;
            transition-delay: 2200ms; }

body[data-aos-duration='2250'] [data-aos], [data-aos][data-aos][data-aos-duration='2250'] {
  -webkit-transition-duration: 2250ms;
          transition-duration: 2250ms; }

body[data-aos-delay='2250'] [data-aos], [data-aos][data-aos][data-aos-delay='2250'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2250'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2250'].aos-animate {
    -webkit-transition-delay: 2250ms;
            transition-delay: 2250ms; }

body[data-aos-duration='2300'] [data-aos], [data-aos][data-aos][data-aos-duration='2300'] {
  -webkit-transition-duration: 2300ms;
          transition-duration: 2300ms; }

body[data-aos-delay='2300'] [data-aos], [data-aos][data-aos][data-aos-delay='2300'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2300'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2300'].aos-animate {
    -webkit-transition-delay: 2300ms;
            transition-delay: 2300ms; }

body[data-aos-duration='2350'] [data-aos], [data-aos][data-aos][data-aos-duration='2350'] {
  -webkit-transition-duration: 2350ms;
          transition-duration: 2350ms; }

body[data-aos-delay='2350'] [data-aos], [data-aos][data-aos][data-aos-delay='2350'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2350'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2350'].aos-animate {
    -webkit-transition-delay: 2350ms;
            transition-delay: 2350ms; }

body[data-aos-duration='2400'] [data-aos], [data-aos][data-aos][data-aos-duration='2400'] {
  -webkit-transition-duration: 2400ms;
          transition-duration: 2400ms; }

body[data-aos-delay='2400'] [data-aos], [data-aos][data-aos][data-aos-delay='2400'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2400'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2400'].aos-animate {
    -webkit-transition-delay: 2400ms;
            transition-delay: 2400ms; }

body[data-aos-duration='2450'] [data-aos], [data-aos][data-aos][data-aos-duration='2450'] {
  -webkit-transition-duration: 2450ms;
          transition-duration: 2450ms; }

body[data-aos-delay='2450'] [data-aos], [data-aos][data-aos][data-aos-delay='2450'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2450'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2450'].aos-animate {
    -webkit-transition-delay: 2450ms;
            transition-delay: 2450ms; }

body[data-aos-duration='2500'] [data-aos], [data-aos][data-aos][data-aos-duration='2500'] {
  -webkit-transition-duration: 2500ms;
          transition-duration: 2500ms; }

body[data-aos-delay='2500'] [data-aos], [data-aos][data-aos][data-aos-delay='2500'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2500'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2500'].aos-animate {
    -webkit-transition-delay: 2500ms;
            transition-delay: 2500ms; }

body[data-aos-duration='2550'] [data-aos], [data-aos][data-aos][data-aos-duration='2550'] {
  -webkit-transition-duration: 2550ms;
          transition-duration: 2550ms; }

body[data-aos-delay='2550'] [data-aos], [data-aos][data-aos][data-aos-delay='2550'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2550'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2550'].aos-animate {
    -webkit-transition-delay: 2550ms;
            transition-delay: 2550ms; }

body[data-aos-duration='2600'] [data-aos], [data-aos][data-aos][data-aos-duration='2600'] {
  -webkit-transition-duration: 2600ms;
          transition-duration: 2600ms; }

body[data-aos-delay='2600'] [data-aos], [data-aos][data-aos][data-aos-delay='2600'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2600'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2600'].aos-animate {
    -webkit-transition-delay: 2600ms;
            transition-delay: 2600ms; }

body[data-aos-duration='2650'] [data-aos], [data-aos][data-aos][data-aos-duration='2650'] {
  -webkit-transition-duration: 2650ms;
          transition-duration: 2650ms; }

body[data-aos-delay='2650'] [data-aos], [data-aos][data-aos][data-aos-delay='2650'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2650'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2650'].aos-animate {
    -webkit-transition-delay: 2650ms;
            transition-delay: 2650ms; }

body[data-aos-duration='2700'] [data-aos], [data-aos][data-aos][data-aos-duration='2700'] {
  -webkit-transition-duration: 2700ms;
          transition-duration: 2700ms; }

body[data-aos-delay='2700'] [data-aos], [data-aos][data-aos][data-aos-delay='2700'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2700'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2700'].aos-animate {
    -webkit-transition-delay: 2700ms;
            transition-delay: 2700ms; }

body[data-aos-duration='2750'] [data-aos], [data-aos][data-aos][data-aos-duration='2750'] {
  -webkit-transition-duration: 2750ms;
          transition-duration: 2750ms; }

body[data-aos-delay='2750'] [data-aos], [data-aos][data-aos][data-aos-delay='2750'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2750'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2750'].aos-animate {
    -webkit-transition-delay: 2750ms;
            transition-delay: 2750ms; }

body[data-aos-duration='2800'] [data-aos], [data-aos][data-aos][data-aos-duration='2800'] {
  -webkit-transition-duration: 2800ms;
          transition-duration: 2800ms; }

body[data-aos-delay='2800'] [data-aos], [data-aos][data-aos][data-aos-delay='2800'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2800'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2800'].aos-animate {
    -webkit-transition-delay: 2800ms;
            transition-delay: 2800ms; }

body[data-aos-duration='2850'] [data-aos], [data-aos][data-aos][data-aos-duration='2850'] {
  -webkit-transition-duration: 2850ms;
          transition-duration: 2850ms; }

body[data-aos-delay='2850'] [data-aos], [data-aos][data-aos][data-aos-delay='2850'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2850'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2850'].aos-animate {
    -webkit-transition-delay: 2850ms;
            transition-delay: 2850ms; }

body[data-aos-duration='2900'] [data-aos], [data-aos][data-aos][data-aos-duration='2900'] {
  -webkit-transition-duration: 2900ms;
          transition-duration: 2900ms; }

body[data-aos-delay='2900'] [data-aos], [data-aos][data-aos][data-aos-delay='2900'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2900'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2900'].aos-animate {
    -webkit-transition-delay: 2900ms;
            transition-delay: 2900ms; }

body[data-aos-duration='2950'] [data-aos], [data-aos][data-aos][data-aos-duration='2950'] {
  -webkit-transition-duration: 2950ms;
          transition-duration: 2950ms; }

body[data-aos-delay='2950'] [data-aos], [data-aos][data-aos][data-aos-delay='2950'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='2950'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2950'].aos-animate {
    -webkit-transition-delay: 2950ms;
            transition-delay: 2950ms; }

body[data-aos-duration='3000'] [data-aos], [data-aos][data-aos][data-aos-duration='3000'] {
  -webkit-transition-duration: 3000ms;
          transition-duration: 3000ms; }

body[data-aos-delay='3000'] [data-aos], [data-aos][data-aos][data-aos-delay='3000'] {
  -webkit-transition-delay: 0;
          transition-delay: 0; }
  body[data-aos-delay='3000'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='3000'].aos-animate {
    -webkit-transition-delay: 3000ms;
            transition-delay: 3000ms; }

body[data-aos-easing="linear"] [data-aos], [data-aos][data-aos][data-aos-easing="linear"] {
  -webkit-transition-timing-function: cubic-bezier(0.25, 0.25, 0.75, 0.75);
          transition-timing-function: cubic-bezier(0.25, 0.25, 0.75, 0.75); }

body[data-aos-easing="ease"] [data-aos], [data-aos][data-aos][data-aos-easing="ease"] {
  -webkit-transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
          transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1); }

body[data-aos-easing="ease-in"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in"] {
  -webkit-transition-timing-function: cubic-bezier(0.42, 0, 1, 1);
          transition-timing-function: cubic-bezier(0.42, 0, 1, 1); }

body[data-aos-easing="ease-out"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-out"] {
  -webkit-transition-timing-function: cubic-bezier(0, 0, 0.58, 1);
          transition-timing-function: cubic-bezier(0, 0, 0.58, 1); }

body[data-aos-easing="ease-in-out"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-out"] {
  -webkit-transition-timing-function: cubic-bezier(0.42, 0, 0.58, 1);
          transition-timing-function: cubic-bezier(0.42, 0, 0.58, 1); }

body[data-aos-easing="ease-in-back"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-back"] {
  -webkit-transition-timing-function: cubic-bezier(0.6, -0.28, 0.735, 0.045);
          transition-timing-function: cubic-bezier(0.6, -0.28, 0.735, 0.045); }

body[data-aos-easing="ease-out-back"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-out-back"] {
  -webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
          transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275); }

body[data-aos-easing="ease-in-out-back"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-out-back"] {
  -webkit-transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
          transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55); }

body[data-aos-easing="ease-in-sine"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-sine"] {
  -webkit-transition-timing-function: cubic-bezier(0.47, 0, 0.745, 0.715);
          transition-timing-function: cubic-bezier(0.47, 0, 0.745, 0.715); }

body[data-aos-easing="ease-out-sine"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-out-sine"] {
  -webkit-transition-timing-function: cubic-bezier(0.39, 0.575, 0.565, 1);
          transition-timing-function: cubic-bezier(0.39, 0.575, 0.565, 1); }

body[data-aos-easing="ease-in-out-sine"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-out-sine"] {
  -webkit-transition-timing-function: cubic-bezier(0.445, 0.05, 0.55, 0.95);
          transition-timing-function: cubic-bezier(0.445, 0.05, 0.55, 0.95); }

body[data-aos-easing="ease-in-quad"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-quad"] {
  -webkit-transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
          transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53); }

body[data-aos-easing="ease-out-quad"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-out-quad"] {
  -webkit-transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
          transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94); }

body[data-aos-easing="ease-in-out-quad"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-out-quad"] {
  -webkit-transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
          transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955); }

body[data-aos-easing="ease-in-cubic"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-cubic"] {
  -webkit-transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
          transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53); }

body[data-aos-easing="ease-out-cubic"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-out-cubic"] {
  -webkit-transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
          transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94); }

body[data-aos-easing="ease-in-out-cubic"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-out-cubic"] {
  -webkit-transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
          transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955); }

body[data-aos-easing="ease-in-quart"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-quart"] {
  -webkit-transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
          transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53); }

body[data-aos-easing="ease-out-quart"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-out-quart"] {
  -webkit-transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
          transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94); }

body[data-aos-easing="ease-in-out-quart"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-out-quart"] {
  -webkit-transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
          transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955); }

/**
 * Fade animations:
 * fade
 * fade-up, fade-down, fade-left, fade-right
 * fade-up-right, fade-up-left, fade-down-right, fade-down-left
 */
[data-aos^='fade'][data-aos^='fade'] {
  opacity: 0;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform; }
  [data-aos^='fade'][data-aos^='fade'].aos-animate {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }

[data-aos='fade-up'] {
  -webkit-transform: translate3d(0, 100px, 0);
          transform: translate3d(0, 100px, 0); }

[data-aos='fade-down'] {
  -webkit-transform: translate3d(0, -100px, 0);
          transform: translate3d(0, -100px, 0); }

[data-aos='fade-right'] {
  -webkit-transform: translate3d(-100px, 0, 0);
          transform: translate3d(-100px, 0, 0); }

[data-aos='fade-left'] {
  -webkit-transform: translate3d(100px, 0, 0);
          transform: translate3d(100px, 0, 0); }

[data-aos='fade-up-right'] {
  -webkit-transform: translate3d(-100px, 100px, 0);
          transform: translate3d(-100px, 100px, 0); }

[data-aos='fade-up-left'] {
  -webkit-transform: translate3d(100px, 100px, 0);
          transform: translate3d(100px, 100px, 0); }

[data-aos='fade-down-right'] {
  -webkit-transform: translate3d(-100px, -100px, 0);
          transform: translate3d(-100px, -100px, 0); }

[data-aos='fade-down-left'] {
  -webkit-transform: translate3d(100px, -100px, 0);
          transform: translate3d(100px, -100px, 0); }

/**
 *Product Callouts
 */
.callout--products .callout__copy--left,
.callout--products .callout__copy--right {
  /*! display: flex; */
  justify-content: space-between;
  align-items: flex-start;
   
}

.callout--products {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  align-content: center;
    
  max-width: 100%;
}
/* Mobile Styles */
@media (max-width: 768px) {
  .callout--products {
    flex-direction: column; /* Stack items vertically on mobile */
    gap: 1.5rem; /* Add or adjust this: Smaller gap for vertical spacing on mobile */
  }

    .callout__copy--left,
  .callout__copy--right {
    width: 100%; /* You already have this too! */
  }
    /* Need to adjust the gap for mobile */
}

.callout__copy--left,
.callout__copy--right {
  width: 100%;
  box-sizing: border-box; /* Add this line here too */
  margin-top: -20px;
   
}

.callout__copy--left p{
  box-sizing: border-box; /* Add this line here too */
  font-size: 120%;
  padding-bottom: 20px;
    margin-top: -11px;
}

.callout__copy--left {
   line-height: 1.3;
       padding-top: 9.3px;
}


/* =================================================================================
~ Product Page Project Image
================================================================================= */

.healthcare-projects--grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-template-rows: auto;
  gap: 24px;
  margin-top: 4px;
  max-width: 96%;
  margin-inline: auto;
}
/* Ensure the image container allows flexible image height */
.healthcare-projects--grid li:nth-child(2),
.healthcare-projects--grid li:nth-child(3) {
  display: flex;
  align-items: flex-end; /* push image content toward the bottom */
  overflow: hidden;
}

.healthcare-projects--grid li:nth-child(2) img,
.healthcare-projects--grid li:nth-child(3) img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}


/* Project cards */
.healthcare-projects--grid li {
  position: relative;
  overflow: hidden;
  border: none !important;
  border-radius: 1.25rem 1.25rem 0 1.25rem;
}

/* Image fill */
.healthcare-projects--grid li img {
  border: none;
  outline: none;
  box-shadow: none;
  display: block;
  object-fit: cover;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  background: transparent;
}

/* Layout tuning */
.healthcare-projects--grid li:nth-child(1) {
  grid-column: 1 / span 6;
}

.healthcare-projects--grid li:nth-child(2) {
  grid-column: 7 / span 6;
}
/* Force uniform height across both grid items */
.healthcare-projects--grid li {
  aspect-ratio: 5 / 3; /* Adjust to fit your desired ratio */
  overflow: hidden;
  display: block;
}

/* Make sure the image fills its container */
.healthcare-projects--grid li img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}



/* Hover green overlay */
.healthcare-projects--grid li::after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(168, 222, 0, 0.8);
  opacity: 0;
  transition: opacity 250ms ease;
  z-index: 1;
  pointer-events: none;
}

.healthcare-projects--grid li:hover::after {
  opacity: 1;
}

/* Overlay text container */
.healthcare-projects--grid .project__overlay-text {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 2rem;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  color: #fff;
  transition: color 0.2s ease;
  pointer-events: none;
 color: transparent;
}

/* Text alignment and color shift on hover */
.healthcare-projects--grid li:hover .project__overlay-text {
  justify-content: center;
  color: #3c4440;
}

/* Scoped Title styling */
.healthcare-projects--grid .project__overlay-text .project__title {
  font-size: 2.3rem;
  font-weight: 600;
  line-height: 1.2;
}

/* Scoped Subtitle styling */
.healthcare-projects--grid .project__overlay-text .project__subtitle {
  font-size: 1.35rem;
  font-weight: 500;
  opacity: 0.9;
  margin-top: 0.25rem;
  display: none;
}

/* Show subtitle + shrink title on hover */
.healthcare-projects--grid li:hover .project__overlay-text .project__title {
  font-size: 2.3rem;
}

.healthcare-projects--grid li:hover .project__overlay-text .project__subtitle {
  display: block;
  opacity: 1;
}

/* Arrow styling */
.project__arrow {
  position: absolute;
  bottom: -1rem;
  right: 0;
  width: 5rem;
  height: 4.1rem;
  background: white;
  border-top-left-radius: 1.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 99;
  pointer-events: none;
  box-shadow: none;
}

.project__arrow svg {
  width: 1.6rem;
  height: 1.6rem;
  stroke: #000;
  stroke-width: 3;
}

/* Title + link layout at top */
.section-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 97%;
  margin: 0 auto 1.5rem auto;
  gap: 1.5rem;
}

.section-header h2 {
  margin: 0;
  font-size: 3.65rem;
  font-weight: 700;
  margin-top: 4rem;
}

.section-header .view-all-link {
  font-size: 1.7rem;
  font-weight: 500;
  text-decoration: none;
  color: #222;
  white-space: nowrap;
  margin-bottom: -65px;
}

.section-header .view-all-link:hover {
  text-decoration: underline;
}

/* Responsive tweaks */
@media (max-width: 768px) {
  .healthcare-projects--grid {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
  }

  .healthcare-projects--grid li {
    grid-column: auto !important;
    grid-row: auto !important;
    aspect-ratio: 16 / 9;
  }

  .section-header {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* Default image styling for all grid items */
.healthcare-projects--grid li img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
=================================================================================
~ Product Section
================================================================================= */

.healthcare-featured-products {
  max-width: 97%;
  margin: 5rem auto 3rem auto;
}

.healthcare-featured-products .section-header {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  margin-bottom: 1.5rem;
}

.healthcare-featured-products .section-header h2 {
  font-size: 3.65rem;
  font-weight: 700;
  margin: 0;
margin-left: -15px;
}

.healthcare-featured-products .view-all-link {
  font-size: 1.8rem;
  font-weight: 500;
  text-decoration: none;
  color: #222;
}

.healthcare-featured-products .view-all-link:hover {
  text-decoration: underline;
}

.featured-product-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 1.5rem;
}

.product-card {
  position: relative;
  overflow: hidden;
  border-radius: 1rem;
  display: block;
  text-decoration: none;
}

.product-card img {
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  display: block;
  border-radius: inherit;
  transition: transform 0.3s ease;
}

.product-card:hover img {
  transform: scale(1.05);
}

.product-label {
  position: absolute;
  bottom: 1rem;
  left: 50%;
  transform: translateX(-50%);
  color: #fff;
  font-size: 1.7rem;
  font-weight: 550;
  text-shadow: 0 2px 5px rgba(0, 0, 0, 0.4);
  pointer-events: none;
  text-align: center;
  white-space: nowrap;
}


/* =========================================================
   Featured Products Grid (Scoped to page-template-hospitality.php)
   ========================================================= */

/* === GRID LAYOUT === */
body.page-template-hospitality .featured-product-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr)); /* 3 per row on desktop */
  gap: 1.5rem;
  align-items: stretch;
  justify-items: center;
  width: 100%;
  margin: 0 auto;
}

/* === TABLET: 2 per row === */
@media (max-width: 1024px) {
  body.page-template-hospitality .featured-product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* === MOBILE: 1 per row === */
@media (max-width: 640px) {
  body.page-template-hospitality .featured-product-grid {
    grid-template-columns: 1fr;
  }
}

/* =========================================================
   PRODUCT CARD STYLING
   ========================================================= */
body.page-template-hospitality .product-card {
  position: relative;
  overflow: hidden;
  border-radius: 0; /* no rounded corners */
  display: block;
  text-decoration: none;
  aspect-ratio: 13 / 10; /* slightly shorter than square */
  width: 100%;
  max-width: 500px; /* optional, limits card width */
  }

body.page-template-hospitality .product-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.3s ease;
 }

body.page-template-hospitality .product-card:hover img {
  transform: scale(1.05);
}

/* =========================================================
   PRODUCT LABEL (Custom Version)
   ========================================================= */
body.page-template-hospitality .product-label {
  position: absolute;
  bottom: 1rem;
  left: 50%;
  transform: translateX(-50%);
  color: #fff;
  font-size: 2.7rem;
  font-weight: 650;
  text-shadow: 0 2px 5px rgba(0, 0, 0, 0.4);
  pointer-events: none;
  text-align: center;
  white-space: nowrap;
}

/* =========================================================
   SECTION HEADER (Centered Heading + “View All” Link)
   ========================================================= */
body.page-template-hospitality .section-header {
  text-align: center;
  display: block;
  margin-bottom: 3.8rem;
    margin-top: 0.6rem;
}

body.page-template-hospitality .section-header h2 {
  font-size: 3.2rem;
  font-weight: 700;
  margin: 0 0 1rem 0;
}

body.page-template-hospitality .section-header .view-all-link {
  display: inline-block;
  margin-top: 0.5rem;
  font-size: 1.8rem;
  font-weight: 500;
  text-decoration: none;
  color: #222;
}

body.page-template-hospitality .section-header .view-all-link:hover {
  text-decoration: underline;
}

/* =========================================================
   RESPONSIVE SPACING & TEXT SCALING
   ========================================================= */
@media (max-width: 768px) {
  body.page-template-hospitality .section-header h2 {
    font-size: 2.4rem;
  }
  body.page-template-hospitality .product-label {
    font-size: 1.8rem;
  }
}

/* Stronger template-scoped heading override */
body.page-template-hospitality .section-header h2,
body.page-template-hospitality h2.section-header-title {
  font-size: 3.5rem !important;
 }


/**
 * Zoom animations:
 * zoom-in, zoom-in-up, zoom-in-down, zoom-in-left, zoom-in-right
 * zoom-out, zoom-out-up, zoom-out-down, zoom-out-left, zoom-out-right
 */
[data-aos^='zoom'][data-aos^='zoom'] {
  opacity: 0;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform; }
  [data-aos^='zoom'][data-aos^='zoom'].aos-animate {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0) scale(1);
            transform: translate3d(0, 0, 0) scale(1); }

[data-aos='zoom-in'] {
  -webkit-transform: scale(0.6);
          transform: scale(0.6); }

[data-aos='zoom-in-up'] {
  -webkit-transform: translate3d(0, 100px, 0) scale(0.6);
          transform: translate3d(0, 100px, 0) scale(0.6); }

[data-aos='zoom-in-down'] {
  -webkit-transform: translate3d(0, -100px, 0) scale(0.6);
          transform: translate3d(0, -100px, 0) scale(0.6); }

[data-aos='zoom-in-right'] {
  -webkit-transform: translate3d(-100px, 0, 0) scale(0.6);
          transform: translate3d(-100px, 0, 0) scale(0.6); }

[data-aos='zoom-in-left'] {
  -webkit-transform: translate3d(100px, 0, 0) scale(0.6);
          transform: translate3d(100px, 0, 0) scale(0.6); }

[data-aos='zoom-out'] {
  -webkit-transform: scale(1.2);
          transform: scale(1.2); }

[data-aos='zoom-out-up'] {
  -webkit-transform: translate3d(0, 100px, 0) scale(1.2);
          transform: translate3d(0, 100px, 0) scale(1.2); }

[data-aos='zoom-out-down'] {
  -webkit-transform: translate3d(0, -100px, 0) scale(1.2);
          transform: translate3d(0, -100px, 0) scale(1.2); }

[data-aos='zoom-out-right'] {
  -webkit-transform: translate3d(-100px, 0, 0) scale(1.2);
          transform: translate3d(-100px, 0, 0) scale(1.2); }

[data-aos='zoom-out-left'] {
  -webkit-transform: translate3d(100px, 0, 0) scale(1.2);
          transform: translate3d(100px, 0, 0) scale(1.2); }

/**
 * Slide animations
 */
[data-aos^='slide'][data-aos^='slide'] {
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform; }
  [data-aos^='slide'][data-aos^='slide'].aos-animate {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }

[data-aos='slide-up'] {
  -webkit-transform: translate3d(0, 100%, 0);
          transform: translate3d(0, 100%, 0); }

[data-aos='slide-down'] {
  -webkit-transform: translate3d(0, -100%, 0);
          transform: translate3d(0, -100%, 0); }

[data-aos='slide-right'] {
  -webkit-transform: translate3d(-100%, 0, 0);
          transform: translate3d(-100%, 0, 0); }

[data-aos='slide-left'] {
  -webkit-transform: translate3d(100%, 0, 0);
          transform: translate3d(100%, 0, 0); }

