/** Shopify CDN: Minification failed

Line 3596:6 Unexpected ")"
Line 3818:24 Comments in CSS use "/* ... */" instead of "//"
Line 4439:52 Comments in CSS use "/* ... */" instead of "//"
Line 4440:32 Comments in CSS use "/* ... */" instead of "//"
Line 4441:35 Comments in CSS use "/* ... */" instead of "//"
Line 4774:48 Comments in CSS use "/* ... */" instead of "//"
Line 4790:22 Comments in CSS use "/* ... */" instead of "//"
Line 4794:22 Comments in CSS use "/* ... */" instead of "//"
Line 4928:46 Comments in CSS use "/* ... */" instead of "//"
Line 10150:39 Comments in CSS use "/* ... */" instead of "//"
... and 1 more hidden warnings

**/
/* SHOPIFY_STYLESHEETS_VERSION: 1.0 */


/* CSS from section stylesheet tags */
/* START_SECTION:519-banner (INDEX:0) */
.banner-519--root.has-bottom-border {
    border-bottom: 1px solid #000;
  }

  .banner-519--wrapper {
    background-color: var(--color-black, #101010);
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2rem 0;
    min-height: 120px;

    @media (max-width: 900px) {
      padding: 20px 0;
      min-height: 80px;
    }
  }

  .banner-519--wrapper .button-519-cta {
    color: var(--color-white);
  }
/* END_SECTION:519-banner */

/* START_SECTION:519-career-listing (INDEX:1) */
.info-listing-519--root {
    width: 100%;
    padding: 0;
  }

  .info-listing-519--root.has-bottom-border {
    border-bottom: 1px solid var(--color-black, #101010);
  }

  .info-listing-519--wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: var(--spacing--block-padding);
    padding: var(--spacing--block-padding);
    padding-bottom: calc(var(--spacing--block-padding) + 1rem);
  }

  .info-listing-519--content {
    max-width: 65ch;
    flex: 1 1 auto;
    min-width: min(100%, 65ch);
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
  }

  .info-listing-519--title {
    color: var(--color-dark-green, #085204);
  }

  .info-listing-519--location {
    color: var(--color--body);
  }

  .info-listing-519--description {
    color: var(--color--body);
  }

  .info-listing-519--cta {
    flex-shrink: 0;
    display: flex;
    align-items: center;
  }

  .info-listing-519--cta .button-519-cta {
    color: var(--color-dark-green, #085204);
  }
/* END_SECTION:519-career-listing */

/* START_SECTION:519-carousel (INDEX:2) */
.carousel-519--root {
    width: 100%;
    padding: 0;
  }

  .carousel-519--root.has-bottom-border {
    border-bottom: 1px solid var(--color-black, #101010);
  }

  .carousel-519--component {
    padding: 0;
    display: block;
    width: 100%;
    overflow: hidden;
  }

  .carousel-519--viewport {
    width: 100%;
  }

  .carousel-519--track {
    min-height: clamp(25rem, 17.3295rem + 34.0909vw, 43.75rem);
  }

  /* Editor mode: scroll-based layout, no transform, no auto-advance */
  .carousel-519--root[data-design-mode="true"] .carousel-519--viewport {
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
  }

  .carousel-519--root[data-design-mode="true"] .carousel-519--track {
    display: flex;
    flex-direction: row;
    gap: 0;
    width: auto;
    transition: none;
    transform: none;
  }

  .carousel-519--root[data-design-mode="true"] .carousel-519--clone {
    display: none;
  }

  .carousel-519--root[data-design-mode="true"] .carousel-519--slide {
    flex-shrink: 0;
    scroll-snap-align: center;
    scroll-snap-stop: always;
  }

  .carousel-519--root[data-design-mode="true"] .carousel-519--component {
    overflow: visible;
  }

  @media (max-width: 899px) {
    .carousel-519--root[data-design-mode="true"] .carousel-519--slide {
      width: 90%;
    }
  }

  @media (min-width: 900px) {
    .carousel-519--root[data-design-mode="true"] .carousel-519--slide {
      width: 50%;
    }
  }

  /* Mobile: scroll-snap, 90% slide width, hidden scrollbar */
  @media (max-width: 899px) {
    .carousel-519--viewport {
      overflow-x: auto;
      overflow-y: hidden;
      scroll-snap-type: x mandatory;
      -webkit-overflow-scrolling: touch;
      scrollbar-width: none;
      -ms-overflow-style: none;
    }

    .carousel-519--viewport::-webkit-scrollbar {
      display: none;
    }

    .carousel-519--track {
      display: flex;
      flex-direction: row;
      gap: 0;
      width: auto;
      max-width: 100%;
    }

    .carousel-519--slide {
      flex-shrink: 0;
      width: 90%;
      scroll-snap-align: start;
      scroll-snap-stop: always;
      position: relative;

      &::after {
        content: "";
        position: absolute;
        width: 100%;
        height: 1px;
        background-color: var(--color-black, #101010);
        bottom: 0;
        left: 0;
        pointer-events: none;
        z-index: 1;
      }
    }

    .carousel-519--block {
      width: 100%;
      min-height: 200px;
    }
  }

  /* Desktop: 50% slide width, transform-based sliding */
  @media (min-width: 900px) {
    .carousel-519--viewport {
      overflow: hidden;
      position: relative;
    }

    .carousel-519--track {
      display: flex;
      flex-direction: row;
      gap: 0;
      transition: transform 0.5s ease-in-out;
    }

    .carousel-519--track[data-transition="none"] {
      transition: none;
    }

    .carousel-519--slide {
      flex-shrink: 0;
      width: var(--slide-width, 50%);
      position: relative;

      &::after {
        content: "";
        position: absolute;
        right: 0;
        top: 0;
        bottom: 0;
        width: 1px;
        background-color: var(--color-black, #101010);
        pointer-events: none;
      }
    }

    .carousel-519--block {
      width: 100%;
      height: 100%;
    }

    .carousel-519--block[data-block-type="image"] {
      position: relative;
      width: 100%;
      /* aspect-ratio: 2 / 1; */
    }

    .carousel-519--block[data-block-type="image"] img {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
    }

    .carousel-519--block .promo-card-519--root {
      min-height: clamp(25rem, 17.3295rem + 17vw, 35rem);
    }
  }
/* END_SECTION:519-carousel */

/* START_SECTION:519-contact (INDEX:3) */
.section--519-contact{ 
    /* height: 100%;  */
  }
  .contact-519--root {
    /* width: 100%; */
    height: auto;
    padding: 0;
  }

  .contact-519--root.has-bottom-border {
    border: 1px solid var(--color-black, #101010);
  }

  .contact-519--wrapper {
    /* width: 100%; */
    height: auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
    @media (max-width: 900px) {
      grid-template-columns: 1fr;
    }
  }

  .contact-519--image-column {
    width: 100%;
    height: 100%;
    position: relative;
    &::after {
      content: "";
      position: absolute;
      right: 0;
      top: 0;
      bottom: 0;
      width: 1px;
      background-color: #000;
      pointer-events: none;
    }
    & img,
    & .placeholder--root {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
      display: block;
    }
    @media (max-width: 900px) {
      &::after {
        width: 100%;
        height: 1px;
        top: auto;
        bottom: 0;
        left: 0;
      }
      & img,
      & .placeholder--root {
        position: relative;
        aspect-ratio: 2 / 1;
        height: auto;
      }
    }
  }

  .contact-519--content-column {
    width: 100%;
    display: flex;
    flex-direction: column;
  }

  /* Info blocks 50/50 grid - like restaurant-info content-links */
  .contact-519--info-blocks {
    display: grid;
    grid-template-columns: 1fr 1fr;
    border-bottom: 1px solid var(--color-black, #101010);
     & > *:first-child {
      border-right: 1px solid var(--color-black, #101010);
    }
    @media (max-width: 400px) {
      grid-template-columns: 1fr;
       & > *:first-child {
        border-right: none;
        border-bottom: 1px solid var(--color-black, #101010);
      }
    }
  }

  .contact-519--info-block {
    padding: var(--spacing--block-padding);
    display: flex;
    flex-direction: column;
    gap: 1rem;
  }

  .contact-519--info-block-heading {
    color: var(--color-dark-green, #085204);
  }

  .contact-519--info-block-content {
    color: inherit;
  }

  .contact-519--info-block-content a {
    color: var(--color-dark-green, #085204);
  }

  /* Contact blocks grid */
  .contact-519--contact-blocks-wrapper {
    border-bottom: 1px solid var(--color-black, #101010);
  }

  .contact-519--contact-blocks {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding-block: 48px;
    gap: 10px;
    width: fit-content;
    margin: 0 auto;
  }

  .contact-519--contact-block {
    display: grid;
    grid-template-columns: 1fr 1fr;
    width: 100%;
    justify-items: space-between;
    align-items: baseline;
    gap: 1.25rem;
  }

  .contact-519--contact-block-title {
    text-transform: uppercase;
    font-weight: 600;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    color: inherit;
  }

  .contact-519--contact-block-email {
    color: var(--color-dark-green, #085204);
    text-decoration: none;
  }

  .contact-519--contact-block-email:hover {
    text-decoration: underline;
  }

  /* Contact form area */
  /* .contact-519--form-wrapper {
    flex: 1;
    border-top: none;
  } */
/* END_SECTION:519-contact */

/* START_SECTION:519-editorial-page-grid (INDEX:4) */
.editorial-grid-519--show-more-wrapper[aria-hidden="true"] {
    display: none;
  }
  .editorial-grid-519--root {
    padding: 0;
  }
  .editorial-grid-519--grid .editorial-grid-519--card-wrapper.editorial-grid-519--card-hidden {
    display: none;
  }
  .editorial-grid-519--grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0;
    border: 1px solid var(--color-black, #101010);
    border-bottom: none;
    align-items: stretch;
  }

  .editorial-grid-519--grid > :nth-child(odd) {
    border-right: 1px solid var(--color-black, #101010);
  }
  .editorial-grid-519--card-wrapper{
    border-bottom: 1px solid var(--color-black, #101010);
  }

  @media (max-width: 899px) {
    .editorial-grid-519--grid {
      grid-template-columns: 1fr;
    }
  }
  .editorial-grid-519--grid .editorial-grid-519--card-wrapper.editorial-grid-519--load-more {
    opacity: 0;
    animation: editorial-grid-519-fade-in 0.5s ease-out forwards;
  }
  @keyframes editorial-grid-519-fade-in {
    to {
      opacity: 1;
    }
  }
  .editorial-grid-519--show-more-wrapper {
    display: block;
    width: 100%;
  }
  .editorial-grid-519--show-more {
    width: 100%;
    display: block;
    background-color: var(--color-black, #101010);
    border: none;
    border-bottom: 1px solid var(--color-black, #101010);
    color: var(--color-white, #FCFCFC);
    padding: calc(var(--spacing--block-padding) - 10px) var(--spacing--block-padding);
    cursor: pointer;
    text-transform: uppercase;
    height: fit-content;
    text-box: cap alphabetic;
    transition: background-color 0.3s ease-out, border-bottom 0.3s ease-out;
  }
  .editorial-grid-519--show-more:hover,
  .editorial-grid-519--show-more:focus-visible {
    background-color: var(--color-dark-green, #085204);
    border-bottom: 1px solid var(--color-white, #FCFCFC);
  }
  .editorial-grid-519--show-more > *:before {
    display: none;
  }
  .editorial-grid-519--placeholder .editorial-grid-519--placeholder-content {
    padding: var(--spacing--block-padding);
  }
  .editorial-grid-519--placeholder .editorial-grid-519--placeholder-content h2 {
    color: var(--color-dark-green, #085204);
    margin-bottom: 0.5rem;
  }
/* END_SECTION:519-editorial-page-grid */

/* START_SECTION:519-fifty-fifty (INDEX:5) */
.fifty-fifty-519--root {
    width: 100%;
    padding: 0;
  }

  .fifty-fifty-519--root.has-bottom-border {
    border-bottom: 1px solid #000;
  }

  .fifty-fifty-519--wrapper {
    width: 100%;
    height: auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
    @media (max-width: 900px) {
      grid-template-columns: 1fr;
    }
  }

  .fifty-fifty-519--wrapper.has-min-height {
    min-height: var(--min-height);
    align-items: stretch;
  }

  .fifty-fifty-519--wrapper.both-store-info {
  @media (max-width: 450px) {
    grid-template-columns: 1fr;
  }
  @media (min-width: 451px) {
    grid-template-columns: 1fr 1fr;
  }
}

.fifty-fifty-519--wrapper.reverse-stack-mobile {
@media (max-width: 900px) {
  .fifty-fifty-519--column:first-child {
    order: 2;
  }
  .fifty-fifty-519--column:last-child {
    order: 1;
  }
}
}

.fifty-fifty-519--wrapper.reverse-stack-mobile.both-store-info {
@media (max-width: 450px) {
  .fifty-fifty-519--column:first-child {
    order: 2;
  }
  .fifty-fifty-519--column:last-child {
    order: 1;
  }
}
@media (min-width: 451px) {
  .fifty-fifty-519--column:first-child {
    order: initial;
  }
  .fifty-fifty-519--column:last-child {
    order: initial;
  }
}
}

.fifty-fifty-519--column {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  position: relative;
   &:first-child {
    position: relative;
    &::after {
      content: "";
      position: absolute;
      right: 0;
      top: 0;
      bottom: 0;
      width: 1px;
      background-color: #000;
      pointer-events: none;
    }
    @media (max-width: 900px) {
      &::after {
        width: 100%;
        height: 1px;
        background-color: #000;
        position: absolute;
        top: auto;
        bottom: 0;
        left: 0;
      }
    }
  }
}

.fifty-fifty-519--wrapper.both-store-info {
  .fifty-fifty-519--column:first-child {
  @media (max-width: 450px) {
    &::after {
      width: 100%;
      height: 1px;
      background-color: #000;
      position: absolute;
      top: auto;
      bottom: 0;
      left: 0;
    }
  }
  @media (min-width: 451px) {
    &::after {
      width: 1px;
      height: 100%;
      top: 0;
      bottom: auto;
      right: 0;
      left: auto;
    }
  }
}
}

/* Border logic for "reverse stack" option */
.fifty-fifty-519--wrapper.reverse-stack-mobile {
@media (max-width: 900px) {
  .fifty-fifty-519--column:first-child {
    &::after {
      display: none;
    }
  }
  .fifty-fifty-519--column:last-child {
    &::after {
      content: "";
      position: absolute;
      width: 100%;
      height: 1px;
      background-color: #000;
      top: auto;
      bottom: 0;
      left: 0;
      pointer-events: none;
    }
  }
}
}

/* Border logic for "reverse stack" with "both store info" */
.fifty-fifty-519--wrapper.reverse-stack-mobile.both-store-info {
@media (max-width: 450px) {
  .fifty-fifty-519--column:first-child {
    &::after {
      display: none;
    }
  }
  .fifty-fifty-519--column:last-child {
    &::after {
      content: "";
      position: absolute;
      width: 100%;
      height: 1px;
      background-color: #000;
      top: auto;
      bottom: 0;
      left: 0;
      pointer-events: none;
    }
  }
}
@media (min-width: 451px) {
  .fifty-fifty-519--column:first-child {
    &::after {
      display: block;
      width: 1px;
      height: 100%;
      top: 0;
      bottom: auto;
      right: 0;
      left: auto;
    }
  }
  .fifty-fifty-519--column:last-child {
    &::after {
      display: none;
    }
  }
}
}

.fifty-fifty-519--block[data-block-type="image"] {
  inset: 0;
  width: 100%;
  height: 100%;
  position: relative;

  img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    object-position: center;
  }

}

@media (max-width: 900px) {
  .fifty-fifty-519--block[data-block-type="image"] {
    object-fit: cover;
    height: auto;
    aspect-ratio: 2 / 1;
  }
}


.fifty-fifty-519--column,
.section-blocks--root,
.section-blocks--wrapper {
  height: 100%;
  width: 100%;
}

.fifty-fifty-519--column .fifty-fifty-519--block,
.fifty-fifty-519--column .section-blocks--root {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.fifty-fifty-519--column .section-blocks--wrapper {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.fifty-fifty-519--column .text-block-519--link,
.fifty-fifty-519--column .event-block-519--link,
.fifty-fifty-519--column .editorial-card-519--link,
.fifty-fifty-519--column .stacked-feature-card-519--link,
.fifty-fifty-519--column .faq-519--content a {
  color: var(--color-dark-green, #085204);
}

.fifty-fifty-519--feature-stack-column {
  display: block;
  height: auto;
  position: relative;
  /* override column height: 100% so stacked cards size to content */
}

.fifty-fifty-519--feature-stack {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
}

.fifty-fifty-519--feature-stack > * {
  min-height: 200px;
  flex-grow: 1;
}

.fifty-fifty-519--feature-stack:has(.stacked-feature-card-519--root) {
  min-height: 550px;
}

.fifty-fifty-519--feature-stack > *:not(:last-child) {
  border-bottom: 1px solid #000;
}
/* END_SECTION:519-fifty-fifty */

/* START_SECTION:519-footer (INDEX:6) */
.footer-519--root {
    width: 100%;
    background-color: var(--color-dark-green, #085204);
    color: var(--color-white, #fcfcfc);
    display: flex;
    flex-direction: column;
    padding: 0;
  }

  .footer-519--root.has-bottom-border {
    border-bottom: 1px solid #000;
  }

  .footer-519--grid {
    width: 100%;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-rows: 1fr;
    grid-template-areas: "main-footer-content newsletter";
    align-items: start;
    container-type: inline-size;
  }

  /* Main Footer Content (logo + menus) */
  .main-footer-content {
    display: grid;
    height: 100%;
    grid-template-columns: minmax(160px, 1fr) repeat(auto-fit, minmax(150px, 1fr));
    grid-template-rows: 1fr;
    grid-template-areas: "logo menu1 menu2 menu3 menu4 menu5";
    align-items: start;
  }

  /* Logo */
  .footer-519--logo {
    display: flex;
    align-items: center;
    justify-content: center;
    padding-inline: var(--spacing--block-padding);
    position: relative;
    height: 100%;

    img {
      height: 100%;
      width: 100%;
      object-fit: contain;
      object-position: center;
    }
  }

  .footer-519--logo::after {
    content: '';
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 1px;
    background-color: var(--color-grey, #E0E0E0);
    z-index: 1;
  }

  .footer-519--menu {
    padding-top: var(--spacing--block-padding);
    padding-right: calc(var(--spacing--block-padding) - 1rem);
  }
  @media (min-width: 1030px) {
    .footer-519--menu:first-of-type {
      padding-left: var(--spacing--block-padding);
    }
  }


  .footer-519--menu-header {
    font-weight: 600;
    letter-spacing: 1.44px;
    color: var(--color-white, #fcfcfc);
    margin-bottom: 0.5rem;
  }

  .footer-519--menu-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
  }

  .footer-519--menu-link {
    color: var(--color-white, #fcfcfc);
    text-decoration: none;
    transition: opacity 0.2s ease;
    font-family: var(--font--paragraph--family);
    font-size: 14px;
    font-weight: 300;
    line-height: 18px;
    text-decoration: underline;
    text-transform: capitalize;
    text-decoration-color: transparent;
    padding: 0;
    text-underline-offset: 0;
    transition: text-decoration 200ms ease-out
    , text-underline-offset 200ms ease-out;

     &:hover,
     &:focus-visible {
      text-decoration: underline;
      text-underline-offset: 0.3ex;
      text-decoration-color: inherit;
    }

     &:focus-visible {
      outline: 1px solid var(--color-white, #fcfcfc);
      outline-offset: 2px;
    }
  }

  /* Newsletter */
  .footer-519--newsletter {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    min-width: 200px;
    padding: var(--spacing--block-padding);
    position: relative;
    grid-area: newsletter;
  }

  .footer-519--newsletter::after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 1px;
    background-color: var(--color-grey, #E0E0E0);
  }

  .footer-519--newsletter-heading {
    margin: 0;
    font-weight: 600;
    letter-spacing: 1.44px;
    text-transform: uppercase;
    color: var(--color-white, #fcfcfc);
  }

  .footer-519--form {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
  }

  .footer-519--form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem;
  }

  .footer-519--input-wrapper {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
  }

  .footer-519--input {
    width: 100%;
    padding: 0.5rem 0;
    background: transparent;
    border: none;
    border-bottom: 1px solid var(--color-white, #fcfcfc);
    color: var(--color-white, #fcfcfc);
    font-family: var(--font--paragraph--family);
    font-size: 14px;
    font-weight: 300;
    line-height: 18px;

    &::placeholder {
      color: rgba(255, 255, 255, 0.6);
    }

     &:focus {
      outline: none;
      border-bottom-color: var(--color-white, #fcfcfc);
    }
  }

  .footer-519--input-label {
    font-family: var(--font--paragraph--family);
    font-size: 14px;
    font-weight: 300;
    line-height: 18px;
    color: var(--color-white, #fcfcfc);
  }

  .footer-519--form .button-519-cta {
    color: var(--color-white, #fcfcfc);
  }

  /* Shopify Forms app - CSS variable overrides for 519 styling */
  #form-container-ref div[data-sizing="form-wrapper"] form input {
    --forms-base-font-size: 14px;
    --forms-heading-font-size: 14px;
    --forms-body-font: 300 14px / 18px var(--font--paragraph--family);
    --forms-heading-font: 600 14px / 18px var(--font--paragraph--family);
    --body-text-color: #fcfcfc;
    --heading-text-color: #fcfcfc;
    --form-text-color: #fcfcfc;
    --form-placeholder-color: rgba(255, 255, 255, 0.6);
    --form-background-color: transparent;
    --button-text-color: #fcfcfc;
    --button-background-color: #202020;
    --forms-accent-color: #fcfcfc;
    --forms-discount-code-color: #fcfcfc;
    --link-text-color: #fcfcfc;
    --form-field-border: 0 1px 0 0 #fcfcfc;
    --form-field-border-focused: 0 0 0 2px #fcfcfc;
  }

  /* Copyright Bar */
  .footer-519--copyright-bar {
    width: 100%;
    margin: 0 auto;
    display: flex;
    padding: var(--spacing--block-padding);
    justify-content: space-between;
    align-items: center;
    border-top: 1px solid var(--color-grey, #E0E0E0);
  }

  .footer-519--copyright,
  .footer-519--credit {
    margin: 0;
    color: var(--color-white, #fcfcfc);
    font-family: var(--font--paragraph--family);
    font-size: 14px;
    font-weight: 300;
    line-height: 18px;
  }

  @media (max-width: 1200px) {
    .main-footer-content {
      grid-template-columns: 1.5fr 1fr 1fr 1fr;
      grid-template-areas: "logo menu1 menu2 menu3" "logo menu4 menu5 menu6";
      & .footer-519--menu{
        padding: var(--spacing--block-padding)  calc(var(--spacing--block-padding) - 0.5rem);
      }
    }
    .footer-519--newsletter {
      height: 100%;
    }

  }

  @container(max-width: 900px) {
    .main-footer-content {
      grid-template-columns: 1fr 1fr;
      grid-template-areas: "menu1 menu2" "menu3 menu4" "logo menu5";
      gap: var(--spacing--block-padding);
      padding: var(--spacing--block-padding);
    }
    .footer-519--logo {
      padding: 0;
    }
    .footer-519--menu {
      padding: 0;
    }
    .footer-519--newsletter {
      height: 100%;
    }
  }


  @media (max-width: 900px) {
    .footer-519--grid {
      grid-template-columns: 1fr;
      grid-template-areas: "newsletter" "main-footer-content";
    }

    .main-footer-content {
      position: relative;
    }
    .main-footer-content:after {
      content: '';
      position: absolute;
      left: 50%;
      transform: translateX(-50%);
      top: 0;
      bottom: 0;
      width: 1px;
      background-color: var(--color-grey, #E0E0E0);
    }

    .footer-519--newsletter {
      width: 100%;
      min-width: unset;
      border-bottom: 1px solid var(--color-grey, #E0E0E0);
    }

    .footer-519--newsletter::after,
    .footer-519--logo::after {
      display: none;
    }

    .footer-519--menu {
      padding: var(--spacing--block-padding);
    }

    .footer-519--logo {
      justify-content: center;
      text-align: center;

      img {
        max-width: 120px;
      }
    }

    .footer-519--copyright-bar {
      flex-wrap: wrap;
      gap: 0.5rem;
    }
  }
/* END_SECTION:519-footer */

/* START_SECTION:519-hero (INDEX:7) */
.hero-519--root.has-bottom-border {
    border-bottom: 1px solid #000;
  }

  .hero-519--wrapper {
    width: 100%;
    overflow: hidden;
    position: relative;
    min-height: 400px;
    height:  clamp(25rem, 19.8864rem + 22.7273vw, 37.5rem);
    max-height: 650px;
    height: clamp(400px, 100dvh, 800px);
  }

  .hero-519--background-image,
  .hero-519--background-video {
    width: 100%;
    height: 100%;
    object-fit: fill;
    position: absolute;
    inset: 0;
    z-index: 0;
    object-position: center;
    &::after {
      content: '';
      position: absolute;
      inset: 0;
      background-color: #00000066;
      transition: opacity 0.3s ease;
    }
    video{
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
    }
  }

  .hero-519--root[data-image-overlay="dark"] .hero-519--background-image::after,
  .hero-519--root[data-image-overlay="dark"] .hero-519--background-video::after {
    opacity: var(--image-overlay--dark);
  }
  .hero-519--root[data-image-overlay="medium"] .hero-519--background-image::after,
  .hero-519--root[data-image-overlay="medium"] .hero-519--background-video::after {
    opacity: var(--image-overlay--medium);
  }
  .hero-519--root[data-image-overlay="light"] .hero-519--background-image::after,
  .hero-519--root[data-image-overlay="light"] .hero-519--background-video::after {
    opacity: var(--image-overlay--light);
  }
  .hero-519--background-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease-out;
  }

  .hero-519--content {
    position: absolute;
    inset: 0;
    padding: var(--spacing--block-padding);
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    text-align: left;
    color: var(--color-white);

    &[data-vertical-alignment="top"] {
      justify-content: flex-start;
    }

    &[data-vertical-alignment="center"] {
      justify-content: center;
    }

    &[data-vertical-alignment="bottom"] {
      justify-content: flex-end;
    }
  }

  a.hero-519--root:hover .hero-519--background-image,
  a.hero-519--root:focus-visible .hero-519--background-image,
  a.hero-519--root:focus-within .hero-519--background-image {
    img {
      transform: scale(1.05);
    }
  }
  a.hero-519--root[data-image-overlay="dark"]:hover .hero-519--background-image::after,
  a.hero-519--root[data-image-overlay="dark"]:focus-visible .hero-519--background-image::after,
  a.hero-519--root[data-image-overlay="dark"]:focus-within .hero-519--background-image::after,
  a.hero-519--root[data-image-overlay="dark"]:hover .hero-519--background-video::after,
  a.hero-519--root[data-image-overlay="dark"]:focus-visible .hero-519--background-video::after,
  a.hero-519--root[data-image-overlay="dark"]:focus-within .hero-519--background-video::after {
    opacity: var(--image-overlay--dark-hover);
  }
  a.hero-519--root[data-image-overlay="medium"]:hover .hero-519--background-image::after,
  a.hero-519--root[data-image-overlay="medium"]:focus-visible .hero-519--background-image::after,
  a.hero-519--root[data-image-overlay="medium"]:focus-within .hero-519--background-image::after,
  a.hero-519--root[data-image-overlay="medium"]:hover .hero-519--background-video::after,
  a.hero-519--root[data-image-overlay="medium"]:focus-visible .hero-519--background-video::after,
  a.hero-519--root[data-image-overlay="medium"]:focus-within .hero-519--background-video::after {
    opacity: var(--image-overlay--medium-hover);
  }
  a.hero-519--root[data-image-overlay="light"]:hover .hero-519--background-image::after,
  a.hero-519--root[data-image-overlay="light"]:focus-visible .hero-519--background-image::after,
  a.hero-519--root[data-image-overlay="light"]:focus-within .hero-519--background-image::after,
  a.hero-519--root[data-image-overlay="light"]:hover .hero-519--background-video::after,
  a.hero-519--root[data-image-overlay="light"]:focus-visible .hero-519--background-video::after,
  a.hero-519--root[data-image-overlay="light"]:focus-within .hero-519--background-video::after {
    opacity: var(--image-overlay--light-hover);
  }

  a.hero-519--root {
    text-decoration: none;
    color: inherit;
    display: block;
  }
/* END_SECTION:519-hero */

/* START_SECTION:519-image (INDEX:8) */
.image-519--root {
    padding: 0;
  }
  .image-519--root.has-bottom-border {
    border-bottom: 1px solid var(--color-black);
  }

  .image-519--wrapper {
    width: 100%;
    overflow: hidden;
  }

  .image-519--wrapper img {
    width: 100%;
    height: clamp(25rem, 19.8864rem + 22.7273vw, 37.5rem);
    max-height: 600px;
    object-fit: cover;
    display: block;
  }
/* END_SECTION:519-image */

/* START_SECTION:519-info-blocks (INDEX:9) */
.info-blocks-519--root {
    width: 100%;
    padding: 0;
  }

  .info-blocks-519--root.has-bottom-border {
    border-bottom: 1px solid var(--color-black, #101010);
  }

  .info-blocks-519--wrapper {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
     & > *:not(:last-child) {
      border-right: 1px solid var(--color-black, #101010);
    }
    @media (max-width: 900px) {
      grid-template-columns: 1fr 1fr;
       & > *:nth-child(2n) {
        border-right: none;
      }
       & > *:nth-child(2n + 1):not(:last-child) {
        border-right: 1px solid var(--color-black, #101010);
      }
       & > *:nth-child(-n + 2) {
        border-bottom: 1px solid var(--color-black, #101010);
      }
       &.has-three-blocks > *:last-child {
        grid-column: span 2;
        border-right: none;
      }
    };


    /*
   @media (max-width: 450px) {
   grid-template-columns: 1fr;
   & > *:not(:last-child) {
   border-right: none;
   border-bottom: 1px solid var(--color-black, #101010);
   }
   }
*/
  }

  .info-blocks-519--block {
    min-height: 250px;
    padding: 30px;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    gap: 100px;
    & h3 {
      color: var(--color-dark-green, #085204);
      margin-bottom: 24px;
    }
    & p {
      font-size: clamp(0.875rem, 0.8269rem + 0.1923vw, 1rem);
    }
    & .button-519-cta {
      color: var(--color-dark-green, #085204);
    }
    @media (max-width: 900px) {
      padding: 20px;
      gap: 60px;
      min-height: unset;
    }
  }

  .info-blocks-519--description {
    color: var(--color--body);
  }
/* END_SECTION:519-info-blocks */

/* START_SECTION:519-internal-header (INDEX:10) */
html {
    scroll-behavior: smooth;
  }

  [id] {
    scroll-margin-top: 6rem;
  }

  .internal-header--root {
    width: 100%;
  }

  .internal-header--root[data-color-scheme="white"].has-bottom-border {
    border-bottom: 1px solid var(--color-black, #101010);
  }

  .internal-header--root[data-color-scheme="dark-green"].has-bottom-border {
    border-bottom: 1px solid var(--color-white, #fcfcfc);
  }

  .internal-header--root[data-color-scheme="light-green"].has-bottom-border {
    border-bottom: 1px solid var(--color-black, #101010);
  }

  .internal-header--root[data-color-scheme="dark-green"] .internal-header--wrapper {
    background-color: var(--color-dark-green, #085204);
  }

  .internal-header--root[data-color-scheme="light-green"] .internal-header--wrapper {
    background-color: var(--color-aqua-green, #cedccd);
  }

  .internal-header--wrapper {
    width: 100%;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    padding: var(--vertical-padding) clamp(1.5rem, 1rem + 2vw, 3rem);

    @media (max-width: 900px) {
      padding-left: clamp(1rem, 0.75rem + 1vw, 1.5rem);
      padding-right: clamp(1rem, 0.75rem + 1vw, 1.5rem);
    }
  }

  .internal-header--content {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 2rem;
    align-items: center;
    text-align: center;
  }

  .internal-header--content .heading-519--root,
  .internal-header--content .text-519--root {
    width: 100%;
  }

  .internal-header--content .text-519--root {
    max-width: 65ch;
  }

  /* White scheme (default) */
  .internal-header--root[data-color-scheme="white"] .internal-header--content [data-item="subhead"] {
    color: var(--color-black, #101010);
  }

  .internal-header--root[data-color-scheme="white"] .internal-header--content .heading-519--root:not(:has([data-item="subhead"])) {
    color: var(--color-dark-green, #085204);
  }

  .internal-header--root[data-color-scheme="white"] .internal-header--content .text-519--root {
    color: var(--color-black, #101010);
  }

  .internal-header--root[data-color-scheme="white"] .internal-header--content .button-519-cta {
    color: var(--color-dark-green, #085204);
  }

  /* Dark green scheme */
  .internal-header--root[data-color-scheme="dark-green"] .internal-header--content [data-item="subhead"] {
    color: var(--color-white, #fcfcfc);
  }

  .internal-header--root[data-color-scheme="dark-green"] .internal-header--content .heading-519--root {
    color: var(--color-white, #fcfcfc);
  }

  .internal-header--root[data-color-scheme="dark-green"] .internal-header--content .text-519--root {
    color: var(--color-white, #fcfcfc);
  }

  .internal-header--root[data-color-scheme="dark-green"] .internal-header--content .button-519-cta {
    color: var(--color-white, #fcfcfc);
  }

  /* Light green scheme */
  .internal-header--root[data-color-scheme="light-green"] .internal-header--content [data-item="subhead"] {
    color: var(--color-dark-green, #085204);
  }

  .internal-header--root[data-color-scheme="light-green"] .internal-header--content .heading-519--root {
    color: var(--color-dark-green, #085204);
  }

  .internal-header--root[data-color-scheme="light-green"] .internal-header--content .text-519--root {
    color: var(--color-dark-green, #085204);
  }

  .internal-header--root[data-color-scheme="light-green"] .internal-header--content .button-519-cta {
    color: var(--color-dark-green, #085204);
  }
/* END_SECTION:519-internal-header */

/* START_SECTION:519-popup (INDEX:11) */
@keyframes popup-519-fade-in {
    from {
      opacity: 0;
      transform: scale(0.95);
    }
    to {
      opacity: 1;
      transform: scale(1);
    }
  }

  @keyframes popup-519-fade-out {
    from {
      opacity: 1;
      transform: scale(1);
    }
    to {
      opacity: 0;
      transform: scale(0.95);
    }
  }

  @keyframes popup-519-backdrop-fade-in {
    from {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
  }

  @keyframes popup-519-backdrop-fade-out {
    from {
      opacity: 1;
    }
    to {
      opacity: 0;
    }
  }

  .popup-519--dialog {
    margin: auto;
    padding: 0;
    border: none;
    max-width: min(90vw, 900px);
    width: 100%;
    background: var(--color-white, #fcfcfc);
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.15);
    position: relative;
  }

  .popup-519--dialog:not([open]) {
    opacity: 0;
    transform: scale(0.90);
  }

  .popup-519--dialog[open].popup-519--opening {
    animation: popup-519-fade-in 0.3s ease-out forwards;
  }

  .popup-519--dialog[open].popup-519--open {
    opacity: 1;
    transform: scale(1);
  }

  .popup-519--dialog[open].popup-519--closing {
    animation: popup-519-fade-out 0.3s ease-in forwards;
  }

  .popup-519--close {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 10;
    background: transparent;
    border: none;
    padding: 1rem;
    cursor: pointer;
    color: var(--color-black, #101010);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: opacity 0.2s ease
    , transform 0.2s ease;
  }

  .popup-519--close:hover {
    opacity: 0.7;
    transform: scale(1.1);
  }

  .popup-519--close:focus-visible {
    outline: 1px solid var(--color-black, #101010);
    outline-offset: -2px;
  }

  .popup-519--dialog::backdrop {
    background: color-mix(in srgb, var(--color-black, #101010) 40%, transparent);
    backdrop-filter: blur(8px);
  }

  .popup-519--dialog[open].popup-519--opening::backdrop {
    animation: popup-519-backdrop-fade-in 0.3s ease-out forwards;
  }

  .popup-519--dialog[open].popup-519--closing::backdrop {
    animation: popup-519-backdrop-fade-out 0.3s ease-in forwards;
  }

  .popup-519--root {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    text-align: left;
    border: 1px solid var(--color-black, #101010);

    @media (max-width: 767px) {
      grid-template-columns: 1fr;
    }
  }

  .popup-519--root > *:first-child {
    position: relative;
  }

  .popup-519--root > *:first-child::after {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 1px;
    background-color: var(--color-black, #101010);
    pointer-events: none;

    @media (max-width: 767px) {
      display: none;
    }
  }

  .popup-519--image-wrapper {
    width: 100%;
    position: relative;
    aspect-ratio: 1 / 1;
    overflow: hidden;
  }

  .popup-519--image-wrapper:is(.image--root, .placeholder--root) {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
  }

  .popup-519--image-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
  }

  .popup-519--content-wrapper {
    --content-padding: var(--spacing--block-padding);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    height: 100%;
  }

  .popup-519--content {
    padding: var(--content-padding);
    max-width: 380px;
    flex-grow: 1;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    text-align: left;
    gap: 1rem;
  }

  .popup-519--content .heading-519--root {
    color: var(--color-dark-green, #085204);
  }

  .popup-519--content .text-519--root {
    color: var(--color--body, var(--color-black, #101010));
  }

  .popup-519--link {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    transition: background-color 200ms ease-out;
  }

  .popup-519--cta-link {
    background-color: var(--color-black, #101010);
    padding: 20px;
    width: 100%;
    color: var(--color-white, #fcfcfc);
    font-family: var(--font--paragraph--family);
    font-weight: 600;
    text-transform: uppercase;
    text-decoration: underline;
    text-decoration-color: transparent;
    letter-spacing: 1.6px;
    text-underline-offset: 0.2ex;
    transition: background-color 200ms ease-out
    , text-decoration 200ms ease-out
    , text-underline-offset 200ms ease-out;

     &:hover,
     &:focus-visible {
      text-decoration: underline;
      text-underline-offset: 0.4ex;
      text-decoration-color: inherit;
      background-color: var(--color-dark-green, #085204);

    }
  }
/* END_SECTION:519-popup */

/* START_SECTION:519-related-articles (INDEX:12) */
.related-articles-519--root.editorial-grid-519--root {
    padding: 0;
  }
  .related-articles-519--root .editorial-grid-519--grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0;
    border: 1px solid var(--color-black, #101010);
    border-bottom: none;
    align-items: stretch;
  }
  .related-articles-519--root .editorial-grid-519--grid > :nth-child(odd) {
    border-right: 1px solid var(--color-black, #101010);
  }
  .related-articles-519--root .editorial-grid-519--card-wrapper {
    border-bottom: 1px solid var(--color-black, #101010);
  }
  @media (max-width: 899px) {
    .related-articles-519--root .editorial-grid-519--grid {
      grid-template-columns: 1fr;
    }
  }
/* END_SECTION:519-related-articles */

/* START_SECTION:519-restaurant-info (INDEX:13) */
.restaurant-info-519--root {
    width: 100%;
    padding: 0;
  }
  .restaurant-info-519--root.has-bottom-border {
    border-bottom: 1px solid var(--color-black);
  }
  .restaurant-info-519--wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    @media (max-width: 900px) {
      grid-template-columns: 1fr;
    }
  }
  .restaurant-info-519--image-wrapper {
    border-right: 1px solid var(--color-black, #101010);
    order: 1;
    @media (min-width: 901px) {
      .restaurant-info-519--root.has-reverse-layout & {
        order: 2;
        border-right: none;
        border-left: 1px solid var(--color-black, #101010);
      }
    }
    & img {
      width: 100%;
      height: 100%;
      max-height: 800px;
      object-fit: cover;
      object-position: center;
    }
  }


  .restaurant-info-519--content {
    display: flex;
    flex-direction: column;
    order: 2;
    @media (min-width: 901px) {
      .restaurant-info-519--root.has-reverse-layout & {
        order: 1;
      }
    }
    .restaurant-info-519--root.has-vertical-flip & {
      flex-direction: column-reverse;
    }

  }

  .restaurant-info-519--content-links {
    display: grid;
    grid-template-columns: 1fr 1fr;
    border-bottom: 1px solid var(--color-black, #101010);
     & > *:first-child {
      border-right: 1px solid var(--color-black, #101010);
    }
    @media (max-width: 400px) {
      grid-template-columns: 1fr;
       & > *:first-child {
        border-right: none;
        border-bottom: 1px solid var(--color-black, #101010);
      }
    }
  }
  .restaurant-info-519--info-block {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    min-height: 250px;
    padding: 30px;
    text-align: center;
    gap: 1rem;
    & .restaurant-info-519--info-block-text {
      display: flex;
      flex-direction: column;
    }
    & h3 {
      color: var(--color-dark-green, #085204);
      margin-bottom: 24px;
      font-weight: 400;
    }
    & p {
      font-size: clamp(0.875rem, 0.8269rem + 0.1923vw, 1rem);
    }
    & .button-519-cta {
      flex-shrink: 0;
      color: var(--color-dark-green, #085204);
    }
    @media (max-width: 900px) {
      padding: 20px;
      min-height: 40vw;
    }
  }
  .restaurant-info-519--info-block-description,
  .info-blocks-519--description {
    text-wrap: balance;
    max-width: 330px;
    margin: 0 auto;
  }

  .restaurant-info-519--hours {
    display: flex;
    gap: 40px;
    flex-grow: 1;
    flex-direction: column;
    height: 100%;
    justify-content: center;
    align-items: center;
    text-align: center;
    background-color: var(--color-dark-green, #085204);
    color: var(--color-white, #fcfcfc);
    padding-block: 4rem;
  }

  .restaurant-info-519--hours-list {
    display: flex;
    flex-direction: column;
    gap: 0;
    margin: 0;
    padding: 0;
  }
  .restaurant-info-519--hours-row {
    display: flex;
    justify-content: space-between;
    width: fit-content;
    gap: 10px;
    width: 100%;
    font-size: 20px;

     &:not(:last-child) {
      margin-bottom: 10px;
    }
    @media (max-width: 900px) {
      font-size: 1rem;
    }
  }
  .restaurant-info-519--hours-row dt {
    font-weight: 500;
    width: 90px;
    text-align: left;
    width: fit-content;
  }
  .restaurant-info-519--hours-row dd {
    font-weight: 300;
    margin: 0;
  }
/* END_SECTION:519-restaurant-info */

/* START_SECTION:519-travel-grid-popup (INDEX:14) */
.travel-guide-grid-popup-519--show-more-wrapper[aria-hidden="true"] {
    display: none;
  }
  .travel-guide-grid-popup-519--root {
    padding: 0;
  }
  .travel-guide-grid-popup-519--content[data-filter-transition] {
    transition: opacity 200ms ease-out;
  }
  .travel-guide-grid-popup-519--content[data-filter-transition="out"] {
    opacity: 0;
  }
  .travel-guide-grid-popup-519--grid .article-card-519--root.travel-guide-grid-popup-519--card-hidden {
    display: none;
  }
  .travel-guide-grid-popup-519--grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(330px, 1fr));
    gap: 0px;
    border: 1px solid var(--color-black, #101010);
    padding-left: 1px;
    align-items: stretch
  }

  .travel-guide-grid-popup-519--grid [data-article-popup-trigger] {
  cursor: pointer;
}

  .travel-guide-grid-popup-519--grid .article-card-519--root.article-card-519--load-more {
  opacity: 0;
  animation: travel-guide-popup-519-fade-in 0.5s ease-out forwards;
}

@keyframes travel-guide-popup-519-fade-in {
  to {
    opacity: 1;
  }
}

  .travel-guide-grid-popup-519--show-more-wrapper {
    display: block;
    width: 100%;
  }

  .travel-guide-grid-popup-519--show-more {
    width: 100%;
    display: block;
    background-color: var(--color-black, #101010);
    border: none;
    border-bottom: 1px solid var(--color-black, #101010);
    color: var(--color-white, #FCFCFC);
    padding: calc(var(--spacing--block-padding) - 10px) var(--spacing--block-padding);
    cursor: pointer;
    text-transform: uppercase;
    height: fit-content;
    text-box: cap alphabetic;
    transition: background-color 0.3s ease-out, border-bottom 0.3s ease-out;
  }

  .travel-guide-grid-popup-519--show-more:hover,
  .travel-guide-grid-popup-519--show-more:focus-visible {
    background-color: var(--color-dark-green, #085204);
    border-bottom: 1px solid var(--color-white, #FCFCFC);
  }

  .travel-guide-grid-popup-519--show-more > *:before {
    display: none;
  }

  /* Article popup modal - matches 519-popup layout */
  @keyframes article-popup-519-fade-in {
    from { opacity: 0; transform: scale(0.95); }
    to { opacity: 1; transform: scale(1); }
  }
  @keyframes article-popup-519-fade-out {
    from { opacity: 1; transform: scale(1); }
    to { opacity: 0; transform: scale(0.95); }
  }
  @keyframes article-popup-519-backdrop-fade-in {
    from { opacity: 0; }
    to { opacity: 1; }
  }
  @keyframes article-popup-519-backdrop-fade-out {
    from { opacity: 1; }
    to { opacity: 0; }
  }
  .article-popup-519--dialog.popup-519--dialog {
    margin: auto;
    padding: 0;
    border: none;
    max-width: min(90vw, 900px);
    width: 100%;
    background: var(--color-white, #fcfcfc);
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.15);
    position: relative;
    height: fit-content;
  }
  .article-popup-519--dialog.popup-519--dialog:not([open]) {
    opacity: 0;
    transform: scale(0.90);
  }
  .article-popup-519--dialog.popup-519--dialog[open].popup-519--opening {
    animation: article-popup-519-fade-in 0.3s ease-out forwards;
  }
  .article-popup-519--dialog.popup-519--dialog[open].popup-519--open {
    opacity: 1;
    transform: scale(1);
  }
  .article-popup-519--dialog.popup-519--dialog[open].popup-519--closing {
    animation: article-popup-519-fade-out 0.3s ease-in forwards;
  }
  .article-popup-519--dialog .popup-519--close {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 10;
    background: transparent;
    border: none;
    padding: 1rem;
    cursor: pointer;
    color: var(--color-black, #101010);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: opacity 0.2s ease, transform 0.2s ease;
  }
  .article-popup-519--dialog .popup-519--close:hover {
    opacity: 0.7;
    transform: scale(1.1);
  }
  .article-popup-519--dialog .popup-519--close:focus-visible {
    outline: 1px solid var(--color-black, #101010);
    outline-offset: -2px;
  }
  .article-popup-519--dialog.popup-519--dialog::backdrop {
    background: color-mix(in srgb, var(--color-black, #101010) 40%, transparent);
    backdrop-filter: blur(8px);
  }
  .article-popup-519--dialog.popup-519--dialog[open].popup-519--opening::backdrop {
    animation: article-popup-519-backdrop-fade-in 0.3s ease-out forwards;
  }
  .article-popup-519--dialog.popup-519--dialog[open].popup-519--closing::backdrop {
    animation: article-popup-519-backdrop-fade-out 0.3s ease-out forwards;
  }
  .article-popup-519--dialog .popup-519--root {
    width: 100%;
    overflow: hidden;
    display: grid;
    grid-template-columns: 1fr 1fr;
    text-align: left;
    border: 1px solid var(--color-black, #101010);
  }
  @media (max-width: 767px) {
    .article-popup-519--dialog .popup-519--root {
      grid-template-columns: 1fr;
    }
  }
  .article-popup-519--dialog .popup-519--root > *:first-child {
    position: relative;
  }
  .article-popup-519--dialog .popup-519--root > *:first-child::after {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 1px;
    background-color: var(--color-black, #101010);
    pointer-events: none;
  }
  @media (max-width: 767px) {
    .article-popup-519--dialog .popup-519--root > *:first-child::after {
      display: none;
    }
  }
  .article-popup-519--dialog .popup-519--image-wrapper {
    width: 100%;
    height: 100%;    
    position: relative;
    aspect-ratio: unset;
    overflow: hidden;
  }
  .article-popup-519--dialog .popup-519--image-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
  }
  .article-popup-519--dialog .popup-519--content-wrapper {
    --content-padding: var(--spacing--block-padding);
    flex: 1;
    overflow-y: clip;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
  }
  .article-popup-519--dialog .popup-519--content {
    padding: var(--content-padding);
    width: 100%;
    height: fit-content;
    max-width: unset;
    flex: unset;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    text-align: center;
    gap: 1rem;
  }
  .article-popup-519--dialog .popup-519--content [data-article-popup-subhead] {
    color: var(--color-black, #101010);
    text-transform: uppercase;
  }
  .article-popup-519--dialog .popup-519--content .heading-519--root {
    color: var(--color-dark-green, #085204);
  }
  .article-popup-519--dialog .popup-519--content .text-519--root {
    color: var(--color--body, var(--color-black, #101010));
  }
  .article-popup-519--dialog .popup-519--divider {
    width: 100%;
    border-top: 1px solid var(--color-black, #101010);
  }
  .article-popup-519--dialog .popup-519--lower {
    width: 100%;
    padding: var(--content-padding);
    display: flex;
    flex-direction: column;
    gap: 1rem;
    justify-content: center;
    align-items: center;
    text-align: center;
  }
  .article-popup-519--dialog .popup-519--lower-heading {
    color: var(--color-dark-green, #085204);
  }
  .article-popup-519--dialog .popup-519--cta {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .article-popup-519--dialog .popup-519--cta .button-519-cta {
    color: var(--color-dark-green, #085204);
  }
/* END_SECTION:519-travel-grid-popup */

/* START_SECTION:519-travel-guide-grid (INDEX:15) */
.travel-guide-grid-519--show-more-wrapper[aria-hidden="true"] {
    display: none;
  }
  .travel-guide-grid-519--root {
    padding: 0;
  }
  .travel-guide-grid-519--content[data-filter-transition] {
    transition: opacity 200ms ease-out;
  }
  .travel-guide-grid-519--content[data-filter-transition="out"] {
    opacity: 0;
  }
  .travel-guide-grid-519--grid .article-card-519--root.travel-guide-grid-519--card-hidden {
    display: none;
  }
  .travel-guide-grid-519--grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(330px, 1fr));
    gap: 0px;
    border: 1px solid var(--color-black, #101010);
    padding-left: 1px;
    align-items: stretch
  }

.travel-guide-grid-519--grid .article-card-519--root.article-card-519--load-more {
  opacity: 0;
  animation: travel-guide-519-fade-in 0.5s ease-out forwards;
}

@keyframes travel-guide-519-fade-in {
  to {
    opacity: 1;
  }
}

  .travel-guide-grid-519--show-more-wrapper {
    display: block;
    width: 100%;
  }

  .travel-guide-grid-519--show-more {
    width: 100%;
    display: block;
    background-color: var(--color-black, #101010);
    border: none;
    border-bottom: 1px solid var(--color-black, #101010);
    color: var(--color-white, #FCFCFC);
    padding: calc(var(--spacing--block-padding) - 10px) var(--spacing--block-padding);
    cursor: pointer;
    text-transform: uppercase;
    height: fit-content;
    text-box: cap alphabetic;
    transition: background-color 0.3s ease-out, border-bottom 0.3s ease-out;
  }

  .travel-guide-grid-519--show-more:hover,
  .travel-guide-grid-519--show-more:focus-visible {
    background-color: var(--color-dark-green, #085204);
    border-bottom: 1px solid var(--color-white, #FCFCFC);
  }

  .travel-guide-grid-519--show-more > *:before {
    display: none;
  }
/* END_SECTION:519-travel-guide-grid */

/* START_SECTION:article-comments (INDEX:22) */
.article-comments--comments {
    display: flex;
    flex-direction: column;
    gap: var(--spacing--block);
  }

  .article-comments--item {
    padding: var(--spacing--item) 0;
    border-bottom: 1px solid var(--border--color-dark);

    &:first-child {
      padding-top: 0;
    }

    &:last-child {
      padding-bottom: 0;
      border-bottom: none;
      margin-bottom: var(--spacing--neg-item);
    }
  }

  .article-comments--content {
    padding-left: var(--spacing--item);
  }

  .article-comments--meta {
    display: flex;
    justify-content: space-between;
  }

  .article-comments--form {
    &:before {
      content: '';
      display: block;
      margin-bottom: var(--spacing--block);
      width: 100%;
      height: 1px;
      background-color: var(--border--color-dark);
    }
  }

  .article-comments--inputs {
    display: flex;
    column-gap: var(--spacing--item);

    @media (max-width: 767px) {
      flex-direction: column;
    }
  }

  .article-comments--form-error,
  .article-comments--form-moderated {
    text-align: center;

    @media (min-width: 768px) {
      text-align: left;
    }
  }

  .article-comments--button {
    width: 100%;

    @media (min-width: 768px) {
      width: 50%;
    }

    &[aria-busy='true'] {
      .article-comments--button-text {
        opacity: 0;
      }
    }

    &[aria-busy='false'] {
      .article-comments--button-spinner {
        opacity: 0;
      }
    }
  }

  .article-comments--disqus {
    padding: 0 var(--spacing--item);

    @media (min-width: 768px) {
      padding: 0;
    }
  }
/* END_SECTION:article-comments */

/* START_SECTION:collapsible-rows (INDEX:28) */
.collapsible-rows--wrapper {
    width: 100%;
  }

  .collapsible-rows--main {
    @media (min-width: 768px) {
      display: flex;

      &[data-two-columns='false'] {
        flex-direction: column;

        > *:first-child > *:last-child > * {
          border-bottom: 0;
        }
      }

      &[data-two-columns='true'] {
        gap: var(--spacing--block);
      }

      > * {
        width: 100%;
      }
    }

    @media (max-width: 767px) {
      flex-direction: column;

      > *:first-child > *:last-child > * {
        border-bottom: 0;
      }
    }
  }
/* END_SECTION:collapsible-rows */

/* START_SECTION:collection-header (INDEX:29) */
.collection-header--root {
    display: flex;
    flex-direction: column;
  }

  .collection-header--wrapper {
    position: relative;

    &[data-x-alignment='center'] {
      display: flex;
      align-items: center;
      justify-content: center;
    }
  }

  .collection-header--image {
    width: 100%;
  }

  .collection-header--heading {
    max-width: var(--max-width--x-small);
    pointer-events: none;

    &:empty {
      display: none;
    }

    .collection-header--root[data-header-overlap-compatible] & {
      position: absolute;
      padding: var(--spacing--section--x);
      max-width: var(--max-width--x-small);
    }

    .collection-header--root:not([data-header-overlap-compatible]) & {
      margin: 0;
    }

    .collection-header--wrapper[data-x-alignment='left'] & {
      bottom: 0;
    }

    .collection-header--wrapper[data-x-alignment='right'] & {
      bottom: 0;
      right: 0;
      margin-left: auto;
    }

    > *:not(:last-child) {
      padding-bottom: var(--spacing--item);
    }

    @media (min-width: 768px) {
      padding: 0 var(--spacing--section--x);

      .layout--viewport[data-header-layout='sidebar'] &:only-child {
        padding: 0;
      }
    }

    @media (max-width: 767px) {
      padding: 0 var(--spacing--item);
    }
  }

  .collection-header--description {
    padding: var(--spacing--block) var(--spacing--section--x);

    @media (max-width: 767px) {
      padding: var(--spacing--section--mobile);
    }
  }
/* END_SECTION:collection-header */

/* START_SECTION:collection-navigation (INDEX:31) */
.collection-nav-519--root.has-bottom-border {
    border-bottom: 1px solid var(--color-black, #101010);
  }

  .collection-nav-519--wrapper {
    width: 100%;
  }
/* END_SECTION:collection-navigation */

/* START_SECTION:collection-with-highlight (INDEX:32) */
.collection-with-highlight--root {
    .section-blocks--root:only-child .section-blocks--wrapper {
      @media (min-width: 768px) {
        padding-top: 0;
        padding-bottom: 0;
      }

      @media (max-width: 767px) {
        --text-padding: 0;
      }
    }
  }

  .collection-with-highlight--navigation .carousel-nav-arrow {
    @media (max-width: 767px) {
      justify-content: center;
    }
  }
/* END_SECTION:collection-with-highlight */

/* START_SECTION:contact (INDEX:34) */
.contact--blocks {
    display: flex;
    flex-wrap: wrap;
    gap: var(--spacing--item);

    @media (min-width: 768px) {
      flex-direction: row;
    }

    @media (max-width: 767px) {
      flex-direction: column;
    }
  }

  .contact--block {
    flex: 1 1 100%;
    width: 100%;
    align-self: flex-end;

    &[data-block-type='checkbox'] {
      display: flex;
      align-items: center;
      gap: var(--spacing--2);

      & label {
        display: inline-flex;
        padding: 0;
      }
    }

    &[data-block-type='empty-space'] {
      @media (min-width: 768px) {
        min-height: var(--desktop-height);
        margin-top: var(--spacing--neg-item);
      }

      @media (max-width: 767px) {
        min-height: var(--mobile-height);
        margin-top: var(--spacing--neg-item);
      }
    }

    @media (min-width: 768px) {
      &[data-half-width='true'] {
        max-width: calc(50% - var(--spacing--item) / 2);
      }
    }

    & input,
    & select,
    & textarea {
      margin: 0;
    }
  }

  .contact--button-container {
    margin-top: var(--spacing--item);
  }

  .contact--button {
    &[aria-busy='true'] {
      .contact--button-text {
        opacity: 0;
      }
    }

    &[aria-busy='false'] {
      .contact--button-spinner {
        opacity: 0;
      }
    }

    @media (min-width: 768px) {
      .contact--root[data-container-width='1'] & {
        width: 100%;
      }
    }

    @media (max-width: 767px) {
      width: 100%;
    }
  }
/* END_SECTION:contact */

/* START_SECTION:countdown (INDEX:35) */
.countdown--root {
    .countdown-timer--root {
      margin: 0 auto;
    }

    .section-blocks--root {
      z-index: 1;
    }
  }

  .countdown--wrapper {
    align-items: center;

    @media (min-width: 768px) {
      &[data-columns='2'] {
        justify-content: space-between;
        --grid-columns: minmax(250px, 570px) max-content;

        &[data-reverse-layout='true'] {
          --grid-columns: max-content minmax(250px, 570px);
        }
      }
    }

    &:has(.section-blocks--wrapper[data-text-style='eclipse-shadow']) {
      overflow: visible;
    }
  }
/* END_SECTION:countdown */

/* START_SECTION:divider (INDEX:38) */
.divider--wrapper {
    height: var(--border--thickness);

    .divider--root[data-white-border='false'] & {
      background-color: var(--border--color-dark);
    }

    .divider--root[data-white-border='true'] & {
      background-color: white;
    }
  }
/* END_SECTION:divider */

/* START_SECTION:featured-blog (INDEX:39) */
.featured-blog--root {
    &[data-text-color='white'] .article-card--date {
      color: white;
    }
  }
/* END_SECTION:featured-blog */

/* START_SECTION:featured-collection (INDEX:40) */
.featured-collection--root {
    :is(.collection-promo--root, .carousel--block) {
      height: 100%;
    }
  }

  .featured-collection--item {
    @media (max-width: 767px) {
      width: 100%;

      .placeholder--root {
        min-height: 256px;
      }
    }
  }
/* END_SECTION:featured-collection */

/* START_SECTION:featured-collections (INDEX:41) */
.featured-collections--item {
    height: 100%;
    align-items: flex-end;
  }

  .featured-collections--title {
    width: 100%;
  }

  .featured-collections--image {
    display: flex;
    align-items: center;
    border-radius: var(--image--radius);
    width: 100%;
  }

  .featured-collections--body {
    margin: 0 auto;
    width: 100%;
    text-align: center;
  }
/* END_SECTION:featured-collections */

/* START_SECTION:featured-images (INDEX:42) */
.featured-images--root {
    @media (max-width: 767px) {
      &[data-mobile-overlay='false'] .section-blocks--root {
        grid-area: auto;
      }
    }
  }

  .featured-images--main {
    display: flex;

    > * {
      @media (min-width: 768px) {
        width: 50%;

        &:first-child {
          --image--radius-top-right: 0px;
          --image--radius-bottom-right: 0px;
        }

        &:last-child {
          --image--radius-top-left: 0px;
          --image--radius-bottom-left: 0px;
        }
      }

      @media (max-width: 767px) {
        width: 100%;

        .featured-images--root[data-mobile-layout='side-by-side'] & {
          width: 50%;

          &:first-child {
            --image--radius-top-right: 0px;
            --image--radius-bottom-right: 0px;
          }

          &:last-child {
            --image--radius-top-left: 0px;
            --image--radius-bottom-left: 0px;
          }
        }

        .featured-images--root[data-mobile-layout='stacked'] & {
          &:first-child {
            --image--radius-bottom-right: 0px;
            --image--radius-bottom-left: 0px;
          }

          &:last-child {
            --image--radius-top-left: 0px;
            --image--radius-top-right: 0px;
          }
        }

        .featured-images--root[data-mobile-layout='first'] &:last-child,
        .featured-images--root[data-mobile-layout='second'] &:first-child {
          display: none;
        }
      }
    }

    @media (max-width: 767px) {
      .featured-images--root[data-mobile-layout='stacked'] & {
        flex-direction: column;
      }
    }
  }

  .featured-images--wrapper {
    display: grid;

    > * {
      grid-area: 1 / -1;
    }

    @media (max-width: 767px) {
      .featured-images--root[data-mobile-overlay='false'] & {
        gap: var(--spacing--item);
      }
    }
  }
/* END_SECTION:featured-images */

/* START_SECTION:featured-product (INDEX:43) */
.featured-product--root {
    @media (min-width: 768px) {
      .product-form {
        position: sticky;
        top: calc(var(--sticky-offset) + var(--spacing--1));
        height: fit-content;
        padding-bottom: var(--spacing--block);
        transition: top 0.2s var(--transition--standard);
      }

      .layout--viewport:not([data-header-layout='sidebar']) &[data-spacing-above='none'] .product-form {
        top: calc(var(--sticky-offset) + var(--spacing--neg-item));
        padding-top: var(--spacing--block);
      }

      &[data-container-width='6'] .product-form {
        padding-right: var(--spacing--item);
      }
    }
  }

  .featured-product--wrapper[data-container='panel'] {
    @media (min-width: 768px) {
      --grid-columns: minmax(0, 1fr) minmax(0, var(--text-column-width));
      justify-content: center;
      align-items: stretch;
      position: relative;
    }

    @media (max-width: 767px) {
      --grid-row-gap: var(--spacing--item);
    }
  }

  .featured-product--root .carousel-nav-arrow {
    align-self: center;
  }
/* END_SECTION:featured-product */

/* START_SECTION:footer-bar (INDEX:46) */
.footer-bar--wrapper {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: var(--spacing--block);

    @media (max-width: 767px) {
      flex-wrap: wrap;
    }
  }

  .footer-bar--block {
    flex: 1 1 calc(100% / 3);
    display: flex;

    @media (max-width: 767px) {
      justify-content: var(--x-alignment);
      flex-basis: 100%;
      text-align: center;
    }

    @media (min-width: 768px) {
      &:nth-of-type(2):not(:last-child) {
        justify-content: center;
      }

      &:last-of-type {
        justify-content: flex-end;
      }

      &:only-child:not([data-type='localization']) {
        justify-content: center;
      }
    }

    &[data-type='payment-icons'] {
      flex-wrap: wrap;
      gap: var(--spacing--1);

      &[data-greyscale-enabled='true'] svg {
        filter: grayscale(100%);
      }
    }

    &[data-type='powered-by'] {
      @media (max-width: 767px) {
        order: 3;
      }
    }
  }

  .footer-bar--menu {
    display: flex;
    flex-wrap: wrap;
    gap: var(--spacing--item);

    @media (hover: hover) {
      > *:hover {
        font-weight: 700;
      }
    }
  }
/* END_SECTION:footer-bar */

/* START_SECTION:footer (INDEX:47) */
.footer--wrapper {
    display: flex;
    gap: var(--spacing--block);
    justify-content: space-between;

    @media (max-width: 767px) {
      flex-wrap: wrap;
    }

    .social-media--root {
      padding-top: var(--spacing--item);
    }
  }

  .footer--block {
    display: flex;
    flex-direction: column;

    @media (max-width: 767px) {
      flex: 1 1 100%;
      text-align: var(--text-alignment);
      align-items: var(--x-alignment);

      &[data-block-type='menu']:has(.collapsible-row--root)
        + &[data-block-type='menu']:has(.collapsible-row--root) {
        margin-top: var(--spacing--neg-block);
      }
    }

    @media (min-width: 768px) {
      &[data-block-type='subscribe'] {
        min-width: 220px;
      }

      &[data-block-type='about'] {
        max-width: 400px;
      }

      &:not(:last-child) {
        flex: 0 1 auto;
      }

      &:last-child {
        flex: 0 3 100%;
        align-items: flex-end;
      }
    }
  }

  .footer--block--container {
    @media (min-width: 768px) {
      .footer--block[data-block-type='subscribe'] & {
        max-width: 320px;
      }
    }

    @media (max-width: 767px) {
      .footer--block:is([data-block-type='subscribe'], [data-block-type='menu']) & {
        width: 100%;
      }
    }
  }

  .footer--menu {
    display: flex;
    flex-direction: column;
    gap: var(--spacing--1);
  }

  .footer--block--heading[data-item='nav-text'] {
    --font--size: var(--font--button--size);
  }

  .footer--root [data-item='sub-nav-text'],
  .footer--root [data-item='rte-content'] {
    --font--size: var(--font--nav--size);
  }

  .footer--noblocks {
    width: 100%;
    padding: var(--spacing--item);

    @media (max-width: 767px) {
      text-align: center;
    }
  }
/* END_SECTION:footer */

/* START_SECTION:image-with-text-below (INDEX:53) */
.section-blocks--wrapper {
    @media (min-width: 768px) {
      .image-with-text-below--root[data-container-width='6'] .section-blocks--root:not([data-x-alignment='left']) &,
      .layout--main-content:has(.layout--sidebar:empty) .image-with-text-below--root[data-container-width='6'] & {
        --text-padding: 0 var(--spacing--section--x);
      }

      .image-with-text-below--root[data-container-width='6'] .section-blocks--root[data-x-alignment='left'] & {
        --text-padding: 0 var(--spacing--section--x) 0 0;
      }
    }

    @media (max-width: 767px) {
      .image-with-text-below--root[data-mobile-full-width='true'] & {
        --text-padding: 0 var(--spacing--item);
      }
    }
  }
/* END_SECTION:image-with-text-below */

/* START_SECTION:image-with-text (INDEX:55) */
.image-with-text--root {
    .section-blocks--root {
      z-index: 1;
    }

    @media (min-width: 768px) {
      &[data-overlap='true']
        .image-with-text--wrapper[data-reverse-layout='true']
        .section-blocks--wrapper {
        margin-right: var(--overlap-margin);
      }

      &[data-overlap='true']
        .image-with-text--wrapper[data-reverse-layout='false']
        .section-blocks--wrapper {
        margin-left: var(--overlap-margin);
      }

      &[data-container-width='6']
        .image-with-text--wrapper[data-reverse-layout='true']
        .section-blocks--wrapper {
        margin-left: var(--spacing--section--x);
      }

      &[data-container-width='6']
        .image-with-text--wrapper[data-reverse-layout='false']
        .section-blocks--wrapper {
        margin-right: var(--spacing--section--x);
      }
    }

    @media (max-width: 767px) {
      &[data-overlap='true'] .section-blocks--wrapper {
        margin-top: var(--overlap-margin);
      }
    }
  }

  .image-with-text--wrapper[data-container='split'] {
    --column-width: var(--text-column-width);
    --overlap-margin: calc(-3 * var(--spacing--block));

    align-items: center;

    @media (min-width: 768px) {
      --grid-columns: minmax(0, 1fr) minmax(0, var(--column-width));

      &[data-reverse-layout='true'] {
        --grid-columns: minmax(0, var(--column-width)) minmax(0, 1fr);
      }

      .image-with-text--root[data-overlap='true'] & {
        --column-width: calc(var(--text-column-width) + var(--overlap-margin));
      }

      .image-with-text--root[data-container-width='6'] & {
        --column-width: calc(var(--text-column-width) + var(--spacing--section--x));
      }

      .image-with-text--root[data-container-width='6'][data-overlap='true'] & {
        --column-width: calc(
          var(--text-column-width) + var(--overlap-margin) + var(--spacing--section--x)
        );
      }
    }
  }
/* END_SECTION:image-with-text */

/* START_SECTION:main-article-old (INDEX:57) */
.article--heading {
    width: 100%;
  }

  .article--header--info {
    width: 100%;
  }

  .article--info {
    display: flex;
    justify-content: center;
    gap: var(--spacing--1);
    align-items: center;

    @media (max-width: 767px) {
      order: 1;
      flex-direction: column;
    }
  }

  .article--navigation {
    display: flex;
    width: 100%;
    justify-content: space-between;

    &:has(> .article--share:only-child) {
      justify-content: flex-end;
    }
  }

  .article--tagged-in {
    margin: 0;
  }

  .article--tags {
    display: inline-flex;
    flex-wrap: wrap;
    column-gap: var(--spacing--1);
    row-gap: var(--spacing--0);
    line-height: 1;

    /* nested for selector weight */
    .article--tag a {
      text-decoration: underline;
    }
  }
/* END_SECTION:main-article-old */

/* START_SECTION:main-article (INDEX:58) */
.article--root {
    padding: 0;
  }
  .article--heading {
    width: 100%;
    text-align: center;
    padding-top: clamp(4rem, 2.1731rem + 7.3077vw, 8.75rem);
    gap: var(--spacing--4);
    padding-inline: var(--spacing--block-padding);
    max-width: 800px;
    margin-inline: auto;
    & .sc-intro {
      max-width: 800px;
      margin-inline: auto;
    }
  }
  .article--header--info {
    width: 100%;
    color: var(--color-dark-green, #085204);

  }

  .article--blog-name {
    color: var(--color-black, #101010);
  }

  .article--info {
    display: flex;
    justify-content: center;
    gap: var(--spacing--1);
    align-items: center;

    @media (max-width: 767px) {
      order: 1;
      flex-direction: column;
    }
  }

  .article--navigation {
    display: flex;
    width: 100%;
    justify-content: space-between;

     &:has( > .article--share:only-child) {
      justify-content: flex-end;
    }
  }

  .article--tagged-in {
    margin: 0;
  }

  .article--tags {
    display: inline-flex;
    flex-wrap: wrap;
    column-gap: var(--spacing--1);
    row-gap: var(--spacing--0);
    line-height: 1;

    /* nested for selector weight */
    .article--tag a {
      text-decoration: underline;
    }
  }
  .article--content {
    container-type: inline-size;
    position: relative;
    padding-bottom: 5rem;
  }

  .article--content > *:not(.sc-featured-section, .sc-gallery) {
    padding-inline: var(--spacing--block-padding);
    max-width: 800px;
    margin-inline: auto;
  }

  .article--content > span {
    display: block;
  }

  .article--content h2,
  .article--content h3,
  .article--content h4,
  .article--content h5,
  .article--content h6 {
    color: var(--color-dark-green, #085204);
  }


  /* Shortcode styles */
  .sc-featured-section {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "image content";
    gap: 0;
    border-top: 1px solid var(--color-black, #101010);
    border-bottom: 1px solid var(--color-black, #101010);
    padding: 0 !important;
    margin-bottom: var(--spacing--item);
    margin-top: var(--spacing--item);
  }
  .sc-featured-section-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.5rem;
    grid-area: content;
    padding: 70px var(--spacing--block-padding);
    position: relative;
    &::after {
      content: "";
      position: absolute;
      left: 0;
      top: 0;
      bottom: 0;
      width: 1px;
      background-color: var(--color-black, #101010);
      pointer-events: none;
    }
  }
  .sc-featured-section-img {
    grid-area: image;
    margin: 0 !important;
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
    border-radius: 0;
    overflow: hidden;
    position: relative;
  }

  .sc-pullquote {
    max-width: 800px;
    p {
      color: var(--color-dark-green, #085204);
      font-size: clamp(1.125rem, 0.7885rem + 1.3462vw, 1.875rem);
      font-weight: 500;
      font-family: var(--font--heading--family);
      line-height: 1.2;
      letter-spacing: var(--heading-letter-spacing);
      font-style: italic;
      text-wrap: pretty;
      text-align: center;
    }
  }

  .sc-image-card {
    max-width: 400px !important;
    img {
      width: 100%;
      height: auto;
      border: 1px solid var(--color-black, #101010);
      margin-bottom: 10px !important;
    }
    .sc-image-card-caption {
      color: var(--color-dark-green, #085204);
      font-weight: 300;
      line-height: 1.4;
    }
    &:not(:last-child) {
      padding-block: 1rem;
    }
  }

  .sc-image-card-lg {
    max-width: 800px !important;
    img {
      width: 100%;
      height: auto;
      border: 1px solid var(--color-black, #101010);
      margin-bottom: 10px !important;
    }
    .sc-image-card-lg-caption {
      color: var(--color-dark-green, #085204);
      font-weight: 300;
      line-height: 1.4;
    }
    &:not(:last-child) {
      padding-block: 1rem;
    }
  }

  .sc-image-side-caption{
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 1.5rem;
    align-items: flex-end;
    img {
      height: auto;
      border: 1px solid var(--color-black, #101010);
      margin: 0px !important;
    }
    .sc-image-side-caption-caption {
      color: var(--color-dark-green, #085204);
      font-weight: 300;
      line-height: 1.4;
      min-width: 200px;
      text-box: cap alphabetic;
    }
    &:not(:last-child) {
      padding-block: 1rem;
    }
  }

  .sc-double-image {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "image1 image2" "caption1 caption2";
    gap: 0;
    & img {
      margin: 0 !important;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
    }
    & .sc-double-image-1 {
      grid-area: image1;
      border: 1px solid var(--color-black, #101010);
    }
    & .sc-double-image-2 {
      grid-area: image2;
      border: 1px solid var(--color-black, #101010);
      border-left: none;
    }
    & .sc-double-image-caption-1 {
      grid-area: caption1;
    }
    & .sc-double-image-caption-2 {
      grid-area: caption2;
    }
    & .sc-double-image-caption-1,
    & .sc-double-image-caption-2 {
      padding: 10px 0;
      color: var(--color-dark-green, #085204);
    }
    &:not(:last-child) {
      padding-block: 1rem;
    }
  }

  @media (max-width: 700px) {

  }

  .sc-gallery {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: -1px;
    & img {
      flex-grow: 1;
      max-height: 400px;
      margin: -1px 0 0 -1px !important;
      border: 1px solid var(--color-black, #101010);
    }
    &:not(:last-child) {
      padding-block: 1rem;
    }
    &:last-child {
      padding-top: 1rem;
      padding-bottom: 0;
    }
  }
  /* Responsive behavior based on container width */
  @container(max-width: 700px) {
    .sc-featured-section {
      grid-template-columns: 1fr;
      grid-template-areas: "image" "content";
    }

    .sc-featured-section-content {
      padding-block: 40px;
      &::after {
        display: none;
      }
    }

    .sc-featured-section-img {
      &::after {
        content: "";
        position: absolute;
        width: 100%;
        height: 1px;
        background-color: var(--color-black, #101010);
        bottom: 0;
        left: 0;
        pointer-events: none;
      }
    }
    .sc-double-image {
      max-width: 100% !important;

      grid-template-columns: 1fr;
      grid-template-areas: "image1" "caption1" "image2" "caption2";
& .sc-double-image-caption-1 {
  margin-bottom: 1rem !important;
}
      & .sc-double-image-2 {
        border-left: 1px solid var(--color-black, #101010);
      }
    }
    .sc-image-card {
      max-width: 100% !important;
    }
    .sc-image-side-caption{
      grid-template-columns: 1fr;
      justify-items: flex-end;
      .sc-image-side-caption-caption {
        text-align: right;
      }
    }
  }
/* END_SECTION:main-article */

/* START_SECTION:main-blog (INDEX:59) */
.blog--header {
    width: 100%;

    @media (max-width: 767px) {
      padding-bottom: var(--spacing--item);
    }
  }

  .blog--filter {
    width: 100%;
  }

  .blog--filter--body {
    display: flex;
    justify-content: center;
  }

  .blog--filter--disclosure {
    width: 100%;
    max-width: calc(100% - var(--spacing--block));
  }

  .blog--filter--menu {
    display: flex;
    gap: var(--spacing--item);
    flex-wrap: wrap;
    justify-content: center;
    margin: 0;
    padding: 0;
  }

  .blog--article-list {
    width: 100%;

    .article-card--root {
      height: 100%;
      justify-content: start;
    }

    &[data-container='masonry'] {
      display: block;

      .article-card--root {
        width: 100%;
      }

      @media (max-width: 767px) {
        &[data-mobile-columns='1'] .article-card--root:not(:last-child) {
          padding-bottom: var(--spacing--block);
        }

        &[data-mobile-columns='2'] .article-card--root {
          width: calc((100% - (var(--spacing--item))) / 2);

          &:nth-last-child(n + 3) {
            padding-bottom: var(--spacing--block);
          }
        }
      }

      @media (min-width: 768px) {
        &:not([data-columns='1']) .article-card--root {
          width: calc((100% - (var(--spacing--block) * (var(--columns) - 1))) / var(--columns));
        }

        &[data-columns='1'] .article-card--root:not(:last-child) {
          padding-bottom: var(--spacing--block);
        }

        &[data-columns='2'] .article-card--root:nth-last-child(n + 3) {
          padding-bottom: var(--spacing--block);
        }

        &[data-columns='3'] .article-card--root:nth-last-child(n + 4) {
          padding-bottom: var(--spacing--block);
        }

        &[data-columns='4'] .article-card--root:nth-last-child(n + 5) {
          padding-bottom: var(--spacing--block);
        }
      }
    }
  }

  .blog--no-articles {
    padding: var(--spacing--section);
  }
/* END_SECTION:main-blog */

/* START_SECTION:main-collection (INDEX:60) */
.main-collection--spinner {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: var(--spacing--8) 0;

    &[aria-hidden='true'] {
      display: none;
    }
  }

  .main-collection--spinner-wrapper > * {
    margin: 0 auto;
  }

  .main-collection--empty {
    text-align: center;
    padding: var(--spacing--8) 0;
    background-color: var(--bg-color);

    @media (min-width: 768px) {
      [data-columns='2'] & {
        grid-column: 1 / span 2;
      }

      [data-columns='3'] & {
        grid-column: 1 / span 3;
      }

      [data-columns='4'] & {
        grid-column: 1 / span 4;
      }
    }

    @media (max-width: 767px) {
      [data-mobile-columns='1'] & {
        grid-column: 1 / span 1;
      }

      [data-mobile-columns='2'] & {
        grid-column: 1 / span 2;
      }
    }
  }

  .main-collection--pagination {
    &:empty {
      display: none;
    }
  }

  .main-collection--empty-item {
    height: 100%;
    background-color: var(--bg-color);
  }

  .main-collection--root{
    padding: 0;
  }

  .main-collection--grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    border-left: 1px solid var(--color-black, #101010);

    & > * {
      border-right: 1px solid var(--color-black, #101010);
      border-bottom: 1px solid var(--color-black, #101010);
    }
  }
/* END_SECTION:main-collection */

/* START_SECTION:main-list-collections (INDEX:61) */
.main-list-collections--item[data-container='section']:not(:last-child) {
    padding-bottom: var(--spacing--section--y);
  }

  .main-list-collections--item-link {
    width: 100%;
  }
/* END_SECTION:main-list-collections */

/* START_SECTION:main-product-old (INDEX:63) */
.main-product--root {
    @media (min-width: 768px) {
      .product-form {
        position: sticky;
        top: calc(var(--sticky-offset) + var(--spacing--1));
        height: fit-content;
        padding-bottom: var(--spacing--block);
        transition: top 0.2s var(--transition--standard);
      }

      .layout--viewport:not([data-header-layout='sidebar']) &[data-spacing-above='none'] .product-form {
        top: calc(var(--sticky-offset) + var(--spacing--neg-item));
        padding-top: var(--spacing--block);
      }

      &[data-container-width='6'] .product-form {
        padding-right: var(--spacing--item);
      }
    }
  }

  .main-product--wrapper[data-container='panel'] {
    @media (min-width: 768px) {
      --grid-columns: minmax(0, 1fr) minmax(0, var(--text-column-width));
      justify-content: center;
      align-items: stretch;
      position: relative;
    }

    @media (max-width: 767px) {
      --grid-row-gap: var(--spacing--item);
    }
  }

  .main-product--root .carousel-nav-arrow {
    align-self: center;
  }
/* END_SECTION:main-product-old */

/* START_SECTION:main-product (INDEX:64) */
.main-product-519--root {
    width: 100%;
    padding: 0;
    background-color: var(--color-white, #fcfcfc);
  }

  .main-product-519--root.has-bottom-border {
    border-bottom: 1px solid var(--color-black, #101010);
  }

  .main-product-519--wrapper {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;

    @media (min-width: 768px) {
      grid-template-columns: 1fr 1fr;
    }
  }

  .main-product-519--media {
    width: 100%;
    background-color: var(--color-grey, #e0e0e0);

    @media (min-width: 768px) {
      border-right: 1px solid var(--color-black, #101010);
      position: sticky;
      top: calc(var(--sticky-offset));
      height: 100%;
      align-self: start;
    }
  }

  /* When no thumbnails, fill viewport height */
  .main-product-519--media:has([data-single-media="true"]) {
    @media (min-width: 768px) {
      height: calc(100vh - var(--sticky-offset));
      min-height: calc(100vh - var(--sticky-offset));
    }
  }

  .main-product-519--content {
    width: 100%;
    background-color: #fff;
    padding: var(--spacing--block-padding);
    padding-bottom:0px;

    @media (min-width: 768px) {
      display: flex;
      flex-direction: column;
      min-height: 100%;
      position: relative;
    }
  }

  .product-form-519 {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
  }

  .product-form-519--block {
    width: 100%;

    &[data-block-type] {
      margin-top: var(--spacing--block);
    }

    &[data-block-type='icon'] + &[data-block-type='icon'] {
      margin-top: var(--spacing--1);
    }

    &:is(
        [data-block-type='price'],
        [data-block-type='vendor'],
        [data-block-type='rating'],
        [data-block-type='sku'],
      ) {
      margin-top: 30px;
    }
    &:is(
        [data-block-type='519-heading']
      ) {
        margin-top: 1rem;
      }

    input[type='hidden'] + &[data-block-type],
    &[data-block-type]:first-child {
      margin-top: 0;
    }

    &[data-block-type]:is(:empty, :has(> *:empty), [aria-hidden='true']) {
      display: none;
    }
  }

  .product-form-519--block--overline {
    text-transform: uppercase;
    color: var(--color--body--light);
    letter-spacing: 0.1em;
  }

  .product-form-519--block--vendor {
    text-transform: uppercase;
    color: var(--color--body--light);
    letter-spacing: 0.1em;

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

  .product-form-519--block--price-wrapper {
    margin-top: var(--spacing--item);
  }

  .product-form-519--block--price {
    color: var(--color-dark-green, #085204);
    font-weight: 600;
    font-size: clamp(0.875rem, 0.8269rem + 0.1923vw, 1rem);
    letter-spacing: 0.1em;
  }

  .product-form-519--block[data-block-type='519-heading'] {
    .heading-519--root h1,
    .heading-519--root h2,
    .heading-519--root h3 {
      color: var(--color-dark-green, #085204);
      text-transform: uppercase;
    }
  }

  .product-form-519--block[data-block-type='options'] {
    .swatches--header,
    .swatches--name {
      text-transform: uppercase;
      color: var(--color--body--light);
      letter-spacing: 0.1em;
    }

    /* 72px swatches per Figma design */
    [data-item='swatch'] {
      height: 72px;
      width: 72px;
      min-width: 72px;
      border: 1px solid var(--color-black, #101010);
      border-radius: 0;

      &:after {
        height: 76px;
        width: 76px;
        border: 2px solid var(--color-black, #101010);
        top: -3px;
        left: -3px;
      }

      &:has(> input:checked):after,
      input:checked + &:after {
        opacity: 1;
        border-color: var(--color-black, #101010);
      }

      &[data-unavailable='true']:before {
        height: calc(100% + 6px);
        top: -3px;
      }
    }

    @media (max-width: 767px) {
      [data-item='swatch'] {
        height: 48px;
        width: 48px;
        min-width: 48px;

        &:after {
          height: 52px;
          width: 52px;
        }
      }
    }
  }

  .product-form-519--block[data-block-type='buy-buttons'] {
    margin-top: auto;
    padding-top: var(--spacing--block);

    .product-buy-buttons--root {
      width: 100%;
    }

    .product-buy-buttons--primary {
      width: 100%;
      background-color: var(--color-black, #101010);
      color: var(--color-white, #fcfcfc);
      border: none;
      text-transform: uppercase;
      letter-spacing: 0.1em;
      cursor: pointer;
      transition: opacity 0.2s ease;

      &:hover:not(:disabled) {
        opacity: 0.8;
      }

      &:disabled {
        opacity: 0.5;
        cursor: not-allowed;
      }
    }

    @media (min-width: 768px) {
      &:has(.product-buy-buttons--primary){
        height: calc(120px + var(--spacing--block));
      }  
      &:has(.product-buy-buttons--smart){
        height: calc(220px + var(--spacing--block));
      }
      .product-buy-buttons--root{
      position: absolute;
      left: 0;
      right: 0;
      width: 100%;
      bottom: 0;
      gap: 0;
      & > *:not(.product-buy-buttons--primary,.product-buy-buttons--smart) {
          padding-inline: var(--spacing--block-padding);
          padding-bottom: var(--spacing--block);
        }
      }
    }
  }

  .product-519--breadcrumbs {
    margin-bottom: var(--spacing--item);
  }

  @media (max-width: 767px) {
    .main-product-519--wrapper {
      border-left: none;
      border-right: none;
    }

    .main-product-519--media {
      border-right: none;
    }

    .main-product-519--content {
      padding: var(--spacing--block-padding);
    }
  }

  /* Fill gap between main product and footer on product pages */
  .template--product .layout--main-content {
    flex: 1;
    min-height: 0;
  }

  @media (min-width: 640px) {
    .template--product .layout--main-content {
      grid-template-rows: 1fr;
    }
  }

  .template--product .layout--template {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-height: 0;
  }

  .template--product .layout--template > .shopify-section {
    flex: 1;
    display: flex;
    min-height: 0;
  }

  .template--product .main-product-519--root {
    flex: 1;
    min-height: 0;
  }
/* END_SECTION:main-product */

/* START_SECTION:map (INDEX:65) */
.map--blocks {
    align-self: center;

    .section-blocks--root {
      width: 100%;
    }
  }

  .map--media {
    align-self: stretch;
    border-radius: var(--image--radius);
    overflow: hidden;
  }

  .map--google-maps {
    --image--radius: 0; // otherwise effects iframe

    height: 100%;
    min-height: 300px;

    &[aria-hidden='true'] {
      display: none;
    }
  }

  .map--image {
    height: 100%;

    &[aria-hidden='true'] {
      display: none;
    }

    & img {
      height: 100%;
    }
  }

  .map--buttons-container {
    display: flex;
    column-gap: var(--spacing--item);
    row-gap: var(--spacing--1);
    align-items: center;
    flex-wrap: wrap;

    & > *:first-child[data-item='block-link']:has(+ *:not([data-item='block-link'])) {
      order: 1;
    }
  }
/* END_SECTION:map */

/* START_SECTION:media-with-highlight (INDEX:66) */
.media-with-highlight--root {
    .stacked-text--root:only-child .stacked-text--wrapper {
      @media (min-width: 768px) {
        padding-top: 0px;
        padding-bottom: 0px;
      }

      @media (max-width: 767px) {
        padding: 0;
      }
    }
  }

  .media-with-highlight--block {
    display: grid;

    > * {
      grid-area: 1 / -1;
    }

    .video--root {
      border-radius: var(--image--radius);
      overflow: hidden;
    }

    @media (min-width: 768px) {
      .video--header {
        margin: var(--spacing--item);
      }
    }
  }

  .media-with-highlight--navigation .carousel-nav-arrow {
    @media (max-width: 767px) {
      justify-content: center;
    }
  }
/* END_SECTION:media-with-highlight */

/* START_SECTION:newsletter (INDEX:67) */
.newsletter--wrapper {
    @media (min-width: 768px) {
      align-items: center;
    }
  }
/* END_SECTION:newsletter */

/* START_SECTION:overlapping-media (INDEX:69) */
.overlapping-media--root {
    overflow: hidden;
  }

  .overlapping-media--wrapper[data-container='split'] {
    align-items: center;

    @media (min-width: 768px) {
      --grid-columns: minmax(0, 1fr) minmax(0, var(--text-column-width));

      &[data-reverse-layout='true'] {
        --grid-columns: minmax(0, var(--text-column-width)) minmax(0, 1fr);
      }
    }
  }

  .overlapping-media--progress-container {
    display: flex;
    align-self: stretch;
    align-items: center;
  }

  .overlapping-media--blocks {
    --scaled-offset: calc(var(--image-offset) * var(--progress, 0));

    width: calc(100% + var(--image-offset));
    height: fit-content;
    margin: var(--image-offset) calc(-1 / 2 * var(--image-offset));
    display: flex;
    justify-content: center;
  }

  .overlapping-media--block {
    width: 50%;
    will-change: transform;
    backface-visibility: hidden;
    transition: transform 150ms linear;

    &:first-child {
      transform: translate3d(
        calc(1 / 2 * var(--image-offset) + var(--scaled-offset)),
        calc(-1 * var(--image-offset) + 2 * var(--scaled-offset)),
        0
      );
      z-index: 1;

      .layout--viewport[data-drop-shadows='true'] & > * {
        box-shadow: var(--box-shadow--center);
      }

      /* Force GPU acceleration for placeholder SVGs on iOS */
      .placeholder--root {
        transform: translateZ(0);
      }
    }

    &:last-child {
      transform: translate3d(
        calc(-1 / 2 * var(--image-offset) - 1 * var(--scaled-offset)),
        calc(var(--image-offset) - 2 * var(--scaled-offset)),
        0
      );
    }
  }
/* END_SECTION:overlapping-media */

/* START_SECTION:password (INDEX:70) */
.password--root {
    display: block;
    min-height: 100vh;
    min-height: 100dvh;

    @media (min-width: 768px) {
      background-attachment: fixed;
      background-repeat: no-repeat;
      background-size: cover;
    }

    .icon--shopify {
      width: 82.28571px;
      height: 24px;
      display: inline-block;
      line-height: 0;
      vertical-align: top;
    }
  }

  .password--info,
  .password--logo,
  .password--mailing-list {
    text-align: center;
    padding-bottom: var(--spacing--section--y);
  }

  .password--logo img {
    height: auto;
    width: var(--width);
    border-radius: 0;

    @media (max-width: 767px) {
      width: var(--mobile-width);
    }
  }

  .password--container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    @media (min-width: 768px) {
      padding-top: var(--spacing--section--y);
    }

    @media (max-width: 767px) {
      padding-top: var(--spacing--section--mobile--y);
    }
  }

  .password--form {
    width: 100%;
    max-width: 350px;
    padding: var(--spacing--section--y) 0;

    .password--root[data-show-login='false'] & {
      display: none;
    }

    & input[type='password'] {
      background-color: transparent;
      color: white;
      border: var(--border--light);
      margin-bottom: var(--spacing--item);
    }
  }

  .password--login {
    position: absolute;
    top: var(--spacing--item);
    right: var(--spacing--item);
    width: fit-content;
    padding: 0;

    & span {
      display: flex;
      align-items: end;
      justify-content: flex-end;
      gap: var(--spacing--1);
    }

    .password--root[data-show-login='true'] & {
      display: none;
    }

    @media (min-width: 768px) {
      top: var(--spacing--block);
      right: var(--spacing--block);
    }
  }

  .password--buttons-container {
    display: flex;
    align-items: center;
    gap: var(--spacing--item--mobile);

    @media (min-width: 768px) {
      gap: var(--spacing--item);
    }
  }

  .password--main {
    display: flex;
    align-items: center;
    flex-direction: column;

    .password--root[data-show-login='true'] & {
      display: none;
    }
  }

  .password--subtitle,
  .password--mailing-header {
    padding-bottom: var(--spacing--item);
  }

  .password--errors {
    & ul,
    & li {
      margin: 0;
      list-style: none;
      padding: 0;
    }

    & li {
      padding-bottom: var(--spacing--item);
    }
  }
/* END_SECTION:password */

/* START_SECTION:popup (INDEX:72) */
.popup--root {
    position: relative;
  }

  .popup--block--root[data-block-id] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--spacing--item);
    position: fixed;
    text-align: center;
    z-index: 10;
    user-select: none;

    .layout--viewport[data-drop-shadows='true'] & {
      box-shadow: var(--box-shadow--center);
    }

    .layout--viewport[data-drop-shadows='false'] & {
      border: var(--border--dark);
    }

    &[data-type='small-promotion'] {
      width: fit-content;
      border-radius: var(--spacing--block);
      padding: var(--spacing--item) var(--spacing--block);

      @media (min-width: 768px) {
        max-width: calc(100% - 2 * var(--spacing--block));

        &[data-scroll-text='true'] {
          max-width: 380px;
        }
      }
    }

    &:not([data-type='small-promotion']) {
      border-radius: 4px;
    }

    &[data-position='left'] {
      @media (max-width: 767px) {
        left: var(--spacing--item);
      }

      @media (min-width: 768px) {
        left: var(--spacing--block);
      }
    }

    &[data-position='right'] {
      @media (max-width: 767px) {
        right: var(--spacing--item);
      }

      @media (min-width: 768px) {
        right: var(--spacing--block);
      }
    }

    &:not([data-position='bottom']) {
      &:not([data-type='small-promotion']) {
        padding: var(--spacing--block);

        @media (min-width: 768px) {
          width: calc(100% - 2 * var(--spacing--block));
          max-width: 500px;
        }
      }

      @media (max-width: 767px) {
        width: calc(100% - 2 * var(--spacing--item));
        bottom: var(--spacing--item);
      }

      @media (min-width: 768px) {
        bottom: var(--spacing--block);
      }
    }

    &[data-position='bottom'] {
      left: var(--spacing--item);
      right: var(--spacing--item);
      bottom: var(--spacing--item);
      width: calc(100% - 2 * var(--spacing--item));

      @media (max-width: 767px) {
        padding: var(--spacing--block);
      }

      @media (min-width: 768px) {
        padding: var(--spacing--item) var(--spacing--block);
      }
    }

    &[aria-hidden='true'] {
      display: none;
    }

    .social-media--root:empty {
      display: none;
    }
  }

  .popup--block--container {
    display: flex;
    flex-direction: column;
    gap: var(--spacing--item);
    align-items: var(--x-alignment);
    text-align: var(--text-alignment);

    @media (min-width: 768px) {
      .popup--block--root[data-position='bottom'] & {
        flex-direction: row;
        justify-content: center;
        align-items: center;
      }
    }
  }

  .popup--block--wrapper {
    .popup--block--root[data-type='small-promotion'] & {
      white-space: nowrap;
      overflow-x: hidden;
    }

    @media (min-width: 768px) {
      .popup--block--root[data-type='small-promotion'][data-scroll-text='true'] & {
        mask-image: linear-gradient(to right, #000 95%, transparent);
      }
    }

    @media (max-width: 767px) {
      .popup--block--root[data-type='small-promotion'][data-mobile-scroll-text='true'] & {
        mask-image: linear-gradient(to right, #000 95%, transparent);
      }
    }
  }

  .popup--block--heading {
    > * {
      animation-play-state: running;
    }

    @media (min-width: 768px) {
      .popup--block--root[data-type='small-promotion'][data-scroll-text='true'] & {
        /* maps 1-10 value in settings to 20-5s for animation speed */
        --animation-speed: calc(
          ((10 - var(--popup--animation-speed)) * (20 - 5) / (10 - 1) + 5) * 1s
        );
        display: flex;
        gap: var(--spacing--item);
        mask-image: linear-gradient(to left, #000 95%, transparent);
        /* override typography */
        transform: none;
        margin: 0;
        line-height: 1;

        > * {
          animation: scrolling-content-mobile var(--animation-speed) linear infinite;
        }
      }
    }

    @media (max-width: 767px) {
      .popup--block--root[data-type='small-promotion'][data-mobile-scroll-text='true'] & {
        /* maps 1-10 value in settings to 20-5s for animation speed */
        --mobile-animation-speed: calc(
          ((10 - var(--popup--mobile-animation-speed)) * (20 - 5) / (10 - 1) + 5) * 1s
        );
        display: flex;
        gap: var(--spacing--item);
        mask-image: linear-gradient(to left, #000 95%, transparent);
        transform: none; /* override typography */

        > * {
          animation: scrolling-content-mobile var(--mobile-animation-speed) linear infinite;
          transform: translateZ(0); /* Force hardware acceleration */
          backface-visibility: hidden; /* Help with performance */
        }
      }
    }

    @media (min-width: 768px) {
      .popup--block--root[data-position='bottom'] & {
        display: none;
      }
    }
  }

  .popup--button {
    @media (min-width: 768px) {
      .popup--block--root[data-x-alignment='center'] & {
        justify-content: center;
      }

      .popup--block--root[data-x-alignment='right'] & {
        justify-content: flex-end;
      }
    }
  }

  .popup--button--container {
    &[aria-hidden='true'] {
      display: none;
    }
  }

  .layout--close {
    .popup--block--root:not([data-text-color='white']) & {
      &:before,
      &:after {
        background-color: var(--color--body);
      }
    }

    .popup--block--root[data-type='small-promotion'] & {
      --cross-size: var(--spacing--item);
    }

    .popup--block--root:not([data-type='small-promotion']) & {
      --cross-size: 20px;
      position: absolute;
      right: var(--spacing--2);
      top: var(--spacing--2);
    }
  }

  .popup--block--button-container {
    display: flex;
    gap: var(--spacing--item);
    text-transform: capitalize;

    @media (max-width: 767px) {
      flex-direction: column;
      width: 100%;

      > * {
        width: 100%;
      }
    }

    @media (min-width: 768px) {
      .popup--block--root[data-x-alignment='center'] & {
        justify-content: center;
      }

      .popup--block--root[data-x-alignment='right'] & {
        justify-content: flex-end;
      }
    }
  }
/* END_SECTION:popup */

/* START_SECTION:recent-products (INDEX:76) */
.recent-products--root {
    display: block;

    &[aria-hidden='true'] {
      display: none;
    }
  }

  .recent-products--title {
    @media (max-width: 767px) {
      text-align: center;
    }
  }

  .recent-products--grid {
    &[aria-hidden='true'] {
      display: none;
    }
  }

  .recent-products--spinner {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: var(--spacing--section--y) 0;

    [data-text-color='white'] & {
      fill: white;
    }

    &[aria-hidden='true'] {
      display: none;
    }
  }
/* END_SECTION:recent-products */

/* START_SECTION:related-products (INDEX:78) */
.related-products--root {
    &[aria-hidden='true'] {
      display: none;
    }
  }
/* END_SECTION:related-products */

/* START_SECTION:scrolling-content (INDEX:80) */
.scrolling-content--root {
    --scrolling-content--mobile-gap: calc(var(--scrolling-content--gap) * 0.7);
    position: relative;
  }

  .scrolling-content--wrapper {
    overflow: hidden;
  }

  .scrolling-content--blocks {
    display: flex;
    position: relative;
    gap: var(--scrolling-content--gap);
    user-select: none;
    z-index: 1;

    @media (max-width: 767px) {
      gap: var(--scrolling-content--mobile-gap);
    }
  }

  .scrolling-content--container {
    /* maps 1-10 value in settings to 40-3s for animation speed */
    --animation-speed: calc(
      ((10 - var(--scrolling-content--animation-speed)) * (40 - 3) / (10 - 1) + 3) * 1s
    );

    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: var(--scrolling-content--gap);
    animation: scrolling-content var(--animation-speed) linear infinite;
    animation-play-state: var(--animation-state);

    @media (max-width: 767px) {
      gap: var(--scrolling-content--mobile-gap);
      animation: scrolling-content-mobile var(--animation-speed) linear infinite;
      animation-play-state: var(--animation-state); // This is needed for the mobile version
      transform: translateZ(0); // Force hardware acceleration
      backface-visibility: hidden; // Help with performance
    }

    .scrolling-content--root[data-hover-pause='true']:hover & {
      --animation-state: paused;
    }

    .scrolling-content--root[data-direction='right'] & {
      animation-direction: reverse;
    }
  }

  .scrolling-content--block-wrapper {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    margin: 0;
    gap: var(--spacing--item);

    .scrolling-content--block[data-item='image'] & > * {
      width: calc(var(--aspect-ratio) * var(--scrolling-content--block-height));

      @media (max-width: 767px) {
        width: calc(var(--mobile-aspect-ratio) * var(--scrolling-content--block-mobile-height));
      }
    }
  }
/* END_SECTION:scrolling-content */

/* START_SECTION:scrolling-text-on-image (INDEX:81) */
.scrolling-text-on-image--root {
    --scrolling-content--mobile-gap: calc(var(--scrolling-content--gap) * 0.7);

    &[data-full-width-text='true'] {
      overflow-x: hidden;
    }
  }

  .scrolling-text-on-image--wrapper {
    position: relative;

    .scrolling-text-on-image--root[data-full-width-text='false'] & {
      overflow-x: hidden;
    }
  }

  .scrolling-text-on-image--content {
    z-index: 1;
    position: absolute;
    inset: 0;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .scrolling-text-on-image--blocks {
    display: flex;
    position: relative;
    gap: var(--scrolling-content--gap);
    user-select: none;
    z-index: 1;
    max-width: 100%;

    @media (max-width: 767px) {
      gap: var(--scrolling-content--mobile-gap);
    }
  }

  .scrolling-text-on-image--block-container {
    /* maps 1-10 value in settings to 40-3s for animation speed */
    --animation-speed: calc(
      ((10 - var(--scrolling-content--animation-speed)) * (40 - 3) / (10 - 1) + 3) * 1s
    );

    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: var(--scrolling-content--gap);
    animation: scrolling-content var(--animation-speed) linear infinite;
    animation-play-state: var(--animation-state);

    @media (max-width: 767px) {
      gap: var(--scrolling-content--mobile-gap);
      animation: scrolling-content-mobile var(--animation-speed) linear infinite;
      animation-play-state: var(--animation-state); /* This is needed for the mobile version */
      transform: translateZ(0); /* Force hardware acceleration */
      backface-visibility: hidden; /* Help with performance */
    }

    .scrolling-text-on-image--root[data-hover-pause='true']:has(
        .scrolling-text-on-image--blocks:hover
      )
      & {
      --animation-state: paused;
    }

    .scrolling-text-on-image--root[data-direction='right'] & {
      animation-direction: reverse;
    }
  }

  .scrolling-text-on-image--block {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    margin: 0;
    gap: var(--spacing--item);
  }
/* END_SECTION:scrolling-text-on-image */

/* START_SECTION:search-results (INDEX:83) */
.search-results--products {
    width: 100%;
  }

  .search-results--spinner {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: var(--spacing--8) 0;

    &[aria-hidden='true'] {
      display: none;
    }
  }

  .search-results--spinner-wrapper > * {
    margin: 0 auto;
  }

  .search-results--heading {
    text-align: center;
  }

  .search-results--filter-feedback {
    text-align: center;
    padding: var(--spacing--section--y) 0;
    background-color: var(--bg-color);

    @media (min-width: 768px) {
      [data-columns='2'] & {
        grid-column: 1 / span 2;
      }

      [data-columns='3'] & {
        grid-column: 1 / span 3;
      }

      [data-columns='4'] & {
        grid-column: 1 / span 4;
      }
    }

    @media (max-width: 767px) {
      [data-mobile-columns='1'] & {
        grid-column: 1 / span 1;
      }

      [data-mobile-columns='2'] & {
        grid-column: 1 / span 2;
      }
    }
  }

  .search-results--button {
    text-align: center;

    & a {
      padding: var(--spacing--item);
    }
  }

  .search-results--pagination {
    width: 100%;

    &:empty {
      display: none;
    }
  }
/* END_SECTION:search-results */

/* START_SECTION:service-list (INDEX:84) */
.service-list--container {
    display: flex;
    justify-content: center;
    gap: var(--spacing--block);

    &:has(> .service-list--block-header--text) {
      flex-wrap: wrap;
    }

    > .service-list--block-header--text {
      /* only appears via JS when there is one header block */
      width: 100%;
      text-align: left;
    }

    @media (max-width: 767px) {
      flex-direction: column;
    }
  }

  .service-list--block-header--text {
    @media (min-width: 768px) {
      text-align: center;
    }

    @media (max-width: 767px) {
      text-align: left;
    }
  }

  .service-list--single-column,
  .service-list--left-column,
  .service-list--right-column {
    display: none;
    height: fit-content;

    &:has(.service-list--blocks:empty) {
      display: none;
    }

    &:has(> *) {
      display: flex;
      flex-direction: column;
      gap: var(--spacing--block);
    }

    @media (min-width: 768px) {
      width: calc(50% - (var(--spacing--block) / 2));
    }

    @media (max-width: 767px) {
      width: 100%;
    }
  }

  .service-list--blocks {
    display: flex;
    flex-direction: column;

    .service-list--root[data-show-description='false'] & {
      gap: var(--spacing--item);
    }

    .service-list--root[data-show-description='true'] & {
      gap: var(--spacing--block);
    }
  }

  .service-list--block-header {
    text-align: center;
  }

  .service-list--price {
    padding-left: var(--spacing--5);
    padding-bottom: 2px;

    .service-list--root[data-show-description='false'] & {
      flex-grow: 0;
      flex-shrink: 1;
      padding-left: var(--spacing--2);
      padding-bottom: 0;
    }
  }

  .service-list--description {
    padding-top: var(--spacing--1);
  }

  .service-list--block-title {
    flex-grow: 1;

    .service-list--root[data-show-description='false'] & {
      flex-grow: 0;
      flex-shrink: 1;
      width: 100%;
      position: relative;
      overflow: hidden;

      &:after {
        content: '⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅';
        font-family: Arial, sans-serif;
        margin-left: var(--spacing--2);
        line-height: 2;
        position: absolute;
      }
    }
  }

  .service-list--info {
    display: flex;
    align-items: center;
    border-bottom: var(--border--dark);
    padding-bottom: var(--spacing--1);
    width: 100%;

    .service-list--root[data-show-description='false'] & {
      border-bottom: none;
      padding: 0;
    }

    .service-list--root[data-text-color='white'] & {
      border-bottom: var(--border--light);
    }
  }

  .service-list--block-title-text {
    .service-list--root[data-show-description='false'] & {
      display: inline;
    }
  }
/* END_SECTION:service-list */

/* START_SECTION:shop-the-banner (INDEX:90) */
.shop-the-banner--content {
    position: relative;
  }

  .shop-the-banner--button {
    display: block;
    height: unset;
    position: absolute;
    border-radius: 50%;
    background: transparent;
    z-index: 2;
    left: var(--left);
    top: var(--top);
    padding: var(--padding);

    @media (max-width: 767px) {
      --padding: 18px;
      --left: calc(var(--mobile-x-pos) - 24px); // px is half the width of button
      --top: calc(var(--mobile-y-pos) - 24px);
    }

    @media (min-width: 768px) {
      --padding: var(--spacing--3);
      --left: calc(var(--x-pos) - 20px);
      --top: calc(var(--y-pos) - 20px);
    }

    &:is(:hover, :focus-visible) {
      background: transparent;
    }
  }

  .shop-the-banner--product {
    --left-offset: 0; // this changes in JS, far left position helps calculate the width
    --top-offset: 24px;

    position: absolute;
    min-width: 220px; // gives space for expanded quick add button

    &[data-transition-active='true'] {
      z-index: 3;
    }

    @media (max-width: 767px) {
      left: calc(var(--mobile-x-pos) + var(--left-offset));
      top: calc(var(--mobile-y-pos) + var(--top-offset));
    }

    @media (min-width: 768px) {
      left: calc(var(--x-pos) + var(--left-offset));
      top: calc(var(--y-pos) + var(--top-offset));
    }

    > * {
      --padding: var(--spacing--1);
      padding: var(--padding);
      border-radius: calc(
        min(calc(var(--image--radius) + (var(--padding) / 2)), 32px) * var(--image--radius-enabled)
      );

      .layout--viewport[data-drop-shadows='true'] & {
        box-shadow: var(--box-shadow--center);
      }

      .layout--viewport[data-drop-shadows='false'] & {
        border: var(--border--dark);
      }
    }
  }
/* END_SECTION:shop-the-banner */

/* START_SECTION:shop-the-look (INDEX:91) */
.shop-the-look--block {
    display: flex;
    align-items: center;

    @media (max-width: 767px) {
      flex-direction: column;
    }
  }

  .shop-the-look--image {
    position: relative;

    @media (max-width: 767px) {
      width: 100%;
    }

    @media (min-width: 768px) {
      width: calc(100% - 300px + var(--spacing--block));
    }
  }

  .shop-the-look--products {
    display: grid;
    position: relative;

    @media (max-width: 767px) {
      row-gap: var(--spacing--item);
      margin-top: var(--spacing--neg-block);
      width: calc(100% - 2 * var(--spacing--block));
    }

    @media (min-width: 768px) {
      row-gap: var(--spacing--block);
      margin-left: var(--spacing--neg-block);
      width: 300px;
    }
  }

  .shop-the-look--product {
    grid-area: 1 / -1;

    &[aria-hidden='false'] {
      z-index: 1;
    }

    @media (min-width: 768px) {
      &[data-transition-item][data-transition-type='slide-in'] {
        transform: translate3d(32px, 0, 0);
      }

      .product-card--image-wrapper {
        border-radius: var(--image--radius);
        overflow: hidden;
        background-color: var(--bg-color--body);

        .layout--viewport[data-drop-shadows='true'] & {
          box-shadow: var(--box-shadow--center);
        }

        .layout--viewport[data-drop-shadows='false'] & {
          border: var(--border--dark);
        }
      }

      .product-card--details {
        padding: 0 var(--spacing--block);
      }

      .product-card--mini {
        display: none;
      }
    }

    @media (max-width: 767px) {
      .product-card--root {
        display: none;
      }

      .product-card--mini {
        --padding: var(--spacing--1);
        padding: var(--padding);
        border: var(--border--dark);
        border-radius: calc(
          min(calc(var(--image--radius) + (var(--padding) / 2)), 32px) * var(--image--radius-enabled)
        );
      }
    }
  }

  .shop-the-look--button {
    display: block;
    height: unset;
    position: absolute;
    border-radius: 50%;
    background: transparent;
    z-index: 2;

    @media (max-width: 767px) {
      padding: 18px;
      left: calc(var(--mobile-x-pos) - 24px); // px is half the width of button
      top: calc(var(--mobile-y-pos) - 24px);

      &[data-transition-active='true'] {
        padding: 10px;
        left: calc(var(--mobile-x-pos) - 16px);
        top: calc(var(--mobile-y-pos) - 16px);
      }
    }

    @media (min-width: 768px) {
      padding: var(--spacing--3);
      left: calc(var(--x-pos) - 20px);
      top: calc(var(--y-pos) - 20px);

      &[data-transition-active='true'] {
        padding: var(--spacing--1);
        left: calc(var(--x-pos) - 12px);
        top: calc(var(--y-pos) - 12px);
      }
    }

    &:is(:hover, :focus-visible) {
      background: transparent;
    }
  }

  .shop-the-look--next,
  .shop-the-look--prev {
    position: absolute;
    display: flex;
    align-items: center;
    z-index: 1;
    top: calc((var(--product-image-height) / 2) - var(--spacing--item));
  }

  .shop-the-look--prev {
    left: var(--spacing--neg-item);
  }

  .shop-the-look--next {
    right: var(--spacing--neg-item);
  }

  .shop-the-look--add {
    position: relative;
    justify-self: center;

    &[aria-busy='true'] {
      .shop-the-look--add-text {
        opacity: 0;
      }
    }

    &[aria-busy='false'] {
      .shop-the-look--spinner {
        opacity: 0;
      }
    }
  }
/* END_SECTION:shop-the-look */

/* START_SECTION:split-announcements (INDEX:93) */
.split-announcements--container {
    padding: var(--spacing--1) 0;

    @media (min-width: 768px) {
      display: grid;
      grid-template-columns: repeat(var(--store-message--columns), minmax(0, 1fr));

      &:empty {
        display: none;
      }

      & > *:not(:last-child) {
        border-right: var(--border--dark);
      }
    }

    @media (max-width: 767px) {
      text-align: center;
    }
  }

  .split-announcements--block {
    display: flex;
    text-align: center;
    align-items: center;
    justify-content: center;
    gap: var(--spacing--item);
    padding: var(--spacing--0) var(--spacing--item);
    margin: calc(var(--spacing--neg-1) / 2) 0;

    &:first-child {
      padding-left: 0;
    }

    &:last-child {
      padding-right: 0;
    }
  }

  .split-announcements--icon {
    flex-shrink: 0;
    line-height: 1;

    :is(img, svg) {
      height: 25px;
      width: auto;
    }
  }
/* END_SECTION:split-announcements */

/* START_SECTION:testimonials (INDEX:94) */
.testimonials--body {
    width: 100%;

    @media (min-width: 768px) {
      margin: 0 auto;
    }

    @media (max-width: 767px) {
      &[data-mobile-columns='2'] > *:nth-child(2n + 1):last-child {
        grid-column: 1 / span 2;
        justify-self: center;
        /* var(--spacing--3) is the grid gap */
        width: calc((100% - var(--spacing--3)) / 2);
      }
    }
  }

  .testimonials--image {
    width: 100%;
    max-width: 160px;
    margin: 0 auto;

    .testimonials--root[data-aspect-ratio='circle'] & img {
      aspect-ratio: 1;
      border-radius: 50%;
    }
  }

  .testimonials--icon {
    display: flex;
    justify-content: center;
    gap: var(--spacing--0);

    .icon--root[class*='star'] {
      max-width: 20px;
      max-height: 20px;
    }
  }

  .testimonials--info[data-background-color] {
    padding: var(--spacing--item);
  }
/* END_SECTION:testimonials */

/* CSS from snippet stylesheet tags */
/* START_SNIPPET:519-article-card (INDEX:99) */
.article-card-519--root {
    flex-grow: 0;
    flex-shrink: 1;
    flex-basis: auto;
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 0;
    border-bottom: 1px solid var(--color-black, #101010);
    border-right: 1px solid var(--color-black, #101010);
    margin-left: -1px;
  }

  .article-card-519--image-wrapper {
    width: 100%;
    display: block;
    position: relative;
    overflow: hidden;
    aspect-ratio: 4 / 5;
  }

  .article-card-519--image-wrapper .article-card-519--image,
  .article-card-519--image-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
    transition: transform 0.3s ease-out;
  }

  .article-card-519--image-wrapper .placeholder--root {
    width: 100%;
    height: 100%;
  }

  .article-card-519--image-wrapper .placeholder--container {
    width: 100%;
    height: 100%;
  }

  .article-card-519--root:hover .article-card-519--image-wrapper img,
  .article-card-519--root:focus-visible .article-card-519--image-wrapper img {
    transform: scale(1.05);
  }

  .article-card-519--content {
    padding: 1rem var(--spacing--block-padding);;
    display: flex;
    flex-direction: column;
    gap: 14px;
    border-top: 1px solid var(--color-black, #101010);
    flex: 1;
  }

  .article-card-519--cta {
    padding: 0 var(--spacing--block-padding) 1rem;
    margin-top: auto;
    color: var(--color-dark-green, #085204);
  }

  .article-card-519--brand {
    color: var(--color-black, #101010);
    text-transform: uppercase;
  }

  .article-card-519--title-link {
    text-decoration: none;
    color: inherit;
  }

  .article-card-519--title {
    color: var(--color-dark-green, #085204);
    word-break: break-word;
  }
/* END_SNIPPET:519-article-card */

/* START_SNIPPET:519-collection-filter (INDEX:102) */
.collection-nav-519--filter-root .filter--form {
    padding: 0;
  }

  .collection-nav-519--main-bar {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    width: 100%;
    background-color: var(--color-dark-green, #085204);
    padding: 12px var(--spacing--block-padding);
    gap: var(--spacing--block-padding);
  }

  .collection-nav-519--filter-category,
  .collection-nav-519--sort-category {
    display: flex;
    flex-direction: column;
    padding: 0;
  }

  .collection-nav-519--filter-category {
    flex: 1;
    align-items: flex-start;
  }

  .collection-nav-519--sort-category {
    flex: 1;
    align-items: flex-end;
  }

  .collection-nav-519--toggle {
    background: none;
    border: none;
    color: var(--color-white, #fcfcfc);
    cursor: pointer;
    padding: 0;
    font-size: 19px;
font-style: normal;
font-weight: 700;
line-height: 20px; /* 105.263% */
letter-spacing: 1.9px;
text-transform: uppercase;
  }

  .collection-nav-519--toggle:hover {
    opacity: 0.9;
  }

  .collection-nav-519--dropdown-bar {
    display: none;
    width: 100%;
    background-color: var(--color-dark-green, #085204);
    padding: var(--spacing--block-padding);
    margin-top: 0;
  }

  .filter--toggle[aria-expanded='true'] + .collection-nav-519--dropdown-bar {
    display: flex;
  }

  .collection-nav-519--filter-options {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 1.5rem;
    width: 100%;
  }

  .collection-nav-519--filter-option,
  .collection-nav-519--show-all {
    color: var(--color-white, #fcfcfc);
    text-decoration: none;
    text-transform: uppercase;
    margin: 0;
    font-style: normal;
font-weight: 700;
line-height: 20px; /* 105.263% */
letter-spacing: 1.9px;
text-transform: uppercase;
  }

  .collection-nav-519--show-all:hover {
    text-decoration: underline;
  }

  .collection-nav-519--option-label {
    color: var(--color-white, #fcfcfc);
    cursor: pointer;
    text-transform: uppercase;
    padding: 0;
    font-style: normal;
font-weight: 700;
line-height: 20px; /* 105.263% */
letter-spacing: 1.9px;
text-transform: uppercase;
  }

  .filter--link input:checked + .filter--label {
    text-decoration: underline;
  }

  .collection-nav-519--option-label:hover {
    opacity: 0.9;
  }

  .collection-nav-519--sort-options {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
    gap: 1.5rem;
    list-style: none;
    margin: 0;
    padding: 0;
  }

  .collection-nav-519--sort-option {
    display: flex;
  }

  .collection-nav-519--price-range-wrapper {
    display: flex;
    align-items: center;
  }

  .collection-nav-519--price-range-wrapper .price-range--root {
    --progress-bar: var(--color-white);
  }

  .collection-nav-519--price-range-wrapper .price-range--button > * {
    background-color: var(--color-white);
  }

  .collection-nav-519--price-range-wrapper .price-range--input,
  .collection-nav-519--price-range-wrapper .price-range--currency,
  .collection-nav-519--price-range-wrapper .price-range--separator {
    color: var(--color-white);
  }

  .collection-nav-519--no-filters {
    color: var(--color-white, #fcfcfc);
  }

  .filter--input:is([type='radio'], [type='checkbox']) {
    opacity: 0;
    width: 1px;
    height: 1px;
    margin: 0;
    position: absolute;
  }
/* END_SNIPPET:519-collection-filter */

/* START_SNIPPET:519-contact-form (INDEX:103) */
.contact-form-519--root {
          display: flex;
          flex-direction: column;
          justify-content: space-between;
          gap: 0;
          padding: 0;
        }

        .contact-form-519--heading {
          color: var(--color-dark-green, #085204);
          text-transform: uppercase;
          padding: var(--spacing--block-padding);
          padding-top: calc(var(--spacing--block-padding) * 2);
        }

        .contact-form-519--blocks {
          display: flex;
          flex-wrap: wrap;
          gap: 0;
          flex-direction: column;
          border-top: 1px solid var(--color-black, #101010);
        }

        @media (min-width: 768px) {
          .contact-form-519--blocks {
            flex-direction: row;
          }
        }

        @media (max-width: 767px) {
          .contact-form-519--blocks {
            flex-direction: column;
          }
        }

        .contact-form-519--block {
          flex: 1 1 100%;
          width: 100%;
          align-self: flex-end;
        }

        @media (min-width: 768px) {
          .contact-form-519--block[data-half-width="true"] {
            max-width: calc(50%);
          }
          .contact-form-519--block[data-half-width="true"]:has(+ [data-half-width="true"]) {
            border-right: 1px solid var(--color-black, #101010);
          }
        }

        .contact-form-519--block[data-block-type="checkbox"] {
          display: flex;
          align-items: center;
          gap: var(--spacing--2);
        }

        .contact-form-519--block[data-block-type="checkbox"] label {
          display: inline-flex;
          padding: 0;
        }

        .contact-form-519--block[data-block-type="empty-space"] {
        @media (min-width: 768px) {
          min-height: var(--desktop-height);
          margin-top: var(--spacing--neg-item);
        }
        @media (max-width: 767px) {
          min-height: var(--mobile-height);
          margin-top: var(--spacing--neg-item);
        }
      }

      .contact-form-519--label,
      .contact-form-519--input,
      .contact-form-519--select {
        text-transform: uppercase;
      }

      .contact-form-519--input,
      .contact-form-519--textarea,
      .contact-form-519--select {
        width: 100%;
        padding: var(--spacing--block-padding);
        margin: 0;
        color: var(--color-black, #101010);
        background: transparent;
        border: none;
        border-bottom: 1px solid var(--color-black, #101010);
      }

      .contact-form-519--input::placeholder,
      .contact-form-519--textarea::placeholder {
        color: var(--color-black, #101010);
        opacity: 0.6;
      }

      .contact-form-519--textarea {
        resize: vertical;
        min-height: 100px;
      }

      .contact-form-519--button {
        width: 100%;
        background-color: var(--color-black, #101010);
        color: var(--color-white, #FCFCFC);
        padding: calc(var(--spacing--block-padding) - 10px) var(--spacing--block-padding);
        border: none;
        cursor: pointer;
        text-transform: uppercase;
        height: fit-content;
        text-box: cap alphabetic;
        transition: background-color 0.3s ease-out;
      }
      .contact-form-519--button:hover, .contact-form-519--button:focus-visible {
        background-color: var(--color-dark-green, #085204);
      }

      .contact-form-519--button[aria-busy="true"] .contact-form-519--button-text {
        opacity: 0;
      }

      .contact-form-519--button[aria-busy="false"] .contact-form-519--button-spinner {
        opacity: 0;
      }

      .contact-form-519--recaptcha a {
        color: var(--color-dark-green, #085204);
      }

      .contact-form-519--success {
        padding: var(--spacing--block-padding);
        padding-top: calc(var(--spacing--block-padding) * 2);
        min-height: 220px;
        display: flex;
        align-items: center;
        border-top: 1px solid var(--color-black, #101010);
      }

      .contact-form-519--success-text {
        color: var(--color-dark-green, #085204);
        margin: 0;
      }

      [data-519-contact-form-fields][hidden],
      [data-519-contact-success][hidden] {
        display: none;
      }
/* END_SNIPPET:519-contact-form */

/* START_SNIPPET:519-double-image (INDEX:104) */
.double-image-519--root {
    width: 100%;
    height: auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    & > *:first-child {
      position: relative;
      &::after {
        content: "";
        position: absolute;
        right: 0;
        top: 0;
        bottom: 0;
        width: 1px;
        background-color: #000;
        pointer-events: none;
      }
    }
  }

  .double-image-519--image-wrapper {
    width: 100%;
    position: relative;
    aspect-ratio: 1 / 1;
    overflow: hidden;

    .double-image-519--link {
      display: block;
      width: 100%;
      height: 100%;
    }

    :is(.image--root, .placeholder--root) {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
    }

    img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
      display: block;
    }
  }
/* END_SNIPPET:519-double-image */

/* START_SNIPPET:519-editorial-card (INDEX:105) */
.editorial-card-519--root {
    width: 100%;
    height: 100%;
    display: grid;
    align-items: stretch;
    grid-template-columns: 1fr 1fr;
    text-align: left;
    text-decoration: none;
    color: inherit;
     & > *:first-child {
      position: relative;
      &::after {
        content: "";
        position: absolute;
        right: 0;
        top: 0;
        bottom: 0;
        width: 1px;
        background-color: var(--color-black, #101010);
        pointer-events: none;
      }
    }
  }

  .editorial-card-519--root.editorial-card-519--flipped {
    & > *:first-child {
      &::after {
        display: none;
      }
      order: 2;
    }
    & > *:last-child {
      position: relative;
      order: 1;
      &::after {
        content: "";
        position: absolute;
        left: auto;
        right: 0;
        top: 0;
        bottom: 0;
        width: 1px;
        background-color: var(--color-black, #101010);
        pointer-events: none;
      }
    }
  }

  .editorial-card-519--image-wrapper {
    width: 100%;
    position: relative;
    aspect-ratio: 1 / 1;
    overflow: hidden;

    :is(.image--root, .placeholder--root) {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
    }

    img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
      display: block;
      transition: transform 0.3s ease-out;
    }
  }

  .editorial-card-519--root:hover .editorial-card-519--image-wrapper,
  .editorial-card-519--root:focus-visible .editorial-card-519--image-wrapper,
  .editorial-card-519--root:focus-within .editorial-card-519--image-wrapper {
    img {
      transform: scale(1.05);
    }
  }

  .editorial-card-519--content-wrapper {
    --content-padding: var(--spacing--block-padding);
    padding: var(--content-padding);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
  }

  .editorial-card-519--content {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
    gap: 1.5rem;
  }

  .editorial-card-519--link {
    width: 100%;
    display: flex;
    align-items: flex-start;
    text-align: left;
  }

  .editorial-card-519--content .heading-519--root[data-block-type="title"] {
    color: var(--color-dark-green, #085204);
  }

  .editorial-card-519--root:hover .editorial-card-519--link .button-519-cta,
  .editorial-card-519--root:focus-visible .editorial-card-519--link .button-519-cta,
  .editorial-card-519--root:focus-within .editorial-card-519--link .button-519-cta {
    text-decoration: underline;
    text-underline-offset: 0.4ex;
    text-decoration-color: inherit;
  }
/* END_SNIPPET:519-editorial-card */

/* START_SNIPPET:519-event-block (INDEX:106) */
.event-block-519--root {
    width: 100%;
    flex: 1;
    height: auto;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 2.5rem;
  }

  .event-block-519--root.event-block-519--align-center {
    text-align: center;
  }

  .event-block-519--root.event-block-519--align-left {
    text-align: left;
  }

  .event-block-519--upper,
  .event-block-519--lower {
    width: 100%;
    max-width: 65ch;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    padding-inline: var(--spacing--block-padding);
  }

  .event-block-519--upper {
    padding-top: 60px;
  }

  .event-block-519--lower {
    padding-bottom: 60px;
  }

  .event-block-519--root.event-block-519--align-center .event-block-519--upper,
  .event-block-519--root.event-block-519--align-center .event-block-519--lower {
    margin-inline: auto;
    align-items: center;
    text-align: center;
  }

  .event-block-519--root.event-block-519--align-left .event-block-519--upper,
  .event-block-519--root.event-block-519--align-left .event-block-519--lower {
    margin-inline: 0;
    align-items: flex-start;
    text-align: left;
  }

  .event-block-519--upper .heading-519--root[data-block-type="heading"],
  .event-block-519--rsvp-title {
    color: var(--color-dark-green, #085204);
  }

  .event-block-519--divider {
    width: 100%;
    border-top: 1px solid #000;
  }

  .event-block-519--root.event-block-519--align-center .event-block-519--link {
    justify-content: center;
    align-items: center;
    text-align: center;
  }

  .event-block-519--root.event-block-519--align-left .event-block-519--link {
    justify-content: flex-start;
    align-items: flex-start;
    text-align: left;
  }

  .event-block-519--link {
    width: 100%;
    display: flex;
  }

  @media (max-width: 900px) {
    .event-block-519--root.event-block-519--align-center .event-block-519--upper,
    .event-block-519--root.event-block-519--align-center .event-block-519--lower {
      margin: 0 auto;
    }
  }
/* END_SNIPPET:519-event-block */

/* START_SNIPPET:519-faq (INDEX:107) */
.faq-519--root {
    width: 100%;
    flex: 1;
    height: auto;
    display: flex;
    flex-direction: column;
    --extra-horizontal-padding: 0px;
    --extra-bottom-padding: 0px;
    padding-inline: calc(var(--spacing--block-padding) + var(--extra-horizontal-padding));
    padding-bottom: calc(var(--spacing--block-padding) + 5px + var(--extra-bottom-padding));
    padding-top: calc(var(--spacing--block-padding) + 5px);
    text-align: left;
  }

  .faq-519--root.extra-horizontal-padding-small {
    --extra-horizontal-padding: var(--spacing--3);
  }
  .faq-519--root.extra-horizontal-padding-large {
    --extra-horizontal-padding: var(--spacing--5);
  }
  .faq-519--root.extra-bottom-padding-small {
    --extra-bottom-padding: var(--spacing--3);
  }
  .faq-519--root.extra-bottom-padding-large {
    --extra-bottom-padding: var(--spacing--5);
  }

  .faq-519--content {
    width: 100%;
    max-width: 65ch;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
    gap: 2rem;
  }

  .faq-519--heading {
    color: var(--color-dark-green, #085204);
  }

  .faq-519--list {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 2rem;
  }

  .faq-519--item {
    display: flex;
    flex-direction: column;
    gap: 10px;
  }

  .faq-519--question {
    color: var(--color-dark-green, #085204);
    font-weight: 600;
  }

  .faq-519--answer {
    color: var(--color-black, #101010);
  }
/* END_SNIPPET:519-faq */

/* START_SNIPPET:519-mega-menu (INDEX:114) */
.mega-menu-519--root {
    display: flex;
    flex-direction: column;
    background-color: var(--color-white);
    color: var(--color-dark-green);
  }

  @media (min-width: 900px) {
    .mega-menu-519--root {
      min-height: fit-content;
      max-height: 800px;
      height: fit-content;
    }
  }

  .mega-menu-519--header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px var(--spacing--block-padding);
    border-bottom: 1px solid var(--color-black);
  }

  .mega-menu-519--close {
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    color: var(--color-dark-green);
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .mega-menu-519--close svg {
    width: 17px;
    height: 17px;
  }

  .mega-menu-519--logo {
    flex: 1;
    display: flex;
    justify-content: center;
  }

  .mega-menu-519--utilities {
    display: flex;
    align-items: center;
    gap: var(--spacing--item);
  }

  .mega-menu-519--search,
  .mega-menu-519--account,
  .mega-menu-519--cart {
    color: var(--color-dark-green);
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .mega-menu-519--search svg,
  .mega-menu-519--account svg,
  .mega-menu-519--cart svg {
    width: 20px;
    height: 20px;
  }

  .mega-menu-519--content {
    display: grid;
    grid-template-columns: 1fr;
    flex: 1;
  }

  @media (min-width: 900px) {
    .mega-menu-519--content {
      grid-template-columns: 1fr 1fr;
    }
  }

  .mega-menu-519--menu-columns {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: var(--spacing--block-padding);
    padding: var(--spacing--block-padding);
    align-content: start;
  }

  @media (min-width: 900px) {
    .mega-menu-519--menu-columns {
      grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    }
  }

  .mega-menu-519--column {
    display: flex;
    flex-direction: column;
    gap: var(--spacing--item);
  }

  .mega-menu-519--heading {
    color: var(--Dark-Green, #085204);
    font-family: "Feature Deck Regular"
    , "Feature Deck Condensed"
    , Georgia
    , "Times New Roman"
    , Times;
    font-size: 26px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
    text-transform: uppercase;
    margin: 0;
  }

  .mega-menu-519--heading-link {
    color: inherit;
    text-decoration: underline;
    text-decoration-color: transparent;
    text-underline-offset: 0.2ex;
    transition: text-decoration 200ms ease-out
    , text-underline-offset 200ms ease-out;
  }

  .mega-menu-519--heading-link:hover,
  .mega-menu-519--heading-link:focus-visible {
    text-decoration: underline;
    text-underline-offset: 0.4ex;
    text-decoration-color: inherit;
  }

  .mega-menu-519--links {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: var(--spacing--0);
  }

  .mega-menu-519--link {
    color: var(--color-dark-green);
    display: block;
    text-decoration: underline;
    text-decoration-color: transparent;
    text-underline-offset: 0.2ex;
    transition: text-decoration 200ms ease-out
    , text-underline-offset 200ms ease-out;
  }

  .mega-menu-519--link:hover,
  .mega-menu-519--link:focus-visible {
    text-decoration: underline;
    text-underline-offset: 0.4ex;
    text-decoration-color: inherit;
  }

  .mega-menu-519--image {
    display: none;
  }

  .mega-menu-519--image-mobile {
    display: block;
    width: 100%;
    border-block: 1px solid var(--color-black);
  }

  .mega-menu-519--image-mobile img {
    width: 100%;
    height: auto;
    max-height: 300px;
    object-fit: cover;
    display: block;
  }

  @media (min-width: 900px) {
    .mega-menu-519--image {
      display: block;
      border-left: 1px solid var(--color-black);
    }

    .mega-menu-519--image img {
      width: 100%;
      height: 100%;
      max-height: 435px;
      object-fit: cover;
    }

    .mega-menu-519--image-mobile {
      display: none;
    }
  }

  .mega-menu-519--footer {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: var(--spacing--block-padding);
    padding: var(--spacing--block-padding);
    border-top: 1px solid var(--color-black);
  }

  @media (min-width: 900px) {
    .mega-menu-519--footer {
      grid-template-columns: repeat(3, 1fr);
    }
  }

  .mega-menu-519--connect,
  .mega-menu-519--footer-link,
  .mega-menu-519--newsletter {
    display: flex;
    flex-direction: column;
    gap: var(--spacing--item);
  }

  .mega-menu-519--footer-heading {
    color: var(--Dark-Green, #085204);
    font-family: "Feature Deck Regular"
    , "Feature Deck Condensed"
    , Georgia
    , "Times New Roman"
    , Times;
    font-size: 26px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
    text-transform: uppercase;
    margin: 0;
  }

  .mega-menu-519--social-links {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: var(--spacing--0);
  }

  @media (min-width: 900px) {
    .mega-menu-519--social-links {
      flex-direction: row;
      gap: var(--spacing--item);
    }
  }

  .mega-menu-519--social-link {
    color: var(--color-dark-green);
    text-decoration: underline;
    text-decoration-color: transparent;
    text-underline-offset: 0.2ex;
    transition: text-decoration 200ms ease-out
    , text-underline-offset 200ms ease-out;
  }

  .mega-menu-519--social-link:hover,
  .mega-menu-519--social-link:focus-visible {
    text-decoration: underline;
    text-underline-offset: 0.4ex;
    text-decoration-color: inherit;
  }

  .mega-menu-519--footer-link-anchor {
    color: var(--color-dark-green);
    text-decoration: underline;
    text-decoration-color: transparent;
    text-underline-offset: 0.2ex;
    transition: text-decoration 200ms ease-out
    , text-underline-offset 200ms ease-out;
  }

  .mega-menu-519--footer-link-anchor:hover,
  .mega-menu-519--footer-link-anchor:focus-visible {
    text-decoration: underline;
    text-underline-offset: 0.4ex;
    text-decoration-color: inherit;
  }

  .mega-menu-519--newsletter {
    display: none;
  }

  @media (min-width: 900px) {
    .mega-menu-519--newsletter {
      display: flex;
    }
  }

  .mega-menu-519--newsletter-form {
    display: flex;
    flex-direction: column;
    gap: var(--spacing--item);
  }

  .mega-menu-519--form-fields {
    display: flex;
    flex-direction: column;
    gap: var(--spacing--item);
  }

  .mega-menu-519--form-input {
    background: none;
    border: none;
    border-bottom: 1px solid var(--color-dark-green);
    padding: var(--spacing--0) 0;
    color: var(--color-dark-green);
    outline: none;
  }

  .mega-menu-519--form-input::placeholder {
    color: var(--color-grey);
  }

  .mega-menu-519--newsletter-button {
    display: flex;
    align-items: center;
    gap: var(--spacing--0);
    background: none;
    border: none;
    padding: 0;
    color: var(--color-dark-green);
    cursor: pointer;
    text-align: left;
  }

  .mega-menu-519--newsletter-button:hover {
    text-decoration: underline;
  }

  .mega-menu-519--newsletter-button svg {
    width: 16px;
    height: 12px;
  }
/* END_SNIPPET:519-mega-menu */

/* START_SNIPPET:519-newsletter-form (INDEX:115) */
.footer-519--newsletter-form-wrapper {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    min-height: 180px;
  }

  .footer-519--form-container {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
  }

  .footer-519--form-success {
    display: flex;
    align-items: center;
    min-height: 180px;
    padding: 0.5rem 0;
  }

  .footer-519--form-success-text {
    margin: 0;
    font-weight: 600;
    letter-spacing: 1.44px;
    color: var(--color-white, #fcfcfc);
  }

  [data-519-newsletter-form-fields][hidden],
  [data-519-newsletter-success][hidden] {
    display: none;
  }
/* END_SNIPPET:519-newsletter-form */

/* START_SNIPPET:519-product-card (INDEX:116) */
.product-card-519--root {
    flex-grow: 0;
    flex-shrink: 1;
    flex-basis: auto;
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 0;
  }

  .product-card-519--image-wrapper {
    width: 100%;
    display: block;
    position: relative;
    overflow: hidden;
    aspect-ratio: 3 / 4;
  }

  .product-card-519--image-wrapper .product-card-519--image,
  .product-card-519--image-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
    transition: transform 0.3s ease-out;
  }

  .product-card-519--image-wrapper .placeholder--root {
    width: 100%;
    height: 100%;
  }

  .product-card-519--image-wrapper .placeholder--container {
    width: 100%;
    height: 100%;
  }

  .product-card-519--root:hover .product-card-519--image-wrapper img,
  .product-card-519--root:focus-visible .product-card-519--image-wrapper img {
    transform: scale(1.05);
  }

  .product-card-519--content {
    --content-padding: var(--spacing--block-padding);
    padding: var(--content-padding);
    display: flex;
    flex-direction: column;
    gap: 14px;
    border-top: 1px solid var(--color-black, #101010);
  }

  .product-card-519--brand {
    color: var(--color-black, #101010);
    text-transform: uppercase;
  }

  .product-card-519--title-link {
    text-decoration: none;
    color: inherit;
  }

  .product-card-519--title {
    color: var(--color-dark-green, #085204);
    word-break: break-word;
  }

  .product-card-519--price-wrapper {
    color: var(--color-dark-green, #085204);
  }

  .product-card-519--price-wrapper .product--price-container,
  .product-card-519--price-wrapper .product--price-wrapper,
  .product-card-519--price-wrapper .product--price,
  .product-card-519--price-wrapper .product--compare-price,
  .product-card-519--price-wrapper .product--from {
    color: inherit;
  }
  .product-card-519--price-wrapper .product--from {
    text-transform: uppercase !important;
    text-box: cap alphabetic;
    }

  .product-card-519--price-wrapper .product--compare-price {
    color: var(--color-grey, #e0e0e0);
  }
/* END_SNIPPET:519-product-card */

/* START_SNIPPET:519-product-media (INDEX:117) */
.product-media-519--root {
    display: block;
    width: 100%;
    height: 100%;
  }

  .product-media-519--desktop {
    display: none;
  }

  @media (min-width: 768px) {
    .product-media-519--desktop {
      display: flex;
      flex-direction: column;
      height: 100%;
    }

    .product-media-519--mobile {
      display: none;
    }
  }

  .product-media-519--main {
    width: 100%;
    flex: 1;
  }

  .product-media-519--root .product-media--root {
    border-radius: 0;
    height: 100%;
  }

  .product-media-519--root .product-media--root[data-active='false'] {
    display: none;
  }

  .product-media-519--root .product-media--root[data-active='true'] {
    display: block;
  }

  .product-media-519--thumbs {
    display: block;
    border-top: 1px solid var(--color-black, #101010);
    width: 100%;
  }

  .product-media-519--thumbs-wrapper {

    display: flex;
    overflow-x: auto;
    scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none; /* IE and Edge */

    &::-webkit-scrollbar {
      display: none; /* Chrome, Safari and Opera */
    }
  }

  .product-media-519--thumb {
    cursor: pointer;
    width: 120px;
    min-width: 120px;
    height: 110px;
    user-select: none;
    position: relative;
    border-right: 1px solid var(--color-black, #101010);
    border-radius: 0;
    overflow: hidden;
    flex-shrink: 0;

    > img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      pointer-events: none;
    }

    &:focus-visible {
      outline: 2px solid var(--color-black, #101010);
      outline-offset: 2px;
    }
  }

  .product-media-519--thumb-icon {
    position: absolute;
    top: 4px;
    right: 4px;
    z-index: 1;

    svg.icon--root {
      background-color: var(--color-white, #fcfcfc);
      border-radius: 2px;
    }
  }

  @media (max-width: 767px) {
    .product-media-519--thumbs-wrapper {
      gap: var(--spacing--1);
    }

    .product-media-519--thumb {
      width: 80px;
      min-width: 80px;
      height: 80px;
    }
  }

  /* Single media full height styles */
  .product-media-519--root[data-single-media="true"] {
    height: 100%;
  }

  .product-media-519--root[data-single-media="true"] .product-media-519--desktop {
    height: 100%;
  }

  .product-media-519--root[data-single-media="true"] .product-media-519--main {
    height: 100%;
  }

  .product-media-519--root[data-single-media="true"] .product-media--root {
    height: 100%;
  }

  .product-media-519--root[data-single-media="true"] .product-media--modal {
    height: 100%;
  }

  .product-media-519--root[data-single-media="true"] .product-zoom--root, .product-media-519--root .product-model--root {
    height: 100% !important;
  }

  .product-media-519--root[data-single-media="true"] .product-zoom--wrapper,
  .product-media-519--root[data-single-media="true"] .product-media--root img:not(.product-zoom--enlarged) {
    height: 100%;
    width: 100%;
    object-fit: cover;
  }
/* END_SNIPPET:519-product-media */

/* START_SNIPPET:519-promo-card (INDEX:118) */
.promo-card-519--root {
    position: relative;
    width: 100%;
    height: 100%;
    min-height: clamp(25rem, 17.3295rem + 34.0909vw, 43.75rem);
    overflow: hidden;
    display: flex;
    align-items: end;
    text-decoration: none;
    color: inherit;
    flex-grow: 1;
  }

  .promo-card-519--image-wrapper {
    width: 100%;
    height: 100%;
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;

    &::after {
      content: '';
      position: absolute;
      inset: 0;
      background-color: #00000066;
      z-index: 1;
      transition: opacity 0.3s ease;
    }
  }

  .promo-card-519--root[data-image-overlay="dark"] .promo-card-519--image-wrapper::after {
    opacity: var(--image-overlay--dark);
  }
  .promo-card-519--root[data-image-overlay="medium"] .promo-card-519--image-wrapper::after {
    opacity: var(--image-overlay--medium);
  }
  .promo-card-519--root[data-image-overlay="light"] .promo-card-519--image-wrapper::after {
    opacity: var(--image-overlay--light);
  }

  .promo-card-519--image-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform 0.3s ease-out;
  }

  .promo-card-519--content {
    position: relative;
    height: 100%;
    z-index: 2;
    padding: var(--spacing--block-padding);
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: 1.5rem;
    color: white;
    & .heading-519--root {
      text-wrap: pretty;
    }
  }

  .promo-card-519--content .heading-519--root {
    color: white;
  }

  a.promo-card-519--root:hover .promo-card-519--image-wrapper,
  a.promo-card-519--root:focus-visible .promo-card-519--image-wrapper,
  a.promo-card-519--root:focus-within .promo-card-519--image-wrapper {
    img {
      transform: scale(1.05);
    }
  }
  a.promo-card-519--root[data-image-overlay="dark"]:hover .promo-card-519--image-wrapper::after,
  a.promo-card-519--root[data-image-overlay="dark"]:focus-visible .promo-card-519--image-wrapper::after,
  a.promo-card-519--root[data-image-overlay="dark"]:focus-within .promo-card-519--image-wrapper::after {
    opacity: var(--image-overlay--dark-hover);
  }
  a.promo-card-519--root[data-image-overlay="medium"]:hover .promo-card-519--image-wrapper::after,
  a.promo-card-519--root[data-image-overlay="medium"]:focus-visible .promo-card-519--image-wrapper::after,
  a.promo-card-519--root[data-image-overlay="medium"]:focus-within .promo-card-519--image-wrapper::after {
    opacity: var(--image-overlay--medium-hover);
  }
  a.promo-card-519--root[data-image-overlay="light"]:hover .promo-card-519--image-wrapper::after,
  a.promo-card-519--root[data-image-overlay="light"]:focus-visible .promo-card-519--image-wrapper::after,
  a.promo-card-519--root[data-image-overlay="light"]:focus-within .promo-card-519--image-wrapper::after {
    opacity: var(--image-overlay--light-hover);
  }
/* END_SNIPPET:519-promo-card */

/* START_SNIPPET:519-restaurant-cta (INDEX:119) */
.restaurant-cta-519--root {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: var(--spacing--block-padding);
    position: relative;
  }

  .restaurant-cta-519--content {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 2rem;
    padding: var(--spacing--block-padding);
    padding-top: calc(var(--spacing--block-padding) + 1rem);
    flex-shrink: 0;
  }

  .restaurant-cta-519--content .heading-519--root {
    width: 100%;
  }

  .restaurant-cta-519--content .heading-519--root[data-block-type="heading"] {
    color: var(--color-dark-green, #085204);
    max-width: 300px;
  }

  .restaurant-cta-519--button {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: var(--color-dark-green, #085204);
  }

  .restaurant-cta-519--image-link {
    display: block;
    width: 100%;
    text-decoration: none;
    color: inherit;
  }

  .restaurant-cta-519--image-wrapper {
    width: 100%;
    aspect-ratio: 5 / 4;
    padding-inline: 1rem;
    flex-shrink: 0;
    overflow: hidden;
    position: relative;
    z-index: 0;
  }

  .restaurant-cta-519--image-wrapper::after {
    content: "";
    position: absolute;
    top: -5px;
    left: 1rem;
    right: 1rem;
    bottom: 1px;
    pointer-events: none;
    z-index: 1;
    background: linear-gradient(to bottom, white 0%, white 5%, transparent 20%, transparent 100%), linear-gradient(to right, white 0%, transparent 20%, transparent 80%, white 100%);
  }

  .restaurant-cta-519--image-wrapper:is(.image--root, .placeholder--root),
  .restaurant-cta-519--image-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
  }

  @media (max-width: 900px) {
    .restaurant-cta-519--content {
      padding-top: 60px;
      padding-bottom: 40px;
    }
  }
/* END_SNIPPET:519-restaurant-cta */

/* START_SNIPPET:519-stacked-feature-card (INDEX:120) */
.stacked-feature-card-519--root {
    width: 100%;
    height: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    text-align: left;
    text-decoration: none;
    color: inherit;
    & > *:first-child {
      position: relative;
      &::after {
        content: "";
        position: absolute;
        right: 0;
        top: 0;
        bottom: 0;
        width: 1px;
        background-color: #000;
        pointer-events: none;
      }
    }
  }

  .stacked-feature-card-519--image-wrapper {
    width: 100%;
    position: relative;
    overflow: hidden;

    :is(.image--root, .placeholder--root) {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
    }

    img {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
      display: block;
      transition: transform 0.3s ease-out;
    }
  }

  .stacked-feature-card-519--root:hover .stacked-feature-card-519--image-wrapper,
  .stacked-feature-card-519--root:focus-visible .stacked-feature-card-519--image-wrapper,
  .stacked-feature-card-519--root:focus-within .stacked-feature-card-519--image-wrapper {
    img {
      transform: scale(1.05);
    }
  }

  .stacked-feature-card-519--content-wrapper {
    --content-padding: var(--spacing--block-padding);
    padding: calc(var(--content-padding) + 10px)  var(--content-padding) ;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 1.5rem;
    height: 100%;
  }

  .stacked-feature-card-519--content {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
    gap: 1.75rem;
    /* padding-bottom: 80px; */
  }

  .stacked-feature-card-519--description {
    width: 100%;
  }

  .stacked-feature-card-519--link {
    width: 100%;
    display: flex;
    align-items: flex-start;
    text-align: left;
  }

  .stacked-feature-card-519--content .heading-519--root[data-block-type="title"] {
    color: var(--color-dark-green, #085204);
  }

  .stacked-feature-card-519--root:hover .stacked-feature-card-519--link .button-519-cta,
  .stacked-feature-card-519--root:focus-visible .stacked-feature-card-519--link .button-519-cta,
  .stacked-feature-card-519--root:focus-within .stacked-feature-card-519--link .button-519-cta {
    text-decoration: underline;
    text-underline-offset: 0.4ex;
    text-decoration-color: inherit;
  }
/* END_SNIPPET:519-stacked-feature-card */

/* START_SNIPPET:519-store-info (INDEX:121) */
.store-info-519--root {
    width: 100%;
    height: auto;
    padding-top: 70px;
    padding-bottom: 70px;

    @media (max-width: 900px) {
      padding-top: 40px;
      padding-bottom: 40px;
    }
  }

  .store-info-519--content {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    align-items: center;
    text-align: center;
    & .text-519--root {
      font-size: clamp(0.875rem, 0.7308rem + 0.5769vw, 1.25rem);
      line-height: 1.5;
    }
  }

  .store-info-519--content .heading-519--root,
  .store-info-519--content .text-519--root {
    width: 100%;
  }

  .store-info-519--content .heading-519--root[data-block-type="heading"] {
    color: var(--color-dark-green, #085204);
    max-width: 300px;
  }
/* END_SNIPPET:519-store-info */

/* START_SNIPPET:519-text-block (INDEX:122) */
.text-block-519--root {
    width: 100%;
    flex: 1;
    height: auto;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 60px;
    --text-padding: clamp(1.125rem, 0.7885rem + 1.3462vw, 2rem);
    --extra-horizontal-padding: 0px;
    --extra-bottom-padding: 0px;
    padding-inline: calc(var(--spacing--block-padding) + var(--extra-horizontal-padding));
    padding-bottom: calc(var(--spacing--block-padding) + 5px + var(--extra-bottom-padding));
    padding-top: calc(var(--spacing--block-padding) + 5px);
    text-align: left;
  }

  .text-block-519--root.extra-horizontal-padding-small {
    --extra-horizontal-padding: var(--spacing--3);
  }
  .text-block-519--root.extra-horizontal-padding-large {
    --extra-horizontal-padding: var(--spacing--5);
  }
  .text-block-519--root.extra-bottom-padding-small {
    --extra-bottom-padding: var(--spacing--3);
  }
  .text-block-519--root.extra-bottom-padding-large {
    --extra-bottom-padding: var(--spacing--5);
  }

  .text-block-519--content {
    width: 100%;
    max-width: 65ch;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
    gap: 1.5rem;
  }

  @media (max-width: 900px) {
    .text-block-519--content {
      margin: 0;
    }
  }
  .text-block-519--link {
    width: 100%;
    display: flex;
    align-items: flex-start;
    text-align: left;
  }

  .text-block-519--content .heading-519--root[data-block-type="heading-2"] {
    color: var(--color-dark-green, #085204);
  }
/* END_SNIPPET:519-text-block */

/* START_SNIPPET:article-card (INDEX:123) */
.article-card--root {
    align-items: var(--x-alignment);
  }

  .article-card--image {
    display: block;
    width: 100%;
    border-radius: var(--image--radius);
  }

  .article-card--info {
    display: flex;
    gap: var(--spacing--1);

    @media (max-width: 767px) {
      flex-direction: column;
    }

    [data-columns='3'] & {
      flex-direction: column;
    }
  }

  .article-card--dot {
    [data-columns='3'] & {
      display: none;
    }
  }
/* END_SNIPPET:article-card */

/* START_SNIPPET:blog-filter-bar (INDEX:124) */
.blog-filter-bar--root {
    width: 100%;
  }

  .blog-filter-bar--bar {
    width: 100%;
    background-color: var(--color-bg);
    color: var(--color-text);
    padding: var(--spacing--block-padding);
  }

  .blog-filter-bar--menu {
    display: flex;
    justify-content: space-around;
    align-items: center;
    gap: var(--spacing--item);
    flex-wrap: wrap;
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .blog-filter-bar--item {
    display: flex;
  }

  .blog-filter-bar--link,
  .blog-filter-bar--dropdown-link {
    font-family: var(--font--paragraph--family);
    font-weight: 600;
    font-size: clamp(0.875rem, 0.8269rem + 0.1923vw, 1rem);
    letter-spacing: 1.6px;
    color: inherit;
    text-decoration: underline;
    text-transform: uppercase;
    text-decoration-color: transparent;
    padding: 0;
    text-underline-offset: 0.2ex;
    transition:
      text-decoration 200ms ease-out,
      text-underline-offset 200ms ease-out;
  }

  .blog-filter-bar--link:hover,
  .blog-filter-bar--link:focus-visible,
  .blog-filter-bar--dropdown-link:hover,
  .blog-filter-bar--dropdown-link:focus-visible {
    text-decoration: underline;
    text-underline-offset: 0.4ex;
    text-decoration-color: inherit;
  }

  .blog-filter-bar--link-active {
    text-decoration: underline;
    text-decoration-color: inherit;
    text-underline-offset: 0.4ex;
  }

  /* Mobile toggle */
  .blog-filter-bar--mobile {
    display: flex;
    flex-direction: column;
    align-items: stretch;
  }

  .blog-filter-bar--toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5em;
    width: 100%;
    background: none;
    border: none;
    color: inherit;
    text-transform: uppercase;
    cursor: pointer;
    padding: 0.5em;
    font: inherit;
  }

  .blog-filter-bar--toggle .icon--chevron-down {
    transition: transform 0.2s ease-out;
  }

  .blog-filter-bar--toggle[aria-expanded="true"] .icon--chevron-down {
    transform: rotate(180deg);
  }

  .blog-filter-bar--dropdown {
    display: flex;
    flex-direction: column;
    margin-top: var(--spacing--item);
    border-top: 1px solid rgba(255, 255, 255, 0.3);
  }

  .blog-filter-bar--dropdown[hidden] {
    display: none;
  }

  .blog-filter-bar--dropdown-inner {
    display: flex;
    flex-direction: column;
    gap: 0.25em;
    padding-top: var(--spacing--item);
  }

  .blog-filter-bar--dropdown-link {
    padding: 0.5em 0;
  }
/* END_SNIPPET:blog-filter-bar */

/* START_SNIPPET:breadcrumbs (INDEX:126) */
.breadcrumbs--root {
      display: flex;
      flex-wrap: wrap;
      align-items: baseline;
      gap: var(--spacing--1);
      padding: var(--spacing--2) 0;

      > * a,
      > *[data-item] {
         text-transform: capitalize;
      }

      & li {
         display: inline-flex;
         align-items: center;
         line-height: 1;

         &:not(:last-of-type):after {
            margin: 0 0 2px 8px;
            content: '';
            background-color: var(--color--body);
            width: var(--spacing--0);
            height: var(--spacing--0);
            border-radius: 50%;
         }

         & a:after {
            padding-bottom: 0.143em;
            border-bottom: 0.071em solid var(--color--body);
            content: '';
            display: block;
            width: 100%;
         }
      }
   }
/* END_SNIPPET:breadcrumbs */

/* START_SNIPPET:collapsible-row (INDEX:131) */
/* makes adjacent row blocks fit together */
  [class*='block'][data-fit-together='true'] + [class*='block'][data-fit-together='true'] {
    margin-top: 0;
  }

  .collapsible-row--root {
    --padding-horizontal: var(--spacing--item);
    --padding-vertical: var(--spacing--item);
    display: block;
    background-color: var(--bg-color);

    &[data-text-color='white'] {
      &:before,
      &:after {
        background-color: var(--border--color-light);
      }
    }

    &[data-view='small'] {
      --padding-vertical: var(--spacing--1);
    }

  }

  .collapsible-row--toggle {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: var(--spacing--item);
    user-select: none;
    padding: 0;
    color: var(--color);
    width: 100%;
    height: fit-content;
    background-color: transparent;
    text-align: left; /* required when text is two rows */
    padding: var(--padding-vertical) var(--padding-horizontal);
  }

  .collapsible-row--heading {
    padding: 0;
    line-height: 24px;
    pointer-events: none;
  }

  .collapsible-row--icon {
    position: relative;
    height: calc(var(--font--nav--size) * var(--icon--scale, 1));
    width: calc(var(--font--nav--size) * var(--icon--scale, 1));
    flex-shrink: 0;

    .collapsible-row--root[data-view='small'] & {
      --icon--scale: 1
    }

    .collapsible-row--root[data-view='large'] & {
      --icon--scale: 2
    }

    &::before,
    &::after {
      content: '';
      position: absolute;
      background-color: var(--color);
      transition: transform 0.2s var(--transition--standard), opacity 0.2s var(--transition--standard);
    }

    &::before {
      top: 0;
      bottom: 0;
      width: var(--border--thickness);
      left: 50%;
      transform: translateX(-50%) rotate(0deg);
    }

    &::after {
      opacity: 1;
      left: 0;
      right: 0;
      height: var(--border--thickness);
      top: 50%;
      transform: translateY(-50%) rotate(0deg);
    }

    .collapsible-row--toggle[aria-expanded='true'] & {
      &::before {
        transform: translateX(-50%) rotate(90deg);
      }

      &::after {
        opacity: 0;
        transform: translateY(-50%) rotate(90deg);
      }
    }
  }

  .collapsible-row--wrapper {
    display: block;
    overflow: hidden;
    visibility: hidden;
    height: 0px;

    @supports (-webkit-touch-callout: none) {
      /* safari fix */
      &[data-transition-item][data-transition-type='fade-in'] {
        will-change: auto;
      }
    }

    .collapsible-row--toggle[aria-expanded='false'] + & {
      transition: all 0.2s var(--transition--ease-out);
    }

    .collapsible-row--toggle[aria-expanded='true'] + & {
      transition: height 0.2s var(--transition--standard), opacity 0.7s var(--transition--standard);
    }
  }

  .collapsible-row--content {
    padding: 0 var(--padding-horizontal) var(--padding-vertical);
  }
/* END_SNIPPET:collapsible-row */

/* START_SNIPPET:collection-promo (INDEX:132) */
.collection-promo--root {
    position: relative;
    overflow: hidden;
    border-radius: var(--image--radius);
    display: grid;
    align-self: stretch;
    min-height: 200px;

    &[data-border-type='thin'] :is(.image--root, .placeholder--root):before {
      border: 1px solid var(--color--body);
    }

    &[data-border-type='thick'] :is(.image--root, .placeholder--root):before {
      border: 2px solid var(--color--body);
    }

    &:not([data-border-type='none']) :is(.image--root, .placeholder--root):before {
      content: '';
      margin: var(--spacing--item);
      transition: all 250ms ease-out 25ms;
      border-radius: max(0px, calc(var(--image--radius) - var(--spacing--item)));
      position: absolute;
      inset: 0;
      z-index: 1;
      opacity: 1;

      @media (max-width: 767px) {
        border-radius: max(0px, calc(var(--image--radius) - var(--spacing--1)));
      }
    }

    > * {
      grid-area: 1 / -1;
    }

    &:not([data-border-type='none']):has(.stacked-text--root[data-text-color='white'])
      :is(.image--root, .placeholder--root):before {
      border-color: white;
    }

    @media (hover: hover) {
      &:not([data-border-type='none']):hover :is(.image--root, .placeholder--root):before {
        opacity: 0;
        margin: 0;
        border-radius: var(--image--radius);
      }
    }

    @media (min-width: 768px) {
      &[data-promo-width='1'] {
        grid-column: span 1;
      }

      &[data-promo-width='2'] {
        grid-column: span 2;
      }

      &[data-promo-width='3'] {
        grid-column: span 3;
      }
      
      &[data-promo-width='4'] {
        grid-column: span 4;
      }

      .stacked-text--root .stacked-text--wrapper:not([data-background-color='transparent']) {
        padding: var(--spacing--block) var(--spacing--item);
      }

      .stacked-text--root .stacked-text--wrapper[data-background-color='transparent'] {
        padding: var(--spacing--block);
      }
    }

    @media (max-width: 767px) {
      [data-mobile-columns='2'] &:not([data-promo-width='1']) {
        grid-column: span 2;
      }

      &[data-mobile-hide-border='true'] :is(.image--root, .placeholder--root):before {
        display: none;
      }

      &[data-mobile-hide-border='false']:not([data-border-type='none']) .stacked-text--wrapper {
        margin: var(--spacing--item);
      }
    }
  }
/* END_SNIPPET:collection-promo */

/* START_SNIPPET:complementary-products (INDEX:133) */
.complementary-products--root {
    &[aria-hidden='true'] {
      display: none;
    }
  }

  .complementary-products--heading {
    padding-bottom: var(--spacing--item);
  }

  .complementary-products--container {
    display: flex;
    flex-direction: column;
    gap: var(--spacing--item);
  }
/* END_SNIPPET:complementary-products */

/* START_SNIPPET:countdown-timer (INDEX:135) */
.countdown-timer--root {
    z-index: 1;
    display: grid;
    grid: auto / auto-flow minmax(0, 1fr) auto;
    align-items: center;
    text-align: center;
    text-transform: uppercase;
    margin: 0;
    width: fit-content;

    &:not([data-view='small']) {
      column-gap: var(--spacing--1);
    }

    &[data-timer-bg='light'][data-view='small'] {
      padding: 2px var(--spacing--1);
      background-color: rgb(255, 255, 255, 0.4);
      border-radius: var(--spacing--0);
    }

    &[data-timer-bg='dark'][data-view='small'] {
      padding: 2px var(--spacing--1);
      background-color: rgb(0, 0, 0, 0.4);
      border-radius: var(--spacing--0);
    }
  }

  .countdown-timer--item {
    display: grid;
    row-gap: var(--spacing--1);
    width: fit-content;
    margin: 0 auto;

    &:first-child:has(.countdown-timer--digit[data-value='0']:first-child):has(
        .countdown-timer--digit[data-value='0']:last-child
      ) {
      display: none;

      + * {
        display: none;
      }
    }
  }

  .countdown-timer--digits {
    --font--size: var(--number-size);

    position: relative;
    display: grid;
    column-gap: 2px;
    grid: auto / auto-flow minmax(0, 1fr);
    justify-content: center;
    margin: 0 auto;

    @media (max-width: 767px) {
      --font--size: var(--mobile-number-size);
    }
  }

  .countdown-timer--digit {
    font-variant-numeric: tabular-nums;
    display: grid;
    position: relative;
    border-radius: var(--spacing--0);
    overflow: hidden;
    line-height: calc(var(--font--size) * 1.4);

    .countdown-timer--root[data-timer-bg='light']:not([data-view='small']) & {
      background-color: rgb(255, 255, 255, 0.4);
    }

    .countdown-timer--root[data-timer-bg='dark']:not([data-view='small']) & {
      background-color: rgb(0, 0, 0, 0.4);
    }

    > * {
      --transition--duration: 0.5s;
      --transition--delay: 0s;
      padding: var(--spacing--0) var(--spacing--1);
      grid-area: 1 / -1;
      transition: visibility var(--transition--duration) var(--transition--standard)
          var(--transition--delay),
        opacity var(--transition--duration) var(--transition--standard) var(--transition--delay),
        transform var(--transition--duration) var(--transition--standard) var(--transition--delay);

      .countdown-timer--root[data-view='small'] & {
        padding: 0;
      }

      &[data-status='enter'] {
        --transition--delay: 0.2s;
        visibility: visible;
        opacity: 1;
        transform: translate3d(0, 0, 0);
      }

      &[data-status='exit'] {
        visibility: hidden;
        opacity: 0;
        transform: translate3d(0, -16px, 0);
      }

      &[data-status='standby'] {
        --transition--duration: 0s;
        visibility: hidden;
        opacity: 0;
        transform: translate3d(0, 16px, 0);
      }
    }
  }

  .countdown-timer--separator {
    --font--size: var(--number-size);

    height: calc(var(--font--size) * 1.4);
    margin-bottom: auto;
    display: flex;
    align-items: center;

    @media (max-width: 767px) {
      --font--size: var(--mobile-number-size);
    }
  }

  .countdown-timer--unit {
    line-height: initial;
  }

  .countdown-timer--small-unit {
    --font--size: 12px;

    line-height: normal;
    align-self: baseline;
    padding-top: 3px;
    padding-left: 2px;

    &:not(:last-child) {
      padding-right: var(--spacing--1);
    }
  }

  :is([data-countdown-container], [data-countdown-button])[aria-hidden='true'] {
    display: none;
  }
/* END_SNIPPET:countdown-timer */

/* START_SNIPPET:disclosure (INDEX:139) */
.disclosure--root {
    --form-transform: translate3d(0, 8px, 0);
    position: relative;
    display: flex;
    flex-flow: row wrap;
    align-items: baseline;
    text-align: left;
    user-select: none;
  }

  .disclosure--label {
    width: 100%;
    display: flex;
    gap: var(--spacing--1);

    &:not(:has(> *:only-child)) {
      justify-content: space-between;
    }
  }

  .disclosure--main {
    width: 100%;
    height: 100%;
    flex: 1 0 50%;
    position: relative;
    outline: none;
  }

  .disclosure--toggle {
    display: flex;
    gap: var(--spacing--1);
    align-items: center;
    justify-content: space-between;
    line-height: unset;
    cursor: pointer;
    width: 100%;
    height: 100%;
    position: relative;
    color: var(--color--body);

    .disclosure--root:is([data-type='option-picker'], [data-type='url-redirect']) & {
      background-color: var(--input--bg-color);
      border: 1px solid var(--border--color-dark);
      padding: var(--spacing--1) 24px var(--spacing--1) var(--spacing--item);
      border-radius: var(--input--radius);
    }

    /* overrides button styles */
    &:is(:hover, :focus) {
      background-color: unset;
      color: var(--color--body);

      .disclosure--root:is([data-type='option-picker'], [data-type='url-redirect']) & {
        background-color: var(--input--bg-color);
        color: var(--color--body);
      }
    }

    .icon--root {
      pointer-events: none;
      transform: scaleY(1);
      transition: transform 0.2s var(--transition--standard);
    }

    &[aria-expanded='true'] > .icon--root {
      transform: scaleY(-1);
    }
  }

  .disclosure--current-option {
    width: fit-content;
    display: flex;
    align-items: center;
    white-space: nowrap;
    gap: var(--spacing--1);

    &[data-unavailable='true'] {
      color: var(--color--body--light);
      text-decoration: line-through;
    }
  }

  .disclosure-option--wrapper {
    z-index: 1;

    & + p {
      z-index: 1;
    }
  }

  .disclosure--form {
    border: 1px solid var(--border--color-dark);
    border-radius: var(--input--radius);
    min-width: 100%;
    position: absolute;
    overflow-y: auto;
    z-index: 5;
    max-height: 280px;
    max-width: 300px;
    top: 100%;
    left: 0;
    transform: var(--form-transform);

    @media (max-width: 767px) {
      max-width: 225px;
    }

    .layout--viewport[data-drop-shadows='true'] & {
      box-shadow: var(--box-shadow--center);
    }

    &[aria-hidden='true'] {
      display: none;
    }
  }

  .disclosure--option {
    color: var(--color--body);
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--spacing--1);
    padding: 9px 15px; /* to match select box styles */
    white-space: nowrap;
    width: 100%;
    position: relative;
    cursor: pointer;

    &[data-unavailable='true'] {
      color: var(--color--body--light);
      text-decoration: line-through;
    }

    &:is(:focus-visible, :hover):after {
      content: '';
      position: absolute;
      inset: 0;
      background-color: var(--color--gray);
      opacity: 0.3;
    }
  }
/* END_SNIPPET:disclosure */

/* START_SNIPPET:feedback-bar (INDEX:141) */
.feedback-bar--root {
    z-index: 100;
    position: fixed;
    left: 0;
    bottom: var(--spacing--item);
    text-align: center;
    width: 100%;
    pointer-events: none;

    @media (max-width: 767px) {
      padding: var(--spacing--3);
    }

    &[aria-hidden='true'] {
      display: none;
    }

    &[aria-hidden='false'] {
      display: block;
    }
  }

  .feedback-bar--message {
    padding: var(--spacing--2);
    border: var(--border--dark);
    border-radius: 4px;
    display: inline-block;
  }
/* END_SNIPPET:feedback-bar */

/* START_SNIPPET:filter (INDEX:142) */
.filter--root {
    position: relative;
    overflow: auto;
    scrollbar-width: none;
    /* Firefox */

    &::-webkit-scrollbar {
      display: none;
    }
  }

  .filter--wrapper {
    width: 100%;
    position: absolute;
    top: 0;
    /* offsets fixed apply/clear buttons at bottom */
    padding-bottom: calc(var(--spacing--item) * 3 + var(--button--height));
  }

  .filter--form {
    position: relative;
  }

  .filter--toggle {
    width: fit-content;
    user-select: none;
    transition: 0.25s background-color ease-in;

    .icon--chevron-down {
      transform: scaleY(1);
      transition: transform 0.2s var(--transition--standard);
    }

    &[aria-expanded='false'] + .filter--menu {
      display: none;
    }

    &[aria-expanded='true'] {
      .icon--chevron-down {
        transform: scaleY(-1);
      }
    }

     &:hover {
      cursor: pointer;
    }

    > * {
      pointer-events: none;
    }
  }

  .filter--menu {
    padding: 24px 0 12px;

     &:has([data-item='swatch']) {
      display: flex;
      flex-wrap: wrap;
      padding: var(--spacing--1) 0 0 var(--spacing--item);
    }
  }

  .filter--price--container {
    padding: var(--spacing--1) 0 0 var(--spacing--2);
  }

  .filter--link {
    display: flex;

     &:has([data-item='swatch']) {
      width: calc(50% - var(--spacing--1));
      margin-right: var(--spacing--1);

       &:nth-of-type(n + 3) {
        margin-top: var(--spacing--2);
      }

       &:not(:nth-last-child(-n + 2)) {
        margin-bottom: var(--spacing--2);
      }
    }
  }

  .filter--label {
     &[data-item='swatch'] > *:first-child {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      padding-left: var(--spacing--2);
      /* swatch width is 24px */
      left: 24px;

      @media (max-width: 767px) {
        /* swatch width is 40px */
        left: 40px;
      }
    }

    > * {
      pointer-events: none;
    }
  }

  .filter--input:is([type='radio'], [type='checkbox']) {
    opacity: 0;
    width: 1px;
    height: 1px;
    margin: 0;
  }

  .filter--no-filters {
    padding: var(--spacing--1) 0 0 var(--spacing--block);
  }

  .filter--search {
    padding: var(--spacing--item);
    border-top: var(--border--dark);

     &:only-child {
      border: 0;
    }
  }

  .filter--search-link {
    display: flex;
    align-items: center;
    width: fit-content;
    padding: var(--spacing--item);
    border-radius: 28px;
    transition: 0.25s background-color ease-in;
    color: var(--color--body);

     &:hover {
      cursor: pointer;
    }
  }

  .filter--search-icon {
    padding-right: var(--spacing--item);
  }

  .filter--button-container {
    width: 100%;
    display: flex;
    gap: var(--spacing--1);
    justify-content: space-between;
    padding: var(--spacing--item);
    position: fixed;
    bottom: 0;
    right: 0;
    background-color: var(--bg-color--body-translucent);
    backdrop-filter: blur(3px);

    .layout--viewport[data-drop-shadows='true'] & {
      box-shadow: var(--box-shadow--top);
    }

    .layout--viewport[data-drop-shadows='false'] & {
      border-top: var(--border--dark);
    }
  }

  .filter--button {
    width: calc(50% - var(--spacing--1));
    text-align: center;

    & span {
      width: 100%;
    }
  }
/* END_SNIPPET:filter */

/* START_SNIPPET:icon-block (INDEX:143) */
.icon-block--root {
    display: inline-flex;
    gap: var(--spacing--2);
    align-items: center;
    justify-content: var(--x-alignment, flex-start);

    @media (min-width: 768px) {
      [data-x-alignment='right'] & .icon-block {
        order: 1;
      }
    }

    @media (max-width: 767px) {
      [data-mobile-x-alignment='right'] & .icon-block {
        order: 1;
      }
    }
  }

  .icon-block > :is(svg, img) {
    height: var(--width);
    width: auto;
  }
/* END_SNIPPET:icon-block */

/* START_SNIPPET:image-block (INDEX:145) */
.image-block--root {
    margin: 0 auto;
    overflow: hidden;
    position: relative;
    width: 100%;
    display: grid;

    @media (max-width: 767px) {
      padding: 0;

      .image-block--root[data-mobile-full-width='false'] & {
        border-radius: var(--image--radius);
      }
    }

    @media (max-width: 767px) {
      padding: 0;

      .image-block--root[data-mobile-full-width='false'] & {
        border-radius: var(--image--radius);
      }
    }

    @media (min-width: 768px) {
      height: 100%;

      .image-block--root:not([data-full-width='true']) & {
        border-radius: var(--image--radius);
      }
    }

    .stacked-text--root {
      position: absolute;
    }
  }

  .image-block--image {
    display: block;
    order: 1;
    width: 100%;
    overflow: hidden;
  }
/* END_SNIPPET:image-block */

/* START_SNIPPET:mobile-nav (INDEX:153) */
.mobile-nav {
    display: flex;
    flex-direction: column;
    min-height: 100vh;

    @media (max-width: 767px) {
      min-height: 100dvh;
    }
  }

  .mobile-nav--menu {
    padding: var(--spacing--block) var(--spacing--item) 0 var(--spacing--item);
  
    @media (min-width: 768px) {
      [data-item='nav-text'] {
        line-height: 1;
      }
    }
  }
  
  .mobile-nav--utilities {
    display: flex;
    flex-direction: column;
    gap: var(--spacing--0);
    padding: var(--spacing--block) var(--spacing--item) 0 var(--spacing--item);
  
    @media (hover: hover) {
      > *:hover {
        font-weight: 700;
      }
    }
  }


  .mobile-nav--social-icons {
    display: contents;

    &:has(.social-media--root:empty),
    &:empty {
      display: none;
    }
  }

  .mobile-nav--footer {
    display: flex;
    justify-content: space-between;
    gap: var(--spacing--block);
    padding: var(--spacing--block) var(--spacing--item);
    margin-top: auto;

    &:has(.disclosure--root[data-id='mobile-nav--locale']) {
      flex-direction: column;
    }
  }

  .mobile-nav--localization:empty {
    display: none;
  }
/* END_SNIPPET:mobile-nav */

/* START_SNIPPET:navigation (INDEX:155) */
.navigation--container {
    @media (min-width: 768px) {
      display: flex;
      justify-content: space-between;
    }
  }

  .navigation--layout {
    display: flex;
    margin-left: auto;
  }

  .navigation--layout-button {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 40px;
    width: 40px;
    color: var(--color--body);
    transition: 0.25s color ease-in;
    border: var(--border--dark);


    &:first-child {
      border-top-left-radius: 20px;
      border-bottom-left-radius: 20px;
      border-right: 0;
      padding-right: 0;
    }

    &:last-child {
      border-top-right-radius: 20px;
      border-bottom-right-radius: 20px;
      border-left: 0;
      padding-left: 0;
    }

    &[aria-pressed='false']:not(:hover) svg {
      opacity: 0.3;
    }

    &[aria-hidden='true'] {
      display: none;
    }

    > * {
      pointer-events: none;
    }
  }

  .navigation--filter {
    display: flex;
    align-items: center;
    height: 40px;
    flex-basis: initial;
    padding: 0 3px;
    border-radius: 20px;
    border: var(--border--dark);

  }

  .navigation--button {
    color: var(--color--body);
    padding: 0 var(--spacing--2);
    border-radius: var(--spacing--item);

  }

  .navigation--results {
    display: flex;
    align-items: center;
    padding-left: var(--spacing--item);
  }

  .navigation--mobile-header[data-container] {
    flex-wrap: unset;

    &:empty {
      display: none;
    }

    @media (max-width: 767px) {
      display: flex;
      justify-content: space-between;
      flex-direction: row;
    }
  }

  .navigation--mobile-button {
    height: var(--spacing--block);
    line-height: 14px;
    flex-basis: initial;
    padding: var(--spacing--1) var(--spacing--item);
    border: var(--border--dark);
    border-radius: var(--spacing--item);

  }
/* END_SNIPPET:navigation */

/* START_SNIPPET:predictive-search (INDEX:160) */
.search--root {
    display: block;

    .icon--x-mark {
      color: var(--input--color);
    }
  }

  .search--bar-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--spacing--item);
  }

  .search--bar {
    display: flex;
    align-items: center;
    gap: var(--spacing--1);
    background-color: var(--input--bg-color);
    border-radius: var(--input--radius);
    padding: 6px;
    width: calc(20% + var(--spacing--block));
    border: 1px solid var(--border--color-dark);

    @media (max-width: 767px) {
      width: 100%;
    }

    [data-text-color='white'] & {
      border: 1px solid var(--border--color-light);
    }

    [data-text-color='white'] [data-text-color='body'] & {
      border: 1px solid var(--border--color-dark);
    }
  }

  .search--clear {
    cursor: pointer;
    display: flex;

    &:hover {
      opacity: 0.8;
    }

    &[aria-hidden='true'] {
      display: none;
    }
  }

  .search--cancel {
    display: flex;
  }

  /* Needs input[type="search"] to override existing styles */
  input[type='search'].search--textbox {
    --input--bg-color: transparent;
    --input--height: 24px;
    --font--transform: normal;

    padding: 0;
    border: 0;
    outline: 0;
    box-shadow: none;
    margin: 0;

    &::-webkit-search-decoration,
    &::-webkit-search-cancel-button {
      display: none;
    }
  }

  input[type='text']::-ms-clear {
    display: none;
  }

  .search--icon {
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    flex-shrink: 0;

    .icon--search {
      color: var(--input--color);
    }

    .icon--spinner {
      scale: calc(7 / 5);
      color: var(--input--color);
      height: inherit;
    }

    .search--root[aria-busy='true'] & .icon--search,
    .search--root[aria-busy='false'] & .icon--spinner {
      display: none;
    }
  }

  .search--results {
    display: flex;

    @media (min-width: 768px) {
      gap: var(--spacing--block);
    }

    @media (max-width: 767px) {
      flex-direction: column;
    }

    > * {
      padding-top: var(--spacing--block);
      width: 100%;
    }
  }

  .predictive-search--products {
    width: 100%;

    &:empty {
      display: none;
    }
  }

  .predictive-search--product-grid[data-container='panel'] {
    @media (min-width: 768px) and (max-width: 1023px) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .predictive-search--product-grid {
    margin-top: 1rem;
    gap: 0;
    border: 1px solid var(--color-black, #101010);
    .product-card-519--content {
      padding: 10px
    }
  }
  .predictive-search--product-grid:has(*:nth-child(2))
  .product-card-519--root {
    border-right: 1px solid var(--color-black, #101010);
    border-top: none;
  }

  .predictive-search--resources {
    display: flex;
    flex-direction: column;
    gap: var(--spacing--block);

    @media (max-width: 767px) {
      width: 100%;
    }

    @media (min-width: 768px) {
      flex: 1 0 20%;
    }
  }

  .predictive-search--item {
    a span {
      font-weight: 700;
    }
    a {
      text-decoration-color: transparent;
      text-decoration-thickness: 0;
      text-underline-offset: 0;
      transition: text-decoration 200ms ease-out,
      text-underline-offset 200ms ease-out;
    }
    a:hover,
    a:focus-visible {
      text-decoration-color: var(--color-dark-green, #085204);
      text-decoration-thickness: 1px;
      text-underline-offset: 2px;
    }

    .predictive-search--heading,
    .predictive-search--item a{
      color: var(--color-dark-green, #085204);
      text-decoration-color: transparent;
      text-decoration-thickness: 0;
      text-underline-offset: 0;
      transition: text-decoration 200ms ease-out,
      text-underline-offset 200ms ease-out;
    }
    .predictive-search--item a:hover,
    .predictive-search--item a:focus-visible {
      text-decoration-color: var(--color-dark-green, #085204);
      text-decoration-thickness: 1px;
      text-underline-offset: 2px;
    }
  }

  .predictive-search--container {
    display: grid;
    grid-gap: var(--spacing--1);
  }

  .predictive-search--view-all {
    margin-top: var(--spacing--block);
    text-align: right;
  }
/* END_SNIPPET:predictive-search */

/* START_SNIPPET:price-range (INDEX:162) */
.price-range--root {
    --button-min-translate: 0;
    --button-max-translate: 0;
    --fill-translate: 0;
    --fill-scale: 1;
  }

  .price-range--wrapper {
    padding-bottom: var(--spacing--item);
    position: relative;
    display: flex;
  }

  .price-range--button {
    position: absolute;
    z-index: 1;
    top: -16px;
    padding: var(--spacing--2);
    user-select: none;
    transform: translate3d(0, 0, 0);
    will-change: transform;

    &:first-of-type {
      left: -13px;
    }

    &:last-of-type {
      right: -13px;
    }

    &:active > * {
      scale: 1.4;
      outline: 1px solid var(--color--accent-1);
      border: var(--border--dark);

      @media (max-width: 767px) {
        scale: 1.8;
      }
    }

    &:hover {
      cursor: pointer;
    }

    > * {
      height: 12px;
      width: 12px;
      border-radius: 50%;
      background-color: var(--color--body);
      pointer-events: none;
    }

    &[data-min-price] {
      transform: translate3d(var(--button-min-translate, 0px), 0, 0);
    }

    &[data-max-price] {
      transform: translate3d(var(--button-max-translate, 0px), 0, 0);
    }
  }

  .price-range--line {
    position: relative;
    border-radius: 3px;
    overflow: hidden;
    height: 3px;
    width: 100%;

    &:before {
      content: '';
      position: absolute;
      inset: 0;
      background-color: var(--color--gray);
      opacity: 0.4;
    }

    & > div {
      background: var(--progress-bar);
      width: 100%;
      height: 100%;
      z-index: 1;
      transform-origin: left center;
      transform: translate3d(var(--fill-translate, 0px), 0, 0) scaleX(var(--fill-scale, 1));
      will-change: transform;
    }
  }

  .price-range--fields {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
  }

  .price-range--field {
    position: relative;
    display: flex;
    flex-direction: row;
    width: 40%;
  }

  .price-range--separator {
    line-height: var(--input--height);
  }

  .price-range--currency {    color: var(--input--color);
    line-height: var(--input--height);
    padding-left: var(--spacing--1);
    position: absolute;
  }

  .price-range--input {
    margin: 0;
    text-align: end;
    padding-right: var(--spacing--1);
  }
/* END_SNIPPET:price-range */

/* START_SNIPPET:product-buy-buttons (INDEX:163) */
.product-buy-buttons--root {
    position: relative;
  }

  .product-buy-buttons--buy-now,
  .product-buy-buttons--primary {
    width: 100%;

    &[aria-busy='true'] {
      .product-buy-buttons--cta-text,
      .product-buy-buttons--buy-now-text {
        opacity: 0;
      }
    }

    &[aria-busy='false'] {
      .product-buy-buttons--spinner {
        opacity: 0;
      }
    }
  }

  .product-buy-buttons--smart {
    user-select: none;
    width: 100%;

    &[data-style='button-1'] {
      --button--color: var(--button--color-1);
      --button--bg-color: var(--button--bg-color-1);
      --button--border-color: var(--button--border-color-1);
    }

    &[data-style='button-2'] {
      --button--color: var(--button--color-2);
      --button--bg-color: var(--button--bg-color-2);
      --button--border-color: var(--button--border-color-2);
    }

    &[data-style='button-3'] {
      --button--color: var(--button--color-3);
      --button--bg-color: var(--button--bg-color-3);
      --button--border-color: var(--button--border-color-3);
    }

    &[data-style='button-4'] {
      --button--color: var(--button--color-4);
      --button--bg-color: var(--button--bg-color-4);
      --button--border-color: var(--button--border-color-4);
    }

    .shopify-payment-button__button--unbranded {
      width: 100%;

      &:hover:not([disabled]) {
        background-color: var(--button--bg-color);
      }
    }

    .shopify-payment-button__more-options {
      margin: var(--spacing--item) 0 0 0;
      text-decoration: underline;
      color: var(--color--body);

      &:is(:hover, :focus-visible) {
        background-color: unset;
        color: var(--color--body);
      }
    }

    &[aria-hidden='true'] {
      pointer-events: none;
      opacity: 0.7;

      .shopify-payment-button__button--unbranded {
        pointer-events: none;
      }
    }

    &:empty {
      display: none;
    }
  }

  .product-buy-buttons--drawer {
    display: flex;
    flex-direction: column;
    gap: var(--spacing--1);
    position: fixed;
    transform: translate3d(0, 50%, 0);
    width: 100%;
    bottom: 0;
    padding: var(--spacing--item);
    margin-left: var(--spacing--neg-item);
    opacity: 0;
    transition: all 300ms var(--transition--standard);
    pointer-events: none;
    z-index: -1;

    &[aria-hidden='false'] {
      opacity: 1;
      pointer-events: auto;
      z-index: 4;
      transform: translate3d(0, 0, 0);

      .layout--viewport[data-drop-shadows='true'] & {
        box-shadow: var(--box-shadow--top);
      }

      .layout--viewport[data-drop-shadows='false'] & {
        border-top: var(--border--dark);
      }
    }
  }

  .product-buy-buttons--drawer-info {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: var(--spacing--1);
    text-align: left;
  }

  .product-buy-buttons--drawer-info-container {
    display: flex;
    gap: var(--spacing--block);
    align-items: flex-start;
  }

  .product-buy-buttons--drawer-variant {
    display: flex;
    gap: var(--spacing--1);
  }

  .product-buy-buttons--drawer-change {
    padding: var(--spacing--0) 0;
    color: var(--color--body);
  }
/* END_SNIPPET:product-buy-buttons */

/* START_SNIPPET:product-card--mini (INDEX:164) */
.product-card--mini {
    display: block;

    /* remove rte-content link styles when inside collapsible row */
    [data-item='rte-content'] &[aria-label] {
      text-decoration: none;
    }
  }

  .product-card--mini--wrapper {
    display: flex;
    gap: var(--spacing--item);
    position: relative;

    .product-quick-add {
      margin: -4px;
    }
  }

  .product-card--mini--info {
    display: flex;
    flex-direction: column;
    gap: var(--spacing--1);
    margin-right: var(--spacing--block);

    @media (min-width: 768px) {
      margin-bottom: var(--spacing--block);
    }
  }

  .product-card--mini--image {
    width: 60px;
    min-width: 60px;
    align-self: stretch;

    & img {
      height: 100%;
    }

    .placeholder--root {
      width: 60px;
    }
  }
/* END_SNIPPET:product-card--mini */

/* START_SNIPPET:product-card--price (INDEX:165) */
.product--price {
    --font--paragraph--weight: 700;
  }
/* END_SNIPPET:product-card--price */

/* START_SNIPPET:product-card (INDEX:166) */
.product-card--root {
    flex-grow: 0;
    flex-shrink: 1;
    flex-basis: auto;
    width: 100%;

    &[data-text-layout='center'] {
      text-align: center;
    }

    &[data-text-layout='left'] {
      text-align: left;
    }

    &[data-text-layout='right'] {
      text-align: right;

      @media (min-width: 1024px) {
        text-align: left;
      }
    }

    > a {
      display: block;
      width: 100%;
    }
  }

  /* Labels */

  .product--labels {
    display: flex;
    flex-wrap: wrap;
    position: absolute;
    top: var(--spacing--2);
    left: var(--spacing--2);
    z-index: 1;

    @media (max-width: 767px) {
      font-size: 11px;
    }
  }

  .product--label {
    display: block;
    width: max-content;
    line-height: 1;

    &[data-label-shape='round'] {
      padding: var(--spacing--1) var(--spacing--2);
      border-radius: 20px;
    }

    &[data-label-shape='square'] {
      padding: var(--spacing--1) 10px;
    }

    &:is([data-background-color='none'], [data-background-color='light']) {
      border: var(--border--dark);
    }

    &:empty,
    &:has(span:empty) {
      display: none;
    }

    &:last-child {
      height: fit-content;
    }

    &:not(:last-child) {
      margin: 0 var(--spacing--1) var(--spacing--1) 0;
    }
  }

  /* Image */

  .product-card--image-wrapper {
    width: 100%;
    max-width: 100%;
    display: flex;
    align-items: center;
    position: relative;
  }

  .product-card--image {
    opacity: 1;
    transition: opacity 0.5s;

    &[aria-hidden='true'] {
      opacity: 0;
    }

    @media (hover: hover) {
      .product-card--root:has(.product-card--hover-image) .product-card--image-wrapper:hover & {
        opacity: 0;
      }
    }
  }

  .product-card--hover-image {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    height: 100%;
    width: 100%;
    transition: opacity 0.5s;
    overflow: hidden;

    @media (hover: hover) {
      .product-card--root:has(.product-card--hover-image) .product-card--image-wrapper:hover & {
        opacity: 1;
      }
    }
  }

  /* Detail */

  .product-card--details-wrapper {
    display: flex;
    gap: var(--spacing--1);
    flex-direction: column;
  }

  .product-card--details {
    display: flex;
    flex-direction: column;
    gap: var(--spacing--1);
    width: 100%;

    .product-card--root[data-text-layout='left'] & {
      flex-direction: column;
      align-items: flex-start;
    }
    
    .product-card--root[data-text-layout='right'] & {
      flex-direction: column;
      align-items: flex-end;
    }


    @media (min-width: 768px) {
      [data-columns='2'] .product-card--root:not([data-text-layout='center']) & {
        align-items: baseline;
        flex-direction: row;
        justify-content: space-between;
      }
    }

    @media (max-width: 767px) {
      max-width: var(--max-width--x-small);
      margin: 0 auto;
    }
  }

  /* Price */

  .product-card--price-wrapper {
    .product-card--root:not([data-text-layout='center']) & {
      align-items: center;
    }
  }


  .product--price-container {
    display: flex;
    flex-direction: column;
  }

  .product--price-wrapper {
    display: flex;
    align-items: center;
    gap: var(--spacing--1);

    .product-card--root[data-text-layout='center'] & {
      justify-content: center;
    }

    .product-card--root[data-text-layout='right'] & {
      text-align: right;
      justify-content: flex-end;
      flex-wrap: wrap;
    }

    .product-card--root[data-text-layout='left'] & {
      flex-wrap: wrap;

      @media (min-width: 1024px) {
        text-align: right;
        justify-content: flex-end;
      }
    }

    [data-columns='2'] .product-card--root[data-text-layout='left'] & {
      @media (min-width: 768px) {
        text-align: right;
        justify-content: end;
      }
    }
  }

  .product--compare-price {
    text-decoration: line-through;
  }

  .product--unit-price-container {
    padding: 0;

    .product-card--root:not([data-text-layout='center']) & {
      @media (min-width: 1024px) {
        align-self: flex-end;
      }
    }

    [data-columns='2'] .product-card--root:not([data-text-layout='center']) & {
      @media (min-width: 768px) {
        align-self: flex-end;
      }
    }
  }

  .product--from[data-item] {
    text-transform: capitalize;
    padding: 0;
    flex-basis: initial;
  }

  /* Info */

  .product-card--vendor {
    word-break: break-word;

    [data-text-color='white'] & {
      color: white;
    }

    & a {
      color: var(--color--body--light);

      @media (max-width: 767px) {
        padding: var(--spacing--item) calc(var(--spacing--item) / 2) calc(var(--spacing--item) / 2);
      }
    }
  }

  .product-card--title {
    .product-card--root & {
      word-break: break-word;
    }

    & a {
      @media (max-width: 767px) {
        padding: calc(var(--spacing--item) / 2) calc(var(--spacing--item) / 2) var(--spacing--item);
      }
    }
  }

  .product-card--details-wrapper .product-rating--root {
    &:empty {
      display: none;
    }

    .product-card--root[data-text-layout='center'] & {
      justify-content: center;
    }

    .product-card--root[data-text-layout='left'] & {
      justify-content: flex-start;
    }

    [data-columns='2'] .product-card--root[data-text-layout='right'] & {
      @media (min-width: 768px) {
        justify-content: flex-start;
      }
    }

    .product-card--root[data-text-layout='right'] & {
      justify-content: flex-end;

      @media (min-width: 1024px) {
        justify-content: flex-start;
      }
    }
  }

  /* Swatches */

  .product-card--swatches--column-view {
    .product-card--root[data-text-layout='center'] & {
      width: fit-content;
      margin: 0 auto;
    }

    .product-card--root:not([data-text-layout='center']) & {
      @media (min-width: 1024px) {
        display: none;
      }
    }

    .product-card--root[data-text-layout='right'] & .swatches--container {
      justify-content: flex-end;
    }
  }

  .product-card--swatches--horizontal-view {
    .product-card--root[data-text-layout='center'] & {
      display: none;
    }

    .product-card--root:not([data-text-layout='center']) & {
      display: none;

      @media (min-width: 1024px) {
        display: block;
      }
    }
  }

  /* disables AR when products viewed from quick-add drawer */
  .drawer--side[data-side='right'] .product-model--button[data-item] {
    display: none;
  }
/* END_SNIPPET:product-card */

/* START_SNIPPET:product-form (INDEX:168) */
.product-form {
    display: block;
    background-color: var(--bg-color);

    @media (max-width: 767px) {
      width: 100%;
    }

    @media (min-width: 768px) {
      .breadcrumbs--root {
        padding-top: 0;
        justify-content: var(--x-alignment);
      }
    }
  }

  .product-form--block {
    text-align: var(--text-alignment);

    /* top instead of bottom margin here because of how collapsible rows stack */
    &[data-block-type] {
      margin-top: var(--spacing--block);
    }

    &[data-block-type='icon'] + &[data-block-type='icon'] {
      margin-top: var(--spacing--1);
    }

    &:is(
        [data-block-type='price'],
        [data-block-type='vendor'],
        [data-block-type='rating'],
        [data-block-type='sku'],
        [data-block-type='heading']
      ) {
      margin-top: var(--spacing--item);
    }

    input[type='hidden'] + &[data-block-type],
    &[data-block-type]:first-child {
      margin-top: 0;
    }

    &[data-block-type]:is(:empty, :has(> *:empty), [aria-hidden='true']) {
      display: none;
    }

    :is(
        .product-rating--root,
        .product-price--wrapper,
        .product-price--unit-container,
        .social-media--root .social-media--items,
        .swatches--header,
        .swatches--container,
        .radios--header,
        .radios--container
      ) {
      justify-content: var(--x-alignment);
    }

    @media (min-width: 768px) {
      [data-x-alignment='center'] & .product--label {
        margin: 0 auto;
      }

      [data-x-alignment='right'] & {
        :is(.disclosure--label, .swatches--header, .swatches--name, .radios--header)
          > *:first-child:not(:only-child) {
          order: 1;
        }

        .product--label {
          margin-left: auto;
        }
      }
    }

    @media (max-width: 767px) {
      .product--breadcrumbs + & {
        margin-top: 0;
      }

      [data-mobile-x-alignment='center'] & .product--label {
        margin: 0 auto;
      }

      [data-mobile-x-alignment='right'] & {
        :is(.disclosure--label, .swatches--header, .swatches--name, .radios--header)
          > *:first-child:not(:only-child) {
          order: 1;
        }

        .product--label {
          margin-left: auto;
        }
      }
    }
  }

  .product-size-chart--modal {
    padding: var(--spacing--section);
    background: var(--bg-color--body);
    text-align: center;

    @media (max-width: 767px) {
      padding: var(--spacing--block) var(--spacing--item);
    }
  }
/* END_SNIPPET:product-form */

/* START_SNIPPET:product-low-stock (INDEX:169) */
.product-low-stock--root {
    display: block;
  }

  .product-low-stock--bar {
    margin-top: var(--spacing--1);
    height: var(--spacing--0);
    border-radius: var(--spacing--0);
    position: relative;
    overflow: hidden;

    &:before {
      content: '';
      position: absolute;
      inset: 0;
      background: var(--color--gray);
      opacity: 0.4;
    }

    &:after {
      content: '';
      display: block;
      height: 100%;
      background: var(--progress-bar);
      border-radius: 5px;
      width: var(--progress-percent);
      transition: width 0.4s var(--transition--standard);
    }
  }
/* END_SNIPPET:product-low-stock */

/* START_SNIPPET:product-media--variants (INDEX:170) */
.product-media--variants--root {
    display: block;
    width: 100%;

    @media (min-width: 768px) {
      position: sticky;
      top: var(--sticky-offset);
    }

    &[data-layout='thumbnails'] {
      display: flex;

      @media (min-width: 768px) {
        gap: var(--media-gap);

        .product-media--container {
          order: 2;
        }

        .product-media--root {
          display: flex;
          margin: 0 auto;
          width: 100%;
        }
      }

      @media (max-width: 767px) {
        flex-direction: column;
      }
    }

    &:is([data-layout='thumbnails'], [data-layout='full-screen']) {
      .product-media--root[data-active='false'] {
        display: none;
      }
    }
  }

  .product-media--variants {
    display: block;
    width: 100%;

    .product-media--variants--root[data-layout='thumbnails'] & {
      @media (min-width: 768px) {
        order: 2;
      }
    }

    .product-media--variants--root[data-layout='one'] & {
      grid-gap: var(--media-gap);
    }

    .product-media--variants--root[data-layout='two'] & {
      @media (min-width: 768px) {
        &[data-container] {
          grid-gap: var(--media-gap);
        }
      }
    }

    .product-media--variants--root[data-layout='mixed'] & {
      display: grid;
      grid-gap: var(--media-gap);

      .product-media--active {
        width: 100%;
      }
    }
  }

  .product-media--container {
    width: 100%;

    &[data-container] {
      grid-gap: var(--media-gap);
    }

    &[data-masonry-layout] {
      display: flex;
      flex-flow: column wrap;
      align-content: space-between;
      gap: var(--media-gap);

      > * {
        width: calc((100% - var(--media-gap)) / 2);

        &:nth-child(odd) {
          order: 1;
        }

        &:nth-child(even) {
          order: 2;
        }
      }
    }
  }
/* END_SNIPPET:product-media--variants */

/* START_SNIPPET:product-media (INDEX:171) */
.product-media--modal {
    width: 100%;

    &[data-media-type='image'] {
      cursor: zoom-in;
    }
  }

  .product-video--root {
    width: 100%;
    margin: 0 auto;
    display: block;
    border-radius: var(--image--radius);
    overflow: hidden;

    &:focus-visible {
      outline: none;
    }
  }

  .product-video--container {
    position: relative;
    width: 100%;
    padding-top: calc(100% / var(--product-media--aspect-ratio));

    > :first-child {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
    }

    & button {
      height: unset;
    }

    /* vimeo */
    .product-video > iframe {
      width: 100%;
      height: 100%;
    }

    /* plyr css adds an outline to video on focus */
    .plyr--video:focus-visible {
      outline: none;
    }

    .plyr__control--overlaid:hover {
      background: var(--button--color-1);
    }

    .plyr__controls .plyr__control:hover {
      color: unset;
    }
  }

  .product-model--root {
    width: 100%;
    max-width: 100%;
    padding-top: calc(100% / var(--product-media--aspect-ratio));
    position: relative;
    display: flex;
    flex: 1 1 auto;

    .shopify-model-viewer-ui {
      /* nested to add selector weight */
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
    }

    & model-viewer {
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      text-align: left;
      border-radius: var(--image--radius);

      &:focus-visible {
        outline: none;
      }
    }

    & button[hidden] {
      display: none;
    }
  }

  .product-model--button[data-item] {
    display: none;
    width: 100%;
    margin-top: var(--spacing--item);

    @media (max-width: 767px) {
      display: flex;
    }
  }

  .product-zoom--root {
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
    display: block;
    border-radius: var(--image--radius);

    &:after {
      content: '';
      position: absolute;
      inset: 0;
      border: 1px solid var(--color--gray);
      border-radius: var(--image--radius);
      pointer-events: none;
      opacity: 0;
      transition: opacity 0.2s ease;
    }

    &:hover:after {
      opacity: 0.4;
    }
  }
.product-zoom--wrapper{
  height: 100%;
  width: 100%;
  object-fit: cover;
}
  .product-zoom--enlarged {
    position: absolute;
    background-color: var(--bg-color--body); /* for transparent images */
    width: var(--enlarged-width);
    height: auto; /* Don't inherit height: 100% - hover image maintains its dimensions */
    left: var(--offset-x);
    top: var(--offset-y);

    &[aria-hidden='true'] {
      display: none;
    }
  }

  .product-media--thumbs {
    display: block;
    position: relative;

    @media (min-width: 768px) {
      order: 1;
      width: var(--thumbnail-width);
    }

    @media (max-width: 767px) {
      padding-top: var(--media-gap);
    }
  }

  .product-media--thumbs-wrapper {
    @media (max-width: 767px) {
      display: grid;
      grid-gap: var(--media-gap);
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    @media (min-width: 768px) {
      display: flex;
      gap: var(--media-gap);
      justify-content: flex-start;
      flex-direction: column;
      overflow-y: scroll;
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
      top: 0;
      scrollbar-width: none; /* Firefox */

      &::-webkit-scrollbar {
        /* Hide scrollbar for Chrome, Safari and Opera */
        display: none;
      }
    }
  }

  .product-media--thumb {
    cursor: pointer;
    width: 100%;
    user-select: none;
    position: relative;

    &[data-active='true']:after {
      content: '';
      position: absolute;
      inset: 0;
      border: 1px solid var(--color--gray);
      opacity: 0.4;
      pointer-events: none;
      border-radius: var(--image--radius);
    }

    > * {
      pointer-events: none;
    }
  }

  .product-media--thumb-icon {
    top: 0px;
    right: 0px;
    position: absolute;
    margin: var(--spacing--0);

    &:after {
      content: '';
      position: absolute;
      inset: 0;
      border: 1px solid var(--color--gray);
      border-radius: 2px;
      opacity: 0.4;
      pointer-events: none;
    }

    svg.icon--root {
      background-color: var(--bg-color--body);
      border-radius: 2px;
    }
  }
/* END_SNIPPET:product-media */

/* START_SNIPPET:product-options (INDEX:172) */
.product-options--root {
    display: block;
  }

  .product-options--container {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    gap: var(--spacing--item);
  }

  .product-size-chart--link {
    display: block;
  }
/* END_SNIPPET:product-options */

/* START_SNIPPET:product-pickup (INDEX:173) */
/* Form view */

  .product-pickup--root {
    display: block;
  }

  .pickup--form {
    &:empty {
      display: none;
    }

    &[data-loading='true'] {
      opacity: 0.5;
    }
  }

  .product-pickup--spinner {
    width: fit-content;
    margin: 0 auto;
    padding: var(--spacing--block) 0;
  }

  .pickup--form--container {
    display: flex;
    gap: var(--spacing--1);
    justify-content: var(--x-alignment);

    .product-pickup--root[aria-busy='true'] & {
      opacity: 0.4;
    }

    .icon--root {
      height: 1em;
      flex-shrink: 0;
      margin-top: var(--spacing--0);
    }

    .icon--checkmark--small {
      color: var(--color--success);
    }

    .icon--cross--small {
      color: var(--color--alert);
    }
  }

  .pickup--form--info {
    text-align: left;
  }

  .pickup--form--stores {
    padding-top: calc(var(--spacing--item) / 2);
  }

  /* Drawer view */

  .pickup--drawer--container {
    padding: var(--spacing--section--mobile);

    .icon--root {
      height: 1.75em;
      flex-shrink: 0;
    }

    .icon--checkmark--small {
      color: var(--color--success);
    }

    .icon--cross--small {
      color: var(--color--alert);
    }
  }

  .pickup--drawer--header {
    padding-bottom: var(--spacing--item);
  }

  .pickup--drawer--product-title {
    padding-bottom: var(--spacing--1);
  }

  .pickup--drawer--list-item {
    padding: var(--spacing--item) 0;
    border-top: var(--border--dark);

    &:last-child {
      border-bottom: var(--border--dark);
    }

    > * {
      width: fit-content;
    }
  }

  .pickup--drawer--list-location-container {
    display: flex;
    justify-content: space-between;
    gap: var(--spacing--1);
    align-items: center;
    width: 100%;
    padding-bottom: var(--spacing--1);
  }

  .pickup--drawer--list-stock {
    padding-bottom: var(--spacing--1);
    display: flex;
  }

  .pickup--drawer--list-text {
    padding-left: var(--spacing--1);
  }

  .pickup--drawer--list-phone {
    padding-top: var(--spacing--1);
  }

  .pickup--drawer--return {
    padding-top: var(--spacing--item);
    cursor: pointer;
  }
/* END_SNIPPET:product-pickup */

/* START_SNIPPET:product-price (INDEX:174) */
.product-price--root {
    display: block;

    @media (max-width: 767px) {
      display: flex;
      flex-flow: column wrap;
    }
  }

  .product-price--wrapper {
    display: flex;
    gap: var(--spacing--0);
    align-items: center;
    font-weight: 600;
    
    @media (max-width: 767px) {
      flex-shrink: 0;
    }
  }

  .product-price--original {
    display: inline-block;
    color: var(--color-dark-green, #085204);
    font-size: clamp(0.875rem, 0.8269rem + 0.1923vw, 1rem);
    letter-spacing: 1.6px;
  }

  .product-price--reference-value[aria-hidden='true'] {
    display: none;
  }

  .product-price--compare {
    text-decoration: line-through;
    color: var(--color--body--light);

    &[aria-hidden='true'] {
      display: none;
    }
  }

  .product-price--unit-container {
    display: flex;

    &:is(:empty, [aria-hidden='true']) {
      display: none;
    }

    @media (max-width: 767px) {
      [data-block-type='price'] & {
        justify-content: center;
      }
    }
  }
/* END_SNIPPET:product-price */

/* START_SNIPPET:product-quick-add (INDEX:175) */
.product-quick-add {
    position: absolute;
    bottom: 0;
    right: 0;
    padding: var(--spacing--0);
    margin: var(--spacing--1);
    display: block;
    transition: all 0.4s var(--transition--ease-out);
    transform-origin: bottom right;

    @media (min-width: 768px) {
      &[data-hover='true'] {
        opacity: 0;
        transform: scale(0);

        *:has(> & .product-quick-add--button:focus-visible:not([disabled])) &,
        *:has(> &):hover > & {
          opacity: 1;
          transform: scale(1);
        }
      }
    }
  }

  .product-quick-add--media {
    .carousel-nav-arrow {
      align-self: center;
    }
  }

  .product-quick-add--button {
    display: inline-flex;
    gap: var(--spacing--1);
    align-items: center;
    overflow: hidden;
    height: var(--spacing--block);
    width: var(--spacing--block);
    padding: 0 10px;
    border: var(--border--dark);
    background-color: var(--bg-color--body);
    transition: width 0.3s var(--transition--standard), transform 0.2s var(--transition--ease-out);
    transform: scale(1);
    border-radius: var(--spacing--item);

    @media (min-width: 768px) {
      &:focus-visible:not([disabled]),
      .product-quick-add:hover &:not([disabled]) {
        width: var(--expanded-width);
      }
    }

    &:active {
      transform: scale(0.96);
    }
  }

  .product-quick-add--icon {
    display: grid;
    align-items: center;

    > * {
      color: var(--color--body);
      grid-area: 1 / -1;
    }
  }

  .product-quick-add--text {
    white-space: nowrap;
    display: none;

    @media (min-width: 768px) {
      .product-quick-add--button:focus-visible:not([disabled]) &,
      .product-quick-add:hover .product-quick-add--button:not([disabled]) & {
        display: block;
      }
    }
  }

  .icon--plus {
    .product-quick-add[aria-busy='true'] & {
      opacity: 0;
    }
  }

  .icon--spinner {
    .product-quick-add & {
      margin: 0 -10px;
      max-width: 30px;
      max-height: 30px;
    }

    .product-quick-add[aria-busy='false'] & {
      opacity: 0;
    }
  }

  .product-quick-add--form {
    --buy-buttons--height: calc(45px + 2 * var(--spacing--item));
    position: relative;
    overflow: auto;
    height: 100vh;
    height: 100dvh;
    padding: 0;
    scrollbar-width: none; /* Firefox */

    &::-webkit-scrollbar {
      display: none;
    }

    .product-buy-buttons--root {
      width: 100%;
      position: fixed;
      bottom: 0;
      z-index: 5;
      background-color: var(--bg-color--body-translucent);
      backdrop-filter: blur(3px);
      padding: var(--spacing--item);

      .layout--viewport[data-drop-shadows='true'] & {
        box-shadow: var(--box-shadow--top);
      }

      .layout--viewport[data-drop-shadows='false'] & {
        border-top: var(--border--dark);
      }
    }

    &[aria-hidden='true'] {
      display: none;
    }
  }

  .product-quick-add--form--wrapper {
    width: 100%;
    position: absolute;
    top: 0;
    padding: var(--spacing--item) var(--spacing--item)
      calc(var(--spacing--block) + var(--buy-buttons--height)); /* buttons height when buy now shown */
  }
/* END_SNIPPET:product-quick-add */

/* START_SNIPPET:product-rating (INDEX:176) */
.product-rating--root {
    display: flex;
    align-items: center;
    gap: var(--spacing--0);

    &:after {
      content: '(' attr(data-count) ')';

      @media (max-width: 767px) {
        font-size: 12px;
      }
    }
  }

  .product-rating--stars {
    letter-spacing: 4px;

    /* based on 16px font size, 4px letter spacing */
    --rating-percent: calc(
      (
          var(--rating) / var(--rating-max) + var(--rating-decimal) * 16 /
            (var(--rating-max) * (16 + 4))
        ) * 100%
    );

    &:before {
      content: '★★★★★';
      --star-color: var(--color--body);
      --star-bg-opacity: 0.15;

      background: linear-gradient(
        90deg,
        var(--star-color) var(--rating-percent),
        rgba(0, 0, 0, var(--star-bg-opacity)) var(--rating-percent)
      );

      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;

      [data-text-color='white'] & {
        --star-color: white;
        --star-bg-opacity: 0.3;
      }

      [data-text-color='body'] & {
        --star-color: var(--color--body);
        --star-bg-opacity: 0.15;
      }
    }
  }
/* END_SNIPPET:product-rating */

/* START_SNIPPET:product-unavailable-form (INDEX:177) */
.product-unavailable--root {
    &[aria-hidden='true'] {
      display: none;
    }

    &[aria-busy='true'] {
      .product-unavailable--text {
        opacity: 0;
        visibility: hidden;
      }
    }

    &[aria-busy='false'] {
      .product-unavailable--loading {
        display: none;
      }
    }
  }

  .product-unavailable--form {
    width: 100%;
    display: flex;
    align-items: center;

    @media (min-width: 1024px) {
      border: var(--border--dark);
      border-radius: calc(var(--button--radius) + 1px);
      background-color: var(--input--bg-color);
      color: var(--input--color);

      &:has(input:focus-visible) {
        outline: -webkit-focus-ring-color auto 1px;
      }
    }

    @media (max-width: 1023px) {
      gap: var(--spacing--1);
      flex-direction: column;
    }
  }

  .product-unavailable--input {
    border-radius: calc(var(--button--radius) + 1px);
    margin-bottom: 0;

    &:-webkit-autofill {
      -webkit-background-clip: text;
    }

    [data-text-color='white'] & {
      background-color: var(--button--bg-color-1);
      color: var(--button--color-1);

      &:-webkit-autofill {
        -webkit-text-fill-color: var(--button--color-1);
      }

      &::placeholder {
        color: var(--button--color-1);
      }
    }

    @media (max-width: 1023px) {
      &::placeholder {
        text-align: center;
      }
    }

    @media (min-width: 1024px) {
      border: 0;

      &:focus-visible {
        outline: 0;
        border: 0;
      }
    }
  }

  .product-unavailable--submit {
    @media (max-width: 1023px) {
      width: 100%;

      & button {
        width: 100%;
      }
    }
  }

  .product-unavailable--text-wrapper {
    position: relative;
  }

  .product-unavailable--loading {
    position: absolute;
    inset: 0;
  }
/* END_SNIPPET:product-unavailable-form */

/* START_SNIPPET:quantity-selector (INDEX:178) */
.quantity-selector--label {
    padding: 0;
  }

  .quantity-selector--container {
    align-items: center;
    background: var(--input--bg-color);
    color: var(--input--color);
    border-radius: var(--spacing--0);
    display: inline-flex;
    position: relative;
    text-align: left;
  }

  .quantity-selector--input {
    --input--radius: 0;

    padding: 0 calc(var(--spacing--item) / 2);
    margin: 0;
    text-align: center;
    width: 38px;
    height: 38px;
    z-index: 1;
    border-top: 1px solid var(--border--color-dark);
    border-bottom: 1px solid var(--border--color-dark);
    border-left: 0;
    border-right: 0;

    &[aria-busy='true'] {
      color: var(--color--gray);
    }

    @media (max-width: 767px) {
      width: 45px;
    }
  }

  .quantity-selector--plus,
  .quantity-selector--minus {
    user-select: none;
    padding: 0 var(--spacing--1);
    cursor: pointer;
    background: var(--input--bg-color);
    display: flex;
    align-items: center;
    height: 38px;

    @media (max-width: 767px) {
      padding: 0 var(--spacing--item);
    }

    & svg {
      color: var(--input--color);
      transform: scale(1);
      transition: transform 0.1s var(--transition--standard);
    }

    .layout--viewport[data-drop-shadows='true'] & {
      box-shadow: 0 -0.0625rem 0 0 var(--border--color-dark) inset,
        0 0 0 0.0625rem var(--border--color-dark) inset, 0 0.03125rem 0 0.09375rem #fff inset;

      &:active {
        box-shadow: 0rem 0.125rem 0.0625rem 0rem var(--border--color-dark) inset,
          0.0625rem 0rem 0.0625rem 0rem var(--border--color-dark) inset,
          -0.0625rem 0rem 0.0625rem 0rem var(--border--color-dark) inset;
      }
    }

    .layout--viewport[data-drop-shadows='false'] & {
      border: 1px solid var(--border--color-dark);

      &:active svg {
        transform: scale(0.85);
        opacity: 0.8;
      }
    }

    > * {
      pointer-events: none;
    }
  }

  .quantity-selector--minus {
    border-top-left-radius: var(--spacing--0);
    border-bottom-left-radius: var(--spacing--0);
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }

  .quantity-selector--plus {
    border-top-right-radius: var(--spacing--0);
    border-bottom-right-radius: var(--spacing--0);
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }

  .quantity-selector--remove {
    padding: 0;
    display: flex;
    color: var(--color--body);
    transform: scale(1);
    transition: transform 0.1s var(--transition--standard);

    &:hover {
      cursor: pointer;
    }

    &:active {
      transform: scale(0.95);
      opacity: 0.8;
    }

    > * {
      font-size: 12px;
    }
  }
/* END_SNIPPET:quantity-selector */

/* START_SNIPPET:radios (INDEX:179) */
.radios--header {
    display: flex;
    gap: var(--spacing--1);
    padding-bottom: var(--spacing--1);

    &:not(:has(> *:only-child)) {
      justify-content: space-between;
    }
  }

  .radios--container {
    display: flex;
    flex-wrap: wrap;
    gap: var(--spacing--1);
  }

  .radios--input[data-item='radio'] {
    opacity: 0;
    width: 1px;
    height: 1px;
    margin: 0;
    position: absolute;
  }
/* END_SNIPPET:radios */

/* START_SNIPPET:section-blocks (INDEX:181) */
.section-blocks--root {
    justify-self: var(--x-alignment);

    @media (min-width: 768px) {
      /* if there is y-alignment then we are usually in an overlaid section */
      &[data-y-alignment] {
        z-index: 1;
        grid-area: 1 / -1;
        align-self: var(--y-alignment);
      }
    }

    @media (max-width: 767px) {
      &[data-mobile-y-alignment] {
        z-index: 1;
        grid-area: 1 / -1;
        align-self: var(--y-alignment);
      }
    }
  }

  .section-blocks--wrapper {
    --text-padding: 0;
    padding: var(--text-padding);
    border-radius: var(--image--radius);
  }

  .section-blocks--button-group,
  .section-blocks--icon-group {
    display: flex;
    gap: var(--spacing--item);
    flex-wrap: wrap;
    align-items: center;
    justify-content: var(--x-alignment, flex-start);

    &:has(> :only-child > :only-child[aria-hidden='true']) {
      /* countdown */
      display: none;
    }
  }

  .section-blocks--hours-group {
    display: flex;
    flex-direction: column;
    gap: var(--spacing--0);

    @media (min-width: 768px) {
      max-width: 20em;
      width: 100%;

      .section-blocks--root[data-x-alignment='center'] & {
        margin: 0 auto;
      }

      .section-blocks--root[data-x-alignment='right'] & {
        margin-left: auto;
      }

      .section-blocks--root[data-x-alignment='left'] & {
        margin-right: auto;
      }
    }
  }

  .section-blocks--block {
    align-self: var(--x-alignment);

    &:is([data-block-type='description'], [data-block-type='overline']) {
      max-width: 600px;
    }

    &[data-block-type='newsletter'] {
      width: 100%;
    }

    &[data-block-type='image'] {
      max-width: 100%;

      @media (min-width: 768px) {
        width: var(--width);
      }

      @media (max-width: 767px) {
        width: var(--mobile-width);
      }
    }

    &[data-block-type='countdown'] {
      display: flex;
      justify-content: var(--x-alignment, flex-start);
    }

    &[data-block-type='hours'] {
      display: flex;
      justify-content: space-between;
      gap: var(--spacing--item);
      width: 100%;
    }

    &[data-block-type='empty-space'] {
      @media (min-width: 768px) {
        min-height: var(--desktop-height);
        margin-top: var(--spacing--neg-item);
      }

      @media (max-width: 767px) {
        min-height: var(--mobile-height);
        margin-top: var(--spacing--neg-item);
      }
    }

    &[data-block-type='button'] {
      align-self: center;

      &:only-child {
        width: 100%;
      
        > * {
          width: 100%;
        }
      }

    }
  }
/* END_SNIPPET:section-blocks */

/* START_SNIPPET:small-logo (INDEX:186) */
.small-logo--root img {
    --image--radius: 0;
    height: auto;
    width: var(--width);

    @media (max-width: 767px) {
      width: var(--mobile-width);
    }
  }
/* END_SNIPPET:small-logo */

/* START_SNIPPET:social-media (INDEX:188) */
.social-media--root {
    display: inline-flex;
    
    &[data-type='follow'] {
      flex-wrap: wrap;
      justify-content: center;
    }

    &[data-alignment='left'] {
      justify-content: flex-start;
    }

    &[data-alignment='right'] {
      justify-content: flex-end;
    }

    @media (max-width: 767px) {
      &[data-mobile-align='center'] {
        justify-content: center;
      }
    }

    .icon--threads {
      box-sizing: content-box;
      padding: 4px 3px;
      margin: -4px -3px;
    }

    .icon--x {
      height: 18px;
      width: 18px;
      margin: -4px;
    }

    & svg {
      height: 14px;
      width: 14px;
    }

    &:empty {
      display: none;
    }
  }

  .social-media--items {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    width: 100%;
    row-gap: var(--spacing--1);
    column-gap: 14px;

    @media (min-width: 768px) {
      .social-media--root[data-alignment='center'] & {
        justify-content: center;
      }

      .social-media--root[data-alignment='right'] & {
        justify-content: flex-end;
      }
    }

    @media (max-width: 767px) {
      .social-media--root[data-mobile-alignment='center'] & {
        justify-content: center;
      }

      .social-media--root[data-mobile-alignment='left'] & {
        justify-content: flex-start;
      }

      .social-media--root[data-mobile-alignment='right'] & {
        justify-content: flex-end;
      }
    }
  }

  .social-media--item {
    display: inline-flex;

    > :is(a, share-url) {
      display: inline-flex;

      .icon--root {
        overflow: visible;
      }

      .social-media--root[data-view='icons'] & {
        padding: var(--spacing--0);
        margin: var(--spacing--neg-0);
      }

      .social-media--root[data-hover-color='opacity'] &:is(:focus-visible, :hover) > * {
        opacity: 0.6;
      }

      .social-media--root[data-hover-color='brand'] & {
        &:is(:focus-visible, :hover) .icon--x > * {
          color: #ffffff;
        }

        &:is(:focus-visible, :hover) .icon--threads > * {
          color: #ffffff;
        }

        &:is(:focus-visible, :hover) .icon--facebook > * {
          color: #49659d;
        }

        &:is(:focus-visible, :hover) .icon--linkedin > * {
          color: #0b65c2;
        }

        &:is(:focus-visible, :hover) .icon--pinterest > * {
          color: #cb1f2b;
        }

        &:is(:focus-visible, :hover) .icon--youtube > * {
          color: #ff0000;
        }

        &:is(:focus-visible, :hover) .icon--snapchat > * {
          color: #ffffff;
        }

        &:is(:focus-visible, :hover) .icon--tumblr > * {
          color: #35465c;
        }

        &:is(:focus-visible, :hover) .icon--vimeo > * {
          color: #1ab7ea;
        }

        &:is(:focus-visible, :hover) .icon--email > * {
          color: #deb72c;
        }

        &:is(:focus-visible, :hover) :is(.icon--link, .icon--share) > * {
          color: #0c63a9;
        }

        &:is(:focus-visible, :hover) .icon--bluesky > * {
          color: #1384fd;
        }

        &:is(:focus-visible, :hover) > :is(.icon--threads, .icon--x) {
          background-color: #000000;
          border-radius: 4px;
        }

        &:is(:focus-visible, :hover) > .icon--snapchat {
          stroke: black;
        }

        &:is(:focus-visible, :hover) > .icon--tiktok {
          filter: drop-shadow(1px 1px 0px #fd3e3e) drop-shadow(-0.5px -0.5px 0px #4de8f4);
        }

        &:is(:focus-visible, :hover) > .icon--instagram path {
          fill: url(#instagram-hover); // see `svg/defs.svg` for this ID
        }
      }

      &:hover {
        cursor: pointer;
      }
    }
  }

  .social-media--title {
    .social-media--root[data-type='follow'] & {
      width: 100%;
      text-align: center;
    }

    @media (min-width: 768px) {
      .social-media--root[data-alignment='right'] & {
        text-align: right;
      }

      .social-media--root[data-alignment='left'] & {
        text-align: left;
      }
    }

    @media (max-width: 767px) {
      .social-media--root[data-mobile-alignment='right'] & {
        text-align: right;
      }
    }
  }

  .social-url--link {
    > [aria-hidden='true'] {
      display: none;
    }

    > [aria-hidden='false'] {
      display: inline-flex;
    }
  }
/* END_SNIPPET:social-media */

/* START_SNIPPET:stacked-text (INDEX:189) */
.stacked-text--root {
    display: flex;
    pointer-events: none; /* image hover effect */
    /* for justify-self/align-self the parent needs to be a grid */
    align-self: var(--y-alignment);
    justify-self: var(--x-alignment);
    justify-content: var(--x-alignment);

    @media (min-width: 768px) {
      align-items: var(--y-alignment);
      width: fit-content;
      z-index: 1;
      user-select: none;
    }

    @media (max-width: 767px) {
      z-index: 2;
      width: 100%;
    }
  }

  .stacked-text--wrapper {
    pointer-events: none; /* image hover effect */
    padding: var(--text-padding, 0);
    align-items: var(--x-alignment);
    text-align: var(--text-alignment);
    border-radius: var(--image--radius);

    @media (min-width: 768px) {
      .stacked-text--root:not([data-y-alignment='none']) & {
        --text-padding: var(--spacing--section--x);
      }

      &[data-background-color]:not([data-background-color='transparent']) {
        --text-padding: var(--spacing--block);
        margin: var(--spacing--block) var(--spacing--section--x);
      }
    }

    @media (max-width: 767px) {
      .stacked-text--root:not([data-y-alignment='none']) & {
        --text-padding: var(--spacing--item);
      }

      &:not([data-background-color='transparent']) {
        margin: var(--spacing--item);
      }
    }

    @media (max-width: 767px) {
      .stacked-text--root:not([data-y-alignment='none']) & {
        --text-padding: var(--spacing--item);
      }

      &:not([data-background-color='transparent']) {
        margin: var(--spacing--item);
      }
    }
  }

  .stacked-text--overline,
  .stacked-text--description {
    max-width: 600px;
  }

  .stacked-text--button-container {
    display: flex;
    gap: var(--spacing--item);
    flex-wrap: wrap;
    align-items: var(--x-alignment);
    justify-content: var(--x-alignment);
  }
/* END_SNIPPET:stacked-text */

/* START_SNIPPET:subscribe-form (INDEX:190) */
.subscribe-form--root {
    width: 100%;
    min-width: 200px;
    max-width: 400px;
    display: block;
    margin: 0 auto;

    @media (min-width: 768px) {
      min-width: 200px;

      &[data-x-alignment='left'] {
        margin: 0 auto 0 0;
      }

      &[data-x-alignment='right'] {
        margin: 0 0 0 auto;
      }
    }

    @media (min-width: 768px) {
      min-width: 150px;
    }

    @media (max-width: 767px) {
      &[data-mobile-x-alignment='left'] {
        margin: 0 auto 0 0;
      }

      &[data-mobile-x-alignment='right'] {
        margin: 0 0 0 auto;
      }
    }
  }

  .subscribe-form {
    --border: 1px solid var(--color--body);

    width: 100%;
    display: flex;
    gap: var(--spacing--1);
    align-items: end;

    &[aria-busy='true'] .subscribe-form--submit-text,
    &[aria-busy='false'] .icon--spinner {
      opacity: 0;
    }
  }

  .subscribe-form--input {
    --input--color: var(--color--body);
    --input--radius: 0;
    --input--height: 32px;
    --input--bg-color: transparent;

    margin: 0;
    border: 0;
    padding: 0;
    border-bottom: var(--border);

    &:focus-visible {
      border: 0;
      border-bottom: var(--border);
    }

    [data-text-color='white'] & {
      --input--color: white;
      --border: 1px solid white;
      border: 0;
      border-bottom: var(--border);
    }

    [data-text-color='white'] [data-text-color='body'] & {
      --border: 1px solid var(--color--body);
      --input--color: var(--color--body);
    }

    &:-webkit-autofill {
      -webkit-background-clip: text;
    }
  }

  .subscribe-form--submit {
    .icon--spinner {
      height: var(--button--height);
      width: var(--button--height);
    }
  }
/* END_SNIPPET:subscribe-form */

/* START_SNIPPET:swatches (INDEX:191) */
.swatches--header {
    display: flex;
    gap: var(--spacing--item);

    &:not(:has(> *:only-child)) {
      justify-content: space-between;
    }
  }

  .swatches--name {
    display: flex;
    gap: var(--spacing--1);
  }

  .swatches--container {
    display: flex;
    flex-wrap: wrap;
    column-gap: var(--spacing--item);
    row-gap: var(--spacing--2);
    padding: var(--spacing--0);
  }

  .swatches--expand {
    margin-left: -6px;
    display: flex;
    align-items: center;
    color: var(--color--body); // iOS

    .swatches--container[aria-expanded='true'] & {
      display: none;
    }
  }

  [data-item='swatch'] {
    position: relative;
    display: inline-block;
    height: 24px;
    width: 24px;
    min-width: 24px;
    border: 1px solid var(--color--gray);
    padding-bottom: 0;
    background: content-box var(--swatch-background) no-repeat center / cover;

    &[data-shape='circle'] {
      border-radius: 50%;
    }

    &:has(> input:focus-visible),
    &:hover:not(:has(> input[disabled])) {
      cursor: pointer;

      &:after {
        opacity: 1;
        border-color: var(--color--body);
      }
    }

    &[data-shape='circle']:after {
      border-radius: 50%;
    }

    &:after {
      content: '';
      height: 30px;
      width: 30px;
      border: 2px solid var(--color--gray);
      opacity: 0.4;
      top: -4px;
      left: -4px;
      position: absolute;
      display: inline-block;
    }

    &:has(> input:checked):after,
    input:checked + &:after {
      opacity: 1;
      border-color: var(--color--body);
    }

    &[data-shape='circle'][data-unavailable='true']:before {
      height: calc(100% + 5.5px);
      top: -3px;
    }

    &[data-shape='square'][data-unavailable='true']:before {
      height: calc(100% + 9px);
      top: -4px;
    }

    &[data-unavailable='true']:before {
      content: '';
      width: 2px;
      background-color: var(--border--color-light);
      display: inline-block;
      position: absolute;
      left: 50%;
      transform: translate(-50%) rotate(45deg);
    }

    .swatches--container[aria-expanded='false'] > &:nth-child(n + 4) {
      display: none;
    }
  }

  .swatch--input[data-item='radio'] {
    opacity: 0;
    width: 1px;
    height: 1px;
    margin: 0;
    position: absolute;
  }
/* END_SNIPPET:swatches */

/* START_SNIPPET:x-menu (INDEX:194) */
.x-menu {
    --natural-height: auto;

    display: flex;
    align-items: center;
    height: 100%;
    min-height: 100%;
  }

  .x-menu--level-1--container {
    display: flex;
    align-items: center;
    height: 100%;
    min-height: 100%;
  }

  .x-menu--level-1--link {
    display: inline-flex;
    align-items: center;
    height: 100%;
    min-height: 100%;

    &[data-megamenu='false'] {
      position: relative;
    }

    &[data-megamenu='true'] {
      .menu-block--image-wrapper {
        max-width: 320px;
        flex-basis: 185px;
        flex-grow: 1;
        width: 100%;
        padding: var(--spacing--block) var(--spacing--item);
      }

      .menu-block--image {
        border-radius: var(--image--radius);
      }

      .menu-block--description {
        padding-top: var(--spacing--1);
        text-align: center;
      }

      .menu-block--products {
        order: 1;
        padding: var(--spacing--block) var(--spacing--item);
        white-space: initial;
        width: 100%;
        max-width: calc(var(--columns) * 320px);
      }

      .menu-block--blog {
        width: 100%;
        max-width: var(--max-width--medium);
        padding: var(--spacing--block) var(--spacing--item);
        white-space: initial;
        order: 1;

        &:only-child {
          margin: 0 auto;
        }
      }

      .menu-block--featured {
        width: 100%;
        order: 1;
        padding: var(--spacing--block) var(--spacing--item);
        white-space: initial;

        &:only-child {
          margin: 0 auto;
        }
      }
    }

    & > :is(a, modal-trigger) {
      display: inline-flex;
      box-sizing: content-box;
      height: 100%;
      min-height: 100%;
      white-space: nowrap;

      .icon--chevron-down {
        transform: scaleY(1);
        transition: transform 0.2s var(--transition--standard);
      }

      &[aria-expanded='true'] {
        .icon--chevron-down {
          transform: scaleY(-1);
        }
      }
    }

    &[data-highlight='true'] > :is(a, modal-trigger) {
      --color: var(--highlight-color);

      .x-menu--level-1--text:after,
      .x-menu--level-1--text:before {
        --header--color: var(--highlight-color);
      }
    }
  }

  .x-menu--level-1--text {
    gap: var(--spacing--1);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    pointer-events: none;
  }

  .x-menu--level-2--container {
    --height: auto;

    position: absolute;
    white-space: nowrap;
    min-width: 150px;
    left: 0;
    height: var(--height);
    overflow: hidden;
    transition: height 0.3s var(--transition--ease-out);

    .x-menu--level-1--link[data-megamenu='false'] & {
      left: var(--spacing--neg-3);

      .layout--viewport[data-drop-shadows='true'] & {
        box-shadow: var(--box-shadow--bottom);
      }

      .layout--viewport[data-drop-shadows='false'] & {
        border: var(--border--dark);
        border-top: none;
      }
    }

    .x-menu--level-1--link[data-megamenu='true'] & {
      max-width: 100%;
      width: 100%;
      padding-left: calc(var(--spacing--section--x) - var(--spacing--item));
      padding-right: calc(var(--spacing--section--x) - var(--spacing--item));
      inset-block-start: 100%;

      .layout--viewport[data-drop-shadows='true'] & {
        box-shadow: var(--box-shadow--bottom);
      }

      .layout--viewport[data-drop-shadows='false'] & {
        border-bottom: var(--border--dark);
      }
    }

    &[aria-hidden='true'] {
      display: none;
    }

    &[aria-hidden='false'] {
      display: flex;
    }
  }

  .x-menu--level-2--wrapper {
    display: flex;
  }

  .x-menu--level-2--list {
    padding: calc(var(--spacing--item) + var(--spacing--1)) 0;

    .x-menu--level-1--link[data-megamenu='true'] & {
      display: flex;

      &[data-single-parents='true'] {
        flex-direction: column;
      }

      &:first-child {
        margin-left: var(
          --spacing--neg-item
        ); /* this offsets link padding to align with section spacing */
      }
    }
  }

  .x-menu--level-2--link a {
    display: inline-flex;
    padding: var(--spacing--1) var(--spacing--4);

    > * {
      pointer-events: none;
    }
  }

  ul.x-menu--level-3--container {
    padding: 0 0 20px;
  }

  .x-menu--level-3--link a {
    padding: var(--spacing--1) var(--spacing--4);
    line-height: 1;
  }
/* END_SNIPPET:x-menu */

/* START_SNIPPET:y-menu (INDEX:195) */
.y-menu {
    --transition--menu-duration: 0.4s; /* in seconds */
    --current-level: 0;
    --height: auto;

    display: block;
    position: relative;
    width: 100%;
    overflow: hidden;
    height: var(--height);
    transition: height var(--transition--menu-duration) var(--transition--ease-out);
    will-change: height;

    .menu-block--description {
      padding-top: var(--spacing--1);
      text-align: center;
    }

    :is(.menu-block--image-wrapper, .blog-grid--root, .menu-block--products > *) {
      padding: var(--spacing--item) 0 var(--spacing--block)
        calc(var(--spacing--item) + var(--spacing--0));
    }

    .menu-block--products {
      @media (min-width: 768px) {
        grid-template-columns: 1fr;
      }
    }

    .menu-block--featured {
      --image--radius: 0;
      container-type: inline-size; /* create container query for image-block */
    }

    ul {
      display: flex;
      flex-direction: column;
      gap: var(--spacing--0);
    }

    button[data-item='nav-text'] {
      display: flex;
      padding: 0;
      color: var(--color--body); /* iOS */
      width: 100%;

      @media (hover: hover) {
        &:hover {
          font-weight: 700;
        }
      }
    }
  }

  .y-menu--level-1--container {
    transform: translateX(calc(var(--current-level) * -100%));
    transition: transform var(--transition--menu-duration) var(--transition--ease-out);
    will-change: transform;
  }

  :is(
    .y-menu--parent-link,
    .y-menu--level-1--link,
    .y-menu--level-2--link,
    .y-menu--level-3--link
  ) > :is(a, modal-trigger) {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--spacing--item);

    @media (hover: hover) {
      &:hover {
        font-weight: 700;
      }
    }
  }

  .y-menu--back-link > button[data-item='nav-text'] {
    justify-content: start;
  }

  .y-menu--level-1--link[data-highlight='true'] {
    > :is(button, a, modal-trigger) {
      color: var(--highlight-color);
    }
  }

  .y-menu--level-2--container {
    position: absolute;
    background: var(--bg-color--body);
    left: 100%;
    width: 100%;
    top: 0;
    bottom: 0; /* for full height */
    height: fit-content;

    &[aria-current='false']:not(:has(.y-menu--level-3--container[aria-current='true'])) {
      display: none;
    }
  }

  .y-menu--level-2--link {
    [data-depth='2'] & > a {
      padding-left: var(--spacing--block);
    }
  }

  .y-menu--level-3--container {
    position: absolute;
    left: 100%;
    width: 100%;
    top: 0;
    bottom: 0; /* for full height */
    background: var(--bg-color--body);
    height: fit-content;

    &[aria-current='false'] {
      display: none;
    }
  }

  .y-menu--level-3--link {
    [data-depth='3'] & > a {
      padding-left: var(--spacing--block);
    }
  }

  .y-menu--blocks {
    display: block;
  }
/* END_SNIPPET:y-menu */