/**
 * MBA 13/15 air-fix — loads after root-owned pub/static desk-fix / pdp / header CSS.
 * Site width: desktop content rail (1493px / 93.3125rem) on 744–1799.
 * Home: fold-fit banner + fluid type/buttons.
 * Mobile: taller trust pills + larger icons; trust→desk gap halved.
 * PDP: desktop proportions (711 / 527) + fluid badges/tiers — no ellipsis squash.
 *
 * LOCK — MBA 13 + 15 stay on the SAME densify band:
 *   (max-width: 1799px) and (max-height: 1100px)
 * Never reintroduce max-height:900 alone — MBA 15 @1680×1050 (vh=1050) escapes
 * and looks “out” while 13" still densifies. ≥1800 = full desktop only.
 */

/* ===== Tablets (iPad Mini 744 … iPad Pro 13 1032) =====
 * Phone UI ≤743. Tablets ≤1199 keep mobile hamburger + tuned PDP controls.
 * Desktop mega / lg: chrome starts at ≥1200.
 */


/* ===== Header logo — 1.125× prior (39px → 43.875px; mobile 139.5×39 → 157×43.875) ===== */
html body .acme-header__brand {
    min-width: 9.28125rem !important;
}
html body .acme-header__brand > a[href] img,
html body .acme-header__brand > .logo img,
html body .acme-header__brand img {
    max-height: 2.7421875rem !important; /* 43.875px */
    width: auto !important;
    height: auto !important;
}
html body .acme-header__brand [x-data="initMobileMenu"] dialog .acme-mobile-menu__logo img {
    max-width: 15.1875rem !important;
    max-height: 4.21875rem !important;
    width: auto !important;
    height: auto !important;
}
@media (max-width: 743px) {
    html body .acme-header__brand > a[href],
    html body .acme-header__brand > .logo,
    html body .acme-header__brand a.logo {
        width: 9.80859375rem !important;
        height: 2.7421875rem !important;
    }
    html body .acme-header__brand > a[href] img,
    html body .acme-header__brand > .logo img,
    html body .acme-header__brand a.logo img {
        width: 9.80859375rem !important;
        height: 2.7421875rem !important;
        max-height: 2.7421875rem !important;
    }
}

/* ===== Site width — ONE desktop rail (1493px) on MBA / small laptops =====
   Same centering as desktop: pad = max(1.25rem, (100vw − 1493) / 2).
   Cap rails at 93.3125rem; pad-only banners use the same pad so content = 1493. */
@media (min-width: 744px) and (max-width: 1799px) {
    :root,
    html,
    html body {
        --acme-header-pad-x: max(1.25rem, calc((100vw - 93.3125rem) / 2)) !important;
        --acme-footer-pad-x: max(1.25rem, calc((100vw - 93.3125rem) / 2)) !important;
        --acme-pad-x: max(1.25rem, calc((100vw - 93.3125rem) / 2)) !important;
        --acme-landing-pad-x: max(1.25rem, calc((100vw - 93.3125rem) / 2)) !important;
        --acme-content: 93.3125rem !important; /* = .acme-header__top-inner max */
        --acme-gallery-content: 93.3125rem !important;
        --acme-header-inner: 93.3125rem !important;
        --acme-footer-inner: 93.3125rem !important;
        --acme-pdp-content-width: 93.3125rem !important;
    }

    html body.cms-index-index .acme-home,
    html body.cms-page-view.cms-home .acme-home,
    html body.cms-index-index,
    html body.cms-page-view.cms-home,
    html body .acme-custom-order,
    html body .acme-about,
    html body .acme-contact,
    html body .acme-gallery,
    html body.catalog-category-view,
    html body.catalogsearch-result-index,
    html body.acme-pdp-page,
    html body.catalog-product-view,
    html body.acme-category-page {
        --acme-pad-x: max(1.25rem, calc((100vw - 93.3125rem) / 2)) !important;
        --acme-content: 93.3125rem !important;
        --acme-landing-pad-x: max(1.25rem, calc((100vw - 93.3125rem) / 2)) !important;
        --acme-pdp-content-width: 93.3125rem !important;
        --acme-footer-inner: 93.3125rem !important;
    }

    /*
     * Shared rail — shrink with viewport when vw < 1493+2×pad (MBA ≈1440–1512).
     * Hard 1493px rails were WIDER than the padded header → looked unfixed.
     */
    html body .acme-header__top-inner,
    html body .acme-header__nav-inner,
    html body .acme-mega-nav,
    html body .acme-mega-nav__list {
        box-sizing: border-box !important;
        width: min(100%, 93.3125rem) !important;
        max-width: 93.3125rem !important;
        margin-inline: auto !important;
        padding-inline: 0 !important;
    }
    /* Mega dropdown inner: same rail + header pad (do not zero — columns need inset) */
    html body .acme-mega-panel__inner {
        box-sizing: border-box !important;
        width: min(100%, 93.3125rem) !important;
        max-width: 93.3125rem !important;
        margin-inline: auto !important;
        padding-inline: var(--acme-header-pad-x, 1.25rem) !important;
    }

    /* Homepage */
    html body.cms-index-index .acme-home-cats__inner,
    html body.cms-page-view.cms-home .acme-home-cats__inner,
    html body.cms-index-index .acme-home-cats__grid,
    html body.cms-page-view.cms-home .acme-home-cats__grid,
    html body.cms-index-index .acme-home-products__inner,
    html body.cms-page-view.cms-home .acme-home-products__inner,
    html body.cms-index-index .acme-home-products__grid,
    html body.cms-page-view.cms-home .acme-home-products__grid,
    html body.cms-index-index .acme-home-products__header,
    html body.cms-page-view.cms-home .acme-home-products__header,
    html body.cms-index-index .acme-home-custom__inner,
    html body.cms-page-view.cms-home .acme-home-custom__inner,
    html body.cms-index-index .acme-home-certs__inner,
    html body.cms-page-view.cms-home .acme-home-certs__inner,
    html body.cms-index-index .acme-home-blogs__inner,
    html body.cms-page-view.cms-home .acme-home-blogs__inner,
    html body.cms-index-index .acme-gallery--strip .acme-gallery__inner,
    html body.cms-page-view.cms-home .acme-gallery--strip .acme-gallery__inner,
    html body.cms-index-index .acme-home-trust__track,
    html body.cms-page-view.cms-home .acme-home-trust__track,
    /* SEO desk: width only below — do NOT pad-zero (desk-fix owns inset; zero made copy look wider) */
    /* Category / PLP / parent landing */
    html body.acme-category-page .columns,
    html body.acme-category-page .page-main .columns,
    html body.catalog-category-view .columns,
    html body.acme-category-page .acme-category-description,
    html body.acme-category-page .acme-subcat-landing,
    html body.acme-category-page .acme-category-hero,
    html body.acme-category-page .acme-category-banner__cms,
    html body.acme-category-page .category-image,
    html body.acme-category-page .category-cms,
    html body.catalog-category-view .acme-cat,
    html body.catalog-category-view .acme-cat__inner,
    html body.catalogsearch-result-index .acme-search,
    html body.catalogsearch-result-index .acme-search__inner,
    html body.catalogsearch-result-index .columns,
    /* PDP — shell + details/similar (inline phtml used to pad+max these) */
    html body.acme-pdp-page .acme-pdp,
    html body.catalog-product-view .acme-pdp,
    html body.acme-pdp-page .acme-pdp__details-wrap,
    html body.acme-pdp-page .acme-pdp__reviews-wrap,
    html body.acme-pdp-page .acme-pdp__faq-wrap,
    html body.acme-pdp-page .acme-pdp__similar,
    html body.acme-pdp-page main > .acme-pdp__similar,
    html body.acme-pdp-page .product-info-main > .acme-pdp__details-wrap,
    html body.catalog-product-view .acme-pdp__details-wrap,
    html body.catalog-product-view .acme-pdp__similar,
    html body.acme-pdp-page .top-container .breadcrumbs,
    html body.acme-pdp-page .breadcrumbs,
    html body.acme-pdp-page .acme-breadcrumbs,
    html body.acme-pdp-page .acme-pdp-breadcrumbs,
    html body.catalog-product-view .breadcrumbs,
    html body.catalog-product-view .acme-breadcrumbs,
    html body .top-container .breadcrumbs,
    html body .breadcrumbs,
    html body .acme-breadcrumbs,
    /* CMS / gallery / forms */
    html body .acme-gallery--grid .acme-gallery__inner,
    html body .acme-custom-order .acme-co-cards__grid,
    html body .acme-custom-order .acme-co-formsec__panel,
    html body .acme-custom-order .acme-co-advantage__inner,
    html body .acme-custom-order .acme-co-process__track,
    html body .acme-custom-order .acme-co-intro,
    html body .acme-custom-order .acme-co-midcta,
    html body .acme-custom-order .acme-co-hero__content,
    html body .acme-about-hero__inner,
    html body .acme-about-section__inner,
    /* Footer — beat deferred acme-footer-mba width:100% */
    html body .acme-footer__main,
    html body .acme-footer__bottom-inner,
    html body .acme-footer .acme-footer__main,
    html body footer .acme-footer__main {
        box-sizing: border-box !important;
        width: min(93.3125rem, calc(100vw - 2 * var(--acme-header-pad-x))) !important;
        max-width: min(93.3125rem, calc(100vw - 2 * var(--acme-header-pad-x))) !important;
        margin-inline: auto !important;
        padding-inline: 0 !important;
    }

    /* SEO desk grey card: same rail width, keep desk-fix internal pad (not pad-zero) */
    html body.cms-index-index .acme-home-seo-desk.acme-home-seo-desk--center,
    html body.cms-page-view.cms-home .acme-home-seo-desk.acme-home-seo-desk--center,
    html body.cms-index-index .acme-home-seo-desk--center,
    html body.cms-page-view.cms-home .acme-home-seo-desk--center {
        box-sizing: border-box !important;
        width: min(93.3125rem, calc(100vw - 2 * var(--acme-header-pad-x))) !important;
        max-width: min(93.3125rem, calc(100vw - 2 * var(--acme-header-pad-x))) !important;
        margin-inline: auto !important;
        padding-inline: clamp(1.25rem, 4vw, 2.5rem) !important;
    }

    /* Cap rails: zero extra pad (pad lives on chrome / pad-only banners). */
    html body.acme-pdp-page .acme-pdp,
    html body.catalog-product-view .acme-pdp,
    html body.acme-pdp-page .acme-pdp__details-wrap,
    html body.acme-pdp-page .acme-pdp__reviews-wrap,
    html body.acme-pdp-page .acme-pdp__faq-wrap,
    html body.acme-pdp-page .acme-pdp__similar,
    html body.acme-pdp-page main > .acme-pdp__similar,
    html body.acme-pdp-page .product-info-main > .acme-pdp__details-wrap,
    html body.catalog-product-view .acme-pdp__details-wrap,
    html body.catalog-product-view .acme-pdp__similar,
    html body.acme-pdp-page .top-container .breadcrumbs,
    html body.acme-pdp-page .breadcrumbs,
    html body.acme-pdp-page .acme-breadcrumbs,
    html body.acme-pdp-page .acme-pdp-breadcrumbs,
    html body.catalog-product-view .breadcrumbs,
    html body.catalog-product-view .acme-breadcrumbs,
    html body .top-container .breadcrumbs,
    html body .breadcrumbs,
    html body .acme-breadcrumbs,
    html body .acme-footer__main,
    html body .acme-footer__bottom-inner {
        padding-inline: 0 !important;
    }

    /* Category banners — desktop pad-only model (content width = 1493). */
    html body.acme-category-page .category-view.acme-category-banner,
    html body.acme-category-page #category-view-container,
    html body.acme-category-page .acme-category-banner.container,
    html body.acme-category-page #category-view-container.container,
    html body.catalog-category-view .category-view.acme-category-banner,
    html body.catalog-category-view #category-view-container,
    html body.catalog-category-view .acme-category-banner {
        box-sizing: border-box !important;
        width: 100% !important;
        max-width: none !important;
        margin-inline: 0 !important;
        padding-inline: var(--acme-header-pad-x) !important;
    }

    /* Header / nav chrome — desktop centering pad */
    html body .acme-header__top,
    html body .acme-header__nav,
    html body .acme-mega-nav__bar {
        padding-inline: var(--acme-header-pad-x) !important;
    }

    /*
     * Promo strip must stay visible on MBA (all pages).
     * Track is position:absolute — never use height:auto on the bar.
     */
    html body .acme-promo-bar {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        box-sizing: border-box !important;
        height: var(--acme-promo-h, 2.25rem) !important;
        min-height: var(--acme-promo-h, 2.25rem) !important;
        max-height: var(--acme-promo-h, 2.25rem) !important;
        overflow: hidden !important;
        visibility: visible !important;
        opacity: 1 !important;
    }
    html body .acme-promo-bar__track {
        position: absolute !important;
        inset: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        transform: none !important;
        opacity: 1 !important;
        animation: none !important;
    }

    /* SEO host stays full-bleed white; grey desk is the capped rail */
    html body.cms-index-index .acme-home-seo,
    html body.cms-page-view.cms-home .acme-home-seo,
    html body.cms-index-index .acme-home-seo.acme-home-prose,
    html body.cms-page-view.cms-home .acme-home-seo.acme-home-prose,
    html body.cms-index-index .acme-home-seo.acme-home-prose.acme-cms-prose,
    html body.cms-page-view.cms-home .acme-home-seo.acme-home-prose.acme-cms-prose,
    html body.cms-index-index .acme-home-seo:has(.acme-home-seo-desk--center),
    html body.cms-page-view.cms-home .acme-home-seo:has(.acme-home-seo-desk--center),
    html body.cms-index-index .acme-home-seo.acme-home-prose.acme-cms-prose:has(.acme-home-seo-desk--center),
    html body.cms-page-view.cms-home .acme-home-seo.acme-home-prose.acme-cms-prose:has(.acme-home-seo-desk--center),
    html body.cms-index-index .column.main [data-content-type="row"][data-appearance="contained"] > .acme-home-seo,
    html body.cms-page-view.cms-home .column.main [data-content-type="row"][data-appearance="contained"] > .acme-home-seo,
    html body.cms-index-index .column.main [data-content-type="row"][data-appearance="contained"] > .acme-home-seo.acme-home-prose.acme-cms-prose,
    html body.cms-page-view.cms-home .column.main [data-content-type="row"][data-appearance="contained"] > .acme-home-seo.acme-home-prose.acme-cms-prose {
        padding-inline: var(--acme-header-pad-x, max(1.25rem, calc((100vw - 93.3125rem) / 2))) !important;
        width: 100% !important;
        max-width: none !important;
        margin-inline: 0 !important;
    }
}

/* ===== Home — MBA width ≤1799: fit trust + white under banner ===== */
@media (min-width: 744px) and (max-width: 1799px) {
    html body.cms-index-index,
    html body.cms-page-view.cms-home {
        --acme-hero-h: min(36rem, calc(100vh - 17rem)) !important;
    }
    html body.cms-index-index .acme-home-hero,
    html body.cms-page-view.cms-home .acme-home-hero,
    html body.cms-index-index .acme-home-hero__viewport,
    html body.cms-page-view.cms-home .acme-home-hero__viewport,
    html body.cms-index-index .acme-home-hero__slide,
    html body.cms-page-view.cms-home .acme-home-hero__slide,
    html body.cms-index-index .acme-home-hero__content,
    html body.cms-page-view.cms-home .acme-home-hero__content {
        min-height: min(36rem, calc(100vh - 17rem)) !important;
        max-height: min(36rem, calc(100vh - 17rem)) !important;
        height: min(36rem, calc(100vh - 17rem)) !important;
    }
    html body.cms-index-index .acme-home-hero__content,
    html body.cms-page-view.cms-home .acme-home-hero__content {
        justify-content: center !important;
        max-width: min(36rem, 50%) !important;
        gap: clamp(0.5rem, 0.35rem + 0.55vh, 0.85rem) !important;
        padding-block: clamp(1.25rem, 2.5vh, 2.75rem) clamp(4rem, 7.5vh, 5.5rem) !important;
        padding-inline: clamp(1.15rem, 2.4vw, 3rem) 0 !important;
    }
    html body.cms-index-index .acme-home-hero__title,
    html body.cms-page-view.cms-home .acme-home-hero__title {
        font-size: clamp(1.5rem, 0.95rem + 1.35vw + 0.35vh, 2.625rem) !important;
        line-height: 1.18 !important;
        letter-spacing: -0.015em !important;
        max-width: 18.5em !important;
        text-wrap: balance !important;
    }
    html body.cms-index-index .acme-home-hero__subtitle,
    html body.cms-page-view.cms-home .acme-home-hero__subtitle {
        font-size: clamp(0.8125rem, 0.6rem + 0.55vw + 0.2vh, 1.1875rem) !important;
        line-height: 1.35 !important;
        max-width: min(34rem, 100%) !important;
    }
    html body.cms-index-index .acme-home-hero__actions,
    html body.cms-page-view.cms-home .acme-home-hero__actions {
        padding-top: clamp(0.25rem, 0.15rem + 0.35vh, 0.55rem) !important;
        gap: clamp(0.55rem, 0.4rem + 0.45vw, 1rem) !important;
    }
    html body.cms-index-index .acme-home-hero__btn,
    html body.cms-page-view.cms-home .acme-home-hero__btn {
        min-height: clamp(2.5rem, 1.85rem + 0.85vw + 0.55vh, 3.25rem) !important;
        padding:
            clamp(0.55rem, 0.4rem + 0.35vh, 0.85rem)
            clamp(1.15rem, 0.85rem + 0.85vw, 1.85rem) !important;
        font-size: clamp(0.8125rem, 0.7rem + 0.28vw + 0.12vh, 1rem) !important;
    }
}
@supports (height: 100dvh) {
    @media (min-width: 744px) and (max-width: 1799px) {
        html body.cms-index-index,
        html body.cms-page-view.cms-home {
            --acme-hero-h: min(36rem, calc(100dvh - 17rem)) !important;
        }
        html body.cms-index-index .acme-home-hero,
        html body.cms-page-view.cms-home .acme-home-hero,
        html body.cms-index-index .acme-home-hero__viewport,
        html body.cms-page-view.cms-home .acme-home-hero__viewport,
        html body.cms-index-index .acme-home-hero__slide,
        html body.cms-page-view.cms-home .acme-home-hero__slide,
        html body.cms-index-index .acme-home-hero__content,
        html body.cms-page-view.cms-home .acme-home-hero__content {
            min-height: min(36rem, calc(100dvh - 17rem)) !important;
            max-height: min(36rem, calc(100dvh - 17rem)) !important;
            height: min(36rem, calc(100dvh - 17rem)) !important;
        }
    }
}

/* ===== Home — MBA short viewport ONLY (≤1799). Skip ≥1800 / FHD 1080p monitors. ===== */
@media (min-width: 744px) and (max-width: 1799px) and (max-height: 1100px) {
    html body.cms-index-index,
    html body.cms-page-view.cms-home {
        --acme-hero-h: min(34rem, calc(100vh - 17rem)) !important;
    }
    html body.cms-index-index .acme-home-hero,
    html body.cms-page-view.cms-home .acme-home-hero,
    html body.cms-index-index .acme-home-hero__viewport,
    html body.cms-page-view.cms-home .acme-home-hero__viewport,
    html body.cms-index-index .acme-home-hero__slide,
    html body.cms-page-view.cms-home .acme-home-hero__slide,
    html body.cms-index-index .acme-home-hero__content,
    html body.cms-page-view.cms-home .acme-home-hero__content {
        min-height: min(34rem, calc(100vh - 17rem)) !important;
        max-height: min(34rem, calc(100vh - 17rem)) !important;
        height: min(34rem, calc(100vh - 17rem)) !important;
    }
    html body.cms-index-index .acme-home-hero__title,
    html body.cms-page-view.cms-home .acme-home-hero__title {
        font-size: clamp(1.4375rem, 0.9rem + 1.1vw + 0.25vh, 2.125rem) !important;
        line-height: 1.18 !important;
    }
    html body.cms-index-index .acme-home-hero__subtitle,
    html body.cms-page-view.cms-home .acme-home-hero__subtitle {
        font-size: clamp(0.8125rem, 0.55rem + 0.45vw + 0.15vh, 1.0625rem) !important;
    }
    html body.cms-index-index .acme-home-hero__content,
    html body.cms-page-view.cms-home .acme-home-hero__content {
        justify-content: center !important;
        gap: clamp(0.45rem, 0.3rem + 0.4vh, 0.65rem) !important;
        padding-block: 1.25rem clamp(4rem, 7.5vh, 5.5rem) !important;
        max-width: min(34rem, 48%) !important;
    }
    html body.cms-index-index .acme-home-hero__actions,
    html body.cms-page-view.cms-home .acme-home-hero__actions {
        padding-top: 0.25rem !important;
        gap: clamp(0.5rem, 0.35rem + 0.4vw, 0.85rem) !important;
    }
    html body.cms-index-index .acme-home-hero__btn,
    html body.cms-page-view.cms-home .acme-home-hero__btn {
        min-height: clamp(2.375rem, 1.75rem + 0.7vw + 0.4vh, 2.875rem) !important;
        padding:
            clamp(0.5rem, 0.35rem + 0.3vh, 0.7rem)
            clamp(1.05rem, 0.8rem + 0.7vw, 1.55rem) !important;
        font-size: clamp(0.8125rem, 0.68rem + 0.22vw + 0.08vh, 0.9375rem) !important;
    }
}
@supports (height: 100dvh) {
    @media (min-width: 744px) and (max-width: 1799px) and (max-height: 1100px) {
        html body.cms-index-index,
        html body.cms-page-view.cms-home {
            --acme-hero-h: min(34rem, calc(100dvh - 17rem)) !important;
        }
        html body.cms-index-index .acme-home-hero,
        html body.cms-page-view.cms-home .acme-home-hero,
        html body.cms-index-index .acme-home-hero__viewport,
        html body.cms-page-view.cms-home .acme-home-hero__viewport,
        html body.cms-index-index .acme-home-hero__slide,
        html body.cms-page-view.cms-home .acme-home-hero__slide,
        html body.cms-index-index .acme-home-hero__content,
        html body.cms-page-view.cms-home .acme-home-hero__content {
            min-height: min(34rem, calc(100dvh - 17rem)) !important;
            max-height: min(34rem, calc(100dvh - 17rem)) !important;
            height: min(34rem, calc(100dvh - 17rem)) !important;
        }
    }
}

/* ===== Mobile — slightly larger icons; prominent trust labels ===== */
@media (max-width: 743px) {
    html body.cms-index-index .acme-home-trust,
    html body.cms-page-view.cms-home .acme-home-trust {
        margin-block: 1rem 1rem !important;
        padding-block: 0 !important;
    }
    html body.cms-index-index .acme-home-trust__track,
    html body.cms-page-view.cms-home .acme-home-trust__track {
        gap: 0.35rem !important;
    }
    html body.cms-index-index .acme-home-trust__item,
    html body.cms-page-view.cms-home .acme-home-trust__item,
    html body.cms-index-index .acme-home-trust__item--first,
    html body.cms-page-view.cms-home .acme-home-trust__item--first,
    html body.cms-index-index .acme-home-trust__item--last,
    html body.cms-page-view.cms-home .acme-home-trust__item--last {
        gap: 0.4rem !important;
        padding: 0.5rem 0.2rem !important;
        min-height: 4.75rem !important;
        border-radius: 0.5rem !important;
    }
    html body.cms-index-index .acme-home-trust__icon,
    html body.cms-page-view.cms-home .acme-home-trust__icon {
        width: 2.875rem !important;
        height: 2.875rem !important;
        min-width: 2.875rem !important;
        min-height: 2.875rem !important;
        max-width: 2.875rem !important;
        max-height: 2.875rem !important;
    }
    html body.cms-index-index .acme-home-trust__icon svg,
    html body.cms-page-view.cms-home .acme-home-trust__icon svg,
    html body.cms-index-index .acme-home-trust__icon img,
    html body.cms-page-view.cms-home .acme-home-trust__icon img {
        width: 1.55rem !important;
        height: 1.55rem !important;
        max-width: 1.55rem !important;
        max-height: 1.55rem !important;
    }
    html body.cms-index-index .acme-home-trust__label,
    html body.cms-page-view.cms-home .acme-home-trust__label {
        font-size: clamp(0.75rem, 3.4vw, 0.875rem) !important;
        line-height: 1.2 !important;
        font-weight: 700 !important;
        letter-spacing: -0.01em !important;
        white-space: normal !important;
        overflow-wrap: break-word !important;
        word-break: normal !important;
        hyphens: none !important;
        -webkit-hyphens: none !important;
    }
    /* Desk bottom white = half of trust→desk top (1rem → 0.5rem) */
    html body.cms-index-index .acme-home-seo-desk.acme-home-seo-desk--center,
    html body.cms-page-view.cms-home .acme-home-seo-desk.acme-home-seo-desk--center,
    html body.cms-index-index .acme-home-seo-desk--center,
    html body.cms-page-view.cms-home .acme-home-seo-desk--center {
        margin-bottom: 0.5rem !important;
    }
}

/* ===== Desktop — desk bottom white = half of trust→desk top (2.75rem → 1.375rem) ===== */
@media (min-width: 744px) {
    html body.cms-index-index .acme-home-seo-desk.acme-home-seo-desk--center,
    html body.cms-page-view.cms-home .acme-home-seo-desk.acme-home-seo-desk--center,
    html body.cms-index-index .acme-home-seo-desk--center,
    html body.cms-page-view.cms-home .acme-home-seo-desk--center {
        margin-bottom: 1.375rem !important;
    }
}

/* ===== PDP — MBA: desktop rail + fluid type like homepage banner ===== */
@media (min-width: 744px) and (max-width: 1799px) {
    body.acme-pdp-page .acme-pdp,
    body.catalog-product-view .acme-pdp {
        /* Rail locked in site-width block above — keep type vars only here */
        --acme-pdp-content-width: 93.3125rem !important;
        --acme-pdp-main-w: min(44.4375rem, 100%);
        --acme-pdp-main-h: auto;
        --acme-pdp-gap: clamp(1.25rem, 1.5vw, 2.5rem);
        --acme-pdp-info-w: min(32.9375rem, 100%);
    }

    /* Side-by-side only — tablets use .acme-pdp--tablet-stack (gallery above info). */
    body.acme-pdp-page:not(.acme-pdp--tablet-stack) .acme-pdp__hero {
        gap: var(--acme-pdp-gap, 1.5rem) !important;
        overflow: visible !important;
        /* Do not stretch info to a thumb-overflow gallery — CTA must sit on main bottom */
        align-items: flex-start !important;
        max-width: 100% !important;
    }

    /* Beat stale noverlap 54%/46% caps — JS budgets gallery; info takes remaining */
    body.acme-pdp-page:not(.acme-pdp--tablet-stack) .acme-pdp__gallery {
        flex: 0 0 auto !important;
        max-width: none !important;
        min-width: 0 !important;
        width: auto !important;
        align-self: flex-start !important;
        height: auto !important;
        max-height: none !important;
    }

    body.acme-pdp-page:not(.acme-pdp--tablet-stack) .acme-pdp__gallery .snap-slider,
    body.acme-pdp-page:not(.acme-pdp--tablet-stack) .acme-pdp__gallery [data-slider-type="gallery"] {
        align-items: flex-start !important;
        height: auto !important;
        max-height: none !important;
    }

    /*
     * Thumb rail MUST match main square (equalize sets --acme-pdp-main-size).
     * Without this, 5× thumbs (~822px) stretch the info column and shove ATC down.
     */
    html body.acme-pdp-page:not(.acme-pdp--tablet-stack) .acme-pdp__gallery .snap-pager,
    html body.acme-pdp-page:not(.acme-pdp--tablet-stack) .acme-pdp__gallery [data-pager],
    html body.acme-pdp-page:not(.acme-pdp--tablet-stack) .acme-pdp__gallery .snap-pager > .snap-pager {
        height: var(--acme-pdp-main-size, min(44.4375rem, 100%)) !important;
        max-height: var(--acme-pdp-main-size, min(44.4375rem, 100%)) !important;
        min-height: 0 !important;
        align-self: flex-start !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        scrollbar-width: none !important;
    }

    body.acme-pdp-page .acme-pdp__info,
    body.acme-pdp-page .acme-pdp__panel {
        max-height: none !important;
        overflow: visible !important;
        overflow-y: visible !important;
        /* Desktop/MBA: equalize fills leftover rail (may exceed Figma 527 after densify).
           Tablet-stack overrides to 100% below. */
        max-width: none !important;
        min-width: 0 !important;
        flex: 1 1 auto !important;
        width: auto !important;
        align-self: flex-start !important;
        /* Pin buy/ATC to main bottom edge (same as desktop equalize) */
        min-height: var(--acme-pdp-main-size, auto) !important;
    }

    html body.acme-pdp-page:not(.acme-pdp--expand-options) .acme-pdp__info,
    html body.acme-pdp-page:not(.acme-pdp--expand-options) .acme-pdp__panel {
        /* Match desktop: equal column = gallery square (JS sets --acme-pdp-main-size). */
        height: var(--acme-pdp-main-size, auto) !important;
        max-height: var(--acme-pdp-main-size, none) !important;
        min-height: var(--acme-pdp-main-size, auto) !important;
        align-self: flex-start !important;
        overflow: visible !important;
        overflow-y: visible !important;
    }

    /* Keep ≤3-row flex-grow so ATC shares the main bottom — never attribute scroll */
    html body.acme-pdp-page:not(.acme-pdp--expand-options) .acme-pdp__options-wrap {
        flex: 1 1 auto !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: visible !important;
        overflow-x: visible !important;
        overflow-y: visible !important;
    }

    /* Kill legacy v53 dvh clip / attribute scroll if an older acme-pdp.css still ships */
    html body.acme-pdp-page .acme-pdp__info {
        max-height: var(--acme-pdp-main-size, none) !important;
        overflow: visible !important;
    }
    html body.acme-pdp-page .acme-pdp__options-wrap {
        overflow: visible !important;
        overflow-x: visible !important;
        overflow-y: visible !important;
    }

    body.acme-pdp-page .acme-pdp__buy {
        margin-top: auto !important;
        flex-shrink: 0 !important;
    }

    /* Allow JS equalize up to desktop 711 — beat stale 26.25rem / 34.375rem caps */
    body.acme-pdp-page .acme-pdp__gallery .snap-slider > .relative,
    body.acme-pdp-page .acme-pdp__gallery #gallery-main,
    body.acme-pdp-page .acme-pdp__gallery [data-track] {
        flex: 0 0 var(--acme-pdp-main-size, min(44.4375rem, 100%)) !important;
        width: var(--acme-pdp-main-size, min(44.4375rem, 100%)) !important;
        max-width: min(44.4375rem, 100%) !important;
        min-width: 0 !important;
        height: var(--acme-pdp-main-size, auto) !important;
        max-height: min(44.4375rem, 100%) !important;
        aspect-ratio: 1 / 1 !important;
    }

    body.acme-pdp-page .acme-pdp__title,
    body.acme-pdp-page .acme-pdp__title-wrap .page-title {
        font-size: clamp(1.35rem, 0.9rem + 1.1vw + 0.25vh, 2rem) !important;
        line-height: 1.2 !important;
    }

    /*
     * Trust pills + tier tiles + option pills = desktop ≥1800 sizes.
     * Do NOT vh-squash option pills while locking tiers at 78px — that looked
     * disproportionately huge on MBA 13/15.
     */
    html body.acme-pdp-page .acme-pdp__badges {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        grid-auto-rows: 2.5rem !important;
        height: auto !important;
        max-height: none !important;
        gap: 0.5rem !important;
    row-gap: 0.5rem !important;
    column-gap: 0.5rem !important;
        margin-top: 0.75rem !important; /* title → badges whitespace */
        overflow: visible !important;
    }
    html body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--four,
    html body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--two {
        grid-template-rows: repeat(2, 2.5rem) !important;
    }
    html body.acme-pdp-page .acme-pdp__badges > .acme-pdp__badge:nth-child(n + 3),
    html body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--two > .acme-pdp__badge:nth-child(n + 3),
    html body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--four > .acme-pdp__badge:nth-child(n + 3) {
        display: flex !important;
    }
    html body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--four > .acme-pdp__badge:nth-child(n + 5),
    html body.acme-pdp-page .acme-pdp__badges > .acme-pdp__badge:nth-child(n + 5) {
        display: none !important;
    }
    html body.acme-pdp-page .acme-pdp__badge {
        display: flex !important;
        align-items: center !important;
        min-height: 2.5rem !important;
        max-height: 2.5rem !important;
        height: 2.5rem !important;
        padding: 6px 12px !important;
        gap: 0.5rem !important;
        border-radius: 0.5rem !important;
        overflow: hidden !important; /* text ellipsis only — grid stays visible */
    }
    html body.acme-pdp-page .acme-pdp__badge-text {
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        word-break: keep-all !important;
        overflow-wrap: normal !important;
        font-size: 0.8125rem !important;
        line-height: 1.25rem !important;
    }
    html body.acme-pdp-page .acme-pdp__badge-icon,
    html body.acme-pdp-page .acme-pdp__badge-icon svg {
        width: 1.25rem !important;
        height: 1.25rem !important;
    }

    html body.acme-pdp-page .acme-pdp-tiers__brand {
        height: 78px !important;
        min-height: 78px !important;
        max-height: 78px !important;
        padding: 8px 6px !important;
    }
    html body.acme-pdp-page .acme-pdp-tiers__cols {
        gap: 0.5rem !important;
    }
    html body.acme-pdp-page .acme-pdp-tiers__col {
        height: 78px !important;
        min-height: 78px !important;
        max-height: 78px !important;
        padding: 8px 6px !important;
    }
    html body.acme-pdp-page .acme-pdp-tiers__qty,
    html body.acme-pdp-page .acme-pdp-tiers__price,
    html body.acme-pdp-page .acme-pdp-tiers__price .price,
    html body.acme-pdp-page .acme-pdp-tiers__unit {
        font-size: 14px !important;
        line-height: 1.2 !important;
        white-space: nowrap !important;
    }

    /* Option pills — pad 6×9.6 (was 12 all); min-height hugs label */
    html body.acme-pdp-page .acme-pdp__option-pills {
        gap: 0.5rem !important;
    }
    html body.acme-pdp-page .acme-pdp__option-pills [role="option"],
    html body.acme-pdp-page .acme-pdp__option-pills button,
    html body.acme-pdp-page .acme-pdp__pill,
    html body.acme-pdp-page button.acme-pdp__pill,
    html body.acme-pdp-page .acme-pdp__swatch {
        min-height: 33px !important;
        height: auto !important;
        max-height: none !important;
        padding: 6px 9.6px !important;
        font-size: 16px !important;
        line-height: 1.2 !important;
        white-space: normal !important;
        overflow-wrap: break-word !important;
    }

    body.acme-pdp-page .acme-pdp__atc,
    body.acme-pdp-page button.acme-pdp__atc {
        min-height: 3rem !important;
        font-size: 1rem !important;
        padding-block: 0.75rem !important;
    }

    /* Mild spacing only — never resize trust/tier/option controls */
    body.acme-pdp-page .acme-pdp__hero {
        gap: clamp(1rem, 0.75rem + 0.6vw, 1.5rem) !important;
    }

    body.acme-pdp-page .acme-pdp__panel {
        gap: clamp(0.75rem, 0.5rem + 0.6vh, 1.25rem) !important;
    }

    body.acme-pdp-page .acme-pdp__header {
        gap: 0.35rem !important;
    }

    body.acme-pdp-page .acme-pdp__badges {
        margin-top: 0.75rem !important;
        gap: 0.5rem !important;
    row-gap: 0.5rem !important;
    column-gap: 0.5rem !important;
    }

    /* Whitespace above attributes + equal gap between attribute groups */
    body.acme-pdp-page .acme-pdp__options-wrap {
        margin-top: 1.25rem !important;
        padding-top: 0 !important;
    }

    body.acme-pdp-page .acme-pdp__options-wrap,
    body.acme-pdp-page .acme-pdp__options,
    body.acme-pdp-page .acme-pdp__options-wrap .product-options-wrapper {
        gap: 1rem !important;
        row-gap: 1rem !important;
    }

    body.acme-pdp-page .acme-pdp__option-group {
        margin: 0 !important;
        margin-bottom: 0 !important;
        gap: 0.5rem !important;
    }

    body.acme-pdp-page .acme-pdp__option-label {
        font-size: 0.875rem !important;
        line-height: 1.2 !important;
        margin: 0 !important;
    }

    body.acme-pdp-page .acme-pdp__buy {
        gap: 0.625rem !important;
        margin-top: auto !important;
    }

    body.acme-pdp-page .acme-pdp-tiers,
    body.acme-pdp-page .acme-pdp__tiers {
        margin-bottom: 0.5rem !important;
    }

    body.acme-pdp-page .acme-pdp__price-row,
    body.acme-pdp-page .acme-pdp__buy .price-box .price,
    body.acme-pdp-page .acme-pdp__price-row .price {
        font-size: clamp(1.35rem, 1.1rem + 0.55vw, 1.75rem) !important;
        line-height: 1.15 !important;
    }

    body.acme-pdp-page .acme-pdp__actions,
    body.acme-pdp-page .acme-pdp__qty-atc {
        gap: 0.75rem !important;
    }
}

/*
 * MBA 13 + 15 densify (≤1799 × ≤1100): compact chrome + denser info so ATC fits.
 * Trust 2.5rem + tiers 78px stay locked. equalizeHeroHeights also caps info height.
 * 1100 covers MBA 15 default 1680×1050 — do not drop back to 900.
 */
@media (min-width: 744px) and (max-width: 1799px) and (max-height: 1100px) {
    /*
     * MBA 13 chrome: real sticky is .acme-header__top (72) + __nav (48).
     * Prior rules targeted missing __row/__main — chrome never shrank, ATC sat on the fold edge.
     */
    /*
     * Promo bar must stay readable on MBA 13 — never crush below desktop 2.25rem
     * (1.75rem clipped the wave + FREE SHIPPING row so the strip looked empty).
     */
    html body.acme-pdp-page .acme-promo-bar,
    html body .acme-promo-bar {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        box-sizing: border-box !important;
        min-height: 2.25rem !important;
        height: 2.25rem !important;
        max-height: 2.25rem !important;
        padding-block: 0 !important;
        overflow: hidden !important;
        font-size: 0.8125rem !important;
        line-height: 1.2 !important;
        visibility: visible !important;
        opacity: 1 !important;
        background: linear-gradient(90deg, #0b4f7a 0%, #1f99ce 45%, #3db4e6 100%) !important;
        color: #fff !important;
    }
    html body.acme-pdp-page .acme-promo-bar__track,
    html body .acme-promo-bar__track {
        position: absolute !important;
        inset: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        min-height: 0 !important;
        height: 100% !important;
        padding-block: 0 !important;
        font-size: inherit !important;
        line-height: 1.2 !important;
        transform: none !important;
        opacity: 1 !important;
    }
    html body.acme-pdp-page .acme-promo-bar__msg,
    html body .acme-promo-bar__msg {
        display: inline-flex !important;
        align-items: center !important;
        gap: 0.45rem !important;
        max-height: 2.25rem !important;
        color: #fff !important;
    }
    html body.acme-pdp-page .acme-promo-bar__wave,
    html body .acme-promo-bar__wave {
        width: 1.25rem !important;
        height: 1.25rem !important;
        flex: 0 0 1.25rem !important;
    }
    html body.acme-pdp-page .acme-promo-bar__item,
    html body.acme-pdp-page .acme-promo-bar button,
    html body.acme-pdp-page .acme-promo-bar__btn,
    html body .acme-promo-bar__btn {
        min-height: 0 !important;
        max-height: 1.5rem !important;
        padding-block: 0.15rem !important;
        font-size: 0.75rem !important;
        line-height: 1.2 !important;
    }
    html body.acme-pdp-page .acme-promo-bar__text,
    html body .acme-promo-bar__text {
        color: #fff !important;
        font-size: 0.8125rem !important;
    }
    html body.acme-pdp-page .acme-header__sticky,
    html body.acme-pdp-page .acme-header__sticky-bar {
        min-height: 0 !important;
    }
    html body.acme-pdp-page .acme-header__top {
        /* Denser than 72px, but never collapse the logo/search row */
        min-height: 3.25rem !important;
        height: auto !important;
        padding-block: 0.25rem !important;
    }
    html body.acme-pdp-page .acme-header__top-inner {
        min-height: 2.5rem !important;
        height: auto !important;
        padding-block: 0 !important;
    }
    html body.acme-pdp-page .acme-header__brand,
    html body.acme-pdp-page .acme-header__brand > a[href],
    html body.acme-pdp-page .acme-header__brand > .logo {
        min-height: 0 !important;
    }
    /* Keep MBA logo at site size (43.875px) — densify chrome, not the brand mark. */
    html body.acme-pdp-page .acme-header__brand img,
    html body.acme-pdp-page .acme-header__brand > a[href] img,
    html body.acme-pdp-page .acme-header__brand > .logo img,
    html body.acme-pdp-page .acme-header__sticky .acme-header__logo img,
    html body.acme-pdp-page .acme-header__sticky .acme-logo img {
        max-height: 2.7421875rem !important; /* 43.875px — same as non-PDP MBA */
    }
    html body.acme-pdp-page .acme-header__nav {
        min-height: 0 !important;
        height: auto !important;
        padding-block: 0 !important;
    }
    html body.acme-pdp-page .acme-header__nav-inner {
        min-height: 0 !important;
        padding-block: 0.15rem !important;
    }
    html body.acme-pdp-page .acme-header__nav a:not([href*="request-a-catalog"]),
    html body.acme-pdp-page .acme-mega-nav__link:not([href*="request-a-catalog"]),
    html body.acme-pdp-page .acme-mega-nav__trigger:not([href*="request-a-catalog"]),
    html body.acme-pdp-page .acme-cat-nav__trigger:not([href*="request-a-catalog"]) {
        padding-block: 0.25rem !important;
        min-height: 0 !important;
        font-size: 0.8125rem !important;
        line-height: 1.2 !important;
    }

    /*
     * Short Air: keep desktop breadcrumb whitespace (1.5rem top + bottom).
     * equalizeHeroHeights budgets the hero under the crumbs — do not crush pad.
     */
    html body.acme-pdp-page .breadcrumbs,
    html body.acme-pdp-page .acme-breadcrumbs,
    html body.acme-pdp-page .acme-pdp-breadcrumbs,
    html body.acme-pdp-page .top-container .breadcrumbs,
    html body.catalog-product-view .breadcrumbs,
    html body.catalog-product-view .acme-breadcrumbs {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        min-height: 0 !important;
        font-size: 0.875rem !important;
        line-height: 1.25 !important;
    }

    html body.acme-pdp-page .acme-pdp {
        --acme-pdp-gap: 0.65rem;
    }

    html body.acme-pdp-page .acme-pdp__hero {
        gap: 0.65rem !important;
    }

    html body.acme-pdp-page .acme-pdp__panel {
        gap: 0.2rem !important;
    }

    html body.acme-pdp-page .acme-pdp__header {
        gap: 0.1rem !important;
    }

    html body.acme-pdp-page .acme-pdp__sku {
        min-height: 0 !important;
        line-height: 1.15 !important;
        font-size: 0.75rem !important;
        margin: 0 !important;
    }

    html body.acme-pdp-page .acme-pdp__badges {
        margin-top: 0.75rem !important; /* keep title → badges gap on MBA 13 */
        gap: 0.3rem !important;
    row-gap: 0.3rem !important;
    column-gap: 0.3rem !important;
        grid-template-rows: 2.5rem !important;
        grid-auto-rows: 2.5rem !important;
        height: auto !important;
        max-height: none !important;
    }

    html body.acme-pdp-page .acme-pdp__badge {
        min-height: 2.5rem !important;
        max-height: 2.5rem !important;
        height: 2.5rem !important;
    }

    html body.acme-pdp-page .acme-pdp__title,
    html body.acme-pdp-page .acme-pdp__title-wrap .page-title {
        font-size: clamp(1.05rem, 0.8rem + 0.55vw, 1.35rem) !important;
        line-height: 1.12 !important;
    }

    /*
     * MBA 13: attributes + titles visible, fill the options slot, never scroll.
     * Both overflow axes must be visible — x:hidden + y:visible computes to y:auto.
     */
    html body.acme-pdp-page .acme-pdp__options-wrap {
        margin-top: 0.75rem !important;
        flex: 1 1 auto !important;
        min-height: 0 !important;
        max-height: none !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: stretch !important;
        overflow: visible !important;
        overflow-x: visible !important;
        overflow-y: visible !important;
    }

    html body.acme-pdp-page .acme-pdp__options-wrap,
    html body.acme-pdp-page .acme-pdp__options,
    html body.acme-pdp-page .acme-pdp__options-wrap .product-options-wrapper {
        gap: 0.5rem !important;
        row-gap: 0.5rem !important;
    }

    html body.acme-pdp-page .acme-pdp__options,
    html body.acme-pdp-page .acme-pdp__options-wrap .product-options-wrapper {
        flex: 1 1 auto !important;
        min-height: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        overflow: visible !important;
        overflow-y: visible !important;
        max-height: none !important;
    }
    /* Densify: compact fixed gaps (1.75rem is desktop/hub-only — blows MBA fold) */
    html body.acme-pdp-page .acme-pdp__options:not(.acme-pdp__options--attrs-3),
    html body.acme-pdp-page .acme-pdp__options--attrs-3 {
        justify-content: flex-start !important;
        gap: 0.5rem !important;
        row-gap: 0.5rem !important;
    }

    html body.acme-pdp-page .acme-pdp__option-group {
        gap: 0.25rem !important;
        margin: 0 !important;
        flex: 0 0 auto !important;
    }

    html body.acme-pdp-page .acme-pdp__option-label {
        font-size: 0.75rem !important;
        line-height: 1.15 !important;
        margin: 0 !important;
    }

    html body.acme-pdp-page .acme-pdp__option-pills {
        gap: 0.3rem !important;
        min-height: 1.75rem !important;
        flex-wrap: wrap !important;
    }
    html body.acme-pdp-page .acme-pdp__option-pills [role="option"],
    html body.acme-pdp-page .acme-pdp__option-pills button,
    html body.acme-pdp-page .acme-pdp__pill,
    html body.acme-pdp-page button.acme-pdp__pill,
    html body.acme-pdp-page .acme-pdp__swatch {
        min-height: 28px !important;
        height: auto !important;
        max-height: none !important;
        padding: 6px 10px !important;
        font-size: 13px !important;
        line-height: 1.1 !important;
    }

    html body.acme-pdp-page .acme-pdp-tiers__brand,
    html body.acme-pdp-page .acme-pdp-tiers__col {
        height: 78px !important;
        min-height: 78px !important;
        max-height: 78px !important;
    }

    html body.acme-pdp-page .acme-pdp__buy {
        gap: 0.2rem !important;
    }

    html body.acme-pdp-page .acme-pdp-tiers,
    html body.acme-pdp-page .acme-pdp__tiers {
        margin-bottom: 0.1rem !important;
    }

    html body.acme-pdp-page .acme-pdp__price-row,
    html body.acme-pdp-page .acme-pdp__price-row .price-box .price,
    html body.acme-pdp-page .acme-pdp__price-row .price {
        font-size: 1.25rem !important;
        line-height: 1.1 !important;
    }

    html body.acme-pdp-page .acme-pdp__actions,
    html body.acme-pdp-page .acme-pdp__qty-atc {
        gap: 0.35rem !important;
    }

    html body.acme-pdp-page .acme-pdp__atc,
    html body.acme-pdp-page button.acme-pdp__atc {
        min-height: 2.375rem !important;
        font-size: 0.8125rem !important;
        padding-block: 0.4rem !important;
    }

    html body.acme-pdp-page .acme-pdp__list-btn {
        min-height: 2.375rem !important;
        max-height: 2.375rem !important;
        height: 2.375rem !important;
        font-size: 0.8125rem !important;
        padding-block: 0.4rem !important;
    }

    html body.acme-pdp-page .acme-pdp__qty,
    html body.acme-pdp-page .acme-pdp__qty-option {
        min-height: 2.375rem !important;
    }

    /* Extra densify only when JS detects ATC still past the fold */
    html body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__panel {
        gap: 0.12rem !important;
    }
    html body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__header {
        gap: 0.05rem !important;
    }
    html body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__badges {
        margin-top: 0.75rem !important;
        gap: 0.25rem !important;
    row-gap: 0.25rem !important;
    column-gap: 0.25rem !important;
    }
    /* Densify: keep 2×2 (up to 4 badges) — pill pad shrink freed fold room */
    html body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__badges,
    html.acme-pdp--hub body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__badges,
    html:not(.acme-pdp--hub) body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__badges,
    html body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__badges.acme-pdp__badges--two,
    html body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__badges.acme-pdp__badges--four {
        grid-template-rows: repeat(2, 2.25rem) !important;
        grid-auto-rows: 2.25rem !important;
        height: auto !important;
        max-height: none !important;
    }
    html body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__badges > .acme-pdp__badge:nth-child(n + 3),
    html body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__badges.acme-pdp__badges--two > .acme-pdp__badge:nth-child(n + 3) {
        display: flex !important;
    }
    html body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__badges.acme-pdp__badges--four > .acme-pdp__badge:nth-child(n + 5),
    html body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__badges > .acme-pdp__badge:nth-child(n + 5) {
        display: none !important;
    }
    html body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__badge {
        min-height: 2.25rem !important;
        max-height: 2.25rem !important;
        height: 2.25rem !important;
    }
    /* Hub densify only — child keeps 26px title (long SKU names must not crush). */
    html.acme-pdp--hub body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__title,
    html.acme-pdp--hub body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__title-wrap .page-title {
        font-size: clamp(1.125rem, 0.85rem + 0.55vw, 1.5rem) !important;
        line-height: 1.15 !important;
    }
    html:not(.acme-pdp--hub) body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__title,
    html:not(.acme-pdp--hub) body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__title-wrap .page-title {
        font-size: 26px !important;
        line-height: 1.2 !important;
    }
    /* Child: clip gallery + raise info so slides never paint over buy/options */
    html:not(.acme-pdp--hub) body.acme-pdp-page .acme-pdp__gallery,
    html:not(.acme-pdp--hub) body.acme-pdp-page .acme-pdp__gallery .snap-slider,
    html:not(.acme-pdp--hub) body.acme-pdp-page .acme-pdp__gallery [data-slider-type="gallery"] {
        overflow: hidden !important;
    }
    html:not(.acme-pdp--hub) body.acme-pdp-page .acme-pdp__info {
        position: relative !important;
        z-index: 5 !important;
        background: #fff !important;
        isolation: isolate !important;
    }
    html:not(.acme-pdp--hub) body.acme-pdp-page .acme-pdp__options-wrap {
        flex: 0 1 auto !important;
        justify-content: flex-start !important;
    }
    html:not(.acme-pdp--hub) body.acme-pdp-page .acme-pdp__buy {
        margin-top: auto !important;
        background: #fff !important;
        z-index: 6 !important;
        padding-top: 0.5rem !important;
    }
    html body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__buy {
        gap: 0.12rem !important;
    }
    html body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp-tiers__brand,
    html body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp-tiers__col {
        height: 70px !important;
        min-height: 70px !important;
        max-height: 70px !important;
    }
    html body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__atc,
    html body.acme-pdp-page.acme-pdp--mba-dense button.acme-pdp__atc,
    html body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__qty,
    html body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__qty-option {
        min-height: 2.125rem !important;
    }
}

/* MBA sticky: Request a Catalog — weight + vertical center in cream nav row */
@media (min-width: 744px) and (max-width: 1799px) {
    .acme-header__sticky-bar.is-pinned a.acme-mega-nav__link[href*="request-a-catalog"],
    .acme-header__sticky-bar.is-pinned a.acme-cat-nav__trigger[href*="request-a-catalog"],
    .acme-header__sticky-bar.is-pinned a.acme-cat-nav__trigger--link[href*="request-a-catalog"],
    .acme-header__sticky-bar.is-pinned .acme-mega-nav__item:has(> a[href*="request-a-catalog"]) a {
        font-weight: 500 !important;
    }

    .acme-header__sticky-bar.is-pinned a.acme-mega-nav__link[href*="request-a-catalog"] .acme-cat-nav__label,
    .acme-header__sticky-bar.is-pinned a.acme-cat-nav__trigger[href*="request-a-catalog"] .acme-cat-nav__label {
        font-weight: 500 !important;
    }

    /*
     * Sticky cream row: keep Catalog pill optically mid-row.
     * Beats (1) asymmetric base pad 0.337/0.424, (2) sticky padding-block .55rem,
     * (3) v34 shared mega-link height/pad that squashes the blue CTA.
     */
    html body .acme-header__sticky-bar.is-pinned .acme-header__nav,
    html body .acme-header__sticky-bar.is-pinned .acme-header__nav-inner {
        display: flex !important;
        align-items: center !important;
    }
    html body .acme-header__sticky-bar.is-pinned .acme-mega-nav__list > .acme-mega-nav__item:has(> a[href*="request-a-catalog"]),
    html body .acme-header__sticky-bar.is-pinned .acme-mega-nav__list > li:has(> a[href*="request-a-catalog"]) {
        position: absolute !important;
        right: 0 !important;
        left: auto !important;
        top: 50% !important;
        bottom: auto !important;
        transform: translateY(-50%) !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        line-height: 0 !important;
        z-index: 2 !important;
    }
    html body .acme-header__sticky-bar.is-pinned a.acme-mega-nav__link[href*="request-a-catalog"],
    html body .acme-header__sticky-bar.is-pinned a.acme-cat-nav__trigger[href*="request-a-catalog"],
    html body .acme-header__sticky-bar.is-pinned a.acme-cat-nav__trigger--link[href*="request-a-catalog"],
    html body .acme-header__sticky-bar.is-pinned .acme-mega-nav__item:has(> a[href*="request-a-catalog"]) a {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        align-self: center !important;
        box-sizing: border-box !important;
        /* Shorter than cream-row links (2.25rem); a little wider for the label */
        height: 1.75rem !important;
        min-height: 1.75rem !important;
        max-height: 1.75rem !important;
        padding: 0 1.55rem !important;
        padding-block: 0 !important;
        line-height: 1 !important;
        font-size: 0.75rem !important;
        white-space: nowrap !important;
    }
    html body .acme-header__sticky-bar.is-pinned a.acme-mega-nav__link[href*="request-a-catalog"] .acme-cat-nav__label,
    html body .acme-header__sticky-bar.is-pinned a.acme-cat-nav__trigger[href*="request-a-catalog"] .acme-cat-nav__label {
        line-height: 1 !important;
        display: inline-flex !important;
        align-items: center !important;
    }

    /*
     * Mega nav center on MBA 13/15.
     * Catalog is position:absolute; right:0 (see acme-header v62) so it is
     * out of flex flow — justify-content:center already centers the remaining
     * links on the content rail. Do NOT add padding-inline-end: that shifts
     * the cluster ~90px left of the logo/cart center (measured @1440).
     */
    html body .acme-header__nav-inner {
        position: relative !important;
    }
    html body .acme-mega-nav__list,
    html body nav.acme-mega-nav .acme-mega-nav__list,
    html body .acme-header__sticky-bar.is-pinned .acme-mega-nav__list {
        justify-content: center !important;
        box-sizing: border-box !important;
        padding-inline: 0 !important;
    }
    html body .acme-mega-nav__list > .acme-mega-nav__item:has(> a[href*="request-a-catalog"]),
    html body .acme-mega-nav__list > li:has(> a[href*="request-a-catalog"]) {
        position: absolute !important;
        right: 0 !important;
        left: auto !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        margin: 0 !important;
        z-index: 2 !important;
    }

    /* Dropdown spans cream nav-inner; inner keeps header pad for column inset */
    html body .acme-mega-panel {
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }
}

/*
 * MBA 13/15 PDP attributes — final overrides.
 * Exactly 3 configurable attribute rows → vertically equidistant.
 * Otherwise keep desktop-like fixed gaps.
 */
@media (min-width: 744px) and (max-width: 1799px) {
    /* Hub only — child/landing must stay tight under badges */
    html.acme-pdp--hub body.acme-pdp-page .acme-pdp__options-wrap {
        margin-top: 1.25rem !important;
        overflow: visible !important;
        overflow-x: visible !important;
        overflow-y: visible !important;
    }
    html:not(.acme-pdp--hub) body.acme-pdp-page .acme-pdp__options-wrap {
        margin-top: 0 !important;
        overflow: visible !important;
        overflow-x: visible !important;
        overflow-y: visible !important;
    }
    html body.acme-pdp-page .acme-pdp__options-wrap,
    html body.acme-pdp-page .acme-pdp__options,
    html body.acme-pdp-page .acme-pdp__options-wrap .product-options-wrapper {
        gap: 1rem !important;
        row-gap: 1rem !important;
    }
    html body.acme-pdp-page .acme-pdp__option-group {
        margin: 0 !important;
        gap: 0.5rem !important;
    }

    /* 3 attribute rows: fixed gap (no space-between stretch) */
    html body.acme-pdp-page .acme-pdp__options-wrap:has(.acme-pdp__options--attrs-3),
    html body.acme-pdp-page .acme-pdp__options--attrs-3 {
        flex: 0 1 auto !important;
        min-height: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: flex-start !important;
        gap: 1.75rem !important;
        row-gap: 1.75rem !important;
    }
    html body.acme-pdp-page .acme-pdp__options--attrs-3 > .acme-pdp__option-group {
        flex: 0 0 auto !important;
        margin: 0 !important;
    }
}

@media (min-width: 744px) and (max-width: 1799px) and (max-height: 1100px) {
    html body.acme-pdp-page .acme-pdp__info,
    html body.acme-pdp-page .acme-pdp__panel {
        overflow: visible !important;
        overflow-y: visible !important;
    }
    html body.acme-pdp-page .acme-pdp__options-wrap {
        flex: 1 1 auto !important;
        min-height: 0 !important;
        max-height: none !important;
        display: flex !important;
        flex-direction: column !important;
        overflow: visible !important;
        overflow-x: visible !important;
        overflow-y: visible !important;
    }
    html.acme-pdp--hub body.acme-pdp-page .acme-pdp__options-wrap {
        margin-top: 0.75rem !important;
    }
    html:not(.acme-pdp--hub) body.acme-pdp-page .acme-pdp__options-wrap {
        margin-top: 0 !important;
    }
    html body.acme-pdp-page .acme-pdp__options,
    html body.acme-pdp-page .acme-pdp__options-wrap .product-options-wrapper {
        flex: 1 1 auto !important;
        min-height: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        overflow: visible !important;
        overflow-y: visible !important;
        max-height: none !important;
    }
    /* Densify fold: keep compact gaps (do not inherit desktop 1.75rem) */
    html body.acme-pdp-page .acme-pdp__options:not(.acme-pdp__options--attrs-3),
    html body.acme-pdp-page .acme-pdp__options-wrap:not(:has(.acme-pdp__options--attrs-3)) .acme-pdp__options,
    html body.acme-pdp-page .acme-pdp__options--attrs-3 {
        justify-content: flex-start !important;
        gap: 0.5rem !important;
        row-gap: 0.5rem !important;
    }
    html body.acme-pdp-page .acme-pdp__options-wrap {
        gap: 0.5rem !important;
        row-gap: 0.5rem !important;
    }
    html body.acme-pdp-page .acme-pdp__option-group {
        margin: 0 !important;
        gap: 0.25rem !important;
        flex: 0 0 auto !important;
    }
    html body.acme-pdp-page .acme-pdp__option-label {
        font-size: 0.75rem !important;
        line-height: 1.15 !important;
        margin: 0 !important;
    }
    html body.acme-pdp-page .acme-pdp__option-pills {
        gap: 0.3rem !important;
        min-height: 1.75rem !important;
        flex-wrap: wrap !important;
    }
    html body.acme-pdp-page .acme-pdp__option-pills [role="option"],
    html body.acme-pdp-page .acme-pdp__option-pills button,
    html body.acme-pdp-page .acme-pdp__pill,
    html body.acme-pdp-page button.acme-pdp__pill,
    html body.acme-pdp-page .acme-pdp__swatch {
        min-height: 28px !important;
        height: auto !important;
        max-height: none !important;
        padding: 6px 10px !important;
        font-size: 13px !important;
        line-height: 1.1 !important;
    }
}


/*
 * Tablets — iPad Mini 744 / Surface Pro 10 960 / iPad Pro 13 1032 (+ landscape).
 * Mega = mobile hamburger ≤1199. Stacked PDP also covers Pro 13 / Surface landscape
 * via portrait≤1440 and hover:none≤1511 (MBA Air with mouse stays side-by-side).
 */
@media (min-width: 744px) and (max-width: 1199px) {
    /* --- Nav: same as phone --- */
    html body .acme-header .lg\:hidden,
    html body header.page-header .lg\:hidden,
    html body .acme-header__sticky .lg\:hidden,
    html body .acme-header [class*="lg:hidden"],
    html body .acme-header__brand > [x-data="initMobileMenu"] {
        display: block !important;
    }
    html body .acme-header__nav,
    html body .acme-header__nav-inner,
    html body .acme-mega-nav {
        display: none !important;
        visibility: hidden !important;
        height: 0 !important;
        min-height: 0 !important;
        overflow: hidden !important;
        pointer-events: none !important;
    }
    html body .acme-header .hidden.lg\:flex,
    html body header.page-header .hidden.lg\:flex,
    html body .acme-header .lg\:flex:not(.lg\:hidden) {
        display: none !important;
    }
    html body .acme-header__search-toggle {
        display: inline-flex !important;
    }
    /* One search control only — hide desktop form until toggle opens it */
    html body .acme-header__search:not(.acme-header__search--open) {
        display: none !important;
    }
    html body .acme-header__search.acme-header__search--open {
        display: block !important;
        width: 100% !important;
        max-width: none !important;
    }
}

/*
 * Stacked PDP — phones + touch tablets only.
 * NEVER match MBA / mouse desktop: require hover:none or pointer:coarse (except phones ≤743).
 */
@media (max-width: 743px),
       (max-width: 1376px) and (hover: none),
       (max-width: 1376px) and (pointer: coarse),
       (max-width: 1440px) and (orientation: portrait) and (hover: none),
       (max-width: 1440px) and (orientation: portrait) and (pointer: coarse),
       (max-width: 1511px) and (hover: none),
       (max-width: 1511px) and (pointer: coarse) {
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__hero,
    html body.acme-pdp-page .acme-pdp__hero {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        max-height: none !important;
    }
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery,
    html body.acme-pdp-page .acme-pdp__gallery {
        flex: 0 0 auto !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        align-self: stretch !important;
        height: auto !important;
        max-height: none !important;
        order: 1 !important;
    }
    /* Tablets: thumbs LEFT, main RIGHT — 170∶711∶40 (scoped; MBA never enters this MQ). */
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery .snap-slider,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery [data-slider-type="gallery"],
    html body.acme-pdp-page .acme-pdp__gallery .snap-slider,
    html body.acme-pdp-page .acme-pdp__gallery [data-slider-type="gallery"] {
        --acme-pdp-gallery-gap: clamp(0.75rem, 2.5vw, 2.5rem);
        --acme-pdp-thumb-w: calc((100% - var(--acme-pdp-gallery-gap)) * 170 / 881);
        --acme-pdp-main-w: calc((100% - var(--acme-pdp-gallery-gap)) * 711 / 881);
        flex-direction: row !important;
        align-items: flex-start !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        gap: var(--acme-pdp-gallery-gap) !important;
    }
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery .snap-slider > .snap-pager,
    html body.acme-pdp-page .acme-pdp__gallery .snap-slider > .snap-pager {
        order: 1 !important;
        flex: 0 0 var(--acme-pdp-thumb-w) !important;
        width: var(--acme-pdp-thumb-w) !important;
        min-width: var(--acme-pdp-thumb-w) !important;
        max-width: var(--acme-pdp-thumb-w) !important;
        height: auto !important;
        max-height: min(70vw, 40rem) !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        gap: calc(var(--acme-pdp-thumb-w) * 10 / 170) !important;
    }
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery .snap-pager [data-pager],
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery .snap-pager > .snap-pager,
    html body.acme-pdp-page .acme-pdp__gallery .snap-pager [data-pager],
    html body.acme-pdp-page .acme-pdp__gallery .snap-pager > .snap-pager {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        flex: 0 0 auto !important;
        flex-direction: column !important;
    }
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp {
        --acme-pdp-thumb-w: calc((100% - clamp(0.75rem, 2.5vw, 2.5rem)) * 170 / 881);
    }
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery .snap-pager .snap-marker,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery .snap-pager a.snap-marker,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery .snap-pager button.snap-marker,
    html body.acme-pdp-page .acme-pdp__gallery .snap-pager .snap-marker,
    html body.acme-pdp-page .acme-pdp__gallery .snap-pager a.snap-marker,
    html body.acme-pdp-page .acme-pdp__gallery .snap-pager button.snap-marker {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        aspect-ratio: 1 / 1 !important;
        flex: 0 0 auto !important;
        box-sizing: border-box !important;
    }
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery .snap-slider > .relative,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery #gallery-main,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery [data-track],
    html body.acme-pdp-page .acme-pdp__gallery .snap-slider > .relative,
    html body.acme-pdp-page .acme-pdp__gallery #gallery-main,
    html body.acme-pdp-page .acme-pdp__gallery [data-track] {
        order: 2 !important;
        /* Fill remaining rail after thumbs — no right-side gap on iPad / Surface */
        flex: 1 1 0 !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: 100% !important;
        aspect-ratio: 1 / 1 !important;
        height: auto !important;
        max-height: none !important;
    }
    /* Phone: main ABOVE + horizontal thumb slider BELOW.
     * Must match/beat .acme-pdp--tablet-stack left-rail specificity (phones also get that class). */
    @media (max-width: 743px) {
        html body.acme-pdp-page .acme-pdp,
        html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp {
            --acme-pdp-thumb-w: calc(100% * 170 / 711);
            --acme-pdp-m-thumb-gap: 0.625rem;
        }
        html body.acme-pdp-page .acme-pdp__gallery .snap-slider,
        html body.acme-pdp-page .acme-pdp__gallery [data-slider-type="gallery"],
        html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery .snap-slider,
        html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery [data-slider-type="gallery"] {
            flex-direction: column !important;
            align-items: stretch !important;
            gap: clamp(0.75rem, 5.6vw, 1.5rem) !important;
        }
        html body.acme-pdp-page .acme-pdp__gallery .snap-slider > .relative,
        html body.acme-pdp-page .acme-pdp__gallery #gallery-main,
        html body.acme-pdp-page .acme-pdp__gallery [data-track],
        html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery .snap-slider > .relative,
        html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery #gallery-main,
        html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery [data-track] {
            order: 1 !important;
            width: 100% !important;
            max-width: 100% !important;
            flex: 0 0 auto !important;
            min-width: 0 !important;
        }
        html body.acme-pdp-page .acme-pdp__gallery .snap-pager,
        html body.acme-pdp-page .acme-pdp__gallery [data-pager],
        html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery .snap-pager,
        html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery [data-pager] {
            order: 2 !important;
            width: 100% !important;
            min-width: 0 !important;
            max-width: 100% !important;
            height: auto !important;
            max-height: none !important;
            flex: 0 0 auto !important;
            flex-direction: row !important;
            flex-wrap: nowrap !important;
            align-items: stretch !important;
            gap: var(--acme-pdp-m-thumb-gap, 0.625rem) !important;
            overflow-x: auto !important;
            overflow-y: hidden !important;
            scrollbar-width: none !important;
            -ms-overflow-style: none !important;
        }
        html body.acme-pdp-page .acme-pdp__gallery .snap-pager::-webkit-scrollbar,
        html body.acme-pdp-page .acme-pdp__gallery [data-pager]::-webkit-scrollbar,
        html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery .snap-pager::-webkit-scrollbar,
        html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery [data-pager]::-webkit-scrollbar {
            display: none !important;
            width: 0 !important;
            height: 0 !important;
        }
        html body.acme-pdp-page .acme-pdp__gallery .snap-pager .snap-marker,
        html body.acme-pdp-page .acme-pdp__gallery .snap-pager a.snap-marker,
        html body.acme-pdp-page .acme-pdp__gallery .snap-pager button.snap-marker,
        html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery .snap-pager .snap-marker,
        html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery .snap-pager a.snap-marker,
        html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery .snap-pager button.snap-marker {
            flex: 0 0 calc(100% * 170 / 711) !important;
            width: calc(100% * 170 / 711) !important;
            min-width: calc(100% * 170 / 711) !important;
            max-width: calc(100% * 170 / 711) !important;
            height: auto !important;
            min-height: 0 !important;
            max-height: none !important;
            aspect-ratio: 1 / 1 !important;
        }
    }
    html body.acme-pdp-page .acme-pdp__info,
    html body.acme-pdp-page .acme-pdp__panel,
    html body.acme-pdp-page:not(.acme-pdp--expand-options) .acme-pdp__info,
    html body.acme-pdp-page:not(.acme-pdp--expand-options) .acme-pdp__panel,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__info,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__panel {
        height: auto !important;
        max-height: none !important;
        min-height: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        overflow: visible !important;
        overflow-y: visible !important;
        display: flex !important;
        flex-direction: column !important;
        order: 2 !important;
        align-self: stretch !important;
    }
    html body.acme-pdp-page .acme-pdp__options-wrap,
    html body.acme-pdp-page:not(.acme-pdp--expand-options) .acme-pdp__options-wrap {
        flex: 0 0 auto !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: visible !important;
        margin-bottom: 0 !important;
        position: relative !important;
        z-index: 1 !important;
    }
    html body.acme-pdp-page .acme-pdp__options,
    html body.acme-pdp-page .acme-pdp__options--attrs-3,
    html body.acme-pdp-page .acme-pdp__options-wrap:has(.acme-pdp__options--attrs-3) {
        flex: 0 0 auto !important;
        justify-content: flex-start !important;
        gap: 1.75rem !important;
        row-gap: 1.75rem !important;
    }
    html body.acme-pdp-page .acme-pdp__option-pills {
        gap: 0.5rem !important;
        flex-wrap: wrap !important;
    }
    html body.acme-pdp-page .acme-pdp__option-pills [role="option"],
    html body.acme-pdp-page .acme-pdp__option-pills button,
    html body.acme-pdp-page .acme-pdp__pill,
    html body.acme-pdp-page button.acme-pdp__pill,
    html body.acme-pdp-page .acme-pdp__swatch {
        min-height: 2.5rem !important;
        padding: 0.625rem 0.875rem !important;
        font-size: 0.9375rem !important;
        line-height: 1.2 !important;
    }
    html body.acme-pdp-page .acme-pdp__buy {
        display: flex !important;
        flex-direction: column !important;
        gap: 0.75rem !important;
        margin-top: 1.25rem !important; /* real gap under pills — not auto-pin overlap */
        flex: 0 0 auto !important;
        position: relative !important;
        z-index: 2 !important;
        background: #fff !important;
    }
    html body.acme-pdp-page .acme-pdp__qty,
    html body.acme-pdp-page .acme-pdp__qty-option,
    html body.acme-pdp-page .acme-pdp__atc,
    html body.acme-pdp-page button.acme-pdp__atc {
        min-height: 2.75rem !important;
    }
    html body.acme-pdp-page .acme-pdp__atc,
    html body.acme-pdp-page button.acme-pdp__atc {
        font-size: 1rem !important;
        padding-block: 0.75rem !important;
    }
}

/* Desktop ≥1200 only: Tailwind lg: → desktop mega (tablets stay on hamburger) */
@media (min-width: 1200px) {
    .acme-header .lg\:hidden,
    header.page-header .lg\:hidden,
    .acme-header__sticky .lg\:hidden,
    body.acme-pdp-page .lg\:hidden.acme-header__actions,
    body .acme-header [class*="lg:hidden"] {
        display: none !important;
    }
    .acme-header .hidden.lg\:flex,
    header.page-header .hidden.lg\:flex,
    .acme-header .lg\:flex:not(.lg\:hidden) {
        display: flex !important;
    }
    .acme-header .hidden.lg\:block,
    header.page-header .hidden.lg\:block {
        display: block !important;
    }
    .acme-header__nav {
        display: flex !important;
    }
    .acme-header__search-toggle {
        display: none !important;
    }
    .acme-header__search {
        display: block !important;
    }
}


/* Tablets only — DZEE strip; phones keep Wholesale Pricing card (≤743). */
@media (min-width: 744px) and (max-width: 1376px),
       (min-width: 744px) and (max-width: 1440px) and (orientation: portrait),
       (min-width: 744px) and (max-width: 1511px) and (hover: none),
       (min-width: 744px) and (max-width: 1511px) and (pointer: coarse) {
    html body.acme-pdp-page .acme-pdp-tiers__banner {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 3fr) !important;
        gap: 0.5rem !important;
        padding: 0 !important;
        background: transparent !important;
        border-radius: 0 !important;
    }
    html body.acme-pdp-page .acme-pdp-tiers__banner::before {
        content: none !important;
        display: none !important;
    }
    html body.acme-pdp-page .acme-pdp-tiers__brand,
    html body.acme-pdp-page .acme-pdp-tiers__col {
        height: 78px !important;
        min-height: 78px !important;
        max-height: 78px !important;
        padding: 8px 6px !important;
    }
    html body.acme-pdp-page .acme-pdp-tiers__cols {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 0.5rem !important;
    }
}

/*
 * Close buttons — modestly larger than original (not 44px).
 * PDP pill × ≈ 24px; dialogs/menus ≈ 32px.
 */
html body .acme-pdp__pill-clear,
html body.acme-pdp-page .acme-pdp__pill-clear {
    width: 1.25rem !important;
    height: 1.25rem !important;
    min-width: 1.25rem !important;
    min-height: 1.25rem !important;
    top: -0.55rem !important;
    right: -0.55rem !important;
    border-width: 1.5px !important;
}
html body .acme-pdp__pill-clear svg,
html body.acme-pdp-page .acme-pdp__pill-clear svg {
    width: 0.625rem !important;
    height: 0.625rem !important;
}

html body .acme-ship-modal__close,
html body button.acme-ship-modal__close {
    width: 1.75rem !important;
    height: 1.75rem !important;
    min-width: 1.75rem !important;
    min-height: 1.75rem !important;
    top: -0.4rem !important;
    right: -0.4rem !important;
    font-size: 1.125rem !important;
}

html body .acme-close-btn,
html body .acme-header__brand [x-data="initMobileMenu"] dialog button[aria-label*="Close"],
html body dialog button[aria-label*="Close menu"],
html body .acme-cart-drawer__header button[aria-label*="Close"],
html body button[aria-label*="Close minicart"],
html body button[aria-label*="Close panel"],
html body button[aria-label*="Close message"] {
    min-width: 1.75rem !important;
    min-height: 1.75rem !important;
    width: 1.75rem !important;
    height: 1.75rem !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    -webkit-tap-highlight-color: transparent;
}
html body .acme-header__brand [x-data="initMobileMenu"] dialog button[aria-label*="Close"] svg,
html body dialog button[aria-label*="Close menu"] svg,
html body .acme-cart-drawer__header button[aria-label*="Close"] svg,
html body button[aria-label*="Close minicart"] svg,
html body button[aria-label*="Close panel"] svg {
    width: 1rem !important;
    height: 1rem !important;
    flex: 0 0 auto !important;
}

/*
 * Badge checkmark icons — always visible on tablet (+ phone).
 * Stale pub/.../css/acme-header.css still uses max-width:1023 and hides icons.
 */
html body.acme-pdp-page .acme-pdp__badge-icon,
html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__badge-icon {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 1.25rem !important;
    height: 1.25rem !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    justify-content: center !important;
}
html body.acme-pdp-page .acme-pdp__badge-icon svg,
html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__badge-icon svg {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 1.25rem !important;
    height: 1.25rem !important;
}
html body.acme-pdp-page .acme-pdp__badge,
html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
}

/*
 * FINAL — locked MBA 13/15 + mouse-desktop side-by-side (same row as ≥1800 PDP).
 * Beat a stale .acme-pdp--tablet-stack class: Mac trackpads report maxTouchPoints>0 and
 * used to force column stack. True touch tablets (hover:none / pointer:coarse) keep the
 * stacked rules below and do not match this MQ.
 */
@media (min-width: 744px) and (max-width: 1799px) and (hover: hover) and (pointer: fine) {
    html body.acme-pdp-page .acme-pdp__hero,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__hero {
        display: flex !important;
        flex-direction: row !important;
        align-items: stretch !important;
        flex-wrap: nowrap !important;
        width: 100% !important;
        max-width: 100% !important;
        gap: var(--acme-pdp-gap, 0.65rem) !important;
    }
    /*
     * MBA 13/15: gallery + info each half the hero (wider right rail).
     * JS sets exact px; these % fall back before equalize.
     */
    html body.acme-pdp-page:not(.acme-pdp--tablet-stack) .acme-pdp__gallery,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery {
        order: 0 !important;
        flex: 0 0 calc((100% - var(--acme-pdp-gap, 0.65rem)) / 2) !important;
        width: calc((100% - var(--acme-pdp-gap, 0.65rem)) / 2) !important;
        max-width: calc((100% - var(--acme-pdp-gap, 0.65rem)) / 2) !important;
        min-width: 0 !important;
        align-self: stretch !important;
        box-sizing: border-box !important;
        overflow: hidden !important;
    }
    /* Info column = half hero. Panel is INSIDE info — must be 100% of info, not half again. */
    html body.acme-pdp-page:not(.acme-pdp--tablet-stack) .acme-pdp__info,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__info {
        order: 0 !important;
        flex: 0 0 calc((100% - var(--acme-pdp-gap, 0.65rem)) / 2) !important;
        width: calc((100% - var(--acme-pdp-gap, 0.65rem)) / 2) !important;
        max-width: calc((100% - var(--acme-pdp-gap, 0.65rem)) / 2) !important;
        min-width: 0 !important;
        align-self: stretch !important;
        box-sizing: border-box !important;
        position: relative !important;
        z-index: 5 !important;
        background: #fff !important;
    }
    html body.acme-pdp-page:not(.acme-pdp--tablet-stack) .acme-pdp__panel,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__panel {
        flex: 1 1 auto !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
    }
    html body.acme-pdp-page .acme-pdp__gallery .snap-slider,
    html body.acme-pdp-page .acme-pdp__gallery [data-slider-type="gallery"],
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery .snap-slider,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery [data-slider-type="gallery"] {
        flex-direction: row !important;
        align-items: stretch !important;
        /* Clear tablet 170/881 calc — equalize JS owns --acme-pdp-thumb-w / main size */
        --acme-pdp-gallery-gap: var(--acme-pdp-gap, 2.5rem);
        --acme-pdp-main-w: initial;
    }
    /* Desktop parity: thumbs LEFT | main RIGHT (never DOM order / thumbs on right). */
    html body.acme-pdp-page .acme-pdp__gallery .snap-slider > .snap-pager,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery .snap-slider > .snap-pager {
        order: 1 !important;
        flex: 0 0 var(--acme-pdp-thumb-w, 10.625rem) !important;
        width: var(--acme-pdp-thumb-w, 10.625rem) !important;
        min-width: var(--acme-pdp-thumb-w, 10.625rem) !important;
        max-width: var(--acme-pdp-thumb-w, 10.625rem) !important;
        flex-direction: column !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        max-height: none !important;
    }
    html body.acme-pdp-page .acme-pdp__gallery .snap-pager .snap-marker,
    html body.acme-pdp-page .acme-pdp__gallery .snap-pager a.snap-marker,
    html body.acme-pdp-page .acme-pdp__gallery .snap-pager button.snap-marker,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery .snap-pager .snap-marker,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery .snap-pager a.snap-marker,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery .snap-pager button.snap-marker {
        width: var(--acme-pdp-thumb-w, 10.625rem) !important;
        min-width: var(--acme-pdp-thumb-w, 10.625rem) !important;
        max-width: var(--acme-pdp-thumb-w, 10.625rem) !important;
        height: var(--acme-pdp-thumb-w, 10.625rem) !important;
        min-height: var(--acme-pdp-thumb-w, 10.625rem) !important;
        max-height: var(--acme-pdp-thumb-w, 10.625rem) !important;
        flex: 0 0 var(--acme-pdp-thumb-w, 10.625rem) !important;
        aspect-ratio: auto !important;
    }
    html body.acme-pdp-page .acme-pdp__gallery .snap-slider > .relative,
    html body.acme-pdp-page .acme-pdp__gallery #gallery-main,
    html body.acme-pdp-page .acme-pdp__gallery [data-track],
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery .snap-slider > .relative,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery #gallery-main,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery [data-track] {
        order: 2 !important;
        flex: 0 0 auto !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        aspect-ratio: 1 / 1 !important;
    }
}

/*
 * FINAL — iPad Mini / iPad Pro 13 / Surface Pro (true touch only).
 * Do NOT match MBA trackpad (hover:hover + pointer:fine) — that stays side-by-side above.
 * Gallery + main image span the same content rail as header / footer / sections below.
 */
@media (min-width: 744px) and (hover: none),
       (min-width: 744px) and (pointer: coarse) {
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__hero {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        max-height: none !important;
    }
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__info,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__panel {
        flex: 0 0 auto !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        align-self: stretch !important;
        box-sizing: border-box !important;
    }
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery {
        order: 1 !important;
        height: auto !important;
        max-height: none !important;
        padding-inline: 0 !important;
    }
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__info {
        order: 2 !important;
    }
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery .snap-slider,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery [data-slider-type="gallery"] {
        --acme-pdp-gallery-gap: clamp(0.75rem, 2.5vw, 2.5rem);
        --acme-pdp-thumb-w: calc((100% - var(--acme-pdp-gallery-gap)) * 170 / 881);
        display: flex !important;
        flex-direction: row !important;
        align-items: flex-start !important;
        width: 100% !important;
        max-width: 100% !important;
        gap: var(--acme-pdp-gallery-gap) !important;
        box-sizing: border-box !important;
    }
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery .snap-slider > .snap-pager {
        order: 1 !important;
        flex: 0 0 var(--acme-pdp-thumb-w) !important;
        width: var(--acme-pdp-thumb-w) !important;
        min-width: var(--acme-pdp-thumb-w) !important;
        max-width: var(--acme-pdp-thumb-w) !important;
        flex-direction: column !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
    }
    /* Grow into remaining rail — covers right whitespace; never wider than slider */
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery .snap-slider > .relative,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery #gallery-main,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery [data-track] {
        order: 2 !important;
        flex: 1 1 0 !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: 100% !important;
        aspect-ratio: 1 / 1 !important;
        height: auto !important;
        max-height: none !important;
        box-sizing: border-box !important;
    }
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery .snap-slider > .relative img,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery #gallery-main img,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery [data-track] img {
        width: 100% !important;
        height: 100% !important;
        max-width: 100% !important;
        object-fit: cover !important;
        object-position: left center !important;
    }

    /*
     * Trust badges — one row on iPad Mini / Pro 13 / Surface Pro.
     * Wrap to at most 2 rows when labels need more width (not locked 2×2).
     * Hub 4-badge stays 2×2 grid (file-end lock beats this).
     */
    html:not(.acme-pdp--hub) body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__badges {
        display: flex !important;
        flex-flow: row wrap !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 0.5rem !important;
    row-gap: 0.5rem !important;
    column-gap: 0.5rem !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-top: 0.75rem !important;
        grid-template-columns: none !important;
        grid-template-rows: none !important;
        grid-auto-rows: 2.5rem !important;
        /* Cap at 2 rows (2.5rem × 2 + gap) */
        max-height: calc(2.5rem * 2 + 0.5rem) !important;
        overflow: visible !important;
    }
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__badge {
        display: inline-flex !important;
        /* Prefer 4-across one row; wrap to ≤2-wide when cramped / long labels */
        flex: 1 1 10rem !important;
        align-items: center !important;
        gap: 0.5rem !important;
        box-sizing: border-box !important;
        width: auto !important;
        min-width: min(10rem, calc(50% - 0.25rem)) !important;
        max-width: 100% !important;
        height: 2.5rem !important;
        min-height: 2.5rem !important;
        max-height: 2.5rem !important;
        padding: 6px 12px !important;
        overflow: hidden !important;
    }
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__badge-text {
        display: block !important;
        flex: 1 1 0 !important;
        min-width: 0 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        word-break: keep-all !important;
        overflow-wrap: normal !important;
        font-size: 0.8125rem !important;
        line-height: 1.25rem !important;
    }
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__badges > .acme-pdp__badge:nth-child(n + 5) {
        display: none !important;
    }
}

/*
 * Tablet MQ fallback (before JS adds .acme-pdp--tablet-stack) — same one-row badges.
 * iPad Mini 744– / Pro 13 ~1032 / Surface Pro ≤1511 touch.
 */
@media (min-width: 744px) and (max-width: 1376px) and (hover: none),
       (min-width: 744px) and (max-width: 1376px) and (pointer: coarse),
       (min-width: 744px) and (max-width: 1440px) and (orientation: portrait) and (hover: none),
       (min-width: 744px) and (max-width: 1511px) and (hover: none),
       (min-width: 744px) and (max-width: 1511px) and (pointer: coarse) {
    html:not(.acme-pdp--hub) body.acme-pdp-page:not(.acme-pdp--mba-dense) .acme-pdp__badges {
        display: flex !important;
        flex-flow: row wrap !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 0.5rem !important;
    row-gap: 0.5rem !important;
    column-gap: 0.5rem !important;
        width: 100% !important;
        grid-template-columns: none !important;
        grid-template-rows: none !important;
        max-height: calc(2.5rem * 2 + 0.5rem) !important;
        overflow: visible !important;
    }
    html body.acme-pdp-page:not(.acme-pdp--mba-dense) .acme-pdp__badge {
        display: inline-flex !important;
        flex: 1 1 10rem !important;
        min-width: min(10rem, calc(50% - 0.25rem)) !important;
        max-width: 100% !important;
        height: 2.5rem !important;
        min-height: 2.5rem !important;
        max-height: 2.5rem !important;
        padding: 6px 12px !important;
        overflow: hidden !important;
    }
    html body.acme-pdp-page:not(.acme-pdp--mba-dense) .acme-pdp__badge-text {
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        min-width: 0 !important;
        flex: 1 1 0 !important;
    }
}

/* FINAL phone PDP gallery — last in file so it beats nested tablet-stack left-rail */
@media (max-width: 743px) {
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery .snap-slider,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery [data-slider-type="gallery"],
    html body.acme-pdp-page .acme-pdp__gallery .snap-slider,
    html body.acme-pdp-page .acme-pdp__gallery [data-slider-type="gallery"] {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
    }
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery .snap-slider > .relative,
    html body.acme-pdp-page .acme-pdp__gallery .snap-slider > .relative {
        order: 1 !important;
        width: 100% !important;
        max-width: 100% !important;
    }
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery .snap-pager,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery [data-pager],
    html body.acme-pdp-page .acme-pdp__gallery .snap-pager,
    html body.acme-pdp-page .acme-pdp__gallery [data-pager] {
        order: 2 !important;
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        height: auto !important;
        max-height: none !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
    }
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery .snap-pager .snap-marker,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery .snap-pager a.snap-marker,
    html body.acme-pdp-page .acme-pdp__gallery .snap-pager .snap-marker,
    html body.acme-pdp-page .acme-pdp__gallery .snap-pager a.snap-marker {
        flex: 0 0 calc(100% * 170 / 711) !important;
        width: calc(100% * 170 / 711) !important;
        min-width: calc(100% * 170 / 711) !important;
        max-width: calc(100% * 170 / 711) !important;
        height: auto !important;
        aspect-ratio: 1 / 1 !important;
    }
}

/*
 * FHD ≥1800 (last cascade) — HERO ONLY (Samsung 1920×1080).
 * No pad / trust / section-width overrides (those broke the homepage).
 */
@media (min-width: 1800px) {
    html body.cms-index-index,
    html body.cms-page-view.cms-home {
        --acme-hero-h: 44rem !important;
    }
    html body.cms-index-index .acme-home-hero,
    html body.cms-page-view.cms-home .acme-home-hero,
    html body.cms-index-index .acme-home-hero__viewport,
    html body.cms-page-view.cms-home .acme-home-hero__viewport,
    html body.cms-index-index .acme-home-hero__slide,
    html body.cms-page-view.cms-home .acme-home-hero__slide,
    html body.cms-index-index .acme-home-hero__track,
    html body.cms-page-view.cms-home .acme-home-hero__track {
        min-height: var(--acme-hero-h) !important;
        max-height: var(--acme-hero-h) !important;
        height: var(--acme-hero-h) !important;
    }
    /* Same FHD type/color lock as desk-fix (mba-air loads last). */
    html body.cms-index-index .acme-home-hero__gradient,
    html body.cms-page-view.cms-home .acme-home-hero__gradient {
        display: none !important;
        opacity: 0 !important;
        background: none !important;
    }
    html body.cms-index-index .acme-home-hero__content,
    html body.cms-page-view.cms-home .acme-home-hero__content {
        gap: 0.75rem !important;
        align-items: flex-start !important;
    }
    html body.cms-index-index .acme-home-hero__title,
    html body.cms-page-view.cms-home .acme-home-hero__title {
        font-family: Montserrat, Inter, ui-sans-serif, system-ui, sans-serif !important;
        font-weight: 600 !important;
        font-size: 56px !important;
        line-height: 60px !important;
        color: #0f2d52 !important;
        text-shadow: none !important;
        max-width: none !important;
        transform: none !important;
    }
    html body.cms-index-index .acme-home-hero__subtitle,
    html body.cms-page-view.cms-home .acme-home-hero__subtitle {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 0 !important; /* space is only on .acme-home-hero__offer */
        font-family: Montserrat, Inter, ui-sans-serif, system-ui, sans-serif !important;
        font-size: 32px !important;
        font-weight: 500 !important;
        line-height: 28px !important;
        color: #0f2d52 !important;
        max-width: 41.8rem !important;
        transform: none !important;
    }
    html body.cms-index-index .acme-home-hero__tagline,
    html body.cms-page-view.cms-home .acme-home-hero__tagline {
        display: block !important;
        font-family: Montserrat, Inter, ui-sans-serif, system-ui, sans-serif !important;
        font-weight: 500 !important;
        font-size: 32px !important;
        line-height: 28px !important;
        color: #0f2d52 !important;
    }
    html body.cms-index-index .acme-home-hero__offer,
    html body.cms-page-view.cms-home .acme-home-hero__offer {
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: baseline !important;
        gap: 0.35rem !important;
        /* mba-air loads last — must own tagline → price air (desk-fix alone is overridden) */
        margin-top: 2.75rem !important;
        line-height: 28px !important;
    }
    html body.cms-index-index .acme-home-hero__starting,
    html body.cms-page-view.cms-home .acme-home-hero__starting {
        font-family: Montserrat, Inter, ui-sans-serif, system-ui, sans-serif !important;
        font-weight: 400 !important;
        font-size: 22px !important;
        line-height: 28px !important;
        color: #6b7c93 !important;
    }
    html body.cms-index-index .acme-home-hero__price,
    html body.cms-page-view.cms-home .acme-home-hero__price {
        font-family: Montserrat, Inter, ui-sans-serif, system-ui, sans-serif !important;
        font-weight: 700 !important;
        font-size: 36px !important;
        line-height: 28px !important;
        color: #9d1f2b !important;
    }
    html body.cms-index-index .acme-home-hero__unit,
    html body.cms-page-view.cms-home .acme-home-hero__unit {
        font-family: Montserrat, Inter, ui-sans-serif, system-ui, sans-serif !important;
        font-weight: 700 !important;
        font-size: 28px !important;
        line-height: 28px !important;
        color: #9d1f2b !important;
    }
    html body.cms-index-index .acme-home-hero__actions,
    html body.cms-page-view.cms-home .acme-home-hero__actions {
        padding-top: 1.5rem !important;
    }
    html body.cms-index-index .acme-home-hero__btn--ghost,
    html body.cms-page-view.cms-home .acme-home-hero__btn--ghost {
        display: none !important;
    }
    html body.cms-index-index .acme-home-hero__btn,
    html body.cms-page-view.cms-home .acme-home-hero__btn {
        min-height: 3.3rem !important;
        padding: 0.8rem 2rem !important;
        font-size: 0.95rem !important;
        font-family: Montserrat, Inter, ui-sans-serif, system-ui, sans-serif !important;
    }
    html body.cms-index-index .acme-home-hero__btn--primary,
    html body.cms-page-view.cms-home .acme-home-hero__btn--primary {
        background: #9d1f2b !important;
        color: #fff !important;
    }
}

/* Always 2×2 up to 4 badges (hub + child) — pill pad shrink freed fold room */
html body.acme-pdp-page .acme-pdp__badges,
html body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--two,
html body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--four,
html:not(.acme-pdp--hub) body.acme-pdp-page .acme-pdp__badges,
html:not(.acme-pdp--hub) body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--two,
html:not(.acme-pdp--hub) body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--four,
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__badges,
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--four,
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--two {
    grid-template-rows: repeat(2, 2.5rem) !important;
    grid-auto-rows: 2.5rem !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
}
html body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__badges,
html body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__badges.acme-pdp__badges--four,
html body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__badges.acme-pdp__badges--two,
html.acme-pdp--hub body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__badges,
html.acme-pdp--hub body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__badges.acme-pdp__badges--four,
html:not(.acme-pdp--hub) body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__badges,
html:not(.acme-pdp--hub) body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__badges.acme-pdp__badges--two {
    grid-template-rows: repeat(2, 2.25rem) !important;
    grid-auto-rows: 2.25rem !important;
}
html body.acme-pdp-page .acme-pdp__badges > .acme-pdp__badge:nth-child(n + 3),
html body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--four > .acme-pdp__badge:nth-child(n + 3),
html body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--two > .acme-pdp__badge:nth-child(n + 3),
html:not(.acme-pdp--hub) body.acme-pdp-page .acme-pdp__badges > .acme-pdp__badge:nth-child(n + 3),
html:not(.acme-pdp--hub) body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--two > .acme-pdp__badge:nth-child(n + 3),
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__badges > .acme-pdp__badge:nth-child(n + 3),
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--four > .acme-pdp__badge:nth-child(n + 3),
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--two > .acme-pdp__badge:nth-child(n + 3) {
    display: flex !important;
}
html body.acme-pdp-page .acme-pdp__badges > .acme-pdp__badge:nth-child(n + 5),
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__badges > .acme-pdp__badge:nth-child(n + 5),
html body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--four > .acme-pdp__badge:nth-child(n + 5) {
    display: none !important;
}
@media (min-width: 1024px) {
    /* Hub pills: top-aligned. Densify fold re-locks flex/gap at file end. */
    html.acme-pdp--hub body.acme-pdp-page .acme-pdp__options-wrap {
        flex: 0 1 auto !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: flex-start !important;
        min-height: 0 !important;
        flex-shrink: 0 !important;
    }
    html.acme-pdp--hub body.acme-pdp-page .acme-pdp__options,
    html.acme-pdp--hub body.acme-pdp-page .acme-pdp__options--attrs-3,
    html.acme-pdp--hub body.acme-pdp-page .acme-pdp__options.acme-pdp__options--display-attr,
    html.acme-pdp--hub body.acme-pdp-page .acme-pdp__options-wrap:has(.acme-pdp__options--attrs-3) {
        flex: none !important;
        justify-content: flex-start !important;
        gap: 1.75rem !important;
        row-gap: 1.75rem !important;
    }
    html body.acme-pdp-page .acme-pdp-tiers__brand,
    html body.acme-pdp-page .acme-pdp-tiers__brand-text,
    html body.acme-pdp-page .acme-pdp-tiers__brand-line {
        font-size: 0.934375rem !important;
    }
}
html body.acme-pdp-page .acme-pdp__panel,
html body.acme-pdp-page:not(.acme-pdp--expand-options) .acme-pdp__panel {
    row-gap: 0.75rem !important;
}
html body.acme-pdp-page .acme-pdp__options-wrap,
html body.acme-pdp-page:not(.acme-pdp--expand-options) .acme-pdp__options-wrap {
    margin-top: 0 !important;
}
/* Hub only: air above pills on tall / FHD. MBA densify restores 0.75rem at file end. */
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__options-wrap,
html.acme-pdp--hub body.acme-pdp-page:not(.acme-pdp--expand-options) .acme-pdp__options-wrap {
    margin-top: 1.75rem !important;
}
@media (min-width: 744px) and (max-width: 1799px) and (max-height: 1100px) {
    html.acme-pdp--hub body.acme-pdp-page .acme-pdp__options-wrap,
    html.acme-pdp--hub body.acme-pdp-page:not(.acme-pdp--expand-options) .acme-pdp__options-wrap {
        margin-top: 0.75rem !important;
    }
    html:not(.acme-pdp--hub) body.acme-pdp-page .acme-pdp__options-wrap,
    html:not(.acme-pdp--hub) body.acme-pdp-page:not(.acme-pdp--expand-options) .acme-pdp__options-wrap {
        margin-top: 0 !important;
    }
}

/*
 * FINAL — PDP lightbox left-aligned to main gallery (toward thumbs).
 * Same on MBA 13/15 + desktop ≥744. Beats centered audit-fixes frame.
 */
@media (min-width: 744px) {
    html body.acme-pdp-page .acme-pdp__gallery dialog.acme-pdp-lightbox[open] {
        align-items: flex-start !important;
        justify-content: flex-start !important;
        padding: 0 !important;
    }
    html body.acme-pdp-page .acme-pdp__gallery .acme-pdp-lightbox__frame {
        position: fixed !important;
        left: var(--acme-pdp-lightbox-left, 12.875rem) !important;
        top: var(--acme-pdp-lightbox-top, 8rem) !important;
        width: var(--acme-pdp-lightbox-size, min(88vh, 44.4375rem)) !important;
        max-width: var(--acme-pdp-lightbox-size, min(88vh, 44.4375rem)) !important;
        height: var(--acme-pdp-lightbox-size, min(88vh, 44.4375rem)) !important;
        max-height: var(--acme-pdp-lightbox-size, min(88vh, 44.4375rem)) !important;
        margin: 0 !important;
        align-items: flex-start !important;
        justify-content: flex-start !important;
        transform: none !important;
    }
    html body.acme-pdp-page .acme-pdp__gallery dialog .acme-gallery-lightbox__img,
    html body.acme-pdp-page .acme-pdp__gallery .acme-pdp-lightbox__frame .acme-gallery-lightbox__img {
        width: 100% !important;
        height: 100% !important;
        max-width: 100% !important;
        max-height: 100% !important;
        margin: 0 !important;
        object-fit: contain !important;
        object-position: left top !important;
    }
}

/*
 * FINAL — hub/attrs pill spacing on tall viewports only.
 * Never apply flex:none / 1.75rem gaps inside MBA densify (≤1799×≤1100) — that
 * is why MBA 13/15 PDPs look “distorted again” after hub spacing edits.
 */
@media (min-width: 1800px),
       (min-width: 744px) and (max-width: 1799px) and (min-height: 1101px) {
    /* Hub only — never apply 1.75rem air / gaps to child / landing-child */
    html.acme-pdp--hub body.acme-pdp-page .acme-pdp__options-wrap,
    html.acme-pdp--hub body.acme-pdp-page .acme-pdp__options-wrap:has(.acme-pdp__options--attrs-3) {
        flex: 0 1 auto !important;
        justify-content: flex-start !important;
        margin-top: 1.75rem !important; /* badges → pills (hub only) */
    }
    html.acme-pdp--hub body.acme-pdp-page .acme-pdp__options,
    html.acme-pdp--hub body.acme-pdp-page .acme-pdp__options--attrs-3,
    html.acme-pdp--hub body.acme-pdp-page .acme-pdp__options.acme-pdp__options--display-attr {
        flex: none !important;
        justify-content: flex-start !important;
        gap: 1.75rem !important;
        row-gap: 1.75rem !important;
    }
    html:not(.acme-pdp--hub) body.acme-pdp-page .acme-pdp__options-wrap {
        margin-top: 0 !important;
    }
    /* Child: same equidistant gap as configurable rows (Size / Type / Weight) */
    html:not(.acme-pdp--hub) body.acme-pdp-page .acme-pdp__options,
    html:not(.acme-pdp--hub) body.acme-pdp-page .acme-pdp__options--attrs-3,
    html:not(.acme-pdp--hub) body.acme-pdp-page .acme-pdp__options.acme-pdp__options--display-attr {
        gap: 1.75rem !important;
        row-gap: 1.75rem !important;
    }
    html:not(.acme-pdp--hub) body.acme-pdp-page .acme-pdp__options-wrap {
        gap: 1.75rem !important;
        row-gap: 1.75rem !important;
    }
}

/* Main image flush left toward thumbs (all ≥744, including densify). */
@media (min-width: 744px) {
    html body.acme-pdp-page .acme-pdp__gallery .snap-slider,
    html body.acme-pdp-page .acme-pdp__gallery [data-slider-type="gallery"] {
        justify-content: flex-start !important;
    }
    html body.acme-pdp-page .acme-pdp__gallery #gallery-main img:not(.acme-gallery-lightbox__img),
    html body.acme-pdp-page .acme-pdp__gallery [data-track] img:not(.acme-gallery-lightbox__img) {
        object-fit: cover !important;
        object-position: left center !important;
    }
}

/*
 * FINAL LOCK — MBA 13+15 densify must win over any later hub/desktop pill edits.
 * Gate: (max-width: 1799px) and (max-height: 1100px). Never 900-only.
 */
@media (min-width: 744px) and (max-width: 1799px) and (max-height: 1100px) {
    /* Hero: one row — gallery | info = 50/50 (taller square + wider right rail). */
    html body.acme-pdp-page:not(.acme-pdp--tablet-stack) .acme-pdp__hero {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: flex-start !important;
        width: 100% !important;
        max-width: 100% !important;
        gap: 0.65rem !important;
    }
    html body.acme-pdp-page:not(.acme-pdp--tablet-stack) .acme-pdp__gallery {
        flex: 0 0 calc((100% - 0.65rem) / 2) !important;
        width: calc((100% - 0.65rem) / 2) !important;
        max-width: calc((100% - 0.65rem) / 2) !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        overflow: hidden !important;
    }
    html body.acme-pdp-page:not(.acme-pdp--tablet-stack) .acme-pdp__info {
        flex: 0 0 calc((100% - 0.65rem) / 2) !important;
        width: calc((100% - 0.65rem) / 2) !important;
        max-width: calc((100% - 0.65rem) / 2) !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        position: relative !important;
        z-index: 5 !important;
        background: #fff !important;
    }
    /*
     * Panel lives INSIDE .acme-pdp__info — never share gallery|info half-width.
     * Higher specificity + all flex longhands beat any stale combined selector.
     */
    html body.acme-pdp-page:not(.acme-pdp--tablet-stack) .acme-pdp__info > .acme-pdp__panel,
    html body.acme-pdp-page:not(.acme-pdp--tablet-stack) .acme-pdp__panel {
        flex: 1 1 auto !important;
        flex-grow: 1 !important;
        flex-shrink: 1 !important;
        flex-basis: auto !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
    }
    /* Main square sized by equalize. Fallback MUST fit the 50% gallery half — never 711. */
    html body.acme-pdp-page:not(.acme-pdp--tablet-stack) .acme-pdp__gallery .snap-slider,
    html body.acme-pdp-page:not(.acme-pdp--tablet-stack) .acme-pdp__gallery [data-slider-type="gallery"] {
        width: auto !important;
        max-width: 100% !important;
        min-width: 0 !important;
        justify-content: flex-start !important;
    }
    html body.acme-pdp-page:not(.acme-pdp--tablet-stack) .acme-pdp__gallery .snap-slider > .relative,
    html body.acme-pdp-page:not(.acme-pdp--tablet-stack) .acme-pdp__gallery #gallery-main,
    html body.acme-pdp-page:not(.acme-pdp--tablet-stack) .acme-pdp__gallery [data-track] {
        /* 31rem≈496 fits MBA 13 half; 42vw tracks short viewports before JS equalize. */
        flex: 0 0 var(--acme-pdp-main-size, min(31rem, 42vw)) !important;
        width: var(--acme-pdp-main-size, min(31rem, 42vw)) !important;
        max-width: min(var(--acme-pdp-main-size, 31rem), calc(50vw - 8rem)) !important;
        min-width: 0 !important;
        height: var(--acme-pdp-main-size, auto) !important;
        max-height: min(var(--acme-pdp-main-size, 31rem), calc(50vw - 8rem)) !important;
        aspect-ratio: 1 / 1 !important;
    }

    html body.acme-pdp-page .acme-pdp__options-wrap,
    html body.acme-pdp-page:not(.acme-pdp--expand-options) .acme-pdp__options-wrap,
    html.acme-pdp--hub body.acme-pdp-page .acme-pdp__options-wrap,
    html.acme-pdp--hub body.acme-pdp-page:not(.acme-pdp--expand-options) .acme-pdp__options-wrap {
        flex: 1 1 auto !important;
        min-height: 0 !important;
        max-height: none !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: stretch !important;
        overflow: visible !important;
    }
    /* Densify: hub keeps a little air; child stays flush under badges */
    html.acme-pdp--hub body.acme-pdp-page .acme-pdp__options-wrap,
    html.acme-pdp--hub body.acme-pdp-page:not(.acme-pdp--expand-options) .acme-pdp__options-wrap {
        margin-top: 0.75rem !important;
    }
    html:not(.acme-pdp--hub) body.acme-pdp-page .acme-pdp__options-wrap,
    html:not(.acme-pdp--hub) body.acme-pdp-page:not(.acme-pdp--expand-options) .acme-pdp__options-wrap {
        margin-top: 0 !important;
    }
    html body.acme-pdp-page .acme-pdp__options,
    html body.acme-pdp-page .acme-pdp__options--attrs-3,
    html body.acme-pdp-page .acme-pdp__options.acme-pdp__options--display-attr,
    html.acme-pdp--hub body.acme-pdp-page .acme-pdp__options,
    html.acme-pdp--hub body.acme-pdp-page .acme-pdp__options--attrs-3,
    html.acme-pdp--hub body.acme-pdp-page .acme-pdp__options.acme-pdp__options--display-attr {
        flex: 1 1 auto !important;
        justify-content: flex-start !important;
        gap: 0.5rem !important;
        row-gap: 0.5rem !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: visible !important;
    }
    html body.acme-pdp-page .acme-pdp__options-wrap,
    html body.acme-pdp-page .acme-pdp__options-wrap .product-options-wrapper {
        gap: 0.5rem !important;
        row-gap: 0.5rem !important;
    }

    /*
     * Simple PDPs (stripe towels): keep attrs from painting over tier pricing.
     * Configurable ≤3-row lock uses overflow:visible; simples with tall stacks must scroll.
     */
    html body.page-product-simple.acme-pdp-page:not(.acme-pdp--expand-options) .acme-pdp__info,
    html body.page-product-simple.acme-pdp-page:not(.acme-pdp--expand-options) .acme-pdp__panel {
        overflow: hidden !important;
        overflow-y: hidden !important;
    }
    html body.page-product-simple.acme-pdp-page .acme-pdp__options-wrap,
    html body.page-product-simple.acme-pdp-page:not(.acme-pdp--expand-options) .acme-pdp__options-wrap {
        flex: 1 1 auto !important;
        min-height: 0 !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        overscroll-behavior: contain !important;
    }
    html body.page-product-simple.acme-pdp-page .acme-pdp__buy {
        position: relative !important;
        z-index: 2 !important;
        flex-shrink: 0 !important;
        margin-top: auto !important;
    }
}

/* Breadcrumbs — one row on mobile / tablet / MBA (beats PDP white-space:normal). */
@media (max-width: 1799px) {
    html body .acme-breadcrumbs,
    html body.acme-pdp-page .acme-breadcrumbs,
    html body.acme-pdp-page .breadcrumbs,
    html body.acme-pdp-page .acme-pdp-breadcrumbs {
        display: block !important;
    }

    html body .acme-breadcrumbs__list,
    html body.acme-pdp-page .acme-breadcrumbs__list,
    html body.acme-pdp-page .acme-pdp-breadcrumbs__list,
    html body.acme-pdp-page .breadcrumbs .items {
        display: flex !important;
        flex-flow: row nowrap !important;
        align-items: center !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
    }

    html body .acme-breadcrumbs__item,
    html body.acme-pdp-page .acme-breadcrumbs__item,
    html body.acme-pdp-page .breadcrumbs .item {
        flex: 0 0 auto !important;
        align-items: center !important;
        white-space: nowrap !important;
    }

    html body .acme-breadcrumbs__item:last-child,
    html body.acme-pdp-page .acme-breadcrumbs__item:last-child,
    html body.acme-pdp-page .breadcrumbs .item:last-child {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        overflow: hidden !important;
    }

    html body .acme-breadcrumbs__link,
    html body .acme-breadcrumbs__text,
    html body .acme-breadcrumbs__current,
    html body.acme-pdp-page .acme-breadcrumbs__link,
    html body.acme-pdp-page .acme-breadcrumbs__current,
    html body.acme-pdp-page .breadcrumbs a,
    html body.acme-pdp-page .breadcrumbs .item > span {
        white-space: nowrap !important;
        min-height: 0 !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }
}

/* FINAL — PDP option pills: equal rail fill, no scroll/overlap; single pill hugs content.
 * grow-options densify still pins ATC; grid rules apply to all desktop PDPs.
 */
@media (min-width: 744px) {
    html body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__info,
    html body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__panel {
        overflow: visible !important;
        overflow-y: visible !important;
    }
    html body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__panel,
    html body.acme-pdp-page.acme-pdp--grow-options:not(.acme-pdp--expand-options) .acme-pdp__panel {
        row-gap: 0.25rem !important;
    }
    html body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__header {
        margin-bottom: 0 !important;
        gap: 0.2rem !important;
        row-gap: 0.2rem !important;
    }
    /* Child / 2-badge: flex wrap OK. Hub 4-badge stays 2×2 grid (see file-end lock). */
    html body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__badges.acme-pdp__badges--two,
    html:not(.acme-pdp--hub) body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__badges {
        display: flex !important;
        flex-flow: row wrap !important;
        justify-content: flex-start !important;
        gap: 0.5rem !important;
        row-gap: 0.5rem !important;
        column-gap: 0.5rem !important;
        margin: 0 0 0.15rem !important;
        width: 100% !important;
        overflow: visible !important;
    }
    html.acme-pdp--hub body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__badges,
    html body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__badges.acme-pdp__badges--four {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        /* Rows must match badge height (2.5rem) — 2.25rem rows left a smaller visual row-gap */
        grid-template-rows: repeat(2, 2.5rem) !important;
        grid-auto-rows: 2.5rem !important;
        gap: 0.5rem !important;
        row-gap: 0.5rem !important;
        column-gap: 0.5rem !important;
        margin: 0 0 0.15rem !important;
        width: 100% !important;
        flex-flow: unset !important;
        overflow: visible !important;
    }
    /* Lift form + option wrappers so Type/Size/Weight are siblings in one column */
    html body.acme-pdp-page.acme-pdp--grow-options #product_addtocart_form,
    html body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__options--configurable,
    html body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__options--display-attr,
    html body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__options-wrap .product-options-wrapper,
    html body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__options--attrs-3,
    html body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__options {
        display: contents !important;
    }
    html body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__options-wrap,
    html body.acme-pdp-page.acme-pdp--grow-options:not(.acme-pdp--expand-options) .acme-pdp__options-wrap,
    html.acme-pdp--hub body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__options-wrap,
    html.acme-pdp--hub body.acme-pdp-page.acme-pdp--grow-options:not(.acme-pdp--expand-options) .acme-pdp__options-wrap,
    html:not(.acme-pdp--hub) body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__options-wrap {
        margin-top: 0.2rem !important;
        /* 3-attr rail: equal top/between/bottom via --acme-opt-edge + --acme-opt-gap */
        flex: 1 1 auto !important;
        min-height: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: flex-start !important;
        align-content: stretch !important;
        box-sizing: border-box !important;
        padding-top: var(--acme-opt-edge, 1.25rem) !important;
        padding-bottom: var(--acme-opt-edge, 1.25rem) !important;
        gap: var(--acme-opt-gap, 1.25rem) !important;
        row-gap: var(--acme-opt-gap, 1.25rem) !important;
        overflow: visible !important;
        overflow-x: visible !important;
        overflow-y: visible !important;
        scrollbar-width: none !important;
    }
    html body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__option-group,
    html body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__options--attrs-3 > .acme-pdp__option-group,
    html body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__option-slot-spacer {
        margin: 0 !important;
        /* Title sits tight on pills — groups hug content (no stretched empty band) */
        gap: 0.3rem !important;
        flex: 0 0 auto !important;
        width: 100% !important;
        max-width: 100% !important;
        min-height: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: flex-start !important;
    }
    /* Spacers only absorb leftover rail when fewer than 3 attrs */
    html body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__option-slot-spacer {
        margin: 0 !important;
        gap: 0 !important;
        flex: 1 1 0 !important;
        width: 100% !important;
        min-height: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
        display: block !important;
    }
    /* 3 tall attrs overflow — pack groups; densify header/badges/buy equally across page */
    html body.acme-pdp-page.acme-pdp--grow-options.acme-pdp--opt-overflow .acme-pdp__option-group,
    html body.acme-pdp-page.acme-pdp--grow-options.acme-pdp--opt-overflow .acme-pdp__option-slot-spacer {
        flex: 0 0 auto !important;
    }
    html body.acme-pdp-page.acme-pdp--grow-options.acme-pdp--opt-overflow .acme-pdp__panel {
        row-gap: var(--acme-chrome-gap, 0.1rem) !important;
        gap: var(--acme-chrome-gap, 0.1rem) !important;
    }
    html body.acme-pdp-page.acme-pdp--grow-options.acme-pdp--opt-overflow .acme-pdp__header {
        gap: 0.1rem !important;
        row-gap: 0.1rem !important;
        margin: 0 !important;
    }
    html body.acme-pdp-page.acme-pdp--grow-options.acme-pdp--opt-overflow .acme-pdp__title {
        margin: 0 0 0.1rem !important;
        line-height: 1.15 !important;
    }
    html body.acme-pdp-page.acme-pdp--grow-options.acme-pdp--opt-overflow .acme-pdp__badges {
        gap: 0.4rem !important;
        row-gap: 0.4rem !important;
        column-gap: 0.4rem !important;
        margin: 0 !important;
        overflow: visible !important;
    }
    html body.acme-pdp-page.acme-pdp--grow-options.acme-pdp--opt-overflow .acme-pdp__options-wrap {
        margin-top: 0 !important;
    }
    html body.acme-pdp-page.acme-pdp--grow-options.acme-pdp--opt-overflow .acme-pdp__price-row,
    html body.acme-pdp-page.acme-pdp--grow-options.acme-pdp--opt-overflow .acme-pdp__price {
        margin-top: 0.15rem !important;
        margin-bottom: 0.1rem !important;
    }
    html body.acme-pdp-page.acme-pdp--grow-options.acme-pdp--opt-overflow .acme-pdp__buy {
        margin-top: var(--acme-chrome-gap, 0.1rem) !important;
    }
    html body.acme-pdp-page.acme-pdp--grow-options.acme-pdp--opt-overflow .acme-pdp__option-pills,
    html body.acme-pdp-page.acme-pdp--grow-options.acme-pdp--opt-overflow .acme-pdp__option-pills--display-only {
        flex: 0 0 auto !important;
        align-content: flex-start !important;
        row-gap: 0.4rem !important;
    }
    html body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__option-label,
    html body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__option-label-row {
        margin: 0 !important;
        line-height: 1.2 !important;
        flex: 0 0 auto !important;
    }

    /* Pills hug the title — do not flex-grow/space-evenly (that pushed rows away from labels) */
    html body.acme-pdp-page .acme-pdp__option-pills,
    html body.acme-pdp-page .acme-pdp__option-pills--display-only,
    html body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__option-pills,
    html body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__option-pills--display-only {
        display: flex !important;
        flex-flow: row wrap !important;
        align-items: stretch !important;
        align-content: flex-start !important;
        justify-content: flex-start !important;
        gap: 0.4rem 0.4rem !important;
        row-gap: 0.4rem !important;
        column-gap: 0.4rem !important;
        width: 100% !important;
        flex: 0 0 auto !important;
        min-height: min-content !important;
    }
    /* Content-sized pills — hug label; pad 6×9.6 (was 12 all) */
    html body.acme-pdp-page .acme-pdp__option-pills > .acme-pdp__pill,
    html body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__option-pills > .acme-pdp__pill,
    html body.acme-pdp-page button.acme-pdp__pill,
    html body.acme-pdp-page.acme-pdp--grow-options button.acme-pdp__pill {
        flex: 0 0 auto !important;
        flex-grow: 0 !important;
        flex-shrink: 0 !important;
        flex-basis: auto !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: max-content !important;
        min-height: 33px !important;
        height: auto !important;
        max-height: none !important;
        padding: 6px 9.6px !important;
        font-size: 16px !important;
        line-height: 1.2 !important;
        justify-content: center !important;
        text-align: center !important;
        box-sizing: border-box !important;
        white-space: normal !important;
        overflow-wrap: break-word !important;
    }
    html body.acme-pdp-page .acme-pdp__option-pills[data-acme-pill-cols="1"],
    html body.acme-pdp-page.acme-pdp--child-selected .acme-pdp__option-pills--display-only[data-acme-pill-cols="1"] {
        width: max-content !important;
        max-width: 100% !important;
    }
    html body.acme-pdp-page .acme-pdp__option-pills[data-acme-pill-cols="1"] > .acme-pdp__pill,
    html body.acme-pdp-page.acme-pdp--child-selected .acme-pdp__option-pills--display-only[data-acme-pill-cols="1"] > .acme-pdp__pill {
        flex: 0 0 auto !important;
        width: auto !important;
        min-width: 0 !important;
        /* Was 12rem+nowrap: long Size labels (crib sheet) spilled past the border */
        max-width: 100% !important;
    }

    /*
     * Multi-col: keep flex wrap + content-hug (equal 1fr grid stretched short
     * labels like "King" / color names and looked overdone).
     */
    html body.acme-pdp-page .acme-pdp__option-pills[data-acme-pill-cols]:not([data-acme-pill-cols="1"]),
    html body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__option-pills[data-acme-pill-cols]:not([data-acme-pill-cols="1"]),
    html body.acme-pdp-page .acme-pdp__option-pills--display-only[data-acme-pill-cols]:not([data-acme-pill-cols="1"]),
    html body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__option-pills--display-only[data-acme-pill-cols]:not([data-acme-pill-cols="1"]) {
        display: flex !important;
        flex-flow: row wrap !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        align-content: flex-start !important;
        gap: 0.5rem !important;
        row-gap: 0.5rem !important;
        column-gap: 0.5rem !important;
        width: 100% !important;
        min-height: min-content !important;
    }
    html body.acme-pdp-page .acme-pdp__option-pills[data-acme-pill-cols]:not([data-acme-pill-cols="1"]) > .acme-pdp__pill,
    html body.acme-pdp-page .acme-pdp__option-pills[data-acme-pill-cols]:not([data-acme-pill-cols="1"]) > button.acme-pdp__pill,
    html body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__option-pills[data-acme-pill-cols]:not([data-acme-pill-cols="1"]) > .acme-pdp__pill,
    html body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__option-pills[data-acme-pill-cols]:not([data-acme-pill-cols="1"]) > button.acme-pdp__pill {
        flex: 0 0 auto !important;
        flex-grow: 0 !important;
        flex-shrink: 0 !important;
        width: auto !important;
        max-width: max-content !important;
        min-width: 0 !important;
        justify-content: center !important;
    }

    /* Weight/Dim siblings stay visible on child URLs (selectable + selected). */

    /* Do not use margin-top:auto on buy — it steals leftover rail from options-wrap */
    html body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__buy {
        margin-top: 0.35rem !important;
        flex: 0 0 auto !important;
        flex-shrink: 0 !important;
        z-index: 2 !important;
    }
}

/* After content-hug 37/12/16: re-pin MBA densify design size */
@media (min-width: 744px) and (max-width: 1799px) and (max-height: 1100px) {
    html body.acme-pdp-page .acme-pdp__option-pills > .acme-pdp__pill,
    html body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__option-pills > .acme-pdp__pill,
    html body.acme-pdp-page button.acme-pdp__pill,
    html body.acme-pdp-page.acme-pdp--grow-options button.acme-pdp__pill {
        flex: 0 0 auto !important;
        width: auto !important;
        max-width: max-content !important;
        min-height: 28px !important;
        padding: 6px 10px !important;
        font-size: 13px !important;
        line-height: 1.1 !important;
    }
    /* Multi-col densify: keep hug (do not re-stretch to 100% track). */
    html body.acme-pdp-page .acme-pdp__option-pills[data-acme-pill-cols]:not([data-acme-pill-cols="1"]) > .acme-pdp__pill,
    html body.acme-pdp-page .acme-pdp__option-pills[data-acme-pill-cols]:not([data-acme-pill-cols="1"]) > button.acme-pdp__pill,
    html body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__option-pills[data-acme-pill-cols]:not([data-acme-pill-cols="1"]) > .acme-pdp__pill,
    html body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__option-pills[data-acme-pill-cols]:not([data-acme-pill-cols="1"]) > button.acme-pdp__pill {
        flex: 0 0 auto !important;
        width: auto !important;
        max-width: max-content !important;
        min-width: 0 !important;
    }
}

/*
 * Admin attribute sequence: flatten option wrappers so data-acme-attr-rank
 * order interleaves configurable + display-attr groups. Must beat densify
 * `display:flex` on .acme-pdp__options (this sheet loads last).
 */
html body.acme-pdp-page .acme-pdp__options-wrap form,
html body.acme-pdp-page .acme-pdp__options-wrap .product-options-wrapper,
html body.acme-pdp-page .acme-pdp__options-wrap .acme-pdp__options,
html body.acme-pdp-page .acme-pdp__options-wrap .acme-pdp__options--configurable,
html body.acme-pdp-page .acme-pdp__options-wrap .acme-pdp__options--display-attr,
html body.acme-pdp-page .acme-pdp__options-wrap .acme-pdp__options--attrs-3,
html body.acme-pdp-page .acme-pdp__options-wrap .acme-pdp__options--simple,
html body.acme-pdp-page .acme-pdp__options-wrap fieldset {
    display: contents !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    min-height: 0 !important;
    max-height: none !important;
    flex: none !important;
}

/*
 * Hub feature badges = locked 2×2 grid. grow-options / tablet / header flex-wrap
 * was packing 3 chips on row 1 + 1 on row 2 (Opal microfiber sheets).
 */
html body.acme-pdp-page .acme-pdp__badges {
    overflow: visible !important; /* row-2 radius must not clip */
    gap: 0.5rem !important;
    row-gap: 0.5rem !important;
    column-gap: 0.5rem !important;
}
html body.acme-pdp-page .acme-pdp__badge {
    border-radius: 0.5rem !important;
}
/* Always 2×2 up to 4 (hub + child) — beats tablet flex / grow-options leftovers */
html body.acme-pdp-page .acme-pdp__badges,
html body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--two,
html body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--four,
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__badges,
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--four,
html.acme-pdp--hub body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__badges,
html.acme-pdp--hub body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__badges,
html.acme-pdp--hub body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__badges,
html:not(.acme-pdp--hub) body.acme-pdp-page .acme-pdp__badges,
html:not(.acme-pdp--hub) body.acme-pdp-page.acme-pdp--grow-options .acme-pdp__badges,
html:not(.acme-pdp--hub) body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__badges {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-template-rows: repeat(2, 2.5rem) !important;
    grid-auto-rows: 2.5rem !important;
    flex-flow: unset !important;
    flex-wrap: unset !important;
    max-height: none !important;
    overflow: visible !important;
    gap: 0.5rem !important;
    row-gap: 0.5rem !important;
    column-gap: 0.5rem !important;
    width: 100% !important;
}
/* Dense only: rows + badges both 2.25rem (see mba-dense .acme-pdp__badge). Never shrink
 * grow-options rows alone — 2.25rem tracks + 2.5rem pills ate the row-gap vs column-gap. */
html body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__badges,
html body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__badges.acme-pdp__badges--four,
html.acme-pdp--hub body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__badges,
html.acme-pdp--hub body.acme-pdp-page.acme-pdp--mba-dense .acme-pdp__badges.acme-pdp__badges--four {
    grid-template-rows: repeat(2, 2.25rem) !important;
    grid-auto-rows: 2.25rem !important;
}
html body.acme-pdp-page .acme-pdp__badges > .acme-pdp__badge,
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__badges > .acme-pdp__badge,
html body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--four > .acme-pdp__badge {
    flex: none !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
}
html body.acme-pdp-page .acme-pdp__badges > .acme-pdp__badge:nth-child(n + 3),
html body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--four > .acme-pdp__badge:nth-child(n + 3),
html body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--two > .acme-pdp__badge:nth-child(n + 3),
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__badges > .acme-pdp__badge:nth-child(n + 3),
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--four > .acme-pdp__badge:nth-child(n + 3),
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--two > .acme-pdp__badge:nth-child(n + 3) {
    display: flex !important;
}
html body.acme-pdp-page .acme-pdp__badges > .acme-pdp__badge:nth-child(n + 5),
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__badges > .acme-pdp__badge:nth-child(n + 5),
html body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--four > .acme-pdp__badge:nth-child(n + 5) {
    display: none !important;
}

/*
 * Hub "Starting From" — never show cut/was strike next to the from-price.
 * Last in air-fix so it beats styles.css / header / pdp old-price show rules.
 */
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__price-row .old-price,
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__price-row span.old-price,
html.acme-pdp--hub body.acme-pdp-page .price-box .old-price,
body.acme-pdp-page .acme-pdp__panel--configurable:not(.acme-pdp__panel--child-selected) .acme-pdp__price-row .old-price,
body.acme-pdp-page .acme-pdp__panel--configurable:not(.acme-pdp__panel--child-selected) .acme-pdp__price-row span.old-price {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    max-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    font-size: 0 !important;
    line-height: 0 !important;
}
