/**
 * Acme header — Figma Group 1: 1905×120 (white 72 + cream 48).
 * Tokens map directly to the exported CSS (pad 206, search 644×40, gap 40 nav).
 */

:root {
    --acme-header-pad-x: clamp(1.25rem, 10.8vw, 12.875rem); /* 206px @ 1905 */
    --acme-header-top-h: 4.5rem; /* 72px */
    --acme-header-nav-h: 3rem; /* 48px */
    --acme-header-inner: 93.3125rem; /* 1493px */
    --acme-cream: #f8f8f8;
    --acme-ink: #0f2d52;
    --acme-blue: #1f99ce;
    --acme-primary-from: #9d1f2b;
    --acme-primary-to: #b22936;
    --acme-cart-badge: #1f99ce;
    --acme-search-border: #e0e0e0;
    --acme-promo-h: 2.25rem; /* 36px */
}

/* ---- Free-delivery promo strip (theme blue gradient) ---- */
.acme-promo-bar {
    position: relative;
    z-index: 41;
    display: block;
    height: var(--acme-promo-h);
    overflow: hidden;
    background: linear-gradient(90deg, #0b4f7a 0%, var(--acme-blue, #1f99ce) 45%, #3db4e6 100%) !important;
    color: #fff !important;
    box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.12);
}

.acme-promo-bar__track {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    animation: none;
    transform: none;
    opacity: 1;
}

.acme-promo-bar__msg {
    position: static;
    inset: auto;
    margin: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.55rem;
    width: auto;
    white-space: nowrap;
    font-family: Montserrat, Inter, ui-sans-serif, system-ui, sans-serif;
    font-weight: 700;
    font-size: clamp(0.72rem, 2.2vw, 0.875rem);
    letter-spacing: 0.04em;
    text-transform: none;
    text-shadow: none;
    animation: none;
    color: #fff;
}

.acme-promo-bar__lottie {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.35rem;
    height: 1.35rem;
    flex: 0 0 auto;
    filter: drop-shadow(0 0 0.5px rgba(255,255,255,.4));
}

.acme-promo-bar__text {
    color: #fff;
    font-weight: 700;
}

.acme-promo-bar__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0.2rem 0.55rem;
    border: 0;
    border-radius: 0.2rem;
    background: #fff;
    /* WCAG AA vs white — brand cyan fails; navy matches audit-fixes. */
    color: #0f2d52;
    font-family: Montserrat, Inter, ui-sans-serif, system-ui, sans-serif;
    font-size: inherit;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    line-height: 1.2;
    cursor: pointer;
    transition: transform .12s ease, box-shadow .12s ease;
}

.acme-promo-bar__btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(0,0,0,.18);
}

.acme-promo-bar__btn:focus-visible {
    outline: 2px solid #fff;
    outline-offset: 2px;
}

@keyframes acme-promo-slide {
    0% { transform: translateX(110%); opacity: 0; }
    18% { opacity: 1; transform: translateX(0); }
    48% { transform: translateX(0); opacity: 1; }
    78% { transform: translateX(-110%); opacity: 0; }
    100% { transform: translateX(-110%); opacity: 0; }
}

.acme-promo-bar__track.is-paused {
    animation-play-state: paused;
    transform: none;
    opacity: 1;
}

@media (prefers-reduced-motion: reduce) {
    .acme-promo-bar__track {
        animation: none;
        transform: none;
        opacity: 1;
    }
}

/* Shipping tiers modal */
.acme-ship-modal {
    position: fixed;
    inset: 0;
    z-index: 80;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.25rem;
}

.acme-ship-modal__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(15, 45, 82, 0.55);
    backdrop-filter: blur(2px);
}

.acme-ship-modal__panel {
    position: relative;
    z-index: 1;
    width: min(34rem, 100%);
    padding: 1.35rem 1.25rem 1.15rem;
    border-radius: 0.85rem;
    background: #fff;
    box-shadow: 0 24px 64px rgba(15, 45, 82, 0.28);
}

.acme-ship-modal__close {
    position: absolute;
    top: -0.65rem;
    right: -0.65rem;
    width: 2rem;
    height: 2rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 999px;
    background: var(--acme-blue, #1f99ce);
    color: #fff;
    font-size: 1.25rem;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 4px 12px rgba(31, 153, 206, 0.35);
}

.acme-ship-modal__close:hover { background: #1886b5; }

.acme-ship-modal__title {
    margin: 0 0 1rem;
    font-family: Montserrat, Inter, ui-sans-serif, system-ui, sans-serif;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.3;
    color: #0f2d52;
    text-align: center;
}

.acme-ship-modal__table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    font-family: Inter, Montserrat, ui-sans-serif, system-ui, sans-serif;
    font-size: 0.9375rem;
}

.acme-ship-modal__table th,
.acme-ship-modal__table td {
    padding: 0.85rem 1rem;
    text-align: left;
    vertical-align: middle;
    border-right: 1px solid #d7dee8;
}

.acme-ship-modal__table th:last-child,
.acme-ship-modal__table td:last-child {
    border-right: 0;
}

.acme-ship-modal__table thead th {
    background: var(--acme-blue, #1f99ce);
    color: #fff;
    font-weight: 700;
}

.acme-ship-modal__table tbody tr:nth-child(odd) { background: #f3f5f8; }
.acme-ship-modal__table tbody tr:nth-child(even) { background: #fff; }

.acme-ship-modal__table tbody td {
    color: #1a2b3c;
    font-weight: 600;
}


/* Sticky: full header chrome fixed after scroll — logo left, no type shrink */
.acme-header__sticky-sentinel {
    display: block;
    height: 0;
    width: 100%;
    pointer-events: none;
}
.acme-header__sticky {
    position: relative;
    z-index: 40;
    background: #fff;
}
.acme-header__sticky-bar {
    position: relative;
    z-index: 40;
    background: #fff;
    overflow: visible;
}
.acme-header__sticky-bar.is-pinned {
    position: fixed !important;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 60;
    background: #fff;
    box-shadow: 0 4px 18px rgba(15, 45, 82, 0.12);
    overflow: visible !important;
}
.acme-header__sticky-bar.is-pinned .acme-header__top {
    height: auto !important;
    min-height: var(--acme-header-top-h, 4.5rem) !important;
}
.acme-header__sticky-bar.is-pinned .acme-header__customer,
.acme-header__sticky-bar.is-pinned .acme-account-menu {
    overflow: visible !important;
    z-index: 80 !important;
}
.acme-header__sticky-bar.is-pinned .acme-account-menu__panel,
.acme-header__sticky-bar.is-pinned .acme-account-menu__panel.is-fixed {
    z-index: 240 !important;
}
.acme-header__sticky-bar.is-pinned .acme-header__search.acme-header__search--open {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    top: 100% !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0.85rem var(--acme-header-pad-x) !important;
    clip: auto !important;
    overflow: visible !important;
    background: #fff;
    border-top: 1px solid #e8eef4;
    box-shadow: 0 14px 28px rgba(15, 45, 82, 0.14);
    z-index: 70;
    animation: acme-sticky-search-in 0.22s ease-out both;
}
@keyframes acme-sticky-search-in {
    from { opacity: 0; transform: translateY(-8px); }
    to { opacity: 1; transform: translateY(0); }
}

/* ---- Shell ---- */
.acme-header {
    background: #fff;
    overflow: visible;
    /* Entire header (mega + search) is one stacking context above toasts (z 30). */
    z-index: 40;
}

.acme-header__top {
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    height: var(--acme-header-top-h);
    min-height: var(--acme-header-top-h);
    padding-inline: var(--acme-header-pad-x);
    background: #ffffff;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    /* Design: no hairline under the top bar — cream nav is the separator */
    border-bottom: 0;
    /* Above cream nav/mega so search + account dropdowns win the stack */
    position: relative;
    z-index: 80;
    overflow: visible;
}

.acme-header__top-inner {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    gap: clamp(1.25rem, 4vw, 14.375rem); /* scales toward Figma 230px gap */
    width: 100%;
    max-width: var(--acme-header-inner);
    margin-inline: auto;
    min-height: 2.5rem; /* 40px */
}

.acme-header__brand {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex: 0 0 auto;
    width: auto;
    min-width: 5.5rem; /* logo cluster ~ Frame 12 feel */
}

.acme-header__brand .logo,
.acme-header__brand a {
    display: inline-flex;
    align-items: center;
}

.acme-header__brand img {
    max-height: 1.625rem; /* 26px */
    width: auto;
}

/* Mobile menu dialog logo — never inherit centered header-bar positioning */
.acme-header__brand [x-data="initMobileMenu"] dialog .acme-mobile-menu__logo,
.acme-header__brand [x-data="initMobileMenu"] dialog .acme-mobile-menu__logo a {
    position: static !important;
    left: auto !important;
    top: auto !important;
    transform: none !important;
    display: flex !important;
    align-items: center !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}

.acme-header__brand [x-data="initMobileMenu"] dialog .acme-mobile-menu__logo img {
    display: block !important;
    width: auto !important;
    max-width: 9rem !important;
    height: auto !important;
    max-height: 2.5rem !important;
    object-fit: contain !important;
}

.acme-header__search {
    flex: 1 1 auto;
    width: 100%;
    max-width: 40.25rem; /* 644px — Frame 2 */
    min-width: 0;
}

.acme-header__actions {
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
    flex: 0 0 auto;
    gap: 1.25rem; /* 20px — Frame 5 */
    z-index: 100;
    overflow: visible;
}

.acme-header__customer {
    position: relative;
    display: flex;
    align-items: center;
    gap: 0.5rem; /* 8px — Frame 4 */
    z-index: 110;
    flex: 0 0 auto;
    overflow: visible;
}

.acme-header__customer > nav,
.acme-header__customer-links {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 0.5rem; /* 8px */
    padding: 0;
    margin: 0;
}

/* Logged-in account dropdown — always anchored under the user button */
.acme-account-menu {
    position: relative !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: auto;
    max-width: none;
    overflow: visible !important;
    vertical-align: middle;
    isolation: isolate;
}

.acme-account-menu__trigger {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.25rem;
    height: 2.25rem;
    padding: 0;
    border: 1px solid #e5e7eb;
    border-radius: 0.5rem;
    background: #fff;
    color: #111;
    cursor: pointer;
    line-height: 0;
    z-index: 1;
}

.acme-account-menu__trigger:hover,
.acme-account-menu__trigger[aria-expanded="true"] {
    border-color: var(--acme-primary-to, #b22936);
    color: var(--acme-primary-to, #b22936);
}

.acme-account-menu__panel {
    /* Center under the trigger (relative to .acme-account-menu only) */
    position: absolute;
    top: calc(100% + 0.35rem);
    left: 50%;
    right: auto;
    bottom: auto;
    z-index: 120;
    box-sizing: border-box;
    width: max-content;
    min-width: 12rem;
    max-width: min(16rem, calc(100vw - 1.5rem));
    margin: 0;
    padding: 0.4rem 0;
    border: 1px solid #ececec;
    border-radius: 0.65rem;
    background: #fff;
    box-shadow: 0 12px 28px rgba(15, 45, 82, 0.12);
    overflow: hidden;
    transform: translateX(-50%);
}

/* JS fixed placement wins — coords via CSS vars so !important left:50% cannot win */
.acme-account-menu__panel.is-fixed {
    position: fixed !important;
    top: var(--acme-account-top, 0) !important;
    left: var(--acme-account-left, 0) !important;
    right: auto !important;
    bottom: auto !important;
    inset: auto !important;
    inset-block-start: var(--acme-account-top, 0) !important;
    inset-inline-start: var(--acme-account-left, 0) !important;
    inset-inline-end: auto !important;
    inset-block-end: auto !important;
    margin: 0 !important;
    transform: none !important;
    translate: none !important;
}

.acme-account-menu__panel a,
.acme-account-menu__panel .header.links a,
.acme-account-menu__panel li a {
    display: block;
    padding: 0.55rem 0.9rem;
    color: #111;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1.3;
    text-decoration: none;
    white-space: nowrap;
}

.acme-account-menu__panel a:hover,
.acme-account-menu__panel .header.links a:hover,
.acme-account-menu__panel li a:hover {
    background: #f7f7f7;
    color: var(--acme-primary-to, #b22936);
    text-decoration: none;
}

.acme-account-menu__panel ul,
.acme-account-menu__panel .header.links {
    list-style: none;
    margin: 0;
    padding: 0;
}

.acme-account-menu__panel li {
    margin: 0;
    padding: 0;
}

/* Hyvä default link styles sometimes force inline layout */
.acme-account-menu__panel .nav.item,
.acme-account-menu__panel .delimiter {
    display: block;
}

.acme-header__compare,
.acme-header__wishlist {
    display: none;
}

.acme-header__search-toggle {
    display: none;
    align-items: center;
    justify-content: center;
    padding: 0.25rem;
    background: transparent;
    border: 0;
    color: #000;
    cursor: pointer;
}

/* ---- Auth buttons (Figma: Sign In 84×35.17 / Register 94×35.17) ---- */
.acme-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    min-width: 4rem; /* 64px floor from design */
    height: 2.198rem; /* 35.17px */
    padding: 0.337rem 1.25rem 0.424rem; /* 5.39 / 20 / 6.78 */
    border-radius: 0.5rem; /* 8px */
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    font-size: 0.8rem; /* 12.8px */
    font-weight: 600;
    line-height: 1.375rem; /* 22px */
    letter-spacing: 0.016rem; /* 0.256px */
    text-decoration: none;
    white-space: nowrap;
    transition: opacity 0.15s ease;
}

.acme-btn--primary {
    min-width: 5.25rem; /* 84px */
}

.acme-btn--outline {
    min-width: 5.875rem; /* 94px */
}

.acme-btn:hover {
    opacity: 0.92;
    text-decoration: none;
}

.acme-btn.acme-btn--primary {
    color: #fff;
    background: linear-gradient(107.66deg, var(--acme-primary-from) 0%, var(--acme-primary-to) 100%);
    border: 0;
}

.acme-btn.acme-btn--outline {
    color: #000;
    background: #fff;
    border: 1px solid #000;
}

/* ---- Cart ---- */
.acme-header__cart {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.3rem;
    background: transparent;
    border: 0;
    color: #000;
    cursor: pointer;
    text-decoration: none;
}

.acme-header__cart-icon {
    position: relative;
    display: inline-flex;
    width: 1.25rem;
    height: 1.25rem;
}

.acme-header__cart-badge {
    position: absolute;
    top: -0.55rem;
    right: -0.65rem;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    min-width: 1.125rem;
    width: auto;
    max-width: none;
    height: 1.125rem;
    padding: 0 0.35rem;
    border-radius: 999px;
    background: var(--acme-cart-badge);
    color: #fff;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    font-size: 0.625rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0;
    white-space: nowrap;
    overflow: visible;
}

.acme-header__cart-total {
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    font-size: 0.85rem; /* 13.6px */
    font-weight: 700;
    line-height: 1.5rem;
    letter-spacing: 0.017rem;
    color: #000;
}

/* ---- Search ---- */
.acme-search__form {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    height: 2.5rem; /* 40px */
    box-sizing: border-box;
}

.acme-search__input {
    box-sizing: border-box;
    width: 100%;
    height: 2.5rem;
    margin: 0;
    padding: 0.5rem 2.75rem 0.5rem 1.25rem;
    border: 1px solid var(--acme-search-border);
    border-radius: 0.5rem; /* 8px — Figma, not pill */
    background: #fff;
    color: var(--acme-ink);
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    font-size: 0.85rem;
    font-weight: 500;
    line-height: 1.5rem;
    letter-spacing: 0.017rem;
    outline: none;
    box-shadow: none;
}

.acme-search__input::placeholder {
    color: var(--acme-ink);
    opacity: 1;
}

.acme-search__input:focus {
    border-color: var(--acme-ink);
}

.acme-search__submit {
    position: absolute;
    inset-block: 0;
    right: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.75rem;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--acme-ink);
    cursor: pointer;
}

/* ---- Instant search dropdown (above mega menu; under account menu) ---- */
.acme-search {
    position: relative;
    z-index: 90;
    overflow: visible;
}

.acme-search__panel {
    position: absolute;
    top: calc(100% + 0.4rem);
    left: 0;
    right: 0;
    z-index: 100;
}

.acme-search__panel-inner {
    max-height: min(70vh, 32rem);
    overflow: auto;
    border: 1px solid #e8e8e8;
    border-radius: 0.75rem;
    background: #fff;
    box-shadow: 0 18px 40px rgba(17, 17, 17, 0.12);
}

.acme-search__section {
    padding: 0.65rem 0.5rem 0.35rem;
    border-bottom: 1px solid #f0f0f0;
}

.acme-search__section:last-of-type {
    border-bottom: 0;
}

.acme-search__section-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.15rem 0.55rem 0.45rem;
}

.acme-search__section-head h3 {
    margin: 0;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #777;
}

.acme-search__text-btn {
    border: 0;
    background: transparent;
    color: var(--acme-primary-to, #c41230);
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    font-size: 0.72rem;
    font-weight: 600;
    cursor: pointer;
}

.acme-search__list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.acme-search__row,
.acme-search__product {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    width: 100%;
    padding: 0.55rem 0.65rem;
    border: 0;
    border-radius: 0.5rem;
    background: transparent;
    color: var(--acme-ink, #111);
    text-align: left;
    text-decoration: none;
    cursor: pointer;
    transition: background-color 0.12s ease;
}

.acme-search__row:hover,
.acme-search__product:hover,
.acme-search__row.is-active,
.acme-search__product.is-active {
    background: #f7f7f7;
    text-decoration: none;
}

.acme-search__row-icon {
    display: inline-flex;
    flex-shrink: 0;
    color: #8a8a8a;
}

.acme-search__row-main {
    flex: 1;
    min-width: 0;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1.3;
}

.acme-search__row-meta {
    flex-shrink: 0;
    font-size: 0.75rem;
    color: #888;
}

.acme-search__product-media {
    flex-shrink: 0;
    width: 3rem;
    height: 3rem;
    overflow: hidden;
    border-radius: 0.4rem;
    background: #f3f3f3;
}

.acme-search__product-media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.acme-search__product-body {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
    min-width: 0;
    flex: 1 1 auto;
}

.acme-search__product-name {
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    font-size: 0.9375rem; /* ~15px — compact dropdown; same family/weight as PDP cards */
    font-weight: 700;
    line-height: 1.25rem;
    letter-spacing: 0.1px;
    color: var(--acme-ink, #0f2d52);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.acme-search__product-meta {
    display: flex;
    flex-direction: column;
    gap: 0;
    width: 100%;
    min-width: 0;
}

.acme-search__product-meta-line {
    display: block;
    width: 100%;
    min-width: 0;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    font-weight: 400;
    font-size: 0.8125rem;
    line-height: 1.15rem;
    letter-spacing: 0.4px;
    color: #6b7280;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Legacy chip attrs — keep harmless if an older payload still sends them */
.acme-search__product-attrs {
    display: flex;
    flex-wrap: wrap;
    gap: 0.3rem;
    min-width: 0;
}

.acme-search__product-attr {
    display: inline-block;
    max-width: 100%;
    padding: 0.1rem 0.4rem;
    border-radius: 0.25rem;
    background: rgba(31, 153, 206, 0.1);
    color: #0f2d52;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    font-size: 0.6875rem;
    font-weight: 500;
    line-height: 1.3;
    letter-spacing: 0.01em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.acme-search__product-price {
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    font-size: 0.875rem;
    font-weight: 600;
    line-height: 1.25rem;
    color: var(--acme-primary-to, #c41230);
}

.acme-search__status {
    margin: 0;
    padding: 1rem 1rem 0.85rem;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    font-size: 0.85rem;
    color: #666;
}

.acme-search__view-all {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    width: 100%;
    padding: 0.85rem 1rem;
    border: 0;
    border-top: 1px solid #f0f0f0;
    background: #fafafa;
    color: var(--acme-ink, #111);
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    font-size: 0.85rem;
    font-weight: 700;
    cursor: pointer;
    border-radius: 0 0 0.75rem 0.75rem;
}

.acme-search__view-all:hover {
    background: #f3f3f3;
}

[x-cloak] {
    display: none !important;
}

/* ---- Cream nav row (Figma: 48px, #F8F8F8, centered links gap 40px) ---- */
.acme-header__nav {
    display: none;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    height: var(--acme-header-nav-h);
    min-height: var(--acme-header-nav-h);
    padding-inline: var(--acme-header-pad-x);
    background: var(--acme-cream);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    position: relative;
    overflow: visible;
    /* Below top-row search/account (z 80+) */
    z-index: 40;
}

.acme-header__nav-inner {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: var(--acme-header-inner);
    margin-inline: auto;
    position: relative;
    height: 100%;
}

/* Hide default Hyvä topmenu chrome wrappers when present */
.acme-header__nav .navigation {
    display: flex !important;
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
}

.acme-header__nav .navigation > div {
    width: 100%;
    padding-inline: 0 !important;
}

.acme-header__actions .acme-header__cart {
    flex-shrink: 0;
}

/* ---- Mega menu (closed by default; Alpine x-show / x-cloak) ---- */
.acme-mega-nav {
    position: static;
    width: 100%;
}

.acme-mega-nav__bar {
    width: 100%;
}

.acme-mega-nav__list {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 2.5rem; /* 40px — Container gap from design */
    margin: 0;
    padding: 0;
    list-style: none;
    height: 100%;
}

.acme-mega-nav__item {
    position: static;
    list-style: none;
}

/* Figma nav buttons: padding 8×12, radius 24, Inter 16/24 */
.acme-mega-nav__trigger,
.acme-mega-nav__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    height: 2.5rem; /* 40px */
    padding: 0.5rem 0.75rem; /* 8px 12px */
    border: 0;
    border-radius: 1.5rem; /* 24px */
    background: transparent;
    color: #000000;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    font-size: 1rem; /* 16px */
    font-weight: 400;
    line-height: 1.5rem; /* 24px */
    letter-spacing: 0.017rem; /* 0.272px */
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    white-space: nowrap;
    transition:
        color 0.28s ease,
        background-color 0.28s ease,
        font-weight 0.28s ease;
}

.acme-mega-nav__trigger:hover,
.acme-mega-nav__link:hover {
    text-decoration: none;
    color: #0f2d52;
    background: rgba(31, 153, 206, 0.08);
}

.acme-mega-nav__trigger.is-open,
.acme-mega-nav__trigger.is-current,
.acme-mega-nav__link.is-current,
.acme-mega-nav__link[aria-current="page"] {
    font-weight: 600; /* Home / active only */
}

.acme-mega-nav__trigger.is-open {
    color: #0f2d52;
    background: rgba(31, 153, 206, 0.12);
}

/* Chevrons are not in the design — keep hidden if any remain */
.acme-mega-nav__chevron {
    display: none !important;
}

.acme-mega-panel {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    /* Within nav stack only — search/account rows sit higher */
    z-index: 50;
    width: 100%;
    background: #ffffff;
    border-bottom: 1px solid #e8ecf0;
    box-shadow: 0 16px 32px rgba(15, 45, 82, 0.08);
    transform-origin: top center;
}

/* Slow, deliberate open/close (pairs with Alpine x-transition classes) */
.acme-mega-panel--enter {
    transition:
        opacity 0.32s ease,
        transform 0.36s cubic-bezier(0.22, 1, 0.36, 1);
}
.acme-mega-panel--enter-start {
    opacity: 0;
    transform: translateY(-6px);
}
.acme-mega-panel--enter-end {
    opacity: 1;
    transform: translateY(0);
}
.acme-mega-panel--leave {
    transition:
        opacity 0.28s ease,
        transform 0.28s ease;
}
.acme-mega-panel--leave-start {
    opacity: 1;
    transform: translateY(0);
}
.acme-mega-panel--leave-end {
    opacity: 0;
    transform: translateY(-4px);
}

.acme-mega-panel__inner {
    width: 100%;
    max-width: 93.3125rem;
    margin-inline: auto;
    padding: 1.75rem var(--acme-header-pad-x) 2rem;
    box-sizing: border-box;
}

/* Fixed 4 columns — slightly wider cols (tighter gap) so long SKUs fit */
.acme-mega-panel__columns {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    column-gap: 1.75rem;
    row-gap: 1.75rem;
    align-items: start;
    justify-items: stretch;
}

.acme-mega-col {
    min-width: 0;
}

.acme-mega-col__title {
    display: block;
    margin: 0 0 0.75rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid #eef2f6;
    color: #0f2d52;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    font-size: 0.8125rem; /* was 0.875rem — frees column width for links */
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 0.01em;
    text-decoration: none;
    text-transform: none;
}

.acme-mega-col__title:hover {
    color: #ad2733;
}

.acme-mega-col__list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.acme-mega-col__list > li + li {
    margin-top: 0.85rem;
}

.acme-mega-col__group {
    margin: 0;
    padding: 0;
}

/* PLP subcategory heading in the mega column */
.acme-mega-col__sub {
    display: block;
    color: #0f2d52;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    font-size: 0.75rem;
    font-weight: 600;
    line-height: 1.3;
    text-decoration: none;
    transition: color 0.15s ease;
}

.acme-mega-col__sub:hover {
    color: #ad2733;
}

/* Products belonging to that PLP category */
.acme-mega-col__products {
    margin: 0.4rem 0 0;
    padding: 0;
    list-style: none;
}

.acme-mega-col__products li + li {
    margin-top: 0.3rem;
}

.acme-mega-col__list a,
.acme-mega-col__product {
    display: block;
    color: #475569;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    font-size: 0.75rem; /* was 0.8125rem — long names fit without wrapping */
    font-weight: 400;
    line-height: 1.35;
    text-decoration: none;
    transition: color 0.15s ease;
}

.acme-mega-col__list a:hover,
.acme-mega-col__product:hover {
    color: #ad2733;
}

/* Blue bar: short tick beside first line only (stays aligned when copy wraps).
 * Must beat styles.css `.acme-mega-col__list a::before { content:none !important }`
 * (same !important, higher specificity — product links live inside __list). */
html .acme-mega-col__list a.acme-mega-col__product,
html a.acme-mega-col__product {
    position: relative !important;
    padding-left: 0.7rem !important;
    border-left: 0 !important;
}

html .acme-mega-col__list a.acme-mega-col__product::before,
html a.acme-mega-col__product::before {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    left: 0 !important;
    top: 0.2em !important;
    width: 2px !important;
    height: 0.95em !important;
    border-radius: 1px !important;
    background: var(--acme-cart-badge, #1f99ce) !important;
}

/* Legacy/unused: keep harmless if markup reappears */
.acme-mega-col__all,
.acme-mega-panel__footer,
.acme-mega-panel__parent {
    display: none !important;
}

@media (max-width: 1100px) {
    .acme-mega-panel__columns {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        column-gap: 1.75rem;
    }
}

@media (max-width: 900px) {
    .acme-mega-panel__columns {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* MacBook Air 13–15": cut the 10.8vw Figma gutters + fluid mega. */
@media (min-width: 744px) and (max-width: 1799px) {
    :root {
        /* Was ~147–185px per side at 1512px — left only ~1200px of usable content. */
        --acme-header-pad-x: clamp(1.25rem, 2.8vw, 3rem);
        --acme-footer-pad-x: clamp(1.25rem, 2.8vw, 3rem);
    }

    .acme-mega-panel__inner {
        max-width: 100%;
        padding-inline: clamp(1rem, 2.5vw, 2rem);
    }

    .acme-mega-panel__columns {
        /* Keep 4 cols on MBA widths; tighter gap = wider text measure */
        grid-template-columns: repeat(4, minmax(0, 1fr));
        column-gap: clamp(1rem, 1.6vw, 1.5rem);
        row-gap: 1.35rem;
    }

    .acme-mega-col__title {
        font-size: 0.75rem;
    }

    .acme-mega-col__product,
    .acme-mega-col__sub {
        font-size: 0.6875rem; /* 11px — long Beach/Pool names stay on one line */
        line-height: 1.3;
    }
}

/* Alpine cloak — critical so panels stay hidden before JS */
[x-cloak] {
    display: none !important;
}

/* ---- Desktop / mobile ---- */
@media (min-width: 744px) {
    /* !important: styles.css also inlines header rules; keep cream mega row visible */
    .acme-header__nav {
        display: flex !important;
    }

    .acme-header__search-toggle {
        display: none !important;
    }

    .acme-header__search {
        display: block !important;
    }
}

@media (max-width: 743px) {
    .acme-header__top {
        height: auto;
        min-height: var(--acme-header-top-h);
        border-bottom: 1px solid #e5e7eb;
        padding-block: 0.75rem;
    }

    .acme-header__top-inner {
        display: grid;
        grid-template-columns: 1fr auto;
        grid-template-areas:
            "brand actions"
            "search search";
        row-gap: 0.75rem;
        column-gap: 1rem;
    }

    .acme-header__brand {
        grid-area: brand;
    }

    .acme-header__actions {
        grid-area: actions;
        gap: 0.75rem;
    }

    .acme-header__search {
        grid-area: search;
        display: none;
        max-width: none;
        width: 100%;
    }

    .acme-header__search--open {
        display: block;
    }

    .acme-header__search-toggle {
        display: inline-flex;
    }

    .acme-header__cart-total {
        display: none;
    }

    .acme-btn {
        padding-inline: 0.85rem;
        min-width: 0;
    }

    .acme-btn--primary,
    .acme-btn--outline {
        min-width: 0;
    }
}

@media (max-width: 640px) {
    .acme-header__customer .acme-btn {
        padding-inline: 0.65rem;
        font-size: 0.75rem;
    }
}

/* ---- Responsive pass — phone/tablet only, desktop (>=1024) untouched ---- */
@media (max-width: 743px) {
    /* The 10.8vw desktop inset costs a fifth of a tablet viewport */
    :root {
        --acme-header-pad-x: 2rem;
    }

    .acme-header__top-inner {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .acme-header__brand {
        min-width: 0;
    }

    .acme-header__brand img {
        max-width: 100%;
    }

    /* 44px hit boxes; the icon glyphs keep their current size */
    .acme-header__search-toggle,
    .acme-header__cart,
    .acme-header__brand [x-data="initMobileMenu"] > button {
        min-width: 2.75rem;
        min-height: 2.75rem;
    }

    .acme-account-menu__trigger {
        width: 2.75rem;
        height: 2.75rem;
    }

    .acme-btn {
        height: auto;
        min-height: 2.75rem;
    }

    /* Keep the badge inside the header box instead of past the right edge */
    .acme-header__cart-badge {
        top: -0.35rem;
        right: -0.25rem;
    }

    /* Fallback placement until the JS viewport clamp runs */
    .acme-account-menu__panel:not(.is-fixed) {
        left: auto;
        right: 0;
        transform: none;
    }

    .acme-account-menu__panel {
        max-width: min(16rem, calc(100vw - 2rem));
        max-height: calc(100vh - 7rem);
        overflow-y: auto;
    }

    .acme-account-menu__panel a,
    .acme-account-menu__panel .header.links a,
    .acme-account-menu__panel li a {
        display: flex;
        align-items: center;
        min-height: 2.75rem;
    }

    .acme-header__brand [x-data="initMobileMenu"] dialog a,
    .acme-header__brand [x-data="initMobileMenu"] dialog button {
        min-height: 2.75rem;
    }

    /* X10 — hamburger dialog: logo header + auth footer */
    .acme-header__brand [x-data="initMobileMenu"] dialog .acme-mobile-menu__logo {
        display: flex !important;
        align-items: center !important;
        min-height: 2.5rem !important;
    }

    .acme-header__brand [x-data="initMobileMenu"] dialog .acme-mobile-menu__logo a,
    .acme-header__brand [x-data="initMobileMenu"] dialog .acme-mobile-menu__logo img {
        display: block !important;
    }

    .acme-header__brand [x-data="initMobileMenu"] dialog .acme-mobile-menu__logo img {
        max-height: 2.5rem !important;
        width: auto !important;
        height: auto !important;
        object-fit: contain !important;
    }

    .acme-header__brand [x-data="initMobileMenu"] dialog .acme-mobile-menu__footer .acme-btn {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        min-height: 2.75rem !important;
        text-align: center !important;
    }
}

@media (max-width: 767px) {
    :root {
        --acme-header-pad-x: 1.25rem;
    }
}

/* Sign In + Register stop fitting beside the brand and the icon pair */
@media (max-width: 479px) {
    .acme-header__top-inner {
        grid-template-columns: minmax(0, 1fr);
        grid-template-areas:
            "brand"
            "actions"
            "search";
        row-gap: 0.5rem;
    }

    .acme-header__actions {
        width: 100%;
    }

    .acme-header__customer {
        margin-inline-end: auto;
    }
}

@media (max-width: 374px) {
    :root {
        --acme-header-pad-x: 1rem;
    }
}

/* acme-pdp-figma-v2 — Frame 330 layout (source: css/acme-pdp.css) */
/**
 * Acme PDP — Figma Frame 330 (1488 × 703.28)
 * thumbs 170 | main flex | info 527, gap 40, shared height, space-between text column
 */

:root {
    --acme-pdp-content-width: 93rem; /* 1488px */
    --acme-pdp-hero-h: 43.955rem; /* 703.28px */
    --acme-pdp-thumb-w: 10.625rem; /* 170px */
    --acme-pdp-info-w: 32.9375rem; /* 527px */
    --acme-pdp-gap: 2.5rem; /* 40px */
    --acme-pdp-control-h: 3.311rem; /* ~52.97px */
    --acme-ink: #0f2d52;
    --acme-cta: #ad2733;
    --acme-blue: #1f99ce;
    --acme-stage: #f8f9fc;
}

.acme-pdp {
    max-width: var(--acme-pdp-content-width);
    margin-inline: auto;
    display: flex;
    flex-direction: column;
    gap: 3rem; /* 48px Frame 320 */
    width: 100%;
}

/* ---- Hero row: thumbs + main + info ---- */
.acme-pdp__hero {
    display: flex !important;
    flex-direction: row !important;
    align-items: stretch !important;
    gap: var(--acme-pdp-gap) !important;
    width: 100%;
    min-height: 0;
    height: auto;
    grid-template-columns: none !important;
}

/* Gallery cell = thumbs column + main stage */
.acme-pdp__gallery {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    max-width: none !important;
    width: auto !important;
    display: flex !important;
    flex-direction: column;
    height: auto;
    min-height: 0;
    align-self: stretch;
}

.acme-pdp__gallery .snap-slider,
.acme-pdp__gallery [data-slider-type="gallery"] {
    display: flex !important;
    flex-direction: row !important;
    align-items: stretch !important;
    gap: var(--acme-pdp-gap) !important; /* 40 between thumbs & main */
    flex: 1 1 auto;
    width: 100%;
    min-height: 0;
    height: 100%;
}

/* Main image stage */
.acme-pdp__gallery .snap-slider > .relative {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    order: 2 !important;
    display: flex !important;
    flex-direction: column !important;
    align-self: stretch !important;
    height: auto !important;
}

.acme-pdp__gallery #gallery-main,
.acme-pdp__gallery [data-track] {
    flex: 1 1 auto !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    background: var(--acme-stage) !important;
    border-radius: 1rem !important; /* 16px */
    overflow-x: auto !important;
    overflow-y: hidden !important;
    overscroll-behavior-x: contain !important;
    scroll-snap-type: x mandatory !important;
    cursor: grab !important;
    display: flex !important;
    align-items: stretch !important;
}

/* Slide cells fill the stage — keep Hyvä structure intact (no absolute stacking) */
.acme-pdp__gallery #gallery-main > *,
.acme-pdp__gallery [data-track] > * {
    height: 100% !important;
    min-height: 100% !important;
    align-self: stretch !important;
}

.acme-pdp__gallery #gallery-main button,
.acme-pdp__gallery [data-track] button,
.acme-pdp__gallery #gallery-main .stack,
.acme-pdp__gallery [data-track] .stack {
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}

.acme-pdp__gallery #gallery-main img,
.acme-pdp__gallery [data-track] img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    mix-blend-mode: normal !important;
    aspect-ratio: auto !important;
}

.acme-pdp__gallery button[data-prev],
.acme-pdp__gallery button[data-next],
.acme-pdp__gallery .snap-slider > .relative > div:has(button[data-prev]),
.acme-pdp__gallery [data-overflow],
.acme-pdp__gallery .snap-marker[data-overflow],
.acme-pdp__gallery button.snap-marker.hidden,
.acme-pdp__gallery .snap-pager > button {
    display: none !important;
}

/* Thumbs column — 170 × full hero height, gap 20 */
.acme-pdp__gallery .snap-pager,
.acme-pdp__gallery [class*="snap-pager"],
.acme-pdp__gallery [data-pager] {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 1.25rem !important; /* 20px */
    width: var(--acme-pdp-thumb-w) !important;
    flex: 0 0 var(--acme-pdp-thumb-w) !important;
    max-width: var(--acme-pdp-thumb-w) !important;
    height: 100% !important;
    min-height: 100% !important;
    max-height: none !important;
    order: 1 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow-x: hidden !important;
    overflow-y: hidden !important;
    scrollbar-width: none;
    align-self: stretch !important;
}

/* Nested Hyvä pager wrapper must also fill outer height */
.acme-pdp__gallery .snap-pager .snap-pager,
.acme-pdp__gallery .snap-pager > .snap-pager {
    flex: 1 1 auto !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    order: 0 !important;
    gap: 1.25rem !important;
}

/* Fixed square thumbs — never flex-grow (single thumb was expanding to full stage) */
.acme-pdp__gallery .snap-pager .snap-marker,
.acme-pdp__gallery .snap-pager .snap-marker.stack,
.acme-pdp__gallery .snap-pager a.snap-marker,
.acme-pdp__gallery .snap-pager a.snap-marker.stack,
.acme-pdp__gallery .snap-pager button.snap-marker {
    box-sizing: border-box !important;
    display: flex !important;
    position: relative !important;
    align-items: center !important;
    justify-content: center !important;
    place-items: center !important;
    grid-template: none !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;
    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;
    flex-grow: 0 !important;
    flex-shrink: 0 !important;
    aspect-ratio: 1 / 1 !important;
    min-block-size: 0 !important;
    min-inline-size: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    border: 1px solid #b2b2b2 !important;
    border-radius: 0.5rem !important; /* 8px */
    overflow: hidden !important;
    box-shadow: none !important;
    inset-ring: none !important;
}

.acme-pdp__gallery .snap-pager .snap-marker[aria-current="true"],
.acme-pdp__gallery .snap-pager a.snap-marker[aria-current="true"],
.acme-pdp__gallery .snap-pager .snap-marker.stack[aria-current="true"] {
    border: 1.5px solid #62b7dd !important;
    box-shadow: none !important;
    background: #fff !important;
}

.acme-pdp__gallery .snap-pager .snap-marker img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    aspect-ratio: auto !important;
    border-radius: 0.4rem !important;
    display: block !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* ---- Product info column 527 ---- */
.acme-pdp__info {
    flex: 0 0 var(--acme-pdp-info-w) !important;
    width: var(--acme-pdp-info-w) !important;
    max-width: var(--acme-pdp-info-w) !important;
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    min-height: 0 !important;
    height: auto !important;
    align-self: flex-start !important;
    justify-self: auto !important;
}

/* Compact info stack — fill equalized column; ATC on shared bottom edge */
.acme-pdp__panel {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
    gap: 1.5rem !important; /* 24px */
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    flex: 1 1 auto !important;
    box-sizing: border-box !important;
}

.acme-pdp__sku,
.acme-pdp__title-wrap,
.acme-pdp__title,
.acme-pdp__title-wrap .page-title,
.acme-pdp__badges,
.acme-pdp__options-wrap,
.acme-pdp__options,
.acme-pdp__option-group,
.acme-pdp__buy,
.acme-pdp__price-row,
.acme-pdp__actions {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

/* Header cluster (Frame 310: gap 4px) */
.acme-pdp__header {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 0.25rem !important; /* 4px */
    width: 100% !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
    padding: 0 !important;
}

.acme-pdp__sku {
    font-family: Montserrat, system-ui, sans-serif !important;
    font-weight: 500 !important;
    font-size: 1.25rem !important; /* 20px */
    line-height: 1.25rem !important;
    color: var(--acme-ink) !important;
    text-transform: none !important;
}

.acme-pdp__title-wrap {
    margin-top: 0 !important;
}

.acme-pdp__title,
.acme-pdp__title-wrap .page-title {
    font-family: Montserrat, system-ui, sans-serif !important;
    font-weight: 600 !important;
    font-size: 2rem !important; /* 32px */
    line-height: 1.2 !important;
    letter-spacing: -0.03rem !important;
    color: var(--acme-ink) !important;
    text-align: left !important;
    margin: 0 !important;
    padding: 0 !important;
}

.acme-pdp__badges {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 0.5rem !important; /* 8px */
    list-style: none !important;
    margin: 0.5rem 0 0 !important;
    padding: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 5.25rem !important;
}

.acme-pdp__badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
    min-height: 2.25rem !important; /* 36px */
    padding: 0 0.625rem !important; /* 10px */
    background: rgba(31, 153, 206, 0.1) !important;
    border-radius: 0.5rem !important;
}

.acme-pdp__badge-icon {
    width: 1.5rem !important;
    height: 1.5rem !important;
}

.acme-pdp__badge-icon svg {
    width: 1.5rem !important;
    height: 1.5rem !important;
}

.acme-pdp__badge-text {
    font-family: Montserrat, system-ui, sans-serif !important;
    font-weight: 600 !important;
    font-size: 1rem !important; /* 16px */
    line-height: 2.25rem !important;
    letter-spacing: -0.03rem !important;
    color: #111 !important;
    white-space: nowrap !important;
}

/* Options cluster — gap 20 between groups, 12 label→pills */
.acme-pdp__options-wrap {
    display: flex !important;
    flex-direction: column !important;
    flex: 0 0 auto !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    min-height: 0 !important;
}

.acme-pdp__options-wrap #product_addtocart_form,
.acme-pdp__options-wrap form {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    flex: none !important;
}

/* Kill Magento/Hyvä field chrome that pad option rows */
.acme-pdp__options-wrap .field,
.acme-pdp__options-wrap .fieldset,
.acme-pdp__options-wrap .product-options-wrapper,
.acme-pdp__options-wrap .fieldset > .field,
.acme-pdp__options-wrap .mb-2,
.acme-pdp__options-wrap .mb-3,
.acme-pdp__options-wrap .mb-4,
.acme-pdp__options-wrap .mt-2,
.acme-pdp__options-wrap .mt-4,
.acme-pdp__options-wrap .space-y-2 > :not([hidden]) ~ :not([hidden]),
.acme-pdp__options-wrap [class*="mb-"] {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.acme-pdp__options {
    display: flex !important;
    flex-direction: column !important;
    gap: 1.5rem !important; /* 24px */
    flex: none !important;
    justify-content: flex-start !important;
    min-height: 8rem !important;
}

.acme-pdp__option-group {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 0.75rem !important; /* 12px */
    width: 100% !important;
    min-height: 4.75rem !important;
}

.acme-pdp__option-label {
    display: inline-flex !important;
    align-items: baseline !important;
    font-family: Poppins, system-ui, sans-serif !important;
    font-weight: 500 !important;
    font-size: 1.25rem !important; /* 20px */
    line-height: 1.25rem !important;
    color: #001a1e !important;
    white-space: nowrap !important;
}

.acme-pdp__option-pills {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 0.5rem !important; /* 8px */
    width: 100% !important;
}

.acme-pdp__pill {
    box-sizing: border-box !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: auto !important;
    min-height: 2.3125rem !important; /* ~37px */
    max-height: none !important;
    padding: 0.75rem !important; /* 12px */
    margin: 0 !important;
    border: 1px solid rgba(31, 153, 206, 0.7) !important;
    border-radius: 0.5rem !important;
    background: linear-gradient(180deg, rgba(31, 153, 206, 0.0028) 0%, rgba(31, 153, 206, 0.028) 100%), #fff !important;
    font-family: Poppins, system-ui, sans-serif !important;
    font-weight: 500 !important;
    font-size: 1rem !important; /* 16px */
    line-height: 1 !important;
    white-space: nowrap !important;
    color: #001a1e !important;
    cursor: pointer !important;
}

.acme-pdp__pill.is-selected,
.acme-pdp__pill[aria-selected="true"] {
    background: #1f99ce !important;
    border-color: #1f99ce !important;
    color: #fff !important;
}

.acme-pdp__pill:disabled {
    opacity: 0.35 !important;
    cursor: not-allowed !important;
}

/* Buy cluster — Figma 1019:1760 (price + CTA); desktop pin via margin-top:auto in acme-pdp.css */
.acme-pdp__buy {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 0.625rem !important; /* 10px */
    margin-top: 0 !important; /* mobile; desktop overrides to auto */
    flex: 0 0 auto !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    width: 100% !important;
}

.acme-pdp__price-row {
    --price-font-size: 2rem;
    display: flex !important;
    align-items: baseline !important;
    gap: 0.4375rem !important; /* 7px */
    flex-wrap: nowrap !important;
}

.acme-pdp__price-row .price-box {
    display: inline-flex !important;
    flex-wrap: nowrap !important;
    align-items: baseline !important;
    gap: 0.4375rem !important;
    margin: 0 !important;
    padding: 0 !important;
}

.acme-pdp__price-row .price-label,
.acme-pdp__price-row .price-excluding-tax {
    display: none !important;
}

/* Old/cut price left; current price on the right */
.acme-pdp__price-row .old-price {
    display: inline-flex !important;
    order: 1 !important;
    align-items: baseline !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 0 !important;
    line-height: 0 !important;
    text-decoration: none !important;
}

.acme-pdp__price-row .old-price .price {
    font-family: Montserrat, system-ui, sans-serif !important;
    font-weight: 400 !important;
    font-size: 1.25rem !important;
    line-height: 1.25 !important;
    letter-spacing: 0 !important;
    color: rgba(0, 0, 0, 0.38) !important;
    text-decoration: line-through !important;
}

.acme-pdp__price-row .special-price,
.acme-pdp__price-row .normal-price,
.acme-pdp__price-row .final-price,
.acme-pdp__price-row .price-final_price {
    display: inline-flex !important;
    order: 2 !important;
    align-items: baseline !important;
    margin: 0 !important;
    padding: 0 !important;
}

.acme-pdp__price-row .price-unit,
.acme-pdp__price-row .acme-pdp__price-unit {
    order: 3 !important;
}

.acme-pdp__price-row .acme-price-amount-line .price-container {
    order: 1 !important;
}

.acme-pdp__price-row .special-price .acme-product-price-unit,
.acme-pdp__price-row .normal-price .acme-product-price-unit {
    order: 2 !important;
}

.acme-pdp__price-row .acme-price-amount-line .price-container,
.acme-pdp__price-row .acme-price-amount-line .price-wrapper,
.acme-pdp__price-row .price-box .special-price .price,
.acme-pdp__price-row .price-box .normal-price .price,
.acme-pdp__price-row .price-box .final-price .price,
.acme-pdp__price-row .price-box .price-final_price .price {
    display: inline !important;
    margin: 0 !important;
    padding: 0 !important;
    font-family: Montserrat, system-ui, sans-serif !important;
    font-weight: 600 !important;
    font-size: 2rem !important; /* 32px */
    line-height: 1.25 !important;
    letter-spacing: -0.03rem !important;
    color: var(--acme-ink) !important;
    text-decoration: none !important;
}

.acme-pdp__price-row .old-price .price-container,
.acme-pdp__price-row .old-price .price-wrapper {
    display: inline !important;
    font-size: 1.25rem !important;
    line-height: 1.25 !important;
    font-weight: 400 !important;
}

/* Remove partial earlier qty overrides if present */
.acme-pdp__price-unit {
    font-family: Poppins, system-ui, sans-serif !important;
    font-weight: 400 !important;
    font-size: 1.25rem !important; /* 20px */
    line-height: 1.25rem !important;
    color: var(--acme-ink) !important;
}

.acme-pdp__qty-btn {
    justify-content: flex-start !important;
    padding: 0 0.5rem 0 1rem !important;
}

.acme-pdp__qty-btn .acme-pdp__qty-value,
.acme-pdp__qty-btn .acme-pdp__qty-unit {
    line-height: 1 !important;
}

.acme-pdp__qty-caret {
    color: #9b9b9b !important;
    font-size: 1.25rem !important;
    line-height: 1 !important;
    margin-left: auto !important;
    display: inline-flex !important;
    align-items: center !important;
    flex-shrink: 0 !important;
}

.acme-pdp__qty-menu {
    display: none !important;
    position: absolute !important;
    z-index: 200 !important;
    left: 0 !important;
    right: 0 !important;
    /* Open upward — buy row sits at bottom of overflow:hidden hero */
    top: auto !important;
    bottom: calc(100% + 4px) !important;
    margin: 0 !important;
    padding: 0.35rem 0 !important;
    list-style: none !important;
    background: #fff !important;
    border: 1px solid #d9f3ff !important;
    border-radius: 0.5rem !important;
    box-shadow: 0 8px 24px rgba(15, 45, 82, 0.1) !important;
    max-height: 14rem !important;
    overflow-y: auto !important;
    pointer-events: auto !important;
}

.acme-pdp__qty-menu.is-open {
    display: block !important;
}


/* Qty dropdown must escape equalized column clipping */
.acme-pdp__buy,
.acme-pdp__actions,
.acme-pdp__qty,
.acme-pdp__info,
.acme-pdp__panel {
    overflow: visible !important;
}

.acme-pdp__qty-option {
    display: flex !important;
    width: 100% !important;
    padding: 0.5rem 0.75rem !important;
    border: 0 !important;
    background: transparent !important;
    font-family: Poppins, system-ui, sans-serif !important;
    font-size: 1rem !important;
    color: #001a1e !important;
    cursor: pointer !important;
    text-align: left !important;
}

.acme-pdp__qty-option:hover {
    background: rgba(31, 153, 206, 0.08) !important;
}

/* Similar To card prices (bare .price without Magento price-box) */
.acme-pdp-similar .acme-product-card__price > .price,
.acme-pdp-similar .acme-product-card__price .price {
    display: inline !important;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
    font-weight: 700 !important;
    font-size: 1.25rem !important;
    line-height: 2rem !important;
    letter-spacing: 0.15px !important;
    color: var(--acme-ink) !important;
}

.acme-pdp-similar .acme-product-card__price .old-price,
.acme-pdp-similar .acme-product-card__price span.old-price {
    display: inline !important;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
    font-weight: 400 !important;
    font-size: 0.875rem !important;
    line-height: 1.25rem !important;
    color: rgba(0, 0, 0, 0.38) !important;
    text-decoration: line-through !important;
}

.acme-pdp__price-unit {
    font-family: Poppins, system-ui, sans-serif !important;
    font-weight: 400 !important;
    font-size: 1.25rem !important; /* 20px */
    line-height: 1.25rem !important;
    color: var(--acme-ink) !important;
}

.acme-pdp__actions {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
    gap: 1rem !important; /* 16px */
    width: 100% !important;
    min-height: var(--acme-pdp-control-h) !important;
}

/*
 * Stripe Express / messaging (wrapped in .acme-pdp__express-pay from addtocart.phtml).
 * Keep them off the Figma qty+ATC row so ATC fills remaining width under tiers.
 */
.acme-pdp__actions > .acme-pdp__express-pay,
.acme-pdp__actions > .payment-request-button,
.acme-pdp__actions > #payment-request-button,
.acme-pdp__actions > #payment-method-messaging-element {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    order: 10 !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}

.acme-pdp__express-pay .payment-request-button,
.acme-pdp__express-pay #payment-request-button,
.acme-pdp__express-pay #payment-method-messaging-element {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}

.acme-pdp__express-pay .payment-request-button:empty,
.acme-pdp__express-pay #payment-request-button:empty {
    display: none !important;
    width: 0 !important;
    min-width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
}

.acme-pdp__qty {
    flex: 0 0 9.25rem !important; /* 148px */
    width: 9.25rem !important;
    position: relative !important;
}

.acme-pdp__qty-btn {
    box-sizing: border-box !important;
    width: 100% !important;
    height: var(--acme-pdp-control-h) !important;
    min-height: var(--acme-pdp-control-h) !important;
    max-height: var(--acme-pdp-control-h) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 0.25rem !important;
    padding: 0 0.5rem 0 1rem !important;
    border: 2px solid #d9f3ff !important;
    border-radius: 0.5rem !important;
    background: linear-gradient(180deg, rgba(31, 153, 206, 0.007) 0%, rgba(31, 153, 206, 0.07) 100%), #fff !important;
    cursor: pointer !important;
    font: inherit !important;
    line-height: 1 !important;
}

.acme-pdp__qty-value {
    font-family: Poppins, system-ui, sans-serif !important;
    font-weight: 500 !important;
    font-size: 1.25rem !important;
    color: #000 !important;
}

.acme-pdp__qty-unit {
    font-family: Poppins, system-ui, sans-serif !important;
    font-weight: 400 !important;
    font-size: 1.25rem !important;
    color: #9b9b9b !important;
}

.acme-pdp__atc {
    box-sizing: border-box !important;
    flex: 1 1 0% !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.75rem !important;
    height: var(--acme-pdp-control-h) !important;
    min-height: var(--acme-pdp-control-h) !important;
    max-height: var(--acme-pdp-control-h) !important;
    padding: 0.8rem 2rem !important;
    border: 0 !important;
    border-radius: 0.5rem !important;
    background: var(--acme-cta) !important;
    color: #fff !important;
    font-family: Inter, system-ui, sans-serif !important;
    font-weight: 600 !important;
    font-size: 1rem !important;
    line-height: 1.7 !important;
    letter-spacing: 0.019rem !important;
    cursor: pointer !important;
    white-space: nowrap !important;
    overflow: hidden !important;
}

.acme-pdp__atc svg {
    width: 1.365rem !important;
    height: 1.365rem !important;
    flex-shrink: 0 !important;
}

.acme-pdp__atc:hover {
    background: #961f2a !important;
}

.acme-pdp__atc:disabled,
.acme-pdp__actions.is-oos .acme-pdp__atc {
    opacity: 0.55 !important;
    cursor: not-allowed !important;
    background: var(--acme-cta) !important;
}

.acme-pdp__qty.is-disabled,
.acme-pdp__qty.is-disabled .acme-pdp__qty-btn {
    opacity: 0.55 !important;
    cursor: not-allowed !important;
    pointer-events: none !important;
}


.acme-pdp__wishlist {
    display: none !important;
}

/* ---- Description is prose-only; never show the old checkmark Details block ---- */
.acme-pdp-details,
.acme-pdp-details__heading,
.acme-pdp-details__list,
.acme-pdp-details__item,
body.acme-pdp-page .acme-pdp-details {
    display: none !important;
}

.acme-pdp-similar__heading {
    margin: 0;
    font-family: Montserrat, system-ui, sans-serif;
    font-weight: 600;
    font-size: 3rem; /* 48px */
    line-height: 3.5rem; /* 56px */
    letter-spacing: -0.03rem;
    color: var(--acme-ink);
}

.acme-pdp-similar {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.acme-pdp-similar__grid {
    display: flex;
    flex-wrap: nowrap;
    align-items: stretch;
    gap: 1.25rem; /* 20px */
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 0.35rem;
    scrollbar-width: thin;
}

.acme-pdp-similar .acme-product-card,
.acme-pdp-similar__card {
    flex: 0 0 calc((100% - 3.75rem) / 4);
    width: calc((100% - 3.75rem) / 4);
    max-width: 22rem;
    min-width: 14.5rem;
    scroll-snap-align: start;
}

/* Responsive */
@media (max-width: 1200px) {
    .acme-pdp__info {
        flex: 0 0 min(32.9375rem, 38%) !important;
        width: min(32.9375rem, 38%) !important;
        max-width: min(32.9375rem, 38%) !important;
    }

    .acme-pdp__gallery .snap-pager,
    .acme-pdp__gallery [class*="snap-pager"] {
        width: 8.5rem !important;
        flex-basis: 8.5rem !important;
    }
}

@media (max-width: 743px) {
    .acme-pdp__hero {
        flex-direction: column !important;
        min-height: 0 !important;
    }

    .acme-pdp__gallery,
    .acme-pdp__info,
    .acme-pdp__panel {
        min-height: 0 !important;
        height: auto !important;
        max-height: none !important;
        width: 100% !important;
        max-width: none !important;
        flex: 0 0 auto !important; /* do not shrink under hero — overlaps SKU */
        overflow: visible !important;
    }

    .acme-pdp__gallery .snap-slider,
    .acme-pdp__gallery [data-slider-type="gallery"] {
        flex-direction: column !important;
        flex: 0 0 auto !important;
        min-height: 0 !important;
        height: auto !important;
        max-height: none !important;
        gap: 0.75rem !important;
        overflow: visible !important;
    }

    .acme-pdp__gallery .snap-pager,
    .acme-pdp__gallery [class*="snap-pager"] {
        flex-direction: row !important;
        width: 100% !important;
        flex: 0 0 auto !important;
        min-height: 0 !important;
        height: auto !important;
        order: 2 !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
    }

    .acme-pdp__gallery .snap-pager .snap-marker,
    .acme-pdp__gallery .snap-pager a.snap-marker {
        flex: 0 0 7rem !important;
        width: 7rem !important;
        height: 7rem !important;
        min-height: 7rem !important;
    }

    /* Mobile hero is Figma 260px cover frame — not a growing square */
    .acme-pdp__gallery #gallery-main,
    .acme-pdp__gallery [data-track] {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        aspect-ratio: 1 / 1 !important;
        aspect-ratio: auto !important;
    }

    .acme-pdp__gallery .snap-slider > .relative {
        order: 1 !important;
    }

    .acme-pdp-similar__grid {
        display: flex;
        flex-wrap: nowrap;
        overflow-x: auto;
    }

    .acme-pdp-similar .acme-product-card,
    .acme-pdp-similar__card {
        flex: 0 0 min(70vw, 18rem);
        width: min(70vw, 18rem);
        min-width: min(70vw, 18rem);
    }
}

@media (max-width: 639px) {
    .acme-pdp__actions {
        flex-direction: column !important;
    }

    .acme-pdp__qty {
        width: 100% !important;
        flex-basis: auto !important;
    }

    .acme-pdp__title,
    .acme-pdp__title-wrap .page-title {
        font-size: 1.5rem !important;
        line-height: 2rem !important;
    }

    .acme-pdp-details__heading,
    .acme-pdp-similar__heading {
        font-size: 2rem;
        line-height: 2.5rem;
    }

    .acme-pdp-details__title,
    .acme-pdp-details__body {
        font-size: 1rem;
        line-height: 1.5rem;
    }

    .acme-pdp-similar__grid {
        display: flex;
        flex-wrap: nowrap;
        overflow-x: auto;
    }

    .acme-pdp-similar .acme-product-card,
    .acme-pdp-similar__card {
        flex: 0 0 min(78vw, 16.5rem);
        width: min(78vw, 16.5rem);
        min-width: min(78vw, 16.5rem);
    }

    .acme-pdp__badge-text {
        white-space: normal !important;
    }
}

/* ---- Safe restore overlays (2026-08-04) ---- */

/* Never paint browser scrollbar on thumbs; keep scroll */
.acme-pdp__gallery .snap-pager,
.acme-pdp__gallery [data-pager] {
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
}
.acme-pdp__gallery .snap-pager::-webkit-scrollbar,
.acme-pdp__gallery [data-pager]::-webkit-scrollbar {
    width: 0 !important;
    height: 0 !important;
    display: none !important;
}

/* Guaranteed option pills visibility (protect against global button resets) */
body.acme-pdp-page .acme-pdp__options,
body.acme-pdp-page .acme-pdp__option-group,
body.acme-pdp-page .acme-pdp__option-pills {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
}
body.acme-pdp-page .acme-pdp__options {
    flex-direction: column !important;
}
body.acme-pdp-page .acme-pdp__option-group {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 0.75rem !important;
    width: 100% !important;
}
body.acme-pdp-page .acme-pdp__option-pills {
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: 0.5rem !important;
    width: 100% !important;
}
body.acme-pdp-page .acme-pdp__pill,
body.acme-pdp-page button.acme-pdp__pill {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    position: relative !important;
    width: auto !important;
    height: auto !important;
    min-height: 2.3125rem !important;
    padding: 0.75rem !important;
    border: 1px solid #1f99ce !important;
    border-radius: 0.5rem !important;
    background: #fff !important;
    background-image: none !important;
    color: #001a1e !important;
    font-size: 1rem !important;
    line-height: 1 !important;
    cursor: pointer !important;
    text-decoration: none !important;
    text-decoration-line: none !important;
    outline: none !important;
    box-shadow: none !important;
    -webkit-appearance: none !important;
    appearance: none !important;
}
body.acme-pdp-page .acme-pdp__pill.is-selected,
body.acme-pdp-page .acme-pdp__pill[aria-selected="true"] {
    background: #1f99ce !important;
    border: 1px solid #1f99ce !important;
    color: #ffffff !important;
    font-weight: 500 !important;
    box-shadow: none !important;
}
body.acme-pdp-page .acme-pdp__pill:disabled,
body.acme-pdp-page .acme-pdp__pill.is-unavailable,
body.acme-pdp-page .acme-pdp__pill[aria-disabled="true"] {
    opacity: 0.4 !important;
    cursor: not-allowed !important;
    pointer-events: none !important;
    text-decoration: none !important;
    text-decoration-line: none !important;
    background: #fff !important;
    background-image: none !important;
    border: 1px solid rgba(31, 153, 206, 0.35) !important;
}
body.acme-pdp-page .acme-pdp__pill::before,
body.acme-pdp-page .acme-pdp__pill::after {
    content: none !important;
    display: none !important;
}

/* Legacy Magento tier markup — Acme volume pricing lives in .acme-pdp-tiers */
.acme-pdp .prices-tier.items:not(.acme-pdp-tiers__cols),
.acme-pdp .price-tier_price {
    display: none !important;
}

/* Stable gallery order: thumbs left, main right, no page-width blowout */
.acme-pdp__hero {
    overflow-x: clip !important;
    max-width: 100% !important;
}
.acme-pdp__gallery .snap-slider {
    max-width: 100% !important;
}

/* acme-thumbs-top-v8 — fixed 170×170 (authoritative rules live in acme-pdp.css) */
body.acme-pdp-page .acme-pdp__gallery .snap-pager .snap-marker,
body.acme-pdp-page .acme-pdp__gallery .snap-pager a.snap-marker,
body.acme-pdp-page .acme-pdp__gallery .snap-pager button.snap-marker{
  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;
  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;
  aspect-ratio:1/1!important;
  order:0!important
}

/* acme-figma-pdp-v9 — solid selected pills, 2-col badges, whitespace slots */
body.acme-pdp-page .acme-pdp__panel{gap:1.25rem!important}
body.acme-pdp-page .acme-pdp__badges{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:.5rem!important;
  margin:.5rem 0 0!important;
  padding:0!important;
  width:100%!important;
  min-height:5.25rem!important;
  list-style:none!important
}
body.acme-pdp-page .acme-pdp__badge{display:inline-flex!important;align-items:center!important;gap:.5rem!important;min-height:2.5rem!important;max-height:2.5rem!important;max-width:100%!important;padding:.375rem .75rem!important;background:rgba(31,153,206,.12)!important;border:none!important;border-radius:.5rem!important;overflow:hidden!important}
body.acme-pdp-page .acme-pdp__badge-text{display:block!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;line-height:1.25rem!important;font-size:.875rem!important;color:#111!important}
body.acme-pdp-page .acme-pdp__short-desc,
body.acme-pdp-page .acme-pdp__features-slot{
  margin:.5rem 0 0!important;
  min-height:5.25rem!important;
  width:100%!important;
  box-sizing:border-box!important
}
body.acme-pdp-page .acme-pdp__short-desc{
  padding:.75rem .875rem!important;
  background:rgba(31,153,206,.08)!important;
  border-radius:.5rem!important;
  font-family:Montserrat,system-ui,sans-serif!important;
  font-weight:500!important;
  font-size:.9375rem!important;
  line-height:1.45!important;
  color:var(--acme-ink,#001a1e)!important
}
body.acme-pdp-page .acme-pdp__options{
  gap:1.5rem!important;
  min-height:8rem!important
}
body.acme-pdp-page .acme-pdp__option-group{
  gap:.75rem!important;
  min-height:4.75rem!important;
  width:100%!important
}
body.acme-pdp-page .acme-pdp__option-label::after{content:none!important;display:none!important}
body.acme-pdp-page .acme-pdp__pill{
  background:#fff!important;
  border:1px solid #1f99ce!important;
  color:#001a1e!important;
  font-weight:500!important;
  box-shadow:none!important
}
body.acme-pdp-page .acme-pdp__pill.is-selected,
body.acme-pdp-page .acme-pdp__pill[aria-selected="true"]{
  background:#1f99ce!important;
  border:1px solid #1f99ce!important;
  color:#fff!important;
  font-weight:500!important;
  box-shadow:none!important
}

/* acme-hero-equal-v13 — panel-driven equal cols + viewport fit + badge pills */
body.acme-pdp-page .acme-pdp__badge{
  background:rgba(31,153,206,.12)!important;
  border:none!important;
  color:var(--acme-ink,#0f2d52)!important
}
body.acme-pdp-page .acme-pdp__badge-text{color:#111!important;font-size:.875rem!important}
body.acme-pdp-page .acme-pdp__hero{overflow:hidden!important}

/* === acme pdp minor 2026-08-06b === */
body.acme-pdp-page .acme-pdp__panel{
  justify-content:flex-start!important;
  gap:1.25rem!important;
}
@media (max-width: 743px) {
body.acme-pdp-page .acme-pdp__buy{margin-top:0!important;gap:1.5rem!important;align-items:stretch!important}
}
body.acme-pdp-page .acme-pdp__title-wrap{
  max-width:100%!important;min-width:0!important;overflow:hidden!important
}
body.acme-pdp-page .acme-pdp__title,
body.acme-pdp-page .acme-pdp__title-wrap .page-title{
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  max-width:100%!important;
}
body.acme-pdp-page .acme-pdp__badges{min-height:0!important}
body.acme-pdp-page .acme-pdp__badge{
  min-width:0!important;overflow:hidden!important;max-width:100%!important
}
body.acme-pdp-page .acme-pdp__badge-text{
  min-width:0!important;flex:1 1 auto!important;
  white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important
}
body.acme-pdp-page .acme-pdp__features-slot{
  display:block!important;
  box-sizing:border-box!important;
  margin:.5rem 0 0!important;
  padding:0!important;
  width:100%!important;
  min-height:5rem!important;
  height:5rem!important;
  max-height:5rem!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
body.acme-pdp-page .acme-pdp__options,
body.acme-pdp-page .acme-pdp__option-group{min-height:0!important}
body.acme-pdp-page .acme-pdp__qty-menu.opens-down{
  top:calc(100% + 4px)!important;bottom:auto!important
}
body.acme-pdp-page .acme-pdp__hero:has(.acme-pdp__qty-menu.is-open.opens-down){
  overflow:visible!important
}

/* === acme-mba-pdp-fix 2026-08-07 === */
@media (max-width: 1799px) and (min-width: 744px) {
    body.acme-pdp-page .acme-pdp__hero {
        overflow-x: visible !important;
        overflow: visible !important;
        gap: 1.5rem !important;
    }
    body.acme-pdp-page .acme-pdp__gallery .snap-slider,
    body.acme-pdp-page .acme-pdp__gallery [data-slider-type="gallery"] {
        gap: 1rem !important;
    }
    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: 1 1 auto !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: min(44.4375rem, 46%) !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        aspect-ratio: 1 / 1 !important;
    }
    body.acme-pdp-page .acme-pdp__gallery .snap-pager,
    body.acme-pdp-page .acme-pdp__gallery [class*="snap-pager"] {
        flex: 0 0 7.5rem !important;
        width: 7.5rem !important;
        min-width: 7.5rem !important;
        max-width: 7.5rem !important;
    }
    body.acme-pdp-page .acme-pdp__gallery .snap-pager .snap-marker,
    body.acme-pdp-page .acme-pdp__gallery .snap-pager a.snap-marker {
        flex: 0 0 7.5rem !important;
        width: 7.5rem !important;
        min-width: 7.5rem !important;
        max-width: 7.5rem !important;
        height: 7.5rem !important;
        min-height: 7.5rem !important;
        max-height: 7.5rem !important;
    }
    body.acme-pdp-page .acme-pdp__info {
        flex: 1 1 18rem !important;
        width: auto !important;
        max-width: none !important;
        min-width: 16rem !important;
    }
    body.acme-pdp-page .acme-pdp__title,
    body.acme-pdp-page .acme-pdp__title-wrap .page-title {
        white-space: normal !important;
        overflow: visible !important;
        text-overflow: clip !important;
        display: -webkit-box !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 3 !important;
        line-clamp: 3 !important;
        font-size: clamp(1.35rem, 2vw, 2rem) !important;
        line-height: 1.25 !important;
    }
    body.acme-pdp-page .acme-pdp__title-wrap {
        overflow: visible !important;
    }
}
body.acme-pdp-page .acme-pdp__title,
body.acme-pdp-page .acme-pdp__title-wrap .page-title {
    display: block !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 100% !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
}

/* === acme-mba-noverlap-v2 — DISABLED v26: caused PDP gallery flash (flex:auto overrode 550px cap) === */

/* === acme-toast-above-mega (was z-index:25 — hid toasts behind mega / pinned wrong) === */
.page.messages{z-index:200!important}
#acme-login-toast{z-index:200!important}

/* === acme-account-above-toast 2026-08-10 === */
.acme-header__customer,
.acme-account-menu{z-index:220!important;isolation:isolate}
.acme-account-menu__panel,
.acme-account-menu__panel.is-fixed,
.acme-account-menu__panel[style*="position:fixed"]{z-index:230!important}

/* acme-similar-width-v1 */
.acme-pdp__similar,
.columns > .acme-pdp__similar,
.column.main > .acme-pdp__similar,
.columns > .acme-pdp-similar {
    box-sizing: border-box;
    width: 100%;
    max-width: var(--acme-pdp-content-width, 93rem);
    margin-inline: auto;
    padding-inline: 0;
}


/* Extra B2B Create Account link — use header Register instead */
.acme-b2b-header-link{display:none!important}

/* === acme-pdp-title-2line-v1 (header override) === */
body.acme-pdp-page .acme-pdp__title,
body.acme-pdp-page .acme-pdp__title-wrap .page-title {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    line-clamp: 2 !important;
    white-space: normal !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    word-break: break-word !important;
    overflow-wrap: anywhere !important;
}

/* === HOME1-MOBILE chrome (Figma 1105:4075) === */
/**
 * Mobile chrome (≤1023px) — Figma Home 1 header + footer.
 * Desktop (≥1024) is locked.
 */

@media (max-width: 743px) {
    :root {
        --acme-header-pad-x: 1rem; /* 16px */
        --acme-header-top-h: 4.8125rem; /* 77px = 20 + 37 + 20 */
        --acme-footer-pad-x: 1rem;
        --acme-home1-icon: 2.3125rem; /* 37px hit box */
        --acme-home1-glyph: 1.5rem; /* 24px Figma glyph */
    }

    .acme-header__top {
        box-sizing: border-box !important;
        height: var(--acme-header-top-h) !important;
        min-height: var(--acme-header-top-h) !important;
        padding-block: 0 !important;
        padding-inline: var(--acme-header-pad-x) !important;
        border-bottom: 0 !important;
    }

    .acme-header__top-inner {
        position: relative !important;
        box-sizing: border-box !important;
        display: grid !important;
        grid-template-columns: auto 1fr auto !important;
        grid-template-areas:
            "brand . actions"
            "search search search" !important;
        align-items: center !important;
        column-gap: 0 !important;
        row-gap: 0 !important;
        height: var(--acme-header-top-h) !important;
        min-height: var(--acme-header-top-h) !important;
        padding-block: 1.25rem !important; /* 20px — Figma py-20 */
        padding-inline: 0 !important;
    }

    .acme-header__brand {
        grid-area: brand !important;
        display: flex !important;
        align-items: center !important;
        position: static !important;
        z-index: 2 !important;
        min-width: 0 !important;
        width: auto !important;
        height: var(--acme-home1-icon) !important;
        gap: 0 !important;
    }

    /* Header bar logo only — exclude hamburger dialog clone */
    .acme-header__brand > a[href],
    .acme-header__brand > .logo {
        position: absolute !important;
        left: 50% !important;
        top: 50% !important;
        transform: translate(-50%, -50%) !important;
        z-index: 1 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        margin: 0 !important;
        padding: 0 !important;
        width: 5.8125rem !important; /* 93px */
        height: 1.625rem !important; /* 26px */
        border: 0 !important;
        gap: 0 !important;
    }

    .acme-header__brand > a[href] img,
    .acme-header__brand > .logo img {
        display: block !important;
        width: 5.8125rem !important;
        height: 1.625rem !important;
        object-fit: contain !important;
    }

    .acme-header__brand [x-data="initMobileMenu"] dialog .acme-mobile-menu__logo,
    .acme-header__brand [x-data="initMobileMenu"] dialog .acme-mobile-menu__logo a {
        position: static !important;
        left: auto !important;
        top: auto !important;
        transform: none !important;
        display: flex !important;
        align-items: center !important;
        width: auto !important;
        height: auto !important;
        min-height: 2rem !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .acme-header__brand [x-data="initMobileMenu"] dialog .acme-mobile-menu__logo img {
        display: block !important;
        width: auto !important;
        max-width: 9rem !important;
        height: auto !important;
        max-height: 2.5rem !important;
        object-fit: contain !important;
    }

    .acme-header__actions {
        grid-area: actions !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        z-index: 2 !important;
        width: auto !important;
        height: var(--acme-home1-icon) !important;
        gap: 1rem !important; /* 16px Figma */
    }

    .acme-header__customer {
        display: none !important;
    }

    .acme-header__search {
        grid-area: search !important;
        max-width: none !important;
        width: 100% !important;
        padding-bottom: 0.75rem !important;
    }

    .acme-header__search:not(.acme-header__search--open) {
        display: none !important;
        padding-bottom: 0 !important;
    }

    .acme-header__search--open {
        display: block !important;
    }

    .acme-header__search-toggle,
    .acme-header__cart,
    .acme-header__brand [x-data="initMobileMenu"] > button {
        box-sizing: border-box !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: var(--acme-home1-icon) !important;
        height: var(--acme-home1-icon) !important;
        min-width: var(--acme-home1-icon) !important;
        min-height: var(--acme-home1-icon) !important;
        max-width: var(--acme-home1-icon) !important;
        max-height: var(--acme-home1-icon) !important;
        flex-shrink: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
        line-height: 0 !important;
        color: #000 !important;
        gap: 0 !important;
    }

    .acme-header__cart-icon {
        position: relative !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: var(--acme-home1-glyph) !important;
        height: var(--acme-home1-glyph) !important;
        min-width: var(--acme-home1-glyph) !important;
        min-height: var(--acme-home1-glyph) !important;
    }

    .acme-header__search-toggle svg,
    .acme-header__cart svg,
    .acme-header__cart-icon svg,
    .acme-header__brand [x-data="initMobileMenu"] > button svg {
        display: block !important;
        width: var(--acme-home1-glyph) !important;
        height: var(--acme-home1-glyph) !important;
        min-width: var(--acme-home1-glyph) !important;
        min-height: var(--acme-home1-glyph) !important;
        max-width: var(--acme-home1-glyph) !important;
        max-height: var(--acme-home1-glyph) !important;
        flex-shrink: 0 !important;
    }

    .acme-header__cart-total {
        display: none !important;
    }

    .acme-header__cart,
    .acme-header__cart-icon {
        overflow: visible !important;
    }

    .acme-header__cart-badge {
        display: inline-flex !important;
        top: -0.35rem !important;
        right: -0.35rem !important;
        z-index: 2 !important;
    }

    /* ---- Footer: Figma Home 1 — cream brand, 3-up links, pill newsletter ---- */

    .acme-footer {
        padding: 0 !important;
        gap: 0 !important;
        background: #fff !important;
        border-top: 2px solid #e5e5e5 !important;
    }

    .acme-footer__inner {
        padding-inline: 0 !important;
        gap: 0 !important;
        max-width: none !important;
        width: 100% !important;
        align-items: stretch !important;
    }

    /* Figma 1019-9045 — brand full-width left; 3 centered nav columns */
    .acme-footer__main {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 1.25rem 0.5rem !important;
        align-items: start !important;
        padding: 1.5rem 0 0.5rem !important;
        width: 100% !important;
    }

    .acme-footer__brand {
        grid-column: 1 / -1 !important;
        max-width: none !important;
        width: 100% !important;
        min-width: 0 !important;
        padding: 0 0 0.5rem !important;
        background: transparent !important;
        gap: 1rem !important;
        text-align: left !important;
        align-items: flex-start !important;
    }

    .acme-footer__about {
        font-size: 0.875rem !important;
        line-height: 1.575rem !important;
        letter-spacing: 0.009375rem !important;
        max-width: none !important;
        color: #000 !important;
        text-align: left !important;
    }

    .acme-footer__contact {
        gap: 0.75rem !important;
        align-items: flex-start !important;
    }

    .acme-footer__contact li {
        min-height: 0 !important;
        font-size: 0.875rem !important;
        line-height: 1.3125rem !important;
        letter-spacing: 0.009375rem !important;
        color: #000 !important;
        justify-content: flex-start !important;
        text-align: left !important;
    }

    .acme-footer__social {
        gap: 0.5rem !important;
        justify-content: flex-start !important;
    }

    .acme-footer__social-link {
        width: 2rem !important;
        height: 2rem !important;
        border: 1px solid #000 !important;
        border-radius: 1rem !important;
    }

    .acme-footer__nav {
        display: flex !important;
        flex-direction: column !important;
        max-width: none !important;
        width: auto !important;
        min-width: 0 !important;
        padding: 0.25rem 0.15rem 0 !important;
        gap: 0.65rem !important;
        text-align: center !important;
        align-items: center !important;
    }

    .acme-footer__heading {
        margin: 0 0 0.5rem !important;
        font-size: 0.7rem !important;
        font-weight: 700 !important;
        line-height: 1.4 !important;
        letter-spacing: 0.105rem !important;
        text-transform: uppercase !important;
        color: #1f99ce !important;
        text-align: center !important;
    }

    .acme-footer__list {
        gap: 0.5rem !important;
        align-items: center !important;
        text-align: center !important;
    }

    .acme-footer__list a,
    .acme-footer__legal a {
        display: inline-block !important;
        min-height: 0 !important;
        font-size: 0.8125rem !important;
        font-weight: 400 !important;
        line-height: 1.35 !important;
        letter-spacing: 0.009375rem !important;
        color: #000 !important;
        text-align: center !important;
    }

    .acme-footer__newsletter {
        flex: 0 0 auto !important;
        max-width: none !important;
        width: 100% !important;
        min-width: 0 !important;
        padding: 3rem 1rem 0 !important;
        background: #fff !important;
    }

    .acme-footer__newsletter-text {
        font-size: 0.875rem !important;
        line-height: 1.4rem !important;
        letter-spacing: 0.009375rem !important;
        margin: 0 0 0.875rem !important;
        color: #000 !important;
    }

    .acme-footer__newsletter-form {
        width: 100% !important;
        gap: 0.75rem !important;
    }

    .acme-footer__newsletter-input,
    .acme-footer__newsletter-btn {
        width: 100% !important;
        height: 2.375rem !important;
        min-height: 2.375rem !important;
        border-radius: 1.5rem !important;
    }

    .acme-footer__newsletter-input {
        border: 1px solid #000 !important;
        padding: 0.6rem 1.0625rem !important;
        background: #fff !important;
        color: #000 !important;
        font-size: 0.85rem !important;
    }

    .acme-footer__newsletter-btn {
        border: 0 !important;
        background: #1f99ce !important;
        color: #fff !important;
        font-size: 0.85rem !important;
        font-weight: 700 !important;
    }

    .acme-footer__bottom {
        width: 100% !important;
        border-top: 1px solid #e5e5e5 !important;
        margin-top: 3rem !important;
        padding: 0.875rem 1rem 2rem !important;
        background: #fff !important;
    }

    .acme-footer__bottom-inner {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 0.875rem !important;
        padding: 0 !important;
    }

    .acme-footer__copy {
        font-size: 0.75rem !important;
        font-weight: 600 !important;
        line-height: 1.245rem !important;
        letter-spacing: 0.025rem !important;
        color: #000 !important;
    }

    .acme-footer__legal {
        flex-wrap: wrap !important;
        gap: 1.5rem !important;
    }

    .acme-footer__legal a {
        font-size: 0.75rem !important;
        line-height: 1.275rem !important;
        min-height: 0 !important;
        display: inline !important;
    }
}
/* ==========================================================================
   === PDP1-MOBILE (Figma 1112:6431) ===
   Mobile product page layout. Desktop >= 1024px untouched.
   Keep byte-identical in web/tailwind/components/acme-pdp.css.
   ========================================================================== */

@media (max-width: 743px) {
    body.acme-pdp-page {
        background: #f8f8f8 !important;
    }

    body.acme-pdp-page .page-main,
    body.acme-pdp-page .columns,
    body.acme-pdp-page .column.main {
        padding-inline: 0 !important;
    }

    /* PDP breadcrumbs stay visible on mobile (was display:none — hid the trail). */
    body.acme-pdp-page .top-container,
    body.acme-pdp-page .top-container .breadcrumbs,
    body.acme-pdp-page .breadcrumbs,
    body.acme-pdp-page .acme-breadcrumbs,
    body.acme-pdp-page .acme-pdp-breadcrumbs {
        display: block !important;
        visibility: visible !important;
    }

    body.acme-pdp-page .acme-pdp {
        gap: 0 !important;
        max-width: none !important;
        margin-inline: 0 !important;
    }

    /* Gallery + info — stacked white sections (16px pad) */
    body.acme-pdp-page .acme-pdp__hero {
        flex-direction: column !important;
        gap: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        background: transparent !important;
    }

    body.acme-pdp-page .acme-pdp__gallery {
        background: #fff !important;
        padding: 1rem !important;
        box-sizing: border-box !important;
    }

    body.acme-pdp-page .acme-pdp__info {
        background: #fff !important;
        padding: 1rem !important;
        box-sizing: border-box !important;
    }

    body.acme-pdp-page .acme-pdp__panel {
        gap: 1rem !important;
        height: auto !important;
        min-height: 0 !important;
    }

    /* Main image first, thumbs below — 260px hero + equal flex thumbs */
    body.acme-pdp-page .acme-pdp__gallery .snap-slider,
    body.acme-pdp-page .acme-pdp__gallery [data-slider-type="gallery"] {
        flex-direction: column !important;
        gap: 0.75rem !important;
        min-height: 0 !important;
        height: auto !important;
    }

    body.acme-pdp-page .acme-pdp__gallery .snap-slider > .relative {
        order: 1 !important;
        flex: 0 0 auto !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        height: auto !important; /* was 260px lock */
        min-height: 0 !important;
        max-height: none !important;
        aspect-ratio: 1 / 1 !important;
        align-self: stretch !important;
        overflow: hidden !important;
    }

    body.acme-pdp-page .acme-pdp__gallery #gallery-main,
    body.acme-pdp-page .acme-pdp__gallery [data-track] {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        height: auto !important; /* was 260px — Figma lock removed */
        min-height: 0 !important;
        max-height: none !important;
        aspect-ratio: 1 / 1 !important;
        border-radius: 0.75rem !important; /* 12px */
        box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.07) !important;
        background: #fff !important;
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scroll-snap-type: x mandatory !important;
    }

    body.acme-pdp-page .acme-pdp__gallery #gallery-main > *:not(.acme-gallery-slide--hidden),
    body.acme-pdp-page .acme-pdp__gallery [data-track] > *:not(.acme-gallery-slide--hidden) {
        position: relative !important;
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: 100% !important;
        height: 100% !important;
        min-height: 100% !important;
        overflow: hidden !important;
        scroll-snap-align: start !important;
    }

    body.acme-pdp-page .acme-pdp__gallery #gallery-main > template,
    body.acme-pdp-page .acme-pdp__gallery [data-track] > template {
        display: none !important;
        flex: 0 0 0 !important;
        width: 0 !important;
        min-width: 0 !important;
        max-width: 0 !important;
        height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        pointer-events: none !important;
        visibility: hidden !important;
    }

    /* Figma 1157:4307 — absolute inset-0 + object-cover */
    body.acme-pdp-page .acme-pdp__gallery #gallery-main img,
    body.acme-pdp-page .acme-pdp__gallery [data-track] img {
        position: absolute !important;
        inset: 0 !important;
        width: 100% !important;
        height: 100% !important;
        max-width: none !important;
        max-height: none !important;
        object-fit: cover !important;
        object-position: center center !important;
        aspect-ratio: auto !important;
    }

    body.acme-pdp-page .acme-pdp__gallery .snap-pager,
    body.acme-pdp-page .acme-pdp__gallery [class*="snap-pager"],
    body.acme-pdp-page .acme-pdp__gallery [data-pager] {
        order: 2 !important;
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        flex: 0 0 auto !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        gap: 0.625rem !important; /* 10px — Figma 1169:404 */
        overflow-x: visible !important;
        overflow-y: visible !important;
        scroll-snap-type: none !important;
        padding: 0 !important;
        margin: 0 !important;
        visibility: visible !important;
    }

    /*
     * Figma 1157:4309 / 1169:404 — thumbs are 4 equal cells under the hero.
     * flex:1 alone makes a single thumb as wide/tall as the main frame.
     * Lock each tile to one cell of a 4-up row (3 × 10px gaps).
     */
    body.acme-pdp-page .acme-pdp__gallery .snap-pager .snap-marker,
    body.acme-pdp-page .acme-pdp__gallery .snap-pager a.snap-marker,
    body.acme-pdp-page .acme-pdp__gallery .snap-pager button.snap-marker {
        flex: 0 0 calc((100% - 1.875rem) / 4) !important;
        width: calc((100% - 1.875rem) / 4) !important;
        min-width: 0 !important;
        max-width: calc((100% - 1.875rem) / 4) !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        aspect-ratio: 1 / 1 !important;
        border-radius: 0.375rem !important; /* 6px */
        border: 1px solid #e0e0e0 !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
    }

    body.acme-pdp-page .acme-pdp__gallery .snap-pager .snap-marker img,
    body.acme-pdp-page .acme-pdp__gallery .snap-pager a.snap-marker img,
    body.acme-pdp-page .acme-pdp__gallery .snap-pager button.snap-marker img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        object-position: center !important;
    }

    body.acme-pdp-page .acme-pdp__gallery .snap-pager .snap-marker[aria-current="true"],
    body.acme-pdp-page .acme-pdp__gallery .snap-pager a.snap-marker[aria-current="true"],
    body.acme-pdp-page .acme-pdp__gallery .snap-pager .snap-marker.is-active,
    body.acme-pdp-page .acme-pdp__gallery .snap-pager a.snap-marker.is-active {
        border: 2px solid #1f99ce !important;
    }

    /* Title block */
    body.acme-pdp-page .acme-pdp__sku {
        font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
        font-weight: 500 !important;
        font-size: 0.75rem !important; /* 12px */
        line-height: normal !important;
        color: #5a6a7e !important;
    }

    body.acme-pdp-page .acme-pdp__title,
    body.acme-pdp-page .acme-pdp__title-wrap .page-title {
        font-family: Montserrat, ui-sans-serif, system-ui, sans-serif !important;
        font-weight: 700 !important;
        font-size: 1.25rem !important; /* 20px */
        line-height: normal !important;
        letter-spacing: 0 !important;
        color: #0f2d52 !important;
        -webkit-line-clamp: unset !important;
        line-clamp: unset !important;
        display: block !important;
        max-height: none !important;
        white-space: normal !important;
        overflow: visible !important;
        text-overflow: clip !important;
    }

    /* Badges — flex wrap flow (not 2×2 grid) */
    body.acme-pdp-page .acme-pdp__badges {
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        gap: 0.5rem !important; /* 8px */
        grid-template-columns: none !important;
        grid-template-rows: none !important;
        grid-auto-rows: auto !important;
        overflow: visible !important;
        margin-top: 0 !important;
    }

    body.acme-pdp-page .acme-pdp__badges > .acme-pdp__badge:nth-child(n + 5) {
        display: inline-flex !important;
    }

    body.acme-pdp-page .acme-pdp__badge {
        flex: 0 1 auto !important;
        width: auto !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        padding: 0.375rem 0.625rem !important; /* 6px 10px */
        border-radius: 0.375rem !important;
        background: rgba(31, 153, 206, 0.07) !important;
        border: 1px solid #1f99ce !important;
    }

    body.acme-pdp-page .acme-pdp__badge-icon {
        display: none !important;
    }

    body.acme-pdp-page .acme-pdp__badge-text {
        font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
        font-weight: 600 !important;
        font-size: 0.6875rem !important; /* 11px */
        line-height: normal !important;
        letter-spacing: 0 !important;
        color: #111 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    /* Option groups */
    body.acme-pdp-page .acme-pdp__option-group {
        gap: 0.5rem !important; /* 8px label → pills */
    }

    body.acme-pdp-page .acme-pdp__option-label {
        font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
        font-weight: 600 !important;
        font-size: 0.8125rem !important; /* 13px */
        line-height: normal !important;
        color: #5a6a7e !important;
    }

    body.acme-pdp-page .acme-pdp__option-pills {
        gap: 0.375rem !important; /* 6px */
    }

    body.acme-pdp-page .acme-pdp__pill {
        min-height: 2rem !important;
        padding: 0.5rem 0.75rem !important;
        border-radius: 0.375rem !important;
        font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
        font-weight: 600 !important;
        font-size: 0.8125rem !important;
        line-height: normal !important;
    }

    /* Buy cluster — natural stack (no desktop bottom pin) */
    body.acme-pdp-page .acme-pdp__buy {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        gap: 0.75rem !important; /* 12px */
        margin-top: 0 !important;
        align-items: center !important;
    }

    body.acme-pdp-page .acme-pdp__rule {
        display: none !important;
    }

    body.acme-pdp-page [data-acme-tier-host],
    body.acme-pdp-page .acme-pdp__tiers,
    body.acme-pdp-page .acme-pdp-tiers {
        grid-column: 1 / -1 !important;
        min-height: 0 !important;
    }

    body.acme-pdp-page .acme-pdp__tiers--empty {
        display: none !important;
        height: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Wholesale Pricing card (mobile) */
    body.acme-pdp-page .acme-pdp-tiers__banner {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        grid-template-rows: auto auto !important;
        gap: 0.625rem !important;
        align-items: center !important;
        width: 100% !important;
        padding: 0.75rem !important;
        background: #f8f8f8 !important;
        border-radius: 0.5rem !important;
        box-sizing: border-box !important;
    }

    body.acme-pdp-page .acme-pdp-tiers__banner::before {
        content: "Wholesale Pricing";
        grid-row: 1;
        grid-column: 1;
        font-family: Montserrat, ui-sans-serif, system-ui, sans-serif;
        font-weight: 700;
        font-size: 0.8125rem;
        line-height: normal;
        color: #0f2d52;
    }

    body.acme-pdp-page .acme-pdp-tiers__brand {
        grid-row: 1;
        grid-column: 2;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        height: auto !important;
        min-height: 0 !important;
        padding: 0.25rem 0.5rem !important;
        border-radius: 0.25rem !important;
        background: #9d1f2b !important;
        font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
        font-weight: 700 !important;
        font-size: 0.625rem !important;
        line-height: normal !important;
        letter-spacing: 0 !important;
        text-transform: uppercase !important;
        white-space: nowrap !important;
        display: inline-flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0.25em !important;
        color: #fff !important;
        overflow: visible !important;
    }

    body.acme-pdp-page .acme-pdp-tiers__brand-text {
        display: inline !important;
        width: auto !important;
        max-width: none !important;
        margin: 0 !important;
        white-space: nowrap !important;
        color: #fff !important;
    }

    body.acme-pdp-page .acme-pdp-tiers__brand-line {
        display: inline !important;
        width: auto !important;
        color: #fff !important;
    }

    body.acme-pdp-page .acme-pdp-tiers__brand br {
        display: none !important;
    }

    body.acme-pdp-page .acme-pdp-tiers__cols {
        grid-row: 2;
        grid-column: 1 / -1;
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 0.5rem !important;
    }

    body.acme-pdp-page .acme-pdp-tiers__col:last-child:nth-child(odd) {
        grid-column: auto !important;
    }

    body.acme-pdp-page .acme-pdp-tiers__col {
        height: auto !important;
        min-height: 0 !important;
        padding: 0.75rem !important;
        gap: 0.25rem !important;
        background: #fff !important;
        border: 1px solid #9d1f2b !important;
        border-radius: 0.5rem !important;
        align-items: center !important;
    }

    body.acme-pdp-page .acme-pdp-tiers__col:last-child {
        background: #fff !important;
        border: 1px solid #9d1f2b !important;
    }
    body.acme-pdp-page .acme-pdp-tiers__col.is-active,
    body.acme-pdp-page .acme-pdp-tiers__col:last-child.is-active {
        background: #ffebee !important;
        border: 2px solid #b12936 !important;
    }

    body.acme-pdp-page .acme-pdp-tiers__qty {
        font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
        font-weight: 700 !important;
        font-size: 0.75rem !important;
        line-height: normal !important;
        color: #0f2d52 !important;
        text-align: center !important;
        white-space: nowrap !important;
    }

    body.acme-pdp-page .acme-pdp-tiers__price,
    body.acme-pdp-page .acme-pdp-tiers__price .price {
        font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
        font-weight: 600 !important;
        font-size: 0.8125rem !important;
        line-height: normal !important;
        color: #ad2733 !important;
        justify-content: center !important;
    }

    body.acme-pdp-page .acme-pdp-tiers__unit {
        display: inline !important;
        color: #ad2733 !important;
        font-weight: 600 !important;
        font-size: 0.8125rem !important;
        white-space: nowrap !important;
    }

    /* Price + qty on one row; ATC full width below */
    body.acme-pdp-page .acme-pdp__price-row {
        grid-column: 1 !important;
        grid-row: auto !important;
        align-self: center !important;
        gap: 0.25rem !important;
    }

    body.acme-pdp-page .acme-pdp__price-row .price-box {
        align-items: baseline !important;
    }

    body.acme-pdp-page .acme-pdp__price-row .special-price,
    body.acme-pdp-page .acme-pdp__price-row .normal-price,
    body.acme-pdp-page .acme-pdp__price-row .price-final_price {
        display: inline-flex !important;
        align-items: baseline !important;
        flex-wrap: nowrap !important;
        gap: 0.2rem !important;
    }

    body.acme-pdp-page .acme-pdp__price-row .acme-price-amount-line .price,
    body.acme-pdp-page .acme-pdp__price-row .price-box .special-price .price,
    body.acme-pdp-page .acme-pdp__price-row .price-box .normal-price .price,
    body.acme-pdp-page .acme-pdp__price-row .special-price .price,
    body.acme-pdp-page .acme-pdp__price-row .normal-price .price {
        font-family: Montserrat, ui-sans-serif, system-ui, sans-serif !important;
        font-weight: 800 !important;
        font-size: 1.5rem !important; /* 24px */
        line-height: 1.15 !important;
        letter-spacing: 0 !important;
        color: #0f2d52 !important;
    }

    body.acme-pdp-page .acme-pdp__price-row .old-price .price-container,
    body.acme-pdp-page .acme-pdp__price-row .old-price .price-wrapper,
    body.acme-pdp-page .acme-pdp__price-row .old-price .price {
        font-family: Montserrat, ui-sans-serif, system-ui, sans-serif !important;
        font-weight: 400 !important;
        font-size: 1rem !important;
        line-height: 1.25 !important;
        color: #6b7280 !important;
        text-decoration: line-through !important;
    }

    body.acme-pdp-page .acme-pdp__price-row .acme-product-price-unit,
    body.acme-pdp-page .acme-pdp__price-unit {
        font-family: Montserrat, ui-sans-serif, system-ui, sans-serif !important;
        font-weight: 500 !important;
        font-size: 0.875rem !important; /* 14px */
        line-height: 1 !important;
        color: #5a6a7e !important;
        vertical-align: baseline !important;
        align-self: baseline !important;
        position: static !important;
        transform: none !important;
    }

    body.acme-pdp-page .acme-pdp__buy {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow-x: clip !important;
    }

    body.acme-pdp-page .acme-pdp__actions {
        display: contents !important;
    }

    /*
     * With display:contents, Stripe must not contribute min-content to column 1
     * (its ~248px min-width was squeezing qty and making the buy cluster feel broken).
     */
    body.acme-pdp-page .acme-pdp__express-pay,
    body.acme-pdp-page .acme-pdp__actions > .payment-request-button,
    body.acme-pdp-page .acme-pdp__actions > #payment-request-button,
    body.acme-pdp-page .acme-pdp__actions > #payment-method-messaging-element {
        grid-column: 1 / -1 !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        justify-self: stretch !important;
    }

    body.acme-pdp-page .acme-pdp__qty {
        grid-column: 2 !important;
        flex: 0 0 auto !important;
        width: auto !important;
        min-width: 5.5rem !important;
        max-width: 100% !important;
        justify-self: end !important;
    }

    body.acme-pdp-page .acme-pdp__qty-btn {
        height: auto !important;
        min-height: 2.375rem !important;
        max-height: none !important;
        padding: 0.5rem 0.75rem !important;
        border: 1px solid #d9d9d9 !important;
        border-radius: 0.375rem !important;
        background: #fff !important;
        gap: 0.5rem !important;
    }

    body.acme-pdp-page .acme-pdp__qty-btn::before {
        content: none !important;
        display: none !important;
    }

    body.acme-pdp-page .acme-pdp__qty-value {
        font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
        font-weight: 600 !important;
        font-size: 0.875rem !important;
        color: #0f2d52 !important;
    }

    body.acme-pdp-page .acme-pdp__qty-unit {
        display: inline !important;
        font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
        font-weight: 600 !important;
        font-size: 0.875rem !important;
        color: #0f2d52 !important;
    }

    body.acme-pdp-page .acme-pdp__atc {
        grid-column: 1 / -1 !important;
        justify-self: stretch !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        flex: none !important;
        min-height: 2.875rem !important;
        padding: 0.875rem 1rem !important;
        border-radius: 0.5rem !important;
        background: #9d1f2b !important;
        font-family: Montserrat, ui-sans-serif, system-ui, sans-serif !important;
        font-weight: 700 !important;
        font-size: 0.9375rem !important;
        box-sizing: border-box !important;
    }

    body.acme-pdp-page .acme-pdp__wishlist,
    body.acme-pdp-page .acme-pdp__shortcuts {
        display: none !important;
    }

    /* Details — #f8f9fc band */
    body.acme-pdp-page .acme-pdp__details-wrap {
        background: #f8f9fc !important;
        padding: 1rem !important;
        box-sizing: border-box !important;
    }

    body.acme-pdp-page .acme-pdp-prose {
        margin-top: 0 !important;
        font-size: 0.75rem !important;
        line-height: 1.4 !important;
    }

    body.acme-pdp-page .acme-pdp-prose__heading,
    body.acme-pdp-page .acme-pdp-prose > h3.acme-pdp-prose__heading {
        font-family: Montserrat, ui-sans-serif, system-ui, sans-serif !important;
        font-size: 1.125rem !important; /* 18px */
        font-weight: 700 !important;
        line-height: normal !important;
        margin: 0 0 1rem !important;
    }

    body.acme-pdp-page .acme-pdp-prose__features {
        gap: 1rem !important;
    }

    body.acme-pdp-page .acme-pdp-prose__feature {
        gap: 0.75rem !important;
    }

    body.acme-pdp-page .acme-pdp-prose__icon {
        width: 1.5rem !important;
        height: 1.5rem !important;
        border-radius: 0.75rem !important;
        background: rgba(31, 153, 206, 0.1) !important;
    }

    body.acme-pdp-page .acme-pdp-prose__feature-title {
        font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
        font-weight: 700 !important;
        font-size: 0.875rem !important;
        line-height: normal !important;
        color: #0f2d52 !important;
    }

    body.acme-pdp-page .acme-pdp-prose__feature-body {
        padding-left: 0 !important;
        font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
        font-weight: 400 !important;
        font-size: 0.75rem !important;
        line-height: 1.4 !important;
        color: #5a6a7e !important;
    }

    /* Similar Products — match homepage Best Selling mobile cards */
    body.acme-pdp-page .acme-pdp-similar {
        background: #fff !important;
        padding: 1rem !important;
        box-sizing: border-box !important;
    }

    body.acme-pdp-page .acme-pdp-similar__heading {
        font-family: Montserrat, Inter, system-ui, sans-serif !important;
        font-size: 1.125rem !important; /* 18px — Figma 1157:4430 */
        font-weight: 700 !important;
        line-height: normal !important;
        letter-spacing: normal !important;
        text-align: left !important;
        color: #0f2d52 !important;
        margin: 0 0 1rem !important;
        width: 100% !important;
        align-self: flex-start !important;
    }

    /* Similar Products — horizontal slider (one card + peek), not 2-col grid */
    body.acme-pdp-page .acme-pdp-similar__grid {
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: stretch !important;
        gap: 0.75rem !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 0 0.5rem !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scroll-snap-type: x mandatory !important;
        -webkit-overflow-scrolling: touch !important;
        grid-template-columns: none !important;
        scrollbar-width: thin !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card,
    body.acme-pdp-page .acme-pdp-similar__card {
        display: flex !important;
        flex-direction: column !important;
        flex: 0 0 calc((100% - 1rem) / 2) !important;
        width: calc((100% - 1rem) / 2) !important;
        min-width: calc((100% - 1rem) / 2) !important;
        max-width: calc((100% - 1rem) / 2) !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 1px solid #e8ecf0 !important;
        border-radius: 0.5rem !important;
        background: #fff !important;
        box-shadow: 0 2px 20px rgba(15, 45, 82, 0.06) !important;
        overflow: hidden !important;
        scroll-snap-align: start !important;
    }

    /* Similar Products — Figma 1157:4429 (150px cover images) */
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__media {
        position: relative !important;
        flex: 0 0 9.375rem !important; /* 150px */
        aspect-ratio: auto !important;
        width: 100% !important;
        height: 9.375rem !important;
        min-height: 9.375rem !important;
        max-height: 9.375rem !important;
        overflow: hidden !important;
        border-radius: 0.75rem 0.75rem 0 0 !important; /* 12px */
        background: #f8f9fc !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__photo,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__media > a {
        position: absolute !important;
        inset: 0 !important;
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__photo img,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__photo .product-image-photo,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__media img,
    body.acme-pdp-page .acme-pdp-similar .product-image-photo {
        position: absolute !important;
        inset: 0 !important;
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        max-width: none !important;
        max-height: none !important;
        object-fit: cover !important;
        object-position: center !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__info {
        display: flex !important;
        flex-direction: column !important;
        flex: 1 1 auto !important;
        gap: 0.4375rem !important;
        padding: 0.5rem 1rem 0 !important;
        min-width: 0 !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__head {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 0.25rem !important;
        width: 100% !important;
        min-height: 0 !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__name,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__name a {
        flex: none !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        display: -webkit-box !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 2 !important;
        line-clamp: 2 !important;
        overflow: hidden !important;
        white-space: normal !important;
        text-overflow: ellipsis !important;
        font-family: Inter, system-ui, sans-serif !important;
        font-size: 0.75rem !important;
        font-weight: 700 !important;
        line-height: 1rem !important;
        letter-spacing: 0.1px !important;
        color: #0f2d52 !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__meta {
        display: block !important;
        min-height: 1.245rem !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__meta-line {
        display: block !important;
        font-size: 0.75rem !important;
        line-height: 1.245rem !important;
        letter-spacing: 0.4px !important;
        color: #5a6a7e !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__meta-line + .acme-product-card__meta-line {
        display: block !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price {
        flex: 0 0 auto !important;
        margin: 0 !important;
        padding: 0 !important;
        white-space: normal !important;
        overflow: visible !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .price-box .price,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .price-box .special-price .price {
        font-family: Inter, system-ui, sans-serif !important;
        font-size: 1rem !important;
        line-height: 1.125rem !important;
        font-weight: 700 !important;
        letter-spacing: 0.15px !important;
        color: #0f2d52 !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .old-price {
        display: inline-flex !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__actions {
        display: flex !important;
        flex-direction: row !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 0.25rem !important;
        width: 100% !important;
        margin-top: auto !important;
        padding: 0.5rem !important;
        box-sizing: border-box !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__wishlist {
        position: static !important;
        flex: 0 0 2.5rem !important;
        width: 2.5rem !important;
        height: 2.5rem !important;
        margin: 0 !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__wish-btn,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__wishlist button {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 2.5rem !important;
        height: 2.5rem !important;
        min-width: 2.5rem !important;
        min-height: 2.5rem !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0.25rem !important;
        background: rgba(0, 0, 0, 0.07) !important;
        box-shadow: 0 6px 6px rgba(0, 0, 0, 0.02) !important;
        color: #5a6a7e !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__cart {
        flex: 1 1 auto !important;
        width: auto !important;
        min-width: 0 !important;
        min-height: 2.5rem !important;
        height: 2.5rem !important;
        padding: 0 0.5rem !important;
        border-radius: 0.25rem !important;
        background: #ad2733 !important;
        font-size: 0.75rem !important;
        font-weight: 600 !important;
        letter-spacing: 0.304px !important;
        gap: 0.25rem !important;
        white-space: nowrap !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__cart svg {
        width: 1rem !important;
        height: 1rem !important;
        flex-shrink: 0 !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__addto {
        display: none !important;
    }
}

/* Desktop buy cluster — restore after mobile PDP1 overrides (must not leak to >=1024px) */
@media (min-width: 744px) {
    body.acme-pdp-page .acme-pdp__buy {
        display: flex !important;
        flex-direction: column !important;
        margin-top: auto !important;
        grid-template-columns: unset !important;
        align-items: stretch !important;
    }

    body.acme-pdp-page .acme-pdp__actions {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        width: 100% !important;
        gap: 1rem !important; /* Figma 1019:1764 */
    }

    body.acme-pdp-page .acme-pdp__price-row,
    body.acme-pdp-page .acme-pdp__qty,
    body.acme-pdp-page .acme-pdp__atc {
        grid-column: unset !important;
        grid-row: unset !important;
    }

    /* Figma: qty 148px + gap 16px + ATC fills rest of buy column */
    body.acme-pdp-page .acme-pdp__qty {
        flex: 0 0 9.25rem !important;
        width: 9.25rem !important;
        min-width: 9.25rem !important;
        max-width: 9.25rem !important;
        margin: 0 !important;
        order: 0 !important;
    }

    body.acme-pdp-page .acme-pdp__atc {
        flex: 1 1 0% !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        margin-left: 0 !important;
        white-space: nowrap !important;
        order: 1 !important;
    }

    body.acme-pdp-page .acme-pdp__actions > .acme-pdp__express-pay,
    body.acme-pdp-page .acme-pdp__actions > .payment-request-button,
    body.acme-pdp-page .acme-pdp__actions > #payment-request-button,
    body.acme-pdp-page .acme-pdp__actions > #payment-method-messaging-element {
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: 100% !important;
        order: 10 !important;
        min-width: 0 !important;
    }

    body.acme-pdp-page .acme-pdp__qty-btn::before {
        content: none !important;
        display: none !important;
    }
}

/* acme-pdp-ui-lock-v2 — similar heading + card order (header.css loads on every page) */
body.acme-pdp-page .acme-pdp-similar,
body.acme-pdp-page .acme-pdp__similar {
    text-align: left !important;
    align-items: stretch !important;
}
body.acme-pdp-page .acme-pdp-similar__heading,
body.acme-pdp-page .acme-pdp-similar h3.acme-pdp-similar__heading {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    text-align: left !important;
    align-self: stretch !important;
}
body.acme-pdp-page .acme-pdp-similar .acme-product-card__info {
    display: flex !important;
    flex-direction: column !important;
}
body.acme-pdp-page .acme-pdp-similar .acme-product-card__head {
    display: contents !important;
}
body.acme-pdp-page .acme-pdp-similar .acme-product-card__name { order: 1 !important; }
body.acme-pdp-page .acme-pdp-similar .acme-product-card__meta-slot,
body.acme-pdp-page .acme-pdp-similar .acme-product-card__meta { order: 2 !important; }
body.acme-pdp-page .acme-pdp-similar .acme-product-card__price { order: 3 !important; }
body.acme-pdp-page .acme-pdp-similar .acme-product-card__actions { order: 4 !important; }

/* ==========================================================================
   Product card desktop lock — PLP stacks title then price (2-col Figma 1090:953).
   Home also stacks title → meta → price → actions (price never beside title).
   ========================================================================== */
@media (min-width: 744px) {
    /* PLP / search: title full width, price row below (avoids unit/old-price jumble) */
    .acme-product-card:not(.acme-product-card--home):not(.acme-product-card--similar) .acme-product-card__info {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 0.4375rem !important;
    }

    .acme-product-card:not(.acme-product-card--home):not(.acme-product-card--similar) .acme-product-card__name {
        width: 100% !important;
        white-space: normal !important;
        display: -webkit-box !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 2 !important;
        line-clamp: 2 !important;
        overflow: hidden !important;
    }

    .acme-product-card:not(.acme-product-card--home):not(.acme-product-card--similar) .acme-product-card__name a {
        white-space: normal !important;
    }

    .acme-product-card:not(.acme-product-card--home):not(.acme-product-card--similar) .acme-product-card__price {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        align-items: baseline !important;
        gap: 0.5rem !important;
        margin-top: auto !important;
        padding-top: 0.2rem !important;
        width: 100% !important;
        justify-content: flex-start !important;
    }

    .acme-product-card:not(.acme-product-card--home):not(.acme-product-card--similar) .acme-product-card__actions {
        width: 100% !important;
    }

    /* Home best sellers: name | price in head; wishlist beside ATC (not absolute on image) */
    body.cms-index-index .acme-home-products .acme-product-card__head,
    .cms-index-index .acme-home-products .acme-product-card__head,
    body.cms-page-view.cms-home .acme-home-products .acme-product-card__head,
    .acme-product-card--home .acme-product-card__head {
        display: flex !important;
        flex-direction: row !important;
        align-items: flex-start !important;
        justify-content: space-between !important;
        gap: 0.75rem !important;
        width: 100% !important;
    }

    body.cms-index-index .acme-home-products .acme-product-card__head .acme-product-card__name,
    .cms-index-index .acme-home-products .acme-product-card__head .acme-product-card__name,
    .acme-product-card--home .acme-product-card__head .acme-product-card__name {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        width: auto !important;
        max-width: none !important;
    }

    body.cms-index-index .acme-home-products .acme-product-card__head .acme-product-card__price,
    .cms-index-index .acme-home-products .acme-product-card__head .acme-product-card__price,
    .acme-product-card--home .acme-product-card__head .acme-product-card__price {
        flex: 0 0 auto !important;
        margin-top: 0 !important;
        padding-top: 0 !important;
        width: auto !important;
        white-space: nowrap !important;
    }

    body.cms-index-index .acme-home-products .acme-product-card__actions,
    .cms-index-index .acme-home-products .acme-product-card__actions,
    .acme-product-card--home .acme-product-card__actions {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        gap: 0.5rem !important;
    }

    body.cms-index-index .acme-home-products .acme-product-card__wishlist,
    .cms-index-index .acme-home-products .acme-product-card__wishlist,
    .acme-product-card--home .acme-product-card__wishlist,
    .acme-product-card__actions .acme-product-card__wishlist {
        position: static !important;
        top: auto !important;
        right: auto !important;
        inset: auto !important;
        flex: 0 0 auto !important;
    }

    body.cms-index-index .acme-home-products .acme-product-card__cart,
    .cms-index-index .acme-home-products .acme-product-card__cart,
    .acme-product-card--home .acme-product-card__cart {
        flex: 1 1 auto !important;
        width: auto !important;
        min-width: 0 !important;
    }
}


/* ========== v15 — Request a Catalog: Sign In size, theme blue, dark hover ========== */
a.acme-mega-nav__link[href*="request-a-catalog"],
a.acme-cat-nav__trigger[href*="request-a-catalog"],
a.acme-cat-nav__trigger--link[href*="request-a-catalog"] {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    height: 2.198rem !important; /* match .acme-btn Sign In */
    min-height: 2.198rem !important;
    padding: 0.337rem 1.25rem 0.424rem !important;
    border-radius: 0.5rem !important;
    border: 0 !important;
    /* WCAG AA: white on #0a5f8a (≥4.5:1). Brand #1f99ce fails with white text. */
    background: #0a5f8a !important;
    color: #fff !important;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
    font-size: 0.8rem !important;
    font-weight: 600 !important;
    line-height: 1.375rem !important;
    letter-spacing: 0.016rem !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    transition:
        background-color 0.28s ease,
        color 0.28s ease,
        box-shadow 0.28s ease,
        transform 0.2s ease !important;
}

a.acme-mega-nav__link[href*="request-a-catalog"]:hover,
a.acme-mega-nav__link[href*="request-a-catalog"]:focus-visible,
a.acme-cat-nav__trigger[href*="request-a-catalog"]:hover,
a.acme-cat-nav__trigger--link[href*="request-a-catalog"]:hover {
    background: #0b4f7a !important; /* darker theme blue */
    color: #fff !important;
    text-decoration: none !important;
    box-shadow: 0 2px 8px rgba(11, 79, 122, 0.28) !important;
}

a.acme-mega-nav__link[href*="request-a-catalog"] .acme-cat-nav__label,
a.acme-cat-nav__trigger[href*="request-a-catalog"] .acme-cat-nav__label {
    color: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
}

/* ========== v21 — Request a Catalog: desktop button on mobile, centered ========== */
@media (max-width: 743px) {
    .acme-mega-nav__item:has(> a[href*="request-a-catalog"]),
    .acme-mega-nav__list > li:has(> a[href*="request-a-catalog"]) {
        display: flex !important;
        justify-content: center !important;
        width: 100% !important;
        flex: 1 1 100% !important;
        margin: 0.35rem 0 0 !important;
        padding: 0 0.75rem !important;
    }

    a.acme-mega-nav__link[href*="request-a-catalog"],
    a.acme-cat-nav__trigger[href*="request-a-catalog"],
    a.acme-cat-nav__trigger--link[href*="request-a-catalog"],
    nav[aria-label*="Mobile"] a[href*="request-a-catalog"]:not(.acme-mobile-menu__catalog-nav-link),
    .acme-mobile-menu a[href*="request-a-catalog"]:not(.acme-mobile-menu__catalog-nav-link),
    dialog a[href*="request-a-catalog"]:not(.acme-mobile-menu__catalog-nav-link) {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        box-sizing: border-box !important;
        width: auto !important;
        max-width: 100% !important;
        margin-inline: auto !important;
        height: 2.198rem !important;
        min-height: 2.198rem !important;
        padding: 0.337rem 1.25rem 0.424rem !important;
        border-radius: 0.5rem !important;
        border: 0 !important;
        background: var(--acme-blue, #1f99ce) !important;
        color: #fff !important;
        font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
        font-size: 0.8rem !important;
        font-weight: 600 !important;
        line-height: 1.375rem !important;
        letter-spacing: 0.016rem !important;
        text-decoration: none !important;
        white-space: nowrap !important;
        text-align: center !important;
    }

    a.acme-mega-nav__link[href*="request-a-catalog"]:hover,
    a.acme-cat-nav__trigger[href*="request-a-catalog"]:hover,
    nav[aria-label*="Mobile"] a[href*="request-a-catalog"]:not(.acme-mobile-menu__catalog-nav-link):hover,
    .acme-mobile-menu a[href*="request-a-catalog"]:not(.acme-mobile-menu__catalog-nav-link):hover,
    dialog a[href*="request-a-catalog"]:not(.acme-mobile-menu__catalog-nav-link):hover {
        background: #0b4f7a !important;
        color: #fff !important;
        text-decoration: none !important;
    }

    a.acme-mega-nav__link[href*="request-a-catalog"] .acme-cat-nav__label,
    nav[aria-label*="Mobile"] a[href*="request-a-catalog"]:not(.acme-mobile-menu__catalog-nav-link) span,
    .acme-mobile-menu a[href*="request-a-catalog"]:not(.acme-mobile-menu__catalog-nav-link) span,
    dialog a[href*="request-a-catalog"]:not(.acme-mobile-menu__catalog-nav-link) span {
        color: inherit !important;
        font-size: inherit !important;
        font-weight: inherit !important;
    }
}

/* ========== v23 — Request a Catalog in mobile menu dialog: desktop button, centered ========== */
/* Nav-list catalog (under Custom Order) uses .acme-mobile-menu__catalog-nav-link — excluded */
@media (max-width: 743px) {
    dialog[open] a[href*="request-a-catalog"]:not(.acme-mobile-menu__catalog-nav-link),
    dialog a[href*="request-a-catalog"]:not(.acme-mobile-menu__catalog-nav-link),
    .acme-header__brand dialog a[href*="request-a-catalog"]:not(.acme-mobile-menu__catalog-nav-link),
    .acme-header [x-data="initMobileMenu"] dialog a[href*="request-a-catalog"]:not(.acme-mobile-menu__catalog-nav-link),
    nav[aria-label*="Mobile"] a[href*="request-a-catalog"]:not(.acme-mobile-menu__catalog-nav-link) {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        box-sizing: border-box !important;
        width: auto !important;
        min-width: 11.5rem !important;
        max-width: calc(100% - 2rem) !important;
        margin: 0.75rem auto !important;
        height: 2.198rem !important;
        min-height: 2.198rem !important;
        padding: 0.337rem 1.25rem 0.424rem !important;
        border: 0 !important;
        border-bottom: 0 !important;
        border-radius: 0.5rem !important;
        background: #1f99ce !important;
        color: #fff !important;
        font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
        font-size: 0.8rem !important;
        font-weight: 600 !important;
        line-height: 1.375rem !important;
        letter-spacing: 0.016rem !important;
        text-decoration: none !important;
        white-space: nowrap !important;
        outline-offset: 2px !important;
    }

    dialog li:has(> a[href*="request-a-catalog"]:not(.acme-mobile-menu__catalog-nav-link)),
    .acme-header [x-data="initMobileMenu"] dialog li:has(> a[href*="request-a-catalog"]:not(.acme-mobile-menu__catalog-nav-link)),
    nav[aria-label*="Mobile"] li:has(> a[href*="request-a-catalog"]:not(.acme-mobile-menu__catalog-nav-link)) {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        width: 100% !important;
        border: 0 !important;
        padding: 0.35rem 1rem 0.85rem !important;
        background: transparent !important;
    }

    dialog a[href*="request-a-catalog"]:not(.acme-mobile-menu__catalog-nav-link):hover,
    .acme-header [x-data="initMobileMenu"] dialog a[href*="request-a-catalog"]:not(.acme-mobile-menu__catalog-nav-link):hover {
        background: #0b4f7a !important;
        color: #fff !important;
        text-decoration: none !important;
    }
}

/* ========== v23b — mobile menu catalog CTA via dedicated classes ========== */
@media (max-width: 743px) {
    .acme-mobile-menu__catalog-item,
    dialog li.acme-mobile-menu__catalog-item {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        width: 100% !important;
        border: 0 !important;
        border-bottom: 0 !important;
        padding: 0.75rem 1.25rem 1rem !important;
        background: transparent !important;
    }

    a.acme-mobile-menu__catalog-cta,
    dialog a.acme-mobile-menu__catalog-cta {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        box-sizing: border-box !important;
        width: auto !important;
        min-width: 12rem !important;
        max-width: calc(100% - 2rem) !important;
        margin: 0 auto !important;
        height: 2.198rem !important;
        min-height: 2.198rem !important;
        padding: 0.337rem 1.35rem 0.424rem !important;
        border: 0 !important;
        border-bottom: 0 !important;
        border-radius: 0.5rem !important;
        background: #1f99ce !important;
        color: #fff !important;
        font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
        font-size: 0.8rem !important;
        font-weight: 600 !important;
        line-height: 1.375rem !important;
        letter-spacing: 0.016rem !important;
        text-decoration: none !important;
        white-space: nowrap !important;
    }

    a.acme-mobile-menu__catalog-cta:hover,
    dialog a.acme-mobile-menu__catalog-cta:hover {
        background: #0b4f7a !important;
        color: #fff !important;
        text-decoration: none !important;
    }
}


/* ========== v25 — Request a Catalog left-aligned ONLY in mobile menu dialog ========== */
@media (max-width: 743px) {
    .acme-mobile-menu__catalog-item,
    dialog li.acme-mobile-menu__catalog-item,
    dialog li:has(> a[href*="request-a-catalog"]:not(.acme-mobile-menu__catalog-nav-link)),
    nav[aria-label*="Mobile"] li:has(> a[href*="request-a-catalog"]:not(.acme-mobile-menu__catalog-nav-link)) {
        display: flex !important;
        justify-content: flex-start !important;
        align-items: center !important;
        width: 100% !important;
        padding-left: 1.25rem !important;
        padding-right: 1.25rem !important;
        border: 0 !important;
        background: transparent !important;
    }
    a.acme-mobile-menu__catalog-cta,
    dialog a.acme-mobile-menu__catalog-cta,
    dialog a[href*="request-a-catalog"]:not(.acme-mobile-menu__catalog-nav-link) {
        margin-left: 0 !important;
        margin-right: auto !important;
    }
}


/* ========== v24 — account dropdown hug trigger / mega-menu start ========== */
.acme-account-menu__panel {
    top: calc(100% + 0.1rem) !important;
    inset-block-start: calc(100% + 0.1rem) !important;
}
.acme-account-menu__panel.is-fixed {
    z-index: 240 !important;
}


/* ========== v25 — restore mega nav centering (undo Catalog left-align side-effect) ========== */
@media (min-width: 744px) {
    .acme-mega-nav__list,
    nav.acme-mega-nav .acme-mega-nav__list,
    .acme-header__cream .acme-mega-nav__list {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        width: 100% !important;
        margin-inline: auto !important;
    }
    .acme-mega-nav__item,
    .acme-mega-nav__list > li {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    /* Catalog CTA stays a blue pill but does not pull the whole row left */
    .acme-mega-nav__item:has(> a[href*="request-a-catalog"]),
    .acme-mega-nav__list > li:has(> a[href*="request-a-catalog"]) {
        margin-left: 0.5rem !important;
        margin-right: 0 !important;
        justify-content: center !important;
    }
}


/* ========== v26 — Catalog CTA left on mobile dialog; account panel ========== */
@media (max-width: 743px) {
    dialog.acme-mobile-menu .acme-mobile-menu__catalog-item,
    dialog[aria-label*="Mobile"] .acme-mobile-menu__catalog-item,
    dialog li.acme-mobile-menu__catalog-item,
    dialog li:has(> a.acme-mobile-menu__catalog-cta),
    dialog li:has(> a[href*="request-a-catalog"]:not(.acme-mobile-menu__catalog-nav-link)) {
        justify-content: flex-start !important;
        text-align: left !important;
    }
    dialog.acme-mobile-menu a.acme-mobile-menu__catalog-cta,
    dialog a.acme-mobile-menu__catalog-cta,
    dialog a[href*="request-a-catalog"].acme-mobile-menu__catalog-cta {
        margin-left: 0 !important;
        margin-right: auto !important;
        align-self: flex-start !important;
    }
}

.acme-account-menu__panel.is-fixed {
    top: var(--acme-account-top, 0) !important;
    inset-block-start: var(--acme-account-top, 0) !important;
    margin-top: 0 !important;
    transform: none !important;
}

/* ========== v34 — MBA 13/15 sticky: keep cream links + Catalog on one row ========== */
@media (min-width: 744px) and (max-width: 1512px) {
    .acme-mega-nav__list,
    nav.acme-mega-nav .acme-mega-nav__list,
    .acme-header__cream .acme-mega-nav__list,
    .acme-header__sticky-bar.is-pinned .acme-mega-nav__list {
        display: flex !important;
        flex-wrap: nowrap !important;
        justify-content: center !important;
        align-items: center !important;
        gap: clamp(0.45rem, 1.05vw, 1.35rem) !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    .acme-mega-nav__trigger,
    .acme-mega-nav__link,
    .acme-header__sticky-bar.is-pinned .acme-mega-nav__trigger,
    .acme-header__sticky-bar.is-pinned .acme-mega-nav__link {
        height: 2.25rem !important;
        padding: 0.4rem 0.5rem !important;
        font-size: 0.875rem !important;
        line-height: 1.25rem !important;
        white-space: nowrap !important;
        flex-shrink: 0 !important;
    }

    .acme-mega-nav__item:has(> a[href*="request-a-catalog"]) a,
    .acme-mega-nav__list > li:has(> a[href*="request-a-catalog"]) a {
        flex-shrink: 0 !important;
        padding-inline: 0.85rem !important;
        font-size: 0.8125rem !important;
        white-space: nowrap !important;
    }
}



/* ========== ACME mobile-drawer auth (≤1023) — drawer only, never main chrome ========== */
@media (max-width: 743px) {
    /* Only when native dialog is open — never :not([hidden]) (fights Alpine/UA and leaks onto page) */
    .acme-header__brand [x-data="initMobileMenu"] dialog[open] {
        display: flex !important;
        flex-direction: column !important;
        height: 100% !important;
        max-height: 100dvh !important;
    }
    .acme-header__brand [x-data="initMobileMenu"] dialog:not([open]) {
        display: none !important;
    }
    .acme-header__brand [x-data="initMobileMenu"] dialog[open] .acme-mobile-menu__footer {
        display: block !important;
        visibility: visible !important;
        flex-shrink: 0 !important;
        margin-top: auto !important;
        padding: 1rem 1.5rem 1.25rem !important;
        border-top: 1px solid #e2e8f0 !important;
        background: #fff !important;
    }
    .acme-header__brand [x-data="initMobileMenu"] dialog[open] .acme-mobile-menu__footer .acme-btn,
    .acme-header__brand [x-data="initMobileMenu"] dialog[open] .acme-mobile-menu__footer a.acme-btn {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        min-height: 2.75rem !important;
    }
}

/* PDP — hide only the "Description" label; keep prose body + FAQ; collapse label space */
body.acme-pdp-page .acme-pdp-prose__heading,
body.acme-pdp-page .acme-pdp-prose > h3.acme-pdp-prose__heading {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    border: 0 !important;
    line-height: 0 !important;
    font-size: 0 !important;
}
body.acme-pdp-page .acme-pdp-prose > :first-child {
    margin-top: 0 !important;
}
body.acme-pdp-page .acme-pdp__qty-btn .acme-pdp__qty-unit,
body.acme-pdp-page .acme-pdp__qty-unit {
    display: inline !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: #0f2d52 !important;
    font-weight: 600 !important;
}

/* Desktop DZEE strip (header loads sitewide — must not force Wholesale card on ≥1024) */
@media (min-width: 744px) {
    body.acme-pdp-page .acme-pdp-tiers__banner {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 3fr) !important;
        grid-template-rows: auto !important;
        gap: 0.5rem !important;
        align-items: stretch !important;
        width: 100% !important;
        padding: 0 !important;
        background: transparent !important;
        border-radius: 0 !important;
        box-sizing: border-box !important;
    }
    body.acme-pdp-page .acme-pdp-tiers__banner::before {
        content: none !important;
        display: none !important;
    }
    body.acme-pdp-page .acme-pdp-tiers__brand {
        grid-row: 1 !important;
        grid-column: 1 !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        height: 78px !important;
        min-height: 78px !important;
        padding: 8px 6px !important;
        border-radius: 0.5rem !important;
        background: #9d1f2b !important;
        font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
        font-weight: 700 !important;
        font-size: 0.8125rem !important;
        line-height: 1.2 !important;
        letter-spacing: 0 !important;
        text-transform: none !important;
        white-space: normal !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0 !important;
        color: #fff !important;
        overflow: visible !important;
    }
    body.acme-pdp-page .acme-pdp-tiers__brand-text {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0 !important;
        width: auto !important;
        max-width: 100% !important;
        margin: 0 !important;
        color: #fff !important;
        white-space: normal !important;
        line-height: 1.2 !important;
    }
    body.acme-pdp-page .acme-pdp-tiers__brand-line {
        display: block !important;
        width: auto !important;
        color: #fff !important;
        white-space: nowrap !important;
        text-align: center !important;
    }
    body.acme-pdp-page .acme-pdp-tiers__brand-strong {
        color: #fff !important;
        font-weight: 700 !important;
    }
    body.acme-pdp-page .acme-pdp-tiers__brand-light {
        color: #fff !important;
        font-weight: 400 !important;
    }
    body.acme-pdp-page .acme-pdp-tiers__brand br {
        display: none !important;
    }
    body.acme-pdp-page .acme-pdp-tiers__cols {
        grid-row: 1 !important;
        grid-column: 2 !important;
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 0.5rem !important;
    }
    body.acme-pdp-page .acme-pdp-tiers__col {
        height: 78px !important;
        min-height: 78px !important;
        padding: 8px 6px !important;
        gap: 4px !important;
        background: #fff !important;
        border: 1px solid #9d1f2b !important;
        border-radius: 0.5rem !important;
    }
    body.acme-pdp-page .acme-pdp-tiers__col.is-active {
        background: #ffebee !important;
        border: 2px solid #b12936 !important;
    }
    body.acme-pdp-page .acme-pdp-tiers__qty {
        font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
        font-weight: 700 !important;
        font-size: 0.8125rem !important;
        color: #ad2733 !important;
        white-space: nowrap !important;
    }
    body.acme-pdp-page .acme-pdp-tiers__price,
    body.acme-pdp-page .acme-pdp-tiers__price .price,
    body.acme-pdp-page .acme-pdp-tiers__unit {
        font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
        font-weight: 700 !important;
        font-size: 0.875rem !important;
        color: #0f2d52 !important;
    }
    body.acme-pdp-page .acme-pdp-tiers__price {
        display: inline-flex !important;
        flex-wrap: nowrap !important;
        align-items: baseline !important;
        justify-content: center !important;
        column-gap: 0.15em !important;
        width: 100% !important;
        white-space: nowrap !important;
    }
    body.acme-pdp-page .acme-pdp-tiers__price .price,
    body.acme-pdp-page .acme-pdp-tiers__unit {
        white-space: nowrap !important;
        flex-shrink: 0 !important;
    }
    body.acme-pdp-page .acme-pdp__buy > [data-acme-tier-host] {
        margin: 0 0 0.625rem !important;
    }
}

/* Desktop: pin buy cluster (tiers→price→ATC) to column end — "end scroll", still above ATC */
@media (min-width: 744px) {
    body.acme-pdp-page .acme-pdp__panel {
        justify-content: flex-start !important;
    }
    body.acme-pdp-page .acme-pdp__buy {
        margin-top: auto !important;
    }
}

/* Wholesale Pricing card — mobile only */
@media (max-width: 743px) {
    body.acme-pdp-page .acme-pdp-tiers__banner {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        grid-template-rows: auto auto !important;
        gap: 0.625rem !important;
        align-items: center !important;
        width: 100% !important;
        padding: 0.75rem !important;
        background: #f8f8f8 !important;
        border-radius: 0.5rem !important;
        box-sizing: border-box !important;
    }
    body.acme-pdp-page .acme-pdp-tiers__banner::before {
        content: "Wholesale Pricing" !important;
        grid-row: 1;
        grid-column: 1;
        font-family: Montserrat, ui-sans-serif, system-ui, sans-serif !important;
        font-weight: 700 !important;
        font-size: 0.875rem !important;
        line-height: normal !important;
        color: #0f2d52 !important;
        display: block !important;
    }
    body.acme-pdp-page .acme-pdp-tiers__brand {
        grid-row: 1 !important;
        grid-column: 2 !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        height: auto !important;
        min-height: 0 !important;
        padding: 0.25rem 0.5rem !important;
        border-radius: 0.25rem !important;
        background: #9d1f2b !important;
        font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
        font-weight: 700 !important;
        font-size: 0.625rem !important;
        line-height: normal !important;
        letter-spacing: 0 !important;
        text-transform: uppercase !important;
        white-space: nowrap !important;
        display: inline-flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0.25em !important;
        color: #fff !important;
        overflow: visible !important;
    }
    body.acme-pdp-page .acme-pdp-tiers__brand-text,
    body.acme-pdp-page .acme-pdp-tiers__brand-line,
    body.acme-pdp-page .acme-pdp-tiers__brand-strong,
    body.acme-pdp-page .acme-pdp-tiers__brand-light {
        display: inline !important;
        width: auto !important;
        max-width: none !important;
        margin: 0 !important;
        color: #fff !important;
        font-weight: 700 !important;
        white-space: nowrap !important;
    }
    body.acme-pdp-page .acme-pdp-tiers__brand-light {
        font-weight: 400 !important;
    }
    body.acme-pdp-page .acme-pdp-tiers__brand-line + .acme-pdp-tiers__brand-line::before {
        content: " ";
    }
    body.acme-pdp-page .acme-pdp-tiers__brand br {
        display: none !important;
    }
    body.acme-pdp-page .acme-pdp-tiers__cols {
        grid-row: 2 !important;
        grid-column: 1 / -1 !important;
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 0.5rem !important;
    }
    body.acme-pdp-page .acme-pdp-tiers__col {
        height: auto !important;
        min-height: 0 !important;
        padding: 0.75rem !important;
        gap: 0.25rem !important;
        background: #fff !important;
        border: 1px solid #9d1f2b !important;
        border-radius: 0.5rem !important;
    }
    body.acme-pdp-page .acme-pdp-tiers__col.is-active {
        background: #ffebee !important;
        border: 2px solid #b12936 !important;
    }
    body.acme-pdp-page .acme-pdp-tiers__qty {
        font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
        font-weight: 700 !important;
        font-size: 0.8125rem !important;
        color: #0f2d52 !important;
        white-space: nowrap !important;
    }
    body.acme-pdp-page .acme-pdp-tiers__price,
    body.acme-pdp-page .acme-pdp-tiers__price .price,
    body.acme-pdp-page .acme-pdp-tiers__unit {
        font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
        font-weight: 600 !important;
        font-size: 0.875rem !important;
        color: #ad2733 !important;
    }
    body.acme-pdp-page .acme-pdp-tiers__price {
        display: inline-flex !important;
        flex-wrap: nowrap !important;
        align-items: baseline !important;
        justify-content: center !important;
        column-gap: 0.2em !important;
        width: 100% !important;
        white-space: nowrap !important;
    }
    body.acme-pdp-page .acme-pdp-tiers__price .price,
    body.acme-pdp-page .acme-pdp-tiers__unit {
        white-space: nowrap !important;
        flex-shrink: 0 !important;
    }
}
/* v56 — qty menu not clipped at pinned buy; Similar cut price above current */
@media (min-width: 744px) {
    body.acme-pdp-page .acme-pdp__info:has(.acme-pdp__qty-menu.is-open),
    body.acme-pdp-page .acme-pdp__panel:has(.acme-pdp__qty-menu.is-open),
    body.acme-pdp-page .acme-pdp__hero:has(.acme-pdp__qty-menu.is-open) {
        overflow: visible !important;
    }
    body.acme-pdp-page .acme-pdp__qty-menu.is-open {
        z-index: 50 !important;
    }
}

/* Similar cut ABOVE — mobile only (desktop: cut stays right of visible price via acme-pdp.css) */
@media (max-width: 743px) {
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .price-box {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 0.15rem !important;
        overflow: visible !important;
        white-space: normal !important;
    }
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .old-price {
        order: -1 !important;
        display: block !important;
        overflow: visible !important;
        white-space: nowrap !important;
        text-decoration: none !important;
    }
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .old-price .price {
        color: #9aa3af !important;
        text-decoration: line-through !important;
        font-size: 0.875rem !important;
        line-height: 1.25rem !important;
        font-weight: 400 !important;
    }
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .old-price .acme-product-price-unit {
        display: none !important;
    }
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .special-price,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .normal-price {
        order: 1 !important;
        display: inline-flex !important;
        flex-wrap: nowrap !important;
        align-items: baseline !important;
        gap: 0.25rem !important;
        white-space: nowrap !important;
    }
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .minimal-price,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .price-from,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .minimal-price-link {
        display: none !important;
    }
}

/* ========== v57 — Similar taller full images; mobile main image centered, content shares left edge ========== */

/* Similar Products — taller media + contain so product shows fully (desktop + mobile) */
body.acme-pdp-page .acme-pdp-similar .acme-product-card__media,
body.acme-pdp-page .acme-pdp-similar .acme-product-card__image,
body.acme-pdp-page .acme-pdp-similar .product-image-container,
body.acme-pdp-page .acme-pdp-similar .product-image-wrapper {
    aspect-ratio: 3 / 4 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    flex: 0 0 auto !important;
    overflow: hidden !important;
    background: #f8f9fc !important;
}

body.acme-pdp-page .acme-pdp-similar .acme-product-card__photo img,
body.acme-pdp-page .acme-pdp-similar .acme-product-card__photo .product-image-photo,
body.acme-pdp-page .acme-pdp-similar .acme-product-card__media img,
body.acme-pdp-page .acme-pdp-similar .product-image-photo,
body.acme-pdp-page .acme-pdp-similar img.product-image-photo {
    object-fit: contain !important;
    object-position: center center !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
}

@media (max-width: 743px) {
    /* Beat prior 150px Figma locks — taller portrait frame */
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__media {
        flex: 0 0 auto !important;
        width: 100% !important;
        height: auto !important;
        min-height: 12.5rem !important;
        max-height: none !important;
        aspect-ratio: 3 / 4 !important;
    }


    /* Shared content column (equal L/R). Main image centered in stage;
       thumbs / title / badges / SKU / pills / tiers / ATC share that stage's left edge. */
    body.acme-pdp-page .acme-pdp__hero {
        padding-inline: 0 !important;
    }
    body.acme-pdp-page .acme-pdp__gallery,
    body.acme-pdp-page .acme-pdp__info {
        box-sizing: border-box !important;
        padding-inline: 1rem !important;
    }
    body.acme-pdp-page .acme-pdp__panel {
        box-sizing: border-box !important;
        padding-inline: 0 !important;
    }

    /* Main image stage — full column width; photo centered inside */
    body.acme-pdp-page .acme-pdp__gallery .snap-slider > .relative {
        position: relative !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        aspect-ratio: 1 / 1 !important;
        overflow: hidden !important;
        width: 100% !important;
        margin-inline: 0 !important;
        display: block !important;
    }
    body.acme-pdp-page .acme-pdp__gallery #gallery-main,
    body.acme-pdp-page .acme-pdp__gallery [data-track] {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        width: 100% !important;
        margin-inline: 0 !important;
    }
    body.acme-pdp-page .acme-pdp__gallery #gallery-main > template,
    body.acme-pdp-page .acme-pdp__gallery [data-track] > template {
        display: none !important;
        flex: 0 0 0 !important;
        width: 0 !important;
        min-width: 0 !important;
        max-width: 0 !important;
        height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        pointer-events: none !important;
        visibility: hidden !important;
    }
    body.acme-pdp-page .acme-pdp__gallery #gallery-main > div:not(.acme-gallery-slide--hidden),
    body.acme-pdp-page .acme-pdp__gallery [data-track] > div:not(.acme-gallery-slide--hidden) {
        position: relative !important;
        flex: 0 0 100% !important;
        width: 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;
        height: 100% !important;
        scroll-snap-align: start !important;
        overflow: hidden !important;
    }
    body.acme-pdp-page .acme-pdp__gallery #gallery-main img,
    body.acme-pdp-page .acme-pdp__gallery [data-track] img {
        margin-inline: auto !important;
        object-position: center center !important;
        object-fit: contain !important;
    }

    /* Thumbs start at same left as main image stage */
    body.acme-pdp-page .acme-pdp__gallery .snap-pager,
    body.acme-pdp-page .acme-pdp__gallery [class*="snap-pager"],
    body.acme-pdp-page .acme-pdp__gallery [data-pager],
    body.acme-pdp-page .acme-pdp__gallery .snap-slider > .snap-pager,
    body.acme-pdp-page .acme-pdp__gallery .snap-pager .snap-pager,
    body.acme-pdp-page .acme-pdp__gallery .snap-pager > .snap-pager {
        display: flex !important;
        flex-wrap: nowrap !important;
        justify-content: flex-start !important;
        align-items: stretch !important;
        margin-inline: 0 !important;
        padding-inline: 0 !important;
        width: 100% !important;
        overflow: hidden !important;
        scrollbar-width: none !important;
    }
    body.acme-pdp-page .acme-pdp__gallery .snap-pager .snap-marker,
    body.acme-pdp-page .acme-pdp__gallery .snap-pager a.snap-marker,
    body.acme-pdp-page .acme-pdp__gallery .snap-pager button.snap-marker {
        min-width: 0 !important;
        flex: 0 0 calc((100% - 1.875rem) / 4) !important;
        width: calc((100% - 1.875rem) / 4) !important;
        max-width: calc((100% - 1.875rem) / 4) !important;
    }

    /* Title, badges, SKU — same left edge as main image */
    body.acme-pdp-page .acme-pdp__title-wrap,
    body.acme-pdp-page .acme-pdp__title,
    body.acme-pdp-page .acme-pdp__title-wrap .page-title,
    body.acme-pdp-page .acme-pdp__badges,
    body.acme-pdp-page .acme-pdp__sku {
        text-align: left !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-inline: 0 !important;
        padding-inline: 0 !important;
        align-self: stretch !important;
    }
    body.acme-pdp-page .acme-pdp__badges {
        justify-content: flex-start !important;
    }

    body.acme-pdp-page .acme-pdp__option-label {
        text-align: left !important;
        width: 100% !important;
    }
    body.acme-pdp-page .acme-pdp__options,
    body.acme-pdp-page .acme-pdp__options-wrap,
    body.acme-pdp-page .acme-pdp__option {
        text-align: left !important;
        align-items: flex-start !important;
        margin-inline: 0 !important;
        width: 100% !important;
    }
    body.acme-pdp-page .acme-pdp__option-pills,
    body.acme-pdp-page .acme-pdp__options .acme-pdp__option-pills,
    body.acme-pdp-page .acme-pdp__options [role="listbox"] {
        justify-content: flex-start !important;
        margin-inline: 0 !important;
    }

    /* Price + unit left, qty right — same row; ATC full width below */
    body.acme-pdp-page .acme-pdp__buy {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        justify-items: stretch !important;
        align-items: center !important;
        column-gap: 0.75rem !important;
        row-gap: 0.75rem !important;
        width: 100% !important;
        margin-inline: 0 !important;
        padding-inline: 0 !important;
    }
    body.acme-pdp-page .acme-pdp__actions {
        display: contents !important;
    }
    body.acme-pdp-page .acme-pdp__buy > [data-acme-tier-host],
    body.acme-pdp-page .acme-pdp__buy > .acme-pdp__tiers,
    body.acme-pdp-page .acme-pdp__buy > .acme-pdp-tiers {
        grid-column: 1 / -1 !important;
        justify-self: stretch !important;
        width: 100% !important;
        text-align: left !important;
        margin-inline: 0 !important;
    }
    body.acme-pdp-page .acme-pdp-tiers__banner {
        margin-inline: 0 !important;
        text-align: left !important;
        width: 100% !important;
    }
    body.acme-pdp-page .acme-pdp__price-row .special-price,
    body.acme-pdp-page .acme-pdp__price-row .normal-price {
        display: inline-flex !important;
        align-items: baseline !important;
        gap: 0.2rem !important;
    }
    body.acme-pdp-page .acme-pdp__price-row .acme-product-price-unit {
        line-height: 1 !important;
        vertical-align: baseline !important;
        align-self: baseline !important;
    }
    body.acme-pdp-page .acme-pdp__price-row {
        grid-column: 1 !important;
        grid-row: auto !important;
        display: flex !important;
        align-items: baseline !important;
        justify-content: flex-start !important;
        justify-self: start !important;
        flex-wrap: nowrap !important;
        text-align: left !important;
        width: auto !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin-inline: 0 !important;
    }
    body.acme-pdp-page .acme-pdp__price-row .price-box {
        display: inline-flex !important;
        align-items: baseline !important;
        justify-content: flex-start !important;
        flex-wrap: nowrap !important;
        margin-inline: 0 !important;
    }
    body.acme-pdp-page .acme-pdp__price-row .price-box .price,
    body.acme-pdp-page .acme-pdp__price-row .special-price .price,
    body.acme-pdp-page .acme-pdp__price-row .normal-price .price {
        line-height: 1.15 !important;
    }
    body.acme-pdp-page .acme-pdp__qty {
        grid-column: 2 !important;
        grid-row: auto !important;
        justify-self: end !important;
        align-self: center !important;
        width: auto !important;
        margin-inline: 0 !important;
    }
    body.acme-pdp-page .acme-pdp__atc {
        grid-column: 1 / -1 !important;
        justify-self: stretch !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-inline: 0 !important;
        text-align: center !important;
    }

}

/* ========== v58 — price-row left + qty right; clear bottom overlays (cookie/mega) ========== */
@media (max-width: 743px) {
    /* Explicit price | qty row — price-row locked to the left edge */
    body.acme-pdp-page .acme-pdp__buy {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        grid-template-areas:
            "tiers tiers"
            "price qty"
            "atc atc" !important;
        align-items: center !important;
        column-gap: 0.75rem !important;
        row-gap: 0.75rem !important;
        width: 100% !important;
        position: relative !important;
        z-index: 100 !important;
    }
    body.acme-pdp-page .acme-pdp__actions {
        display: contents !important;
    }
    body.acme-pdp-page .acme-pdp__buy > [data-acme-tier-host],
    body.acme-pdp-page .acme-pdp__buy > .acme-pdp__tiers,
    body.acme-pdp-page .acme-pdp__buy > .acme-pdp-tiers {
        grid-area: tiers !important;
        grid-column: 1 / -1 !important;
        width: 100% !important;
        margin-inline: 0 !important;
    }
    body.acme-pdp-page .acme-pdp__price-row {
        grid-area: price !important;
        grid-column: 1 !important;
        grid-row: auto !important;
        justify-self: start !important;
        align-self: center !important;
        justify-content: flex-start !important;
        text-align: left !important;
        width: max-content !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        margin-inline: 0 !important;
        padding-inline: 0 !important;
    }
    body.acme-pdp-page .acme-pdp__price-row .price-box,
    body.acme-pdp-page .acme-pdp__price-row .acme-price-amount-line {
        justify-content: flex-start !important;
        margin-inline: 0 !important;
    }
    body.acme-pdp-page .acme-pdp__qty {
        grid-area: qty !important;
        grid-column: 2 !important;
        justify-self: end !important;
        align-self: center !important;
        width: auto !important;
        margin-inline: 0 !important;
        position: relative !important;
        z-index: 101 !important;
    }
    body.acme-pdp-page .acme-pdp__qty-menu,
    body.acme-pdp-page .acme-pdp__qty-menu.is-open {
        z-index: 120 !important;
    }
    body.acme-pdp-page .acme-pdp__atc {
        grid-area: atc !important;
        grid-column: 1 / -1 !important;
        width: 100% !important;
        position: relative !important;
        z-index: 101 !important;
    }

    /* Desktop mega is not used on phone — never capture taps over ATC/qty */
    body.acme-pdp-page .acme-mega-nav,
    body.acme-pdp-page .acme-mega-panel,
    body.acme-pdp-page .acme-header__cream {
        pointer-events: none !important;
    }

    /* Zoho GDPR cookie bar sits fixed bottom @ max z-index and covers ATC/qty */
    body.acme-pdp-page .zoho-msgbanr,
    body.acme-pdp-page #gdpr_banner,
    body.acme-pdp-page .gdbr-banner-cont {
        z-index: 40 !important;
    }
    /* Keep buy controls above cookie bar / sticky chrome */
    body.acme-pdp-page .acme-pdp__buy,
    body.acme-pdp-page .acme-pdp__qty,
    body.acme-pdp-page .acme-pdp__atc {
        isolation: isolate !important;
    }
    /* Extra scroll room so ATC clears the cookie bar when scrolled into view */
    body.acme-pdp-page .acme-pdp,
    body.acme-pdp-page .product-info-main {
        padding-bottom: 12rem !important;
    }
}

/* v58b — Zoho SalesIQ float tooltip covers ATC on mobile PDP */
@media (max-width: 743px) {
    body.acme-pdp-page #zs-fl-tip,
    body.acme-pdp-page .zsiq-float-tooltip,
    body.acme-pdp-page .zsiq-tultip-desc,
    body.acme-pdp-page [id="zs-fl-tip"] {
        display: none !important;
        visibility: hidden !important;
        pointer-events: none !important;
        opacity: 0 !important;
    }
    body.acme-pdp-page #zsiq_float,
    body.acme-pdp-page .zsiq-float,
    body.acme-pdp-page .zsiq_theme1 {
        z-index: 30 !important;
    }
}

/* v61 — option-label colon glue (no space before :) */
body.acme-pdp-page .acme-pdp__option-label {
    display: inline-flex !important;
    align-items: baseline !important;
    white-space: nowrap !important;
}
body.acme-pdp-page .acme-pdp__option-label::after {
    content: none !important;
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* ========== v62 — Request a Catalog: desktop right-align under cart (content rail end) ========== */
@media (min-width: 744px) {
    .acme-header__nav-inner {
        position: relative !important;
    }

    /*
     * Pull the CTA out of the centered mega list and pin it to the same
     * right edge as the cart button (shared --acme-header-inner / 1493px rail).
     * Sits in the cream nav row directly below the top-row cart control.
     */
    .acme-mega-nav__list > .acme-mega-nav__item:has(> a[href*="request-a-catalog"]),
    .acme-mega-nav__list > li:has(> a[href*="request-a-catalog"]),
    .acme-mega-nav__item: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;
        margin-left: 0 !important;
        margin-right: 0 !important;
        justify-content: flex-end !important;
        z-index: 2 !important;
    }

    a.acme-mega-nav__link[href*="request-a-catalog"],
    a.acme-cat-nav__trigger[href*="request-a-catalog"],
    a.acme-cat-nav__trigger--link[href*="request-a-catalog"] {
        display: inline-flex !important;
        width: max-content !important;
        max-width: 100% !important;
        margin: 0 !important;
        margin-inline: 0 !important;
    }
}


/* ===== iPad Mini+ (744): treat Tailwind lg: as desktop (Hyvä lg stays 1024) ===== */
@media (min-width: 744px) {
    /* Hide phone-only chrome that uses lg:hidden */
    .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;
    }
    /* Show desktop-only rows gated with hidden lg:flex / lg:block */
    .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;
    }
}
