/** Shopify CDN: Minification failed

Line 4264:10 Expected identifier but found whitespace
Line 4264:11 Unexpected "0"

**/
  /* Homepage As Seen On heading */
  body.template-index .marquee-title {
    font-family: Inter, -apple-system, system-ui, sans-serif !important;
    font-size: 26px !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    text-align: center !important;
    margin: 40px 0 20px !important;
    color: #1d1d1f !important;
  }

  @media (max-width: 767px) {
    section.marquee-container {
      margin-top: 28px !important;
      padding: 10px 0 6px !important; /* reduced gap under logos */
    }

    body.template-index .marquee-title {
      font-size: 24px !important;
      line-height: 1.15 !important;
      margin: 0 0 14px !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 #d2d2d7 !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 52px !important;
    width: 52px !important;
    min-width: 44px !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    color: #1d1d1f !important;
    text-align: center !important;
    background: transparent !important;
    border: none !important;
    -webkit-appearance: textfield !important;
    appearance: textfield !important;
    opacity: 1 !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 {
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 40px !important;
  }

  .template-product .gallery-navigation--scroller {
    margin-bottom: 0 !important;
  }

  /* Round thumbnail selector outline */
  .product-gallery--media-thumbnail[aria-current="true"],
  .product-gallery--media-thumbnail[aria-selected="true"] {
    border-radius: 10px !important;
    overflow: hidden;
  }

  .product-gallery--media-thumbnail.is-selected {
    border-radius: 10px !important;
  }

  /* Round the thumbnail button + active state */
  .gallery-navigation--scroller button {
    border-radius: 12px !important;
    overflow: hidden;
  }

  .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: 12px !important;
  }

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

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

  /* Quick shop modal: tighter, premium styling using the theme's real selectors */
  .modal--quickshop-slim .modal-inner {
    border-radius: 20px !important;
    overflow: hidden !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);
  }

  /* Mobile quick shop: theme header is z-index 1110 vs modal ~700, so it paints on top.
     Hide top chrome and lift the overlay while the slim quick shop is open. */
  @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 {
      z-index: 1200 !important;
    }

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

  .modal--quickshop-slim .product-form--atc {
    margin-top: 0 !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 .options-selection__select-label {
    display: none !important;
  }

  .modal--quickshop-slim .options-selection__input-select-wrapper {
    position: relative !important;
    width: 100% !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 #e5e5e5 !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: #1d1d1d !important;
    font-weight: 500 !important;
  }

  .modal--quickshop-slim .options-selection__input-select:focus {
    border-color: #d6d6d6 !important;
    box-shadow: 0 0 0 3px rgba(0,0,0,0.04) !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: #f5f5f5 !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: #ececec !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;
  }

  /* 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: #F6F3ED;
    border-top: 1px solid rgba(0,0,0,0.05);
    border-bottom: 1px solid rgba(0,0,0,0.05);
    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__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 — fixed 4 columns: Prop Money Hub | Support | Made in the USA | Subscribe + Social */
  @media screen and (min-width: 1024px) {
    .site-footer-blocks,
    .site-footer-blocks--fixed,
    .footer__blocks {
      display: grid !important;
      grid-template-columns: 1fr 1fr 1.2fr 1fr;
      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 {
      min-width: 180px;
    }

    .site-footer-column--2 .site-footer-block-item {
      min-width: 180px;
    }

    .site-footer-column--3 .site-footer-block-item {
      min-width: 200px;
      max-width: 240px;
    }

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

    .site-footer-block-menu .navmenu-link,
    .site-footer-block-menu 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-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-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-support .navmenu-item:not(:first-child),
    .site-footer-block-support-menu .navmenu-item:not(:first-child) {
      margin-top: 0.3125rem !important;
    }

  /* Shop by Use rich-text column: visually match footer menu links */
  .site-footer-column--3 .site-footer-block-rich-text .site-footer-block-content.rte p {
    margin: 0 !important;
    line-height: 1.7 !important;
  }

  .site-footer-column--3 .site-footer-block-rich-text .site-footer-block-content.rte p:not(:first-child) {
    margin-top: 0.3125rem !important;
  }

  .site-footer-column--3 .site-footer-block-rich-text .site-footer-block-content.rte a,
  .site-footer-column--3 .site-footer-block-rich-text .site-footer-block-content.rte a:hover,
  .site-footer-column--3 .site-footer-block-rich-text .site-footer-block-content.rte a:focus,
  .site-footer-column--3 .site-footer-block-rich-text .site-footer-block-content.rte a:active,
  .site-footer-column--3 .site-footer-block-rich-text .site-footer-block-content.rte a:visited {
    color: inherit !important;
    text-decoration: none !important;
    font-weight: inherit !important;
  }
  }

  @media screen and (min-width: 1024px) and (max-width: 1199px) {
    .site-footer-blocks,
    .site-footer-blocks--fixed,
    .footer__blocks {
      grid-template-columns: 1fr 1fr 1.1fr 1fr !important;
      gap: 32px !important;
      max-width: 1200px !important;
    }

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

    .site-footer-column--3 .site-footer-block-item {
      min-width: 180px !important;
      max-width: 220px !important;
    }

    .site-footer-column--4 .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 {
    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 {
      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;
  }

@media (max-width: 1024px) and (orientation: landscape) {
  .recart-button,
  .recart-widget,
  #recart-widget-container {
    bottom: 80px !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 elevated break above footer (site-wide) */
  .site-footer-wrapper {
    margin-top: 0 !important;
    border-top: 1px solid rgba(29, 29, 29, 0.06) !important;
    box-shadow: 0 -18px 40px rgba(29, 29, 29, 0.035) !important;
  }

  .site-footer-wrapper,
  .site-footer {
    padding-top: 60px !important;
    padding-bottom: 24px;
  }

  .site-footer-information {
    margin-top: 48px !important;
  }

  /* Footer bottom bar — flex container, SAM (left) | Copyright (center) | Legal (right), aligned on same center line */
  .site-footer-bottom {
    border-top: 1px solid rgba(29, 29, 29, 0.15);
    margin-top: 80px;
    padding-top: 56px;
  }

  .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: center;
  }

  .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-sam-badge img {
    width: 180px !important;
    height: auto !important;
    display: block !important;
    margin: 0 !important;
    vertical-align: middle;
  }

  .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;
    }

    .site-footer-sam-badge img {
      max-height: 52px !important;
      width: auto !important;
      height: auto !important;
    }
  }

  /* ===== 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;
    }
  }

  @media (min-width:1024px){
    /* Homepage poster marquee only (full-bleed desktop strip) */
    body.template-index section.logolist--container.poster-marquee-target{
      position: relative;
      left: 50%;
      width: 100vw;
      max-width: none !important;
      margin-left: -50vw;
      padding: 92px 0 0;
      overflow-x: hidden;
      overflow-y: visible;
    }

    body.template-index section.logolist--container.poster-marquee-target .home-section--title{
      max-width: 1200px;
      margin: 0 auto 40px !important;
      padding: 0 24px;
      box-sizing: border-box;
      text-align: center;
    }
    body.template-index section.logolist--container.poster-marquee-target .as-seen-header{
      text-align:center;
      max-width:1200px;
      margin:0 auto 32px !important;
      padding:0 24px;
      box-sizing:border-box;
    }
    body.template-index section.logolist--container.poster-marquee-target .as-seen-title{
      text-align:center;
      margin:0 0 12px 0;
    }
    body.template-index section.logolist--container.poster-marquee-target .as-seen-cta{
      display:inline-block;
      font-size:14px;
      font-weight:500;
      text-decoration:none;
      color:#6e6e73;
      transition:color 0.2s ease;
    }
    body.template-index section.logolist--container.poster-marquee-target .as-seen-cta:visited,
    body.template-index section.logolist--container.poster-marquee-target .as-seen-cta:active{
      color:#6e6e73;
      text-decoration:none;
    }
    body.template-index section.logolist--container.poster-marquee-target .as-seen-cta:hover{
      color:#1d1d1f;
    }

    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner.pxu-lia-block,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner.pxu-lia-block.pxu-lia-block--play{
      display:flex !important;
      flex-wrap:nowrap !important;
      overflow-x: auto !important;
      overflow-y: visible !important;
      scroll-behavior:auto;
      gap:28px !important;
      width: 100%;
      max-width: none !important;
      padding: 20px 40px 28px !important;
      margin:0 !important;
      scrollbar-width:none;
      -ms-overflow-style:none;
      box-sizing: border-box;
    }

    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner::-webkit-scrollbar,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner.pxu-lia-block::-webkit-scrollbar,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner.pxu-lia-block.pxu-lia-block--play::-webkit-scrollbar{
      display:none;
    }

    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner > *,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner.pxu-lia-block > *,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner.pxu-lia-block.pxu-lia-block--play > *,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner .logolist--item,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner.pxu-lia-block .logolist--item,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner.pxu-lia-block.pxu-lia-block--play .logolist--item{
      flex:0 0 340px !important;
      width:auto !important;
      margin:0 !important;
    }

    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner .logolist--image,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner.pxu-lia-block .logolist--image,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner.pxu-lia-block.pxu-lia-block--play .logolist--image{
      width:100% !important;
      max-width:none !important;
      max-height:none !important;
      height:auto !important;
      aspect-ratio:2/3 !important;
      object-fit:cover !important;
      border-radius:16px !important;
      display:block !important;
    }
  }

  /* Mobile landscape: match desktop marquee behavior */
  @media (orientation: landscape) and (max-width: 1023px) and (max-height: 600px) {
    body.template-index section.logolist--container.poster-marquee-target{
      position: relative;
      left: 50%;
      width: 100vw;
      max-width: none !important;
      margin-left: -50vw;
      padding: 92px 0 0;
      overflow-x: hidden;
      overflow-y: visible;
    }

    body.template-index section.logolist--container.poster-marquee-target .home-section--title{
      max-width: 1200px;
      margin: 0 auto 40px !important;
      padding: 0 24px;
      box-sizing: border-box;
      text-align: center;
    }
    body.template-index section.logolist--container.poster-marquee-target .as-seen-header{
      text-align:center;
      max-width:1200px;
      margin:0 auto 32px !important;
      padding:0 24px;
      box-sizing:border-box;
    }
    body.template-index section.logolist--container.poster-marquee-target .as-seen-title{
      text-align:center;
      margin:0 0 12px 0;
    }
    body.template-index section.logolist--container.poster-marquee-target .as-seen-cta{
      display:inline-block;
      font-size:14px;
      font-weight:500;
      text-decoration:none;
      color:#6e6e73;
      transition:color 0.2s ease;
    }
    body.template-index section.logolist--container.poster-marquee-target .as-seen-cta:visited,
    body.template-index section.logolist--container.poster-marquee-target .as-seen-cta:active{
      color:#6e6e73;
      text-decoration:none;
    }
    body.template-index section.logolist--container.poster-marquee-target .as-seen-cta:hover{
      color:#1d1d1f;
    }

    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner.pxu-lia-block,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner.pxu-lia-block.pxu-lia-block--play{
      display:flex !important;
      flex-wrap:nowrap !important;
      overflow-x: auto !important;
      overflow-y: visible !important;
      scroll-behavior:auto;
      gap:28px !important;
      width: 100%;
      max-width: none !important;
      padding: 20px 40px 28px !important;
      margin:0 !important;
      scrollbar-width:none;
      -ms-overflow-style:none;
      box-sizing: border-box;
    }

    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner::-webkit-scrollbar,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner.pxu-lia-block::-webkit-scrollbar,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner.pxu-lia-block.pxu-lia-block--play::-webkit-scrollbar{
      display:none;
    }

    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner > *,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner.pxu-lia-block > *,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner.pxu-lia-block.pxu-lia-block--play > *,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner .logolist--item,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner.pxu-lia-block .logolist--item,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner.pxu-lia-block.pxu-lia-block--play .logolist--item{
      flex:0 0 220px !important;
      width:auto !important;
      margin:0 !important;
    }

    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner .logolist--image,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner.pxu-lia-block .logolist--image,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner.pxu-lia-block.pxu-lia-block--play .logolist--image{
      width:100% !important;
      max-width:none !important;
      max-height:none !important;
      height:auto !important;
      aspect-ratio:2/3 !important;
      object-fit:cover !important;
      border-radius:16px !important;
      display:block !important;
    }
  }

  @media (max-width: 768px) {
    body.template-index section.logolist--container.poster-marquee-target .as-seen-header{
      text-align:center;
      margin-bottom:24px !important;
    }
    body.template-index section.logolist--container.poster-marquee-target .as-seen-title{
      font-size:20px;
      text-align:center;
    }
    body.template-index section.logolist--container.poster-marquee-target .as-seen-cta{
      display:block;
      text-align:center;
      margin:6px auto 0;
      font-size:13px;
    }
    body.template-index section.logolist--container.poster-marquee-target .as-seen-cta:link,
    body.template-index section.logolist--container.poster-marquee-target .as-seen-cta:visited,
    body.template-index section.logolist--container.poster-marquee-target .as-seen-cta:active,
    body.template-index section.logolist--container.poster-marquee-target .as-seen-cta:focus,
    body.template-index section.logolist--container.poster-marquee-target .as-seen-cta:hover{
      color:#6e6e73 !important;
      text-decoration:none !important;
    }
  }

  /* Tablet portrait/landscape: keep homepage posters as auto-scrolling marquee */
  @media (min-width: 768px) and (max-width: 1023px) {
    body.template-index section.logolist--container.poster-marquee-target{
      position: relative;
      left: 50%;
      width: 100vw;
      max-width: none !important;
      margin-left: -50vw;
      padding: 92px 0 0;
      overflow-x: hidden;
      overflow-y: visible;
    }

    body.template-index section.logolist--container.poster-marquee-target .as-seen-header{
      text-align:center;
      max-width:1200px;
      margin:0 auto 28px !important;
      padding:0 24px;
      box-sizing:border-box;
    }

    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner.pxu-lia-block,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner.pxu-lia-block.pxu-lia-block--play{
      display:flex !important;
      flex-wrap:nowrap !important;
      overflow-x: auto !important;
      overflow-y: visible !important;
      scroll-behavior:auto;
      gap:24px !important;
      width: 100%;
      max-width: none !important;
      padding: 20px 28px 24px !important;
      margin:0 !important;
      scrollbar-width:none;
      -ms-overflow-style:none;
      box-sizing: border-box;
    }

    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner::-webkit-scrollbar,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner.pxu-lia-block::-webkit-scrollbar,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner.pxu-lia-block.pxu-lia-block--play::-webkit-scrollbar{
      display:none;
    }

    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner > *,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner.pxu-lia-block > *,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner.pxu-lia-block.pxu-lia-block--play > *,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner .logolist--item,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner.pxu-lia-block .logolist--item,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner.pxu-lia-block.pxu-lia-block--play .logolist--item{
      flex:0 0 260px !important;
      width:auto !important;
      margin:0 !important;
    }

    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner .logolist--image,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner.pxu-lia-block .logolist--image,
    body.template-index section.logolist--container.poster-marquee-target .home-section--content.logolist--inner.pxu-lia-block.pxu-lia-block--play .logolist--image{
      width:100% !important;
      max-width:none !important;
      max-height:none !important;
      height:auto !important;
      aspect-ratio:2/3 !important;
      object-fit:cover !important;
      border-radius:16px !important;
      display:block !important;
    }
  }

  /* 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;
    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;
    opacity: 0.72;
  }

  @media (min-width: 1024px) {
    .site-navigation .navmenu-submenu.navmenu-meganav[data-animation-state="open"]
    .navmenu-meganav-wrapper:not(.meganav-ghost) {
      box-shadow: 0 22px 52px rgba(17, 29, 31, 0.08);
      border: none !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 */
  [class*="jdgm"][class*="modal"],
  [class*="jdgm"][class*="lightbox"],
  [class*="jdgm"][class*="popup"],
  [class*="jdgm-rev"] [class*="modal"],
  [class*="jdgm-rev"] [class*="lightbox"],
  [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 */
  [class*="jdgm"][class*="modal"] > div,
  [class*="jdgm"][class*="modal"] > section,
  [class*="jdgm"][class*="lightbox"] > div,
  [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*="jdgm"] [class*="modal"] [class*="content"],
  [class*="jdgm"] [class*="modal"] [class*="body"],
  [class*="jdgm"] [class*="modal"] [class*="sidebar"],
  [class*="jdgm"] [class*="lightbox"] [class*="content"],
  [class*="jdgm"] [class*="lightbox"] [class*="body"],
  [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/Judge.me) */
  [class*="jdgm"][class*="modal"] > div > *:last-child,
  [class*="jdgm"][class*="modal"] > * > *:last-child,
  [class*="jdgm"][class*="lightbox"] > div > *:last-child,
  [class*="jdgm"][class*="lightbox"] > * > *:last-child,
  [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*="jdgm"][class*="modal"] > div > *:first-child,
  [class*="jdgm"][class*="lightbox"] > div > *:first-child,
  [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*="jdgm"][class*="modal"] > div > *:last-child,
  [class*="jdgm"][class*="lightbox"] > div > *:last-child,
  [class*="stamped"][class*="modal"] > div > *:last-child,
  [class*="ugc"][class*="modal"] > div > *:last-child {
    margin-left: 28px !important;
  }

  /* Judge.me review lightbox: target exact classes - override padding: 28px 0px */
  .jdgm-rev.jdgm-divider-top {
    padding: 28px 28px !important;
  }
  .jdgm-rev_content {
    padding-left: 28px !important;
    padding-right: 28px !important;
    box-sizing: border-box !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;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !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: #f5f5f7;
    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;
    }
  }

  /* Reduce white space above "Realistic Prop Money" on mobile portrait */
  @media (max-width: 767px) and (orientation: portrait) {
    body.template-index .custom-html--container {
      margin-top: 1rem !important;
    }
    body.template-index .custom-html--container .home-section--title,
    body.template-index .custom-html--container h1 {
      margin-top: 0 !important;
    }
  }

  /* Reduce white space under logos / above product image ("As Seen On") on mobile */
  @media (max-width: 767px) {
    body.template-index main .custom-liquid--container {
      margin-top: 1.25rem !important;
    }
  }

  /* Mobile hero image — fixed pixel cap, no vh */
  @media (max-width: 768px) {
    .media-container {
      max-height: 440px;
      overflow: hidden;
    }
    .realaged-mobile-image {
      width: 100%;
      height: auto;
      max-height: 440px;
      object-fit: cover;
    }
  }

  /* Shoppable image — consistent rounded corners, image controls height (no crop) */
  .shoppable-image__wrapper {
    border-radius: 16px;
    overflow: hidden;
  }
  .shoppable-image__image {
    width: 100%;
    height: auto;
    display: block;
    object-fit: contain;
  }

  /* Remove empty app spacer section on homepage */
  body.template-index section[id*="app_container_empty_space"],
  body.template-index section[id*="app_sct_container_empty_space"],
  body.template-index section[id*="__app_"][id*="empty_space"] {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
  }

  @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 only + mobile landscape only: preserve poster proportions */
  @media (max-width: 900px) 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: 8px !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: 160px !important;
      height: auto !important;
      margin-right: 8px !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: 160px !important;
      height: auto !important;
      max-width: 160px !important;
      margin-right: 0 !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 {
      width: 100% !important;
      height: auto !important;
      max-width: 100% !important;
      max-height: none !important;
      aspect-ratio: auto !important;
      object-fit: contain !important;
      object-position: center top !important;
    }

  }

  @media (max-width: 767px) {
    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"],
    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"] {
      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: 26px !important;
      padding-top: 12px !important;
      padding-bottom: 6px !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;
}

/* Keep Bulk Orders bold in footer menu only */
.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 {
  font-weight: 700 !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: 10px;
  --footer-rhythm-sm: 6px;
  --footer-title-body-gap: 8px;
  /* Slightly tighter than rhythm: pulls border-bottom dividers up vs content */
  --footer-block-pad-y: calc(var(--footer-rhythm) - 3px);
}

@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: Made in the USA + Subscribe (no rule between them) */
  footer .site-footer-column--3 .site-footer-block-rich-text.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;
  }
}

/* SAM.gov: text variant hidden on desktop; logo visible */
footer .samgov-mobile {
  display: none;
}

/*
 * 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: 768px) {
  footer.legacy-site-footer {
    display: none !important;
  }

  /* Mobile footer redesign: warm stone shell (#F2EFEA) */
  .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: #f2efea !important;
  }

  body.page-bulk-orders .shopify-section-group-footer-group,
  body.page-bulk-orders footer[role="contentinfo"],
  body.page-bulk-orders section.site-footer-wrapper {
    background: #f2efea !important;
  }

  footer.legacy-site-footer .site-footer-wrapper {
    background: #f2efea !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;
  }
}

/* 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;
}

/* 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;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !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 {
    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;
  }

  /* 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: 29.4px !important;
    width: auto !important;
    max-width: min(210px, 57.75vw) !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 !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 !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 !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 !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 .mobile-nav-auxiliary .navmenu-link:active,
  #site-mobile-nav .mobile-nav-panel .mobile-nav-content__secondary-menu .navmenu-link:active {
    opacity: 0.88 !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 .navmenu-depth-2 .navmenu-link:active,
  #site-mobile-nav .mobile-nav-panel .navmenu-depth-1 > .navmenu-item > .navmenu-link:active {
    opacity: 0.88 !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;
  }

  #site-mobile-nav .mobile-nav-panel .navmenu-button:active {
    opacity: 0.75 !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) {
  .featured-collection__content {
    display: flex !important;
    overflow-x: auto !important;
    gap: 12px;
    padding-left: 16px;
    scroll-snap-type: x mandatory;
  }

  .featured-collection__content::-webkit-scrollbar {
    display: none;
  }

  .featured-collection__content .productgrid--item {
    min-width: 75% !important;
    flex: 0 0 auto;
    scroll-snap-align: start;
  }

  /* Fade hint on right */
  .featured-collection__container {
    position: relative;
  }

  .featured-collection__container::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);
  }
}

/*
  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.
  Flickity sets viewport touch-action to pan-y; pan-x pan-y (see product logolist carousels in this file)
  restores vertical page scroll while horizontal drag still works.
*/
@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 {
    touch-action: pan-x pan-y pinch-zoom !important;
    overflow: hidden !important;
  }
}

/* Standard pages — title typography (spacing: block at file bottom) */
.template-page h1,
.template-page .page-title {
  font-size: 36px !important;
  font-weight: 600 !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 {
  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;
}

/* 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: #f5f5f5;
  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;
  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);
}

/* 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-menu-block--prop-money-hub.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) {
  /* Prop Money Hub: nudge menu list up slightly */
  footer .site-footer-column--1 .site-footer-block-menu.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: Prop Money Hub / Support / Shop by Use / Subscribe */
  footer .site-footer-column--1 .site-footer-block-item.site-footer-block-menu,
  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-support,
  footer .site-footer-column--2 .site-footer-block-item.site-footer-block-support-menu,
  footer .site-footer-column--3 .site-footer-block-item.site-footer-block-rich-text.has-accordion,
  footer .site-footer-column--4 .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--2 .site-footer-block-menu.has-accordion > .site-footer-block-content,
  footer .site-footer-column--2 .site-footer-block-support.has-accordion > .site-footer-block-content,
  footer .site-footer-column--2 .site-footer-block-support-menu.has-accordion > .site-footer-block-content,
  footer .site-footer-column--3 .site-footer-block-rich-text.has-accordion > .site-footer-block-content.rte,
  footer .site-footer-column--4 .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--2 .site-footer-block-menu .navmenu,
  footer .site-footer-column--2 .site-footer-block-support .navmenu,
  footer .site-footer-column--2 .site-footer-block-support-menu .navmenu {
    margin: 0 !important;
    padding-left: 0 !important;
  }

  footer .site-footer-column--1 .site-footer-block-menu .navmenu-link,
  footer .site-footer-column--2 .site-footer-block-menu .navmenu-link,
  footer .site-footer-column--2 .site-footer-block-support .navmenu-link,
  footer .site-footer-column--2 .site-footer-block-support-menu .navmenu-link,
  footer .site-footer-column--3 .site-footer-block-rich-text.has-accordion .site-footer-block-content.rte a,
  footer .site-footer-column--4 .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--2 .site-footer-block-menu .navmenu-item:not(:first-child),
  footer .site-footer-column--2 .site-footer-block-support .navmenu-item:not(:first-child),
  footer .site-footer-column--2 .site-footer-block-support-menu .navmenu-item:not(:first-child),
  footer .site-footer-column--3 .site-footer-block-rich-text.has-accordion .site-footer-block-content.rte p:not(:first-child),
  footer .site-footer-column--4 .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;
}

/* 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;
}

/* 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: keep Subscribe in col 4 row 1 and Follow Us directly below in row 2.
   Follow Us stays its own section and does not inherit/narrow with Klaviyo field width. */
@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 {
    grid-column: 4 / 5 !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 {
    grid-column: 4 / 5 !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.pm-klaviyo-identified footer:not(.footer-mobile) .site-footer-blocks.column-count-5 .site-footer-block-social-accounts {
    grid-column: 4 / 5 !important;
    grid-row: 1 !important;
    margin-top: 0 !important;
  }
}

/* Desktop legacy footer: keep Follow Us icons in a horizontal row.
   Klaviyo (and similar embeds) can inject column flex on generic footer containers — restore row layout here. */
@media screen and (min-width: 1024px) {
  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: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    align-content: flex-start !important;
    justify-content: flex-start !important;
    gap: 6px !important;
  }

  footer:not(.footer-mobile) .site-footer-block-social-accounts .social-icons.footer-social-icons > a.social-link {
    display: flex !important;
    flex-direction: row !important;
    flex: 0 0 auto !important;
    width: 36px !important;
    min-width: 36px !important;
    max-width: 40px !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;
  }
}

/* ---------------------------------------------------------
   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;
  }
}

/* ---------------------------------------------------------
   /pages/as-seen-on — shrink logos on mobile in the
   "As seen on major networks" and "Trusted by top agencies"
   sections (icons were taking too much vertical space).
   Scoped by unique section IDs so no other page is affected.
   --------------------------------------------------------- */
@media screen and (max-width: 768px) {
  .shopify-section[id*="89d02114-7abb-4567-b663-1c6694848466"] .logolist--item,
  .shopify-section[id*="1a76fee2-82f5-4f70-b5dc-c75c5e128a08"] .logolist--item {
    width: 64px !important;
    height: auto !important;
    margin-top: 0.75rem !important;
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
    overflow: visible !important;
  }
  .shopify-section[id*="89d02114-7abb-4567-b663-1c6694848466"] .logolist--image,
  .shopify-section[id*="1a76fee2-82f5-4f70-b5dc-c75c5e128a08"] .logolist--image {
    max-height: none !important;
    height: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    object-fit: contain !important;
  }
  .shopify-section[id*="89d02114-7abb-4567-b663-1c6694848466"] .logolist--link,
  .shopify-section[id*="1a76fee2-82f5-4f70-b5dc-c75c5e128a08"] .logolist--link {
    display: block !important;
  }
}

/* ---------------------------------------------------------
   /pages/as-seen-on — MOBILE ONLY (≤767px).

   PRODUCTIONS row (10adbca4…): auto-scrolling marquee. JS clones the
   children into a .pm-marquee-track wrapper; CSS keyframe drives the
   translateX(0 → -50%) loop.

   NETWORKS (89d02114…) and AGENCIES (1a76fee2…): static — no marquee,
   no scroll. All icons render in a small centered wrap grid right in
   the section. Existing icon-shrink rules above set the per-item size.

   Desktop (≥768px) and every other page are NOT touched here.
   --------------------------------------------------------- */
@media screen and (max-width: 767px) {
  /* Host = the native horizontal-scroll container. overflow-x: auto lets
     the user swipe manually; JS handles the auto-scroll by incrementing
     scrollLeft each frame. */
  body.page-as-seen-on .shopify-section[id*="10adbca4-31f0-4d71-ab99-f8dd202a1849"] .logolist--inner.pm-marquee-host {
    display: block !important;
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    touch-action: pan-x !important;
    scroll-snap-type: none !important;
    overscroll-behavior-x: contain !important;
    text-align: left !important;
    margin: 0 !important;
    padding: 0 !important;
    scrollbar-width: none !important;
  }
  body.page-as-seen-on .shopify-section[id*="10adbca4-31f0-4d71-ab99-f8dd202a1849"] .logolist--inner.pm-marquee-host::-webkit-scrollbar {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
  }

  /* Track is a single horizontal row. NO CSS animation — JS drives the
     scroll via scrollLeft so manual swipe and auto-scroll co-exist. */
  body.page-as-seen-on .shopify-section[id*="10adbca4-31f0-4d71-ab99-f8dd202a1849"] .pm-marquee-track {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    width: max-content !important;
  }

  /* Force every poster into a uniform 2:3 box so varying source aspect
     ratios all align cleanly. object-fit: contain letterboxes any
     non-2:3 source without cropping it. */
  body.page-as-seen-on .shopify-section[id*="10adbca4-31f0-4d71-ab99-f8dd202a1849"] .pm-marquee-track .logolist--item {
    flex: 0 0 auto !important;
    width: 150px !important;
    height: 220px !important;
    margin: 0 8px !important;
    align-self: center !important;
    top: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
  }

  body.page-as-seen-on .shopify-section[id*="10adbca4-31f0-4d71-ab99-f8dd202a1849"] .pm-marquee-track .logolist--link,
  body.page-as-seen-on .shopify-section[id*="10adbca4-31f0-4d71-ab99-f8dd202a1849"] .pm-marquee-track .logolist--item > picture {
    display: flex !important;
    width: 100% !important;
    height: 100% !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
  }

  body.page-as-seen-on .shopify-section[id*="10adbca4-31f0-4d71-ab99-f8dd202a1849"] .pm-marquee-track .logolist--image {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    margin: 0 !important;
  }

  /* Kill the theme's paused zoom-fade animation on items inside the marquee.
     The theme runs `animation: zoom-fade 500ms ... both paused` on every
     .logolist--section .pxu-lia-element, which leaves them at opacity:0
     until pxu-lia toggles a play class. Because we clone items into a new
     wrapper, pxu-lia loses track of them and never triggers play — so we
     must hard-disable the animation here. ONLY on the items — NEVER on
     the track or host (would break manual scrolling). */
  body.page-as-seen-on .shopify-section[id*="10adbca4-31f0-4d71-ab99-f8dd202a1849"] .pm-marquee-track .logolist--item,
  body.page-as-seen-on .shopify-section[id*="10adbca4-31f0-4d71-ab99-f8dd202a1849"] .pm-marquee-track .logolist--item.pxu-lia-element {
    opacity: 1 !important;
    visibility: visible !important;
    animation: none !important;
    -webkit-animation: none !important;
    transform: none !important;
    -webkit-transform: none !important;
  }

  /* Disable the theme's hover/active scale on poster images (desktop + mobile tap). */
  body.page-as-seen-on .shopify-section[id*="10adbca4-31f0-4d71-ab99-f8dd202a1849"] .pm-marquee-track .logolist--image,
  body.page-as-seen-on .shopify-section[id*="10adbca4-31f0-4d71-ab99-f8dd202a1849"] .pm-marquee-track .logolist--image:hover,
  body.page-as-seen-on .shopify-section[id*="10adbca4-31f0-4d71-ab99-f8dd202a1849"] .pm-marquee-track .logolist--image:active,
  body.page-as-seen-on .shopify-section[id*="10adbca4-31f0-4d71-ab99-f8dd202a1849"] .pm-marquee-track .logolist--item:hover .logolist--image,
  body.page-as-seen-on .shopify-section[id*="10adbca4-31f0-4d71-ab99-f8dd202a1849"] .pm-marquee-track .logolist--item:active .logolist--image,
  body.page-as-seen-on .shopify-section[id*="10adbca4-31f0-4d71-ab99-f8dd202a1849"] .pm-marquee-track .logolist--link:hover .logolist--image,
  body.page-as-seen-on .shopify-section[id*="10adbca4-31f0-4d71-ab99-f8dd202a1849"] .pm-marquee-track .logolist--link:active .logolist--image {
    transform: none !important;
    -webkit-transform: none !important;
    transition: none !important;
  }

  body.page-as-seen-on .shopify-section[id*="10adbca4-31f0-4d71-ab99-f8dd202a1849"] .pm-marquee-track .logolist--link {
    -webkit-tap-highlight-color: transparent;
  }

  /* Networks + Agencies: static centered wrap grid, small icons. */
  body.page-as-seen-on .shopify-section[id*="89d02114-7abb-4567-b663-1c6694848466"] .logolist--inner,
  body.page-as-seen-on .shopify-section[id*="1a76fee2-82f5-4f70-b5dc-c75c5e128a08"] .logolist--inner {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 14px 12px !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 10px 14px !important;
    margin: 0 auto !important;
    overflow: visible !important;
  }

  body.page-as-seen-on .shopify-section[id*="89d02114-7abb-4567-b663-1c6694848466"] .logolist--item,
  body.page-as-seen-on .shopify-section[id*="1a76fee2-82f5-4f70-b5dc-c75c5e128a08"] .logolist--item {
    flex: 0 0 auto !important;
    width: 80px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    -webkit-transform: none !important;
    animation: none !important;
    -webkit-animation: none !important;
  }

  body.page-as-seen-on .shopify-section[id*="89d02114-7abb-4567-b663-1c6694848466"] .logolist--image,
  body.page-as-seen-on .shopify-section[id*="1a76fee2-82f5-4f70-b5dc-c75c5e128a08"] .logolist--image {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    max-width: 100% !important;
    object-fit: contain !important;
  }
}

/* /pages/as-seen-on — desktop only: agencies block — 5 logos row 1, 3 row 2 (centered).
   Logo dimensions + gaps track theme .logolist--item / .logolist--image (theme.css.liquid). */
@media screen and (min-width: 768px) {
  body.page-as-seen-on .shopify-section[id*="1a76fee2-82f5-4f70-b5dc-c75c5e128a08"] .logolist--inner {
    display: grid !important;
    grid-template-columns: repeat(5, max-content);
    justify-content: center;
    justify-items: center;
    align-items: center;
    /* Theme uses L+R item margins 0.9375rem → gap between logos ≈ 1.875rem (720–1279px). */
    column-gap: 1.875rem;
    row-gap: 1.875rem;
    margin-left: 0 !important;
    margin-right: 0 !important;
    font-size: var(--font-size-body);
    width: 100% !important;
    max-width: 100% !important;
    text-align: center;
  }

  body.page-as-seen-on .shopify-section[id*="1a76fee2-82f5-4f70-b5dc-c75c5e128a08"] .logolist--inner > * {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  body.page-as-seen-on .shopify-section[id*="1a76fee2-82f5-4f70-b5dc-c75c5e128a08"] .logolist--item {
    display: block !important;
    width: 120px !important;
    max-width: none !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    vertical-align: unset;
  }

  body.page-as-seen-on .shopify-section[id*="1a76fee2-82f5-4f70-b5dc-c75c5e128a08"] .logolist--image {
    max-height: 120px !important;
  }

  body.page-as-seen-on .shopify-section[id*="1a76fee2-82f5-4f70-b5dc-c75c5e128a08"] .logolist--item:nth-child(6) {
    grid-column: 2;
  }

  body.page-as-seen-on .shopify-section[id*="1a76fee2-82f5-4f70-b5dc-c75c5e128a08"] .logolist--item:nth-child(7) {
    grid-column: 3;
  }

  body.page-as-seen-on .shopify-section[id*="1a76fee2-82f5-4f70-b5dc-c75c5e128a08"] .logolist--item:nth-child(8) {
    grid-column: 4;
  }
}

@media screen and (min-width: 1024px) {
  body.page-as-seen-on .shopify-section[id*="1a76fee2-82f5-4f70-b5dc-c75c5e128a08"] .logolist--item {
    width: 160px !important;
  }

  body.page-as-seen-on .shopify-section[id*="1a76fee2-82f5-4f70-b5dc-c75c5e128a08"] .logolist--image {
    max-height: 160px !important;
  }
}

@media screen and (min-width: 1280px) {
  body.page-as-seen-on .shopify-section[id*="1a76fee2-82f5-4f70-b5dc-c75c5e128a08"] .logolist--inner {
    /* Theme margin L+R 1.25rem per item → 2.5rem between adjacent logos. */
    column-gap: 2.5rem;
    row-gap: 2.5rem;
  }
}

@media screen and (max-width: 767px) and (prefers-reduced-motion: reduce) {
  body.page-as-seen-on .shopify-section[id*="10adbca4-31f0-4d71-ab99-f8dd202a1849"] .pm-marquee-track {
    animation: none !important;
  }
}

/* =============================================================================
   /blogs/news — World-class Apple-newsroom style cards.
   Scope: body.template-blog ONLY. Article pages, homepage, products untouched.

   - Theme's responsive 1/2/3-col flex grid is preserved.
   - Each index card is a self-contained tile: 16:9 thumbnail at the top
     (smart-cropped via object-fit: cover), then meta → headline → excerpt
     → "Read more" arrow link, all on a soft white surface with a hairline
     border, gentle shadow, and a subtle lift on hover.
   - Featured card uses the same vocabulary at a larger scale, side-by-side
     image+text on desktop.
   - Typography uses the system stack (San Francisco on Apple devices) and
     Apple's neutral palette: #1d1d1f / #6e6e73 / #86868b / #0066cc.
   ============================================================================= */

body.template-blog .blog--container {
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display",
    "Helvetica Neue", Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: "kern", "liga", "ss01";
  color: #1d1d1f;
}

body.template-blog .blog--container .blog-title {
  margin-bottom: clamp(1.5rem, 3vw, 2.75rem);
}

body.template-blog .blog--container .blog-title h1 {
  font-size: clamp(1.875rem, 3.5vw, 2.75rem);
  line-height: 1.08;
  letter-spacing: -0.022em;
  font-weight: 600;
  color: #1d1d1f;
}

/* ---------- Card wrapper (keep theme's 1/2/3-col widths intact) ---------- */
body.template-blog .blog--container .article--excerpt-wrapper {
  text-align: left !important;
  background: transparent;
  border: 0;
  box-shadow: none;
  transition: none;
}

/* ---------- The actual card surface ---------- */
body.template-blog .blog--container .article-list-item {
  display: flex !important;
  flex-direction: column;
  background: #ffffff;
  border-radius: 20px;
  overflow: hidden;
  position: relative;
  height: 100%;
  box-shadow:
    0 1px 2px rgba(0, 0, 0, 0.04),
    0 0 0 1px rgba(0, 0, 0, 0.06);
  transition:
    transform 420ms cubic-bezier(0.2, 0.8, 0.2, 1),
    box-shadow 420ms cubic-bezier(0.2, 0.8, 0.2, 1);
}

@media (hover: hover) and (pointer: fine) {
  body.template-blog .blog--container .article-list-item:hover {
    transform: translateY(-4px);
    box-shadow:
      0 22px 44px -16px rgba(0, 0, 0, 0.18),
      0 6px 14px -8px rgba(0, 0, 0, 0.10),
      0 0 0 1px rgba(0, 0, 0, 0.06);
  }
}

/* ---------- 2:1 thumbnail (matches source 1774×887, no crop) ---------- */
body.template-blog .blog--container .article--excerpt-image:not(.placeholder--image) {
  display: block !important;
  position: relative !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: 2 / 1 !important;
  overflow: hidden !important;
  background: #f5f5f7 !important;
  margin: 0 !important;
  border-radius: 0 !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.04);
}

body.template-blog .blog--container .article--excerpt-image:not(.placeholder--image)::before,
body.template-blog .blog--container .article--excerpt-image:not(.placeholder--image)::after {
  content: none !important;
  display: none !important;
}

body.template-blog .blog--container .article--excerpt-image:not(.placeholder--image) img,
body.template-blog .blog--container .article--excerpt-image:not(.placeholder--image) img[data-rimg],
body.template-blog .blog--container .article--excerpt-image:not(.placeholder--image) img[data-rimg=lazy],
body.template-blog .blog--container .article--excerpt-image:not(.placeholder--image) img[data-rimg=loading],
body.template-blog .blog--container .article--excerpt-image:not(.placeholder--image) img[data-rimg=loaded],
body.template-blog .blog--container .article--excerpt-image:not(.placeholder--image) img[data-rimg=noscript] {
  position: absolute !important;
  inset: 0 !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: 50% 50% !important;
  transition: transform 700ms cubic-bezier(0.2, 0.8, 0.2, 1);
  will-change: transform;
}

@media (hover: hover) and (pointer: fine) {
  body.template-blog .blog--container .article-list-item:hover .article--excerpt-image img {
    transform: scale(1.04);
  }
}

body.template-blog .blog--container .article--excerpt-image:not(.placeholder--image) [data-rimg-canvas] {
  position: absolute !important;
  inset: 0 !important;
  background-size: cover !important;
  background-position: 50% 50% !important;
  background-repeat: no-repeat !important;
}

/* ---------- Card content area ---------- */
body.template-blog .blog--container .article--excerpt-content {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  padding: 1.375rem 1.5rem 1.625rem;
  text-align: left;
}

body.template-blog .blog--container .article--excerpt-meta {
  font-size: 0.6875rem;
  letter-spacing: 0.085em;
  text-transform: uppercase;
  color: #86868b;
  font-weight: 500;
  margin: 0 0 0.625rem;
  border: 0;
  padding: 0;
}

body.template-blog .blog--container .article--excerpt-meta-item {
  display: inline;
  font-size: inherit;
  font-weight: inherit;
  color: inherit;
  letter-spacing: inherit;
  text-transform: inherit;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.template-blog .blog--container .article--excerpt-meta-item:nth-child(2)::before {
  content: "·";
  margin: 0 0.45em;
  color: rgba(0, 0, 0, 0.3);
}

body.template-blog .blog--container .article--excerpt-title {
  font-size: clamp(1.0625rem, 1.3vw, 1.25rem);
  line-height: 1.22;
  letter-spacing: -0.012em;
  font-weight: 600;
  color: #1d1d1f;
  margin: 0 0 0.625rem;
}

body.template-blog .blog--container .article--excerpt-title a {
  color: inherit;
  text-decoration: none;
}

body.template-blog .blog--container .article--excerpt-title a:hover {
  color: #000;
}

body.template-blog .blog--container .article--excerpt-text,
body.template-blog .blog--container .article--excerpt-text.rte {
  font-size: 0.9375rem;
  line-height: 1.5;
  color: #6e6e73;
  margin: 0 0 1.125rem;
  flex: 1 1 auto;
}

body.template-blog .blog--container .article--excerpt-text p {
  margin: 0;
}

body.template-blog .blog--container .article--excerpt-readmore {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  margin-top: auto;
  align-self: flex-start;
  font-size: 0.875rem;
  font-weight: 500;
  letter-spacing: -0.005em;
  color: #0071e3;
  text-decoration: none;
  border: 0;
  padding: 0;
  background: transparent;
  transition: color 200ms ease;
}

body.template-blog .blog--container .article--excerpt-readmore:hover {
  color: #0050a4;
  text-decoration: none;
}

body.template-blog .blog--container .article--excerpt-readmore--icon {
  display: inline-flex;
  align-items: center;
  transition: transform 280ms cubic-bezier(0.2, 0.8, 0.2, 1);
}

body.template-blog .blog--container .article--excerpt-readmore--icon svg {
  width: 0.85em;
  height: 0.85em;
  fill: currentColor;
}

@media (hover: hover) and (pointer: fine) {
  body.template-blog .blog--container .article-list-item:hover .article--excerpt-readmore--icon {
    transform: translateX(3px);
  }
}

/* ---------- Featured (hero) card ---------- */
body.template-blog .blog--container .article--excerpt-wrapper--featured {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 0 clamp(1.75rem, 3.5vw, 2.75rem) !important;
  padding: 0 !important;
  background: #ffffff !important;
  color: #1d1d1f !important;
  border-radius: 24px !important;
  overflow: hidden !important;
  box-shadow:
    0 1px 2px rgba(0, 0, 0, 0.04),
    0 0 0 1px rgba(0, 0, 0, 0.06);
  transition:
    transform 420ms cubic-bezier(0.2, 0.8, 0.2, 1),
    box-shadow 420ms cubic-bezier(0.2, 0.8, 0.2, 1);
  text-align: left !important;
  font-size: 1rem;
}

@media (hover: hover) and (pointer: fine) {
  body.template-blog .blog--container .article--excerpt-wrapper--featured:hover {
    transform: translateY(-4px);
    box-shadow:
      0 28px 50px -16px rgba(0, 0, 0, 0.20),
      0 8px 18px -8px rgba(0, 0, 0, 0.12),
      0 0 0 1px rgba(0, 0, 0, 0.06);
  }
}

body.template-blog .blog--container .article--excerpt-wrapper--featured.article--excerpt-wrapper--has-image .article--excerpt-image,
body.template-blog .blog--container .article--excerpt-wrapper--featured.article--excerpt-wrapper--has-image .article--excerpt-content {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  left: auto !important;
  right: auto !important;
  vertical-align: top !important;
  text-align: left !important;
}

body.template-blog .blog--container .article--excerpt-wrapper--featured .article--excerpt-image {
  position: relative !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 2 / 1 !important;
  min-height: 0 !important;
  max-height: none !important;
  border-radius: 0 !important;
  background-color: #f5f5f7 !important;
  background-size: cover !important;
  background-position: 50% 50% !important;
  background-repeat: no-repeat !important;
  overflow: hidden !important;
}

body.template-blog .blog--container .article--excerpt-wrapper--featured .article--excerpt-image::before,
body.template-blog .blog--container .article--excerpt-wrapper--featured .article--excerpt-image::after {
  content: none !important;
  display: none !important;
}

body.template-blog .blog--container .article--excerpt-wrapper--featured .article--excerpt-image [data-rimg-canvas] {
  position: absolute !important;
  inset: 0 !important;
  background-size: cover !important;
  background-position: 50% 50% !important;
  background-repeat: no-repeat !important;
}

body.template-blog .blog--container .article--excerpt-wrapper--featured .article--excerpt-content {
  padding: clamp(1.5rem, 3vw, 2.5rem) clamp(1.5rem, 3vw, 2.5rem) clamp(1.75rem, 3vw, 2.5rem) !important;
}

body.template-blog .blog--container .article--excerpt-wrapper--featured .article--excerpt-meta {
  font-size: 0.75rem;
  letter-spacing: 0.085em;
  text-transform: uppercase;
  color: #86868b;
  font-weight: 500;
  margin: 0 0 0.875rem;
  border: 0;
}

body.template-blog .blog--container .article--excerpt-wrapper--featured .article--excerpt-meta-item {
  font-size: inherit;
  color: inherit;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.template-blog .blog--container .article--excerpt-wrapper--featured .article--excerpt-meta-item:nth-child(2)::before {
  content: "·";
  margin: 0 0.45em;
  color: rgba(0, 0, 0, 0.3);
}

body.template-blog .blog--container .article--excerpt-wrapper--featured .article--excerpt-title {
  font-size: clamp(1.5rem, 2.6vw, 2.125rem) !important;
  line-height: 1.12 !important;
  letter-spacing: -0.02em !important;
  font-weight: 600 !important;
  color: #1d1d1f !important;
  margin: 0 0 0.875rem !important;
}

body.template-blog .blog--container .article--excerpt-wrapper--featured .article--excerpt-title a {
  color: inherit;
  text-decoration: none;
}

body.template-blog .blog--container .article--excerpt-wrapper--featured .article--excerpt-text {
  font-size: clamp(0.9375rem, 1vw, 1.0625rem);
  line-height: 1.5;
  color: #6e6e73;
  margin: 0 0 1.5rem;
  max-width: 60ch;
}

body.template-blog .blog--container .article--excerpt-wrapper--featured .article--excerpt-button {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  background: #1d1d1f !important;
  color: #ffffff !important;
  border: 0 !important;
  border-radius: 980px !important;
  padding: 0.6rem 1.25rem !important;
  font-size: 0.875rem !important;
  font-weight: 500 !important;
  letter-spacing: -0.005em !important;
  text-decoration: none !important;
  transition:
    background-color 240ms ease,
    transform 240ms ease !important;
  position: static !important;
  box-shadow: none !important;
}

body.template-blog .blog--container .article--excerpt-wrapper--featured .article--excerpt-button:hover {
  background: #000000 !important;
  transform: translateY(-1px) !important;
  border: 0 !important;
}

/* Desktop: featured card goes side-by-side */
@media screen and (min-width: 960px) {
  body.template-blog .blog--container .article--excerpt-wrapper--featured.article--excerpt-wrapper--has-image {
    display: grid !important;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
    align-items: stretch;
  }

  body.template-blog .blog--container .article--excerpt-wrapper--featured.article--excerpt-wrapper--has-image .article--excerpt-image {
    width: 100% !important;
    height: 100% !important;
    aspect-ratio: auto !important;
    min-height: 360px;
  }

  body.template-blog .blog--container .article--excerpt-wrapper--featured.article--excerpt-wrapper--has-image .article--excerpt-content {
    width: 100% !important;
    align-self: center;
    padding: clamp(2rem, 3.5vw, 3.25rem) clamp(2rem, 3.5vw, 3rem) !important;
  }
}

/* ---------- Pagination polish ---------- */
body.template-blog .blog--container .pagination--container {
  margin-top: clamp(2rem, 4vw, 3rem);
  padding-top: 1.5rem;
  border-top: 1px solid rgba(0, 0, 0, 0.08);
}

/* ---------- Empty state ---------- */
body.template-blog .blog--container .blog--no-results {
  background: #f5f5f7;
  border-radius: 20px;
  padding: 3rem 1.5rem;
  text-align: center;
  color: #6e6e73;
}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion: reduce) {
  body.template-blog .blog--container .article-list-item,
  body.template-blog .blog--container .article-list-item:hover,
  body.template-blog .blog--container .article-list-item .article--excerpt-image img,
  body.template-blog .blog--container .article-list-item:hover .article--excerpt-image img,
  body.template-blog .blog--container .article--excerpt-wrapper--featured,
  body.template-blog .blog--container .article--excerpt-wrapper--featured:hover,
  body.template-blog .blog--container .article--excerpt-readmore--icon,
  body.template-blog .blog--container .article-list-item:hover .article--excerpt-readmore--icon,
  body.template-blog .blog--container .article--excerpt-wrapper--featured .article--excerpt-button {
    transition: none !important;
    transform: none !important;
  }
}

/* PAB cart drawer: gap before first property row (Tier, Stacks, …). */
.cart-drawer tr[data-pab-line] .cart-item__details > dl {
  margin-top: 8px;
  margin-bottom: 0;
}

/* Uniform row separation in drawer (PAB and regular). */
.cart-drawer .cart-items tbody tr.cart-item > td {
  padding-bottom: 16px;
  vertical-align: top;
}
.cart-drawer .cart-items tbody tr.cart-item:last-child > td {
  padding-bottom: 0;
}

/*
 * 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;
}
.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: 520px;
  align-self: center;
}
@media (min-width: 720px) {
  .atc-banner--cart-footer {
    align-items: center;
    max-width: 520px;
    margin-left: auto;
    margin-right: auto;
  }
  .atc-banner--cart-footer .priority-processing-upsell {
    width: 100%;
    max-width: 520px;
  }
  .atc-banner--cart-footer .atc-button--viewcart {
    width: 100%;
    min-width: 0;
    max-width: 520px;
  }
}
.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, #fafafa 0%, #f5f5f5 100%);
  box-shadow: none;
  box-sizing: border-box;
  text-align: left;
}

.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;
  padding: 0;
  background: transparent;
  border: 0;
  cursor: pointer;
  border-radius: 50%;
  transition: transform 0.12s ease, opacity 0.12s ease;
  -webkit-appearance: none;
  appearance: none;
}

button.priority-processing-upsell__atc-confirm-icon:hover {
  opacity: 0.85;
  transform: scale(1.04);
}

button.priority-processing-upsell__atc-confirm-icon:active {
  transform: scale(0.96);
}

button.priority-processing-upsell__atc-confirm-icon:focus-visible {
  outline: 2px solid rgba(0, 0, 0, 0.35);
  outline-offset: 2px;
}

button.priority-processing-upsell__atc-confirm-icon[disabled] {
  cursor: default;
  opacity: 0.6;
}

.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;
    grid-template-columns: 20px minmax(0, 1fr);
    grid-template-rows: auto auto auto auto;
    column-gap: 10px;
    row-gap: 1px;
    align-items: start;
    padding: 14px 16px;
    border-radius: 16px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
    text-align: left;
  }

  .atc-banner--cart-footer .priority-processing-upsell__card:hover {
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.07);
  }

  .atc-banner--cart-footer .priority-processing-upsell__content {
    display: contents;
  }

  .atc-banner--cart-footer .priority-processing-upsell__indicator {
    position: relative;
    grid-column: 1;
    grid-row: 1;
    align-self: start;
    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: 2;
    grid-row: 1;
    align-self: start;
    font-size: 16px;
    line-height: 1.2;
    text-align: left;
  }

  .atc-banner--cart-footer .priority-processing-upsell__subtitle {
    grid-column: 2;
    grid-row: 2;
    margin-top: 3px;
    font-size: 14px;
    line-height: 1.12;
    text-align: left;
  }

  .atc-banner--cart-footer .priority-processing-upsell__description {
    grid-column: 2;
    grid-row: 3;
    font-size: 13px;
    line-height: 1.15;
    text-align: left;
  }

  .atc-banner--cart-footer .priority-processing-upsell__price {
    grid-column: 2;
    grid-row: 4;
    margin-top: 3px;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
    text-align: left;
  }

  .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 is also untouched because its existing
     @media (max-width: 900px) and (orientation: landscape) rules
     stop applying well below this 1024px breakpoint).
   - Pure visual refinement: no functional, PP-logic, or overlay
     changes.
   ============================================================ */
@media (min-width: 1024px) {
  /* (1) Subtotal: stop stretching to full column 2 width. Match the
     footer container's max-width: 520px and auto-margins so the
     subtotal's right edge tracks the PP card / View Cart button
     right edge below. Inside, label + price form a tight pair
     hugging that right edge. */
  .atc-banner--container .atc-banner--cart-subtotal {
    display: flex !important;
    align-items: baseline !important;
    justify-content: flex-end !important;
    column-gap: 8px !important;
    width: 100% !important;
    max-width: 520px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    border-left: 0 !important;
    text-align: right !important;
    box-sizing: border-box !important;
  }

  .atc-banner--container .atc-banner--cart-subtotal .atc-subtotal--label,
  .atc-banner--container .atc-banner--cart-subtotal .atc-subtotal--price {
    margin: 0 !important;
  }

  /* (2) 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;
}
