/** Shopify CDN: Minification failed

Line 5437:12 Expected identifier but found whitespace
Line 5437:13 Unexpected "0"

**/
/* =============================================================================
   Prop Money — premium unified gray system (no legacy beige / one-off grays)
   ============================================================================= */
   :root {
    /* Premium design system — see pm-premium-design-system.css.liquid for full tokens */
    --pm-white: #FFFFFF;
    --pm-page: #FFFFFF;
    --pm-section: #F8F8F8;
    --pm-section-deeper: #F0F0F0;
    --pm-card: #FFFFFF;
    --pm-card-soft: #F8F8F8;
    --pm-border: #ECECEC;
    --pm-text: #111111;
    --pm-muted: #666666;
    --pm-black: #111111;
    --pm-black-hover: #222222;
    --pm-shadow-soft: 0 2px 8px rgba(0, 0, 0, 0.03), 0 12px 32px rgba(0, 0, 0, 0.06);
  }
  
  body,
  #site-main {
    background: var(--pm-page);
  }
  
  /* Footer — outer shells transparent; panel styling in pm-sitewide-polish.css */
  .shopify-section-group-footer-group,
  .shopify-section-group-footer,
  #shopify-section-group-footer-group,
  #shopify-section-group-footer,
  .shopify-section-group-footer-group > .shopify-section:not(:has(footer)) {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
  }

  .site-footer-wrapper,
  footer .site-footer-wrapper,
  footer.legacy-site-footer .site-footer-wrapper,
  .site-footer,
  .footer {
    color: var(--pm-text);
  }
  
  footer.apple-footer {
    background: var(--pm-section) !important;
  }
  
  /* Announcement bar */
  .announcement-static,
  .announcement-bar,
  .announcement-rotating,
  .shopify-section--announcement-bar .announcement-bar {
    background: var(--pm-section) !important;
    background-color: var(--pm-section) !important;
    border-bottom-color: var(--pm-border) !important;
    color: var(--pm-text) !important;
  }
  
  .announcement-static .announcement-bar__text,
  .announcement-static .announcement-bar__text a,
  .announcement-bar__text,
  .announcement-bar__text a {
    color: var(--pm-text) !important;
    text-decoration: none !important;
  }
  
  /* 4-icon product feature strip */
  .highlights-banner,
  .highlights-banner__container,
  .shopify-section.highlights-banner,
  [class*="highlights-banner__"].highlights-banner__container,
  [class*="highlights-banner__"] .highlights-banner__content {
    background: var(--pm-section) !important;
    background-color: var(--pm-section) !important;
    border-top-color: var(--pm-border) !important;
    border-bottom-color: var(--pm-border) !important;
  }
  
  [class*="highlights-banner__"] .highlights-banner__content::before {
    background: linear-gradient(to right, var(--pm-section) 10%, transparent 100%) !important;
  }
  
  [class*="highlights-banner__"] .highlights-banner__content::after {
    background: linear-gradient(to left, var(--pm-section) 10%, transparent 100%) !important;
  }
  
  /* Cart sidebar promo strip */
  .cart-sidebar .cart-sidebar-item--text {
    background-color: var(--pm-card-soft) !important;
  }
  
  /* Add to Cart — white outline (Buy Now / primary CTAs stay black below) */
  .product-form--atc-button,
  .smart-payment-enabled .product-form--atc-button,
  .template-product .product-form--atc-button,
  .modal--quickshop-slim .product-form--atc-button {
    background: var(--pm-white) !important;
    background-color: var(--pm-white) !important;
    color: var(--pm-text) !important;
    border: 1px solid var(--pm-border) !important;
  }
  
  .product-form--atc-button:not(.disabled):hover,
  .smart-payment-enabled .product-form--atc-button:not(.disabled):hover,
  .template-product .product-form--atc-button:not(.disabled):hover,
  .modal--quickshop-slim .product-form--atc-button:not(.disabled):hover {
    background: var(--pm-card-soft) !important;
    background-color: var(--pm-card-soft) !important;
    border-color: var(--pm-border) !important;
    color: var(--pm-text) !important;
  }
  
  /* Legacy beige secondary buttons → unified gray system */
  .button-secondary,
  .countdown-timer__caption-button.countdown-timer__caption-button--secondary,
  .slideshow-slide__button--secondary,
  .utils-sortby--modal-button,
  .spr-summary-actions-newreview,
  .cart-sidebar .cart-sidebar-item--text {
    background-color: var(--pm-white) !important;
    border-color: var(--pm-border) !important;
    color: var(--pm-text) !important;
  }
  
  .button-secondary:not(.disabled):hover,
  .countdown-timer__caption-button.countdown-timer__caption-button--secondary:not(.disabled):hover,
  .slideshow-slide__button--secondary:not(.disabled):hover,
  .utils-sortby--modal-button:not(.disabled):hover,
  .spr-summary-actions-newreview:not(.disabled):hover {
    background: var(--pm-card-soft) !important;
    background-color: var(--pm-card-soft) !important;
    border-color: var(--pm-border) !important;
  }
  
  /* Reviews / testimonials section — desktop gray band only; mobile card in pm-homepage-spacing.css */
  @media screen and (min-width: 1024px) {
    .pm-tstm-premium,
    .shopify-section.pm-tstm-premium--section,
    .testimonials--section,
    .shopify-section.testimonials--section,
    .testimonials-section {
      background: var(--pm-section) !important;
      background-color: var(--pm-section) !important;
    }
  }
  
  /* White floating cards on gray sections */
  .stack-sim-cta__inner,
  .key-details,
  .testimonial .testimonial__content {
    background: var(--pm-card) !important;
    background-color: var(--pm-card) !important;
    border: 1px solid var(--pm-border) !important;
    box-shadow: var(--pm-shadow-soft) !important;
  }
  
  /* FAQ accordion */
  .faq-bodySec h2,
  .inner-faq-sec .faq-bodySec h2 {
    background-color: var(--pm-card) !important;
    border: 1px solid var(--pm-border) !important;
  }
  
  .faq-bodySec h2:hover,
  .inner-faq-sec .faq-bodySec h2:hover {
    background-color: var(--pm-card-soft) !important;
  }
  
  /* Promotional / trust cards */
  body.page-seo-page .pm-seo-trust-logos__card,
  body.template-index .pm-home-fake-money-seo__card {
    background: var(--pm-card) !important;
    border: 1px solid var(--pm-border) !important;
    box-shadow: var(--pm-shadow-soft) !important;
  }
  
  /* SAM.gov footer trust badge — HTML card + logo mark (copy is real text) */
  footer .site-footer-sam-badge {
    flex: 0 0 auto;
  }
  
  footer .samgov-trust-badge {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    width: 228px;
    max-width: 100%;
    padding: 14px 18px 12px;
    background: #FFFFFF;
    border: 1px solid #E5E5E2;
    border-radius: 14px;
    box-shadow: none;
    text-decoration: none;
    color: inherit;
    box-sizing: border-box;
    transition: border-color 0.2s ease;
  }
  
  footer .samgov-trust-badge:hover,
  footer .samgov-trust-badge:focus-visible {
    border-color: #E5E5E2;
    box-shadow: none;
  }
  
  footer .samgov-trust-badge__logo-wrap {
    display: block;
    width: 100%;
    margin: 0 0 8px;
    text-align: center;
  }
  
  footer .samgov-trust-badge__logo {
    display: inline-block;
    width: 100%;
    max-width: 196px;
    height: auto;
    margin: 0 auto;
    vertical-align: middle;
    object-fit: contain;
    object-position: center;
  }
  
  footer .samgov-trust-badge__copy {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 3px;
  }
  
  footer .samgov-trust-badge__line {
    display: block;
    font-family: inherit;
    font-size: 12px;
    line-height: 1.3;
    letter-spacing: 0.02em;
    margin: 0;
  }
  
  footer .samgov-trust-badge__line--primary {
    color: #1D1D1F;
    font-weight: 600;
    white-space: nowrap;
  }
  
  footer .samgov-trust-badge__line--muted {
    color: #6E6E73;
    font-weight: 500;
  }

  /* Desktop footer — extra horizontal breathing room in SAM.gov card */
  @media screen and (min-width: 1024px) {
    footer:not(.footer-mobile) .samgov-trust-badge {
      width: 252px;
      padding: 14px 30px 12px;
    }
  }
  
  @media screen and (max-width: 1023px) {
    footer .samgov-trust-badge {
      width: 228px;
      max-width: calc(100vw - 32px);
      padding: 14px 18px 12px;
    }
  
    footer .samgov-trust-badge__logo {
      max-width: 164px;
    }
  
    footer .samgov-trust-badge__line {
      font-size: 11px;
    }
  }
  
  @media screen and (max-width: 374px) {
    footer .samgov-trust-badge {
      width: 100%;
      max-width: 228px;
    }
  
    footer .samgov-trust-badge__line--primary {
      white-space: normal;
    }
  }
  
  /* Stack Simulator product card */
  .stack-sim-cta__inner {
    border-color: var(--pm-border) !important;
  }
  
    /* Cart quantity – smaller Apple pill */
    .template-cart .cart-item__quantity .quantity-selector {
      display: inline-flex !important;
      align-items: center !important;
      justify-content: center !important;
      gap: 6px !important;
      overflow: visible !important;
  
      height: 34px !important;
      padding: 0 10px !important;
  
      background: #ffffff !important;
      border: 1px solid var(--pm-border) !important;
      border-radius: 999px !important;
    }
  
    .template-cart .cart-item__quantity .quantity-selector__wrapper {
      display: inline-flex !important;
      align-items: center !important;
      gap: 6px !important;
    }
  
    .template-cart .cart-item__quantity .quantity-selector__button {
      width: 22px !important;
      height: 34px !important;
      font-size: 14px !important;
      font-weight: 500 !important;
    }
  
    .template-cart .cart-item__quantity .quantity-selector__input {
      flex: 0 0 auto !important;
      width: 6.5ch !important;
      min-width: 5.5ch !important;
      max-width: 7ch !important;
      font-size: 14px !important;
      font-weight: 400 !important;
      color: #1d1d1f !important;
      text-align: center !important;
      font-variant-numeric: tabular-nums !important;
      font-feature-settings: "tnum" !important;
      background: transparent !important;
      border: none !important;
      -webkit-appearance: textfield !important;
      appearance: textfield !important;
      opacity: 1 !important;
    }
  
    /* PAB stacks qty — same width as regular cart lines (up to 5 digits + comma). */
    .template-cart .cartitems--list > li.pab-card .pab-line__stacks-quantity .quantity-selector__input,
    .template-cart .cartitems--list > li.cart-item--pab-classic .pab-line__stacks-quantity .quantity-selector__input {
      flex: 0 0 auto !important;
      width: 6.5ch !important;
      min-width: 5.5ch !important;
      max-width: 7ch !important;
      font-variant-numeric: tabular-nums !important;
      font-feature-settings: "tnum" !important;
    }
  
    /* FIX: show cart quantity number */
    .template-cart .cart-item__quantity .quantity-selector__wrapper {
      position: relative !important;
      display: flex !important;
      align-items: center !important;
      justify-content: center !important;
    }
  
    .template-cart .cart-item__quantity .quantity-selector__input {
      position: relative !important;
      left: auto !important;
      transform: none !important;
      z-index: 2 !important;
      pointer-events: auto !important;
      visibility: visible !important;
      display: block !important;
      line-height: 1 !important;
      padding: 0 !important;
      -webkit-text-fill-color: #1d1d1f !important;
    }
  
    .productitem {
      background: #ffffff;
      border: 1px solid rgba(0,0,0,0.06);
      border-radius: 18px;
      box-shadow:
        0 1px 2px rgba(0,0,0,0.04),
        0 6px 18px rgba(0,0,0,0.06);
      transition: transform 0.5s cubic-bezier(.22,.61,.36,1),
                  box-shadow 0.5s cubic-bezier(.22,.61,.36,1);
    }
  
    .productitem img {
      border-radius: 12px;
    }
  
    .product-gallery--media,
    .product-gallery--image,
    .product-gallery--image-background {
      border-radius: 14px;
      overflow: hidden;
    }
  
    .template-product .product-gallery--media {
      border-radius: 14px !important;
      overflow: hidden;
    }
  
    /* Product page thumbnails */
    .product-gallery--media-thumbnail img,
    .product-gallery--media-thumbnail-wrapper,
    .product-gallery--media-thumbnail {
      border-radius: 10px;
      overflow: hidden;
    }
  
    .template-product .product-gallery--media-thumbnail img {
      border-radius: 10px !important;
    }
  
    /* Empire-safe desktop proportion tuning (flex-based) */
    @media (min-width: 1101px) {
      .template-product .product--outer {
        column-gap: 16px !important;
      }
  
      .template-product .product-gallery {
        flex: 0 0 calc(58% - 8px) !important;
        max-width: calc(58% - 8px) !important;
      }
  
      .template-product .product-main {
        flex: 0 0 calc(42% - 8px) !important;
        max-width: calc(42% - 8px) !important;
      }
    }
    @media (min-width: 1101px) {
      .template-product .product-gallery {
        flex: 0 0 calc(58% - 12px) !important;
        max-width: calc(58% - 12px) !important;
      }
  
      .template-product .product-main {
        flex: 0 0 calc(42% - 12px) !important;
        max-width: calc(42% - 12px) !important;
      }
    }
  
    /* Product gallery rhythm: clear separation before feature strip */
    .template-product .product-gallery {
      margin-bottom: 48px !important;
    }
  
    .template-product .product-gallery--navigation {
      width: 100% !important;
      max-width: 100% !important;
      margin-left: 0 !important;
      margin-right: 0 !important;
      margin-bottom: 40px !important;
      box-sizing: border-box !important;
    }
  
    .template-product .product-gallery--viewer {
      width: 100% !important;
      max-width: 100% !important;
      box-sizing: border-box !important;
    }
  
    .template-product .gallery-navigation--scroller {
      display: flex !important;
      flex-wrap: wrap !important;
      gap: 0.375rem !important;
      width: 100% !important;
      max-width: 100% !important;
      margin-left: 0 !important;
      margin-right: 0 !important;
      padding-left: 0 !important;
      padding-right: 0 !important;
      margin-bottom: 0 !important;
      box-sizing: border-box !important;
    }
  
    /*
      Size thumbnails to 1/7 of gallery width so a full first row aligns with the main image.
      flex-grow: 0 keeps partial rows (e.g. 2 thumbs) at the same size — left-aligned, not stretched.
    */
    .template-product .gallery-navigation--scroller .product-gallery--media-thumbnail {
      margin: 0 !important;
      flex: 0 0 calc((100% - 6 * 0.375rem) / 7) !important;
      width: calc((100% - 6 * 0.375rem) / 7) !important;
      max-width: calc((100% - 6 * 0.375rem) / 7) !important;
      height: auto !important;
      aspect-ratio: 4 / 3 !important;
      padding: 2px !important;
      box-sizing: border-box !important;
    }
  
    .template-product [data-product-gallery-aspect-ratio="square"] .gallery-navigation--scroller .product-gallery--media-thumbnail {
      aspect-ratio: 1 / 1 !important;
    }
  
    .template-product [data-product-gallery-aspect-ratio="tall"] .gallery-navigation--scroller .product-gallery--media-thumbnail {
      aspect-ratio: 2 / 3 !important;
    }
  
    .template-product .gallery-navigation--scroller .product-gallery--media-thumbnail .product-gallery--media-thumbnail-img-wrapper {
      display: block !important;
      width: 100% !important;
      height: 100% !important;
    }
  
    .template-product .gallery-navigation--scroller .product-gallery--media-thumbnail-img {
      display: block !important;
      width: 100% !important;
      height: 100% !important;
      object-fit: cover !important;
    }
  
    @media (max-width: 1100px) {
      /* Room for selected-thumb ring — padding only (no negative margin; product--outer clips overflow) */
      .template-product .product-gallery {
        overflow: visible !important;
      }
  
      .template-product .product-gallery--navigation {
        overflow: visible !important;
        padding: 3px !important;
        box-sizing: border-box !important;
      }
  
      .template-product .gallery-navigation--scroller {
        padding: 0 !important;
        margin: 0 !important;
        box-sizing: border-box !important;
      }
  
      .template-product .gallery-navigation--scroller .product-gallery--media-thumbnail {
        overflow: visible !important;
      }
    }
  
    @media (max-width: 719px) {
      .template-product .gallery-navigation--scroller {
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        overflow-y: visible !important;
        -webkit-overflow-scrolling: touch;
        scroll-padding-left: 3px !important;
        scroll-padding-right: 3px !important;
        padding: 3px !important;
      }
  
      .template-product .gallery-navigation--scroller .product-gallery--media-thumbnail {
        flex: 0 0 4.5rem !important;
        width: 4.5rem !important;
        min-width: 4.5rem !important;
        height: auto !important;
      }
    }
  
    /* Round thumbnail selector outline — keep ring visible; clip image inside wrapper only */
    .product-gallery--media-thumbnail[aria-current="true"],
    .product-gallery--media-thumbnail[aria-selected="true"] {
      border-radius: 10px !important;
      overflow: visible;
    }
  
    .product-gallery--media-thumbnail.is-selected {
      border-radius: 10px !important;
    }
  
    .template-product .gallery-navigation--scroller .product-gallery--media-thumbnail-img-wrapper {
      border-radius: 10px !important;
      overflow: hidden !important;
    }
  
    /* Round the thumbnail button + active state */
    .gallery-navigation--scroller button {
      border-radius: 12px !important;
    }
  
    .template-product .gallery-navigation--scroller button.product-gallery--media-thumbnail {
      overflow: visible !important;
    }
  
    .gallery-navigation--scroller button[aria-current="true"],
    .gallery-navigation--scroller button.is-selected {
      border-radius: 12px !important;
    }
  
    /* Tighten beige product feature section spacing */
    #shopify-section-template--23347195773204__77798950-ba00-44fe-8a7d-f6a09c9c72e3 .section.product__container.product__container--two-columns,
    .template-product .section.product__container.product__container--two-columns {
      margin-top: 0 !important;
      padding-top: 44px !important;
      padding-bottom: 52px !important;
      border-top: 1px solid rgba(0,0,0,0.05) !important;
    }
  
    @media (hover:hover) {
      .productitem:hover {
        transform: translateY(-2px);
        box-shadow: 0 10px 28px rgba(0,0,0,0.08);
      }
    }
  
    .productgrid--item {
      padding: 12px !important;
    }
  
    @media (max-width: 767px) {
      /* More space between thumbnail strip and beige features box */
      .template-product .product-gallery {
        margin-bottom: 8px !important;
      }
  
      .template-product .product-gallery--navigation {
        margin-bottom: 8px !important;
      }
  
      #shopify-section-template--23347195773204__77798950-ba00-44fe-8a7d-f6a09c9c72e3 .section.product__container.product__container--two-columns,
      .template-product .section.product__container.product__container--two-columns {
        margin-top: 14px !important;
      }
  
      .template-product .product-main {
        margin-top: 0 !important;
        padding-top: 0 !important;
      }
  
      .template-product .product-details .product-title,
      .template-product .product-main .product-details h1.product-title {
        margin-top: 0 !important;
      }
  
      .productitem {
        box-shadow: none !important;
        border: none !important;
        transition: none !important;
        transform: none !important;
      }
  
      .productgrid--item {
        padding: 8px !important;
      }
    }
  
    @media (hover: none) and (pointer: coarse) {
      .productitem,
      .productitem:hover {
        transition: none !important;
        transform: none !important;
        box-shadow: none !important;
      }
    }
  
    /* Blank filler popup: softer Apple-style glass treatment */
    #bf-popup {
      backdrop-filter: blur(12px) !important;
      -webkit-backdrop-filter: blur(12px) !important;
      background: rgba(0, 0, 0, 0.25) !important;
    }
  
    #bf-popup > div {
      background: rgba(255, 255, 255, 0.85) !important;
      backdrop-filter: blur(20px) !important;
      -webkit-backdrop-filter: blur(20px) !important;
      box-shadow: 0 20px 60px rgba(0,0,0,0.15) !important;
    }
  
    #bf-popup a {
      background: rgba(0,0,0,0.06) !important;
      color: #111 !important;
    }
  
    #bf-popup a:hover {
      background: rgba(0,0,0,0.1) !important;
    }
  
    @media (max-width: 600px) {
      #bf-popup > div > div:last-of-type {
        flex-direction: column !important;
        gap: 10px !important;
      }
  
      #bf-popup button,
      #bf-popup a {
        width: 100% !important;
        text-align: center;
      }
    }
  
    /* Force Globo collection layout to use a real grid so cards never get too skinny */
    #gf-grid .productgrid--items {
      display: grid !important;
      grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)) !important;
      gap: 20px !important;
      align-items: stretch !important;
    }
  
    #gf-grid .productgrid--item {
      width: 100% !important;
      min-width: 240px !important;
      margin: 0 !important;
    }
  
    @media (max-width: 768px) {
      #gf-grid .productgrid--items {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 12px !important;
        padding: 0 10px !important;
      }
  
      #gf-grid .productgrid--item {
        margin: 0 !important;
        min-width: 0 !important;
      }
    }
  
    @media (max-width: 600px) {
      /* FORCE override Globo + theme */
      #gf-grid #gf-products.productgrid--items {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 4px !important;
        padding: 0 2px !important;
      }
  
      #gf-grid .productgrid--item {
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
      }
  
      #gf-grid .productitem .productitem--action-trigger,
      #gf-grid .productitem .productitem--action-trigger.productitem--action-atc,
      #gf-grid .productitem .productitem--actions .button,
      #gf-grid .productitem .productitem--actions button,
      #gf-grid .productitem button,
      #gf-grid .productitem .button {
        height: 42px !important;
        min-height: 42px !important;
        line-height: 1 !important;
        font-size: 14px;
        border-radius: 999px;
      }
  
      #gf-grid .productitem--title,
      #gf-grid .productitem--title a {
        margin-bottom: 0 !important;
      }
  
      #gf-grid .productitem--reviews {
        margin-top: 0 !important;
      }
  
      #gf-grid .productitem .jdgm-prev-badge {
        margin-top: 2px !important;
      }
  
      #gf-grid .productitem--reviews span:last-child {
        display: none;
      }
    }
  
    @media (max-width: 380px) {
      #gf-grid .productgrid--items {
        grid-template-columns: 1fr !important;
      }
    }
  
    /* Tighten vertical rhythm inside Globo collection cards without losing aligned buttons */
    #gf-grid .productitem {
      display: flex !important;
      flex-direction: column !important;
      height: 100% !important;
      padding-bottom: 0 !important;
    }

    #gf-grid .productitem--info,
    #gf-grid .productitem__content {
      display: flex !important;
      flex-direction: column !important;
      gap: 4px !important;
      flex-grow: 0 !important;
      padding: 8px 0 4px !important;
      margin: 0 !important;
    }

    #gf-grid .productitem--text {
      width: 100% !important;
      padding-right: 0 !important;
    }

    #gf-grid .productitem--actions,
    #gf-grid .productitem__actions {
      margin-top: 6px !important;
      padding: 0 0 10px !important;
    }

    @media (orientation: landscape) and (max-width: 1279px) {
      #gf-grid .productitem--info,
      #gf-grid .productitem__content {
        flex: 1 1 auto !important;
      }

      #gf-grid .productitem--actions,
      #gf-grid .productitem__actions {
        margin-top: auto !important;
        padding-top: 6px !important;
      }

      #gf-grid #gf-products.productgrid--items {
        gap: 8px !important;
        padding: 0 8px !important;
      }
    }
  
    /* Quick shop modal: tighter, premium styling using the theme's real selectors */
    .modal--quickshop-slim .modal-inner {
      border-radius: 20px !important;
      overflow: visible !important;
      box-shadow: 0 22px 70px rgba(0,0,0,0.16) !important;
      padding: 28px !important;
    }
  
    .modal--quickshop-slim {
      backdrop-filter: blur(6px);
      -webkit-backdrop-filter: blur(6px);
    }
  
    .modal--quickshop-slim .modal-close {
      transform: translate(-4px, 4px);
    }

    /* Quick shop: header z-index 1110 vs theme modal ~700 — lift glass overlay above all chrome */
    body.modal-loaded.modal-visible .modal.modal--quickshop-slim,
    body.modal-visible .modal.modal--quickshop-slim {
      z-index: 99999 !important;
      position: fixed !important;
      inset: 0 !important;
    }

    body.modal-loaded.modal-visible .modal.modal--quickshop-slim .modal-inner,
    body.modal-visible .modal.modal--quickshop-slim .modal-inner {
      z-index: 100000 !important;
    }

    body.modal-loaded.modal-visible:has(.modal--quickshop-slim) .pm-anno-band,
    body.modal-loaded.modal-visible:has(.modal--quickshop-slim) .shopify-section-group-header-group,
    body.modal-loaded.modal-visible:has(.modal--quickshop-slim) .site-header-wrapper,
    body.modal-loaded.modal-visible:has(.modal--quickshop-slim) .site-header,
    body.modal-loaded.modal-visible:has(.modal--quickshop-slim) .site-navigation-wrapper,
    body.modal-loaded.modal-visible:has(.modal--quickshop-slim) .utility-bar,
    body.modal-loaded.modal-visible:has(.modal--quickshop-slim) .announcement-static,
    body.modal-visible:has(.modal--quickshop-slim) .pm-anno-band,
    body.modal-visible:has(.modal--quickshop-slim) .shopify-section-group-header-group,
    body.modal-visible:has(.modal--quickshop-slim) .site-header-wrapper,
    body.modal-visible:has(.modal--quickshop-slim) .site-header,
    body.modal-visible:has(.modal--quickshop-slim) .site-navigation-wrapper,
    body.modal-visible:has(.modal--quickshop-slim) .utility-bar,
    body.modal-visible:has(.modal--quickshop-slim) .announcement-static {
      z-index: 1 !important;
    }

    @media screen and (min-width: 1024px) {
      body.modal-loaded.modal-visible .modal.modal--quickshop-slim,
      body.modal-visible .modal.modal--quickshop-slim {
        backdrop-filter: blur(14px) saturate(120%) !important;
        -webkit-backdrop-filter: blur(14px) saturate(120%) !important;
      }
    }

    /* Mobile quick shop: hide top chrome (overlay still lifted above header on desktop) */
    @media screen and (max-width: 1023px) {
      body.modal-visible:has(.modal--quickshop-slim) .announcement-static,
      body.modal-visible:has(.modal--quickshop-slim) .shopify-section-group-header-group {
        display: none !important;
      }

      body.modal-visible:has(.modal--quickshop-slim) .modal.modal--quickshop-slim .modal-inner {
        margin-top: 0 !important;
      }
    }

    /* Recart + chat sit above modal backdrop (z-index ~999999); hide while options popup is open */
    body.modal-visible:has(.modal--quickshop-slim) button[class*="custom-minimized"],
    body.modal-visible:has(.modal--quickshop-slim) div[class*="custom-minimized"],
    body.modal-visible:has(.modal--quickshop-slim) .recart-custom-minimized,
    body.modal-visible:has(.modal--quickshop-slim) .recart-button,
    body.modal-visible:has(.modal--quickshop-slim) .recart-widget,
    body.modal-visible:has(.modal--quickshop-slim) #recart-widget-container,
    body.modal-visible:has(.modal--quickshop-slim) [id*="recart"],
    body.modal-visible:has(.modal--quickshop-slim) [class*="recart"],
    body.modal-visible:has(.modal--quickshop-slim) iframe[src*="recart"],
    body.modal-visible:has(.modal--quickshop-slim) #pm-chat-root,
    body.modal-visible:has(.modal--quickshop-slim) #pm-chat-launcher,
    body.modal-visible:has(.modal--quickshop-slim) #pm-chat-window,
    body.modal-visible:has(.modal--quickshop-slim) #pm-chat-nudge,
    body.modal-visible:has(.modal--quickshop-slim) #pm-chat-badge,
    body.modal-visible:has(.modal--quickshop-slim) [id^="pm-chat-"],
    body.modal-visible:has(.modal--quickshop-slim) .chat-widget,
    body.modal-visible:has(.modal--quickshop-slim) .intercom-lightweight-app,
    body.modal-visible:has(.modal--quickshop-slim) #crisp-chatbox,
    body.modal-visible:has(.modal--quickshop-slim) iframe[title="chat widget"] {
      display: none !important;
      opacity: 0 !important;
      visibility: hidden !important;
      pointer-events: none !important;
    }
  
    .modal--quickshop-slim .product-form--atc {
      display: flex !important;
      flex-direction: column !important;
      align-items: stretch !important;
      width: 100% !important;
      max-width: 100% !important;
      margin-top: 0 !important;
      box-sizing: border-box !important;
    }
  
    .modal--quickshop-slim .product-form__action-wrapper {
      display: flex !important;
      flex-direction: column !important;
      align-items: stretch !important;
      gap: 12px !important;
    }
  
    /* Dropdown: clean 48px field with consistent text rendering */
    .modal--quickshop-slim [data-options-selection],
    .modal--quickshop-slim .variant-selection,
    .modal--quickshop-slim .form-options,
    .modal--quickshop-slim .options-selection__select-wrapper,
    .modal--quickshop-slim .options-selection__select,
    .modal--quickshop-slim .options-selection__input-select-wrapper {
      display: block !important;
      height: auto !important;
      min-height: 0 !important;
      max-height: none !important;
      flex: 0 0 auto !important;
      align-self: stretch !important;
    }
  
    .modal--quickshop-slim .variant-selection options-selection > * {
      margin-top: 0 !important;
    }
  
    .modal--quickshop-slim .options-selection__select {
      margin: 0 0 8px !important;
      overflow: visible !important;
    }
  
    .modal--quickshop-slim [data-product-form-area],
    .modal--quickshop-slim .product-form--atc {
      overflow: visible !important;
    }
  
    .modal--quickshop-slim .options-selection__select-label {
      display: none !important;
    }
  
    .modal--quickshop-slim .options-selection__input-select-wrapper {
      position: relative !important;
      width: 100% !important;
      overflow: visible !important;
    }
  
    .modal--quickshop-slim .options-selection__input-select {
      display: block !important;
      width: 100% !important;
      height: 48px !important;
      min-height: 48px !important;
      max-height: 48px !important;
      padding: 0 36px 0 14px !important;
      border: 1px solid #c8c8c8 !important;
      border-radius: 12px !important;
      box-shadow: none !important;
      background: #fff !important;
      box-sizing: border-box !important;
      font-size: 15px !important;
      font-weight: 500 !important;
      line-height: 48px !important;
      color: #1d1d1d !important;
      appearance: none !important;
      -webkit-appearance: none !important;
      vertical-align: middle !important;
    }
  
    .modal--quickshop-slim .options-selection__input-select[data-variant-option-chosen-value="false"] {
      color: #888 !important;
      font-weight: 500 !important;
    }
  
    .modal--quickshop-slim .options-selection__input-select:not([data-variant-option-chosen-value="false"]) {
      color: #1d1d1d !important;
    }
  
    .modal--quickshop-slim .options-selection__input-select:focus {
      border-color: #a8a8a8 !important;
      box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.05) !important;
      outline: none !important;
    }
  
    .modal--quickshop-slim .options-selection__input-select-chevron,
    .modal--quickshop-slim .options-selection__input-select-wrapper svg {
      position: absolute !important;
      top: 50% !important;
      right: 14px !important;
      transform: translateY(-50%) !important;
      margin-top: 0 !important;
      pointer-events: none !important;
      z-index: 3 !important;
      color: #555 !important;
    }
  
    /* Quantity selector: pill layout matching the site */
    .modal--quickshop-slim .quantity-selector {
      width: 100% !important;
    }
  
    .modal--quickshop-slim .quantity-selector__label {
      display: none !important;
    }
  
    .modal--quickshop-slim .quantity-selector__wrapper {
      display: flex !important;
      align-items: center !important;
      justify-content: center !important;
      gap: 6px !important;
      border: 1px solid #e5e5e5 !important;
      border-radius: 999px !important;
      padding: 6px !important;
      width: 136px !important;
      max-width: 136px !important;
      margin: 12px 0 16px !important;
      background: #fff !important;
      box-sizing: border-box !important;
    }
  
    .modal--quickshop-slim .quantity-selector__button-wrapper {
      display: flex !important;
      flex: 0 0 auto !important;
    }
  
    .modal--quickshop-slim .quantity-selector__button {
      width: 36px !important;
      min-width: 36px !important;
      height: 36px !important;
      border-radius: 50% !important;
      background: var(--pm-section-deeper) !important;
      border: none !important;
      font-size: 16px !important;
      display: flex !important;
      align-items: center !important;
      justify-content: center !important;
      cursor: pointer !important;
      padding: 0 !important;
      box-shadow: none !important;
    }
  
    .modal--quickshop-slim .quantity-selector__button:hover {
      background: var(--pm-card-soft) !important;
    }
  
    .modal--quickshop-slim .quantity-selector__input {
      width: 40px !important;
      min-width: 40px !important;
      max-width: 40px !important;
      text-align: center !important;
      border: none !important;
      font-weight: 500 !important;
      font-size: 15px !important;
      line-height: 1 !important;
      background: transparent !important;
      padding: 0 !important;
      color: #1d1d1d !important;
    }
  
    /* Reduce floating empty space inside the quick shop stack */
    .modal--quickshop-slim .authorized-use-notice {
      margin: 16px 0 !important;
      padding-top: 10px !important;
      border-top: 1px solid #eee !important;
      font-size: 12px !important;
      line-height: 1.45 !important;
    }
  
    .modal--quickshop-slim .shopify-payment-button,
    .modal--quickshop-slim .product-form__payment-container,
    .modal--quickshop-slim .atc-button--checkout {
      margin-top: 0 !important;
    }
  
    /* Buttons: identical height, width, radius, and typography */
    .modal--quickshop-slim .product-form--atc-button,
    .modal--quickshop-slim .shopify-payment-button__button,
    .modal--quickshop-slim .shopify-payment-button .shopify-payment-button__button--unbranded,
    .modal--quickshop-slim .shopify-payment-button .shopify-payment-button__button--branded,
    .modal--quickshop-slim .atc-button--checkout {
      width: 100% !important;
      min-width: 100% !important;
      max-width: 100% !important;
      height: 52px !important;
      min-height: 52px !important;
      border-radius: 999px !important;
      font-size: 15px !important;
      line-height: 1 !important;
      box-sizing: border-box !important;
      margin: 0 !important;
      display: flex !important;
      align-items: center !important;
      justify-content: center !important;
      padding: 0 !important;
    }
  
    .modal--quickshop-slim .shopify-payment-button {
      flex-basis: auto !important;
      display: block !important;
      width: 100% !important;
      margin: 0 !important;
    }
  
    .modal--quickshop-slim .shopify-payment-button__more-options {
      margin-top: 8px !important;
      text-align: center !important;
      font-size: 13px !important;
    }
  
    /* Buy Now — full width below Add to cart */
    .modal--quickshop-slim .product-form__buy-now-row {
      width: 100% !important;
      max-width: 100% !important;
      flex: 0 0 100% !important;
      margin-top: 12px !important;
      padding-top: 0 !important;
      border-top: none !important;
      box-sizing: border-box !important;
    }
  
    .modal--quickshop-slim .product-form--buy-now-button {
      display: flex !important;
      align-items: center !important;
      justify-content: center !important;
      width: 100% !important;
      min-width: 100% !important;
      max-width: 100% !important;
      height: 54px !important;
      min-height: 54px !important;
      margin: 0 !important;
      padding: 0 24px !important;
      box-sizing: border-box !important;
      border: none !important;
      border-radius: 999px !important;
      background: #000 !important;
      color: #fff !important;
      font-size: 16px !important;
      font-weight: 700 !important;
      letter-spacing: 0.02em !important;
      line-height: 1 !important;
      text-align: center !important;
      cursor: pointer !important;
      box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08) !important;
      transition: background 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease !important;
    }
  
    .modal--quickshop-slim .product-form--buy-now-button:hover {
      background: #111 !important;
      transform: translateY(-1px) !important;
      box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12) !important;
    }
  
    .modal--quickshop-slim .product-form--buy-now-button:active {
      transform: translateY(0) !important;
      box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08) !important;
    }
  
    .modal--quickshop-slim .product-form--buy-now-button.processing {
      opacity: 0.72 !important;
      cursor: wait !important;
      transform: none !important;
    }
  
    .modal--quickshop-slim .product-form--atc redo-shopify-toggle,
    .modal--quickshop-slim .product-form--atc [class*="redo-"],
    .modal--quickshop-slim .product-form--atc [id*="redo-"] {
      display: none !important;
    }
  
    /* Rounded posters */
    .logolist--item img.logolist--image {
      border-radius: 8px;
      transition: transform .25s ease, box-shadow .25s ease;
    }
  
    /* Restore hover lift */
    @media (min-width: 769px) {
      .logolist--item:hover img.logolist--image {
        transform: scale(1.06);
      }
    }
  
    .highlights-banner__content {
      padding-top: 16px !important;
      padding-bottom: 36px !important;
    }
  
    /* Slightly reduce spacing above highlights icons */
    [id*="dynamic_highlights_banner"].highlights-banner__container.section-spacing {
      margin-top: 0.75rem !important;
    }
  
    @media screen and (min-width: 860px) {
      [id*="dynamic_highlights_banner"].highlights-banner__container.section-spacing {
        margin-top: 2.5rem !important;
      }
    }
  
    [id*="dynamic_highlights_banner"] .highlights-banner__content {
      padding-top: 10px !important;
    }
  
    .highlights-banner {
      background: var(--pm-section);
      border-top: 1px solid var(--pm-border);
      border-bottom: 1px solid var(--pm-border);
      overflow: visible !important;
    }
  
    .highlights-banner__content > div {
      padding: 0 16px;
    }
  
    .highlights-banner svg,
    .highlights-banner img {
      opacity: 0.9;
      transform: none !important;
      width: 40px;
      height: auto;
    }
  
    .highlights-banner h3 {
      font-weight: 600;
      letter-spacing: -0.01em;
    }
  
    .highlights-banner p {
      opacity: 0.75;
    }
  
    @media (max-width: 768px) {
      .template-product #shopify-section-template--23347195773204__77798950-ba00-44fe-8a7d-f6a09c9c72e3 {
        margin-top: 16px !important;
      }
  
      .template-product [id*="dynamic_highlights_banner"].highlights-banner__container.section-spacing {
        margin-top: 16px !important;
      }
  
      .highlights-banner svg,
      .highlights-banner img {
        width: 44px;
      }

      .highlights-banner__icon {
        height: auto !important;
        overflow: visible !important;
      }

      .highlights-banner__icon svg,
      .highlights-banner__icon .highlights-banner__custom-icon {
        width: 44px !important;
        height: 44px !important;
        max-width: 44px !important;
        max-height: 44px !important;
      }

      .highlights-banner__block {
        padding: 12px 8px !important;
      }
  
      .highlights-banner h3 {
        margin-top: 8px;
        margin-bottom: 4px;
        font-weight: 600;
      }
  
      .highlights-banner p {
        margin-top: 0;
      }
  
      .highlights-banner__content {
        padding: 20px 16px 28px !important;
        row-gap: 18px !important;
      }
    }
  
    /* CLEAN NEWSLETTER FIX — wider for input + button, no overlap */
    footer .site-footer-block-newsletter .newsletter {
      max-width: 440px !important;
      width: 100% !important;
      margin-top: 16px !important; /* spacing above field */
      margin-left: 0 !important;
      margin-right: auto !important;
    }
  
    footer .form-fields-inline.pxs-newsletter-form-fields {
      display: grid !important;
      grid-template-columns: minmax(0, 1fr) auto !important;
      align-items: stretch !important;
      justify-content: flex-start !important;
      width: 100% !important;
      height: 40px !important;
      background: #ffffff !important;
      border: 1px solid #dcdcdc !important;
      border-radius: 999px !important;
      overflow: hidden !important;
      padding: 0 !important;
      gap: 0 !important;
      margin: 0 !important;
    }
  
    footer .site-footer-block-newsletter .newsletter .form-field {
      margin: 0 !important;
      height: 40px !important;
      display: flex !important;
      align-items: center !important;
    }
  
    footer .site-footer-block-newsletter .newsletter .newsletter-input {
      width: 100% !important;
      max-width: none !important;
      min-width: 0 !important;
      display: flex !important;
      align-items: center !important;
    }
  
    footer .site-footer-block-newsletter .newsletter .newsletter-submit {
      flex: none !important;
      width: auto !important;
      margin-left: 0 !important;
      margin-right: 0 !important;
      padding: 0 !important;
      display: flex !important;
      align-items: center !important;
      overflow: hidden !important;
    }
  
    footer #footer_newsletter_email {
      flex: none !important;
      width: 100% !important;
      min-width: 0 !important;
      border: 0 !important;
      background: transparent !important;
      padding-right: 20px !important;
      border-radius: 0 !important;
      padding: 0 16px !important;
      height: 40px !important;
      margin: 0 !important;
      line-height: normal !important;
    }
  
    footer #footer_newsletter_email:focus + .form-field-title,
    footer #footer_newsletter_email.form-field-filled + .form-field-title {
      opacity: 0 !important;
      visibility: hidden !important;
    }
  
    footer:not(.footer-mobile) .form-fields-inline.pxs-newsletter-form-fields button {
      flex: none !important;
      width: auto !important;
      white-space: nowrap !important;
      padding: 0 20px !important;
      min-width: 80px !important;
      margin: 0 !important;
      border: 0 !important;
      border-radius: 0 !important;
      height: 40px !important;
      background: #1d1d1f !important;
      color: #ffffff !important;
      display: flex !important;
      align-items: center !important;
      justify-content: center !important;
    }
  
    /* Footer button text — lighter weight to match UI (exclude .footer-mobile redesign accordions) */
    footer:not(.footer-mobile) .form-fields-inline.pxs-newsletter-form-fields button,
    footer:not(.footer-mobile) .site-footer-block-newsletter .newsletter-submit button,
    footer:not(.footer-mobile) .button,
    footer:not(.footer-mobile) button {
      background: #1d1d1f !important;
      font-weight: 500;
      font-size: 15px;
    }
  
    /* Footer layout — 5 columns: Shop | Resources | Company | Support | Subscribe + Follow Us */
    @media screen and (min-width: 1024px) {
      .site-footer-blocks,
      .site-footer-blocks--fixed,
      .footer__blocks {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(280px, 1.25fr);
        max-width: 1200px;
        margin: 0 auto;
        gap: 48px;
      }

      .site-footer-column {
        min-width: 0;
      }

      .site-footer-block-item {
        flex: 0 0 auto;
        min-width: 0;
      }

      .site-footer-column--1 .site-footer-block-item,
      .site-footer-column--2 .site-footer-block-item,
      .site-footer-column--3 .site-footer-block-item,
      .site-footer-column--4 .site-footer-block-item {
        min-width: 160px;
      }

      .site-footer-column--5 .site-footer-block-item {
        min-width: 280px;
      }

      .site-footer-block-menu .navmenu-link,
      .site-footer-block-menu a,
      .site-footer-block-nav .navmenu-link,
      .site-footer-block-nav a,
      .site-footer-block-support .navmenu-link,
      .site-footer-block-support a,
      .site-footer-block-support-menu .navmenu-link,
      .site-footer-block-support-menu a {
        white-space: nowrap;
      }

      .site-footer-block-menu .navmenu-item,
      .site-footer-block-nav .navmenu-item,
      .site-footer-block-support .navmenu-item,
      .site-footer-block-support-menu .navmenu-item {
        line-height: 1.7;
      }

      /* Footer menus — no bullets, consistent spacing */
      .site-footer-block-menu .navmenu,
      .site-footer-block-nav .navmenu,
      .site-footer-block-support .navmenu,
      .site-footer-block-support-menu .navmenu {
        list-style: none !important;
        padding-left: 0 !important;
      }

      .site-footer-block-menu .navmenu-item:not(:first-child),
      .site-footer-block-nav .navmenu-item:not(:first-child),
      .site-footer-block-support .navmenu-item:not(:first-child),
      .site-footer-block-support-menu .navmenu-item:not(:first-child) {
        margin-top: 0.3125rem !important;
      }
    }
  
    @media screen and (min-width: 1024px) and (max-width: 1199px) {
      .site-footer-blocks,
      .site-footer-blocks--fixed,
      .footer__blocks {
        grid-template-columns: repeat(4, minmax(0, 1fr)) minmax(220px, 1.2fr) !important;
        gap: 32px !important;
        max-width: 1200px !important;
      }

      .site-footer-column--1 .site-footer-block-item,
      .site-footer-column--2 .site-footer-block-item,
      .site-footer-column--3 .site-footer-block-item,
      .site-footer-column--4 .site-footer-block-item {
        min-width: 140px !important;
      }

      .site-footer-column--5 .site-footer-block-item {
        min-width: 220px !important;
      }
  
      .site-footer-block-rich-text .site-footer-block-content.rte {
        max-width: 100% !important;
      }
  
      footer .form-fields-inline.pxs-newsletter-form-fields button {
        padding: 0 14px !important;
        min-width: 0 !important;
      }
    }
  
    /* ===== Stacked footer (≤1023px): layout + chevron alignment only; spacing = canonical block at EOF ===== */
    @media screen and (max-width: 1023px) {
      .site-footer-blocks--fixed {
        display: flex !important;
        flex-direction: column !important;
        gap: 0 !important;
        text-align: left !important;
        align-items: stretch !important;
      }
  
      .site-footer-column {
        display: flex !important;
        flex-direction: column !important;
        gap: 0 !important;
        width: 100% !important;
      }
  
      .site-footer-column,
      .site-footer-block-item {
        text-align: left !important;
        width: 100% !important;
        box-sizing: border-box !important;
      }
  
      footer .site-footer-block-item.has-accordion > .site-footer-block-title {
        padding-right: 32px !important;
      }
  
      footer .site-footer-block-item.has-accordion .site-footer-block-icon {
        right: 8px !important;
      }
  
      footer .site-footer-block-item.has-accordion .navmenu {
        list-style: none !important;
        padding-left: 0 !important;
      }
  
      footer .site-footer-block-item.has-accordion .navmenu-item:not(:first-child) {
        margin-top: 0.3125rem !important;
      }
  
      footer .site-footer-block-newsletter .newsletter {
        max-width: 320px !important;
        margin-left: 0 !important;
        margin-right: auto !important;
      }
  
      footer .site-footer-block-content .social-icons,
      footer .site-footer-block-social-accounts .social-icons {
        gap: 5px !important;
      }
  
      footer .site-footer-block-content .social-icons a,
      footer .site-footer-block-social-accounts .social-icons a {
        width: 28px !important;
        height: 28px !important;
        min-width: 28px !important;
        min-height: 28px !important;
      }
  
      footer .site-footer-block-content .social-icons a svg,
      footer .site-footer-block-social-accounts .social-icons a svg {
        width: 24px !important;
        height: 24px !important;
      }
  
      footer #footer_newsletter_email {
        min-width: 120px !important;
      }
    }
  
    /* Testimonials: match rounded card system without changing size */
    .testimonial:not(.pm-tstm-premium__cell) {
      border-radius: 16px;
      overflow: hidden;
      min-height: 22.5rem;
    }
  
    .testimonial__content {
      border-radius: inherit;
      background-clip: padding-box;
      min-height: inherit;
      justify-content: flex-start;
      gap: 0.875rem;
      padding: 1.75rem 1.5rem;
    }
  
    @media screen and (min-width: 1080px) {
      .testimonial:not(.pm-tstm-premium__cell) {
        min-height: 24rem;
      }
  
      .testimonial__content {
        padding: 1.75rem 1.5rem;
      }
    }
  
    .testimonial__text[data-testimonial-text] {
      display: -webkit-box;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 5;
      overflow: hidden;
    }
  
    .testimonial__star-ratings {
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 0.1875rem;
      margin-bottom: 0;
    }
  
    .testimonial__text {
      margin-top: 0;
      margin-bottom: 0;
    }
  
    .testimonial__author {
      margin-top: 0.875rem;
    }
  
    .testimonial__content.testimonial__content--expandable .testimonial__text[data-testimonial-text] {
      cursor: pointer;
    }
  
    .testimonial__content.testimonial__content--expanded .testimonial__text[data-testimonial-text] {
      display: block;
      -webkit-line-clamp: unset;
      overflow: visible;
    }
  
    .testimonial__toggle[hidden] {
      display: none !important;
    }
  
    .testimonial__toggle {
      margin-top: 0;
      margin-bottom: 0.625rem;
      padding: 0;
      border: 0;
      background: transparent;
      color: rgba(29, 29, 29, 0.72);
      font: inherit;
      font-size: 0.875rem;
      font-weight: 600;
      line-height: 1.4;
      text-decoration: underline;
      cursor: pointer;
    }
  
    .testimonial__toggle:hover {
      color: rgba(29, 29, 29, 0.95);
    }
  
    /* Footer headings — darker/heavier for easier scanning */
    .site-footer-block-title {
      color: rgba(29, 29, 29, 0.95) !important;
      font-weight: 600 !important;
    }
  
    /* Spacing between heading and content */
    .site-footer-block-content {
      margin-top: 1.35rem !important;
    }
  
    /* Made in the USA — tighten: limit width, smaller text, line-height 1.6 */
    .site-footer-block-rich-text .site-footer-block-content.rte {
      max-width: 320px !important;
      font-size: 0.875rem !important;
      line-height: 1.6 !important;
    }
  
    /* Trust badge under "Made in the USA" */
    .site-footer-trust-badge {
      font-size: 0.8125rem;
      margin-top: 0.75rem;
      color: rgba(29, 29, 29, 0.75);
    }
  
    /* Social icons — no circles, clean standalone icons, match heading weight */
    .site-footer-column,
    .footer-column {
      min-width: 0 !important;
    }
  
    .site-footer-blocks,
    .site-footer-blocks--fixed,
    .footer__blocks,
    .footer-grid {
      align-items: flex-start !important;
    }
  
    footer .social-link::before {
      content: none !important;
      display: none !important;
    }
  
    footer .site-footer-block-content .social-icons,
    footer .site-footer-block-social-accounts .social-icons {
      display: flex !important;
      flex-wrap: wrap !important;
      gap: 6px !important;
      align-items: center !important;
      max-width: none !important;
    }
  
    footer .site-footer-block-content .social-icons a,
    footer .site-footer-block-social-accounts .social-icons a {
      flex: 0 0 auto !important;
      display: flex !important;
      align-items: center !important;
      justify-content: center !important;
      width: 36px !important;
      height: 36px !important;
      min-width: 36px !important;
      min-height: 36px !important;
      flex-shrink: 0 !important;
      background: none !important;
      border-radius: 0 !important;
      border: none !important;
      color: rgba(29, 29, 29, 0.75) !important;
      transition: color 0.2s ease !important;
    }
  
    footer .site-footer-block-content .social-icons a:hover,
    footer .site-footer-block-social-accounts .social-icons a:hover {
      color: #1d1d1d !important;
    }
  
    footer .site-footer-block-content .social-icons a svg,
    footer .site-footer-block-social-accounts .social-icons a svg {
      width: 30px !important;
      height: 30px !important;
      display: block !important;
    }
  
    @media screen and (max-width: 767px) {
      footer .site-footer-block-content .social-icons,
      footer .site-footer-block-social-accounts .social-icons {
        flex-wrap: nowrap !important;
        gap: 5px !important;
        max-width: none !important;
      }
    }
  
    #shop-hcaptcha-badge-container {
      position: fixed !important;
      bottom: 90px !important;
      right: 8px !important;
      width: 52px !important;
      min-width: 52px !important;
      height: 52px !important;
      padding-right: 0 !important;
      box-sizing: border-box !important;
      background: #ffffff !important;
      border-radius: 9999px !important;
      overflow: hidden !important;
      z-index: 10 !important;
    }
  
    .h-captcha-badge,
    .grecaptcha-badge {
      position: fixed !important;
      bottom: 90px !important;
      right: 18px !important;
      z-index: 10 !important;
    }
  
  
    #shop-hcaptcha-badge-container > *,
    #shop-hcaptcha-badge-container div,
    #shop-hcaptcha-badge-container .info,
    #shop-hcaptcha-badge-container iframe {
      background: transparent !important;
      box-shadow: none !important;
      border: 0 !important;
      border-radius: 9999px !important;
      padding: 0 !important;
      transform: translateX(-4px) !important;
      transform-origin: center center !important;
    }
  
    .dynamic-video-wrapper, .navmenu-meganav-wrapper, .site-navigation, .product-section--container, .product-row--container, .productgrid--outer, .pagination--container, .page-content, .page-masthead, .message-banner--outer, .breadcrumbs-container, .atc-banner--outer, .contact-page-content, .account-page-content, .account-page-masthead, .pxs-image-with-text-section, .pxs-newsletter-section, .pxs-map-section, .testimonials-section, .twitter--container, .slideshow--width-content, .shoppable-image, .rich-text--container, .promo-mosaic--container, .promo-grid--container, .page__container, .menulist-container, .logolist--container, .image-with-text, .custom-html--container, .custom-liquid--container, .highlights-banner__content, .highlights-banner__container.content-width, .featured-product__container, .featured-collection__container, .countdown-timer, .collection-list__container, .blogposts--container, .subcollections-banner__container, .subcollections__container, .subcollections-featured-collection__header, .utility-bar__content, .blog--container, .product-compare-container, .product__container, .password-page-footer, .password-page-content--inner, .cart--section, .article--container, .article-image--content-width, .announcement-bar-text-mobile, .announcement-bar-text, .fourohfour--container, .site-footer-item, .site-header-main {
      width: 100%;
      max-width: var(--layout-container-max-width);
      box-sizing: border-box;
    }
  
    .prop-guide-intro {
      margin-bottom: 32px !important;
    }
  
    .prop-guide-intro .rich-text-block {
      margin-bottom: 0 !important;
    }
  
    .prop-guide-intro p {
      max-width: 700px;
      margin: 16px auto 0;
      line-height: 1.6;
    }
  
    .prop-guide-section {
      margin: 96px 0 !important;
      width: 100%;
      max-width: 1400px;
      margin-left: auto !important;
      margin-right: auto !important;
    }
  
    .shopify-section:has(.prop-guide-intro) + .shopify-section:has(.prop-guide-section) .prop-guide-section {
      margin-top: 32px !important;
    }
  
    @media screen and (min-width: 720px) {
      .prop-guide-section .image-with-text__container {
        display: grid;
        width: 100%;
        min-width: 0;
        grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
        align-items: center;
        gap: 64px;
      }
  
      .prop-guide-section .image-with-text__image-wrapper,
      .prop-guide-section .image-with-text__content {
        width: 100%;
        min-width: 0;
      }
  
      .prop-guide-section .image-with-text__content {
        padding: 0;
      }
  
      .prop-guide-section.image-with-text--desktop-image-alignment-left .image-with-text__content,
      .prop-guide-section.image-with-text--desktop-image-alignment-right .image-with-text__content {
        padding-left: 0;
        padding-right: 0;
      }
    }
  
    .shopify-section:has(.prop-guide-section) + .shopify-section:has(.prop-guide-section) .prop-guide-section {
      border-top: 1px solid #eee;
      padding-top: 72px;
    }
  
    .prop-guide-section .image-with-text__heading {
      font-size: 30px;
      margin-bottom: 14px;
    }
  
    .prop-guide-section .image-with-text__text {
      line-height: 1.6;
    }
  
    .prop-guide-section .image-with-text__text p {
      max-width: 560px;
      line-height: 1.6;
    }
  
    .prop-guide-section .image-with-text__content-wrapper {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
    }
  
    .prop-guide-section .image-with-text__button {
      align-self: flex-start;
      margin-top: 12px;
    }
  
    @media (max-width: 768px) {
      .prop-guide-section .image-with-text__content-wrapper {
        width: 100%;
      }
      .prop-guide-section .image-with-text__content-wrapper .image-with-text__button {
        align-self: flex-end;
        margin-top: 14px;
      }
    }
  
    .prop-guide-section .image-with-text__image-wrapper {
      width: 100%;
      border-radius: 14px;
      overflow: hidden;
    }
  
    .prop-guide-section .image-with-text__image,
    .prop-guide-section [data-rimg-canvas] {
      width: 100%;
      height: auto;
      border-radius: 14px;
    }
  
    /* Contact-us page: white text + overlay covers full image */
    body.page-contact-us .promo-mosaic--container .promo-block--header,
    body.page-contact-us .promo-mosaic--container .promo-block--text {
      color: #ffffff !important;
    }
    body.page-contact-us .promo-mosaic--container .promo-block--content,
    body.page-contact-us .promo-mosaic--container .promo-block--content a {
      color: #ffffff !important;
    }
    body.page-contact-us .promo-mosaic--container .promo-block--image {
      position: relative;
    }
    body.page-contact-us .promo-mosaic--container .promo-block--content {
      position: absolute !important;
      top: 0 !important;
      left: 0 !important;
      right: 0 !important;
      bottom: 0 !important;
      width: 100% !important;
      height: 100% !important;
    }
  
    /* Contact-us page: drop the site-wide cream background + hairline borders
       and force a clean 3x2 grid for the contact_options highlights-banner
       (the native theme has no count-6 width rule, so we provide the layout). */
    body.page-contact-us .highlights-banner,
    body.page-contact-us .highlights-banner__container,
    body.page-contact-us .shopify-section.highlights-banner {
      background: transparent !important;
      background-color: transparent !important;
      border-top: 0 !important;
      border-bottom: 0 !important;
    }
    body.page-contact-us .highlights-banner__content {
      background-color: transparent !important;
      display: grid !important;
      grid-template-columns: repeat(3, 1fr) !important;
      gap: 40px !important;
      overflow: visible !important;
      justify-content: stretch !important;
      padding-left: 20px !important;
      padding-right: 20px !important;
    }
    body.page-contact-us .highlights-banner__content::before,
    body.page-contact-us .highlights-banner__content::after {
      display: none !important;
    }
    body.page-contact-us .highlights-banner__block {
      width: auto !important;
      max-width: none !important;
      flex: unset !important;
      flex-shrink: unset !important;
    }
    @media (max-width: 859px) {
      body.page-contact-us .highlights-banner__content {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 24px !important;
      }
    }
    @media (max-width: 559px) {
      body.page-contact-us .highlights-banner__content {
        gap: 16px !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
      }
    }
  
    /* Premium footer separation: soft elevation (radius + shadow in pm-sitewide-polish.css) */
    .site-footer-wrapper {
      margin-top: 0 !important;
      border-top: none !important;
      box-shadow: none !important;
    }
  
    .site-footer-wrapper,
    .site-footer {
      padding-top: 68px !important;
      padding-bottom: 27px;
    }
  
    .site-footer-information {
      margin-top: 28px !important;
    }
  
    /* Footer bottom bar — flex container, SAM (left) | Copyright (center) | Legal (right), aligned on same center line */
    .site-footer-bottom {
      border-top: none;
      margin-top: 60px;
      padding-top: 46px;
    }
  
    .site-footer-bottom-inner {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: space-between;
      gap: 24px;
      max-width: 1200px;
      margin: 0 auto;
    }
  
    .site-footer-bottom-inner > .site-footer-sam-badge {
      display: flex;
      align-items: center;
      margin: 0;
      padding: 0;
    }
  
    .site-footer-bottom-inner > .site-footer-sam-badge a {
      display: flex;
      align-items: stretch;
    }
  
    .site-footer-bottom-inner > .site-footer-bottom-center {
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      text-align: center;
      gap: 2px;
      margin: 0;
    }
  
    .site-footer-bottom-inner > .site-footer-legal-nav {
      display: flex;
      align-items: center;
      margin: 0;
    }
  
    .site-footer-bottom-center .site-footer-credits {
      margin: 0;
      font-size: 0.875rem;
      line-height: 1.4;
    }
  
    .site-footer-bottom-center .site-footer-credits:not(:first-child) {
      margin-top: 0;
    }
  
    .site-footer-legal-nav {
      font-size: 0.875rem;
      font-weight: 400;
      color: rgba(29, 29, 29, 0.7);
      display: flex;
      flex-wrap: nowrap;
      align-items: center;
      gap: 0 1em;
      justify-content: flex-end;
      margin-left: auto;
    }
  
    .site-footer-legal-nav a {
      color: inherit;
      text-decoration: none;
      white-space: nowrap;
      font-weight: 400;
    }
  
    .site-footer-legal-nav a:hover {
      text-decoration: underline;
    }
  
    .site-footer-legal-sep {
      color: rgba(29, 29, 29, 0.5);
      user-select: none;
      pointer-events: none;
      margin: 0 0.5em;
    }
  
    @media screen and (max-width: 1023px) {
      .site-footer-information {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
      }
  
      /* 6. Bottom section — 8px more space above divider, SAM logo 48-56px, 8-10px to copyright */
      .site-footer-bottom {
        margin-top: 28px !important;
        padding-top: 0 !important;
        border-top: none !important;
      }
  
      .site-footer-bottom-inner {
        flex-direction: column;
        align-items: flex-start;
        gap: 0;
        width: 100%;
      }
  
      .site-footer-bottom-inner > .site-footer-sam-badge {
        order: 1;
        margin: 0 !important;
      }
  
      .site-footer-bottom-inner > .site-footer-bottom-center {
        order: 2;
        text-align: left;
        align-items: flex-start;
        margin-top: 10px !important;
        margin-bottom: 0 !important;
      }
  
      .site-footer-bottom-inner > .site-footer-legal-nav {
        order: 3;
        flex-direction: column;
        align-items: flex-start;
        gap: 5px 0;
        margin-top: 12px !important;
        margin-bottom: 0 !important;
      }
  
      .site-footer-legal-sep {
        display: none;
      }
    }
  
    /* ===== Productions Mobile Carousel ===== */
    @media (max-width: 767px) {
      /* Horizontal carousel */
      .logolist--inner {
        display: flex !important;
        overflow-x: auto !important;
        scroll-snap-type: x mandatory;
        gap: 16px !important;
        padding: 0 16px 10px 16px !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        scroll-padding-left: 16px !important;
        align-items: flex-start !important;
        touch-action: auto !important;
        overscroll-behavior-x: contain;
        overscroll-behavior-y: none;
      }
  
      /* Uniform card width */
      .logolist--inner > * {
        flex: 0 0 44%;
        scroll-snap-align: start;
        margin: 0 !important;
        align-self: flex-start !important;
        transform: translateY(0) !important;
      }
  
      /* Reset theme nth-child spacing/size differences */
      .logolist--inner .logolist--item {
        margin: 0 !important;
        width: auto !important;
        flex: 0 0 44% !important;
        display: flex !important;
        align-self: flex-start !important;
        top: 0 !important;
      }
  
      /* Kill inconsistent wrapper styling */
      .logolist--inner > *,
      .logolist--inner > * > *,
      .logolist--inner picture {
        height: auto !important;
        max-height: none !important;
      }
  
      .logolist--inner .logolist--link {
        width: 100% !important;
        display: block !important;
      }
  
      /* Uniform poster shape */
      .logolist--inner img {
        width: 100% !important;
        aspect-ratio: 2 / 3 !important;  /* identical size */
        object-fit: cover !important;    /* consistent crop */
        max-height: none !important;
        border-radius: 16px !important;
        display: block !important;
      }
  
      /*
        Cart: logo list has no .poster-marquee-target (homepage-only), so the tap/hover scale reset
        for .poster-marquee-target below does not run — neutralize expand/LIA zoom same as other pages.
      */
      body.template-cart section.logolist--container .logolist--image,
      body.template-cart section.logolist--container .logolist--image:hover,
      body.template-cart section.logolist--container .logolist--image:active,
      body.template-cart section.logolist--container .logolist--item:hover .logolist--image,
      body.template-cart section.logolist--container .logolist--item:active .logolist--image,
      body.template-cart section.logolist--container .logolist--link:hover .logolist--image,
      body.template-cart section.logolist--container .logolist--link:active .logolist--image,
      body.template-cart section.logolist--container .logolist--item:hover img.logolist--image,
      body.template-cart section.logolist--container .logolist--item:active img.logolist--image {
        transform: none !important;
        -webkit-transform: none !important;
        box-shadow: none !important;
        transition: none !important;
      }
      body.template-cart section.logolist--container .logolist--inner.pxu-lia-block,
      body.template-cart section.logolist--container .logolist--inner.pxu-lia-block--play,
      body.template-cart section.logolist--container .logolist--item.pxu-lia-element {
        animation: none !important;
        -webkit-animation: none !important;
      }
      body.template-cart section.logolist--container .logolist--item.pxu-lia-element {
        --zoom-fade-scale: 1 !important;
        opacity: 1 !important;
      }
  
    }
  
    /* Cart logo strip: vertical drag scrolls the page (matches product-template logolist; global inner uses overscroll-behavior-y: none) */
    @media screen and (max-width: 1023px) {
      body.template-cart section.logolist--container .logolist--inner {
        touch-action: pan-x pan-y !important;
        overscroll-behavior-y: auto !important;
        overflow-y: visible !important;
        scroll-snap-type: none !important;
      }
      body.template-cart section.logolist--container .logolist--link,
      body.template-cart section.logolist--container .logolist--item,
      body.template-cart section.logolist--container .logolist--image,
      body.template-cart section.logolist--container .logolist--inner picture {
        touch-action: pan-x pan-y !important;
      }
    }
  
    section.logolist--container.poster-marquee-target {
      padding-top: 60px;
      padding-bottom: 80px;
    }
  
    @media (max-width: 767px) {
      section.logolist--container.poster-marquee-target {
        padding-top: 46px;
        padding-bottom: 52px;
        overflow: visible !important;
      }
  
      section.logolist--container.poster-marquee-target .logolist--inner {
        padding-top: 14px !important;
        padding-bottom: 20px !important;
        overflow-y: visible !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: none;
        flex-wrap: nowrap !important;
      }
      section.logolist--container.poster-marquee-target .logolist--inner > * {
        flex: 0 0 44% !important;
        scroll-snap-align: none;
      }
      /* Disable hover/active scale on touch – base theme scales images and breaks smooth scroll */
      section.logolist--container.poster-marquee-target .logolist--image:hover,
      section.logolist--container.poster-marquee-target .logolist--image:active,
      section.logolist--container.poster-marquee-target .logolist--item:hover .logolist--image,
      section.logolist--container.poster-marquee-target .logolist--item:active .logolist--image {
        transform: none !important;
      }
      section.logolist--container.poster-marquee-target .logolist--link,
      section.logolist--container.poster-marquee-target .logolist--item {
        -webkit-tap-highlight-color: transparent;
        touch-action: auto;
        overflow: visible !important;
      }
    }
  
    @media (min-width: 1024px) {
      .poster-marquee-target .home-section--title {
        font-size: 32px;
        margin-bottom: 40px;
      }
    }
  
  
    /* Product pages: poster/logo marquee should not expand on tap and must allow vertical page scroll */
    @media (max-width: 1023px) {
      body.template-product section.logolist--container .logolist--inner {
        display: flex !important;
        overflow-x: auto !important;
        overflow-y: visible !important;
        -webkit-overflow-scrolling: touch;
        touch-action: pan-x pan-y !important;
        scroll-snap-type: none !important;
        align-items: flex-start !important;
        flex-wrap: nowrap !important;
        gap: 12px !important;
        padding: 8px 12px 18px 12px !important;
      }
  
      body.template-product section.logolist--container .logolist--inner > *,
      body.template-product section.logolist--container .logolist--inner .logolist--item {
        flex: 0 0 43% !important;
        width: auto !important;
        margin: 0 !important;
        align-self: flex-start !important;
        transform: none !important;
      }
  
      body.template-product section.logolist--container .logolist--link,
      body.template-product section.logolist--container .logolist--item,
      body.template-product section.logolist--container .logolist--image {
        -webkit-tap-highlight-color: transparent;
        touch-action: pan-x pan-y !important;
        transform: none !important;
        transition: none !important;
      }
  
      body.template-product section.logolist--container .logolist--image:hover,
      body.template-product section.logolist--container .logolist--image:active,
      body.template-product section.logolist--container .logolist--item:hover .logolist--image,
      body.template-product section.logolist--container .logolist--item:active .logolist--image,
      body.template-product section.logolist--container .logolist--link:hover .logolist--image,
      body.template-product section.logolist--container .logolist--link:active .logolist--image {
        transform: none !important;
        transition: none !important;
      }
    }
  
    /* Collection, product, and as-seen-on poster lists: manual scroll, no tap expansion */
    
  
    /* Remove click/focus rectangle from main/mega nav links */
    .site-navigation .navmenu-link,
    .site-navigation .navmenu-depth-1 > li > a,
    .site-navigation a,
    .navmenu-meganav.navmenu-meganav--desktop .navmenu-item-text {
      -webkit-tap-highlight-color: transparent;
      outline: none !important;
      box-shadow: none !important;
      transition: color 160ms ease, opacity 160ms ease;
    }
  
    .site-navigation .navmenu-link:focus,
    .site-navigation .navmenu-link:active,
    .site-navigation .navmenu-link:focus-visible,
    .site-navigation .navmenu-depth-1 > li > a:focus,
    .site-navigation .navmenu-depth-1 > li > a:active,
    .site-navigation .navmenu-depth-1 > li > a:focus-visible,
    .navmenu-meganav.navmenu-meganav--desktop .navmenu-item-text:focus,
    .navmenu-meganav.navmenu-meganav--desktop .navmenu-item-text:active,
    .navmenu-meganav.navmenu-meganav--desktop .navmenu-item-text:focus-visible {
      outline: none !important;
      box-shadow: none !important;
    }

    .site-navigation:not(.pm-desktop-nav) .navmenu-link:focus,
    .site-navigation:not(.pm-desktop-nav) .navmenu-link:active,
    .site-navigation:not(.pm-desktop-nav) .navmenu-link:focus-visible,
    .site-navigation:not(.pm-desktop-nav) .navmenu-depth-1 > li > a:focus,
    .site-navigation:not(.pm-desktop-nav) .navmenu-depth-1 > li > a:active,
    .site-navigation:not(.pm-desktop-nav) .navmenu-depth-1 > li > a:focus-visible {
      background: transparent !important;
    }
  
    .site-navigation .navmenu-link:hover,
    .site-navigation .navmenu-depth-1 > li > a:hover,
    .site-navigation a:hover,
    .navmenu-meganav.navmenu-meganav--desktop .navmenu-item-text:hover {
      color: #000 !important;
    }

    .site-navigation:not(.pm-desktop-nav) .navmenu-link:hover,
    .site-navigation:not(.pm-desktop-nav) .navmenu-depth-1 > li > a:hover,
    .site-navigation:not(.pm-desktop-nav) a:hover {
      opacity: 0.72;
    }
  
    @media (min-width: 1024px) {
      /* Simple desktop Shop mega menu */
      .site-navigation .navmenu-meganav.navmenu-meganav--desktop:not([data-animation-state="open"]):has(.navmenu-meganav-standard__wrapper),
      .site-navigation .navmenu-id-shop details:not([open]) > .navmenu-meganav.navmenu-meganav--desktop:has(.navmenu-meganav-standard__wrapper) {
        background: transparent !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        box-shadow: none !important;
        border: 0 !important;
      }

      .site-navigation .navmenu-meganav.navmenu-meganav--desktop[data-animation-state="open"]:not([data-animation]):has(.navmenu-meganav-standard__wrapper) {
        display: block !important;
        background: #ffffff !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        border-top: 0 !important;
        border-bottom: 1px solid rgba(0, 0, 0, 0.04) !important;
        border-radius: 0 0 20px 20px !important;
        box-sizing: border-box !important;
        box-shadow: none !important;
        padding: 40px 0 48px !important;
        height: var(--menu-open-height, auto) !important;
        max-height: none !important;
        overflow: hidden !important;
        margin-top: 0 !important;
        opacity: 1 !important;
      }

      .site-navigation .navmenu-id-shop .navmenu-meganav.navmenu-meganav--desktop[data-animation="closed=>open"]:has(.navmenu-meganav-standard__wrapper) {
        display: block !important;
        background: #ffffff !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        border-top: 0 !important;
        border-bottom: 1px solid rgba(0, 0, 0, 0.04) !important;
        border-radius: 0 0 20px 20px !important;
        box-sizing: border-box !important;
        box-shadow: none !important;
        padding: 40px 0 48px !important;
        max-height: none !important;
        overflow: hidden !important;
        margin-top: 0 !important;
        opacity: 1 !important;
        transition:
          height var(--pm-mega-duration-open, 320ms) var(--pm-mega-ease, cubic-bezier(0.22, 1, 0.36, 1)),
          opacity 220ms var(--pm-mega-ease, cubic-bezier(0.22, 1, 0.36, 1)) !important;
      }

      .site-navigation .navmenu-id-shop .navmenu-meganav.navmenu-meganav--desktop[data-animation="open=>closed"]:has(.navmenu-meganav-standard__wrapper) {
        overflow: hidden !important;
        background: #ffffff !important;
        opacity: 1 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        border: 0 !important;
        transition:
          height var(--pm-mega-duration-close, 260ms) var(--pm-mega-ease-close, cubic-bezier(0.4, 0, 0.2, 1)),
          opacity 180ms var(--pm-mega-ease-close, cubic-bezier(0.4, 0, 0.2, 1)) 80ms,
          padding var(--pm-mega-duration-close, 260ms) var(--pm-mega-ease-close, cubic-bezier(0.4, 0, 0.2, 1)) !important;
      }

      .site-navigation .navmenu-id-shop .navmenu-meganav.navmenu-meganav--desktop[data-animation="closed=>open"] .navmenu-meganav-wrapper:not(.meganav-ghost) {
        transition:
          opacity var(--pm-mega-content-duration, 240ms) var(--pm-mega-ease, cubic-bezier(0.22, 1, 0.36, 1)) 100ms,
          transform var(--pm-mega-content-duration, 240ms) var(--pm-mega-ease, cubic-bezier(0.22, 1, 0.36, 1)) 80ms !important;
      }

      .site-navigation .navmenu-id-shop .navmenu-meganav.navmenu-meganav--desktop[data-animation="open=>closed"] .navmenu-meganav-wrapper:not(.meganav-ghost) {
        opacity: 0 !important;
        transform: translate3d(0, -6px, 0) !important;
        transition:
          opacity 140ms var(--pm-mega-ease-close, cubic-bezier(0.4, 0, 0.2, 1)),
          transform 160ms var(--pm-mega-ease-close, cubic-bezier(0.4, 0, 0.2, 1)) !important;
        pointer-events: none !important;
      }

      .site-navigation .navmenu-meganav.navmenu-meganav--desktop[data-animation-state="open"]:not([data-animation]) .navmenu-meganav-wrapper:not(.meganav-ghost) {
        opacity: 1 !important;
        visibility: visible !important;
        transform: translate3d(0, 0, 0) !important;
      }

      .site-navigation .navmenu-id-shop .navmenu-meganav.navmenu-meganav--desktop:not([data-animation-state="open"]):not([data-animation="open=>closed"]):has(.navmenu-meganav-standard__wrapper) {
        background: transparent !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        box-shadow: none !important;
        border: 0 !important;
        padding: 0 !important;
      }

      .site-navigation .navmenu-meganav.navmenu-meganav--desktop {
        overflow: hidden !important;
        max-height: none !important;
      }

      .site-navigation .navmenu-submenu.navmenu-meganav[data-animation-state="open"]
      .navmenu-meganav-standard__wrapper.navmenu-meganav-wrapper:not(.meganav-ghost) {
        box-shadow: none !important;
        border: none !important;
      }

      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .navmenu-meganav-standard__wrapper.navmenu-meganav-wrapper {
        display: flex !important;
        flex-direction: column !important;
        gap: 0 !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        width: calc(100% - var(--pm-chrome-gutter, 48px)) !important;
        max-width: var(--pm-chrome-max, 1560px) !important;
        margin: 0 auto !important;
        background: transparent !important;
        border-radius: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
        overflow-y: visible !important;
        max-height: none !important;
        box-sizing: border-box !important;
        min-width: 0 !important;
      }

      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .meganav-shop-grid {
        display: grid !important;
        grid-template-columns: repeat(4, minmax(140px, 1fr)) 300px !important;
        gap: 56px !important;
        align-items: start !important;
        width: 100% !important;
      }

      .site-header-sticky .site-navigation .navmenu-meganav.navmenu-meganav--desktop .navmenu-meganav-standard__wrapper.navmenu-meganav-wrapper {
        max-height: none !important;
      }

      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .navmenu-meganav-standard__items {
        display: contents !important;
        max-width: none !important;
        width: auto !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        flex: unset !important;
        background: transparent !important;
        box-shadow: none !important;
      }

      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .navmenu-meganav-standard__item {
        display: block !important;
        width: auto !important;
        min-width: 0 !important;
        padding: 0 !important;
        margin: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        border: none !important;
      }

      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .navmenu-id-denomination,
      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .navmenu-id-denominations {
        display: none !important;
      }

      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .navmenu-depth-3,
      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .navmenu-depth-3.navmenu-submenu {
        background: transparent !important;
        box-shadow: none !important;
        border: none !important;
      }

      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .navmenu-meganav-standard__item > .navmenu-item-text.navmenu-link-parent {
        display: block !important;
        font-family: inherit !important;
        font-size: 11px !important;
        font-weight: 800 !important;
        font-style: normal !important;
        letter-spacing: 0.14em !important;
        text-transform: uppercase !important;
        line-height: 1.2 !important;
        color: #111111 !important;
        padding: 0 !important;
        margin: 0 0 18px !important;
        opacity: 1 !important;
        white-space: normal !important;
        word-wrap: break-word !important;
        overflow-wrap: anywhere !important;
        background: transparent !important;
        transition: none !important;
      }

      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .navmenu-meganav-standard__item > .navmenu-item-text.navmenu-link-parent:hover,
      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .navmenu-meganav-standard__item > .navmenu-item-text.navmenu-link-parent:focus {
        color: #111111 !important;
        opacity: 1 !important;
        transform: none !important;
      }

      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .navmenu-depth-3 {
        margin-top: 0 !important;
      }

      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .navmenu-depth-3 .navmenu-submenu {
        padding: 0 !important;
        margin: 0 !important;
        background: transparent !important;
      }

      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .navmenu-depth-3 .navmenu-link {
        display: block !important;
        font-size: 14.5px !important;
        font-weight: 400 !important;
        line-height: 1.75 !important;
        letter-spacing: 0 !important;
        color: #555555 !important;
        padding: 2px 0 !important;
        white-space: normal !important;
        word-wrap: break-word !important;
        overflow-wrap: anywhere !important;
        background: transparent !important;
        text-decoration: none !important;
        transition: color 220ms ease !important;
        opacity: 1 !important;
      }

      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .navmenu-depth-3 .navmenu-link:hover,
      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .navmenu-depth-3 .navmenu-link:focus,
      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .navmenu-item-text:hover {
        color: #111111 !important;
        opacity: 1 !important;
        background: transparent !important;
        transform: none !important;
      }

      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .navmenu-meganav-standard__items + .navmenu-meganav-standard__image-last,
      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .navmenu-meganav-standard__image-first + .navmenu-meganav-standard__items {
        margin-left: 0 !important;
      }

      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .meganav-featured-card,
      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .navmenu-meganav-standard__image-last {
        grid-column: 5 !important;
        grid-row: 1 !important;
        width: 100% !important;
        max-width: 300px !important;
        min-width: 0 !important;
        margin: 0 !important;
        background: transparent !important;
        overflow: visible !important;
        max-height: none !important;
      }

      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .meganav-featured-card__link {
        display: block !important;
        text-decoration: none !important;
        color: inherit !important;
      }

      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .meganav-featured-card__link:hover {
        opacity: 1 !important;
      }

      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .meganav-featured-card__panel {
        display: flex !important;
        flex-direction: column !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        background: #ffffff !important;
        border: 1px solid #ececec !important;
        border-radius: 18px !important;
        padding: 22px !important;
        overflow: visible !important;
        box-sizing: border-box !important;
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06) !important;
        transition: border-color 220ms ease, box-shadow 220ms ease !important;
      }

      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .meganav-featured-card__link:hover .meganav-featured-card__panel {
        border-color: #e0e0e0 !important;
        box-shadow: 0 10px 28px rgba(0, 0, 0, 0.07) !important;
        transform: none !important;
      }

      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .meganav-featured-card__image {
        border-radius: 12px !important;
        overflow: visible !important;
        margin-bottom: 16px !important;
        background: #f8f8f8 !important;
        aspect-ratio: auto !important;
        flex-shrink: 0 !important;
        max-height: none !important;
        min-height: 168px !important;
      }

      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .meganav-featured-card__image .navmenu-meganav-standard__image,
      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .meganav-featured-card__image img {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        max-height: none !important;
        object-fit: contain !important;
        display: block !important;
        transform: scale(1.08);
        transform-origin: center center;
      }

      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .meganav-featured-card__label {
        display: block !important;
        font-size: 9px !important;
        font-weight: 600 !important;
        letter-spacing: 0.08em !important;
        text-transform: uppercase !important;
        color: #999999 !important;
        margin: 0 0 6px !important;
        padding: 0 !important;
      }

      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .meganav-featured-card__title {
        font-size: 18px !important;
        font-weight: 600 !important;
        line-height: 1.3 !important;
        letter-spacing: -0.02em !important;
        color: #111111 !important;
        margin: 0 0 16px !important;
        padding: 0 !important;
        max-width: none !important;
      }

      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .meganav-featured-card__btn {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        min-height: 40px !important;
        padding: 0 18px !important;
        border-radius: 999px !important;
        background: #111111 !important;
        color: #ffffff !important;
        font-size: 14px !important;
        font-weight: 550 !important;
        letter-spacing: 0 !important;
        margin-top: auto !important;
        transition: background-color 180ms ease, transform 180ms cubic-bezier(0.22, 1, 0.36, 1) !important;
      }

      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .meganav-featured-card__link:hover .meganav-featured-card__btn {
        background: #222222 !important;
        transform: translateY(-2px) !important;
      }
    }

    @media (min-width: 1024px) and (max-width: 1199px) {
      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .meganav-shop-grid {
        grid-template-columns: repeat(4, minmax(120px, 1fr)) 260px !important;
        gap: 44px !important;
        width: 100% !important;
      }

      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .navmenu-meganav-standard__wrapper.navmenu-meganav-wrapper {
        width: calc(100% - 48px) !important;
        max-width: 1560px !important;
        padding: 0 !important;
      }

      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .meganav-featured-card,
      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .navmenu-meganav-standard__image-last {
        max-width: 260px !important;
      }

      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .navmenu-meganav-standard__item > .navmenu-item-text.navmenu-link-parent {
        margin-bottom: 16px !important;
      }

      .site-navigation .navmenu-meganav.navmenu-meganav--desktop .navmenu-depth-3 .navmenu-link {
        font-size: 14px !important;
      }
    }
  
    /* PDP details column only: typography + rhythm */
    .product-details .product-title,
    .product-main .product-details h1.product-title {
      font-weight: 600 !important;
      line-height: 1.25 !important;
      letter-spacing: 0 !important;
      font-size: 20px !important;
      margin-bottom: 6px !important;
    }
  
    .product__container--two-columns article.product--outer .product-main .product-details .product-pricing,
    .product-container--two-columns article.product--outer .product-main .product-details .product-pricing {
      margin: 0.5rem 0 0.75rem !important;
    }
  
    .product__container--two-columns article.product--outer .product-main .product-details .product__price .price__current,
    .product-container--two-columns article.product--outer .product-main .product-details .product__price .price__current {
      font-size: 21px !important;
      font-weight: 700 !important;
      line-height: 1.15 !important;
    }
  
    .product__container--two-columns article.product--outer .product-main .product-details .product__price .price__compare-at,
    .product-container--two-columns article.product--outer .product-main .product-details .product__price .price__compare-at {
      font-size: 16px !important;
      font-weight: 500 !important;
      opacity: 0.62;
      margin-right: 0.35rem !important;
    }
  
    .product__container--two-columns article.product--outer .product-main .product-details .product-block--inventory_status,
    .product-container--two-columns article.product--outer .product-main .product-details .product-block--inventory_status {
      margin: 0.3rem 0 !important;
    }
  
    .product__container--two-columns article.product--outer .product-main .product-details .product-block--rating,
    .product-container--two-columns article.product--outer .product-main .product-details .product-block--rating {
      margin: 0.25rem 0 0.35rem !important;
    }
  
    .product__container--two-columns article.product--outer .product-main .product-details .product-block--rating + .product-block--price,
    .product-container--two-columns article.product--outer .product-main .product-details .product-block--rating + .product-block--price {
      margin-top: 0.15rem !important;
    }
  
    .product__container--two-columns article.product--outer .product-main .product-details .product-block--form,
    .product-container--two-columns article.product--outer .product-main .product-details .product-block--form {
      margin-bottom: 20px !important;
    }
  
    .product__container--two-columns article.product--outer .product-main .product-details .product-block--form + .product-block--description,
    .product__container--two-columns article.product--outer .product-main .product-details .product-block--form + .product-block--text,
    .product__container--two-columns article.product--outer .product-main .product-details .product-block--form + .product-block--tabs,
    .product__container--two-columns article.product--outer .product-main .product-details .product-block--form + .product-block--collapsible-tab,
    .product-container--two-columns article.product--outer .product-main .product-details .product-block--form + .product-block--description,
    .product-container--two-columns article.product--outer .product-main .product-details .product-block--form + .product-block--text,
    .product-container--two-columns article.product--outer .product-main .product-details .product-block--form + .product-block--tabs,
    .product-container--two-columns article.product--outer .product-main .product-details .product-block--form + .product-block--collapsible-tab {
      margin-top: 20px !important;
    }
  
    @media (min-width: 768px) and (max-width: 1199px) {
      .product-details .product-title,
      .product-main .product-details h1.product-title {
        font-size: 24px !important;
        line-height: 1.2 !important;
        letter-spacing: 0 !important;
        margin-bottom: 6px !important;
      }
  
      .product__container--two-columns article.product--outer .product-main .product-details .product__price .price__current,
      .product-container--two-columns article.product--outer .product-main .product-details .product__price .price__current {
        font-size: 25px !important;
      }
  
      .product__container--two-columns article.product--outer .product-main .product-details .product__price .price__compare-at,
      .product-container--two-columns article.product--outer .product-main .product-details .product__price .price__compare-at {
        font-size: 17px !important;
      }
    }
  
    @media (min-width: 1200px) {
      .product-details .product-title,
      .product-main .product-details h1.product-title {
        font-size: 25px !important;
        line-height: 1.2 !important;
        letter-spacing: -0.01em !important;
        margin-bottom: 6px !important;
      }
  
      .product__container--two-columns article.product--outer .product-main .product-details .product__price .price__current,
      .product-container--two-columns article.product--outer .product-main .product-details .product__price .price__current {
        font-size: 29px !important;
      }
  
      .product__container--two-columns article.product--outer .product-main .product-details .product__price .price__compare-at,
      .product-container--two-columns article.product--outer .product-main .product-details .product__price .price__compare-at {
        font-size: 18px !important;
      }
    }
  
    @media (max-width: 767px) {
      .product-details .product-title,
      .product-main .product-details h1.product-title {
        font-size: 20px !important;
        font-weight: 600 !important;
        line-height: 1.25 !important;
        margin-bottom: 6px !important;
      }
    }
  
    /* Judge.me visibility reset (product pages only) */
    .template-product .jdgm-rev-widg {
      max-width: none !important;
      margin: 0 !important;
      padding: 0 !important;
      background: transparent !important;
      border: 0 !important;
      height: auto !important;
      overflow: visible !important;
    }
  
    .template-product .jdgm-rev,
    .template-product .jdgm-row-actions,
    .template-product .jdgm-rev-widg__reviews,
    .template-product .jdgm-rev-widg__body {
      display: block !important;
      opacity: 1 !important;
      visibility: visible !important;
      height: auto !important;
      overflow: visible !important;
    }
  
    .template-product .jdgm-divider-top,
    .template-product .jdgm-divider-bottom {
      display: block !important;
      opacity: 1 !important;
      visibility: visible !important;
      height: auto !important;
    }
  
    /* Judge.me premium polish (safe: spacing + typography only) */
    .template-product .jdgm-rev-widg {
      max-width: 960px !important;
      margin: 0 auto !important;
      padding: 56px 24px !important;
    }
  
    .template-product .jdgm-rev-widg__header {
      margin-bottom: 28px !important;
    }
  
    .template-product .jdgm-rev-widg .jdgm-rev-widg__title,
    .template-product .jdgm-rev-widg .jdgm-rev-widg__title * {
      font-size: 26px !important;
      font-weight: 600 !important;
      line-height: 1.2 !important;
      letter-spacing: -0.01em !important;
      margin-bottom: 8px !important;
    }
  
    .template-product .jdgm-rev-widg__summary {
      font-size: 15px !important;
      color: #3a3a3c !important;
      opacity: 0.78 !important;
      margin-bottom: 0 !important;
    }
  
    .template-product .jdgm-rev {
      padding: 28px 0 !important;
      border-top-color: rgba(0,0,0,0.06) !important;
      border-bottom-color: rgba(0,0,0,0.06) !important;
    }
  
    .template-product .jdgm-rev__author {
      font-size: 14px !important;
      font-weight: 600 !important;
    }
  
    .template-product .jdgm-rev__title {
      margin: 8px 0 6px !important;
      font-size: 18px !important;
      font-weight: 600 !important;
      letter-spacing: -0.01em !important;
    }
  
    .template-product .jdgm-rev__body {
      font-size: 15px !important;
      line-height: 1.75 !important;
      color: #3a3a3c !important;
    }
  
    .template-product .jdgm-rev__verified-badge {
      font-size: 12px !important;
      font-weight: 500 !important;
      border-radius: 999px !important;
      padding: 2px 10px !important;
      background: #f2f2f7 !important;
    }
  
    .template-product .jdgm-paginate {
      display: flex !important;
      justify-content: center !important;
    }
  
    .template-product .jdgm-paginate__load-more {
      display: inline-flex !important;
      align-items: center !important;
      justify-content: center !important;
      min-width: 220px !important;
      width: auto !important;
      height: 48px !important;
      border-radius: 999px !important;
      padding: 0 32px !important;
      font-size: 16px !important;
      line-height: 1 !important;
      letter-spacing: -0.01em !important;
      font-weight: 600 !important;
      margin-top: 20px !important;
      white-space: nowrap !important;
    }
  
    @media (min-width: 768px) and (max-width: 1199px) {
      .template-product .jdgm-rev-widg .jdgm-rev-widg__title,
      .template-product .jdgm-rev-widg .jdgm-rev-widg__title * {
        font-size: 24px !important;
      }
    }
  
    @media (max-width: 767px) {
      .template-product .jdgm-rev-widg {
        padding: 40px 16px !important;
      }
  
      .template-product .jdgm-rev-widg .jdgm-rev-widg__title,
      .template-product .jdgm-rev-widg .jdgm-rev-widg__title * {
        font-size: 21px !important;
        line-height: 1.25 !important;
      }
  
      .template-product .jdgm-rev {
        padding: 22px 0 !important;
      }
  
      /* Add breathing room before first divider line under summary */
      .template-product .jdgm-rev-widg__summary {
        margin-bottom: 14px !important;
      }
  
      .template-product .jdgm-divider-top {
        margin-top: 10px !important;
      }
    }
  
    /* Review image fullscreen: remove weird clipping shape so content shows fully (Stamped/UGC) */
    [class*="stamped"][class*="modal"],
    [class*="stamped"] [class*="modal"],
    [class*="ugc"][class*="modal"] {
      border-radius: 0 !important;
      overflow: visible !important;
      clip-path: none !important;
    }
    [class*="jdgm"] [class*="modal"] > *,
    [class*="jdgm"] [class*="lightbox"] > *,
    [class*="stamped"] [class*="modal"] > * {
      border-radius: 0 !important;
      overflow: visible !important;
    }
  
    /* Review modal: padding around content, gap between image and review panel (Stamped/UGC) */
    [class*="stamped"][class*="modal"] > div,
    [class*="stamped"][class*="modal"] > section,
    [class*="ugc"][class*="modal"] > div {
      padding: 24px !important;
      gap: 28px !important;
      box-sizing: border-box !important;
    }
    [class*="stamped"][class*="modal"] [class*="content"],
    [class*="stamped"][class*="modal"] [class*="body"],
    [class*="stamped"][class*="modal"] [class*="sidebar"],
    [class*="ugc"] [class*="modal"] [class*="content"] {
      padding: 24px 28px !important;
      padding-left: 28px !important;
      box-sizing: border-box !important;
    }
    /* White review panel - padding left/right to match (Stamped) */
    [class*="stamped"][class*="modal"] > div > *:last-child,
    [class*="stamped"][class*="modal"] > * > *:last-child,
    [class*="stamped"] [class*="ugc"] > div > *:last-child,
    [class*="ugc"][class*="modal"] > div > *:last-child,
    [class*="ugcmodal"] > div > *:last-child,
    [id*="stamped"] [class*="modal"] > *:last-child,
    [id*="stamped"] [class*="ugc"] > *:last-child,
    [class*="stamped"] > div > div:last-child,
    [class*="stamped"] > div > section:last-child {
      padding: 24px 28px !important;
      box-sizing: border-box !important;
    }
    /* Add margin between image area and review panel */
    [class*="stamped"][class*="modal"] > div > *:first-child,
    [class*="ugc"][class*="modal"] > div > *:first-child {
      margin-right: 28px !important;
    }
    /* Space to the left of review section (between image and review) */
    [class*="stamped"][class*="modal"] > div > *:last-child,
    [class*="ugc"][class*="modal"] > div > *:last-child {
      margin-left: 28px !important;
    }
  
    /* Desktop product pages: more space below description before features bar */
    @media (min-width: 769px) {
      .template-product .product-main {
        padding-bottom: 28px !important;
      }
  
      .template-product .product-block--description,
      .template-product .product-description {
        margin-bottom: 28px !important;
      }
    }
  
    /* Product zoom modal should always overlay header + announcement */
    .pswp {
      position: fixed !important;
      inset: 0 !important;
      width: auto !important;
      height: auto !important;
      z-index: 99999 !important;
    }
  
    .pswp__scroll-wrap,
    .pswp__bg {
      position: absolute !important;
      inset: 0 !important;
    }
  
    .site-header,
    .site-header-wrapper,
    .announcement-static,
    .announcement-bar {
      z-index: 1100 !important;
    }
  
    /* ===== Shipping Updates - Final Premium Version ===== */
    .shipping-updates {
      padding: 120px 20px 140px;
      background: #ffffff;
    }
  
    .shipping-inner {
      max-width: 760px;
      margin: 0 auto;
      text-align: center;
    }
  
    .shipping-updates h1 {
      font-size: 44px;
      font-weight: 600;
      letter-spacing: -0.02em;
      margin-bottom: 48px;
    }
  
    .shipping-pill {
      display: inline-flex;
      align-items: center;
      gap: 12px;
      background: var(--pm-section);
      padding: 14px 26px;
      border-radius: 999px;
      font-weight: 500;
      margin-bottom: 40px;
    }
  
    .shipping-icon {
      font-size: 12px;
      color: #ff9f0a;
    }
  
    .shipping-body {
      font-size: 18px;
      line-height: 1.7;
      color: #555;
      max-width: 640px;
      margin: 0 auto 60px;
    }
  
    .shipping-actions {
      display: flex;
      justify-content: center;
      gap: 18px;
      flex-wrap: wrap;
      margin-bottom: 36px;
    }
  
    .shipping-actions a.primary {
      background: #111;
      color: #fff;
      padding: 16px 32px;
      border-radius: 14px;
      text-decoration: none;
      font-weight: 500;
      transition: all 0.2s ease;
    }
  
    .shipping-actions a.primary:hover {
      opacity: 0.85;
      transform: translateY(-1px);
    }
  
    .shipping-secondary {
      display: flex;
      justify-content: center;
      gap: 28px;
      flex-wrap: wrap;
      margin-bottom: 50px;
    }
  
    .shipping-secondary a {
      font-size: 14px;
      color: #666;
      text-decoration: none;
      border: none !important;
      padding: 0;
      position: relative;
    }
  
    .shipping-secondary a::after {
      content: "";
      display: block;
      height: 1px;
      background: #ddd;
      width: 0%;
      margin-top: 4px;
      transition: width 0.2s ease;
    }
  
    .shipping-secondary a:hover {
      color: #111;
    }
  
    .shipping-secondary a:hover::after {
      width: 100%;
    }
  
    .shipping-secondary a,
    .shipping-secondary a:before,
    .shipping-secondary a:after {
      border-top: none !important;
      border-bottom: none !important;
    }
  
    .shipping-date {
      font-size: 13px;
      color: #999;
    }
  
    /* ===== Responsive Refinement ===== */
    @media (max-width: 1024px) {
      .shipping-updates {
        padding: 100px 20px 120px;
      }
  
      .shipping-updates h1 {
        font-size: 38px;
      }
  
      .shipping-body {
        font-size: 17px;
      }
    }
  
    @media (max-width: 640px) {
      .shipping-updates {
        padding: 80px 18px 100px;
      }
  
      .shipping-updates h1 {
        font-size: 32px;
        margin-bottom: 36px;
      }
  
      .shipping-pill {
        font-size: 14px;
        padding: 12px 20px;
      }
  
      .shipping-body {
        font-size: 16px;
        margin-bottom: 48px;
      }
  
      .shipping-actions {
        flex-direction: column;
        gap: 14px;
      }
  
      .shipping-actions a.primary {
        width: 100%;
      }
  
      .shipping-secondary {
        flex-direction: column;
        gap: 18px;
      }
  
      .shipping-secondary a::after {
        display: none;
      }
    }
  
  
    @media (max-width: 1023px) {
      body.template-collection .featured-collection__content.flickity-enabled,
      body.template-collection .featured-collection__content .flickity-viewport {
        touch-action: pan-x pan-y !important;
      }
  
      body.template-collection .featured-collection__content[data-layout="slideshow"]:not(.flickity-enabled) {
        display: flex !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        -webkit-overflow-scrolling: touch !important;
        scroll-snap-type: x proximity !important;
        touch-action: pan-x pan-y !important;
        scrollbar-width: none;
        -ms-overflow-style: none;
      }
  
      body.template-collection .featured-collection__content[data-layout="slideshow"]:not(.flickity-enabled)::-webkit-scrollbar {
        display: none;
      }
  
      body.template-collection .featured-collection__content[data-layout="slideshow"]:not(.flickity-enabled) .productgrid--item {
        scroll-snap-align: start;
        flex: 0 0 auto !important;
      }
    }
  
    .productgrid--masthead {
      margin-top: 40px;
      margin-bottom: 25px;
    }
  
    .collection--title,
    .collection-title {
      margin-bottom: 12px;
    }
  
    .collection-intro {
      margin-top: 18px;
      margin-bottom: 14px;
      line-height: 1.6;
    }
  
    /* Collection masthead: full width of the theme container
       Theme grid uses layout--no-sidebar when there is no filter *block*, but Globo still uses .gf-left and ~80% #gf-grid — masthead ends up narrow unless we break it out. */
    body.template-collection .collection--section .productgrid--outer .productgrid--masthead {
      width: 100% !important;
      max-width: none !important;
      box-sizing: border-box;
    }
  
    @supports (grid-column: 1 / -1) {
      body.template-collection .collection--section .productgrid--outer .productgrid--masthead {
        grid-column: 1 / -1;
      }
    }
  
    /* realaged-2 / faceted collections: no theme sidebar block → layout--no-sidebar, but theme still uses 185px | 1fr columns — intro looks “short”. Single column restores full-width masthead row. */
    @media screen and (min-width: 860px) {
      body.template-collection .collection--section .productgrid--outer.layout--no-sidebar {
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-areas:
          "masthead"
          "product-items-wrapper" !important;
      }
    }
  
    /* Globo: visible filter tree + #gf-grid is the product column — expand masthead to full combined row width (100% / 0.8) */
    body.template-collection .collection--section #gf-tree:not(.spf-hidden) + #gf-grid .productgrid--masthead {
      width: 125% !important;
      max-width: none !important;
      margin-left: -25% !important;
      box-sizing: border-box !important;
    }
  
    body.template-collection .collection--section .productgrid--masthead .collection--title,
    body.template-collection .collection--section .productgrid--masthead .collection-intro,
    body.template-collection .collection--section .productgrid--masthead .collection-intro p,
    body.template-collection .collection--section .productgrid--masthead .shorcontent,
    body.template-collection .collection--section .productgrid--masthead .shorcontent p,
    body.template-collection .collection--section .productgrid--masthead .metafield-rich_text_field,
    body.template-collection .collection--section .productgrid--masthead .metafield-rich_text_field p {
      max-width: none !important;
    }
  
    @media (max-width: 768px) {
  
      .productgrid--masthead {
        padding-top: 0 !important;
        margin-top: 0 !important;
      }
  
      .productgrid--masthead h1 {
        margin-bottom: 18px !important;
      }
  
      .collection-intro {
        margin-bottom: 24px !important;
      }
  
    }
  
    @media (max-width: 768px) {
  
      .rich-text--container {
        padding-top: 24px !important;
      }
  
      .rich-text--container h1,
      .rich-text--container h2 {
        margin-top: 0 !important;
      }
  
    }
  
    @media (max-width: 768px) {
  
      iframe {
        margin-top: 20px !important;
      }
  
    }
  
    @media (max-width: 900px) and (max-height: 500px) {
  
      iframe {
        margin-top: 30px !important;
      }
  
      .rich-text--container {
        padding-top: 20px !important;
      }
  
    }
  
    /* Product page + mobile/tablet landscape: lock poster aspect ratio (avoid stretch) */
    @media (max-width: 1024px) and (orientation: landscape) {

      body.template-product section.logolist--container.collection-poster-list-target .logolist--inner,
      body[class*="product"] section.logolist--container.collection-poster-list-target .logolist--inner {
        gap: 10px !important;
        align-items: flex-start !important;
      }

      body.template-product section.logolist--container.collection-poster-list-target .logolist--item,
      body.template-product section.logolist--container.collection-poster-list-target .logolist--inner > *,
      body[class*="product"] section.logolist--container.collection-poster-list-target .logolist--item,
      body[class*="product"] section.logolist--container.collection-poster-list-target .logolist--inner > * {
        flex: 0 0 auto !important;
        width: clamp(112px, 20vw, 156px) !important;
        height: auto !important;
        max-height: none !important;
        margin: 0 !important;
      }

      body.template-product section.logolist--container.collection-poster-list-target .logolist--link,
      body.template-product section.logolist--container.collection-poster-list-target .logolist--inner picture,
      body[class*="product"] section.logolist--container.collection-poster-list-target .logolist--link,
      body[class*="product"] section.logolist--container.collection-poster-list-target .logolist--inner picture {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        max-width: 100% !important;
        max-height: none !important;
        margin-right: 0 !important;
        overflow: hidden !important;
        border-radius: 16px !important;
      }

      body.template-product section.logolist--container.collection-poster-list-target .logolist--image,
      body.template-product section.logolist--container.collection-poster-list-target .logolist--image:hover,
      body.template-product section.logolist--container.collection-poster-list-target .logolist--image:active,
      body[class*="product"] section.logolist--container.collection-poster-list-target .logolist--image,
      body[class*="product"] section.logolist--container.collection-poster-list-target .logolist--image:hover,
      body[class*="product"] section.logolist--container.collection-poster-list-target .logolist--image:active {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        max-width: 100% !important;
        max-height: none !important;
        aspect-ratio: 2 / 3 !important;
        object-fit: cover !important;
        object-position: top center !important;
        transform: none !important;
      }

    }
  
    @media (max-width: 1023px) {
      html:has(#site-mobile-nav[data-open="true"]) #recart-popup-root,
      body:has(#site-mobile-nav[data-open="true"]) #recart-popup-root,
      html.pm-mobile-nav-open #recart-popup-root,
      body.pm-mobile-nav-open #recart-popup-root,
      html:has(#site-mobile-nav[data-open="true"]) #recart-widget-container,
      body:has(#site-mobile-nav[data-open="true"]) #recart-widget-container,
      html.pm-mobile-nav-open #recart-widget-container,
      body.pm-mobile-nav-open #recart-widget-container,
      html.pm-mobile-nav-open button[class*="custom-minimized"],
      html.pm-mobile-nav-open div[class*="custom-minimized"],
      html.pm-mobile-nav-open .recart-custom-minimized,
      html.pm-mobile-nav-open [id*="recart"],
      html.pm-mobile-nav-open [class*="recart"],
      html.pm-mobile-nav-open iframe[src*="recart"],
      html:has(#site-mobile-nav[data-open="true"]) button[class*="custom-minimized"],
      html:has(#site-mobile-nav[data-open="true"]) div[class*="custom-minimized"],
      html:has(#site-mobile-nav[data-open="true"]) .recart-custom-minimized,
      html:has(#site-mobile-nav[data-open="true"]) [id*="recart"],
      html:has(#site-mobile-nav[data-open="true"]) [class*="recart"],
      html:has(#site-mobile-nav[data-open="true"]) iframe[src*="recart"],
      body.menu-open button[class*="custom-minimized"],
      body.menu-open div[class*="custom-minimized"],
      body.menu-open .recart-custom-minimized,
      body.menu-open [id*="recart"],
      body.menu-open [class*="recart"],
      body.menu-open iframe[src*="recart"],
      html.menu-open button[class*="custom-minimized"],
      html.menu-open div[class*="custom-minimized"],
      html.menu-open .recart-custom-minimized,
      html.menu-open [id*="recart"],
      html.menu-open [class*="recart"],
      html.menu-open iframe[src*="recart"] {
        display: none !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
      }
    }
  
    @media (max-width: 767px) and (orientation: portrait) {
      body.template-index section.marquee-container {
        margin-top: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
      }
  
      body.template-index section.marquee-container .marquee-title {
        margin: 0 0 16px !important;
      }
    }
  
  /* Main header nav: make all items slightly lighter gray */
  .site-navigation .navmenu-depth-1 > li > a.navmenu-link,
  .site-navigation .navmenu-depth-1 > li > summary.navmenu-link {
    color: #2f2f34 !important;
    opacity: 1 !important;
  }
  
  /* Main header nav: hover to full black for clear interactivity */
  .site-navigation .navmenu-depth-1 > li > a.navmenu-link:hover,
  .site-navigation .navmenu-depth-1 > li > a.navmenu-link:focus,
  .site-navigation .navmenu-depth-1 > li > summary.navmenu-link:hover,
  .site-navigation .navmenu-depth-1 > li > summary.navmenu-link:focus {
    color: #000000 !important;
    opacity: 1 !important;
  }
  
  /* Main header nav: Bulk Orders is the visual primary action */
  .site-navigation .navmenu-depth-1 > li.navmenu-id-bulk-orders > a.navmenu-link,
  .site-navigation .navmenu-depth-1 > li.navmenu-id-bulk-orders > a.navmenu-link.navmenu-link-active,
  .site-navigation .navmenu-depth-1 > li.navmenu-id-bulk-orders > a.navmenu-link:hover,
  .site-navigation .navmenu-depth-1 > li.navmenu-id-bulk-orders > a.navmenu-link:focus,
  .site-navigation .navmenu-depth-1 > li.navmenu-id-bulk-orders > summary.navmenu-link,
  .site-navigation .navmenu-depth-1 > li.navmenu-id-bulk-orders > summary.navmenu-link.navmenu-link-active,
  .site-navigation .navmenu-depth-1 > li.navmenu-id-bulk-orders > summary.navmenu-link:hover,
  .site-navigation .navmenu-depth-1 > li.navmenu-id-bulk-orders > summary.navmenu-link:focus,
  .mobile-nav-content .navmenu-depth-1 > li.navmenu-id-bulk-orders > a.navmenu-link,
  .mobile-nav-content .navmenu-depth-1 > li.navmenu-id-bulk-orders > a.navmenu-link.navmenu-link-active,
  .mobile-nav-primary-content .navmenu-depth-1 > li.navmenu-id-bulk-orders > a.navmenu-link,
  .mobile-nav-primary-content .navmenu-depth-1 > li.navmenu-id-bulk-orders > a.navmenu-link.navmenu-link-active {
    font-weight: 800 !important;
    color: #000000 !important;
    opacity: 1 !important;
    letter-spacing: 0.01em !important;
  }
  
  /* Match Print A Bill underline style for Bulk Orders in main menu */
  .site-navigation .navmenu-depth-1 > li.navmenu-id-bulk-orders > a.navmenu-link,
  .site-navigation .navmenu-depth-1 > li.navmenu-id-bulk-orders > summary.navmenu-link {
    position: relative;
    text-decoration: none !important;
    transition: color 0.4s ease;
  }
  
  .site-navigation .navmenu-depth-1 > li.navmenu-id-bulk-orders > a.navmenu-link::after,
  .site-navigation .navmenu-depth-1 > li.navmenu-id-bulk-orders > summary.navmenu-link::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 10px;
    width: 74%;
    height: 1px;
    background-color: currentColor;
    opacity: 0;
    transform: translateX(-50%);
    transition: opacity 0.6s ease-out;
  }
  
  .site-navigation .navmenu-depth-1 > li.navmenu-id-bulk-orders > a.navmenu-link:hover::after,
  .site-navigation .navmenu-depth-1 > li.navmenu-id-bulk-orders > a.navmenu-link:focus::after,
  .site-navigation .navmenu-depth-1 > li.navmenu-id-bulk-orders > summary.navmenu-link:hover::after,
  .site-navigation .navmenu-depth-1 > li.navmenu-id-bulk-orders > summary.navmenu-link:focus::after {
    opacity: 1;
  }
  
  /* Footer nav links — uniform weight (no Bulk Orders emphasis) */
  .site-footer-wrapper li.navmenu-id-bulk-orders > .navmenu-link,
  .site-footer-wrapper li.navmenu-id-bulk-orders > .navmenu-link:hover,
  .site-footer-wrapper li.navmenu-id-bulk-orders > .navmenu-link:focus,
  .site-footer-wrapper li.navmenu-id-bulk-orders > .navmenu-link:active,
  .site-footer-wrapper .bulk-orders-link {
    font-weight: inherit !important;
  }
  
  /* =============================================================================
     Footer rhythm (canonical) — stacked footer ≤1023px, 8px grid via tokens
     Phone portrait + landscape both use this block: landscape viewport width is
     usually >768px, so a second “phone lock” at max-width 768 caused portrait-only
     spacing/typography. Removed that layer so orientations match.
     Symmetric padding on block cells; accordion title row = equal top/bottom;
     RTE / newsletter / social margin resets; safe-area + room for Recart/chat
     ============================================================================= */
  footer .site-footer-wrapper {
    --footer-rhythm: 11px;
    --footer-rhythm-sm: 7px;
    --footer-title-body-gap: 8px;
    --footer-block-pad-y: calc(var(--footer-rhythm) - 2px);
  }
  
  @media screen and (max-width: 1023px) {
    footer .site-footer-wrapper,
    footer .site-footer {
      padding-top: var(--footer-block-pad-y) !important;
      padding-bottom: calc(96px + env(safe-area-inset-bottom, 0px)) !important;
    }
  
    footer .site-footer-block-item {
      margin: 0 !important;
      padding-top: calc(var(--footer-block-pad-y) + 1px) !important;
      padding-bottom: calc(var(--footer-block-pad-y) + 1px) !important;
      border-bottom: 1px solid rgba(29, 29, 29, 0.15) !important;
    }
  
    /* Single visual group: nav columns + Subscribe (stacked tablet rules) */
    footer .site-footer-column--5 .site-footer-block-newsletter.site-footer-block-item {
      border-bottom: none !important;
    }
  
    footer .site-footer-column .site-footer-block-item:not(:first-child) {
      margin-top: 0 !important;
    }
  
    footer .site-footer-block-title,
    footer .site-footer-block-title h4,
    footer .site-footer-block-title summary {
      margin: 0 !important;
      line-height: 1.2 !important;
    }
  
    /* Accordions: one rule set (.has-accordion). Theme only special-cases .site-footer-block-menu — normalize support/support-menu to match. */
    footer .site-footer-block-item.has-accordion > .site-footer-block-title {
      position: relative !important;
      display: flex !important;
      align-items: center !important;
      justify-content: flex-start !important;
      text-align: left !important;
      padding-top: 0 !important;
      padding-bottom: 0 !important;
      padding-left: 0 !important;
      padding-right: 32px !important;
      margin: 0 !important;
      line-height: 1.2 !important;
      min-height: 0 !important;
    }
  
    footer .site-footer-column .site-footer-block-item.has-accordion:not(:first-child) > .site-footer-block-title {
      margin-top: 3px !important;
    }
  
    footer .site-footer-block-item.has-accordion .site-footer-block-icon {
      top: 50% !important;
      margin-top: 0 !important;
      transform: translateY(-50%) !important;
    }
  
    footer .site-footer-block-item.has-accordion > .site-footer-block-content {
      margin-top: var(--footer-title-body-gap) !important;
      margin-bottom: 0 !important;
      padding-top: 0 !important;
      padding-bottom: 0 !important;
    }
  
    footer .site-footer-block-item.has-accordion .navmenu-item:last-child,
    footer .site-footer-block-rich-text.has-accordion .site-footer-block-content.rte > *:last-child {
      padding-bottom: var(--footer-rhythm-sm) !important;
    }
  
    /* Made in the USA + Subscribe: same tight title → copy gap (theme adds title padding) */
    footer .site-footer-block-rich-text > .site-footer-block-title,
    footer .site-footer-block-newsletter > .site-footer-block-title {
      padding-top: 0 !important;
      padding-bottom: 0 !important;
    }
  
    footer .site-footer-block-content {
      margin-top: var(--footer-rhythm) !important;
      margin-bottom: 0 !important;
      padding-bottom: 0 !important;
      line-height: 1.5 !important;
    }
  
    footer .site-footer-block-rich-text .site-footer-block-content.rte,
    footer .site-footer-block-rich-text .site-footer-block-content.rte > * {
      line-height: 1.5 !important;
    }
  
    footer .site-footer-block-rich-text .site-footer-block-content.rte p {
      margin-top: var(--footer-rhythm-sm) !important;
      margin-bottom: 0 !important;
    }
  
    footer .site-footer-block-rich-text .site-footer-block-content.rte > *:first-child {
      margin-top: 0 !important;
    }
  
    footer .site-footer-block-rich-text .site-footer-block-content.rte > *:last-child {
      margin-bottom: 0 !important;
    }
  
    footer .site-footer-trust-badge {
      margin-top: var(--footer-rhythm) !important;
      margin-bottom: 0 !important;
      line-height: 1.45 !important;
    }
  
    footer .site-footer-block-rich-text .site-footer-block-content.rte,
    footer .site-footer-block-newsletter .site-footer-block-content.rte {
      margin-top: var(--footer-title-body-gap) !important;
    }
  
    footer .site-footer-block-newsletter .site-footer-block-content.rte {
      margin-bottom: var(--footer-rhythm-sm) !important;
    }
  
    footer .site-footer-block-newsletter.site-footer-block-item {
      margin-top: var(--footer-rhythm) !important;
      padding-top: calc(var(--footer-block-pad-y) + var(--footer-rhythm-sm)) !important;
      border-top: 1px solid rgba(29, 29, 29, 0.15) !important;
    }
  
    footer .site-footer-block-newsletter .newsletter,
    footer .site-footer-block-newsletter .form-field {
      margin-top: 0 !important;
      margin-bottom: 0 !important;
    }
  
    footer .site-footer-column .site-footer-block-item.site-footer-block-social-accounts {
      margin-top: 0 !important;
    }
  
    footer .site-footer-block-social-accounts .site-footer-block-content {
      margin-top: var(--footer-rhythm-sm) !important;
      margin-bottom: 0 !important;
      padding-bottom: 0 !important;
    }
  
    footer .site-footer-block-social-accounts .social-icons {
      margin-top: 0 !important;
      margin-bottom: 0 !important;
    }
  
    footer .site-footer-bottom {
      margin-top: var(--footer-rhythm) !important;
    }
  
    footer .site-footer-bottom-inner > .site-footer-bottom-center,
    footer .site-footer-bottom-inner > .site-footer-legal-nav {
      margin-top: var(--footer-rhythm-sm) !important;
    }
  
    footer .site-footer-bottom-inner > .site-footer-legal-nav {
      gap: 4px 0 !important;
    }
  
    footer .site-footer-bottom-center .site-footer-credits,
    footer .site-footer-legal-nav {
      line-height: 1.35 !important;
    }
  
    footer .site-footer-block-item.has-accordion .navmenu-item {
      line-height: 1.5 !important;
    }
  }
  
  /*
   * Mobile footer redesign (sections/footer-mobile-redesign.liquid):
   * Legacy static footer stays in the theme for rollback — remove this rule and
   * disable/remove the “Mobile footer (redesign)” section in the footer group to restore.
   */
  @media (max-width: 1024px) {
    footer.legacy-site-footer {
      display: none !important;
    }
  
    /* Mobile footer redesign: panel shell in pm-sitewide-polish.css */
    .shopify-section-group-footer-group,
    .shopify-section-group-footer,
    #shopify-section-group-footer-group,
    #shopify-section-group-footer,
    .shopify-section-group-footer-group > .shopify-section,
    .site-footer,
    .footer {
      background: transparent !important;
      background-color: transparent !important;
      border: none !important;
      box-shadow: none !important;
    }
  
    footer.legacy-site-footer .site-footer-wrapper {
      background: var(--pm-section) !important;
    }
  
    /* Chat widgets: stay above mobile footer + black launcher (matches footer CTAs) */
    .chat-widget,
    .intercom-lightweight-app,
    #crisp-chatbox,
    iframe[title="chat widget"] {
      z-index: 999999 !important;
    }
  
    .chat-widget button,
    .intercom-lightweight-app-launcher {
      background: #111 !important;
    }
  }
  
  /* Mobile footer — landscape layout (≤1024px) */
  @media (max-width: 1024px) and (orientation: landscape) {
    footer.footer-mobile {
      background: transparent !important;
    }
  
    footer.footer-mobile .footer-mobile-utility__social,
    footer.footer-mobile .footer-mobile-utility__sam,
    footer.footer-mobile .footer-mobile-utility__vdiv {
      display: none !important;
    }
  
    footer.footer-mobile .footer-branding {
      padding-top: 20px !important;
      padding-bottom: 14px !important;
    }

    footer.footer-mobile .footer-mobile-landscape-vdiv {
      display: block !important;
      align-self: start !important;
      margin-top: calc(14px + 15px * 1.25 + 14px) !important;
      height: calc(48px + 10px + 4px + 48px) !important;
      margin-bottom: 0 !important;
    }

    footer.footer-mobile .footer-mobile-utility {
      border-top: none !important;
      padding-top: 14px !important;
      padding-bottom: 2px !important;
    }

    footer.footer-mobile .footer-mobile-utility__newsletter .footer-mobile-klaviyo__title {
      font-size: 15px !important;
      font-weight: 600 !important;
      margin: 0 0 14px !important;
      line-height: 1.25 !important;
      color: #111111 !important;
    }
  
    footer.footer-mobile .footer-mobile-utility__newsletter .footer-mobile-klaviyo {
      padding-top: 0 !important;
      border-top: none !important;
    }
  
    footer.footer-mobile .footer-mobile-utility__newsletter .footer-klaviyo-landscape {
      padding-bottom: 0 !important;
    }
  
    footer.footer-mobile .footer-mobile-utility__newsletter .footer-subscribe-form {
      display: block !important;
      width: 100% !important;
      min-width: 0 !important;
      overflow: visible !important;
    }
  
    footer.footer-mobile .footer-mobile-utility__newsletter .klaviyo-form-YeCQsE,
    footer.footer-mobile .footer-mobile-utility__newsletter .klaviyo-form-YeCQsE form,
    footer.footer-mobile .footer-mobile-utility__newsletter [class*="klaviyo-form-YeCQsE"],
    footer.footer-mobile .footer-mobile-utility__newsletter .klaviyo-form-UrLNG8,
    footer.footer-mobile .footer-mobile-utility__newsletter .klaviyo-form-UrLNG8 form,
    footer.footer-mobile .footer-mobile-utility__newsletter [class*="klaviyo-form-UrLNG8"] {
      display: block !important;
      width: 100% !important;
      min-width: 0 !important;
      max-width: 100% !important;
      overflow: visible !important;
      opacity: 1 !important;
      visibility: visible !important;
    }
  
    footer.footer-mobile .footer-mobile-utility__newsletter .klaviyo-form-YeCQsE form,
    footer.footer-mobile .footer-mobile-utility__newsletter .klaviyo-form-UrLNG8 form {
      display: flex !important;
      flex-direction: column !important;
      align-items: stretch !important;
      gap: 10px !important;
    }
  
    footer.footer-mobile .footer-mobile-utility__newsletter .footer-subscribe-form input[type="email"] {
      display: block !important;
      width: 100% !important;
      box-sizing: border-box !important;
      border: 1px solid #E5E5E7 !important;
      background: #FFFFFF !important;
      border-radius: 24px !important;
      min-height: 48px !important;
      height: 48px !important;
      padding: 0 16px !important;
      font-size: 14px !important;
      color: #1D1D1F !important;
      opacity: 1 !important;
      visibility: visible !important;
      box-shadow: none !important;
    }
  
    footer.footer-mobile .footer-mobile-utility__newsletter .footer-subscribe-form input[type="email"]::placeholder {
      color: #6E6E73 !important;
    }
  
    footer.footer-mobile .footer-mobile-utility__newsletter .footer-subscribe-form button[type="submit"],
    footer.footer-mobile .footer-mobile-utility__newsletter .footer-subscribe-form button[type="button"] {
      display: flex !important;
      align-items: center !important;
      justify-content: center !important;
      width: 100% !important;
      box-sizing: border-box !important;
      border: none !important;
      background: #111111 !important;
      color: #FFFFFF !important;
      border-radius: 24px !important;
      min-height: 48px !important;
      height: 48px !important;
      padding: 0 16px !important;
      font-size: 15px !important;
      font-weight: 600 !important;
      letter-spacing: 0.3px !important;
      line-height: 1 !important;
      opacity: 1 !important;
      visibility: visible !important;
      cursor: pointer !important;
      transition: background-color 0.18s ease, transform 0.18s ease !important;
      margin-top: 4px !important;
    }
  
    footer.footer-mobile .footer-mobile-utility__newsletter .footer-subscribe-form button[type="submit"]:hover,
    footer.footer-mobile .footer-mobile-utility__newsletter .footer-subscribe-form button[type="button"]:hover {
      background: #111111 !important;
      transform: none !important;
    }
  
    footer.footer-mobile .footer-mobile-utility__newsletter .klaviyo-form-YeCQsE [class*="kl-private"],
    footer.footer-mobile .footer-mobile-utility__newsletter .klaviyo-form-YeCQsE [class*="needsclick"],
    footer.footer-mobile .footer-mobile-utility__newsletter .klaviyo-form-UrLNG8 [class*="kl-private"],
    footer.footer-mobile .footer-mobile-utility__newsletter .klaviyo-form-UrLNG8 [class*="needsclick"] {
      width: 100% !important;
      max-width: 100% !important;
    }
  
    footer.footer-mobile .footer-samgov-text {
      display: block !important;
      padding: 14px 0 !important;
      border-top: 1px solid #DEDEDA !important;
      border-bottom: 1px solid #DEDEDA !important;
    }
  
    footer.footer-mobile .footer-samgov-text__line {
      font-size: 14px !important;
      font-weight: 500 !important;
      color: #6E6E73 !important;
    }
  
    footer.footer-mobile .footer-bottom__legal--stacked {
      display: none !important;
    }
  
    footer.footer-mobile .footer-bottom__legal--inline {
      display: flex !important;
      flex-wrap: wrap !important;
      justify-content: center !important;
      align-items: center !important;
      max-width: 100% !important;
      box-sizing: border-box !important;
      font-size: 13px !important;
      font-weight: 400 !important;
      color: #6E6E73 !important;
    }

    footer.footer-mobile .footer-bottom__legal--inline a,
    footer.footer-mobile .footer-bottom__legal--inline .footer-bottom__copy {
      color: #6E6E73 !important;
      font-weight: 400 !important;
      white-space: normal !important;
    }
  
    footer.footer-mobile .footer-bottom__legal-sep {
      margin: 0 12px !important;
    }
  
    footer.footer-mobile .footer-bottom {
      border-top: none !important;
      padding-top: 14px !important;
      padding-bottom: calc(20px + env(safe-area-inset-bottom, 0px)) !important;
    }

    footer.footer-mobile .footer-cta {
      display: flex !important;
      margin-top: 0 !important;
      margin-bottom: 0 !important;
      border-top: none !important;
      padding-top: calc(14px + 15px * 1.25 + 14px) !important;
      padding-bottom: 2px !important;
    }

    footer.footer-mobile.footer-mobile--no-newsletter .footer-cta {
      padding-top: 14px !important;
    }
  
    footer.footer-mobile .footer-cta a {
      height: 48px !important;
      min-height: 48px !important;
      border-radius: 24px !important;
      font-size: 15px !important;
      font-weight: 600 !important;
    }
  
    footer.footer-mobile .footer-cta a.secondary {
      background: #FFFFFF !important;
      color: #111111 !important;
      border: 1px solid #E5E5E7 !important;
    }
  
    footer.footer-mobile .footer-cta > a:not(.secondary) {
      background: #111111 !important;
      color: #FFFFFF !important;
      border: 1px solid #111111 !important;
      margin-top: 4px !important;
    }
  
    footer.footer-mobile .footer-title {
      min-height: 48px !important;
      font-size: 16px !important;
    }
  
    footer.footer-mobile .footer-title__icon {
      color: #8E8E93 !important;
    }
  }

  /* Small phone landscape — stacked legal fits narrow widths (e.g. iPhone SE 667px) */
  @media (max-width: 740px) and (orientation: landscape) {
    footer.footer-mobile .footer-bottom {
      padding-left: 12px !important;
      padding-right: 12px !important;
      box-sizing: border-box !important;
    }

    footer.footer-mobile .footer-bottom__legal--stacked {
      display: flex !important;
      flex-direction: column !important;
      align-items: center !important;
      gap: 7px !important;
      line-height: 1.2 !important;
    }

    footer.footer-mobile .footer-bottom__legal--inline {
      display: none !important;
    }
  }

  /* Mobile footer in view: fully hide floating chat launchers (portrait + landscape) */
  @media (max-width: 1024px) {
    body.footer-in-view #pm-chat-root > #pm-chat-launcher,
    body.footer-in-view #pm-chat-launcher,
    body.footer-in-view #pm-chat-nudge,
    body.footer-in-view #pm-chat-badge {
      display: none !important;
      opacity: 0 !important;
      pointer-events: none !important;
      visibility: hidden !important;
      transform: none !important;
    }

    body.footer-in-view .intercom-lightweight-app-launcher,
    body.footer-in-view .chat-widget,
    body.footer-in-view #crisp-chatbox,
    body.footer-in-view iframe[title="chat widget"] {
      display: none !important;
      opacity: 0 !important;
      pointer-events: none !important;
      visibility: hidden !important;
    }
  }

  @media (max-width: 1024px) {
    :root {
      --pm-floating-bottom: calc(26px + env(safe-area-inset-bottom, 0px));
    }

    #pm-chat-launcher,
    #pm-chat-nudge {
      bottom: var(--pm-floating-bottom) !important;
      z-index: 999999 !important;
    }

    html.pm-recart-active #pm-chat-root,
    html.pm-recart-active #pm-chat-launcher,
    html.pm-recart-active #pm-chat-nudge,
    html.pm-recart-active #pm-chat-badge,
    body.pm-recart-active #pm-chat-root,
    body.pm-recart-active #pm-chat-launcher,
    body.pm-recart-active #pm-chat-nudge,
    body.pm-recart-active #pm-chat-badge,
    html.pm-recart-active [id^="pm-chat-"],
    body.pm-recart-active [id^="pm-chat-"] {
      display: none !important;
      opacity: 0 !important;
      visibility: hidden !important;
      pointer-events: none !important;
    }
  }
  
  /* Beat theme.css.liquid “center entire footer on mobile” (max-width: 767px) inside <footer> only */
  @media screen and (max-width: 767px) {
    footer .site-footer-blocks.site-footer-blocks--fixed,
    footer .site-footer-blocks--fixed .site-footer-column {
      align-items: stretch !important;
      text-align: left !important;
    }
  
    footer .site-footer-blocks--fixed .site-footer-block-item {
      text-align: left !important;
      margin-left: 0 !important;
      margin-right: 0 !important;
    }
  
    footer .site-footer-block-item.has-accordion > .site-footer-block-title {
      text-align: left !important;
      justify-content: flex-start !important;
    }
  
    footer .site-footer-blocks--fixed .site-footer-block-item .site-footer-block-title {
      text-align: left !important;
    }
  
    footer .site-footer-blocks--fixed .site-footer-block-item .site-footer-block-content,
    footer .site-footer-blocks--fixed .site-footer-block-item .site-footer-block-content * {
      text-align: left !important;
    }
  
    footer .site-footer-wrapper,
    footer .site-footer-item,
    footer .site-footer-information {
      text-align: left !important;
      align-items: stretch !important;
      justify-content: flex-start !important;
    }
  }
  
  /* ===== Collection description: target actual Shopify element ===== */
  .metafield-rich_text_field {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
  }
  
  /* Match .collection-intro: full masthead width, no extra inset (720px + mobile padding read as “indent” vs default template) */
  .productgrid--masthead .metafield-rich_text_field {
    max-width: none;
    margin-left: 0;
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
    opacity: 0;
    transform: translateY(6px);
    animation: fadeInSoft 0.6s ease forwards;
    animation-delay: 0.1s;
  }
  
  .productgrid--masthead .shorcontent {
    padding-left: 0;
    padding-right: 0;
    margin-left: 0;
    margin-right: 0;
  }
  
  /* Masthead collection image: fixed band + crop (object-fit), not squashed. Scoped to .collection--image so subcollection thumbs in masthead are untouched. */
  .productgrid--masthead .collection--image {
    overflow: hidden;
    border-radius: 8px;
  }
  
  .productgrid--masthead .collection--image img {
    display: block;
    width: 100%;
    height: 240px;
    object-fit: cover;
  }
  
  /*
   * Collection hero via dynamic-promo-mosaic (e.g. realaged-2: show_collection_image false, banner in mosaic above main).
   * Not inside .productgrid--masthead; class is .promo-mosaic--container. Visible art is background-size:cover on .promo-block, not the <img> (theme hides .promo-block img).
   */
  body.template-collection .promo-mosaic--height-small .promo-mosaic--inner.promo-mosaic--layout-1 .promo-block,
  body.template-collection .promo-mosaic--height-small .promo-mosaic--inner.promo-mosaic--layout-1 .promo-block--content {
    min-height: 240px !important;
  }
  
  @media screen and (min-width: 860px) {
    body.template-collection .promo-mosaic--height-small .promo-mosaic--inner.promo-mosaic--layout-1 .promo-block,
    body.template-collection .promo-mosaic--height-small .promo-mosaic--inner.promo-mosaic--layout-1 .promo-block--content {
      min-height: 240px !important;
    }
  }
  
  @media screen and (min-width: 720px) {
    body.template-collection .promo-mosaic--height-small .promo-mosaic--inner.promo-mosaic--layout-1.promo-mosaic--maintain-aspect-ratio .promo-block,
    body.template-collection .promo-mosaic--height-small .promo-mosaic--inner.promo-mosaic--layout-1.promo-mosaic--maintain-aspect-ratio .promo-block--content {
      min-height: 240px !important;
    }
  }
  
  body.template-collection .promo-mosaic--inner.promo-mosaic--layout-1 .promo-block--image {
    border-radius: 8px;
    overflow: hidden;
  }
  
  /* Keep collection section from inheriting oversized Globo offset. */
  body.template-collection .shopify-section.collection--section {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
  
  /* Add back a controlled gap only when mosaic hero sits above collection content. */
  body.template-collection .shopify-section.promo-mosaic--section + .shopify-section.collection--section {
    margin-top: 0.9rem !important;
  }
  
  body.template-collection .shopify-section.promo-mosaic--section + .shopify-section.collection--section .productgrid--masthead h1.collection--title {
    padding-top: 0.75rem !important;
  }
  
  .productgrid--masthead .collection-intro,
  .productgrid--masthead .collection-intro p,
  .productgrid--masthead .shorcontent,
  .productgrid--masthead .shorcontent p,
  .productgrid--masthead .metafield-rich_text_field,
  .productgrid--masthead .metafield-rich_text_field p {
    text-indent: 0 !important;
  }
  
  .metafield-rich_text_field p {
    margin-bottom: 10px;
    font-size: 14px;
    color: #555;
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  
  .metafield-rich_text_field p:first-child {
    font-weight: 500;
    letter-spacing: 0.2px;
  }
  
  /* Collection page: description HTML is in .collection-intro; metafield block is in .shorcontent */
  /* Masthead editorial links: border-bottom (not text-underline) — avoids a “dash” look when links wrap on mobile */
  .productgrid--masthead .collection-intro a,
  .productgrid--masthead .collection-intro a:link,
  .productgrid--masthead .collection-intro a:visited,
  .productgrid--masthead .collection-intro a:active,
  .productgrid--masthead .collection-intro a:-webkit-any-link,
  .productgrid--masthead .shorcontent a,
  .productgrid--masthead .shorcontent a:link,
  .productgrid--masthead .shorcontent a:visited,
  .productgrid--masthead .shorcontent a:active,
  .productgrid--masthead .shorcontent a:-webkit-any-link,
  .productgrid--masthead .metafield-rich_text_field a,
  .productgrid--masthead .metafield-rich_text_field a:link,
  .productgrid--masthead .metafield-rich_text_field a:visited,
  .productgrid--masthead .metafield-rich_text_field a:active,
  .productgrid--masthead .metafield-rich_text_field a:-webkit-any-link {
    color: inherit !important;
    text-decoration: none !important;
    border-bottom: 1px solid #111;
    padding-bottom: 1px;
    transition: color 0.2s ease, border-color 0.2s ease;
    margin: 0 !important;
  }
  
  .productgrid--masthead .collection-intro a + a,
  .productgrid--masthead .shorcontent a + a,
  .productgrid--masthead .metafield-rich_text_field a + a {
    margin-left: 0 !important;
  }
  
  .productgrid--masthead .collection-intro a:hover,
  .productgrid--masthead .shorcontent a:hover,
  .productgrid--masthead .metafield-rich_text_field a:hover {
    color: #111 !important;
    border-bottom-color: #111;
  }
  
  /* Metafield rich text outside collection masthead: keep subtle underline */
  .metafield-rich_text_field a,
  .metafield-rich_text_field a:link,
  .metafield-rich_text_field a:visited,
  .metafield-rich_text_field a:active,
  .metafield-rich_text_field a:-webkit-any-link {
    color: inherit !important;
    text-decoration: underline;
    text-underline-offset: 2px;
    transition: color 0.2s ease;
  }
  
  .metafield-rich_text_field a:hover {
    color: #111 !important;
  }
  
  .metafield-rich_text_field strong {
    font-weight: 600;
    color: #111;
  }
  
  @keyframes fadeInSoft {
    from {
      opacity: 0;
      transform: translateY(6px);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }
  
  @media (max-width: 768px) {
    .metafield-rich_text_field {
      padding: 0 16px;
      max-width: 100%;
    }
  
    /* Masthead: same horizontal edges as .collection-intro (no extra 16px inset) */
    .productgrid--masthead .metafield-rich_text_field,
    .productgrid--masthead .shorcontent {
      padding-left: 0 !important;
      padding-right: 0 !important;
    }
  
    .metafield-rich_text_field p {
      font-size: 13px;
    }
  
    .productgrid--masthead .metafield-rich_text_field p:last-child,
    .productgrid--masthead .collection-intro p:last-child {
      line-height: 1.7;
    }
  }
  
  .metafield-rich_text_field a {
    display: inline;
    white-space: nowrap;
  }
  
  .metafield-rich_text_field a strong {
    display: inline;
  }
  
  body.template-collection .collection-description a,
  body.template-collection .collection-description a strong {
    display: inline;
    margin: 0 !important;
  }

  /* Mis-Made Series: tighten cards → product grid gap (~45%) without changing card layout */
  body.template-collection .mismade-series-description {
    margin-bottom: 22px !important;
  }

  body.template-collection .collection-intro:has(.mismade-series-description) {
    margin-bottom: 8px !important;
  }

  body.template-collection .productgrid--masthead:has(.mismade-series-description) {
    margin-bottom: 13px !important;
  }

  @media (max-width: 767px) {
    body.template-collection .mismade-series-description {
      margin-bottom: 18px !important;
    }

    body.template-collection .collection-intro:has(.mismade-series-description) {
      margin-bottom: 13px !important;
    }

    body.template-collection .productgrid--masthead:has(.mismade-series-description) {
      margin-bottom: 10px !important;
    }
  }

  /* Mobile collection descriptions: visually collapse long SEO copy (HTML stays in DOM) */
  @media (max-width: 767px) {
    body.template-collection .collection-description.pm-col-desc--collapsed .pm-col-desc--extra {
      display: none !important;
    }

    body.template-collection .collection-description.pm-col-desc--collapsed.pm-col-desc--clamp-height {
      position: relative;
      max-height: 260px;
      overflow: hidden;
    }

    body.template-collection .collection-description.pm-col-desc--collapsed.pm-col-desc--clamp-height::after {
      content: '';
      position: absolute;
      left: 0;
      right: 0;
      bottom: 0;
      height: 56px;
      background: linear-gradient(to bottom, rgba(255, 255, 255, 0), #fff 88%);
      pointer-events: none;
    }

    body.template-collection .collection-description.pm-col-desc--expanded {
      max-height: none !important;
      overflow: visible !important;
    }

    body.template-collection .collection-description.pm-col-desc--expanded::after {
      display: none !important;
    }

    body.template-collection .pm-col-desc-toggle {
      display: inline-block;
      margin: 10px 0 0;
      padding: 0;
      border: none;
      background: none;
      font-size: 14px;
      font-weight: 500;
      line-height: 1.4;
      color: #666;
      text-decoration: underline;
      text-underline-offset: 3px;
      cursor: pointer;
      -webkit-appearance: none;
      appearance: none;
    }

    body.template-collection .pm-col-desc-toggle:hover,
    body.template-collection .pm-col-desc-toggle:focus-visible {
      color: #111;
      outline: none;
    }
  }

  @media (min-width: 768px) {
    body.template-collection .collection-description.pm-col-desc--collapsed,
    body.template-collection .collection-description.pm-col-desc--collapsed::after {
      max-height: none !important;
      overflow: visible !important;
    }

    body.template-collection .collection-description .pm-col-desc--extra {
      display: revert !important;
    }

    body.template-collection .pm-col-desc-toggle {
      display: none !important;
    }
  }

  /* Order tracking page (/pages/order-tracking-form): site surface gray instead of beige card */
  #order-lookup-by-hulkapps .tracker-card {
    background: #F3F3F1 !important;
  }
  
  /* Collection poster marquee: disable tap/hover enlargement on mobile/tablet. */
  @media (max-width: 1023px) {
    body.template-collection section.logolist--container.collection-poster-list-target .logolist--image,
    body.template-collection section.logolist--container.collection-poster-list-target .logolist--image:hover,
    body.template-collection section.logolist--container.collection-poster-list-target .logolist--image:active,
    body.template-collection section.logolist--container.collection-poster-list-target .logolist--item:hover .logolist--image,
    body.template-collection section.logolist--container.collection-poster-list-target .logolist--item:active .logolist--image,
    body.template-collection section.logolist--container.collection-poster-list-target .logolist--link:hover .logolist--image,
    body.template-collection section.logolist--container.collection-poster-list-target .logolist--link:active .logolist--image {
      transform: none !important;
      transition: none !important;
    }
  }
  
  /* Mobile drawer: glass panel + dim overlay (overrides theme.css) */
  @media screen and (max-width: 1023px) {
    /* Light scroll lock: theme ScrollLock + allow-scroll-while-locked (Empire). */
    html.scroll-locked {
      overflow: hidden !important;
      overscroll-behavior: none !important;
    }
  
    html.scroll-locked body {
      position: fixed !important;
      left: 0 !important;
      right: 0 !important;
      width: 100% !important;
      overflow: hidden !important;
      touch-action: none !important;
    }
  
    html.scroll-locked .allow-scroll-while-locked {
      touch-action: pan-y !important;
    }
  
    html.scroll-locked .allow-scroll-while-locked .mobile-nav-content,
    html.scroll-locked .allow-scroll-while-locked [data-scroll-lock-scrollable] {
      overscroll-behavior-y: contain !important;
      -webkit-overflow-scrolling: touch !important;
    }
  
    #site-mobile-nav .mobile-nav-panel,
    .site-mobile-nav .mobile-nav-panel {
      background-color: rgba(255, 255, 255, 0.8) !important;
      -webkit-backdrop-filter: blur(20px) !important;
      backdrop-filter: blur(20px) !important;
      border-right: 1px solid rgba(0, 0, 0, 0.07) !important;
      transition: transform 260ms cubic-bezier(0.22, 1, 0.36, 1) !important;
      overflow: hidden !important;
    }
  
    #site-mobile-nav .mobile-nav-panel[data-animation="open=>closed"],
    .site-mobile-nav .mobile-nav-panel[data-animation="open=>closed"] {
      transition: transform 260ms cubic-bezier(0.22, 1, 0.36, 1) !important;
    }
  
    #site-mobile-nav .mobile-nav-panel > *,
    #site-mobile-nav .mobile-nav-panel[data-animation-state="open"] > *,
    #site-mobile-nav .mobile-nav-panel[data-animation="open=>closed"] > *,
    .site-mobile-nav .mobile-nav-panel > *,
    .site-mobile-nav .mobile-nav-panel[data-animation-state="open"] > *,
    .site-mobile-nav .mobile-nav-panel[data-animation="open=>closed"] > * {
      opacity: 1 !important;
    }
  
    #site-mobile-nav .mobile-nav-panel a,
    .site-mobile-nav .mobile-nav-panel a {
      opacity: 1 !important;
    }
  
    #site-mobile-nav .mobile-nav-overlay,
    .site-mobile-nav .mobile-nav-overlay {
      position: fixed !important;
      inset: 0 !important;
      width: auto !important;
      height: auto !important;
      min-height: 100dvh !important;
      background-color: rgba(0, 0, 0, 0.2) !important;
      transition: opacity 260ms cubic-bezier(0.22, 1, 0.36, 1) !important;
    }
  
    #site-mobile-nav .mobile-nav-overlay[data-animation="open=>closed"],
    .site-mobile-nav .mobile-nav-overlay[data-animation="open=>closed"] {
      transition: opacity 260ms cubic-bezier(0.22, 1, 0.36, 1) !important;
    }
  
    /* Mobile nav: text-first, no thumbnails / promo images, premium typography */
    #site-mobile-nav .mobile-nav-panel .navmenu-item__image-wrapper,
    #site-mobile-nav .mobile-nav-panel .navmenu-item__image,
    #site-mobile-nav .mobile-nav-panel .navmenu-meganav-standard__image-container,
    #site-mobile-nav .mobile-nav-panel .navmenu-meganav-standard__image-wrapper,
    #site-mobile-nav .mobile-nav-panel .navmenu-meganav-standard__image,
    #site-mobile-nav .mobile-nav-panel .navmenu-meganav-standard__image-text,
    #site-mobile-nav .mobile-nav-panel .meganav-promo-stack,
    #site-mobile-nav .mobile-nav-panel .meganav-simulator-card {
      display: none !important;
    }
  
    #site-mobile-nav .mobile-nav-panel {
      display: flex !important;
      flex-direction: column !important;
      letter-spacing: -0.2px !important;
      -webkit-font-smoothing: antialiased;
      margin: 0 !important;
      -webkit-user-select: none !important;
      user-select: none !important;
      -webkit-touch-callout: none !important;
    }
  
    #site-mobile-nav .mobile-nav-panel * {
      -webkit-user-select: none !important;
      user-select: none !important;
      -webkit-touch-callout: none !important;
      -webkit-tap-highlight-color: transparent !important;
    }
  
    /* Drawer chrome: logo + close, then muted login row (non-scrolling); nav scrolls below */
    #site-mobile-nav .mobile-nav-panel__sticky-head {
      flex-shrink: 0 !important;
      z-index: 2 !important;
      background: rgba(255, 255, 255, 0.92) !important;
      -webkit-backdrop-filter: blur(18px) !important;
      backdrop-filter: blur(18px) !important;
      border-bottom: 1px solid rgba(0, 0, 0, 0.06) !important;
      box-sizing: border-box !important;
    }
  
    #site-mobile-nav .mobile-nav-panel__topbar {
      display: flex !important;
      align-items: center !important;
      justify-content: space-between !important;
      gap: 16px !important;
      padding: 14px 20px 10px !important;
      min-height: 52px !important;
      box-sizing: border-box !important;
    }
  
    #site-mobile-nav .mobile-nav-panel__logo-link {
      display: flex !important;
      align-items: center !important;
      flex: 1 1 auto !important;
      min-width: 0 !important;
      text-decoration: none !important;
      color: #111 !important;
    }
  
    #site-mobile-nav .mobile-nav-panel__logo-img {
      display: block !important;
      max-height: 46px !important;
      width: auto !important;
      max-width: min(280px, 72vw) !important;
      height: auto !important;
    }
  
    #site-mobile-nav .mobile-nav-panel__logo-text {
      font-size: 17px !important;
      font-weight: 600 !important;
      letter-spacing: -0.02em !important;
      white-space: nowrap !important;
      overflow: hidden !important;
      text-overflow: ellipsis !important;
    }
  
    #site-mobile-nav .mobile-nav-panel .mobile-nav-close,
    #site-mobile-nav .mobile-nav-panel__close {
      position: relative !important;
      top: auto !important;
      right: auto !important;
      left: auto !important;
      flex: 0 0 auto !important;
      width: 44px !important;
      height: 44px !important;
      padding: 0 !important;
      box-sizing: border-box !important;
      margin: -6px -8px -6px 0 !important;
      display: inline-flex !important;
      align-items: center !important;
      justify-content: center !important;
      transition: opacity 0.15s ease !important;
      opacity: 0.92 !important;
    }
  
    #site-mobile-nav .mobile-nav-panel__close svg {
      width: 13px !important;
      height: 13px !important;
    }
  
    #site-mobile-nav .mobile-nav-panel__login-row {
      padding: 0 20px 14px !important;
      flex-shrink: 0 !important;
    }
  
    #site-mobile-nav .mobile-nav-panel__login-row .site-header-actions {
      display: flex !important;
      flex-direction: row !important;
      flex-wrap: wrap !important;
      align-items: center !important;
      justify-content: flex-start !important;
      gap: 6px 14px !important;
      height: auto !important;
      min-height: 0 !important;
      margin: 0 !important;
      padding: 0 !important;
      list-style: none !important;
      text-align: left !important;
    }
  
    #site-mobile-nav .mobile-nav-panel__login-row .site-header-actions__account-link {
      display: block !important;
      width: 100% !important;
      margin-right: 0 !important;
      margin: 0 !important;
      text-align: left !important;
    }
  
    #site-mobile-nav .mobile-nav-panel__login-row .site-header__account-icon {
      display: none !important;
    }
  
    #site-mobile-nav .mobile-nav-panel__login-row .site-header__account-links {
      display: inline-flex !important;
      flex-wrap: wrap !important;
      align-items: center !important;
      gap: 6px 14px !important;
    }
  
    #site-mobile-nav .mobile-nav-panel__login-row .site-header_account-link-text {
      display: block !important;
      padding: 0 !important;
      margin: 0 !important;
      text-align: left !important;
    }
  
    #site-mobile-nav .mobile-nav-panel__login-row .site-header-actions a,
    #site-mobile-nav .mobile-nav-panel__login-row .site-header_account-link-anchor,
    #site-mobile-nav .mobile-nav-panel__login-row .site-header__account-link--account,
    #site-mobile-nav .mobile-nav-panel__login-row .site-header__account-link--logout {
      display: flex !important;
      width: 100% !important;
      justify-content: flex-start !important;
      align-items: center !important;
      text-align: left !important;
      font-weight: 400 !important;
      font-size: 15px !important;
      line-height: 1.3 !important;
      color: rgba(17, 17, 17, 0.82) !important;
      transition: color 0.15s ease, opacity 0.15s ease !important;
      padding: 4px 0 !important;
      margin: 0 !important;
    }
  
    #site-mobile-nav .mobile-nav-panel__login-row .site-header-actions a:hover,
    #site-mobile-nav .mobile-nav-panel__login-row .site-header-actions a:focus,
    #site-mobile-nav .mobile-nav-panel__login-row .site-header-actions a:focus-visible,
    #site-mobile-nav .mobile-nav-panel__login-row .site-header__account-link--account:hover,
    #site-mobile-nav .mobile-nav-panel__login-row .site-header__account-link--logout:hover {
      color: #111111 !important;
      opacity: 1 !important;
    }
  
    #site-mobile-nav .mobile-nav-panel__login-row .site-header-actions a:active,
    #site-mobile-nav .mobile-nav-panel__login-row .site-header__account-link--account:active,
    #site-mobile-nav .mobile-nav-panel__login-row .site-header__account-link--logout:active {
      opacity: 0.85 !important;
    }
  
    #site-mobile-nav .mobile-nav-panel .mobile-nav-content {
      flex: 1 1 auto !important;
      min-height: 0 !important;
      overflow-y: auto !important;
      -webkit-overflow-scrolling: touch !important;
      overscroll-behavior: contain !important;
      padding: 4px 20px 10px !important;
    }
  
    /*
      Language/currency strip (cloned from utility bar). Outer wrapper was getting padding +
      frosted background even when empty → ~25px white bar. Collapse when no real content;
      move chrome to inner blocks only when present.
    */
    #site-mobile-nav .mobile-nav-panel .utility-bar__mobile-disclosure {
      flex-shrink: 0 !important;
      margin-top: auto !important;
      margin-bottom: 0 !important;
      padding: 0 !important;
      min-height: 0 !important;
      background: transparent !important;
      -webkit-backdrop-filter: none !important;
      backdrop-filter: none !important;
      border: none !important;
      box-sizing: border-box !important;
    }
  
    #site-mobile-nav .mobile-nav-panel .utility-bar__mobile-disclosure:not(:has(*)) {
      display: none !important;
      margin: 0 !important;
      padding: 0 !important;
      height: 0 !important;
      overflow: hidden !important;
    }
  
    #site-mobile-nav .mobile-nav-panel .utility-bar__mobile-disclosure .utility-bar__social-container--mobile {
      padding: 12px 20px 0 !important;
      margin: 0 !important;
      box-sizing: border-box !important;
    }
  
    #site-mobile-nav .mobile-nav-panel .utility-bar__mobile-disclosure .utility-bar__disclosure--mobile {
      padding: 12px 20px calc(12px + env(safe-area-inset-bottom, 0px)) !important;
      margin: 0 !important;
      background: rgba(255, 255, 255, 0.82) !important;
      -webkit-backdrop-filter: blur(18px) !important;
      backdrop-filter: blur(18px) !important;
      border-top: 1px solid rgba(0, 0, 0, 0.08) !important;
      box-sizing: border-box !important;
    }
  
    #site-mobile-nav .mobile-nav-panel .utility-bar__mobile-disclosure .utility-bar__social-container--mobile:only-child {
      padding-bottom: calc(12px + env(safe-area-inset-bottom, 0px)) !important;
      background: rgba(255, 255, 255, 0.82) !important;
      -webkit-backdrop-filter: blur(18px) !important;
      backdrop-filter: blur(18px) !important;
      border-top: 1px solid rgba(0, 0, 0, 0.08) !important;
    }
  
    /* Section headers (parent rows): slightly larger + semibold; same tap target as links */
    #site-mobile-nav .mobile-nav-panel .navmenu-depth-1 > .navmenu-item > .navmenu-link.navmenu-link-parent {
      font-weight: 600 !important;
      font-size: 16px !important;
      line-height: 1.3 !important;
      color: #111111 !important;
      padding: 10px 0 10px 12px !important;
      transition: none !important;
    }
  
    /* Shop: anchor the primary section (same weight, slightly stronger presence) */
    #site-mobile-nav .mobile-nav-panel .navmenu-depth-1 > .navmenu-id-shop > .navmenu-link {
      font-weight: 600 !important;
      font-size: 17px !important;
      letter-spacing: -0.015em !important;
    }
  
    /* Any depth-1 link without children (rare) */
    #site-mobile-nav .mobile-nav-panel .navmenu-depth-1 > .navmenu-item > .navmenu-link:not(.navmenu-link-parent) {
      font-weight: 400 !important;
      font-size: 15px !important;
      line-height: 1.3 !important;
      color: #111111 !important;
      padding: 10px 0 10px 12px !important;
      transition: none !important;
    }
  
    #site-mobile-nav .mobile-nav-panel .navmenu-depth-2,
    #site-mobile-nav .mobile-nav-panel .navmenu-depth-3 {
      background: transparent !important;
      margin-top: 0 !important;
      margin-bottom: 0 !important;
      padding-top: 4px !important;
      padding-bottom: 4px !important;
      padding-left: 14px !important;
      padding-right: 0 !important;
      font-size: 16px !important;
    }
  
    /* All submenu links: +1px for tap/readability under Shop */
    #site-mobile-nav .mobile-nav-panel .navmenu-depth-2 .navmenu-link,
    #site-mobile-nav .mobile-nav-panel .navmenu-depth-2 .navmenu-item-text,
    #site-mobile-nav .mobile-nav-panel .navmenu-depth-3 .navmenu-link,
    #site-mobile-nav .mobile-nav-panel .navmenu-depth-3 .navmenu-item-text {
      font-weight: 400 !important;
      font-size: 16px !important;
      line-height: 1.35 !important;
      color: #111111 !important;
      padding: 7px 0 7px 12px !important;
      margin: 0 !important;
      transition: none !important;
    }
  
    /* Nested accordion parent inside submenu */
    #site-mobile-nav .mobile-nav-panel .navmenu-depth-2 > .navmenu-item > .navmenu-link.navmenu-link-parent,
    #site-mobile-nav .mobile-nav-panel .navmenu-depth-3 > .navmenu-item > .navmenu-link.navmenu-link-parent {
      font-weight: 600 !important;
      font-size: 16px !important;
    }
  
    #site-mobile-nav .mobile-nav-panel .navmenu-depth-2 .navmenu-submenu {
      padding: 0 !important;
      margin: 0 !important;
    }
  
    #site-mobile-nav .mobile-nav-panel .navmenu-meganav.navmenu-submenu {
      padding: 0 !important;
      margin: 0 !important;
    }
  
    #site-mobile-nav .mobile-nav-panel .navmenu-depth-2 > .navmenu-item,
    #site-mobile-nav .mobile-nav-panel .navmenu-depth-3 > .navmenu-item {
      margin-top: 0 !important;
      margin-bottom: 0 !important;
    }
  
    #site-mobile-nav .mobile-nav-panel .mobile-nav-auxiliary .navmenu-link,
    #site-mobile-nav .mobile-nav-panel .mobile-nav-auxiliary .navmenu-item-text,
    #site-mobile-nav .mobile-nav-panel .mobile-nav-auxiliary .navmenu-link.navmenu-link-parent,
    #site-mobile-nav .mobile-nav-panel .mobile-nav-content__secondary-menu .navmenu-link,
    #site-mobile-nav .mobile-nav-panel .mobile-nav-content__secondary-menu .navmenu-item-text,
    #site-mobile-nav .mobile-nav-panel .mobile-nav-content__secondary-menu .navmenu-link.navmenu-link-parent {
      font-weight: 400 !important;
      font-size: 15px !important;
      line-height: 1.3 !important;
      color: rgba(17, 17, 17, 0.65) !important;
      opacity: 1 !important;
      padding: 6px 0 6px 12px !important;
      transition: none !important;
    }
  
    #site-mobile-nav .mobile-nav-panel .mobile-nav-auxiliary .navmenu-link:hover,
    #site-mobile-nav .mobile-nav-panel .mobile-nav-auxiliary .navmenu-link:focus,
    #site-mobile-nav .mobile-nav-panel .mobile-nav-auxiliary .navmenu-link:focus-visible,
    #site-mobile-nav .mobile-nav-panel .mobile-nav-auxiliary .navmenu-link.navmenu-link-active,
    #site-mobile-nav .mobile-nav-panel .mobile-nav-content__secondary-menu .navmenu-link:hover,
    #site-mobile-nav .mobile-nav-panel .mobile-nav-content__secondary-menu .navmenu-link:focus,
    #site-mobile-nav .mobile-nav-panel .mobile-nav-content__secondary-menu .navmenu-link:focus-visible,
    #site-mobile-nav .mobile-nav-panel .mobile-nav-content__secondary-menu .navmenu-link.navmenu-link-active {
      color: #111111 !important;
      opacity: 1 !important;
    }
  
    #site-mobile-nav .mobile-nav-panel .navmenu-link,
    #site-mobile-nav .mobile-nav-panel .navmenu-item-text {
      -webkit-tap-highlight-color: transparent;
      border-radius: 10px;
    }
  
    #site-mobile-nav .mobile-nav-panel .navmenu-link:not([href*="email-signup"]),
    #site-mobile-nav .mobile-nav-panel .navmenu-item-text {
      padding-left: 12px !important;
      box-sizing: border-box;
    }
  
    #site-mobile-nav .mobile-nav-panel .navmenu-link:focus,
    #site-mobile-nav .mobile-nav-panel .navmenu-link:focus-visible {
      outline: none !important;
    }
  
    #site-mobile-nav .mobile-nav-panel .navmenu-link:active,
    #site-mobile-nav .mobile-nav-panel .navmenu-item-text:active,
    #site-mobile-nav .mobile-nav-panel .navmenu-button:active,
    #site-mobile-nav .mobile-nav-panel .mobile-nav-panel__login-row .site-header-actions a:active,
    #site-mobile-nav .mobile-nav-panel .mobile-nav-panel__login-row .site-header__account-link--account:active,
    #site-mobile-nav .mobile-nav-panel .mobile-nav-panel__login-row .site-header__account-link--logout:active,
    #site-mobile-nav .mobile-nav-panel .mobile-nav-auxiliary .navmenu-link:active,
    #site-mobile-nav .mobile-nav-panel .mobile-nav-content__secondary-menu .navmenu-link:active,
    #site-mobile-nav .mobile-nav-panel .navmenu-depth-2 .navmenu-link:active,
    #site-mobile-nav .mobile-nav-panel .navmenu-depth-3 .navmenu-link:active,
    #site-mobile-nav .mobile-nav-panel .navmenu-depth-1 > .navmenu-item > .navmenu-link:active,
    #site-mobile-nav .mobile-get-access-fallback-item a:active,
    #site-mobile-nav .mobile-nav-content .utility-bar__mobile-nav .navmenu > .navmenu-item > a[href*="email-signup"]:active {
      background: transparent !important;
      background-color: transparent !important;
      opacity: 1 !important;
    }
  
    #site-mobile-nav .mobile-nav-panel .navmenu-link:hover,
    #site-mobile-nav .mobile-nav-panel .navmenu-link:focus,
    #site-mobile-nav .mobile-nav-panel .navmenu-link:focus-visible {
      color: #111111 !important;
    }
  
    #site-mobile-nav .mobile-nav-panel .navmenu-link.navmenu-link-active {
      color: #111111 !important;
    }
  
    #site-mobile-nav .mobile-nav-panel .navmenu-depth-1 > .navmenu-item > .navmenu-link.navmenu-link-parent.navmenu-link-active {
      font-weight: 600 !important;
    }
  
    #site-mobile-nav .mobile-nav-panel .navmenu-depth-2 .navmenu-link.navmenu-link-active,
    #site-mobile-nav .mobile-nav-panel .navmenu-depth-3 .navmenu-link.navmenu-link-active {
      font-weight: 400 !important;
    }
  
    #site-mobile-nav .mobile-nav-panel .mobile-nav-content > .navmenu-depth-1 > .navmenu-item > .navmenu-link:not(.navmenu-link-active):hover,
    #site-mobile-nav .mobile-nav-panel .mobile-nav-content > .navmenu-depth-1 > .navmenu-item > .navmenu-link:not(.navmenu-link-active):focus {
      color: #111111 !important;
    }
  
    #site-mobile-nav .mobile-nav-panel .mobile-nav-content__border {
      display: block !important;
      margin: 16px 0 !important;
      border: none !important;
      border-bottom: 1px solid rgba(0, 0, 0, 0.08) !important;
      height: 0 !important;
      padding: 0 !important;
    }
  
    #site-mobile-nav .mobile-nav-panel .mobile-nav-content .utility-bar__mobile__border,
    #site-mobile-nav .mobile-nav-panel .utility-bar__mobile-disclosure .utility-bar__mobile__border {
      margin: 12px 0 !important;
      border: none !important;
      border-bottom: 1px solid rgba(0, 0, 0, 0.08) !important;
    }
  
    #site-mobile-nav .mobile-nav-panel .navmenu-button {
      transition: opacity 0.15s ease !important;
      border-radius: 10px !important;
    }
  
    @media (hover: none) and (pointer: coarse) {
      #site-mobile-nav .mobile-nav-content .navmenu-link,
      #site-mobile-nav .mobile-nav-content .navmenu-item-text,
      #site-mobile-nav .mobile-nav-content .navmenu-button,
      #site-mobile-nav .mobile-nav-content .get-access-btn,
      #site-mobile-nav .mobile-nav-content .mobile-get-access-fallback-item a {
        pointer-events: none !important;
      }
    }
  
    #site-mobile-nav .mobile-nav-panel .navmenu-icon,
    #site-mobile-nav .mobile-nav-panel .icon-chevron-down-small {
      transition: none !important;
    }
  
    /* Accordion: height-only expansion, no inner translate jump; match drawer easing */
    #site-mobile-nav .mobile-nav-panel [data-accordion-content][data-accordion-animation] > * {
      opacity: 1 !important;
      transform: none !important;
      transition: none !important;
    }
  
    #site-mobile-nav .mobile-nav-panel [data-accordion-content][data-accordion-animation="closed=>open"] {
      transition: height 260ms cubic-bezier(0.22, 1, 0.36, 1) !important;
    }
  
    #site-mobile-nav .mobile-nav-panel [data-accordion-content][data-accordion-animation="open=>closed"] {
      transition: height 260ms cubic-bezier(0.22, 1, 0.36, 1) !important;
    }
  }
  
  /* Product card badges (featured collection on homepage: inset avoids overflow:hidden clip on .productitem--image) */
  body.template-index .shopify-section.featured-collection--section .productitem--image .custom-badge {
    top: 5px !important;
    left: 5px !important;
  }
  
  /* Sale pill: match tag badges (#DE0101) on homepage featured rows */
  body.template-index .shopify-section.featured-collection--section .productitem__badge--sale {
    background-color: #de0101 !important;
  }
  
  .custom-badge {
    position: absolute;
    top: 6px;
    left: 7px;
    background: black;
    color: white;
    padding: 6px 10px;
    font-size: 11px;
    border-radius: 20px;
    z-index: 10;
    font-weight: 600;
    text-decoration: none;
  }
  
  .productitem--image .custom-badge,
  .productitem--image-link .custom-badge {
    color: white !important;
    text-decoration: none !important;
  }
  
  .badge-most-popular {
    background: #de0101 !important;
    box-shadow: none;
  }
  
  /* Best Value Bundles — emphasis without a heavy boxed panel */
  .best-value-bundles-section {
    background: transparent;
    padding-top: 30px;
    padding-bottom: 20px;
    padding-left: 0;
    padding-right: 0;
    border-radius: 0;
    box-sizing: border-box;
  }
  
  .best-value-bundles-section .badge-most-popular {
    transform: scale(1.05);
  }
  
  .best-value-bundles-section h2.home-section--title {
    font-size: 32px !important;
    font-weight: 700 !important;
    margin-bottom: 2px !important;
    text-align: center !important;
    line-height: 1.15 !important;
  }
  
  @media screen and (max-width: 719px) {
    .best-value-bundles-section h2.home-section--title {
      font-size: 28px !important;
    }
  }
  
  /* Subheading only (not all p — avoids product card copy) */
  .best-value-bundles-section .featured-collection__subheading {
    font-size: 14px !important;
    line-height: 1.45 !important;
    margin: 0 auto 25px !important;
    color: #555 !important;
    opacity: 1 !important;
    font-weight: 400 !important;
    max-width: 42rem !important;
    text-align: center !important;
  }
  
  @media (max-width: 767px) and (orientation: portrait) {
    .featured-collection__content:not(.pm-seo-featured-grid__content):not(.flickity-enabled) {
      display: flex !important;
      overflow-x: auto !important;
      gap: 12px;
      padding-left: 16px;
      scroll-snap-type: x mandatory;
    }

    .featured-collection__content.flickity-enabled {
      display: block !important;
      overflow: visible !important;
      overflow-x: visible !important;
      overflow-y: visible !important;
      scroll-snap-type: none !important;
      padding-left: 0 !important;
      gap: 0 !important;
    }

    .featured-collection__content.flickity-enabled .flickity-viewport {
      overflow-x: hidden !important;
      overflow-y: hidden !important;
      padding-bottom: 0 !important;
      box-sizing: border-box !important;
      touch-action: pan-x pan-y pinch-zoom !important;
      overscroll-behavior-y: auto !important;
    }

    .featured-collection__content.flickity-enabled .productgrid--item {
      width: 75% !important;
      min-width: 75% !important;
      max-width: 75% !important;
      flex: 0 0 75% !important;
      margin-right: 12px !important;
      padding: 0 !important;
      box-sizing: border-box !important;
    }

    body.template-index .shopify-section.featured-collection--section .productitem {
      border: none !important;
      box-shadow: none !important;
      background: transparent !important;
    }

    .featured-collection__content.flickity-enabled .flickity-slider--wrapper {
      overflow: visible !important;
    }

    .featured-collection__content:not(.pm-seo-featured-grid__content):not(.flickity-enabled)::-webkit-scrollbar {
      display: none;
    }

    .featured-collection__content:not(.pm-seo-featured-grid__content):not(.flickity-enabled) .productgrid--item {
      min-width: 75% !important;
      flex: 0 0 auto;
      scroll-snap-align: start;
    }
  
    /* Fade hint on right */
    .featured-collection__container:not(.pm-seo-featured-grid) {
      position: relative;
    }
  
    .featured-collection__container:not(.pm-seo-featured-grid)::after {
      content: '';
      position: absolute;
      top: 0;
      right: 0;
      width: 40px;
      height: 100%;
      pointer-events: none;
      background: linear-gradient(to right, rgba(255,255,255,0), #fff);
    }
  }
  
  /*
    Flickity sets viewport touch-action to pan-y (inline), which traps vertical scroll on mobile.
    pan-x pan-y restores page scroll while horizontal carousel drag still works.
  */
  @media screen and (max-width: 1079px) {
    .shopify-section.featured-collection--section .featured-collection__content.flickity-enabled .flickity-viewport {
      touch-action: pan-x pan-y pinch-zoom !important;
      overscroll-behavior-y: auto !important;
    }

    .shopify-section.featured-collection--section .featured-collection__content.flickity-enabled {
      touch-action: pan-x pan-y pinch-zoom !important;
    }
  }

  /*
    Cart only — bottom "Best Sellers" (Flickity): global mobile rules add flex + overflow-x to ALL
    .featured-collection__content, which fights Flickity. Undo ONLY on cart + .flickity-enabled.
    Do not override .productgrid--item here — keep the same 75% card width as the global mobile strip.
  */
  @media screen and (max-width: 1079px) {
    body.template-cart .shopify-section.featured-collection--section .featured-collection__content.flickity-enabled {
      display: block !important;
      overflow-x: visible !important;
      overflow-y: visible !important;
      scroll-snap-type: none !important;
      padding-left: 0 !important;
      gap: 0 !important;
    }

    body.template-cart .shopify-section.featured-collection--section .featured-collection__content.flickity-enabled .flickity-viewport {
      overflow: hidden !important;
    }
  }
  
  /* SEO page bottom collection — static responsive grid (pm-seo-featured-grid class) */
  .pm-seo-featured-grid.featured-collection__container,
  body.page-seo-page .shopify-section.featured-collection--section .featured-collection__container {
    max-width: 1500px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    overflow: visible !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    box-sizing: border-box !important;
  }
  
  .pm-seo-featured-grid.featured-collection__container::after,
  body.page-seo-page .shopify-section.featured-collection--section .featured-collection__container::after {
    display: none !important;
  }
  
  .pm-seo-featured-grid .pm-seo-featured-grid__content,
  .pm-seo-featured-grid .featured-collection__content,
  body.page-seo-page .shopify-section.featured-collection--section .featured-collection__content {
    display: grid !important;
    grid-auto-flow: row !important;
    flex-wrap: wrap !important;
    overflow: visible !important;
    overflow-x: visible !important;
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin: 0 !important;
    list-style: none !important;
    scroll-snap-type: none !important;
    gap: 8px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  
  .pm-seo-featured-grid .featured-collection__content .productgrid--item,
  body.page-seo-page .shopify-section.featured-collection--section .featured-collection__content .productgrid--item {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    flex: none !important;
    flex-shrink: 0 !important;
    scroll-snap-align: unset !important;
  }
  
  .pm-seo-featured-grid .featured-collection__content .productgrid--item .productitem,
  .pm-seo-featured-grid .featured-collection__content .productgrid--item .productitem__container {
    height: 100% !important;
  }
  
  /* If Flickity ran before our guard, flatten its wrappers so the grid spans full width */
  .pm-seo-featured-grid .featured-collection__content .flickity-viewport,
  .pm-seo-featured-grid .featured-collection__content .flickity-slider--wrapper,
  .pm-seo-featured-grid .featured-collection__content .flickity-slider {
    display: contents !important;
    width: auto !important;
    height: auto !important;
    overflow: visible !important;
    transform: none !important;
    position: static !important;
  }
  
  .pm-seo-featured-grid .flickity-button,
  .pm-seo-featured-grid .flickity-page-dots {
    display: none !important;
  }
  
  body.page-seo-page .shopify-section.featured-collection--section {
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
  }
  
  @media screen and (min-width: 720px) {
    .pm-seo-featured-grid .featured-collection__content,
    body.page-seo-page .shopify-section.featured-collection--section .featured-collection__content {
      gap: 10px !important;
      grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
  }
  
  @media screen and (min-width: 1080px) {
    .pm-seo-featured-grid .featured-collection__content,
    body.page-seo-page .shopify-section.featured-collection--section .featured-collection__content {
      gap: 10px !important;
      grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }
  }
  
  /* DISABLED: fixed 36px page titles load after theme.css rem sizes → visible title resize flash.
  
  .page-title,
  .page-masthead .page-title,
  .page-masthead h1,
  .template-page h1,
  .template-page .page-title {
    font-size: 36px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    letter-spacing: -0.02em !important;
  }
  
  @media screen and (min-width: 1024px) {
    .page-title,
    .page-masthead .page-title {
      font-size: 36px !important;
    }
  }
  
  @media screen and (max-width: 767px) {
    .page-title,
    .page-masthead .page-title,
    .page-masthead h1,
    .template-page h1,
    .template-page .page-title {
      font-size: 32px !important;
      line-height: 1.15 !important;
    }
  }
  */
  
  .template-page .rte > h2:first-of-type {
    margin-top: 40px !important;
  }
  
  /*
    Undo harmful CSS sometimes pasted into page content:
    .page-content.rte { margin-top: -75px !important; ... }
    Remove that block in Online Store → Pages → [page] if present; this enforces sane spacing in the theme.
  */
  body.template-page .page-content.rte {
    margin-top: 0 !important;
  }
  
  /* Bulk orders template: avoid stacking extra header offset on top of the h1 margins above */
  body.page-bulk-orders .bulk-header,
  body.page-bulk-prop-money .bulk-header {
    margin-top: 0 !important;
  }
  
  /* FIX Get a Quote title spacing */
  .template-page .page-title,
  .template-page h1 {
    margin-top: 40px !important;
    margin-bottom: 10px !important;
    text-align: center !important;
  }
  
  body.page-as-seen-on .rich-text--section .rich-text-content h1 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  
  /* match Contact / Shipping container */
  .quote-wrap {
    max-width: 900px;
    margin: 0 auto;
    padding: 20px 0 60px;
  }
  
  /* headings */
  .quote-heading {
    font-size: 32px;
    font-weight: 600;
    margin-bottom: 8px;
  }
  
  .quote-sub {
    margin-bottom: 32px;
    color: #555;
    font-size: 16px;
  }
  
  /* gray box */
  .quote-box {
    background: var(--pm-section-deeper);
    padding: 28px;
    border-radius: 12px;
    margin-bottom: 40px;
  }
  
  .quote-box h3 {
    margin-bottom: 16px;
    font-size: 18px;
  }
  
  .quote-box ul {
    padding-left: 18px;
    line-height: 1.8;
    font-size: 15px;
    margin: 0;
  }
  
  .utility-bar__content .get-access-btn {
    display: inline-block;
    font-weight: 600;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    background-color: #000;
    padding: 6px 14px;
    border-radius: 999px;
    margin-left: 12px;
    text-decoration: none;
    line-height: 1;
    vertical-align: middle;
  }
  
  .utility-bar__content .get-access-btn {
    transition: transform 0.15s ease, box-shadow 0.15s ease;
  }
  .utility-bar__content .get-access-btn:hover {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    transform: translateY(-1px);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
  }
  
  /* Klaviyo "Get 15% Off" popup (utility bar) — nudge close X 8px up + 8px right, desktop only */
  @media screen and (min-width: 769px) {
    body.pm-popup-open [role="dialog"] button[aria-label="Close dialog"],
    body.pm-popup-open [role="dialog"] button[aria-label="Close"],
    body.pm-popup-open button[aria-label="Close dialog"],
    body.pm-popup-open button[aria-label="Close"],
    body.pm-popup-open [data-testid="close-button"],
    body.pm-popup-open .klaviyo-close-form {
      transform: translate(8px, -8px) !important;
    }
  }
  
  /* Email Signup page only: hide top utility bar "Get Access" (.utility-bar__menu-link; href may omit locale or use full URL) */
  body.page-email-signup .utility-bar a.utility-bar__menu-link[href*="/pages/email-signup"],
  body.page-email-signup .utility-bar a[href="/pages/email-signup"],
  body.page-email-signup .utility-bar a[href*="/pages/email-signup"] {
    display: none !important;
  }
  
  /* Klaviyo opt-in state: hide only explicit Get Access targets (no blanket newsletter hide) */
  html.pm-klaviyo-identified .get-access-btn,
  body.pm-klaviyo-identified .get-access-btn,
  html.pm-klaviyo-identified a[href*="email-signup"],
  body.pm-klaviyo-identified a[href*="email-signup"],
  html.pm-klaviyo-identified .utility-bar .utility-bar__menu-link[href*="email-signup"],
  body.pm-klaviyo-identified .utility-bar .utility-bar__menu-link[href*="email-signup"],
  body.pm-klaviyo-identified #site-mobile-nav .utility-bar__mobile-nav a[href*="email-signup"],
  body.pm-klaviyo-identified #site-mobile-nav .mobile-get-access-fallback-item,
  body.pm-klaviyo-identified #site-mobile-nav .mobile-get-access-fallback-link[href*="email-signup"],
  body.pm-klaviyo-identified .get-access-section,
  body.pm-klaviyo-identified .get-access-wrapper {
    display: none !important;
  }
  
  /* Desktop utility bar Get Access: hidden by default (via .get-access-btn class), revealed after Klaviyo SDK confirms unidentified.
     Mobile fallback item: NOT hidden here — its button styling is applied via inline <style> in theme.liquid,
     and it is hidden for identified users via the pm-klaviyo-identified rules further down. */
  .get-access-wrapper,
  .get-access-btn,
  .get-access-section {
    visibility: hidden;
  }
  
  html.pm-klaviyo-unidentified .get-access-wrapper,
  body.pm-klaviyo-unidentified .get-access-wrapper,
  html.pm-klaviyo-unidentified .get-access-btn,
  body.pm-klaviyo-unidentified .get-access-btn,
  html.pm-klaviyo-unidentified .get-access-section,
  body.pm-klaviyo-unidentified .get-access-section {
    visibility: visible;
  }
  
  html.pm-klaviyo-identified {
    visibility: visible;
  }
  
  /* Collapse wrapper when identified; avoid :empty because Klaviyo injects hidden nodes */
  body.pm-klaviyo-identified .get-access-wrapper {
    display: none !important;
    padding: 0 !important;
    margin: 0 !important;
    min-height: 0 !important;
  }
    padding: 0 !important;
    margin: 0 !important;
    min-height: 0 !important;
  }
  
  @media screen and (max-width: 1023px) {
    #site-mobile-nav .mobile-nav-content .utility-bar__mobile-nav .navmenu > .navmenu-item > a[href*="email-signup"] {
      display: block !important;
      width: 100% !important;
      background: #000 !important;
      color: #fff !important;
      -webkit-text-fill-color: #fff !important;
      padding: 12px !important;
      border-radius: 999px !important;
      font-weight: 600 !important;
      text-align: center !important;
      text-decoration: none !important;
      line-height: 1.2 !important;
      margin-top: 18px !important;
      box-sizing: border-box !important;
      opacity: 1 !important;
    }
  
    /* Must include .mobile-nav-panel — otherwise secondary-menu link rules (font-weight: 400 !important) win on specificity */
    #site-mobile-nav .mobile-nav-panel .mobile-nav-content .mobile-nav-content__secondary-menu .mobile-get-access-fallback-item > a[href*="email-signup"] {
      display: block !important;
      visibility: visible !important;
      width: 100% !important;
      background: #000 !important;
      color: #fff !important;
      -webkit-text-fill-color: #fff !important;
      padding: 12px !important;
      border-radius: 999px !important;
      font-weight: 600 !important;
      text-align: center !important;
      text-decoration: none !important;
      line-height: 1.2 !important;
      margin-top: 18px !important;
      box-sizing: border-box !important;
      opacity: 1 !important;
    }
  
    #site-mobile-nav .mobile-nav-content .utility-bar__mobile-nav .navmenu > .navmenu-item > a[href*="email-signup"]:hover,
    #site-mobile-nav .mobile-nav-content .utility-bar__mobile-nav .navmenu > .navmenu-item > a[href*="email-signup"]:focus,
    #site-mobile-nav .mobile-nav-content .utility-bar__mobile-nav .navmenu > .navmenu-item > a[href*="email-signup"]:focus-visible,
    #site-mobile-nav .mobile-nav-content .utility-bar__mobile-nav .navmenu > .navmenu-item > a[href*="email-signup"]:active,
    #site-mobile-nav .mobile-nav-content .utility-bar__mobile-nav .navmenu > .navmenu-item > a[href*="email-signup"].navmenu-link-active {
      color: #fff !important;
      -webkit-text-fill-color: #fff !important;
      font-weight: 600 !important;
      opacity: 0.85;
    }
  
    #site-mobile-nav .mobile-nav-panel .mobile-nav-content .mobile-nav-content__secondary-menu .mobile-get-access-fallback-item > a[href*="email-signup"]:hover,
    #site-mobile-nav .mobile-nav-panel .mobile-nav-content .mobile-nav-content__secondary-menu .mobile-get-access-fallback-item > a[href*="email-signup"]:focus,
    #site-mobile-nav .mobile-nav-panel .mobile-nav-content .mobile-nav-content__secondary-menu .mobile-get-access-fallback-item > a[href*="email-signup"]:focus-visible,
    #site-mobile-nav .mobile-nav-panel .mobile-nav-content .mobile-nav-content__secondary-menu .mobile-get-access-fallback-item > a[href*="email-signup"]:active,
    #site-mobile-nav .mobile-nav-panel .mobile-nav-content .mobile-nav-content__secondary-menu .mobile-get-access-fallback-item > a[href*="email-signup"].navmenu-link-active {
      color: #fff !important;
      -webkit-text-fill-color: #fff !important;
      font-weight: 600 !important;
      opacity: 0.85;
    }
  
    /* Opted-in users: hide Get Access everywhere in mobile nav */
    body.pm-klaviyo-identified #site-mobile-nav a[href*="email-signup"],
    body.pm-klaviyo-identified #site-mobile-nav .mobile-get-access-fallback-item,
    body.pm-klaviyo-identified #site-mobile-nav .mobile-get-access-fallback-item a,
    body.pm-klaviyo-identified #site-mobile-nav .utility-bar__mobile-nav .navmenu > .navmenu-item > a[href*="email-signup"] {
      display: none !important;
    }
  }
  
  footer:not(.footer-mobile) .site-footer-block-newsletter > .site-footer-block-title {
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    letter-spacing: 0 !important;
  }
  
  footer:not(.footer-mobile) .site-footer-block-newsletter .footer-subscribe-copy {
    margin-top: 8px !important;
    color: rgba(29, 29, 31, 0.68) !important;
    font-weight: 400 !important;
  }
  
  footer:not(.footer-mobile) .site-footer-block-newsletter .footer-subscribe-copy,
  footer:not(.footer-mobile) .site-footer-block-newsletter .footer-subscribe-copy p,
  footer:not(.footer-mobile) .site-footer-block-newsletter .footer-subscribe-copy span,
  footer:not(.footer-mobile) .site-footer-block-newsletter .footer-subscribe-copy strong,
  footer:not(.footer-mobile) .site-footer-block-newsletter .footer-subscribe-copy em,
  footer:not(.footer-mobile) .site-footer-block-newsletter .footer-subscribe-copy a {
    color: rgba(29, 29, 31, 0.68) !important;
    font-weight: 400 !important;
  }
  
  footer .site-footer-block-newsletter .footer-subscribe-form {
    margin-top: 8px;
  }
  
  footer .footer-follow {
    margin-top: 0 !important;
  }
  
  footer .site-footer-block-social-accounts .site-footer-block-content {
    margin-top: 4px !important;
  }
  
  footer .footer-social-icons {
    margin-top: 0 !important;
  }
  
  footer .site-footer-block-menu.has-accordion > .site-footer-block-content {
    margin-top: 6px !important;
  }
  
  footer .site-footer-block-menu .navmenu-item {
    line-height: 1.7 !important;
  }
  
  footer .site-footer-block-menu .navmenu-item:not(:first-child) {
    margin-top: 0.3125rem !important;
  }
  
  footer .site-footer-block-menu .navmenu-link {
    line-height: 1.7 !important;
  }
  
  footer .footer-nav-column--shop.has-accordion > .site-footer-block-content {
    margin-top: 10px !important;
  }
  
  footer .footer-menu-block--support.has-accordion > .site-footer-block-content {
    margin-top: 2px !important;
  }
  
  footer .footer-rich-text-block--support .site-footer-block-content.rte {
    margin-top: 2px !important;
  }
  
  footer .footer-rich-text-block--support .site-footer-block-content.rte p {
    margin-top: 0.3125rem !important;
    margin-bottom: 0 !important;
    line-height: 1.7 !important;
  }
  
  footer .footer-rich-text-block--support .site-footer-block-content.rte > *:first-child {
    margin-top: 0 !important;
  }
  
  @media screen and (min-width: 1024px) {
    /* Shop column: nudge menu list up slightly */
    footer .site-footer-column--1 .site-footer-block-menu.has-accordion > .site-footer-block-content,
    footer .site-footer-column--1 .site-footer-block-nav.has-accordion > .site-footer-block-content {
      margin-top: 4px !important;
    }
  
    /* Support: remove default UL top gap and pull links up */
    footer .site-footer-block-support.has-accordion > .site-footer-block-content,
    footer .site-footer-block-support-menu.has-accordion > .site-footer-block-content {
      margin-top: 2px !important;
    }
  
    footer .site-footer-block-support .navmenu,
    footer .site-footer-block-support-menu .navmenu {
      margin: 0 !important;
      padding-left: 0 !important;
    }
  
    footer .site-footer-block-support .navmenu-item,
    footer .site-footer-block-support-menu .navmenu-item {
      line-height: 1.7 !important;
    }
  
    footer .site-footer-block-support .navmenu-item:not(:first-child),
    footer .site-footer-block-support-menu .navmenu-item:not(:first-child) {
      margin-top: 0.3125rem !important;
    }
  }
  
  @media screen and (min-width: 1024px) {
    /* Desktop footer baseline lock: Shop / Resources / Company / Support / Subscribe */
    footer .site-footer-column--1 .site-footer-block-item.site-footer-block-menu,
    footer .site-footer-column--1 .site-footer-block-item.site-footer-block-nav,
    footer .site-footer-column--2 .site-footer-block-item.site-footer-block-menu,
    footer .site-footer-column--2 .site-footer-block-item.site-footer-block-nav,
    footer .site-footer-column--3 .site-footer-block-item.site-footer-block-menu,
    footer .site-footer-column--3 .site-footer-block-item.site-footer-block-nav,
    footer .site-footer-column--4 .site-footer-block-item.site-footer-block-menu,
    footer .site-footer-column--4 .site-footer-block-item.site-footer-block-nav,
    footer .site-footer-column--5 .site-footer-block-item.site-footer-block-newsletter {
      margin-top: 0 !important;
    }

    footer .site-footer-column--1 .site-footer-block-menu.has-accordion > .site-footer-block-content,
    footer .site-footer-column--1 .site-footer-block-nav.has-accordion > .site-footer-block-content,
    footer .site-footer-column--2 .site-footer-block-menu.has-accordion > .site-footer-block-content,
    footer .site-footer-column--2 .site-footer-block-nav.has-accordion > .site-footer-block-content,
    footer .site-footer-column--3 .site-footer-block-menu.has-accordion > .site-footer-block-content,
    footer .site-footer-column--3 .site-footer-block-nav.has-accordion > .site-footer-block-content,
    footer .site-footer-column--4 .site-footer-block-menu.has-accordion > .site-footer-block-content,
    footer .site-footer-column--4 .site-footer-block-nav.has-accordion > .site-footer-block-content,
    footer .site-footer-column--5 .site-footer-block-newsletter .site-footer-block-content.rte {
      margin-top: 8px !important;
    }

    footer .site-footer-column--1 .site-footer-block-menu .navmenu,
    footer .site-footer-column--1 .site-footer-block-nav .navmenu,
    footer .site-footer-column--2 .site-footer-block-menu .navmenu,
    footer .site-footer-column--2 .site-footer-block-nav .navmenu,
    footer .site-footer-column--3 .site-footer-block-menu .navmenu,
    footer .site-footer-column--3 .site-footer-block-nav .navmenu,
    footer .site-footer-column--4 .site-footer-block-menu .navmenu,
    footer .site-footer-column--4 .site-footer-block-nav .navmenu {
      margin: 0 !important;
      padding-left: 0 !important;
    }

    footer .site-footer-column--1 .site-footer-block-menu .navmenu-link,
    footer .site-footer-column--1 .site-footer-block-nav .navmenu-link,
    footer .site-footer-column--2 .site-footer-block-menu .navmenu-link,
    footer .site-footer-column--2 .site-footer-block-nav .navmenu-link,
    footer .site-footer-column--3 .site-footer-block-menu .navmenu-link,
    footer .site-footer-column--3 .site-footer-block-nav .navmenu-link,
    footer .site-footer-column--4 .site-footer-block-menu .navmenu-link,
    footer .site-footer-column--4 .site-footer-block-nav .navmenu-link,
    footer .site-footer-column--5 .site-footer-block-newsletter .site-footer-block-content.rte p {
      line-height: 1.7 !important;
    }

    footer .site-footer-column--1 .site-footer-block-menu .navmenu-item:not(:first-child),
    footer .site-footer-column--1 .site-footer-block-nav .navmenu-item:not(:first-child),
    footer .site-footer-column--2 .site-footer-block-menu .navmenu-item:not(:first-child),
    footer .site-footer-column--2 .site-footer-block-nav .navmenu-item:not(:first-child),
    footer .site-footer-column--3 .site-footer-block-menu .navmenu-item:not(:first-child),
    footer .site-footer-column--3 .site-footer-block-nav .navmenu-item:not(:first-child),
    footer .site-footer-column--4 .site-footer-block-menu .navmenu-item:not(:first-child),
    footer .site-footer-column--4 .site-footer-block-nav .navmenu-item:not(:first-child),
    footer .site-footer-column--5 .site-footer-block-newsletter .site-footer-block-content.rte p:not(:first-child) {
      margin-top: 0.3125rem !important;
    }
  }
  
  /* Follow Us / Subscribe offsets: desktop only.
     Also reset on narrow viewports AND typical phone-landscape (short viewport height)
     so tablet-wide landscape widths do not inherit “desktop” spacing. */
  @media screen and (max-width: 1023px) {
    footer .site-footer-block-item.footer-follow-us--desktop-only-offset,
    footer .site-footer-block-item.footer-newsletter--desktop-only-offset {
      margin-top: 0 !important;
      margin-bottom: 0 !important;
    }
  
    footer .site-footer-block-social-accounts .footer-follow-us-section {
      margin-top: 0 !important;
    }
  }
  
  @media screen and (orientation: landscape) and (max-height: 500px) {
    footer .site-footer-block-item.footer-follow-us--desktop-only-offset,
    footer .site-footer-block-item.footer-newsletter--desktop-only-offset {
      margin-top: 0 !important;
      margin-bottom: 0 !important;
    }
  
    footer .site-footer-block-social-accounts .footer-follow-us-section {
      margin-top: 0 !important;
    }
  }
  
  /* True desktop widths only — avoids tablet / wide-phone landscape (often 1024–1279) taking “desktop” footer nudges */
  @media screen and (min-width: 1280px) {
    /* Entire social block: lower Follow Us vs Klaviyo neighbor column */
    footer .site-footer-block-item.site-footer-block-social-accounts.footer-follow-us--desktop-only-offset {
      margin-top: 56px !important;
    }
  
    footer .site-footer-block-item.site-footer-block-newsletter.footer-newsletter--desktop-only-offset {
      margin-bottom: 48px !important;
    }
  
    footer .site-footer-block-social-accounts .footer-follow-us-section {
      margin-top: 32px !important;
    }
  
    /* Stacked Subscribe + Follow Us in column 4: old “neighbor column” offsets don’t apply */
    footer:not(.footer-mobile) .site-footer-blocks.column-count-5 .site-footer-block-newsletter + .site-footer-block-social-accounts.footer-follow-us--desktop-only-offset {
      margin-top: 12px !important;
    }
  
    footer:not(.footer-mobile) .site-footer-blocks.column-count-5 .site-footer-block-newsletter.footer-newsletter--desktop-only-offset {
      margin-bottom: 0 !important;
    }
  
    footer:not(.footer-mobile) .site-footer-blocks.column-count-5 .site-footer-block-newsletter + .site-footer-block-social-accounts .footer-follow-us-section {
      margin-top: 8px !important;
    }
  
    footer .site-footer-block-social-accounts .footer-follow-us-section .footer-follow {
      margin-top: 0 !important;
    }
  
    footer .site-footer-block-social-accounts .footer-follow-us-section .site-footer-block-content {
      margin-top: 4px !important;
    }
  
    footer .site-footer-wrapper .site-footer-block-newsletter + .site-footer-block-social-accounts .footer-follow-us-section {
      margin-top: 8px !important;
    }
  
    footer .site-footer-blocks.column-count-5 .site-footer-block-newsletter + .site-footer-block-social-accounts {
      padding-left: 0 !important;
      box-sizing: border-box !important;
    }
  
    /* Email Signup: newsletter hidden — cancel the “lower Follow Us vs Klaviyo” desktop nudge */
    body.page-email-signup footer .site-footer-block-item.site-footer-block-social-accounts.footer-follow-us--desktop-only-offset,
    body.pm-klaviyo-identified footer .site-footer-block-item.site-footer-block-social-accounts.footer-follow-us--desktop-only-offset {
      margin-top: 0 !important;
    }
  
    body.page-email-signup footer .site-footer-block-social-accounts .footer-follow-us-section,
    body.pm-klaviyo-identified footer .site-footer-block-social-accounts .footer-follow-us-section {
      margin-top: 0 !important;
    }
  }
  
  /* Klaviyo embed (footer): ensure theme never blocks taps/clicks on injected form UI */
  footer .footer-subscribe-form,
  footer .footer-subscribe-form * {
    pointer-events: auto !important;
  }
  
  footer .footer-subscribe-form {
    position: relative;
    z-index: 2;
  }
  
  /* Nudge the Klaviyo form embed up by reducing its internal top padding */
  footer .footer-subscribe-form [data-testid="form-component"] > div:first-child,
  footer .footer-subscribe-form form > div:first-child,
  footer .footer-subscribe-form .klaviyo-form > div:first-child {
    padding-top: 0 !important;
    margin-top: 0 !important;
  }
  footer .footer-subscribe-form .klaviyo-form,
  footer .footer-subscribe-form [class*="klaviyo-form"] {
    padding-top: 0 !important;
    margin-top: 0 !important;
  }

  /* Desktop footer Klaviyo: stretch embed to column width so social row can match it */
  @media screen and (min-width: 1024px) {
    footer:not(.footer-mobile) .site-footer-block-newsletter .footer-subscribe-form,
    footer:not(.footer-mobile) .site-footer-block-newsletter .klaviyo-form-Xw3Sa8,
    footer:not(.footer-mobile) .site-footer-block-newsletter [class*="klaviyo-form-Xw3Sa8"],
    footer:not(.footer-mobile) .site-footer-block-newsletter [class*="klaviyo-form-Xw3Sa8"] form,
    footer:not(.footer-mobile) .site-footer-block-newsletter .footer-subscribe-form [class*="kl-private"],
    footer:not(.footer-mobile) .site-footer-block-newsletter .footer-subscribe-form [class*="needsclick"],
    footer:not(.footer-mobile) .site-footer-block-newsletter .footer-subscribe-form [data-testid="form-component"] {
      display: block !important;
      width: 100% !important;
      max-width: 100% !important;
      min-width: 0 !important;
      box-sizing: border-box !important;
    }

    footer:not(.footer-mobile) .site-footer-block-newsletter .footer-subscribe-form input[type="email"],
    footer:not(.footer-mobile) .site-footer-block-newsletter .footer-subscribe-form button[type="submit"],
    footer:not(.footer-mobile) .site-footer-block-newsletter .footer-subscribe-form button[type="button"] {
      width: 100% !important;
      max-width: 100% !important;
      box-sizing: border-box !important;
    }
  }
  
  /* Subtext under the footer newsletter heading */
  .footer-klaviyo-subtext {
    font-size: 14px;
    color: rgba(0, 0, 0, 0.6);
    font-weight: 400;
    margin: 6px 0 0 0;
    padding: 0;
    line-height: 1.3;
  }
  
  .footer-mobile-klaviyo__title {
    font-weight: 600 !important;
    font-size: 14px !important;
    color: #1d1d1d !important;
    margin: 0 0 8px !important;
    padding: 0 !important;
    line-height: 1.3 !important;
  }
  
  .footer-mobile-klaviyo {
    padding-top: 12px !important;
  }
  
  @media (max-width: 1024px) and (orientation: landscape) {
    footer.footer-mobile .footer-mobile-utility .footer-mobile-klaviyo {
      padding-top: 0 !important;
    }
  }
  
  /* Footer Klaviyo embeds: Inter (embed roots use .klaviyo-form or .klaviyo-form-* IDs) */
  footer .klaviyo-form *,
  footer [class*="klaviyo-form"] * {
    font-family: Inter, -apple-system, system-ui, sans-serif !important;
  }
  
  /* 5-block desktop footer: Subscribe in col 5 row 1, Follow Us directly below in row 2.
     Both blocks share the same column width; Klaviyo embed is stretched to match. */
  @media screen and (min-width: 1024px) {
    footer:not(.footer-mobile) .site-footer-blocks.column-count-5 .site-footer-block-item:nth-child(1) {
      grid-column: 1 / 2 !important;
      grid-row: 1 !important;
    }
  
    footer:not(.footer-mobile) .site-footer-blocks.column-count-5 .site-footer-block-item:nth-child(2) {
      grid-column: 2 / 3 !important;
      grid-row: 1 !important;
    }
  
    footer:not(.footer-mobile) .site-footer-blocks.column-count-5 .site-footer-block-item:nth-child(3) {
      grid-column: 3 / 4 !important;
      grid-row: 1 !important;
    }
  
    footer:not(.footer-mobile) .site-footer-blocks.column-count-5 .site-footer-block-newsletter,
    footer:not(.footer-mobile) .site-footer-blocks.site-footer-blocks--ia .site-footer-column--5 .site-footer-block-newsletter {
      grid-column: 5 / 6 !important;
      grid-row: 1 !important;
      justify-self: stretch !important;
      align-self: start !important;
      width: 100% !important;
      max-width: none !important;
      margin: 0 !important;
      padding-left: 0 !important;
      padding-right: 0 !important;
    }

    footer:not(.footer-mobile) .site-footer-blocks.column-count-5 .site-footer-block-social-accounts,
    footer:not(.footer-mobile) .site-footer-blocks.site-footer-blocks--ia .site-footer-column--5 .site-footer-block-social-accounts {
      grid-column: 5 / 6 !important;
      grid-row: 2 !important;
      justify-self: stretch !important;
      align-self: start !important;
      width: 100% !important;
      max-width: none !important;
      margin: 12px 0 0 !important;
      padding-left: 0 !important;
      padding-right: 0 !important;
    }
  
    footer:not(.footer-mobile) .site-footer-blocks.column-count-5 .site-footer-block-social-accounts .footer-follow-us-section,
    footer:not(.footer-mobile) .site-footer-blocks.column-count-5 .site-footer-block-social-accounts .site-footer-block-content,
    footer:not(.footer-mobile) .site-footer-blocks.column-count-5 .site-footer-block-social-accounts .social-icons.footer-social-icons {
      width: 100% !important;
      max-width: 100% !important;
      box-sizing: border-box !important;
    }
  
    footer:not(.footer-mobile) .site-footer-blocks.column-count-5 .site-footer-block-newsletter .footer-subscribe-form {
      width: 100% !important;
      max-width: 100% !important;
    }
  
    /* Email Signup page (desktop): hide Subscribe block + keep Follow Us in column 4 row 1 */
    body.page-email-signup footer:not(.footer-mobile) .site-footer-blocks.column-count-5 .site-footer-block-newsletter,
    body.page-email-signup footer:not(.footer-mobile) .site-footer-block-newsletter {
      display: none !important;
    }
  
    body.page-email-signup footer:not(.footer-mobile) .site-footer-blocks.column-count-5 .site-footer-block-social-accounts,
    body.page-email-signup footer:not(.footer-mobile) .site-footer-blocks.site-footer-blocks--ia .site-footer-column--5 .site-footer-block-social-accounts,
    body.pm-klaviyo-identified footer:not(.footer-mobile) .site-footer-blocks.column-count-5 .site-footer-block-social-accounts,
    body.pm-klaviyo-identified footer:not(.footer-mobile) .site-footer-blocks.site-footer-blocks--ia .site-footer-column--5 .site-footer-block-social-accounts {
      grid-column: 5 / 6 !important;
      grid-row: 1 !important;
      margin-top: 0 !important;
    }
  }
  
  /* Desktop legacy footer: Follow Us icons span the Klaviyo form width (not the wider grid cell).
     Theme .social-icons / .social-link margins cause indent + overflow — reset and use a 5-col grid. */
  @media screen and (min-width: 1024px) {
    footer:not(.footer-mobile) .site-footer-block-social-accounts .footer-follow-us-section,
    footer:not(.footer-mobile) .site-footer-block-social-accounts .footer-follow-us-section .site-footer-block-content {
      margin-left: 0 !important;
      padding-left: 0 !important;
      padding-right: 0 !important;
    }

    footer:not(.footer-mobile) .site-footer-block-social-accounts .footer-follow-us-section .footer-follow {
      margin-left: 0 !important;
      padding-left: 0 !important;
    }

    footer:not(.footer-mobile) .site-footer-block-item.site-footer-block-social-accounts .footer-follow-us-section .social-icons.footer-social-icons,
    footer:not(.footer-mobile) .site-footer-block-social-accounts .social-icons.footer-social-icons {
      display: grid !important;
      grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
      align-items: center !important;
      width: 100% !important;
      max-width: 100% !important;
      margin: 0 !important;
      padding: 0 !important;
      gap: 0 !important;
      overflow: hidden !important;
    }
  
    footer:not(.footer-mobile) .site-footer-block-social-accounts .social-icons.footer-social-icons > a.social-link {
      display: flex !important;
      flex: none !important;
      width: 100% !important;
      min-width: 0 !important;
      max-width: 100% !important;
      height: 40px !important;
      min-height: 40px !important;
      margin: 0 !important;
      justify-content: flex-start !important;
      align-items: center !important;
      overflow: hidden !important;
    }

    footer:not(.footer-mobile) .site-footer-block-social-accounts .social-icons.footer-social-icons > a.social-link:nth-child(n+2):nth-child(-n+4) {
      justify-content: center !important;
    }

    footer:not(.footer-mobile) .site-footer-block-social-accounts .social-icons.footer-social-icons > a.social-link:last-child {
      justify-content: flex-end !important;
    }

    footer:not(.footer-mobile) .site-footer-block-social-accounts .social-icons.footer-social-icons > a.social-link svg {
      width: 30px !important;
      height: 30px !important;
      max-width: 100% !important;
      flex-shrink: 1 !important;
    }
  
    /* Hide email icon if any legacy markup remains in Follow Us */
    footer:not(.footer-mobile) .site-footer-block-social-accounts .social-icons.footer-social-icons > a.social-link[href^="mailto:"] {
      display: none !important;
    }
  }
  
  /* Mobile / tablet footer Follow Us — 3-over-2 centered grid (portrait: boxed buttons) */
  @media (max-width: 1024px) and (orientation: portrait) {
    footer.footer-mobile .social-icons--footer-platforms {
      display: grid !important;
      grid-template-columns: repeat(6, 56px);
      column-gap: 10px;
      row-gap: 10px;
      justify-content: center;
      width: fit-content;
      max-width: 100%;
      margin-left: auto;
      margin-right: auto;
    }
  
    footer.footer-mobile .social-icons--footer-platforms > .social-link:nth-child(1) {
      grid-column: 1 / 3;
      justify-self: center;
    }
  
    footer.footer-mobile .social-icons--footer-platforms > .social-link:nth-child(2) {
      grid-column: 3 / 5;
      justify-self: center;
    }
  
    footer.footer-mobile .social-icons--footer-platforms > .social-link:nth-child(3) {
      grid-column: 5 / 7;
      justify-self: center;
    }
  
    footer.footer-mobile .social-icons--footer-platforms > .social-link:nth-child(4) {
      grid-column: 2 / 4;
      justify-self: center;
    }
  
    footer.footer-mobile .social-icons--footer-platforms > .social-link:nth-child(5) {
      grid-column: 4 / 6;
      justify-self: center;
    }
  
    footer.footer-mobile .social-icons--footer-platforms > .social-link {
      display: inline-flex !important;
      align-items: center;
      justify-content: center;
      width: 56px !important;
      height: 56px !important;
      min-width: 56px !important;
      max-width: 56px !important;
      flex: 0 0 56px !important;
      background: #FFFFFF !important;
      border: 1px solid #E5E5E5 !important;
      border-radius: 12px !important;
      color: #1D1D1F !important;
      text-decoration: none;
      box-sizing: border-box;
      transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
    }
  
    footer.footer-mobile .social-icons--footer-platforms > .social-link:hover,
    footer.footer-mobile .social-icons--footer-platforms > .social-link:focus-visible {
      transform: translateY(-1px);
      border-color: #D8D8D4 !important;
      box-shadow: 0 2px 8px rgba(29, 29, 29, 0.08);
    }
  
    footer.footer-mobile .social-icons--footer-platforms > .social-link svg {
      width: 24px !important;
      height: 24px !important;
    }
  
    /* Portrait footer CTAs — match Klaviyo "Get My Code" button */
    footer.footer-mobile .footer-mobile-utility__newsletter .klaviyo-form-YeCQsE form,
    footer.footer-mobile .footer-mobile-utility__newsletter [class*="klaviyo-form-YeCQsE"] form {
      display: flex !important;
      flex-direction: column !important;
      align-items: stretch !important;
      gap: 10px !important;
    }
  
    footer.footer-mobile .footer-mobile-utility__newsletter .footer-subscribe-form button[type="submit"],
    footer.footer-mobile .footer-mobile-utility__newsletter .footer-subscribe-form button[type="button"] {
      display: flex !important;
      align-items: center !important;
      justify-content: center !important;
      width: 100% !important;
      box-sizing: border-box !important;
      border: 1px solid #111 !important;
      background: #111 !important;
      color: #fff !important;
      border-radius: 999px !important;
      min-height: 50px !important;
      height: 50px !important;
      padding: 0 16px !important;
      font-family: inherit !important;
      font-size: 15px !important;
      font-weight: 600 !important;
      letter-spacing: 0.3px !important;
      line-height: 1 !important;
      text-align: center !important;
      opacity: 1 !important;
      visibility: visible !important;
      cursor: pointer !important;
      transition: transform 0.2s ease, opacity 0.2s ease, background-color 0.2s ease !important;
    }
  
    footer.footer-mobile .footer-mobile-utility__newsletter .footer-subscribe-form button[type="submit"]:hover,
    footer.footer-mobile .footer-mobile-utility__newsletter .footer-subscribe-form button[type="button"]:hover {
      background: #111 !important;
      transform: none !important;
    }
  
    footer.footer-mobile .footer-mobile-utility__newsletter .footer-subscribe-form button[type="submit"]:active,
    footer.footer-mobile .footer-mobile-utility__newsletter .footer-subscribe-form button[type="button"]:active {
      transform: scale(0.98) !important;
    }

    footer.footer-mobile .footer-cta a {
      font-size: 15px !important;
      font-weight: 600 !important;
      letter-spacing: 0.3px !important;
      line-height: 1 !important;
      min-height: 50px !important;
      height: 50px !important;
      padding: 0 16px !important;
    }
  
    footer.footer-mobile .footer-cta a.secondary {
      background: #fff !important;
      color: #111 !important;
      border: 1px solid #DEDEDA !important;
      font-weight: 600 !important;
    }
  
    footer.footer-mobile .footer-cta > a:not(.secondary) {
      background: #111 !important;
      color: #fff !important;
      border: 1px solid #111 !important;
      font-weight: 600 !important;
    }
  
    footer.footer-mobile .footer-samgov-text {
      display: block;
      text-align: center;
      border-top: 1px solid #DEDEDA;
      border-bottom: 1px solid #DEDEDA;
      margin: 0;
      padding: 24px 0 !important;
    }
  
    footer.footer-mobile .footer-samgov-text__line {
      margin: 0;
      font-size: 13px;
      font-weight: 500 !important;
      line-height: 1.35;
      color: #6E6E73 !important;
      letter-spacing: -0.01em;
    }
  
    footer.footer-mobile .footer-samgov-text__dot {
      margin: 0 0.35em;
      color: #A8A8A4;
    }
  
    footer.footer-mobile .footer-mobile-utility__newsletter .footer-mobile-klaviyo__title {
      margin-bottom: 11px !important;
    }
  
    footer.footer-mobile .footer-cta {
      margin-top: 22px !important;
      margin-bottom: 20px !important;
    }
  
    footer.footer-mobile .footer-branding {
      padding-top: 18px !important;
      padding-bottom: 14px !important;
    }
  
    footer.footer-mobile .footer-bottom {
      border-top: none !important;
      margin-top: 18px !important;
      padding-top: 8px !important;
      padding-bottom: calc(28px + env(safe-area-inset-bottom, 0px)) !important;
    }
  
    footer.footer-mobile .footer-title {
      min-height: 53px !important;
    }
  
    footer.footer-mobile .footer-bottom__legal--stacked {
      display: flex !important;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      gap: 7px !important;
      line-height: 1.2 !important;
    }
  
    footer.footer-mobile .footer-bottom__legal--inline {
      display: none !important;
    }
  
    footer.footer-mobile .footer-bottom__copy-line,
    footer.footer-mobile .footer-bottom__legal-row,
    footer.footer-mobile .footer-bottom__legal-row a {
      color: #6E6E73 !important;
      font-size: 12px !important;
      line-height: 1.2 !important;
    }
  
    footer.footer-mobile .footer-bottom__copy-line {
      margin: 0 !important;
    }
  
    footer.footer-mobile .footer-bottom__legal-row {
      margin: 0 !important;
      display: flex;
      flex-wrap: nowrap;
      align-items: center;
      justify-content: center;
      line-height: 1.2 !important;
    }
  
    footer.footer-mobile .footer-cta {
      width: 100% !important;
      max-width: none !important;
      margin-left: 0 !important;
      margin-right: 0 !important;
    }
  }
  
  /* Mobile landscape — social icons hidden (Connect accordion only) */
  @media (max-width: 1024px) and (orientation: landscape) {
    footer.footer-mobile .footer-mobile-utility__social .social-icons--footer-platforms {
      display: none !important;
    }
  }
  
  @media (max-width: 1024px) and (orientation: portrait) {
    footer.footer-mobile .footer-mobile-landscape-vdiv {
      display: none !important;
    }
  }
  
  /* Final desktop-only force move for Follow Us block (heading + icons).
     Uses pointer/hover desktop targeting and positional offset so it always moves. */
  @media screen and (min-width: 1024px) and (hover: hover) and (pointer: fine) {
    footer .site-footer-block-item.site-footer-block-social-accounts.footer-follow-us--desktop-only-offset {
      margin-top: 0 !important;
      position: relative !important;
      top: 36px !important;
    }
  
    footer .site-footer-block-item.site-footer-block-social-accounts.footer-follow-us--desktop-only-offset .footer-follow-us-section {
      margin-top: 0 !important;
    }
  
    /* Stacked column-4 layout: drop the old vertical nudge — grid row handles placement */
    footer:not(.footer-mobile) .site-footer-blocks.column-count-5 .site-footer-block-newsletter + .site-footer-block-social-accounts.footer-follow-us--desktop-only-offset {
      top: 0 !important;
      margin-top: 12px !important;
    }
  
    body.page-email-signup footer .site-footer-block-item.site-footer-block-social-accounts.footer-follow-us--desktop-only-offset,
    body.pm-klaviyo-identified footer .site-footer-block-item.site-footer-block-social-accounts.footer-follow-us--desktop-only-offset {
      top: 0 !important;
      margin-top: 0 !important;
    }
  }
  
  /* Homepage hero — RealAged® lockup */
  @media screen and (max-width: 1023px) {
    body.template-index .mobile-hero-heading .ra-reg {
      top: calc(-0.22em + 5px) !important;
      font-weight: 400 !important;
    }
  }
  
  @media screen and (min-width: 1024px) {
    body.template-index .desktop-overlay h2 .ra-reg {
      top: calc(-0.22em + 5px) !important;
      font-weight: 400 !important;
    }
  }
  
  /* ---------------------------------------------------------
     RealAged homepage section: narrower subtitle on mobile
     so it doesn't crowd the screen edges.
     --------------------------------------------------------- */
  @media screen and (max-width: 768px) {
    .shopify-section[id*="dynamic_featured_collection_realaged"] .featured-collection__subheading {
      max-width: 320px !important;
      padding-left: 16px !important;
      padding-right: 16px !important;
      margin-left: auto !important;
      margin-right: auto !important;
    }
  }
  
  
  /*
   * Cart page: equal vertical rhythm between all line items (desktop/tablet).
   * Mobile stacked (≤1023px) uses flex gap in static-cart.liquid.
   */
  @media screen and (min-width: 1024px) {
    body.template-cart .cartitems--list[data-cart-item-list] > li {
      margin-top: 0 !important;
      margin-bottom: 16px !important;
    }
    body.template-cart .cartitems--list[data-cart-item-list] > li:last-child {
      margin-bottom: 0 !important;
    }
    body.template-cart .cartitems--list[data-cart-item-list] > li[data-pab-line] ~ li {
      margin-top: 16px !important;
    }
  }
  
  @media screen and (max-width: 1023px) {
    /* Unified mobile stacked cart cluster — zero li margins so flex gap is sole rhythm source. */
    body.template-cart .cart-layout .cart-main .cartitems--list[data-cart-item-list] > li.cart-item,
    body.template-cart .cartitems--list[data-cart-item-list] > li {
      margin: 0 !important;
      margin-top: 0 !important;
      margin-bottom: 0 !important;
      margin-block: 0 !important;
    }
    body.template-cart .cartitems--list[data-cart-item-list] > li[data-pab-line] ~ li {
      margin-top: 0 !important;
    }
    body.template-cart .cartitems--list > style {
      display: none !important;
      height: 0 !important;
      margin: 0 !important;
      padding: 0 !important;
    }
  }
  
  /* Theme cart UI only: bold property label, normal value, tight spacing.
     Multiline Accessories values use pre-line in the drawer. */
  .cart-drawer .product-option,
  .cart-drawer dl.product-option {
    margin: 0 0 0.2em;
    line-height: 1.3;
  }
  .cart-drawer .product-option dt,
  .cart-item--product-options .cart-item--option-name {
    font-weight: 600;
    margin: 0;
    line-height: 1.3;
  }
  .cart-drawer .product-option dd {
    font-weight: 400;
    margin: 0 0 0.25em;
    line-height: 1.35;
    white-space: pre-line;
  }
  
  /* Regular product sale totals: compare-at struck, sale line total clear (not overlapped). */
  .cart-drawer .cart-item__discounted-prices,
  .cart-drawer .cart-item__price-wrapper .cart-item__discounted-prices {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 2px;
    line-height: 1.25;
  }
  .cart-drawer .cart-item__details .cart-item__discounted-prices {
    align-items: flex-start;
  }
  .cart-drawer .cart-item__discounted-prices .cart-item__old-price {
    text-decoration: line-through !important;
    color: #999;
    font-weight: 500;
    font-size: 0.9em;
  }
  .cart-drawer .cart-item__discounted-prices .cart-item__final-price,
  .cart-drawer .cart-item__discounted-prices .price:not(.cart-item__old-price) {
    text-decoration: none !important;
    color: #c9a341;
    font-weight: 700;
  }
  
  /* Priority Processing upsell (cart page + drawer) */
  .priority-processing-upsell {
    margin: 0 0 12px;
  }
  .priority-processing-upsell[hidden] {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  
  .priority-processing-upsell__pab-exclusion {
    display: flex;
    align-items: flex-start;
    gap: 7px;
    width: 100%;
    max-width: 100%;
    margin: 10px 0 0;
    padding: 8px 10px;
    border-radius: 10px;
    background: #fff8e6;
    border: 1px solid #f0d78c;
    color: #6b4e00;
    font-size: 12px;
    line-height: 1.35;
    box-sizing: border-box;
    align-self: stretch;
    min-width: 0;
    overflow: hidden;
  }
  
  .priority-processing-upsell__pab-exclusion-icon {
    flex: 0 0 auto;
    display: block;
    width: 14px;
    height: 14px;
    margin-top: 1px;
    color: #8a6a00;
  }
  
  .priority-processing-upsell__pab-exclusion-text {
    flex: 1 1 auto;
    min-width: 0;
    white-space: normal;
    overflow-wrap: break-word;
    word-wrap: break-word;
  }
  
  @media (min-width: 1200px) {
    .priority-processing-upsell__pab-exclusion {
      align-items: center;
    }
  
    .priority-processing-upsell__pab-exclusion-icon {
      margin-top: 0;
    }
  
    .priority-processing-upsell__pab-exclusion-text {
      white-space: nowrap;
    }
  }
  
  .priority-processing-upsell[data-priority-surface="page"] .priority-processing-upsell__content,
  .priority-processing-upsell[data-priority-surface="atc"] .priority-processing-upsell__content {
    align-items: stretch;
  }
  
  .priority-processing-upsell[data-priority-surface="page"] .priority-processing-upsell__pab-exclusion,
  .priority-processing-upsell[data-priority-surface="atc"] .priority-processing-upsell__pab-exclusion {
    width: calc(100% + 68px);
    max-width: calc(100% + 68px);
    margin-right: -68px;
  }
  
  .priority-processing-upsell__pab-exclusion strong {
    color: #5c4300;
    font-weight: 700;
  }
  
  .cart-item__pab-status {
    display: flex;
    align-items: center;
    gap: 6px;
    margin: 4px 0 0;
    padding: 0;
    border: 0;
    background: none;
    box-shadow: none;
    font-size: 13px;
    line-height: 1.35;
    font-weight: 500;
    color: #8a6a00;
    max-width: 100%;
    min-width: 0;
    overflow: visible;
    text-overflow: clip;
  }
  
  .cart-item__pab-status[hidden] {
    display: none !important;
  }
  
  .cart-item__pab-status-icon {
    flex: 0 0 auto;
    color: #c9920a;
    font-size: 12px;
    line-height: 1;
  }
  
  .cart-drawer .cart-item__pab-status {
    margin-top: 6px;
  }
  
  @media (min-width: 1024px) {
    .cart-item__pab-status--collapsed {
      white-space: nowrap;
    }
  }
  
  .pab-card:not(.is-collapsed) .cart-item__pab-status--collapsed {
    display: none !important;
  }
  
  .pab-card__pp-status-expanded .cart-item__pab-status--expanded {
    margin: 0;
    white-space: normal;
  }
  
  @media (max-width: 749px) {
  
    .priority-processing-upsell__pab-exclusion {
      padding: 8px 9px;
      font-size: 11px;
    }
  }
  
  .atc-banner--cart-footer .priority-processing-upsell {
    margin: 6px 0 12px;
    width: 100%;
    max-width: 100%;
    flex: 0 0 auto;
    align-self: center;
  }
  .atc-banner--cart-footer .priority-processing-upsell__card {
    display: grid;
    grid-template-columns: 20px minmax(0, 1fr);
    align-items: start;
    padding: 10px 12px;
    border-radius: 12px;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }
  .atc-banner--cart-footer {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 8px;
    margin-top: 8px;
  }
  .atc-banner--cart-footer .atc-button--viewcart {
    width: 100%;
    max-width: 100%;
    align-self: stretch;
  }
  @media (min-width: 720px) {
    .atc-banner--cart-footer {
      align-items: stretch;
      max-width: 100%;
      margin-left: 0;
      margin-right: 0;
    }
    .atc-banner--cart-footer .priority-processing-upsell {
      width: 100%;
      max-width: 100%;
    }
    .atc-banner--cart-footer .atc-button--viewcart {
      width: 100%;
      min-width: 0;
      max-width: 100%;
    }
  }
  .atc-banner--cart-footer .priority-processing-upsell__title {
    font-size: 14px;
  }
  .atc-banner--cart-footer .priority-processing-upsell__subtitle,
  .atc-banner--cart-footer .priority-processing-upsell__description,
  .atc-banner--cart-footer .priority-processing-upsell__price {
    font-size: 12px;
  }
  .atc-banner--cart-footer > .priority-processing-upsell + a.atc-button--viewcart {
    margin-top: 0;
  }
  
  /* ATC drawer — Priority Processing added confirmation (no upsell repeat) */
  .priority-processing-upsell__atc-confirm {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    width: 100%;
    padding: 12px 14px;
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 14px;
    background: linear-gradient(180deg, var(--pm-card) 0%, var(--pm-section-deeper) 100%);
    box-shadow: none;
    box-sizing: border-box;
    text-align: left;
    cursor: pointer;
  }
  
  .priority-processing-upsell__atc-confirm:focus-visible {
    outline: 2px solid rgba(0, 0, 0, 0.35);
    outline-offset: 2px;
  }
  
  .priority-processing-upsell__atc-confirm[hidden] {
    display: none !important;
  }
  
  .priority-processing-upsell__atc-offer[hidden] {
    display: none !important;
  }
  
  .priority-processing-upsell__atc-confirm-icon {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    margin-top: 1px;
    line-height: 0;
    pointer-events: none;
  }
  
  .priority-processing-upsell__atc-confirm-icon svg {
    display: block;
    width: 16px;
    height: 16px;
    pointer-events: none;
  }
  
  .priority-processing-upsell__atc-confirm-copy {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
    flex: 1 1 auto;
  }
  
  .priority-processing-upsell__atc-confirm-title {
    font-size: 14px;
    font-weight: 600;
    line-height: 1.25;
    color: #111;
  }
  
  .priority-processing-upsell__atc-confirm-subtitle {
    font-size: 12.5px;
    line-height: 1.3;
    color: rgba(0, 0, 0, 0.62);
  }
  
  .atc-banner--cart-footer .priority-processing-upsell__atc-confirm {
    margin: 0;
    align-self: stretch;
  }
  
  .priority-processing-upsell__card {
    position: relative;
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr);
    align-items: start;
    column-gap: 12px;
    width: 100%;
    padding: 14px;
    border: 1px solid #eee;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
    cursor: pointer;
    box-sizing: border-box;
    transition: border-color 0.18s ease, box-shadow 0.18s ease, background-color 0.18s ease;
  }
  .priority-processing-upsell__card:hover {
    border-color: #eee;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
  }
  .priority-processing-upsell__input {
    position: absolute;
    opacity: 0;
    width: 22px;
    height: 22px;
    margin: 0;
    cursor: pointer;
  }
  .priority-processing-upsell__indicator {
    width: 22px;
    height: 22px;
    border-radius: 999px;
    border: 1.5px solid rgba(0, 0, 0, 0.24);
    background: #fff;
    margin-top: 1px;
    box-sizing: border-box;
    transition: border-color 0.18s ease, background-color 0.18s ease;
  }
  .priority-processing-upsell__input:checked + .priority-processing-upsell__indicator {
    border-color: #111;
    background: #111;
  }
  .priority-processing-upsell__input:checked + .priority-processing-upsell__indicator::after {
    content: "";
    display: block;
    width: 6px;
    height: 10px;
    margin: 4px 0 0 7px;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(42deg);
  }
  .priority-processing-upsell__content {
    display: flex;
    flex-direction: column;
    gap: 3px;
    min-width: 0;
  }
  .priority-processing-upsell__title {
    font-size: 15px;
    font-weight: 600;
    line-height: 1.25;
    color: #111;
  }
  .priority-processing-upsell__subtitle {
    font-size: 13px;
    font-weight: 600;
    line-height: 1.3;
    color: rgba(0, 0, 0, 0.74);
  }
  .priority-processing-upsell__description {
    font-size: 12.5px;
    line-height: 1.4;
    color: rgba(0, 0, 0, 0.62);
  }
  .priority-processing-upsell__price {
    margin-top: 2px;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.2;
    color: #111;
  }
  /* Cart page only: pin PP price to top-right corner.
     Leaves drawer/ATC styles untouched via surface gate. */
  .priority-processing-upsell[data-priority-surface="page"] .priority-processing-upsell__content {
    padding-right: 68px;
  }
  .priority-processing-upsell[data-priority-surface="page"] .priority-processing-upsell__price {
    position: absolute;
    top: 14px;
    right: 18px;
    margin-top: 0;
    font-size: 15px;
    white-space: nowrap;
  }
  
  /* ATC drawer: pin PP price to top-right corner (same visual treatment
     as the cart page). Higher specificity than the
     `.atc-banner--cart-footer` mobile grid placement, so this also wins
     on mobile without using !important. */
  .priority-processing-upsell[data-priority-surface="atc"] .priority-processing-upsell__card {
    position: relative;
  }
  .priority-processing-upsell[data-priority-surface="atc"] .priority-processing-upsell__content {
    padding-right: 68px;
  }
  .priority-processing-upsell[data-priority-surface="atc"] .priority-processing-upsell__price {
    position: absolute;
    top: 14px;
    right: 18px;
    margin-top: 0;
    font-size: 15px;
    white-space: nowrap;
    grid-column: auto;
    grid-row: auto;
  }
  @media (max-width: 719px) {
    .priority-processing-upsell[data-priority-surface="atc"] .priority-processing-upsell__title {
      padding-right: 64px;
    }
    .priority-processing-upsell[data-priority-surface="atc"] .priority-processing-upsell__price {
      top: 12px;
      right: 14px;
      font-size: 14px;
    }
  }
  .priority-processing-upsell__input:focus-visible + .priority-processing-upsell__indicator {
    outline: 2px solid rgba(0, 0, 0, 0.35);
    outline-offset: 2px;
  }
  
  /* Mobile ATC drawer — compact Priority Processing above View Cart CTA */
  @media (max-width: 719px) {
    .atc-banner--cart-footer .priority-processing-upsell {
      margin: 0;
      width: 100%;
      max-width: 100%;
      align-self: stretch;
    }
  
    .atc-banner--cart-footer .priority-processing-upsell__card {
      display: grid !important;
      grid-template-columns: 20px minmax(0, 1fr) !important;
      grid-template-rows: auto !important;
      column-gap: 10px !important;
      row-gap: 0 !important;
      align-items: start !important;
      padding: 14px 16px !important;
      border-radius: 16px !important;
      box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
      text-align: left;
      position: relative !important;
    }
  
    .atc-banner--cart-footer .priority-processing-upsell__card:hover {
      box-shadow: 0 2px 6px rgba(0, 0, 0, 0.07);
    }
  
    /* Keep text in column 2 — do NOT use display:contents (children
       auto-place into the 20px indicator column and wrap per-char). */
    .atc-banner--cart-footer .priority-processing-upsell__content {
      display: flex !important;
      flex-direction: column !important;
      gap: 3px !important;
      min-width: 0 !important;
      width: 100% !important;
      max-width: 100% !important;
      grid-column: 2 !important;
      grid-row: 1 !important;
      padding-right: 56px !important;
      box-sizing: border-box !important;
    }
  
    .atc-banner--cart-footer .priority-processing-upsell__indicator {
      position: relative;
      grid-column: 1 !important;
      grid-row: 1 !important;
      align-self: start !important;
      margin-top: 3px;
      width: 20px;
      height: 20px;
      border: 1.5px solid #cfcfcf;
      background: #fff;
      box-sizing: border-box;
      flex-shrink: 0;
    }
  
    .atc-banner--cart-footer .priority-processing-upsell__input {
      width: 20px;
      height: 20px;
    }
  
    .atc-banner--cart-footer .priority-processing-upsell__input:checked + .priority-processing-upsell__indicator {
      border-color: #111;
      background: #111;
    }
  
    .atc-banner--cart-footer .priority-processing-upsell__input:checked + .priority-processing-upsell__indicator::after {
      content: "";
      position: absolute;
      top: 50%;
      left: 50%;
      display: block;
      width: 4px;
      height: 7px;
      margin: 0;
      border: 0;
      border-right: 1.5px solid #fff;
      border-bottom: 1.5px solid #fff;
      transform: translate(-50%, -58%) rotate(42deg);
    }
  
    .atc-banner--cart-footer .priority-processing-upsell__title {
      grid-column: auto !important;
      grid-row: auto !important;
      align-self: auto !important;
      font-size: 16px;
      line-height: 1.2;
      text-align: left;
    }
  
    .atc-banner--cart-footer .priority-processing-upsell__helper,
    .atc-banner--cart-footer .priority-processing-upsell__helper-note,
    .atc-banner--cart-footer .priority-processing-upsell__description {
      grid-column: auto !important;
      grid-row: auto !important;
      text-align: left;
      width: 100% !important;
      max-width: 100% !important;
    }
  
    .atc-banner--cart-footer .priority-processing-upsell__helper {
      font-size: 13px;
      line-height: 1.3;
      color: rgba(0, 0, 0, 0.62);
      overflow: visible;
      white-space: normal;
      -webkit-line-clamp: unset;
      line-clamp: unset;
    }
  
    .atc-banner--cart-footer .priority-processing-upsell__helper-note {
      font-size: 13px;
      line-height: 1.3;
      color: rgba(0, 0, 0, 0.55);
      overflow: visible;
      white-space: normal;
      -webkit-line-clamp: unset;
      line-clamp: unset;
    }
  
    .atc-banner--cart-footer .priority-processing-upsell__subtitle {
      grid-column: auto !important;
      grid-row: auto !important;
      margin-top: 0;
      font-size: 14px;
      line-height: 1.3;
      text-align: left;
    }
  
    .atc-banner--cart-footer .priority-processing-upsell__pab-exclusion {
      display: flex !important;
      align-items: flex-start !important;
      width: calc(100% + 68px) !important;
      max-width: calc(100% + 68px) !important;
      margin: 6px -68px 0 0 !important;
      box-sizing: border-box !important;
      grid-column: auto !important;
      grid-row: auto !important;
      min-width: 0 !important;
      overflow: hidden !important;
    }
  
    .atc-banner--cart-footer .priority-processing-upsell__price {
      position: absolute !important;
      top: 14px !important;
      right: 14px !important;
      grid-column: auto !important;
      grid-row: auto !important;
      margin-top: 0 !important;
      font-size: 14px;
      font-weight: 700;
      line-height: 1.2;
      text-align: right;
      white-space: nowrap !important;
    }
  
    .atc-banner--cart-footer .atc-button--viewcart {
      width: 100%;
      max-width: 100%;
      align-self: stretch;
    }
  
    .atc-banner--cart-footer .priority-processing-upsell__atc-confirm {
      padding: 11px 14px;
      border-radius: 14px;
    }
  
    .atc-banner--cart-footer .priority-processing-upsell__atc-confirm-title {
      font-size: 15px;
      line-height: 1.2;
    }
  
    .atc-banner--cart-footer .priority-processing-upsell__atc-confirm-subtitle {
      font-size: 13px;
      line-height: 1.25;
    }
  }
  
  /* ============================================================
     Desktop ATC drawer — alignment refinement (≥1024px only).
     Scope notes:
     - Targets true desktop only (mobile portrait is untouched, and
       mobile landscape poster rules apply up to 1024px landscape).
     - Pure visual refinement: no functional, PP-logic, or overlay
       changes.
     ============================================================ */
  @media (min-width: 1024px) {
    /* Close X: pull noticeably off the right edge so the button
       reads as part of the modal rather than pinned to the page edge.
       +30px further from the right vs. the previous pass; still well
       clear of the subtotal group, which sits ~20px in from column 2's
       right edge via auto-margins on the 520px-wide container, so
       there's ~46px of breathing room between the subtotal price and
       the X. */
    .atc-banner--container .atc-banner--close {
      top: 22px !important;
      right: 90px !important;
    }
  }
  
  /* Hide qty controls for Priority Processing line item. */
  tr.cart-item[data-priority-processing-line] .quantity-popover-container,
  tr.cart-item[data-priority-processing-line] quantity-input,
  li.cart-item[data-priority-processing-line] .cart-item__quantity,
  li[data-cartitem][data-priority-processing-line] .cart-item__quantity {
    display: none !important;
  }
  
  /* ============================================================
     ATC drawer — landscape-phone layouts (moved from theme.liquid)
     ------------------------------------------------------------
     Two tiers:
       1) 540px-tier — fires on any landscape phone (≤540px tall):
          product (image+title+price) on the left, PP card on the
          right, full-width subtotal strip, View Cart + Checkout
          side-by-side. Keeps drawer under 220px tall.
       2) SE-class tier — fires only on iPhone SE-class landscape
          (≤400px tall): rebalances into a 4-col grid so the
          product spans 75% of inner width, subtotal sits in col 4,
          PP card spans full width, and both CTAs are equal halves.
          Tighter typography + paddings keep drawer under 200px.
  
     `.atc-banner--product`, `.atc-banner--cart`, and
     `.atc-banner--cart-footer` use `display: contents` so their
     descendants (header, product card, subtotal, PP card,
     View Cart, Checkout form) become direct grid items of the
     outer `.atc-banner--inner` grid and can be placed in
     individual cells without HTML changes.
     ============================================================ */
  
  /* 540px-tier — all landscape phones (≤540px tall) */
  @media (orientation: landscape) and (max-height: 540px) {
    .atc-banner--container {
      border-bottom-left-radius: 14px !important;
      border-bottom-right-radius: 14px !important;
    }
    .atc-banner--outer {
      padding: 10px 14px !important;
    }
    .atc-banner--inner {
      display: grid !important;
      grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
      grid-template-rows: auto auto auto auto !important;
      column-gap: 16px !important;
      row-gap: 8px !important;
      align-items: stretch !important;
      text-align: left !important;
      padding: 4px 4px 6px !important;
      max-width: 100% !important;
      box-sizing: border-box !important;
    }
    .atc-banner--product-title {
      grid-column: 1 / -1 !important;
      grid-row: 1 !important;
      margin: 0 !important;
      padding: 0 36px 2px 0 !important;
      font-size: 14px !important;
      font-weight: 600 !important;
      letter-spacing: -0.005em !important;
      text-align: left !important;
      color: rgba(0, 0, 0, 0.85) !important;
    }
    .atc-banner--close {
      top: 8px !important;
      right: 12px !important;
      width: 28px !important;
      height: 28px !important;
    }
    .atc-banner--product {
      display: contents !important;
    }
    .atc--product {
      grid-column: 1 !important;
      grid-row: 2 !important;
      display: flex !important;
      align-items: center !important;
      gap: 10px !important;
      margin: 0 !important;
      padding: 4px 14px 4px 0 !important;
      border-right: 1px solid rgba(0, 0, 0, 0.08) !important;
      box-sizing: border-box !important;
      text-align: left !important;
      min-width: 0 !important;
    }
    .atc-banner--container .atc--product-image {
      width: 56px !important;
      height: 56px !important;
      flex: 0 0 56px !important;
      border-radius: 10px !important;
      overflow: hidden !important;
      margin: 0 !important;
    }
    .atc--product-image img,
    .atc--product-image svg {
      width: 100% !important;
      height: 100% !important;
      object-fit: cover !important;
    }
    .atc--product-details {
      flex: 1 1 auto !important;
      min-width: 0 !important;
      text-align: left !important;
    }
    .atc-banner--container .atc--product-details--title {
      font-size: 13px !important;
      line-height: 1.3 !important;
      font-weight: 600 !important;
      margin: 0 0 2px !important;
      display: -webkit-box !important;
      -webkit-line-clamp: 2 !important;
      -webkit-box-orient: vertical !important;
      overflow: hidden !important;
      text-overflow: ellipsis !important;
    }
    .atc--product-details--options {
      font-size: 11px !important;
      line-height: 1.2 !important;
    }
    .atc--product-details--price {
      font-size: 12px !important;
      line-height: 1.2 !important;
    }
    .atc-banner--cart {
      display: contents !important;
    }
    .atc-banner--cart-footer {
      display: contents !important;
    }
    .priority-processing-upsell {
      grid-column: 2 !important;
      grid-row: 2 !important;
      margin: 0 !important;
      width: 100% !important;
      min-width: 0 !important;
      max-width: 100% !important;
      align-self: stretch !important;
      box-sizing: border-box !important;
    }
    .atc-banner--cart-subtotal {
      grid-column: 1 / -1 !important;
      grid-row: 3 !important;
      display: flex !important;
      flex-direction: row !important;
      align-items: baseline !important;
      justify-content: space-between !important;
      gap: 12px !important;
      margin: 2px 0 0 !important;
      padding: 6px 0 0 !important;
      border-top: 1px solid rgba(0, 0, 0, 0.08) !important;
      border-left: 0 !important;
      font-size: 13px !important;
    }
    .atc-subtotal--label {
      font-size: 12px !important;
      color: rgba(29, 29, 31, 0.62) !important;
      margin: 0 !important;
    }
    .atc-subtotal--price {
      font-size: 14px !important;
      font-weight: 700 !important;
      margin: 0 !important;
    }
    .atc-banner--cart-footer > a.atc-button--viewcart,
    a.atc-button--viewcart {
      grid-column: 1 !important;
      grid-row: 4 !important;
      margin: 0 !important;
      width: 100% !important;
      min-width: 0 !important;
      align-self: stretch !important;
    }
    .atc-banner--cart-footer > form,
    form.atc-banner--cart-checkout-form {
      grid-column: 2 !important;
      grid-row: 4 !important;
      margin: 0 !important;
      width: 100% !important;
      min-width: 0 !important;
      align-self: stretch !important;
      height: auto !important;
    }
    .atc-banner--cart-footer .atc-button--viewcart,
    .atc-banner--cart-footer .atc-button--checkout {
      width: 100% !important;
      min-width: 0 !important;
      height: 38px !important;
      min-height: 38px !important;
      max-height: 38px !important;
      padding: 0 12px !important;
      font-size: 13px !important;
      line-height: 1 !important;
      white-space: nowrap !important;
      box-sizing: border-box !important;
    }
    .atc-banner--cart-footer .atc-button--checkout svg {
      width: 13px !important;
      height: 13px !important;
      margin: 0 6px 0 0 !important;
    }
  }
  
  /* SE-class tier — very small landscape only (≤400px tall):
     4-col grid for maximum horizontal density. */
  @media (orientation: landscape) and (max-height: 400px) {
    .atc-banner--container {
      max-height: 100dvh !important;
      max-height: 100vh !important;
      overflow-y: auto !important;
      -webkit-overflow-scrolling: touch !important;
      border-bottom-left-radius: 12px !important;
      border-bottom-right-radius: 12px !important;
    }
    .atc-banner--outer {
      padding: 8px 40px 8px 10px !important;
    }
    .atc-banner--inner {
      display: grid !important;
      grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
      grid-template-rows: auto auto auto auto !important;
      column-gap: 8px !important;
      row-gap: 8px !important;
      align-items: center !important;
      padding: 2px 0 0 !important;
      max-width: 100% !important;
      box-sizing: border-box !important;
    }
    .atc-banner--product-title {
      grid-column: 1 / -1 !important;
      grid-row: 1 !important;
      margin: 0 !important;
      padding: 0 4px 0 0 !important;
      font-size: 12px !important;
      line-height: 1.2 !important;
      font-weight: 600 !important;
      letter-spacing: -0.005em !important;
      text-align: left !important;
      color: rgba(0, 0, 0, 0.85) !important;
    }
    .atc-banner--close {
      top: 8px !important;
      right: 10px !important;
      width: 24px !important;
      height: 24px !important;
      z-index: 2 !important;
    }
    .atc-banner--product {
      display: contents !important;
    }
    .atc--product {
      grid-column: 1 / 4 !important;
      grid-row: 2 !important;
      display: flex !important;
      align-items: center !important;
      gap: 8px !important;
      margin: 0 !important;
      padding: 2px 8px 2px 0 !important;
      border-right: 1px solid rgba(0, 0, 0, 0.08) !important;
      box-sizing: border-box !important;
      text-align: left !important;
      min-width: 0 !important;
    }
    .atc-banner--container .atc--product-image {
      width: 44px !important;
      height: 44px !important;
      flex: 0 0 44px !important;
      border-radius: 8px !important;
      overflow: hidden !important;
      margin: 0 !important;
    }
    .atc--product-image img,
    .atc--product-image svg {
      width: 100% !important;
      height: 100% !important;
      object-fit: cover !important;
    }
    .atc--product-details {
      flex: 1 1 auto !important;
      min-width: 0 !important;
      text-align: left !important;
    }
    .atc-banner--container .atc--product-details--title {
      font-size: 12.5px !important;
      line-height: 1.25 !important;
      font-weight: 600 !important;
      margin: 0 0 1px !important;
      display: -webkit-box !important;
      -webkit-line-clamp: 2 !important;
      -webkit-box-orient: vertical !important;
      overflow: hidden !important;
      text-overflow: ellipsis !important;
    }
    .atc--product-details--options {
      font-size: 10.5px !important;
      line-height: 1.2 !important;
    }
    .atc--product-details--price {
      font-size: 11.5px !important;
      line-height: 1.2 !important;
    }
    .atc-banner--cart {
      display: contents !important;
    }
    .atc-banner--cart-footer {
      display: contents !important;
    }
    .atc-banner--cart-subtotal {
      grid-column: 4 / -1 !important;
      grid-row: 2 !important;
      display: flex !important;
      flex-direction: row !important;
      align-items: baseline !important;
      justify-content: space-between !important;
      gap: 6px !important;
      align-self: center !important;
      margin: 0 !important;
      padding: 0 0 0 8px !important;
      border: 0 !important;
      font-size: 12px !important;
      min-width: 0 !important;
      text-align: right !important;
    }
    .atc-subtotal--label {
      flex: 0 1 auto !important;
      font-size: 11px !important;
      color: rgba(29, 29, 31, 0.62) !important;
      margin: 0 !important;
      white-space: nowrap !important;
    }
    .atc-subtotal--price {
      flex: 0 0 auto !important;
      font-size: 13px !important;
      font-weight: 700 !important;
      margin: 0 !important;
      white-space: nowrap !important;
    }
    /* PP card on the LEFT half of row 3 (cols 1-2 of the 4-col grid),
       View Cart button on the RIGHT half (cols 3-4 of the same row).
       The button sits directly under the subtotal price (which lives
       in col 4 of row 2), so the visual right edge of the price and
       the right edge of the button line up cleanly. */
    .priority-processing-upsell {
      grid-column: 1 / 3 !important;
      grid-row: 3 !important;
      margin: 2px 0 0 !important;
      width: 100% !important;
      min-width: 0 !important;
      max-width: 100% !important;
      align-self: stretch !important;
      box-sizing: border-box !important;
    }
    /* Wide low-profile PP card — flex row: [indicator] [text stack] [+price].
       Layout strategy:
         - Card itself = flex row. Indicator on the left (fixed 18 px),
           text content fills the middle, and price is absolutely
           positioned on the right (same approach the base ATC styles
           already use for `data-priority-surface="atc"` at line 6117).
         - The 719-tier mobile rules at the top of this file fire on
           this same viewport (iPhone SE landscape is 667 × 375, so
           max-width: 719 matches too). Those rules give the card a
           `display: grid` layout and explicitly place the indicator,
           title, subtitle, description, and price into grid cells via
           `grid-column` / `grid-row`. We must explicitly reset every
           one of those placements back to `auto` so they don't fight
           our flex layout — otherwise the children try to occupy
           non-existent grid cells and effectively disappear from view.
         - Right-padding of 56 px on the card reserves space for the
           absolutely-positioned price so it never overlaps the text. */
    .atc-banner--cart-footer .priority-processing-upsell__card {
      display: flex !important;
      flex-direction: row !important;
      align-items: flex-start !important;
      gap: 11px !important;
      padding: 9px 52px 9px 11px !important;
      border-radius: 12px !important;
      width: 100% !important;
      max-width: 100% !important;
      min-width: 0 !important;
      box-sizing: border-box !important;
      position: relative !important;
      grid-template-columns: none !important;
      grid-template-rows: none !important;
      column-gap: 0 !important;
      row-gap: 0 !important;
    }
    .atc-banner--cart-footer .priority-processing-upsell__indicator {
      flex: 0 0 18px !important;
      width: 18px !important;
      height: 18px !important;
      margin: 3px 0 0 !important;
      border-radius: 999px !important;
      align-self: flex-start !important;
      grid-column: auto !important;
      grid-row: auto !important;
    }
    .priority-processing-upsell__input:checked + .priority-processing-upsell__indicator::after {
      width: 5px !important;
      height: 8px !important;
      margin: 3px 0 0 6px !important;
    }
    /* Reset 719-tier `display: contents` so the content wrapper holds the
       text stack as a flex column. */
    .atc-banner--cart-footer .priority-processing-upsell__content {
      flex: 1 1 auto !important;
      min-width: 0 !important;
      display: flex !important;
      flex-direction: column !important;
      gap: 2px !important;
      padding-right: 0 !important;
    }
    .atc-banner--cart-footer .priority-processing-upsell__title {
      order: 1 !important;
      margin: 0 !important;
      padding: 0 !important;
      font-size: 14px !important;
      font-weight: 600 !important;
      line-height: 1.2 !important;
      letter-spacing: -0.01em !important;
      color: #111 !important;
      grid-column: auto !important;
      grid-row: auto !important;
    }
    .atc-banner--cart-footer .priority-processing-upsell__subtitle {
      display: block !important;
      order: 2 !important;
      margin: 0 !important;
      font-size: 12px !important;
      font-weight: 600 !important;
      line-height: 1.25 !important;
      color: rgba(0, 0, 0, 0.74) !important;
      grid-column: auto !important;
      grid-row: auto !important;
    }
    .atc-banner--cart-footer .priority-processing-upsell__helper {
      order: 3 !important;
    }
    .atc-banner--cart-footer .priority-processing-upsell__helper-note {
      order: 4 !important;
    }
    .atc-banner--cart-footer .priority-processing-upsell__description {
      display: block !important;
      margin: 0 !important;
      font-size: 11px !important;
      line-height: 1.3 !important;
      color: rgba(0, 0, 0, 0.58) !important;
      max-width: 100% !important;
      grid-column: auto !important;
      grid-row: auto !important;
    }
    /* Price pinned to the right, vertically centred against the card. */
    .priority-processing-upsell[data-priority-surface="atc"] .priority-processing-upsell__price,
    .atc-banner--cart-footer .priority-processing-upsell__price {
      position: absolute !important;
      top: 50% !important;
      right: 11px !important;
      bottom: auto !important;
      left: auto !important;
      transform: translateY(-50%) !important;
      margin: 0 !important;
      padding: 0 !important;
      font-size: 13px !important;
      font-weight: 700 !important;
      line-height: 1 !important;
      white-space: nowrap !important;
      grid-column: auto !important;
      grid-row: auto !important;
    }
    .priority-processing-upsell__atc-confirm {
      padding: 8px 10px !important;
      gap: 8px !important;
      border-radius: 12px !important;
    }
    .priority-processing-upsell__atc-confirm-title {
      font-size: 12.5px !important;
      line-height: 1.2 !important;
    }
    .priority-processing-upsell__atc-confirm-subtitle {
      font-size: 11px !important;
      line-height: 1.25 !important;
    }
    /* View Cart — right half of row 3, vertically centred so the
       34 px tall button floats in the middle of the taller PP card
       row. Right edge tracks the subtotal price's right edge above. */
    .atc-banner--cart-footer > a.atc-button--viewcart,
    a.atc-button--viewcart {
      grid-column: 3 / -1 !important;
      grid-row: 3 !important;
      margin: 0 !important;
      width: 100% !important;
      min-width: 0 !important;
      max-width: 100% !important;
      align-self: center !important;
    }
    /* Checkout form selector kept for parity if the theme ever
       re-introduces a separate form; placed in the same row/col so it
       stacks behind View Cart rather than reflowing into row 4. */
    .atc-banner--cart-footer > form,
    form.atc-banner--cart-checkout-form {
      grid-column: 3 / -1 !important;
      grid-row: 3 !important;
      margin: 0 !important;
      width: 100% !important;
      min-width: 0 !important;
      max-width: 100% !important;
      align-self: center !important;
      height: auto !important;
    }
    .atc-banner--cart-footer .atc-button--viewcart,
    .atc-banner--cart-footer .atc-button--checkout {
      width: 100% !important;
      min-width: 0 !important;
      max-width: 100% !important;
      height: 34px !important;
      min-height: 34px !important;
      max-height: 34px !important;
      padding: 0 14px !important;
      font-size: 12.5px !important;
      line-height: 1 !important;
      white-space: nowrap !important;
      box-sizing: border-box !important;
    }
    .atc-banner--cart-footer .atc-button--checkout svg {
      width: 12px !important;
      height: 12px !important;
      margin: 0 5px 0 0 !important;
    }
  }
  /* ============================================================
     ATC drawer — Apple-style stable layout (moved from theme.liquid)
     Product → Subtotal → Priority Processing → Checkout CTA
     ============================================================ */
  
      .atc-banner--outer {
        padding: 18px 16px !important;
        box-sizing: border-box !important;
      }
  
      .atc-banner--inner {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 14px !important;
        max-width: 700px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding: 0 !important;
        text-align: left !important;
        box-sizing: border-box !important;
      }
  
      /* Top section: product info (subtotal is NOT here) */
      .atc-banner--product {
        display: flex !important;
        flex-direction: column !important;
        gap: 10px !important;
        margin: 0 !important;
        padding: 0 !important;
        width: 100% !important;
        min-width: 0 !important;
        border: 0 !important;
      }
  
      .atc-banner--product-title {
        margin: 0 !important;
        padding: 0 52px 0 0 !important;
        font-size: 16px !important;
        font-weight: 600 !important;
        letter-spacing: -0.01em !important;
        line-height: 1.15 !important;
        color: rgba(0, 0, 0, 0.86) !important;
      }
  
      .atc-banner--container .atc--product,
      .atc--product {
        display: flex !important;
        align-items: center !important;
        gap: 12px !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        min-width: 0 !important;
        max-width: 100% !important;
        width: 100% !important;
        box-sizing: border-box !important;
      }
  
      /* Match header "Added to cart" width so image ends at "cart" */
      .atc-banner--container .atc--product-image {
        font-size: 16px !important;
        width: 6.48em !important;
        height: 6.48em !important;
        flex: 0 0 6.48em !important;
        border-radius: 12px !important;
        overflow: hidden !important;
        margin: 0 !important;
      }
  
      .atc-banner--container .atc--product-image img,
      .atc-banner--container .atc--product-image svg {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
      }
  
      .atc--product-details {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        overflow: hidden !important;
      }
  
      .atc-banner--container .atc--product-details--title,
      .atc--product-details--title {
        display: block !important;
        -webkit-line-clamp: unset !important;
        line-clamp: unset !important;
        -webkit-box-orient: unset !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        line-height: 1.22 !important;
        margin: 0 0 2px !important;
        width: 100% !important;
        max-width: none !important;
      }
  
      /* Close icon: top-right of the modal, never intersects content */
      .atc-banner--close {
        top: 14px !important;
        right: 14px !important;
        z-index: 2 !important;
        width: 30px !important;
        height: 30px !important;
      }
  
      /* Middle section: Subtotal (full width row) */
      .atc-banner--container .atc-banner--cart,
      .atc-banner--cart {
        display: flex !important;
        flex-direction: column !important;
        gap: 12px !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        align-self: stretch !important;
      }
  
      .atc-banner--container .atc-banner--cart-subtotal,
      .atc-banner--cart-subtotal {
        display: flex !important;
        align-items: baseline !important;
        justify-content: space-between !important;
        gap: 12px !important;
        margin: 0 0 0 0 !important;
        margin-left: 2px !important;
        margin-right: 2px !important;
        padding: 10px 0 !important;
        border: 0 !important;
        border-top: 1px solid rgba(0, 0, 0, 0.04) !important;
        border-bottom: 1px solid rgba(0, 0, 0, 0.04) !important;
        text-align: left !important;
        box-sizing: border-box !important;
        width: calc(100% - 4px) !important;
        max-width: calc(100% - 4px) !important;
        align-self: center !important;
      }
  
      .atc-subtotal--label {
        margin: 0 !important;
        font-size: 14px !important;
        color: rgba(29, 29, 31, 0.58) !important;
      }
  
      .atc-subtotal--price {
        margin: 0 !important;
        font-size: 16px !important;
        font-weight: 700 !important;
        color: rgba(0, 0, 0, 0.88) !important;
        white-space: nowrap !important;
        text-align: right !important;
      }
  
      /* Priority Processing: compact inline add-on row (full width) */
      .atc-banner--container .atc-banner--cart-footer,
      .atc-banner--cart-footer {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 10px !important;
        margin: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        align-self: stretch !important;
      }
  
      .atc-banner--container .atc-banner--cart-footer .priority-processing-upsell,
      .atc-banner--container .atc-banner--cart-footer .atc-button--viewcart {
        width: 100% !important;
        max-width: 100% !important;
        align-self: stretch !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
      }
  
      .atc-banner--container .priority-processing-upsell {
        width: calc(100% - 4px) !important;
        max-width: calc(100% - 4px) !important;
        margin-left: 2px !important;
        margin-right: 2px !important;
      }
  
      .atc-banner--container .priority-processing-upsell__card {
        width: 100% !important;
        max-width: 100% !important;
        display: grid !important;
        grid-template-columns: 18px minmax(0, 1fr) !important;
        grid-template-rows: auto !important;
        column-gap: 12px !important;
        row-gap: 0 !important;
        align-items: start !important;
        padding: 12px 56px 12px 12px !important;
        border-radius: 14px !important;
        background: var(--pm-card-soft) !important;
        border: 1px solid rgba(0, 0, 0, 0.08) !important;
        box-shadow: none !important;
        cursor: pointer !important;
        box-sizing: border-box !important;
        transition: background-color 180ms ease, border-color 180ms ease;
        overflow: visible !important;
        position: relative !important;
      }
  
      .atc-banner--container .priority-processing-upsell__card:hover {
        background: var(--pm-section-deeper) !important;
        border-color: rgba(0, 0, 0, 0.12) !important;
      }
  
      .atc-banner--container .priority-processing-upsell__content {
        display: flex !important;
        flex-direction: column !important;
        gap: 3px !important;
        min-width: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        grid-column: 2 !important;
        grid-row: 1 !important;
        box-sizing: border-box !important;
      }
  
      .atc-banner--container .priority-processing-upsell__indicator {
        grid-column: 1 !important;
        grid-row: 1 / -1 !important;
        width: 18px !important;
        height: 18px !important;
        margin: 0 !important;
        align-self: start !important;
      }
  
      .atc-banner--container .priority-processing-upsell__title,
      .atc-banner--container .priority-processing-upsell__subtitle,
      .atc-banner--container .priority-processing-upsell__helper,
      .atc-banner--container .priority-processing-upsell__helper-note,
      .atc-banner--container .priority-processing-upsell__description,
      .atc-banner--container .priority-processing-upsell__pab-exclusion {
        grid-column: auto !important;
        grid-row: auto !important;
        margin: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
      }
  
      .atc-banner--container .priority-processing-upsell__title {
        font-size: 15px !important;
        font-weight: 600 !important;
        line-height: 1.2 !important;
        letter-spacing: -0.01em !important;
        color: #111 !important;
      }
  
      .atc-banner--container .priority-processing-upsell__subtitle {
        font-size: 13px !important;
        font-weight: 600 !important;
        line-height: 1.3 !important;
        color: rgba(0, 0, 0, 0.74) !important;
        display: block !important;
        white-space: normal !important;
      }
  
      .atc-banner--container .priority-processing-upsell__description {
        font-size: 13px !important;
        line-height: 1.35 !important;
        color: rgba(0, 0, 0, 0.62) !important;
        display: block !important;
        white-space: normal !important;
      }
  
      .atc-banner--container .priority-processing-upsell__pab-exclusion {
        display: block !important;
        margin-top: 6px !important;
        box-sizing: border-box !important;
      }
  
      .atc-banner--container .priority-processing-upsell__helper {
        font-size: 13px !important;
        line-height: 1.3 !important;
        color: rgba(0, 0, 0, 0.62) !important;
        display: block !important;
        overflow: visible !important;
        text-overflow: clip !important;
        white-space: normal !important;
        word-wrap: break-word !important;
        overflow-wrap: break-word !important;
        -webkit-line-clamp: unset !important;
        line-clamp: unset !important;
      }
  
      .atc-banner--container .priority-processing-upsell__helper-note {
        font-size: 13px !important;
        line-height: 1.3 !important;
        color: rgba(0, 0, 0, 0.55) !important;
        display: block !important;
        overflow: visible !important;
        text-overflow: clip !important;
        white-space: normal !important;
        word-wrap: break-word !important;
        overflow-wrap: break-word !important;
        -webkit-line-clamp: unset !important;
        line-clamp: unset !important;
      }
  
      .atc-banner--container .priority-processing-upsell__price {
        position: absolute !important;
        top: 12px !important;
        right: 12px !important;
        margin: 0 !important;
        font-size: 15px !important;
        font-weight: 600 !important;
        line-height: 1.2 !important;
        color: #111 !important;
        white-space: nowrap !important;
        grid-column: auto !important;
        grid-row: auto !important;
        align-self: auto !important;
        justify-self: auto !important;
        transform: none !important;
      }
  
      /* Landscape: keep product copy clear of the close button */
      @media (orientation: landscape) {
        .atc-banner--inner {
          display: flex !important;
          flex-direction: column !important;
          grid-template-columns: none !important;
        }
  
        .atc-banner--product {
          display: flex !important;
          flex-direction: column !important;
          grid-column: auto !important;
          grid-row: auto !important;
          width: 100% !important;
        }
  
        .atc-banner--container .atc-banner--cart,
        .atc-banner--cart {
          display: flex !important;
          flex-direction: column !important;
          width: 100% !important;
          max-width: 100% !important;
          min-width: 0 !important;
          align-self: stretch !important;
          margin-left: 0 !important;
          margin-right: 0 !important;
          padding-left: 0 !important;
          padding-right: 0 !important;
          border-left: 0 !important;
        }
  
        /* Full-width subtotal strip — beats desktop max-width: 520px in custom-overrides */
        .atc-banner--container .atc-banner--cart-subtotal,
        .atc-banner--cart-subtotal {
          display: flex !important;
          flex-direction: row !important;
          align-items: baseline !important;
          justify-content: space-between !important;
          gap: 12px !important;
          width: calc(100% - 4px) !important;
          max-width: calc(100% - 4px) !important;
          margin-left: 2px !important;
          margin-right: 2px !important;
          padding: 10px 0 !important;
          padding-left: 0 !important;
          padding-right: 0 !important;
          border-left: 0 !important;
          border-top: 1px solid rgba(0, 0, 0, 0.04) !important;
          border-bottom: 1px solid rgba(0, 0, 0, 0.04) !important;
          align-self: center !important;
          text-align: left !important;
          box-sizing: border-box !important;
          grid-column: auto !important;
          grid-row: auto !important;
        }
  
        .atc-banner--container .atc-banner--cart-footer .priority-processing-upsell,
        .atc-banner--container .priority-processing-upsell[data-priority-surface="atc"] {
          width: calc(100% - 4px) !important;
          max-width: calc(100% - 4px) !important;
          margin-left: 2px !important;
          margin-right: 2px !important;
        }
  
        .atc-banner--container .atc-banner--cart-footer,
        .atc-banner--cart-footer {
          display: flex !important;
          flex-direction: column !important;
          grid-column: auto !important;
          grid-row: auto !important;
          width: 100% !important;
          max-width: 100% !important;
          margin-left: 0 !important;
          margin-right: 0 !important;
          align-self: stretch !important;
        }
  
        .atc-banner--outer {
          padding-right: 44px !important;
        }
        .atc-banner--product-title {
          padding-right: 72px !important;
        }
        .atc-banner--container .atc--product,
        .atc--product {
          padding-right: 0 !important;
          max-width: 100% !important;
          width: 100% !important;
          box-sizing: border-box !important;
          border-right: 0 !important;
        }
        /* Product row: title left, qty × price on same line at far right */
        .atc-banner--container .atc--product-details,
        .atc--product-details {
          display: grid !important;
          grid-template-columns: minmax(0, 1fr) auto !important;
          grid-template-rows: auto auto auto auto !important;
          column-gap: 10px !important;
          row-gap: 2px !important;
          align-items: baseline !important;
          flex: 1 1 auto !important;
          width: 100% !important;
          min-width: 0 !important;
          margin-left: 0 !important;
          overflow: visible !important;
        }
  
        .atc-banner--container .atc--product-details--title,
        .atc--product-details--title {
          grid-column: 1 !important;
          grid-row: 1 !important;
          display: block !important;
          -webkit-line-clamp: unset !important;
          line-clamp: unset !important;
          -webkit-box-orient: unset !important;
          white-space: nowrap !important;
          overflow: hidden !important;
          text-overflow: ellipsis !important;
          padding-right: 0 !important;
          width: auto !important;
          max-width: 100% !important;
          margin: 0 !important;
          font-size: 15px !important;
          line-height: 1.25 !important;
          font-weight: 600 !important;
        }
  
        .atc-banner--container .atc--product-details--price,
        .atc--product-details--price {
          grid-column: 2 !important;
          grid-row: 1 !important;
          justify-self: end !important;
          align-self: baseline !important;
          margin: 0 !important;
          padding-right: 0 !important;
          font-size: 14px !important;
          line-height: 1.25 !important;
          white-space: nowrap !important;
          text-align: right !important;
        }
  
        .atc-subtotal--price {
          padding-right: 0 !important;
        }
  
        .atc--product-details--options {
          grid-column: 1 / -1 !important;
          grid-row: 2 !important;
          margin-top: 0 !important;
        }
  
        .atc--product-details .discount-list {
          grid-column: 1 / -1 !important;
          grid-row: 3 !important;
        }
  
        .atc--product-details .atc--line-item-subscriptions {
          grid-column: 1 / -1 !important;
          grid-row: 4 !important;
        }
  
        /* PP card: beat SE-tier flex `order` rules — title + price share row 1 */
        .atc-banner--cart-footer .priority-processing-upsell__card,
        .atc-banner--container .priority-processing-upsell[data-priority-surface="atc"] .priority-processing-upsell__card {
          display: grid !important;
          grid-template-columns: 18px minmax(0, 1fr) !important;
          grid-template-rows: auto !important;
          column-gap: 12px !important;
          row-gap: 0 !important;
          align-items: start !important;
          padding: 12px 56px 12px 14px !important;
          flex-direction: unset !important;
          position: relative !important;
        }
  
        .atc-banner--cart-footer .priority-processing-upsell__content,
        .atc-banner--container .priority-processing-upsell[data-priority-surface="atc"] .priority-processing-upsell__content {
          display: flex !important;
          flex-direction: column !important;
          gap: 3px !important;
          min-width: 0 !important;
          width: 100% !important;
          max-width: 100% !important;
          grid-column: 2 !important;
          grid-row: 1 !important;
          padding-right: 0 !important;
          flex: unset !important;
        }
  
        .atc-banner--cart-footer .priority-processing-upsell__indicator,
        .atc-banner--container .priority-processing-upsell[data-priority-surface="atc"] .priority-processing-upsell__indicator {
          grid-column: 1 !important;
          grid-row: 1 / -1 !important;
          margin: 0 !important;
          flex: unset !important;
          order: unset !important;
        }
  
        .atc-banner--cart-footer .priority-processing-upsell__title,
        .atc-banner--container .priority-processing-upsell[data-priority-surface="atc"] .priority-processing-upsell__title,
        .atc-banner--cart-footer .priority-processing-upsell__subtitle,
        .atc-banner--container .priority-processing-upsell[data-priority-surface="atc"] .priority-processing-upsell__subtitle,
        .atc-banner--cart-footer .priority-processing-upsell__helper,
        .atc-banner--container .priority-processing-upsell[data-priority-surface="atc"] .priority-processing-upsell__helper,
        .atc-banner--cart-footer .priority-processing-upsell__description,
        .atc-banner--container .priority-processing-upsell[data-priority-surface="atc"] .priority-processing-upsell__description,
        .atc-banner--cart-footer .priority-processing-upsell__pab-exclusion,
        .atc-banner--container .priority-processing-upsell[data-priority-surface="atc"] .priority-processing-upsell__pab-exclusion {
          grid-column: auto !important;
          grid-row: auto !important;
          width: 100% !important;
          max-width: 100% !important;
        }
  
        .atc-banner--cart-footer .priority-processing-upsell__title,
        .atc-banner--container .priority-processing-upsell[data-priority-surface="atc"] .priority-processing-upsell__title {
          padding: 0 !important;
          margin: 0 !important;
          order: unset !important;
          font-size: 15px !important;
          font-weight: 600 !important;
          line-height: 1.2 !important;
          align-self: auto !important;
        }
  
        .atc-banner--cart-footer .priority-processing-upsell__helper,
        .atc-banner--container .priority-processing-upsell[data-priority-surface="atc"] .priority-processing-upsell__helper {
          margin: 0 !important;
          order: unset !important;
          font-size: 13px !important;
          line-height: 1.3 !important;
          overflow-wrap: break-word !important;
          word-break: normal !important;
        }
  
        .priority-processing-upsell[data-priority-surface="atc"] .priority-processing-upsell__price,
        .atc-banner--cart-footer .priority-processing-upsell__price {
          position: absolute !important;
          top: 12px !important;
          right: 12px !important;
          bottom: auto !important;
          left: auto !important;
          transform: none !important;
          grid-column: auto !important;
          grid-row: auto !important;
          align-self: auto !important;
          justify-self: auto !important;
          margin: 0 !important;
          padding: 0 !important;
          order: unset !important;
          font-size: 15px !important;
          font-weight: 600 !important;
          line-height: 1.2 !important;
          white-space: nowrap !important;
        }
      }
  
      /* Portrait: full product title + PP copy uses full width beside price */
      @media (orientation: portrait) {
        .atc-banner--container .atc--product,
        .atc--product {
          max-width: 100% !important;
          width: 100% !important;
        }
  
        .atc--product-details {
          overflow: visible !important;
          flex: 1 1 auto !important;
          min-width: 0 !important;
          padding-top: 2px !important;
        }
  
        .atc-banner--container .atc--product-details--title,
        .atc--product-details--title {
          display: block !important;
          font-weight: 600 !important;
          white-space: normal !important;
          overflow: visible !important;
          text-overflow: clip !important;
          word-wrap: break-word !important;
          overflow-wrap: break-word !important;
          -webkit-line-clamp: unset !important;
          line-clamp: unset !important;
          -webkit-box-orient: unset !important;
          width: 100% !important;
          max-width: 100% !important;
        }
  
        .atc-banner--container .priority-processing-upsell[data-priority-surface="atc"] .priority-processing-upsell__content {
          padding-right: 0 !important;
        }
  
        .priority-processing-upsell[data-priority-surface="atc"] .priority-processing-upsell__title,
        .atc-banner--cart-footer .priority-processing-upsell__title {
          padding-right: 0 !important;
        }
  
        .atc-banner--container .priority-processing-upsell__card {
          grid-template-columns: 18px minmax(0, 1fr) !important;
          grid-template-rows: auto !important;
          column-gap: 10px !important;
          padding: 12px 56px 12px 12px !important;
          position: relative !important;
        }
  
        .atc-banner--container .priority-processing-upsell__subtitle,
        .atc-banner--container .priority-processing-upsell__description,
        .atc-banner--container .priority-processing-upsell__pab-exclusion,
        .atc-banner--container .priority-processing-upsell__helper {
          grid-column: auto !important;
          grid-row: auto !important;
          width: 100% !important;
          max-width: 100% !important;
        }
  
        .priority-processing-upsell[data-priority-surface="atc"] .priority-processing-upsell__price,
        .atc-banner--cart-footer .priority-processing-upsell__price {
          position: absolute !important;
          top: 12px !important;
          right: 12px !important;
          grid-row: auto !important;
          grid-column: auto !important;
          align-self: auto !important;
          justify-self: auto !important;
          transform: none !important;
        }
      }
  
      /* Bottom section: full width CTA */
      .atc-banner--container .atc-banner--cart-footer > a.atc-button--viewcart,
      .atc-banner--cart-footer > a.atc-button--viewcart {
        width: 100% !important;
        margin: 0 !important;
        max-width: 100% !important;
        align-self: stretch !important;
      }
  
      /*
        Final cascade win: desktop custom-overrides caps subtotal/footer at 520px.
        Higher specificity + last in document = full-width divider lines on iPad/desktop.
      */
      .atc-banner--container .atc-banner--inner .atc-banner--cart,
      .atc-banner--container .atc-banner--cart {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        align-self: stretch !important;
      }
  
      .atc-banner--container .atc-banner--inner .atc-banner--cart-subtotal,
      .atc-banner--container .atc-banner--cart-subtotal {
        width: calc(100% - 4px) !important;
        max-width: calc(100% - 4px) !important;
        margin-left: 2px !important;
        margin-right: 2px !important;
        align-self: center !important;
        justify-content: space-between !important;
        box-sizing: border-box !important;
      }
  
      .atc-banner--container .atc-banner--cart-footer .priority-processing-upsell,
      .atc-banner--container .priority-processing-upsell[data-priority-surface="atc"] {
        width: calc(100% - 4px) !important;
        max-width: calc(100% - 4px) !important;
        margin-left: 2px !important;
        margin-right: 2px !important;
      }
  
      .atc-banner--container .atc-banner--inner .atc-banner--cart-footer,
      .atc-banner--container .atc-banner--cart-footer {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        align-items: stretch !important;
        align-self: stretch !important;
      }
  
      .atc-banner--container .atc-banner--inner .atc-banner--cart-footer .priority-processing-upsell,
      .atc-banner--container .atc-banner--inner .atc-banner--cart-footer .atc-button--viewcart,
      .atc-banner--container .atc-banner--cart-footer .priority-processing-upsell,
      .atc-banner--container .atc-banner--cart-footer .atc-button--viewcart {
        width: 100% !important;
        max-width: 100% !important;
        align-self: stretch !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
      }
  
      /* Never truncate Priority Processing copy in the ATC drawer */
      .atc-banner--cart-footer .priority-processing-upsell__title,
      .atc-banner--cart-footer .priority-processing-upsell__helper,
      .atc-banner--cart-footer .priority-processing-upsell__helper-note,
      .atc-banner--cart-footer .priority-processing-upsell__description,
      .atc-banner--cart-footer .priority-processing-upsell__subtitle {
        display: block !important;
        overflow: visible !important;
        text-overflow: clip !important;
        white-space: normal !important;
        word-wrap: break-word !important;
        overflow-wrap: break-word !important;
        -webkit-line-clamp: unset !important;
        line-clamp: unset !important;
        -webkit-box-orient: unset !important;
      }
  
      .atc-banner--cart-footer .priority-processing-upsell__pab-exclusion {
        display: flex !important;
        align-items: flex-start !important;
        width: calc(100% + 68px) !important;
        max-width: calc(100% + 68px) !important;
        margin: 6px -68px 0 0 !important;
        overflow: hidden !important;
        white-space: normal !important;
        min-width: 0 !important;
      }
  
  /* Cart page — restore Priority Processing card (isolate from ATC drawer rules) */
  body.template-cart .priority-processing-upsell[data-priority-surface="page"] {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    grid-column: auto !important;
    grid-row: auto !important;
    align-self: auto !important;
  }
  body.template-cart .priority-processing-upsell[data-priority-surface="page"] .priority-processing-upsell__card {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 22px minmax(0, 1fr) !important;
    grid-template-rows: none !important;
    column-gap: 12px !important;
    row-gap: 0 !important;
    align-items: start !important;
    flex-direction: unset !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 14px !important;
    border: 1px solid #eee !important;
    border-radius: 16px !important;
    background: #fff !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04) !important;
    overflow: visible !important;
  }
  body.template-cart .priority-processing-upsell[data-priority-surface="page"] .priority-processing-upsell__content {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 3px !important;
    flex: none !important;
    min-width: 0 !important;
    padding-right: 68px !important;
  }
  body.template-cart .priority-processing-upsell[data-priority-surface="page"] .priority-processing-upsell__indicator {
    grid-column: auto !important;
    grid-row: auto !important;
    order: unset !important;
    flex: none !important;
    width: 22px !important;
    height: 22px !important;
    margin-top: 1px !important;
    align-self: auto !important;
  }
  body.template-cart .priority-processing-upsell[data-priority-surface="page"] .priority-processing-upsell__title,
  body.template-cart .priority-processing-upsell[data-priority-surface="page"] .priority-processing-upsell__subtitle,
  body.template-cart .priority-processing-upsell[data-priority-surface="page"] .priority-processing-upsell__description,
  body.template-cart .priority-processing-upsell[data-priority-surface="page"] .priority-processing-upsell__helper,
  body.template-cart .priority-processing-upsell[data-priority-surface="page"] .priority-processing-upsell__helper-note {
    grid-column: auto !important;
    grid-row: auto !important;
    order: unset !important;
    display: block !important;
    overflow: visible !important;
    white-space: normal !important;
  }
  body.template-cart .priority-processing-upsell[data-priority-surface="page"] .priority-processing-upsell__pab-exclusion {
    display: flex !important;
    align-items: flex-start !important;
    gap: 7px !important;
    width: calc(100% + 68px) !important;
    max-width: calc(100% + 68px) !important;
    margin: 8px -68px 0 0 !important;
    padding: 7px 8px !important;
    align-self: stretch !important;
    flex: 0 0 auto !important;
    box-sizing: border-box !important;
    min-width: 0 !important;
    overflow: hidden !important;
  }
  body.template-cart .priority-processing-upsell[data-priority-surface="page"] .priority-processing-upsell__pab-exclusion-icon {
    flex: 0 0 auto !important;
    width: 14px !important;
    height: 14px !important;
    margin-top: 1px !important;
  }
  body.template-cart .priority-processing-upsell[data-priority-surface="page"] .priority-processing-upsell__pab-exclusion-text {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-wrap: break-word !important;
  }
  @media (min-width: 1200px) {
    body.template-cart .priority-processing-upsell[data-priority-surface="page"] .priority-processing-upsell__pab-exclusion {
      align-items: center !important;
      font-size: 11.5px !important;
      line-height: 1.3 !important;
    }
    body.template-cart .priority-processing-upsell[data-priority-surface="page"] .priority-processing-upsell__pab-exclusion-icon {
      margin-top: 0 !important;
    }
    body.template-cart .priority-processing-upsell[data-priority-surface="page"] .priority-processing-upsell__pab-exclusion-text {
      white-space: nowrap !important;
    }
  }
  body.template-cart .priority-processing-upsell[data-priority-surface="page"] .priority-processing-upsell__subtitle {
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    color: rgba(0, 0, 0, 0.74) !important;
  }
  body.template-cart .priority-processing-upsell[data-priority-surface="page"] .priority-processing-upsell__description {
    font-size: 12.5px !important;
    line-height: 1.4 !important;
    color: rgba(0, 0, 0, 0.62) !important;
  }
  body.template-cart .priority-processing-upsell[data-priority-surface="page"] .priority-processing-upsell__price {
    position: absolute !important;
    top: 14px !important;
    right: 18px !important;
    bottom: auto !important;
    left: auto !important;
    transform: none !important;
    grid-column: auto !important;
    grid-row: auto !important;
    order: unset !important;
    align-self: auto !important;
    justify-self: auto !important;
    margin-top: 0 !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
  }
  
  /* ATC drawer mobile portrait only — push helper below subtitle */
  @media screen and (max-width: 719px) and (orientation: portrait) {
    .atc-banner--cart-footer .priority-processing-upsell__subtitle,
    .priority-processing-upsell[data-priority-surface="atc"] .priority-processing-upsell__subtitle {
      grid-column: 2 !important;
      grid-row: 2 !important;
    }
  
    .atc-banner--cart-footer .priority-processing-upsell__helper,
    .priority-processing-upsell[data-priority-surface="atc"] .priority-processing-upsell__helper {
      grid-column: 2 !important;
      grid-row: 3 !important;
      margin-top: 3px !important;
    }
  }
  
  
  /* Registered trademark — secondary to the wordmark (Apple-style) */
  .trademark-symbol {
    font-size: 0.6em;
    vertical-align: super;
    line-height: 0;
    letter-spacing: normal;
    font-weight: 500;
    opacity: 0.72;
    position: relative;
    top: 0.14em;
    left: -0.12em;
  }
  
  /* Main nav + mobile drawer — RealAged® lockup (lower than generic sup; beats body sup { top: -0.65em }) */
  .site-navigation sup.ra-reg,
  .site-navigation .ra-reg,
  #site-mobile-nav sup.ra-reg,
  #site-mobile-nav .ra-reg {
    font-size: 0.55em !important;
    vertical-align: super !important;
    line-height: 0 !important;
    position: relative !important;
    top: 0.1em !important;
    font-weight: 600 !important;
    color: currentColor !important;
    opacity: 1 !important;
  }
  
  /* Prop Money site icon — no ® lockup on the icon mark. */
  .brand-logo-lockup::after {
    content: none !important;
    display: none !important;
  }
  
  /* As Seen On — Journal CTA rich text (inline styles removed for Shopify richtext validation) */
  .as-seen-on-journal-cta .rich-text-content > p:first-of-type {
    margin: 0 0 10px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 700;
    color: rgba(0, 0, 0, 0.55);
  }
  
  .as-seen-on-journal-cta .rich-text-content > h2 {
    margin: 0 0 10px;
    font-family: ui-serif, "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;
    font-weight: 520;
    letter-spacing: -0.02em;
  }
  
  .as-seen-on-journal-cta .rich-text-content > p:nth-of-type(2) {
    margin: 0;
    color: rgba(0, 0, 0, 0.62);
    font-size: 15px;
    line-height: 1.6;
  }
  
  .as-seen-on-journal-cta .rich-text-content > p:last-of-type {
    margin: 14px 0 0;
  }
  
  .as-seen-on-journal-cta .rich-text-content a {
    font-weight: 700;
    text-decoration: none;
  }
  
  
  
  /* Moved from layout/theme.liquid (4950–5735) to stay under 256KB layout limit */
    /* FORCE BOTH BARS TO BE IDENTICAL */
    .announcement-static {
      background: var(--pm-section);
      border-bottom: 1px solid var(--pm-border);
    }
    
    .announcement-static:not(.announcement-rotating) .announcement-bar__text,
    .announcement-static:not(.announcement-rotating) .announcement-bar__text a {
      display: flex;
      align-items: center;
      justify-content: center;
      text-align: center;
    
      font-family: inherit;
      font-size: 13.5px;
      font-weight: 500 !important;
      letter-spacing: 0.02em;
      line-height: 1.25;
    
      height: 38px;          /* ← THIS MATCHES BOTH BARS */
      padding: 0 10px;
      white-space: nowrap;
    
      color: #1d1d1f;
      text-decoration: none;
    }
  
  
  .announcement-static .announcement-bar__text a {
    margin: 0 !important;
    padding: 0 !important;
  }
  
  .announcement-mobile { display: none; }
  .announcement-desktop { display: inline; }
  
  @media (max-width: 768px) {
    .announcement-desktop { display: none; }
    .announcement-mobile { display: inline; }
  }
  
  .announcement-bar a {
    display: block;
    text-decoration: none;
    color: inherit;
  }
  
  .announcement-bar {
    padding: 8px 16px;
    font-size: 13px;
    line-height: 1.3;
  }
  
  /* Match secondary bar height to rotating bar below */
  .announcement-static.announcement-bar--secondary {
    padding: 0 !important;
  }
  
  @media (max-width: 768px) {
    .announcement-bar {
      padding: 6px 12px;
      font-size: 12px;
    }
  
    .announcement-static.announcement-bar--secondary {
      padding: 0 !important;
    }
  }
  
  .announcement-bar a {
    display: block;
    padding: 0;
  }
  
    .announcement-static.temporary-checkout-alert {
      background: #FDEFC9;
      border-bottom: 1px solid #F8DDA3;
    }
  
    .announcement-static.temporary-checkout-alert .announcement-bar__text,
    .announcement-static.temporary-checkout-alert .announcement-bar__text a {
      color: #1D1D1F !important;
      font-weight: 500 !important;
    }
  
    .announcement-static.temporary-checkout-alert .announcement-bar__text a {
      text-decoration: none !important;
    }
  
    .announcement-static.temporary-checkout-alert .announcement-bar__text a:hover {
      text-decoration: underline !important;
    }
  
    @media (min-width: 1024px) {
      body:has(.pm-desktop-nav .navmenu-id-shop details[open]) .site-main-dimmer {
        opacity: 0 !important;
        pointer-events: none !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
      }

      .site-main-dimmer[data-animation-state="open"] {
        background: rgba(255, 255, 255, 0.55) !important;
        backdrop-filter: blur(20px) saturate(180%) !important;
        -webkit-backdrop-filter: blur(20px) saturate(180%) !important;
      }

      .site-main-dimmer[data-animation="closed=>open"],
      .site-main-dimmer[data-animation="open=>closed"] {
        transition: opacity 220ms cubic-bezier(0.25, 0.1, 0.25, 1) !important;
      }
    }

    .site-main-dimmer {
      background: rgba(255, 255, 255, 0.35) !important;
      backdrop-filter: blur(20px) saturate(160%);
      -webkit-backdrop-filter: blur(20px) saturate(160%);
    }
  
    @media (min-width: 768px) {
      .announcement-static {
        position: relative;
        z-index: 10002;
      }
    }
    /* Fade transition for rotating messages */
    .announcement-rotating {
      position: relative;
    }
    .announcement-rotating .announcement-message {
      opacity: 0;
      transition: opacity 280ms ease;
      position: absolute;
      inset: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      pointer-events: none;
    }
    .announcement-rotating .announcement-message.active {
      opacity: 1;
      pointer-events: auto;
      z-index: 1;
    }

    .announcement-rotating:has(.announcement-message--linked.active) {
      cursor: pointer;
    }

    .announcement-rotating .announcement-message--linked.active {
      z-index: 2;
    }

    .announcement-rotating .announcement-message--linked.active a {
      position: absolute;
      inset: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      width: 100%;
      height: 100%;
      padding: 0 16px;
      box-sizing: border-box;
      text-decoration: none;
    }

    .announcement-rotating .announcement-message:not(.announcement-message--linked).active {
      cursor: default;
    }
  
    .desktop-only { display: block; }
    .mobile-only { display: none; }
  
    @media (max-width: 767px) {
      .desktop-only { display: none !important; }
      .mobile-only { display: block !important; }
    }
    
    /* Global page container: max-width + centered layout with side spacing */
    .page-width,
    .container,
    .main-content,
    .product__container {
      max-width: 1280px;
      margin-left: auto;
      margin-right: auto;
      padding-left: 24px;
      padding-right: 24px;
      box-sizing: border-box;
    }
    .product__container {
      padding-left: 24px !important;
      padding-right: 24px !important;
    }
    .template-product .product__container {
      padding-right: 20px !important;
    }
    /* Prevent horizontal overflow */
    body {
      overflow-x: hidden;
    }
    /* Allow flex/grid children to shrink below content size - prevents horizontal overflow */
    .product__container,
    .product--outer,
    .product-gallery,
    .product-main,
    .product-details,
    .product-block,
    .product-form__action-wrapper,
    .approval-required-wrap,
    .featured-product__container,
    .featured-collection__container,
    .article--container,
    .cart--section {
      min-width: 0 !important;
    }
    /* Ensure long text wraps instead of overflowing */
    .product-title,
    .product-details,
    .product-block--title h1,
    .product-block--title h2,
    .product-form__action-wrapper,
    .authorized-use-notice,
    .product-description,
    .product-block--form,
    .approval-required-wrap,
    .product-form--atc-button {
      overflow-wrap: break-word !important;
      word-wrap: break-word !important;
      word-break: break-word !important;
      max-width: 100% !important;
    }
    /* All text in product details must wrap - catch links, paragraphs, buttons */
    .template-product .product-details,
    .template-product .product-details *,
    .template-product .product-main a,
    .template-product .product-main p,
    .template-product .product-main button,
    .template-product .product-main .product-block {
      overflow-wrap: break-word !important;
      word-wrap: break-word !important;
      word-break: break-word !important;
      max-width: 100% !important;
    }
  
    .template-product .product-details .product-form--buy-now-button {
      overflow-wrap: normal !important;
      word-wrap: normal !important;
      word-break: normal !important;
    }
    /* Keep purchase controls from clipping focus rings; text blocks still wrap via word-break rules */
    .template-product .product-main {
      overflow-x: visible !important;
    }
  
    .template-product .product-form--atc,
    .template-product .product-form__action-wrapper {
      overflow: visible !important;
    }
    /* Keep product-page content aligned to standard container gutters */
    .template-product .product-main,
    .template-product .product-details {
      box-sizing: border-box !important;
    }
    .template-product .product-main {
      margin-left: 0 !important;
    }
    /* Product page: description, readmore, and collapsible content must wrap - prevent right-edge cutoff */
    .template-product .product-description,
    .template-product .product-readmore,
    .template-product .collapsible-tab__text,
    .template-product .product-text,
    .template-product .product-block--description,
    .template-product .product-block--collapsible-tab {
      overflow-wrap: break-word !important;
      word-wrap: break-word !important;
      word-break: break-word !important;
      max-width: 100% !important;
      min-width: 0 !important;
    }
    .template-product .product-description.rte,
    .template-product .product-readmore.rte,
    .template-product .collapsible-tab__text .rte,
    .template-product .product-description p,
    .template-product .product-readmore p,
    .template-product .collapsible-tab__text p,
    .template-product .product-description li,
    .template-product .product-readmore li,
    .template-product .collapsible-tab__text li {
      overflow-wrap: break-word !important;
      word-wrap: break-word !important;
      max-width: 100% !important;
    }
    /* When two-column layout is active: allow product-main to shrink so content wraps instead of overflowing */
    @media (min-width: 1101px) {
      .template-product .product--outer {
        flex-wrap: nowrap !important;
        min-width: 0 !important;
        column-gap: 24px !important;
      }
      .template-product .product-gallery {
        flex: 0 0 51.5% !important;
        min-width: 0 !important;
      }
      .template-product .product-main {
        flex: 0 1 46% !important;
        min-width: 0 !important;
      }
    }
    
    /* MOBILE: legacy static bars only — rotating bar sizing lives in pm-premium-design-system */
    @media (max-width: 767px) {
      .announcement-static:not(.announcement-rotating) .announcement-bar__text,
      .announcement-static:not(.announcement-rotating) .announcement-bar__text a {
        font-size: 13.5px;
        font-weight: 500 !important;
        letter-spacing: 0.02em;
        min-height: 46px !important;
        height: 46px !important;
        line-height: 1.2;
        padding: 0 14px;
        white-space: nowrap;
        max-width: 100%;
        overflow: hidden;
        text-overflow: ellipsis;
      }
    }
    button,
  .button,
  .btn,
  input[type="submit"],
  .shopify-payment-button__button {
    border-radius: 30px !important;
  }
  a.button,
  a.btn,
  a[class*="button"],
  a[class*="btn"] {
    border-radius: 30px !important;
  }
  .live-search-form {
    border-radius: 30px !important;
  }

  @media screen and (min-width: 1024px) {
    .live-search-form {
      overflow: hidden !important;
    }
  }
  
  .live-search-form input {
    border-radius: 30px 0 0 30px !important;
  }
  
  .live-search-button {
    border-radius: 0 30px 30px 0 !important;
  }
  .product-gallery--media-thumbnail-img-wrapper,
  .product-gallery--media-thumbnail-img-wrapper img,
  .product-gallery--image-thumbnail,
  .product-gallery--image-thumbnail img {
    border-radius: 0 !important;
  }
  /* Remove label */
  .quantity-selector__label {
    display: none !important;
  }
  
  .template-product .product--outer {
    padding-top: 16px !important;
  }
  
  /* Desktop product pages: more space between image and text */
  @media screen and (min-width: 1101px) {
    .template-product .product-main {
      margin-left: 3% !important;
    }
  }
  
  /* Collection pages: Globo sort/limit controls — rounded attached dropdown */
  body.template-collection #gf-controls-container,
  body.template-search #gf-controls-container {
    --pm-gf-control-radius: 12px;
    --pm-gf-control-border: #c8c8c8;
    --pm-gf-sort-width: 196px;
  }
  
  body.template-collection #gf-controls-container .gf-filter-selection,
  body.template-search #gf-controls-container .gf-filter-selection {
    overflow: visible !important;
  }
  
  body.template-collection #gf-controls-container .sort-by,
  body.template-search #gf-controls-container .sort-by {
    border: 1px solid var(--pm-gf-control-border) !important;
    border-radius: var(--pm-gf-control-radius) !important;
    background: #fff !important;
    overflow: visible !important;
    box-sizing: border-box !important;
  }
  
  body.template-collection #gf-controls-container .sort-by .sort-by-toggle,
  body.template-search #gf-controls-container .sort-by .sort-by-toggle {
    border-radius: var(--pm-gf-control-radius) !important;
    background: transparent !important;
  }
  
  body.template-collection #gf-controls-container .sort-by.active,
  body.template-search #gf-controls-container .sort-by.active {
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    z-index: 20 !important;
  }
  
  body.template-collection #gf-controls-container .sort-by.active .sort-by-toggle,
  body.template-search #gf-controls-container .sort-by.active .sort-by-toggle,
  body.template-collection #gf-controls-container .sort-by.limit-by.active .pm-limit-toggle,
  body.template-search #gf-controls-container .sort-by.limit-by.active .pm-limit-toggle {
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
  }
  
  body.template-collection #gf-controls-container .sort-by:not(.limit-by),
  body.template-search #gf-controls-container .sort-by:not(.limit-by) {
    flex: 0 0 var(--pm-gf-sort-width) !important;
    width: var(--pm-gf-sort-width) !important;
    min-width: var(--pm-gf-sort-width) !important;
    max-width: var(--pm-gf-sort-width) !important;
  }
  
  body.template-collection #gf-controls-container .sort-by.limit-by,
  body.template-search #gf-controls-container .sort-by.limit-by {
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 0 !important;
  }
  
  body.template-collection #gf-controls-container .sort-by.limit-by label[for="setLimit"],
  body.template-search #gf-controls-container .sort-by.limit-by label[for="setLimit"] {
    margin: 0 3px 0 10px !important;
    padding: 0 !important;
    white-space: nowrap !important;
  }
  
  body.template-collection #gf-controls-container .sort-by.limit-by .pm-limit-toggle,
  body.template-search #gf-controls-container .sort-by.limit-by .pm-limit-toggle {
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    padding: 0 25px 0 4px !important;
    margin: 0 !important;
    border: 0 !important;
    background: transparent !important;
    cursor: pointer !important;
    height: 38px !important;
    line-height: 38px !important;
    font: inherit !important;
    color: inherit !important;
    text-align: left !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    border-radius: var(--pm-gf-control-radius) !important;
    box-sizing: border-box !important;
  }
  
  body.template-collection #gf-controls-container .globo-dropdown-custom__options,
  body.template-search #gf-controls-container .globo-dropdown-custom__options {
    left: -1px !important;
    right: -1px !important;
    width: calc(100% + 2px) !important;
    min-width: 0 !important;
    max-width: none !important;
    margin-top: 0 !important;
    padding: 6px 0 !important;
    border: 1px solid var(--pm-gf-control-border) !important;
    border-top: 1px solid #e5e5e5 !important;
    border-radius: 0 0 var(--pm-gf-control-radius) var(--pm-gf-control-radius) !important;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.12) !important;
    box-sizing: border-box !important;
  }
  
  body.template-collection #gf-controls-container .globo-dropdown-custom__options span,
  body.template-search #gf-controls-container .globo-dropdown-custom__options span {
    padding: 10px 14px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
  
  body.template-collection #gf-controls-container .sort-by:not(.limit-by) .globo-dropdown-custom__options span,
  body.template-search #gf-controls-container .sort-by:not(.limit-by) .globo-dropdown-custom__options span {
    overflow: visible !important;
    text-overflow: clip !important;
  }
  
  body.template-collection #gf-controls-container .globo-dropdown-custom__options span.pm-gf-option-selected::before,
  body.template-search #gf-controls-container .globo-dropdown-custom__options span.pm-gf-option-selected::before {
    content: "✓ ";
    font-weight: 700;
  }
  
  body.template-collection #gf-controls-container .sort-by:not(.limit-by) .sort-by-toggle span,
  body.template-search #gf-controls-container .sort-by:not(.limit-by) .sort-by-toggle span {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
  
  @media (max-width: 767px) {
    body.template-collection #gf-controls-container,
    body.template-search #gf-controls-container {
      --pm-gf-sort-width: 100%;
    }
  
    body.template-collection #gf-controls-container .sort-by:not(.limit-by),
    body.template-search #gf-controls-container .sort-by:not(.limit-by) {
      flex: 1 1 100% !important;
      width: 100% !important;
      min-width: 0 !important;
      max-width: none !important;
    }
  
    body.template-collection #gf-controls-container .gf-filter-trigger .gf-refine-toggle-mobile,
    body.template-search #gf-controls-container .gf-filter-trigger .gf-refine-toggle-mobile {
      border-radius: var(--pm-gf-control-radius) !important;
      border-color: var(--pm-gf-control-border) !important;
      overflow: hidden !important;
    }
  
    body.template-collection #gf-controls-container .gf-filter-selection .sort-by:not(.active),
    body.template-search #gf-controls-container .gf-filter-selection .sort-by:not(.active) {
      border-color: var(--pm-gf-control-border) !important;
      border-radius: var(--pm-gf-control-radius) !important;
    }
  
    body.template-collection #gf-controls-container .gf-filter-selection .sort-by.active,
    body.template-search #gf-controls-container .gf-filter-selection .sort-by.active {
      border-color: var(--pm-gf-control-border) !important;
      border-bottom-left-radius: 0 !important;
      border-bottom-right-radius: 0 !important;
    }
  
    body.template-collection #gf-controls-container .gf-filter-selection .sort-by.active .sort-by-toggle,
    body.template-search #gf-controls-container .gf-filter-selection .sort-by.active .sort-by-toggle {
      border-bottom-left-radius: 0 !important;
      border-bottom-right-radius: 0 !important;
    }
  
    /* Globo mobile filter drawer — Apple premium */
    body.gf-offcanvas #gf-tree .gf-filter-header > .gf-filter-heading {
      text-transform: none !important;
      font-weight: 600 !important;
      font-size: 17px !important;
      letter-spacing: -0.022em !important;
      color: #1d1d1f !important;
    }
  
    /* Hide duplicate lower "Filter by" label; keep Clear All link */
    body.gf-offcanvas #gf-tree .js-floating-refinements .plp-title-filters {
      font-size: 0 !important;
      line-height: 0 !important;
      background: transparent !important;
      padding: 0 15px 4px 0 !important;
      margin: 0 !important;
      min-height: 0 !important;
      display: flex !important;
      justify-content: flex-end !important;
      align-items: center !important;
    }
  
    body.gf-offcanvas #gf-tree .js-floating-refinements .plp-title-filters a,
    body.gf-offcanvas #gf-tree .js-floating-refinements .plp-title-filters .clear-refinements,
    body.gf-offcanvas #gf-tree .js-floating-refinements .plp-title-filters button {
      font-size: 14px !important;
      line-height: 1.4 !important;
      font-weight: 500 !important;
      color: #1d1d1f !important;
      text-transform: none !important;
    }
  
    body.gf-offcanvas #gf-tree .globo-selected-items-wrapper > .gf-block-title h3,
    body.gf-offcanvas #gf-tree .globo-selected-items-wrapper > .gf-block-title .h3 {
      display: none !important;
    }
  
    body.gf-offcanvas #gf-tree .globo-selected-items-wrapper > .gf-block-title {
      display: flex !important;
      justify-content: flex-end !important;
      align-items: center !important;
      padding: 0 15px 4px !important;
      border: 0 !important;
    }
  
    body.gf-offcanvas #gf-tree .gf-filter-footer button {
      text-transform: none !important;
      font-weight: 600 !important;
      font-size: 15px !important;
      letter-spacing: -0.01em !important;
      color: #ffffff !important;
      background: #1d1d1f !important;
      border: 1px solid #1d1d1f !important;
      border-radius: 999px !important;
      height: 48px !important;
      line-height: 48px !important;
      padding: 0 20px !important;
    }
  
    body.gf-offcanvas #gf-tree .gf-filter-footer button:hover,
    body.gf-offcanvas #gf-tree .gf-filter-footer button:focus {
      background: #000000 !important;
      border-color: #000000 !important;
      color: #ffffff !important;
    }
  }
  
  /* Product page: rounded variant option dropdowns (matches quickshop + pill buttons) */
  .template-product .options-selection__select {
    position: relative !important;
  }
  
  .template-product .options-selection__input-select-wrapper {
    position: relative !important;
    width: 100% !important;
    min-height: 56px !important;
    border-radius: 12px !important;
    overflow: visible !important;
  }
  
  .template-product .options-selection__input-select-wrapper.is-open .options-selection__input-select,
  .modal--quickshop-slim .options-selection__input-select-wrapper.is-open .options-selection__input-select {
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    border-color: #a8a8a8 !important;
  }
  
  .template-product .pm-option-dropdown__list,
  .modal--quickshop-slim .pm-option-dropdown__list {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 6px 0 !important;
    list-style: none !important;
    background: #fff !important;
    border: 1px solid #c8c8c8 !important;
    border-top: none !important;
    border-radius: 0 0 12px 12px !important;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.12) !important;
    max-height: min(280px, 50vh) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    z-index: 60 !important;
    box-sizing: border-box !important;
    -webkit-overflow-scrolling: touch;
  }
  
  .template-product .pm-option-dropdown__option,
  .modal--quickshop-slim .pm-option-dropdown__option {
    padding: 12px 14px !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
    color: #1d1d1d !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
  }
  
  .template-product .pm-option-dropdown__option.is-selected::before,
  .modal--quickshop-slim .pm-option-dropdown__option.is-selected::before {
    content: "✓ ";
    font-weight: 700;
  }
  
  .template-product .pm-option-dropdown__option.is-disabled,
  .modal--quickshop-slim .pm-option-dropdown__option.is-disabled {
    opacity: 0.55 !important;
    cursor: default !important;
  }
  
  .template-product .pm-option-dropdown__option:not(.is-disabled):active,
  .modal--quickshop-slim .pm-option-dropdown__option:not(.is-disabled):active {
    background: var(--pm-section-deeper) !important;
  }
  
  /* Custom dropdown: native select is display-only; wrapper receives all taps */
  .pm-option-dropdown-wrap {
    cursor: pointer !important;
  }
  
  .pm-option-dropdown-wrap .options-selection__input-select {
    pointer-events: none !important;
  }
  
  .pm-option-dropdown-wrap .pm-option-dropdown__list,
  .pm-option-dropdown-wrap .pm-option-dropdown__option {
    pointer-events: auto !important;
  }
  
  .template-product .options-selection__select-label {
    position: absolute !important;
    left: 14px !important;
    z-index: 3 !important;
    pointer-events: none !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
    color: #888 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    transition: top 125ms cubic-bezier(0, 0, 0.2, 1), font-size 125ms cubic-bezier(0, 0, 0.2, 1), transform 125ms cubic-bezier(0, 0, 0.2, 1) !important;
  }
  
  .template-product .options-selection__select:has(.options-selection__input-select:not([data-variant-option-chosen-value="false"])) .options-selection__select-label {
    top: 0.4375rem !important;
    transform: none !important;
    font-size: 11px !important;
    color: #666 !important;
  }
  
  .template-product .options-selection__input-select {
    display: block !important;
    width: 100% !important;
    height: 56px !important;
    min-height: 56px !important;
    max-height: 56px !important;
    padding: 1.375rem 36px 0.625rem 14px !important;
    border: 1px solid #c8c8c8 !important;
    border-radius: 12px !important;
    box-shadow: none !important;
    background: #fff !important;
    box-sizing: border-box !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    line-height: 1.25 !important;
    color: #1d1d1d !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    vertical-align: middle !important;
  }
  
  .template-product .options-selection__input-select[data-variant-option-chosen-value="false"] {
    color: transparent !important;
  }
  
  .template-product .options-selection__input-select:not([data-variant-option-chosen-value="false"]) {
    color: #1d1d1d !important;
    font-weight: 500 !important;
  }
  
  .template-product .options-selection__input-select:focus {
    border-color: #a8a8a8 !important;
    box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.05) !important;
    outline: none !important;
  }
  
  .template-product .options-selection__input-select-chevron,
  .template-product .options-selection__input-select-wrapper svg {
    position: absolute !important;
    top: 50% !important;
    right: 14px !important;
    transform: translateY(-50%) !important;
    margin-top: 0 !important;
    pointer-events: none !important;
    z-index: 3 !important;
    color: #555 !important;
  }
  
  /* Product quantity selector – match ATC button height, Empire pill style */
  .template-product .product-form__action-wrapper > .quantity-selector,
  .template-product .product-form__action-wrapper > quantity-selector.quantity-selector {
    display: flex !important;
    align-items: stretch !important;
    height: 48px !important;
    min-height: 48px !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    border: 1px solid #dcdcdc !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }
  
  .template-product .product-form__action-wrapper .quantity-selector__wrapper {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex: 1 !important;
    min-width: 0 !important;
    padding: 0 14px !important;
  }
  
  .template-product .product-form__action-wrapper .quantity-selector__button-wrapper {
    flex-shrink: 0 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
  }
  
  .template-product .product-form__action-wrapper .quantity-selector__button,
  .template-product .product-form__action-wrapper .quantity-selector__button.quantity-selector__button--minus,
  .template-product .product-form__action-wrapper .quantity-selector__button.quantity-selector__button--plus {
    width: 36px !important;
    min-width: 36px !important;
    height: 36px !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    border-radius: 50% !important;
    font-size: 22px !important;
    font-weight: 500 !important;
    color: #1d1d1d !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: none !important;
  }
  
  .template-product .product-form__action-wrapper .quantity-selector__button:hover {
    background: #f4f4f4 !important;
  }
  
  .template-product .product-form__action-wrapper .quantity-selector__button:focus {
    box-shadow: none !important;
  }
  
  .template-product .product-form__action-wrapper .quantity-selector__input {
    width: 40px !important;
    min-width: 40px !important;
    max-width: 60px !important;
    border: none !important;
    background: transparent !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    text-align: center !important;
    padding: 0 !important;
    outline: none !important;
    box-shadow: none !important;
  }
  
  .template-product .product-form__action-wrapper > .product-form--atc-button {
    height: 48px !important;
    min-height: 48px !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: center !important;
    line-height: 1 !important;
    position: relative !important;
  }
  
  .template-product .product-form__action-wrapper > .product-form--atc-button .atc-button--text {
    line-height: 1 !important;
  }
  
  .template-product .product-form__action-wrapper > .product-form--atc-button .atc-button--icon svg {
    vertical-align: middle !important;
  }
  
  /* Add to Cart — premium focus ring (no clipped blue Empire outline after cart drawer) */
  .template-product .product-form--atc-button:focus {
    outline: none !important;
  }
  
  .template-product .product-form--atc-button:focus:not(:focus-visible) {
    box-shadow: none !important;
  }
  
  .template-product .product-form--atc-button:focus-visible {
    outline: none !important;
    box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.14) !important;
  }
  
  /* Buy Now — full width below qty + ATC row (all breakpoints) */
  .template-product .product-form--atc {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
  
  .template-product .product-form__buy-now-row {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    margin-top: 12px !important;
    padding-top: 0 !important;
    border-top: none !important;
    box-sizing: border-box !important;
  }
  
  .template-product .product-form--buy-now-button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 50px !important;
    min-height: 50px !important;
    margin: 0 !important;
    padding: 0 24px !important;
    box-sizing: border-box !important;
    border: none !important;
    border-radius: 999px !important;
    background: #000 !important;
    color: #fff !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    letter-spacing: 0.02em !important;
    line-height: 1 !important;
    text-align: center !important;
    cursor: pointer !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08) !important;
    transition: background 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease !important;
  }
  
  .template-product .product-form--buy-now-button:hover {
    background: var(--pm-black-hover) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12) !important;
  }
  
  .template-product .product-form--buy-now-button:active {
    transform: translateY(0) !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08) !important;
  }
  
  .template-product .product-form--buy-now-button.processing {
    opacity: 0.72 !important;
    cursor: wait !important;
    transform: none !important;
  }
  
  /* Shop Pay installments → authorized-use divider */
  .template-product .authorized-use-notice {
    margin-top: 10px !important;
  }
  
  /* Product page — Stack Simulator + pickup: shared left edge and width. */
  .template-product .stack-sim-cta {
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 12px !important;
    max-width: 480px !important;
  }
  
  .template-product .surface-pick-up {
    margin-top: 0 !important;
    margin-bottom: 36px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 100% !important;
    max-width: 480px !important;
  }
  
  .template-product .surface-pick-up-embed,
  .template-product .surface-pick-up-embed.surface-pick-up-embed--available,
  .template-product .surface-pick-up-embed.surface-pick-up-embed--unavailable {
    display: block !important;
    padding: 8px 0 0 !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    text-align: left !important;
  }
  
  .template-product .surface-pick-up-embed__in-stock-icon,
  .template-product .surface-pick-up-embed__out-of-stock-icon {
    float: left !important;
    margin: 3px 8px 0 0 !important;
  }
  
  .template-product .surface-pick-up-embed__location-info {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  
  /* Keep pickup copy + link on the same left edge as stack sim + description. */
  .template-product .surface-pick-up-embed__location-info,
  .template-product .surface-pick-up-embed__location-availability,
  .template-product .surface-pick-up-embed__location-pick-up-time,
  .template-product .surface-pick-up-embed__modal-btn {
    margin-left: 0 !important;
    padding-left: 0 !important;
    text-align: left !important;
  }
  
  .template-product .surface-pick-up-embed__modal-btn {
    display: block !important;
    clear: both !important;
    margin-top: 6px !important;
  }
  
  .template-product .product-block--form + .product-block--description,
  .template-product .product-block--form + .product-block--description .product-description {
    margin-left: 0 !important;
    padding-left: 0 !important;
  }
  
  /* Purchasing/logistics → product details: subtle section break. */
  .template-product .product-details .product-block--form:has(+ .product-block--description),
  .template-product .product__container--two-columns article.product--outer .product-main .product-details .product-block--form:has(+ .product-block--description),
  .template-product .product-container--two-columns article.product--outer .product-main .product-details .product-block--form:has(+ .product-block--description) {
    margin-bottom: 0 !important;
  }
  
  .template-product .product-details .product-block--form + .product-block--description,
  .template-product .product__container--two-columns article.product--outer .product-main .product-details .product-block--form + .product-block--description,
  .template-product .product-container--two-columns article.product--outer .product-main .product-details .product-block--form + .product-block--description {
    margin-top: 0 !important;
    padding-top: 0 !important;
    border-top: none !important;
  }
  
  .template-product .product-details .product-block--form + .product-block--description::before,
  .template-product .product__container--two-columns article.product--outer .product-main .product-details .product-block--form + .product-block--description::before,
  .template-product .product-container--two-columns article.product--outer .product-main .product-details .product-block--form + .product-block--description::before {
    content: "" !important;
    display: block !important;
    width: 100% !important;
    height: 1px !important;
    margin-top: 14px !important;
    margin-bottom: 8px !important;
    background-color: rgba(0, 0, 0, 0.08) !important;
  }
  
  /* No Checkout+ on product page — protection choice happens on /cart */
  .template-product .product-form--atc redo-shopify-toggle,
  .template-product .product-form--atc [class*="redo-"],
  .template-product .product-form--atc [id*="redo-"] {
    display: none !important;
  }
  
  /* Switch to single-column earlier to prevent right-edge cutoff (was 932px) */
  @media (max-width: 1100px) {
    .template-product .product__container,
    .template-product .product__container--two-columns,
    .template-product .product--outer {
      display: block !important;
      max-width: 100% !important;
      overflow-x: hidden !important;
      box-sizing: border-box !important;
    }
  
    .template-product .product-gallery,
    .template-product .product-main {
      width: 100% !important;
      max-width: 100% !important;
      flex: 0 0 100% !important;
      box-sizing: border-box !important;
    }
  
    .template-product .product-main {
      margin-left: 0 !important;
    }
  
    .template-product .product-form--atc {
      margin-bottom: 8px !important;
    }
  
    .template-product .product-form__action-wrapper {
      display: flex !important;
      flex-direction: row !important;
      flex-wrap: wrap !important;
      align-items: center !important;
      gap: 12px !important;
      width: 100% !important;
      box-sizing: border-box !important;
      margin-bottom: 0 !important;
    }
  
    /* smart-payment-enabled adds margin-top on ATC in theme.css — zero it
       inside the qty+ATC row so both pills share one baseline (guest + logged in). */
    .template-product .product-form__action-wrapper > .product-form--atc-button,
    .template-product .smart-payment-enabled .product-form__action-wrapper > .product-form--atc-button {
      flex: 1 1 auto !important;
      min-width: 0 !important;
      height: 48px !important;
      min-height: 48px !important;
      max-height: 48px !important;
      margin-top: 0 !important;
      margin-bottom: 0 !important;
      align-self: center !important;
    }
  
    .template-product .product-form__action-wrapper > .quantity-selector,
    .template-product .product-form__action-wrapper > quantity-selector.quantity-selector {
      align-self: center !important;
    }
  
    .template-product .authorized-use-notice {
      order: -1 !important;
      width: 100% !important;
      margin-top: 4px !important;
      margin-bottom: 22px !important;
    }
  
    /* Quantity selector */
    .template-product .product-form__action-wrapper > .quantity-selector,
    .template-product .product-form__action-wrapper > quantity-selector.quantity-selector {
      display: flex !important;
      align-items: center !important;
      justify-content: center !important;
      height: 48px !important;
      border-radius: 999px !important;
      overflow: hidden !important;
    }
  
    .template-product .product-form__action-wrapper .quantity-selector__wrapper {
      display: flex !important;
      align-items: center !important;
      justify-content: center !important;
      gap: 10px !important;
      width: 100% !important;
      padding: 0 12px !important;
    }
  
    .template-product .product-form__action-wrapper .quantity-selector__button {
      width: 32px !important;
      height: 32px !important;
    }
  
    .template-product .product-form__action-wrapper .quantity-selector__input {
      width: 36px !important;
    }
  
    /* Add to cart — height/margin handled in action-wrapper row lock above */
    .template-product .product-form__action-wrapper > .product-form--atc-button {
      flex: 1 1 auto !important;
      min-width: 0 !important;
    }
  
    /* Continue to checkout / Shop Pay — full width below qty + ATC row */
    .template-product .product-form__action-wrapper > .shopify-payment-button {
      flex-basis: 100% !important;
      width: 100% !important;
      max-width: 100% !important;
      margin: 0 !important;
      box-sizing: border-box !important;
    }
  
    .template-product .shopify-payment-button,
    .template-product .shopify-payment-button__button,
    .template-product .atc-button--checkout {
      width: 100% !important;
      max-width: 100% !important;
      margin: 0 !important;
      box-sizing: border-box !important;
    }
  }
  
  
  @media (min-width: 1025px) {
    .template-product .quantity-selector,
    .template-product .product-form--atc-button,
    .template-product .shopify-payment-button__button,
    .template-product .atc-button--checkout {
      height: 48px !important;
      min-height: 48px !important;
    }
  
    .template-product .product-form--buy-now-button {
      height: 50px !important;
      min-height: 50px !important;
    }
  
    .template-product .product-form__action-wrapper > quantity-selector.quantity-selector,
    .template-product .product-form__action-wrapper > .quantity-selector,
    .template-product .product-form__action-wrapper > .product-form--atc-button,
    .template-product .product-form__action-wrapper > .atc-button--checkout,
    .template-product .product-form__action-wrapper > .shopify-payment-button__button {
      height: 48px !important;
      min-height: 48px !important;
    }
  
  }
  
  @media (min-width: 768px) and (max-width: 1024px) {
    .template-product .quantity-selector,
    .template-product .product-form--atc-button,
    .template-product .shopify-payment-button__button,
    .template-product .atc-button--checkout {
      height: 44px !important;
      min-height: 44px !important;
    }
  
    .template-product .product-form--buy-now-button {
      height: 48px !important;
      min-height: 48px !important;
    }
  }
  
  /* Phone/tablet landscape: width is often >767px, so do not use max-width:767 only.
     Checkout link: +2px vs Add to cart (50px below 768, 46px at 768–1024). */
  @media (max-width: 1024px) and (orientation: landscape) {
    .template-product .product-form__action-wrapper > .atc-button--checkout {
      box-sizing: border-box !important;
      display: flex !important;
      align-items: center !important;
      justify-content: center !important;
      line-height: 1 !important;
      padding: 0 20px !important;
    }
  }
  
  @media (max-width: 767px) and (orientation: landscape) {
    .template-product .product-form__action-wrapper > .atc-button--checkout {
      height: 50px !important;
      min-height: 50px !important;
    }
  }
  
  @media (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
    .template-product .product-form__action-wrapper > .atc-button--checkout {
      height: 46px !important;
      min-height: 46px !important;
    }
  }
  
  /* Keep ATC drawer buttons on one row on mobile across all pages */
  @media (max-width: 719px) {
    .atc-banner--cart {
      margin-top: 1.25rem !important;
    }
  
    .atc--product {
      margin-top: 0.85rem !important;
    }
  
    .atc-banner--container .atc--product-details--title {
      line-height: 1.2 !important;
    }
  
    .atc-banner--cart-subtotal {
      display: flex !important;
      flex-direction: row !important;
      align-items: baseline !important;
      justify-content: space-between !important;
      gap: 12px !important;
      margin-top: 0 !important;
      margin-bottom: 0 !important;
      padding-top: 0 !important;
      border-top: none !important;
    }
  
    .atc-subtotal--label {
      flex: 0 1 auto;
      margin: 0 !important;
    }
  
    .atc-subtotal--price {
      flex: 0 0 auto;
      display: block !important;
      margin-left: 0 !important;
      text-align: right !important;
    }
  
    .atc-banner--cart-footer {
      display: grid !important;
      grid-template-columns: 1fr !important;
      gap: 6px !important;
      margin-top: 0.5rem !important;
    }
  
    .atc-banner--cart-footer > .priority-processing-upsell {
      grid-row: 1 !important;
      grid-column: 1 / -1 !important;
      margin: 0 !important;
      min-width: 0 !important;
      width: 100% !important;
      align-self: stretch !important;
    }
  
    .atc-banner--cart-footer > a.atc-button--viewcart,
    .atc-banner--cart-footer > form {
      grid-row: 2 !important;
      grid-column: 1 / -1 !important;
      margin: 0 !important;
      min-width: 0 !important;
      width: 100% !important;
    }
  
    .atc-banner--cart-footer > form .atc-button--checkout,
    .template-product .atc-banner--cart-footer .atc-button--checkout {
      margin-top: 0 !important;
    }
  
    .atc-banner--cart-footer .atc-button--viewcart,
    .atc-banner--cart-footer .atc-button--checkout {
      white-space: nowrap !important;
      height: 48px !important;
      min-height: 48px !important;
      padding-top: 0 !important;
      padding-bottom: 0 !important;
      line-height: 1 !important;
      box-sizing: border-box !important;
    }
  
    .atc-banner--cart-footer > form {
      height: 48px !important;
      min-height: 48px !important;
    }
  
    .atc-banner--cart-footer > form .atc-button--checkout {
      height: 100% !important;
      min-height: 100% !important;
    }
  
    .atc-banner--container[data-animation-state=open] .atc-banner--outer {
      animation: pmAtcScaleIn 220ms cubic-bezier(0.22, 1, 0.36, 1) both;
      transform-origin: top center;
    }
  
    @keyframes pmAtcScaleIn {
      from {
        transform: scale(1.02);
      }
      to {
        transform: scale(1);
      }
    }
  
    .atc-banner--cart-footer .atc-button--checkout:active {
      filter: brightness(0.94);
    }
  }
  
  /* ATC drawer — landscape-phone layouts (540px-tier + iPhone SE
     extra-compact tier) live in `assets/custom-overrides.css(.liquid)`
     so this file stays under Shopify's 256 KB per-liquid-file limit.
     Search "ATC drawer — landscape-phone layouts" in that file. */
  
  
  button,
  input[type="submit"],
  input[type="button"],
  .button,
  .btn,
  [class*="button"],
  [class*="btn"],
  a[role="button"],
  a[class*="button"],
  a[class*="btn"] {
    border-radius: 999px !important;
  }

  /* Judge.me modal wrap — block global [class*="btn"] pill leak (jm-mfp-close-btn-in) */
  body .jm-mfp-wrap,
  body .jm-mfp-wrap.jm-mfp-close-btn-in {
    border-radius: 0 !important;
    -webkit-border-radius: 0 !important;
    clip-path: none !important;
    -webkit-clip-path: none !important;
  }
  
  /* Search bubble shape: square left, rounded right (all breakpoints) */
  button[aria-label*="search" i],
  a[aria-label*="search" i],
  .live-search-button,
  .site-header button[title*="search" i],
  .site-mobile-nav button[title*="search" i],
  .navigation-drawer button[title*="search" i] {
    border-radius: 0 999px 999px 0 !important;
    -webkit-border-radius: 0 999px 999px 0 !important;
  }
  
  .mobile-text a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 240px !important;
    max-width: 70% !important;
    box-sizing: border-box !important;
    border-radius: 999px !important;
    -webkit-border-radius: 999px !important;
    overflow: hidden !important;
    clip-path: inset(0 round 999px);
  }
  
  @media (min-width: 768px) {
    [id*="dynamic_highlights_banner"] a[href*="/collections/all-full-print"],
    .highlights-banner__container a[href*="/collections/all-full-print"] {
      display: inline-flex !important;
      align-items: center !important;
      justify-content: center !important;
      border-radius: 999px !important;
      -webkit-border-radius: 999px !important;
      overflow: hidden !important;
      clip-path: inset(0 round 999px);
    }
  }
  
  /* === Global Apple Typography === */
  
  body {
    font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display",
                 "SF Pro Text", Inter, sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  
  h1, h2, h3, h4, h5, h6 {
    font-family: inherit;
  }
  
  /* Product recently viewed: match standard section width/gutters */
  .template-product .product-recently-viewed__wrapper {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  
  .template-product .product-recently-viewed__content {
    width: 100% !important;
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  
  /* Product recently viewed: no edge fade */
  .template-product .product-recently-viewed--section .flickity-viewport::before,
  .template-product .product-recently-viewed--section .flickity-viewport::after {
    display: none !important;
    content: none !important;
  }
  
  /* Mobile: native iOS-style horizontal scroll (Apple.com pattern) */
  @media (max-width: 859px) {
    .template-product .product-recently-viewed__content--native {
      display: flex !important;
      flex-wrap: nowrap !important;
      overflow-x: auto !important;
      overflow-y: hidden !important;
      -webkit-overflow-scrolling: touch;
      scroll-snap-type: x mandatory;
      scroll-padding-inline: 0;
      overscroll-behavior-x: contain;
      touch-action: pan-x pan-y;
      scrollbar-width: none;
      -ms-overflow-style: none;
    }
  
    .template-product .product-recently-viewed__content--native::-webkit-scrollbar {
      display: none;
    }
  
    .template-product .product-recently-viewed__content--native > .product-recently-viewed-card,
    .template-product .product-recently-viewed__content--native > .productgrid--item {
      flex: 0 0 auto;
      scroll-snap-align: start;
      scroll-snap-stop: normal;
    }
  }
  
  /* Product FAQ accordion: keep + icon from overlapping question text */
  .faq-bodySec h2 {
    padding-right: 52px !important;
    box-sizing: border-box !important;
  }
  
  .faq-bodySec h2::after {
    top: 50% !important;
    right: 20px !important;
    transform: translateY(-50%) !important;
    width: 1em !important;
    text-align: center !important;
  }
  
  /* SEO page template — shared trust logo strip (page-seo-page only) */
  body.page-seo-page .pm-seo-trust-logos {
    width: 100%;
    max-width: 1120px;
    margin: 28px auto 44px;
    padding: 0;
    box-sizing: border-box;
  }
  
  body.page-seo-page .pm-seo-trust-logos__card {
    background: var(--pm-card);
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 16px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.04);
    padding: 22px 48px 10px;
    text-align: center;
  }
  
  body.page-seo-page .pm-seo-trust-logos__heading {
    margin: 0;
    font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", Inter, sans-serif;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: #777;
  }
  
  body.page-seo-page .pm-seo-trust-logos__list {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: space-between;
    gap: 36px;
    margin: -4px 0 0;
    padding: 0;
    list-style: none;
  }
  
  body.page-seo-page .pm-seo-trust-logos__list > li {
    display: flex;
    flex: 1 1 0;
    align-items: center;
    justify-content: center;
    min-width: 0;
    height: auto;
    min-height: 0;
    padding: 0;
    background: transparent;
    border: 0;
  }
  
  body.page-seo-page .pm-seo-trust-logos__logo {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 96px;
    object-fit: contain;
    background: transparent;
    border: 0;
    mix-blend-mode: multiply;
    filter: grayscale(100%) contrast(1.06);
    opacity: 0.88;
  }
  
  body.page-seo-page .pm-seo-trust-logos__logo--wide {
    max-height: 84px;
  }
  
  body.page-seo-page .pm-seo-trust-logos__logo--prime {
    max-height: 72px;
    opacity: 0.9;
  }
  
  body.page-seo-page .page-content.rte.page-content--intro,
  body.page-seo-page .page-content--intro {
    max-width: 700px !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-bottom: 0 !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    box-sizing: border-box !important;
    text-align: center !important;
    line-height: 1.6;
  }
  
  body.page-seo-page .page-content.rte.page-content--intro p,
  body.page-seo-page .page-content--intro p,
  body.page-seo-page .page-content--intro > p {
    text-align: center !important;
    line-height: 1.6;
  }
  
  body.page-seo-page .page-content--intro > p:last-child {
    margin-bottom: 0 !important;
  }
  
  body.page-seo-page .page-content.rte.page-content--body,
  body.page-seo-page .page-content--body {
    margin-top: 0 !important;
    text-align: left !important;
  }
  
  @media (max-width: 767px) {
    body.page-seo-page .page-masthead .page-title,
    body.page-seo-page .page-masthead h1.page-title {
      font-size: 32px !important;
      line-height: 1.15 !important;
      font-weight: 600 !important;
      text-align: center !important;
    }
  
    body.page-seo-page .page-content.rte.page-content--intro,
    body.page-seo-page .page-content--intro {
      max-width: 700px !important;
      width: 100% !important;
      margin-left: auto !important;
      margin-right: auto !important;
      text-align: center !important;
    }
  
    body.page-seo-page .page-content.rte.page-content--intro p,
    body.page-seo-page .page-content--intro p,
    body.page-seo-page .page-content--intro > p {
      text-align: center !important;
    }
  }
  
  body.page-seo-page .page-content--body > h2:first-child {
    margin-top: 0 !important;
  }
  
  @media (min-width: 768px) and (max-width: 1023px) {
    body.page-seo-page .pm-seo-trust-logos {
      max-width: 1120px;
      padding: 0 20px;
    }
  
    body.page-seo-page .pm-seo-trust-logos__card {
      padding: 18px 32px 4px;
    }
  
    body.page-seo-page .pm-seo-trust-logos__list {
      gap: 28px;
    }
  
    body.page-seo-page .pm-seo-trust-logos__logo {
      max-height: 88px;
    }
  
    body.page-seo-page .pm-seo-trust-logos__logo--wide {
      max-height: 76px;
    }
  
    body.page-seo-page .pm-seo-trust-logos__logo--prime {
      max-height: 64px;
    }
  }
  
  @media (max-width: 767px) {
    body.page-seo-page .pm-seo-trust-logos {
      max-width: 100%;
      margin: 16px auto 24px;
      padding: 0 16px;
      overflow: visible;
    }
  
    body.page-seo-page .pm-seo-trust-logos__card {
      padding: 20px 18px;
      border-radius: 14px;
      overflow: visible;
    }
  
    body.page-seo-page .pm-seo-trust-logos__heading {
      margin: 0 0 14px;
      font-size: 10px;
      letter-spacing: 0.12em;
      line-height: 1.25;
    }
  
    body.page-seo-page .pm-seo-trust-logos__list {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 8px 10px;
      justify-items: center;
      align-items: center;
      margin: 0;
      width: 100%;
      overflow: visible;
    }
  
    body.page-seo-page .pm-seo-trust-logos__list > li {
      display: flex;
      flex: none;
      align-items: center;
      justify-content: center;
      width: 100%;
      max-width: 100%;
      min-height: 0;
      height: auto;
      padding: 0 !important;
      margin: 0 !important;
      background: none !important;
      background-color: transparent !important;
      border: 0;
      box-shadow: none !important;
    }
  
    body.page-seo-page .pm-seo-trust-logos__logo {
      display: block;
      max-height: 46px !important;
      max-width: 100% !important;
      width: auto !important;
      height: auto !important;
      object-fit: contain;
      padding: 0 !important;
      margin: 0 !important;
      background: none !important;
      background-color: transparent !important;
      border: 0;
      box-shadow: none !important;
      mix-blend-mode: multiply;
      -webkit-mix-blend-mode: multiply;
      /* iOS Safari bakes white JPG backgrounds when filter + multiply are combined */
      -webkit-filter: none !important;
      filter: none !important;
      opacity: 0.9;
    }
  
    body.page-seo-page .pm-seo-trust-logos__logo--wide,
    body.page-seo-page .pm-seo-trust-logos__logo--prime {
      max-height: 46px !important;
      max-width: 100% !important;
      opacity: 0.9;
    }
  }
  
  /* SEO page template — From the Journal (3 articles, responsive grid) */
  body.page-seo-page .pm-prod-guides__list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 32px;
  }
  
  @media (min-width: 769px) and (max-width: 1024px) {
    body.page-seo-page .pm-prod-guides__list {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  
  @media (max-width: 768px) {
    body.page-seo-page .pm-prod-guides__list {
      grid-template-columns: 1fr;
    }
  }
  
  /* Homepage only — fake money SEO card (links to /pages/fake-money) */
  body.template-index .pm-home-fake-money-seo {
    padding: 0 16px;
    margin: 36px auto 44px;
    box-sizing: border-box;
  }
  
  body.template-index .pm-home-fake-money-seo__wrap {
    width: 100%;
    max-width: 1120px;
    margin: 0 auto;
  }
  
  body.template-index .pm-home-fake-money-seo__card {
    background: var(--pm-card);
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 16px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.04);
    padding: 22px 40px 26px;
    text-align: center;
  }
  
  body.template-index .pm-home-fake-money-seo__eyebrow {
    margin: 0 0 8px;
    font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", Inter, sans-serif;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: #777;
  }
  
  body.template-index .pm-home-fake-money-seo__heading {
    margin: 0 0 10px;
    font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", Inter, sans-serif;
    font-size: clamp(1.35rem, 2.8vw, 1.75rem);
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -0.02em;
    color: #121212;
  }
  
  body.template-index .pm-home-fake-money-seo__heading-link {
    color: inherit;
    text-decoration: none;
    transition: opacity 0.18s ease;
  }
  
  body.template-index .pm-home-fake-money-seo__heading-link:hover,
  body.template-index .pm-home-fake-money-seo__heading-link:focus-visible {
    opacity: 0.72;
    color: inherit;
  }
  
  body.template-index .pm-home-fake-money-seo__body {
    max-width: 660px;
    margin: 0 auto 16px;
    font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", Inter, sans-serif;
    font-size: 15px;
    line-height: 1.55;
    color: rgba(0, 0, 0, 0.72);
  }
  
  body.template-index .pm-home-fake-money-seo__cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 200px;
    padding: 11px 26px;
    border-radius: 999px;
    background: #1d1d1d;
    color: #fff;
    font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", Inter, sans-serif;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.2;
    text-decoration: none;
    transition: opacity 0.18s ease;
  }
  
  body.template-index .pm-home-fake-money-seo__cta:hover,
  body.template-index .pm-home-fake-money-seo__cta:focus-visible {
    opacity: 0.88;
    color: #fff;
  }
  
  @media (max-width: 767px) {
    body.template-index .pm-home-fake-money-seo {
      padding: 0 12px;
      margin: 28px auto 36px;
    }
  
    body.template-index .pm-home-fake-money-seo__card {
      padding: 18px 18px 20px;
      border-radius: 14px;
    }
  
    body.template-index .pm-home-fake-money-seo__eyebrow {
      margin-bottom: 6px;
      font-size: 10px;
    }
  
    body.template-index .pm-home-fake-money-seo__body {
      font-size: 14px;
      margin-bottom: 14px;
    }
  
    body.template-index .pm-home-fake-money-seo__cta {
      min-width: 180px;
      width: 100%;
      max-width: 280px;
    }
  }
  
  /* ============================================================
     Blog/article thumbnails — 2:1 aspect, full image visible (no crop)
     Cards, grids, featured blog sections, related posts, journal previews.
     ============================================================ */
  .article--excerpt-image:not(.placeholder--image),
  .blogposts--container .article--excerpt-image:not(.placeholder--image),
  .pm-prod-guides__media,
  .pm-home-journal__featured-media,
  .article--inner .pm-related__image {
    aspect-ratio: 2 / 1 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: hidden !important;
  }
  
  .article--excerpt-image:not(.placeholder--image) img,
  .article--excerpt-image:not(.placeholder--image) img[data-rimg],
  .article--excerpt-image:not(.placeholder--image) img[data-rimg=loaded],
  .blogposts--container .article--excerpt-image img,
  .pm-prod-guides__media img,
  .pm-home-journal__featured-media img,
  .article--inner .pm-related__image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center !important;
  }
  
  .article--excerpt-image:not(.placeholder--image) [data-rimg-canvas],
  .article--inner .pm-related__image [data-rimg-canvas] {
    background-size: contain !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
  }
  