/**
 * Acme PDP — Figma Frame 330 (1488 × 703.28)
 * thumbs 170 | main 711 | 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-main-w: 44.4375rem; /* 711px */
    --acme-pdp-main-h: 44.4375rem; /* 711px */
    --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 ---- */
/* Gallery stretches to match info column height (Figma). Do NOT force a fixed
   --acme-pdp-hero-h on info — that creates empty space under Add to Cart. */
.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 !important;
    min-height: 0 !important;
    align-self: stretch !important;
}

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

/* Main image stage — fixed 711×711; image fills + centers */
.acme-pdp__gallery .snap-slider > .relative {
    flex: 0 0 var(--acme-pdp-main-w) !important;
    width: var(--acme-pdp-main-w) !important;
    max-width: var(--acme-pdp-main-w) !important;
    min-width: var(--acme-pdp-main-w) !important;
    height: var(--acme-pdp-main-h) !important;
    max-height: var(--acme-pdp-main-h) !important;
    min-height: var(--acme-pdp-main-h) !important;
    order: 2 !important;
    display: flex !important;
    flex-direction: column !important;
    align-self: flex-start !important;
}

/* Thumb / slide scrollIntoView must never pan the document */
body.acme-pdp-page {
    overflow-x: clip !important;
}
body.acme-pdp-page .acme-pdp,
body.acme-pdp-page .acme-pdp__hero,
body.acme-pdp-page .acme-pdp__gallery,
body.acme-pdp-page .acme-pdp__gallery .snap-slider {
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}

.acme-pdp__gallery #gallery-main,
.acme-pdp__gallery [data-track] {
    flex: 0 0 var(--acme-pdp-main-w) !important;
    width: var(--acme-pdp-main-w) !important;
    max-width: var(--acme-pdp-main-w) !important;
    min-width: var(--acme-pdp-main-w) !important;
    height: var(--acme-pdp-main-h) !important;
    min-height: var(--acme-pdp-main-h) !important;
    max-height: var(--acme-pdp-main-h) !important;
    aspect-ratio: 1 / 1 !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: center !important;
    /*
     * Must stay flex-start: this element is the scroll-snap track. Centering a flex row whose
     * children overflow spills the overflow off *both* edges, so scroll offset 0 lands in the
     * middle of the strip — with a multi-image child variant the stage showed the right half of
     * one slide beside the left half of the next, and slide 1 could never be scrolled back to.
     */
    justify-content: flex-start !important;
}

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

/* Alpine x-show must win over height !important rules above.
 * Marker tiles use display:flex !important later — beat that with higher specificity. */
.acme-pdp__gallery #gallery-main > .acme-gallery-slide--hidden,
.acme-pdp__gallery [data-track] > .acme-gallery-slide--hidden,
.acme-pdp__gallery .snap-pager > .acme-gallery-thumb--hidden,
.acme-pdp__gallery .acme-gallery-slide--hidden,
.acme-pdp__gallery .acme-gallery-thumb--hidden,
.acme-pdp__gallery .snap-pager .snap-marker.acme-gallery-thumb--hidden,
.acme-pdp__gallery .snap-pager a.snap-marker.acme-gallery-thumb--hidden,
.acme-pdp__gallery .snap-pager button.snap-marker.acme-gallery-thumb--hidden,
.acme-pdp__gallery.acme-gallery--child-only [data-acme-init-media],
body.acme-pdp-page .acme-pdp__gallery.acme-gallery--child-only .snap-pager a[data-acme-init-media],
body.acme-pdp-page .acme-pdp__gallery.acme-gallery--child-only [data-track] > [data-acme-init-media] {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
    visibility: hidden !important;
    flex: 0 0 0 !important;
    opacity: 0 !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;
    /* Left-align with thumbnails column (toward thumbs, not centered in stage). */
    object-position: left 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 .snap-marker[data-overflow="true"],
.acme-pdp__gallery button.snap-marker.hidden,
.acme-pdp__gallery .snap-pager > button {
    display: none !important;
}

/* Thumbs column — same height as main/info; fixed tiles; invisible scroll when overflow */
.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 comes from equalizeHeroHeights JS — never height:auto !important (kills scroll) */
    height: 100% !important;
    min-height: 0 !important;
    max-height: 100% !important;
    order: 1 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
    /* Prevent scroll-anchoring from leaving the rail mid-list when hub thumbs
     * re-expand after child-only (height:0) collapses. */
    overflow-anchor: none !important;
    scrollbar-width: none !important; /* Firefox: invisible until .is-scrolling */
    -ms-overflow-style: none !important;
    align-self: stretch !important;
}

/* Nested Hyvä pager wrapper — height follows outer pager; markers stack & scroll */
.acme-pdp__gallery .snap-pager .snap-pager,
.acme-pdp__gallery .snap-pager > .snap-pager {
    flex: 0 0 auto !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    order: 0 !important;
    gap: 1.25rem !important;
    align-self: stretch !important;
    overflow: visible !important;
}

/* Fixed square thumbs — do not flex-grow to fill hero height */
.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) !important;
    min-width: var(--acme-pdp-thumb-w) !important;
    max-width: var(--acme-pdp-thumb-w) !important;
    height: var(--acme-pdp-thumb-w) !important;
    min-height: var(--acme-pdp-thumb-w) !important;
    max-height: var(--acme-pdp-thumb-w) !important;
    flex: 0 0 var(--acme-pdp-thumb-w) !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;
    order: 0 !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"],
.acme-pdp__gallery .snap-pager .snap-marker.is-active,
.acme-pdp__gallery .snap-pager a.snap-marker.is-active {
    border: 2px solid #1f99ce !important;
    box-shadow: 0 0 0 1px rgba(31, 153, 206, 0.35) !important;
    background: #fff !important;
    order: 0 !important; /* keep natural order; selected stays in place */
}

.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: stretch !important; /* drives hero height; gallery stretches to match */
    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.25rem !important; /* header / options / buy */
    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 {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 0.5rem !important;
    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__sku-main {
    display: inline !important;
    min-width: 0 !important;
    flex: 1 1 auto !important;
    margin: 0 !important;
}
.acme-pdp__sku-value {
    margin-left: 0.35em;
}

.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;
    max-width: 100% !important;
    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;
}

.acme-pdp__title-wrap {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 0.5rem !important;
    margin-top: 0 !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
}

/* Title shrinks so rating chip can sit on the right (card price-row pattern). */
body.acme-pdp-page .acme-pdp__title-wrap .acme-pdp__title,
body.acme-pdp-page .acme-pdp__title-wrap .page-title {
    width: auto !important;
    max-width: 100% !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
}

/* Compact rating chip — hub title; child / simple SKU row (partial gold fill) */
body.acme-pdp-page .acme-pdp__rating {
    display: none !important;
    align-items: center !important;
    gap: 0.22rem !important;
    flex: 0 0 auto !important;
    margin-left: auto !important;
    padding: 0.35rem 0.65rem !important;
    border-radius: 0.5rem !important;
    background: #fff7ed !important;
    border: 1px solid #fbbf24 !important;
    color: #0f2d52 !important;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
    line-height: 1.25rem !important;
}
body.acme-pdp-page .acme-pdp__rating-num {
    display: inline !important;
    font-size: 1.06875rem !important; /* 1.125rem − 5% */
    font-weight: 700 !important;
    letter-spacing: 0.1px !important;
    line-height: 1.2825rem !important;
    color: #0f2d52 !important;
}
body.acme-pdp-page .acme-pdp__rating-star {
    --acme-rating-fill: 0%;
    --acme-star-size: 1.1875rem; /* 1.25rem − 5% */
    position: relative !important;
    display: inline-block !important;
    width: var(--acme-star-size) !important;
    height: var(--acme-star-size) !important;
    flex: 0 0 auto !important;
    overflow: hidden !important;
    font-size: 0 !important;
    line-height: 0 !important;
    color: transparent !important;
    /* Empty outline star as base */
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: var(--acme-star-size) var(--acme-star-size) !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23d97706' stroke-width='1.75' stroke-linejoin='round'%3E%3Cpath d='M12 2.5l2.9 6.1 6.6.7-4.9 4.5 1.4 6.5L12 16.9 5.9 20.3l1.4-6.5L2.5 9.3l6.6-.7L12 2.5z'/%3E%3C/svg%3E") !important;
}
/* Gold fill clipped to rating % — full-size star, inset clip (not width crop). */
body.acme-pdp-page .acme-pdp__rating-star::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: var(--acme-star-size) var(--acme-star-size) !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23f59e0b' stroke='%23d97706' stroke-width='1.25' stroke-linejoin='round'%3E%3Cpath d='M12 2.5l2.9 6.1 6.6.7-4.9 4.5 1.4 6.5L12 16.9 5.9 20.3l1.4-6.5L2.5 9.3l6.6-.7L12 2.5z'/%3E%3C/svg%3E") !important;
    clip-path: inset(0 calc(100% - var(--acme-rating-fill)) 0 0) !important;
    -webkit-clip-path: inset(0 calc(100% - var(--acme-rating-fill)) 0 0) !important;
}
body.acme-pdp-page .acme-pdp__rating-star::after {
    content: none !important;
    display: none !important;
}

/* Hub → title chip; child / simple → SKU chip */
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__rating--on-title,
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__rating--on-title.is-visible {
    display: inline-flex !important;
}
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__rating--on-sku {
    display: none !important;
}
html:not(.acme-pdp--hub) body.acme-pdp-page .acme-pdp__rating--on-sku,
html:not(.acme-pdp--hub) body.acme-pdp-page .acme-pdp__rating--on-sku.is-visible,
html:not(.acme-pdp--hub) body.acme-pdp-page.acme-pdp--child-selected .acme-pdp__rating.acme-pdp__rating--on-sku,
html:not(.acme-pdp--hub) body.acme-pdp-page.acme-pdp--child-selected .acme-pdp__rating.acme-pdp__rating--on-sku.is-visible,
html body.page-product-simple.acme-pdp-page .acme-pdp__rating--on-sku,
html body.page-product-simple.acme-pdp-page .acme-pdp__rating.acme-pdp__rating--on-sku.is-visible {
    display: inline-flex !important;
}
html:not(.acme-pdp--hub) body.acme-pdp-page .acme-pdp__rating--on-title,
html:not(.acme-pdp--hub) body.acme-pdp-page.acme-pdp--child-selected .acme-pdp__rating--on-title {
    display: none !important;
}

.acme-pdp__badges {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-template-rows: repeat(2, minmax(0, auto)) !important;
    grid-auto-rows: 0 !important;
    grid-auto-flow: row !important;
    gap: 0.5rem !important;
    row-gap: 0.5rem !important;
    column-gap: 0.5rem !important;
    list-style: none !important;
    margin: 0.75rem 0 0 !important; /* whitespace below title — all screens */
    padding: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 0 !important;
    overflow: visible !important;
}

.acme-pdp__badges > .acme-pdp__badge:nth-child(n + 5) {
    display: none !important;
}

.acme-pdp__badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
    min-height: 2.5rem !important;
    max-height: 2.5rem !important;
    min-width: 0 !important;
    max-width: 100% !important;
    padding: 0.5rem 0.75rem !important;
    background: rgba(31, 153, 206, 0.12) !important;
    border: none !important;
    border-radius: 0.5rem !important;
    flex: none !important;
    overflow: hidden !important;
}

.acme-pdp__badge-text {
    font-family: Montserrat, Inter, ui-sans-serif, system-ui, sans-serif !important;
    font-weight: 500 !important;
    font-size: 0.8125rem !important;
    line-height: 1.25rem !important;
    letter-spacing: -0.01rem !important;
    color: #111 !important;
    min-width: 0 !important;
    flex: 1 1 auto !important;
    display: block !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
}

.acme-pdp__badge-icon {
    width: 1.25rem !important;
    height: 1.25rem !important;
    flex: 0 0 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

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

.acme-pdp__short-desc {
    margin: 0.5rem 0 0 !important;
    padding: 0.75rem 0.875rem !important;
    max-width: 100% !important;
    min-height: 0 !important;
    box-sizing: border-box !important;
    font-family: Montserrat, system-ui, sans-serif !important;
    font-weight: 500 !important;
    font-size: 0.9375rem !important;
    line-height: 1.45 !important;
    color: var(--acme-ink) !important;
    background: rgba(31, 153, 206, 0.08) !important;
    border-radius: 0.5rem !important;
}

/* Reserve exact 2×2 badge-grid footprint when badges are absent */
.acme-pdp__features-slot {
    display: block !important;
    box-sizing: border-box !important;
    margin: 0.75rem 0 0 !important; /* match .acme-pdp__badges title gap */
    padding: 0 !important;
    width: 100% !important;
    /* 2 rows (2.25rem) + 1 gap (0.5rem) = 5rem */
    min-height: 5rem !important;
    height: 5rem !important;
    max-height: 5rem !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

/* Options cluster — equal vertical gap between ALL attribute rows (form + display-attr) */
.acme-pdp__options-wrap {
    display: flex !important;
    flex-direction: column !important;
    flex: 0 0 auto !important;
    justify-content: flex-start !important;
    gap: 1.75rem !important;
    min-height: 0 !important;
}

/* Flatten wrappers so Admin data-acme-attr-rank order can interleave
 * configurable + display-attr groups (Color → Type → Size → Weight). */
.acme-pdp__options-wrap #product_addtocart_form,
.acme-pdp__options-wrap form,
.acme-pdp__options-wrap .product-options-wrapper,
.acme-pdp__options-wrap .acme-pdp__options,
.acme-pdp__options-wrap .acme-pdp__options--configurable,
.acme-pdp__options-wrap .acme-pdp__options--display-attr,
.acme-pdp__options-wrap fieldset {
    display: contents !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    width: auto !important;
    flex: none !important;
}

.acme-pdp__options-wrap > .acme-pdp__option-group,
.acme-pdp__options-wrap .acme-pdp__option-group {
    width: 100% !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.75rem !important; /* was 1.5rem — slightly more vertical space between pill rows */
    flex: none !important;
    justify-content: flex-start !important;
    min-height: 0 !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: 0 !important;
}

.acme-pdp__option-label-row {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: baseline !important;
    gap: 0.5rem !important;
    width: 100% !important;
    min-height: 1.25rem !important;
}

/* Keep label shrink-to-content so red toast sits on the same line ("Type: Please select…") */
.acme-pdp__option-label-row > .acme-pdp__option-label {
    display: inline-flex !important;
    width: auto !important;
    max-width: 100% !important;
    flex: 0 0 auto !important;
}

.acme-pdp__option-label {
    display: inline !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;
    letter-spacing: 0 !important;
    word-spacing: 0 !important;
}

/* Colon is in the label text ("Type:") — never ::after (that left a visible gap) */
.acme-pdp__option-label::after {
    content: none !important;
    display: none !important;
}

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

/* Multi-col: wrap at --acme-pill-cols hint but keep content-hug pills (no equal 1fr stretch). */
.acme-pdp__option-pills[data-acme-pill-cols]:not([data-acme-pill-cols="1"]) {
    display: flex !important;
    flex-flow: row wrap !important;
    align-items: stretch !important;
    align-content: flex-start !important;
    justify-content: flex-start !important;
    gap: 0.5rem !important;
    width: 100% !important;
    min-height: min-content !important;
}
.acme-pdp__option-pills[data-acme-pill-cols]:not([data-acme-pill-cols="1"]) > .acme-pdp__pill,
.acme-pdp__option-pills[data-acme-pill-cols]:not([data-acme-pill-cols="1"]) > button.acme-pdp__pill {
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: max-content !important;
    min-width: 0 !important;
    justify-content: center !important;
}

/* Red inline error immediately after the attribute label */
.acme-pdp__option-toast {
    display: inline !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    border: 0 !important;
    color: #dc2626 !important;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    line-height: 1.25rem !important;
    width: auto !important;
    max-width: calc(100% - 4rem) !important;
    flex: 1 1 auto !important;
    box-sizing: border-box !important;
}

.acme-pdp__option-toast[style*="display: none"],
.acme-pdp__option-toast[hidden],
.acme-pdp__option-toast[x-cloak] {
    display: none !important;
}

.acme-pdp__pill--hidden,
.acme-pdp__pill[hidden],
body.acme-pdp-page .acme-pdp__pill--hidden,
body.acme-pdp-page .acme-pdp__pill[hidden],
body.acme-pdp-page .acme-pdp__pill[style*="display: none"],
body.acme-pdp-page .acme-pdp__display-value[style*="display: none"],
body.acme-pdp-page .acme-pdp__pill.is-static[style*="display: none"],
body.acme-pdp-page .acme-pdp__pill.is-static[x-cloak],
body.acme-pdp-page .acme-pdp__display-value[x-cloak] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* Category PDP display attribute — single read-only value under Size/Type.
   Must beat the panel reset (.acme-pdp__options { margin/padding: 0 !important }).
   Keep as a sibling of the form (NOT nested under --configurable) so Alpine
   extraAttrValue stays on the panel scope. */
/* Same gap as configurable option rows — Size / Type / Weight / Dimensions equidistant */
body.acme-pdp-page .acme-pdp__options.acme-pdp__options--display-attr {
    display: flex !important;
    flex-direction: column !important;
    gap: 1.75rem !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border-top: 0 !important;
    min-height: 0 !important;
}

body.acme-pdp-page .acme-pdp__options--display-attr[x-cloak],
body.acme-pdp-page .acme-pdp__options--display-attr[style*="display: none"] {
    display: none !important;
}

body.acme-pdp-page .acme-pdp__option-group--display-attr {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 0.75rem !important;
    width: 100% !important;
    min-height: 0 !important;
}

body.acme-pdp-page .acme-pdp__option-pills--display-only {
    flex-wrap: wrap !important;
}

body.acme-pdp-page .acme-pdp__pill.is-static,
body.acme-pdp-page .acme-pdp__display-value:not(.acme-pdp__pill--selectable) {
    /* Display-only chrome (e.g. Color) — not selectable */
    cursor: default !important;
    pointer-events: none !important;
    user-select: none !important;
}

body.acme-pdp-page .acme-pdp__pill.acme-pdp__pill--selectable {
    cursor: pointer !important;
    pointer-events: auto !important;
    user-select: none !important;
}

.acme-pdp__pill {
    box-sizing: border-box !important;
    display: inline-flex !important;
    position: relative !important;
    align-items: center !important;
    justify-content: center !important;
    height: auto !important;
    min-height: 33px !important;
    max-height: none !important;
    /* was 12px all; TB −50% / LR −20% */
    padding: 6px 9.6px !important;
    margin: 0 !important;
    border: 1px solid rgba(31, 153, 206, 0.7) !important;
    border-radius: 8px !important;
    background: linear-gradient(180deg, rgba(31, 153, 206, 0.0028) 0%, rgba(31, 153, 206, 0.028) 100%), #ffffff !important;
    font-family: Poppins, system-ui, sans-serif !important;
    font-weight: 500 !important;
    font-size: 16px !important;
    /* 1.2 (not 11px): long labels like crib Size stay inside the chrome */
    line-height: 1.2 !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    color: #001a1e !important;
    cursor: pointer !important;
    text-decoration: none !important;
    text-decoration-line: none !important;
    -webkit-text-decoration-line: none !important;
    outline: none !important;
    box-shadow: none !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    backdrop-filter: blur(6.92px);
    transition: background-color 0.12s ease, color 0.12s ease, border-color 0.12s ease !important;
}

.acme-pdp__pill.is-selected,
.acme-pdp__pill[aria-selected="true"] {
    background: #1f99ce !important;
    background-image: none !important;
    border: 1px solid #1f99ce !important;
    color: #ffffff !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    box-shadow: none !important;
}

/* Clear (×) on selected first-row pill — overlaps top-right border; hidden until selected */
.acme-pdp__pill--clearable {
    overflow: visible !important;
}
.acme-pdp__option-pills:has(.acme-pdp__pill--clearable) {
    overflow: visible !important;
}
.acme-pdp__pill-label {
    display: inline !important;
}
.acme-pdp__pill-clear {
    position: absolute !important;
    /* Sit on outer corner so the × does not cover pill label text */
    top: -0.55rem !important;
    right: -0.55rem !important;
    z-index: 3 !important;
    display: none !important;
    align-items: center !important;
    justify-content: center !important;
    /* ~20px visual (bigger than 0.95rem, not 44px) */
    width: 1.25rem !important;
    height: 1.25rem !important;
    min-width: 1.25rem !important;
    min-height: 1.25rem !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1.5px solid #ffffff !important;
    border-radius: 999px !important;
    background: #001a1e !important;
    color: #ffffff !important;
    cursor: pointer !important;
    line-height: 0 !important;
    pointer-events: none !important;
    box-shadow: 0 1px 3px rgba(0, 26, 30, 0.28) !important;
    -webkit-tap-highlight-color: transparent;
}
/* Invisible hit pad — tappable without enlarging the visible disc */
.acme-pdp__pill-clear::after {
    content: "" !important;
    position: absolute !important;
    inset: -0.4rem !important;
}
.acme-pdp__pill.is-selected > .acme-pdp__pill-clear,
.acme-pdp__pill[aria-selected="true"] > .acme-pdp__pill-clear,
.acme-pdp__pill--clearable.is-selected > .acme-pdp__pill-clear {
    display: inline-flex !important;
    pointer-events: auto !important;
}
a.acme-pdp__pill-clear {
    text-decoration: none !important;
}
.acme-pdp__pill-clear:hover,
.acme-pdp__pill-clear:focus-visible {
    background: #00363d !important;
    outline: none !important;
}
.acme-pdp__pill-clear svg {
    display: block !important;
    width: 0.625rem !important;
    height: 0.625rem !important;
    pointer-events: none !important;
}

.acme-pdp__pill:disabled,
.acme-pdp__pill.is-unavailable,
.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;
    -webkit-text-decoration-line: none !important;
    background: #fff !important;
    background-image: none !important;
    border: 1px solid rgba(31, 153, 206, 0.35) !important;
    color: #001a1e !important;
}

.acme-pdp__pill::before,
.acme-pdp__pill::after {
    content: none !important;
    display: none !important;
}

/* Option groups always stacked: label, then pills */
.acme-pdp__option-group {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 0.75rem !important;
    width: 100% !important;
}

.acme-pdp__option-label {
    display: block !important;
    width: 100% !important;
    font-family: Poppins, system-ui, sans-serif !important;
    font-weight: 500 !important;
    font-size: 1.25rem !important;
    line-height: 1.25rem !important;
    color: #001a1e !important;
}

/* Hide Magento "Product Options" fieldset chrome if present */
.acme-pdp__options-wrap legend,
.acme-pdp__options-wrap .legend,
.acme-pdp .product-options-wrapper > fieldset > legend,
.acme-pdp .product-options-wrapper .fieldset > .legend {
    display: none !important;
}

.acme-pdp__options-wrap .fieldset,
.acme-pdp__options-wrap fieldset {
    border: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Buy cluster — Figma 1019:1760: price + qty/ATC only; pin to column bottom */
.acme-pdp__buy {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 0.625rem !important; /* 10px — Figma 1019:1760 */
    margin-top: auto !important; /* space above buy, never between price & CTA */
    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: center !important;
    gap: 0.4375rem !important; /* 7px */
    flex-wrap: nowrap !important;
    /* Leave room for qty (9.25rem) + gap so list/ATC wrap to the next row */
    flex: 1 1 calc(100% - 10.25rem) !important;
    min-width: 0 !important;
    width: auto !important;
    max-width: calc(100% - 10.25rem) !important;
    order: 0 !important;
}

.acme-pdp__price-row .price-box {
    display: inline-flex !important;
    flex-wrap: nowrap !important;
    align-items: center !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;
}

/* "Starting From" — every configurable hub (not SKU-specific); hide after variant select */
.acme-pdp__starting-from {
    display: none !important;
}
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__starting-from,
html.acme-pdp--hub .acme-pdp__price-row .acme-pdp__starting-from,
body.acme-pdp-page .acme-pdp__panel--configurable:not(.acme-pdp__panel--child-selected) .acme-pdp__starting-from {
    display: inline !important;
    flex: 0 0 auto !important;
    margin: 0 0.35rem 0 0 !important;
    padding: 0 !important;
    font-family: Montserrat, ui-sans-serif, system-ui, sans-serif !important;
    font-weight: 500 !important;
    font-size: clamp(0.8125rem, 2.2vw, 1.125rem) !important;
    line-height: 1.2 !important;
    color: #5a6a7e !important;
    white-space: nowrap !important;
    align-self: center !important;
}
html:not(.acme-pdp--hub) body.acme-pdp-page .acme-pdp__panel--child-selected .acme-pdp__starting-from,
body.acme-pdp-page:not(.page-product-configurable) .acme-pdp__starting-from {
    display: none !important;
}

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

/* Hub "Starting From" — hide struck cut/was (must follow the show rule above). */
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__price-row .old-price,
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__price-row span.old-price,
html.acme-pdp--hub .acme-pdp__price-row .old-price,
body.acme-pdp-page .acme-pdp__panel--configurable:not(.acme-pdp__panel--child-selected) .acme-pdp__price-row .old-price,
body.acme-pdp-page .acme-pdp__panel--configurable:not(.acme-pdp__panel--child-selected) .acme-pdp__price-row span.old-price {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    font-size: 0 !important;
    line-height: 0 !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: #374151 !important;
    text-decoration: line-through !important;
    text-decoration-color: #374151 !important;
    -webkit-text-decoration-color: #374151 !important;
    text-decoration-thickness: 1px !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: center !important;
    align-self: center !important;
    margin: 0 !important;
    padding: 0 !important;
}

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

/* Unit stays inline after current price inside special/normal-price — never reorder before amount */
.acme-pdp__price-row .special-price .acme-product-price-unit,
.acme-pdp__price-row .normal-price .acme-product-price-unit {
    order: 2 !important;
    display: inline !important;
    visibility: visible !important;
    opacity: 1 !important;
    font-family: Montserrat, ui-sans-serif, system-ui, sans-serif !important;
    font-weight: 500 !important;
    font-size: 1.25rem !important;
    line-height: 1 !important;
    color: #5a6a7e !important;
    vertical-align: middle !important;
    align-self: center !important;
    white-space: nowrap !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Current price only — never size old/cut price containers like the main amount */
.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 .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.15 !important;
    letter-spacing: -0.48px !important;
    color: #0f2d52 !important;
    text-decoration: none !important;
}

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

.acme-pdp__price-row .price-box .special-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;
    line-height: 1.15 !important;
    letter-spacing: -0.48px !important;
    color: #0f2d52 !important;
    text-decoration: none !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; /* 20px */
    letter-spacing: 0 !important;
    color: #0f2d52 !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: auto !important;
    right: 0 !important;
    width: 9.25rem !important;
    max-width: 100% !important;
    /* Default: open upward (buy row is low in equalized 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;
}

.acme-pdp__qty-menu.opens-down {
    top: calc(100% + 4px) !important;
    bottom: auto !important;
}

.acme-pdp__hero:has(.acme-pdp__qty-menu.is-open.opens-down) {
    overflow: visible !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: 20px !important;
    line-height: 32px !important;
    letter-spacing: 0.15px !important;
    color: var(--acme-ink) !important;
}

.acme-pdp-similar .acme-product-card__price .price-box {
    display: inline-flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: baseline !important;
    gap: 0.25rem !important;
    max-width: 100% !important;
    white-space: nowrap !important;
}

.acme-pdp-similar .acme-product-card__price .price-box .special-price,
.acme-pdp-similar .acme-product-card__price .price-box .normal-price {
    order: 1 !important;
}

.acme-pdp-similar .acme-product-card__price .price-box .old-price,
.acme-pdp-similar .acme-product-card__price span.old-price {
    order: 2 !important;
    display: inline-flex !important;
    align-items: baseline !important;
    font-size: 0 !important;
    line-height: 0 !important;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
    font-weight: 400 !important;
    color: #6b7280 !important;
    text-decoration: none !important;
}

.acme-pdp-similar .acme-product-card__price .price-box .old-price .price,
.acme-pdp-similar .acme-product-card__price span.old-price .price {
    font-size: 0.875rem !important;
    line-height: 1.25rem !important;
    letter-spacing: 0.15px !important;
    color: #6b7280 !important;
    text-decoration: line-through !important;
    text-decoration-thickness: 1px !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;
}

/* Qty sits on the same row as cut/current price + unit (right side). */
.acme-pdp__qty {
    flex: 0 0 9.25rem !important;
    width: 9.25rem !important;
    min-width: 9.25rem !important;
    max-width: 9.25rem !important;
    position: relative !important;
    display: block !important;
    min-height: var(--acme-pdp-control-h) !important;
    box-sizing: border-box !important;
    order: 1 !important;
    margin-left: auto !important;
}

.acme-pdp__qty > .acme-pdp__qty-btn {
    position: static !important;
    top: auto !important;
    right: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    z-index: 1 !important;
}

.acme-pdp__qty .acme-pdp__qty-menu {
    left: auto !important;
    right: 0 !important;
    width: 9.25rem !important;
}

.acme-pdp__list {
    flex: 0 0 9.25rem !important;
    width: 9.25rem !important;
    min-width: 9.25rem !important;
    max-width: 9.25rem !important;
    display: flex !important;
    align-items: stretch !important;
    position: relative !important;
    box-sizing: border-box !important;
}

.acme-pdp__list-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: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.5rem !important;
    margin: 0 !important;
    padding: 0.5rem 0.75rem !important;
    border: 1.5px solid #0f2d52 !important;
    border-radius: 0.5rem !important;
    background: #fff !important;
    color: #0f2d52 !important;
    font-family: Inter, system-ui, sans-serif !important;
    font-weight: 600 !important;
    font-size: 0.9375rem !important;
    line-height: 1.25 !important;
    letter-spacing: 0.01em !important;
    cursor: pointer !important;
    white-space: nowrap !important;
    text-decoration: none !important;
}

.acme-pdp__list-btn:hover,
.acme-pdp__list-btn:focus-visible {
    background: #f8fafc !important;
    color: #0f2d52 !important;
    text-decoration: none !important;
}

/* Hub: Add to List blurred but still clickable (prompts missing pills) */
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__panel--configurable .acme-pdp__list-btn,
body.acme-pdp-page .acme-pdp__panel--configurable:not(.acme-pdp__panel--child-selected) .acme-pdp__list-btn,
html body.acme-pdp-page .acme-pdp__list-btn.is-hub-blocked {
    opacity: 0.45 !important;
    filter: grayscale(0.15) blur(0.4px) !important;
    cursor: pointer !important;
    pointer-events: auto !important;
}

.acme-pdp__list-btn-label {
    display: inline !important;
}

.acme-pdp__list-btn svg,
.acme-pdp__list-btn-icon {
    flex: 0 0 auto !important;
    width: 1.25rem !important;
    height: 1.25rem !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;
    line-height: 1.25rem !important;
    letter-spacing: 0 !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;
    line-height: 1.25rem !important;
    letter-spacing: 0 !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: #ad2733 !important;
    color: #fff !important;
    font-family: Inter, system-ui, sans-serif !important;
    font-weight: 600 !important;
    font-size: 1rem !important;
    line-height: 1.6625rem !important; /* 26.6px */
    letter-spacing: 0.3px !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;
}

/* Legacy wrapper — list CTA now lives in .acme-pdp__actions */
.acme-pdp__wishlist {
    display: none !important;
}

/* ---- Description: heading 600, body 400, compact rhythm ---- */
.acme-pdp-prose,
.acme-pdp__details-wrap .acme-pdp-prose,
.acme-pdp-sections .acme-pdp-prose {
    width: 100%;
    max-width: none;
    margin: 2rem 0 1.25rem;
    padding: 0;
    box-sizing: border-box;
    direction: ltr;
    text-align: left;
    color: #0f2d52;
    font-family: Montserrat, Inter, ui-sans-serif, system-ui, sans-serif;
    font-size: 1.125rem;
    font-weight: 400;
    line-height: 1.65;
    letter-spacing: 0;
}

/* Section title (Description) — h3.acme-pdp-prose__heading stays largest */
.acme-pdp-prose__heading,
.acme-pdp-prose > h3.acme-pdp-prose__heading,
.acme-pdp-similar__heading {
    margin: 0 0 1rem;
    font-family: Montserrat, ui-sans-serif, system-ui, sans-serif;
    font-weight: 600;
    font-size: 2.25rem;
    line-height: 1.2;
    letter-spacing: -0.02em;
    color: #0f2d52;
}

.acme-pdp-prose h2 {
    margin: 1rem 0 0.5rem;
    font-family: Montserrat, ui-sans-serif, system-ui, sans-serif;
    font-weight: 600;
    font-size: 1.5rem;
    line-height: 1.35;
    letter-spacing: 0;
    color: #0f2d52;
}

.acme-pdp-prose h3:not(.acme-pdp-prose__heading) {
    margin: 0.85rem 0 0.35rem;
    font-family: Montserrat, ui-sans-serif, system-ui, sans-serif;
    font-weight: 600;
    font-size: 1.25rem;
    line-height: 1.35;
    letter-spacing: 0;
    color: #0f2d52;
}

.acme-pdp-prose h4,
.acme-pdp-prose h5,
.acme-pdp-prose h6 {
    margin: 0.75rem 0 0.35rem;
    font-family: Montserrat, ui-sans-serif, system-ui, sans-serif;
    font-weight: 600;
    font-size: 1.125rem;
    line-height: 1.35;
    color: #0f2d52;
}

.acme-pdp-prose p,
.acme-pdp-prose li,
.acme-pdp-prose div {
    font-family: Montserrat, ui-sans-serif, system-ui, sans-serif;
    font-weight: 400;
    font-size: 1.125rem;
    line-height: 1.65;
    letter-spacing: 0;
    color: #0f2d52;
}

.acme-pdp-prose p {
    margin: 0 0 0.5rem;
    max-width: none;
}

.acme-pdp-prose ul:not(.acme-pdp-prose__features),
.acme-pdp-prose ol {
    margin: 0 0 0.85rem;
    max-width: none;
    list-style-position: outside;
}

.acme-pdp-prose ul:not(.acme-pdp-prose__features) {
    list-style: none !important;
    padding-left: 0 !important;
}

.acme-pdp-prose ol {
    list-style-type: decimal !important;
    padding-left: 1.5rem !important;
}

.acme-pdp-prose ul:not(.acme-pdp-prose__features) > li {
    position: relative;
    display: block !important;
    margin: 0 0 0.65rem;
    padding: 0 0 0 1.75rem;
    line-height: 1.5;
}

.acme-pdp-prose ul:not(.acme-pdp-prose__features) > li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.2rem;
    width: 1.125rem;
    height: 1.125rem;
    border-radius: 50%;
    transform: none;
    background: #1f99ce url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M7.5 12.2L10.3 15L16.5 8.8' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 12px 12px no-repeat;
}

/* Never grow checkmarks on Read More expand (audit-fixes used to scale these). */
.acme-pdp-prose.is-expanded ul:not(.acme-pdp-prose__features) > li::before,
body.acme-pdp-page .acme-pdp-prose.is-expanded ul:not(.acme-pdp-prose__features) > li::before {
    transform: none !important;
    width: 1.125rem !important;
    height: 1.125rem !important;
}

.acme-pdp-prose ol > li {
    display: list-item !important;
    margin: 0 0 0.4rem;
    padding: 0;
    line-height: 1.5;
}

.acme-pdp-prose ul:not(.acme-pdp-prose__features) > li > p {
    margin: 0 0 0.2rem;
}

.acme-pdp-prose ul:not(.acme-pdp-prose__features) > li > p:last-child {
    margin-bottom: 0;
}

.acme-pdp-prose__features {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    list-style: none;
    margin: 0 0 0.75rem;
    padding: 0;
}

.acme-pdp-prose__feature {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
    margin: 0;
    padding: 0;
}

.acme-pdp-prose__feature-head {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 0.5rem;
    min-height: 0;
}

.acme-pdp-prose__icon {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.25rem;
    height: 1.25rem;
    margin-top: 0.15rem;
}

.acme-pdp-prose__icon svg {
    width: 1.25rem;
    height: 1.25rem;
}

.acme-pdp-prose__feature-title {
    margin: 0;
    font-family: Montserrat, ui-sans-serif, system-ui, sans-serif;
    font-weight: 600;
    font-size: 1.125rem;
    line-height: 1.4;
    letter-spacing: 0;
    color: #0f2d52;
}

.acme-pdp-prose__feature-body {
    margin: 0;
    padding: 0 0 0 1.75rem;
    font-family: Montserrat, ui-sans-serif, system-ui, sans-serif;
    font-weight: 400 !important;
    font-size: 1.125rem;
    line-height: 1.5;
    letter-spacing: 0;
    color: #0f2d52;
}

.acme-pdp-prose strong,
.acme-pdp-prose b {
    font-weight: 700;
    color: #0f2d52;
}

.acme-pdp-prose a {
    color: #1f99ce;
    text-decoration: underline;
}

.acme-pdp-prose img,
.acme-pdp-prose figure {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 1.25rem 0;
    border-radius: 0.5rem;
}

.acme-pdp-prose h2:first-child,
.acme-pdp-prose h3:first-child,
.acme-pdp-prose h4:first-child,
.acme-pdp-prose p:first-child,
.acme-pdp-prose ul:first-child {
    margin-top: 0;
}

/* Read more / less — after 3 body blocks; plain text control (no entity labels) */
.acme-pdp-prose__more[hidden],
.acme-cms-prose__more[hidden] {
    display: none !important;
}
/* Keep “… Read More” on the same line as the preceding copy */
.acme-pdp-prose__ellipsis,
.acme-pdp-prose__toggle-slot {
    display: inline !important;
    vertical-align: baseline;
}

.acme-pdp-prose__ellipsis,
.acme-cms-prose__ellipsis {
    display: inline;
    margin: 0 0.15em 0 0;
    color: #0f2d52;
    font-weight: 600;
    letter-spacing: 0.08em;
    vertical-align: baseline;
}
.acme-pdp-prose.is-expanded .acme-pdp-prose__ellipsis,
.acme-cms-prose.is-expanded .acme-cms-prose__ellipsis {
    display: none !important;
}
.acme-pdp-prose__actions,
.acme-cms-prose__actions {
    display: flex;
    justify-content: flex-start;
    margin-top: 1.25rem;
}

.acme-pdp-prose:not(.is-expanded) .acme-pdp-prose__actions:empty,
.acme-cms-prose:not(.is-expanded) .acme-cms-prose__actions:empty {
    display: none !important;
    margin: 0 !important;
}

.acme-pdp-prose__toggle-slot,
.acme-cms-prose__toggle-slot {
    display: inline;
}

.acme-pdp-prose__toggle,
.acme-cms-prose__toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    margin: 0 0 0 0.15em;
    min-height: 0;
    padding: 0.2rem 0.65rem;
    border: 1px solid rgba(31, 153, 206, 0.5);
    border-radius: 0.375rem;
    background:
        linear-gradient(180deg, rgba(31, 153, 206, 0.08) 0%, rgba(31, 153, 206, 0.02) 100%),
        #ffffff;
    color: #1f99ce;
    font-family: Montserrat, ui-sans-serif, system-ui, sans-serif;
    font-size: 0.875rem;
    font-weight: 600;
    line-height: 1.25;
    letter-spacing: 0.02em;
    text-decoration: none;
    text-transform: none;
    vertical-align: baseline;
    cursor: pointer;
    box-shadow: 0 1px 2px rgba(15, 45, 82, 0.06);
    transition:
        background-color 0.2s ease,
        border-color 0.2s ease,
        color 0.2s ease,
        box-shadow 0.2s ease,
        transform 0.15s ease;
}

/* Collapsed Read More stays inline after … */
.acme-pdp-prose:not(.is-expanded) .acme-pdp-prose__toggle,
.acme-cms-prose:not(.is-expanded) .acme-cms-prose__toggle {
    background: #ffffff;
    color: #1f99ce;
    box-shadow: 0 1px 2px rgba(15, 45, 82, 0.06);
}

/* Expanded Read Less — under the full content */
.acme-pdp-prose.is-expanded .acme-pdp-prose__toggle,
.acme-cms-prose.is-expanded .acme-cms-prose__toggle {
    margin: 0;
    min-height: 2.75rem;
    padding: 0.7rem 1.35rem;
    border: 2px solid #0f2d52;
    border-radius: 0.5rem;
    background: #0f2d52;
    color: #ffffff;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    font-size: 0.9375rem;
    font-weight: 700;
    text-transform: uppercase;
    box-shadow: 0 8px 22px rgba(15, 45, 82, 0.28);
    min-width: min(100%, 14rem);
}
.acme-pdp-prose__toggle::after,
.acme-cms-prose__toggle::after {
    content: "";
    display: inline-block;
    width: 0.45em;
    height: 0.45em;
    margin-top: -0.15em;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg);
    transition: transform 0.2s ease, margin-top 0.2s ease;
}
.acme-pdp-prose__toggle:hover,
.acme-pdp-prose__toggle:focus-visible,
.acme-cms-prose__toggle:hover,
.acme-cms-prose__toggle:focus-visible {
    background: #1679a8;
    border-color: #1679a8;
    color: #ffffff;
    outline: none;
    box-shadow: 0 8px 20px rgba(31, 153, 206, 0.4);
}
.acme-pdp-prose.is-expanded .acme-pdp-prose__toggle:hover,
.acme-pdp-prose.is-expanded .acme-pdp-prose__toggle:focus-visible,
.acme-cms-prose.is-expanded .acme-cms-prose__toggle:hover,
.acme-cms-prose.is-expanded .acme-cms-prose__toggle:focus-visible {
    background: #1a3d66;
    border-color: #1a3d66;
}
.acme-pdp-prose__toggle:active,
.acme-cms-prose__toggle:active {
    transform: translateY(1px);
}
.acme-pdp-prose__toggle[aria-expanded="true"]::after,
.acme-cms-prose__toggle[aria-expanded="true"]::after {
    margin-top: 0.15em;
    transform: rotate(-135deg);
}
.acme-pdp-prose__toggle-label,
.acme-cms-prose__toggle-label {
    text-decoration: none;
}

@media (max-width: 767px) {
    .acme-pdp-prose {
        margin-top: 1.75rem;
        font-size: 1.125rem;
        line-height: 1.75rem;
    }

    .acme-pdp-prose__heading,
    .acme-pdp-prose > h3.acme-pdp-prose__heading,
    .acme-pdp-similar__heading {
        font-size: clamp(1.75rem, 8vw, 3rem);
        line-height: 1.15;
    }

    .acme-pdp-prose h2,
    .acme-pdp-prose h3:not(.acme-pdp-prose__heading),
    .acme-pdp-prose p,
    .acme-pdp-prose__feature-title,
    .acme-pdp-prose__feature-body {
        font-size: 1rem;
        line-height: 1.6;
    }

    .acme-pdp-prose__toggle {
        font-size: 0.875rem;
        padding: 0.5rem 0.9rem;
    }

    .acme-pdp-prose__feature-head {
        min-height: 0;
    }

    .acme-pdp-prose__feature-body {
        padding-left: 1.75rem;
    }
}

.acme-pdp-similar__heading {
    margin: 0 0 1.25rem;
}

.acme-pdp-similar {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

/* If Magento still renders related outside the shell, match PDP content width. */
.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);
    margin-inline: auto;
    padding-inline: 0;
}

.acme-pdp__details-wrap,
.acme-pdp__details-wrap .acme-pdp-sections,
.acme-pdp__details-wrap .acme-faq,
.acme-pdp__details-wrap .acme-pdp-prose,
.acme-pdp__details-wrap .acme-pdp-details {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

.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;
    scroll-padding-inline: 0.25rem;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 0.35rem;
    scrollbar-width: thin;
}

.acme-pdp-similar__grid::-webkit-scrollbar {
    height: 0.375rem;
}

.acme-pdp-similar__grid::-webkit-scrollbar-thumb {
    background: rgba(15, 45, 82, 0.25);
    border-radius: 999px;
}

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

@media (max-width: 743px) {
    .acme-pdp-similar .acme-product-card,
    .acme-pdp-similar__card {
        flex-basis: min(70vw, 18rem);
        width: min(70vw, 18rem);
        min-width: min(70vw, 18rem);
    }
}

@media (max-width: 639px) {
    .acme-pdp-similar .acme-product-card,
    .acme-pdp-similar__card {
        flex-basis: min(78vw, 16.5rem);
        width: min(78vw, 16.5rem);
        min-width: min(78vw, 16.5rem);
    }
}

.acme-pdp-similar .acme-product-card__media,
.acme-pdp-similar .acme-product-card__image,
.acme-pdp-similar .product-image-container,
.acme-pdp-similar .product-image-wrapper {
    display: block !important;
    width: 100% !important;
    aspect-ratio: 1 / 1 !important;
    overflow: hidden !important;
    background: #f5f7fa !important;
}

.acme-pdp-similar .acme-product-card__media img,
.acme-pdp-similar .acme-product-card__image img,
.acme-pdp-similar .product-image-photo,
.acme-pdp-similar img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    display: block !important;
}

/* Similar To — match category card language; keep square media for PDP (desktop) */
@media (min-width: 744px) {
.acme-pdp-similar .acme-product-card {
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
    height: 100% !important;
    background: #fff !important;
    border: 1px solid #e6e8ec !important;
    border-radius: 1rem !important;
    box-shadow: 0 1px 2px rgba(15, 45, 82, 0.04) !important;
    overflow: hidden !important;
}

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

.acme-pdp-similar .acme-product-card__name {
    margin: 0 !important;
    width: 100% !important;
    min-width: 0 !important;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
    font-weight: 700 !important;
    font-size: 18px !important;
    line-height: 22px !important;
    letter-spacing: 0.1px !important;
    color: var(--acme-ink) !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.acme-pdp-similar .acme-product-card__name a {
    display: block !important;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
    font-weight: 700 !important;
    font-size: 18px !important;
    line-height: 22px !important;
    letter-spacing: 0.1px !important;
    color: inherit !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.acme-pdp-similar .acme-product-card__meta-slot {
    display: block !important;
    width: 100% !important;
    min-height: 2.5rem !important;
}

.acme-pdp-similar .acme-product-card__meta {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    min-height: 2.5rem !important;
    max-height: none !important;
    overflow: hidden !important;
}

.acme-pdp-similar .acme-product-card__meta p,
.acme-pdp-similar .acme-product-card__meta-line {
    display: block !important;
    margin: 0 !important;
    width: 100% !important;
    min-width: 0 !important;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
    font-weight: 400 !important;
    font-size: 16px !important;
    line-height: 20px !important;
    letter-spacing: 0.4px !important;
    color: #6b7280 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.acme-pdp-similar .acme-product-card__price {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 0.5rem !important;
    width: 100% !important;
    min-height: 0 !important;
    padding-top: 0.2rem !important;
    margin-top: auto !important;
    white-space: nowrap !important;
    overflow: visible !important;
}
.acme-pdp-similar .acme-product-card__price-main {
    min-width: 0 !important;
    flex: 1 1 auto !important;
    overflow: hidden !important;
}
.acme-pdp-similar .acme-product-card__rating {
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.28rem !important;
    flex: 0 0 auto !important;
    margin-left: auto !important;
}

.acme-pdp-similar .acme-product-card__actions {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 0.5rem !important;
    margin-top: auto !important;
    padding: 0.5rem 1rem 1rem !important;
    box-sizing: border-box !important;
}

.acme-pdp-similar .acme-product-card__actions .acme-product-card__wishlist--inline {
    display: block !important;
    position: static !important;
    flex: 0 0 2.75rem !important;
    width: 2.75rem !important;
    height: 2.75rem !important;
    margin: 0 !important;
    order: 1 !important;
}

.acme-pdp-similar .acme-product-card__actions .acme-product-card__wishlist--inline button,
.acme-pdp-similar .acme-product-card__actions .acme-product-card__wishlist--inline .acme-product-card__wish-btn {
    width: 2.75rem !important;
    height: 2.75rem !important;
    min-width: 2.75rem !important;
    min-height: 2.75rem !important;
    border-radius: 0.5rem !important;
    border: 1px solid #d0d7e2 !important;
    background: #fff !important;
    box-shadow: none !important;
}

.acme-pdp-similar .acme-product-card__cart {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.5rem !important;
    flex: 1 1 auto !important;
    order: 2 !important;
    width: auto !important;
    max-width: none !important;
    min-height: 2.75rem !important;
    height: 2.75rem !important;
    border-radius: 0.5rem !important;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
    font-weight: 600 !important;
    font-size: 16px !important;
    line-height: 26.6px !important;
    letter-spacing: 0.3px !important;
}
}

/* Laptop / MacBook Air 13–15" (~744–1799): fluid layout — heights from equalizeHeroHeights JS */
@media (min-width: 744px) and (max-width: 1799px) {
    body.acme-pdp-page .acme-pdp {
        /* Tight gutters so usable rail ≈ desktop 1488 (10.8vw starves MBA) */
        padding-inline: var(--acme-header-pad-x, clamp(1.25rem, 2.8vw, 3rem));
        max-width: var(--acme-pdp-content-width, 93rem);
        --acme-pdp-main-w: min(44.4375rem, 100%);
        --acme-pdp-main-h: auto;
        --acme-pdp-info-w: min(32.9375rem, 100%);
        --acme-pdp-gap: clamp(1.25rem, 1.5vw, 2.5rem);
    }

    body.acme-pdp-page .acme-pdp__gallery .snap-slider,
    body.acme-pdp-page .acme-pdp__gallery [data-slider-type="gallery"] {
        height: auto !important;
        max-height: none !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: 0 0 var(--acme-pdp-main-size, min(44.4375rem, 100%)) !important;
        width: var(--acme-pdp-main-size, min(44.4375rem, 100%)) !important;
        min-width: 0 !important;
        max-width: var(--acme-pdp-main-size, min(44.4375rem, 100%)) !important;
        height: var(--acme-pdp-main-size, auto) !important;
        min-height: 0 !important;
        max-height: var(--acme-pdp-main-size, min(44.4375rem, 100%)) !important;
        aspect-ratio: 1 / 1 !important;
        overflow: hidden !important;
        flex-shrink: 0 !important;
    }

    body.acme-pdp-page .acme-pdp__hero {
        flex-wrap: nowrap !important;
        gap: 1.25rem !important;
        min-width: 0 !important;
        align-items: stretch !important;
    }

    body.acme-pdp-page .acme-pdp__gallery {
        flex: 1 1 55% !important;
        min-width: 0 !important;
        max-width: none !important;
        align-self: stretch !important;
    }

    body.acme-pdp-page .acme-pdp__gallery .snap-slider,
    body.acme-pdp-page .acme-pdp__gallery [data-slider-type="gallery"] {
        min-width: 0 !important;
        gap: 0.75rem !important;
        align-items: flex-start !important;
    }

    body.acme-pdp-page .acme-pdp__gallery .snap-pager,
    body.acme-pdp-page .acme-pdp__gallery [data-pager] {
        width: var(--acme-pdp-thumb-w) !important;
        min-width: var(--acme-pdp-thumb-w) !important;
        max-width: var(--acme-pdp-thumb-w) !important;
        flex: 0 0 var(--acme-pdp-thumb-w) !important;
        flex-basis: var(--acme-pdp-thumb-w) !important;
        align-self: stretch !important;
        overflow-x: hidden !important;
        overflow-y: auto !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 {
        width: var(--acme-pdp-thumb-w) !important;
        min-width: var(--acme-pdp-thumb-w) !important;
        max-width: var(--acme-pdp-thumb-w) !important;
        height: var(--acme-pdp-thumb-w) !important;
        min-height: var(--acme-pdp-thumb-w) !important;
        max-height: var(--acme-pdp-thumb-w) !important;
        flex: 0 0 var(--acme-pdp-thumb-w) !important;
        flex-basis: var(--acme-pdp-thumb-w) !important;
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    body.acme-pdp-page .acme-pdp__info {
        flex: 1 1 40% !important;
        width: auto !important;
        min-width: 16rem !important;
        max-width: min(32.9375rem, 100%) !important; /* match Figma 527 / air-fix */
        align-self: flex-start !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: visible !important;
    }

    body.acme-pdp-page .acme-pdp__options-wrap {
        flex: 0 0 auto !important;
        min-height: auto !important;
        max-height: none !important;
        overflow-x: hidden !important;
        overflow-y: visible !important; /* never clip Weight / size pills behind a scrollbar */
    }

    body.acme-pdp-page .acme-pdp__options,
    body.acme-pdp-page .acme-pdp__options-wrap .product-options-wrapper {
        flex: 0 0 auto !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
        overflow-y: visible !important;
    }
}

/* Responsive — do not override MBA thumb sizing between 1024–1200 */
@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;
        width: 100% !important;
        max-width: none !important;
        flex: 1 1 auto !important;
    }

    .acme-pdp__gallery .snap-slider,
    .acme-pdp__gallery [data-slider-type="gallery"] {
        flex-direction: column !important;
        min-height: 0 !important;
        gap: 1rem !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;
    }

    .acme-pdp__gallery #gallery-main,
    .acme-pdp__gallery [data-track] {
        flex: 1 1 auto !important;
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        height: auto !important;
        max-height: none !important;
        min-height: 20rem !important;
        aspect-ratio: 1 / 1 !important;
    }

    .acme-pdp__gallery .snap-slider > .relative {
        order: 1 !important;
        flex: 1 1 auto !important;
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        height: auto !important;
        max-height: none !important;
        min-height: 0 !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: row !important;
        flex-wrap: wrap !important;
        align-items: center !important;
    }

    .acme-pdp__price-row {
        flex: 1 1 auto !important;
        width: auto !important;
        min-width: 0 !important;
    }

    .acme-pdp__qty {
        flex: 0 0 7.5rem !important;
        width: 7.5rem !important;
        min-width: 7.5rem !important;
        max-width: 7.5rem !important;
        margin-left: auto !important;
    }

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

    .acme-pdp-similar__heading {
        font-size: clamp(1.75rem, 6vw, 3rem);
        line-height: 1.15;
    }

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

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

/* Never paint browser scrollbar on thumbs; keep scroll (reveal on .is-scrolling) */
.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;
}
.acme-pdp__gallery .snap-pager.is-scrolling,
.acme-pdp__gallery [data-pager].is-scrolling {
    scrollbar-width: thin !important;
    scrollbar-color: rgba(15, 45, 82, 0.35) transparent !important;
}
.acme-pdp__gallery .snap-pager.is-scrolling::-webkit-scrollbar,
.acme-pdp__gallery [data-pager].is-scrolling::-webkit-scrollbar {
    width: 4px !important;
    height: 4px !important;
    display: block !important;
}
.acme-pdp__gallery .snap-pager.is-scrolling::-webkit-scrollbar-thumb,
.acme-pdp__gallery [data-pager].is-scrolling::-webkit-scrollbar-thumb {
    background: rgba(15, 45, 82, 0.35) !important;
    border-radius: 4px !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;
}
/* Re-assert content-hug wrap after the flex visibility guard above */
body.acme-pdp-page .acme-pdp__option-pills[data-acme-pill-cols]:not([data-acme-pill-cols="1"]) {
    display: flex !important;
    flex-flow: row wrap !important;
    justify-content: flex-start !important;
}
body.acme-pdp-page .acme-pdp__option-pills[data-acme-pill-cols]:not([data-acme-pill-cols="1"]) > .acme-pdp__pill,
body.acme-pdp-page .acme-pdp__option-pills[data-acme-pill-cols]:not([data-acme-pill-cols="1"]) > button.acme-pdp__pill {
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: max-content !important;
}
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: 33px !important;
    padding: 6px 9.6px !important;
    border: 1px solid rgba(31, 153, 206, 0.7) !important;
    border-radius: 8px !important;
    background: linear-gradient(180deg, rgba(31, 153, 206, 0.0028) 0%, rgba(31, 153, 206, 0.028) 100%), #ffffff !important;
    color: #001a1e !important;
    font-family: Poppins, system-ui, sans-serif !important;
    font-size: 16px !important;
    line-height: 1.2 !important;
    white-space: normal !important;
    overflow-wrap: break-word !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;
    background-image: none !important;
    border: 1px solid #1f99ce !important;
    color: #ffffff !important;
    font-weight: 500 !important;
    box-shadow: none !important;
}
body.acme-pdp-page .acme-pdp__pill--clearable {
    overflow: visible !important;
}
body.acme-pdp-page .acme-pdp__option-pills:has(.acme-pdp__pill--clearable) {
    overflow: visible !important;
}
body.acme-pdp-page .acme-pdp__pill-clear {
    position: absolute !important;
    top: -0.55rem !important;
    right: -0.55rem !important;
    z-index: 3 !important;
    display: none !important;
    align-items: center !important;
    justify-content: center !important;
    width: 1.25rem !important;
    height: 1.25rem !important;
    min-width: 1.25rem !important;
    min-height: 1.25rem !important;
    border: 1.5px solid #ffffff !important;
    border-radius: 999px !important;
    background: #001a1e !important;
    color: #ffffff !important;
    cursor: pointer !important;
    pointer-events: none !important;
    box-shadow: 0 1px 3px rgba(0, 26, 30, 0.28) !important;
}
body.acme-pdp-page .acme-pdp__pill-clear svg {
    width: 0.625rem !important;
    height: 0.625rem !important;
}
body.acme-pdp-page .acme-pdp__pill.is-selected > .acme-pdp__pill-clear,
body.acme-pdp-page .acme-pdp__pill[aria-selected="true"] > .acme-pdp__pill-clear,
body.acme-pdp-page .acme-pdp__pill--clearable.is-selected > .acme-pdp__pill-clear {
    display: inline-flex !important;
    pointer-events: auto !important;
}
body.acme-pdp-page a.acme-pdp__pill-clear {
    text-decoration: none !important;
    color: #ffffff !important;
}
body.acme-pdp-page .acme-pdp__pill-clear:hover,
body.acme-pdp-page .acme-pdp__pill-clear:focus-visible {
    background: #00363d !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;
}

/* Qty + price unit must stay visible even if Alpine is slow or fails */
body.acme-pdp-page .acme-pdp__price-unit,
body.acme-pdp-page .acme-pdp__qty-value,
body.acme-pdp-page .acme-pdp__qty-unit {
    display: inline !important;
    visibility: visible !important;
    opacity: 1 !important;
    font-size: 1.25rem !important;
    line-height: 1.25rem !important;
}

body.acme-pdp-page .acme-pdp__price-unit {
    color: var(--acme-ink, #0f2d52) !important;
}

body.acme-pdp-page .acme-pdp__qty-value {
    color: #000 !important;
    font-weight: 500 !important;
}

body.acme-pdp-page .acme-pdp__qty-unit {
    color: #9b9b9b !important;
}

/* Hide only the "Description" label — keep prose body + FAQ; collapse its 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;
}

/* Legacy Magento tier markup — prefer Acme DZEE-style block */
.acme-pdp .prices-tier.items:not(.acme-pdp-tiers__cols),
.acme-pdp .price-tier_price {
    display: none !important;
}

/* Figma Frame 370 — Buy more save more + Rectangle 35 spacer */
.acme-pdp__rule {
    display: block;
    width: 100%;
    height: 1px;
    margin: 0;
    padding: 0;
    border: 0;
    background: #cbe5ef;
    align-self: stretch;
    flex: none;
}

.acme-pdp__tiers,
.acme-pdp-tiers,
[data-acme-tier-host] {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 78px;
    margin: 0 !important;
    padding: 0;
    box-sizing: border-box;
    overflow: visible;
    align-self: stretch !important;
    flex: 0 0 auto;
}
.acme-pdp__tiers--empty {
    height: 78px;
    min-height: 78px;
    visibility: hidden;
    pointer-events: none;
}

/* Tiers inside buy — above price/ATC (never below ATC). Buy cluster pins to column end. */
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 {
    margin: 0 0 0.625rem !important;
    min-height: 0 !important;
    flex: 0 0 auto !important;
}

body.acme-pdp-page .acme-pdp__buy .acme-pdp__tiers--empty {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}
/* Desktop DZEE strip — red brand card + 3 white/red-border cards.
 * Wholesale Pricing grey card is mobile-only (see max-width: 743px). */
.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;
    max-width: 100%;
    padding: 0 !important;
    background: transparent !important;
    border: 0;
    border-radius: 0 !important;
    overflow: visible;
    box-sizing: border-box;
}
.acme-pdp-tiers__banner::before {
    content: none !important;
    display: none !important;
}
.acme-pdp-tiers__brand {
    grid-row: 1;
    grid-column: 1;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 78px !important;
    min-height: 78px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0;
    padding: 8px 6px !important;
    box-sizing: border-box;
    background: #9d1f2b !important;
    border-radius: 0.5rem !important;
    color: #fff !important;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    font-weight: 700;
    font-size: 0.8125rem;
    line-height: 1.2;
    letter-spacing: 0;
    text-transform: none !important;
    text-align: center;
    white-space: normal !important;
    overflow: visible !important;
}
/* Desktop: Buy More Save More copy at 1.15× base (0.8125rem → 0.934375rem) */
@media (min-width: 1024px) {
    body.acme-pdp-page .acme-pdp-tiers__brand,
    body.acme-pdp-page .acme-pdp-tiers__brand-text,
    body.acme-pdp-page .acme-pdp-tiers__brand-line {
        font-size: 0.934375rem !important;
    }
}
.acme-pdp-tiers__brand-line {
    display: block !important;
    width: auto !important;
    text-align: center;
    color: #fff !important;
    white-space: nowrap !important;
}
.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;
    text-align: center;
    white-space: normal !important;
    color: #fff !important;
    line-height: 1.2 !important;
}
.acme-pdp-tiers__brand-strong {
    color: #fff !important;
    font-weight: 700 !important;
}
.acme-pdp-tiers__brand-light {
    color: #fff !important;
    font-weight: 400 !important;
}
.acme-pdp-tiers__brand br {
    display: none !important;
}
.acme-pdp-tiers__cols {
    grid-row: 1;
    grid-column: 2;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 0.5rem !important;
    list-style: none;
    margin: 0;
    padding: 0;
    min-width: 0;
    width: 100% !important;
}
.acme-pdp-tiers__col {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    min-width: 0;
    height: 78px;
    min-height: 78px;
    margin: 0;
    padding: 8px 6px;
    background: #fff;
    border: 1px solid #9d1f2b;
    border-radius: 0.5rem;
    text-align: center;
    overflow: visible;
}
.acme-pdp-tiers__col.is-active {
    background: #ffebee;
    border: 2px solid #b12936;
}
.acme-pdp-tiers__qty {
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    font-weight: 700 !important;
    font-size: 0.8125rem;
    line-height: 1.2;
    letter-spacing: 0;
    color: #ad2733;
    text-align: center;
    width: 100%;
    white-space: nowrap !important;
    overflow: visible;
    text-overflow: clip;
}
.acme-pdp-tiers__price,
.acme-pdp-tiers__price .price {
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    font-weight: 700;
    font-size: 0.875rem;
    line-height: 1.2;
    letter-spacing: 0;
    color: #0f2d52;
    text-align: center;
    white-space: nowrap;
    overflow: visible;
    text-overflow: clip;
}
/* Keep $amount + / Unit on one line (never wrap unit under price) */
.acme-pdp-tiers__price {
    display: inline-flex;
    flex-wrap: nowrap;
    align-items: baseline;
    justify-content: center;
    column-gap: 0.15em;
    width: 100%;
    max-width: 100%;
}
.acme-pdp-tiers__price .price {
    width: auto;
    white-space: nowrap;
}
.acme-pdp-tiers__unit {
    font-weight: 700;
    color: #0f2d52;
    margin-left: 0;
    white-space: nowrap;
    flex-shrink: 0;
}

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

/* Final thumb lock — fixed tiles; column height from equalize JS (not height:auto) */
body.acme-pdp-page .acme-pdp__gallery .snap-pager,
body.acme-pdp-page .acme-pdp__gallery [data-pager] {
    align-self: stretch !important;
    min-height: 0 !important;
    max-height: 100% !important;
    justify-content: flex-start !important;
    overflow-y: auto !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 {
    flex: 0 0 var(--acme-pdp-thumb-w) !important;
    width: var(--acme-pdp-thumb-w) !important;
    min-width: var(--acme-pdp-thumb-w) !important;
    max-width: var(--acme-pdp-thumb-w) !important;
    height: var(--acme-pdp-thumb-w) !important;
    min-height: var(--acme-pdp-thumb-w) !important;
    max-height: var(--acme-pdp-thumb-w) !important;
    aspect-ratio: 1 / 1 !important;
    order: 0 !important;
}

/* === acme pdp minor 2026-08-06b === */
body.acme-pdp-page .acme-pdp__panel{
  justify-content:flex-start!important;
  gap:1.25rem!important;
}
body.acme-pdp-page .acme-pdp__buy{
  margin-top:auto!important;
  gap:0.625rem!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  flex:0 0 auto!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
}
body.acme-pdp-page .acme-pdp-tiers__qty{
  white-space:nowrap!important;font-weight:700!important;font-size:14px!important;line-height:1.2!important;text-align:center!important;width:100%!important;overflow:visible!important;text-overflow:clip!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:.15em!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-size:14px!important;line-height:1.2!important;text-align:center!important;overflow:visible!important;text-overflow:clip!important;color:#0f2d52!important;font-weight:700!important
}
body.acme-pdp-page .acme-pdp-tiers__price{width:100%!important}
body.acme-pdp-page .acme-pdp-tiers__price .price,
body.acme-pdp-page .acme-pdp-tiers__unit{width:auto!important;white-space:nowrap!important;flex-shrink:0!important}
body.acme-pdp-page .acme-pdp-tiers__col{
  flex:1 1 0!important;width:auto!important;min-width:0!important;height:78px!important;min-height:78px!important;padding:8px 6px!important;align-items:center!important;text-align:center!important;overflow:visible!important;background:#fff!important;border:1px solid #9d1f2b!important
}
body.acme-pdp-page .acme-pdp__sku{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:.5rem!important;min-height:1.25rem!important;line-height:1.25rem!important}
body.acme-pdp-page .acme-pdp__sku-value:empty{display:none!important}
body.acme-pdp-page .acme-pdp__gallery.acme-gallery--child-only .snap-pager [data-acme-init-media],
body.acme-pdp-page .acme-pdp__gallery.acme-gallery--child-only [data-acme-init-media]{
  display:none!important;visibility:hidden!important;pointer-events:none!important;width:0!important;height:0!important;min-width:0!important;min-height:0!important;max-width:0!important;max-height:0!important;overflow:hidden!important;flex:0 0 0!important;margin:0!important;padding:0!important;border:0!important
}
body.acme-pdp-page .acme-pdp__tiers,
body.acme-pdp-page .acme-pdp-tiers{margin:0!important}
body.acme-pdp-page .acme-pdp__title-wrap{
  display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:.5rem!important;max-width:100%!important;min-width:0!important;overflow:visible!important
}
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;
  max-width:100%!important;
}
body.acme-pdp-page .acme-pdp__badges{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,minmax(0,auto))!important;
  min-height:0!important;
  overflow: visible !important
}
body.acme-pdp-page .acme-pdp__badge{
  min-width:0!important;overflow:hidden!important;max-width:100%!important;
  max-height:2.5rem!important;align-items:center!important
}
body.acme-pdp-page .acme-pdp__badge-text{
  min-width:0!important;flex:1 1 auto!important;
  display:block!important;
  white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
  overflow-wrap:normal!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
}

/* Breadcrumbs — separate from mega menu; no grey bar; ≤75%; current light red */
body.acme-pdp-page .top-container,
body.catalog-product-view .top-container {
    background: #fff !important;
    background-color: #fff !important;
    box-shadow: none !important;
    border: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

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,
body.catalog-product-view .breadcrumbs,
body.catalog-product-view .acme-breadcrumbs {
    display: block !important;
    box-sizing: border-box !important;
    /* Same rail as header / .acme-pdp / footer — not 100%-2rem (too wide on MBA). */
    width: 100% !important;
    max-width: var(--acme-header-inner, var(--acme-pdp-content-width, 93.3125rem)) !important;
    margin: 0 auto !important;
    padding-block: 1rem 0.75rem !important;
    padding-inline: var(--acme-header-pad-x, clamp(1.25rem, 10.8vw, 12.875rem)) !important;
    min-height: 2.75rem !important;
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
}

body.acme-pdp-page .breadcrumbs.bg-surface,
body.acme-pdp-page .breadcrumbs.shadow-sm,
body.acme-pdp-page .top-container.bg-surface {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
}

body.acme-pdp-page .breadcrumbs .container,
body.acme-pdp-page .acme-breadcrumbs .container {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
}

body.acme-pdp-page .acme-breadcrumbs__list,
body.acme-pdp-page .acme-pdp-breadcrumbs__list,
body.acme-pdp-page .breadcrumbs .items {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 0 !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scrollbar-width: none !important;
    background: transparent !important;
}

body.acme-pdp-page .acme-breadcrumbs__list::-webkit-scrollbar,
body.acme-pdp-page .acme-pdp-breadcrumbs__list::-webkit-scrollbar {
    display: none !important;
    height: 0 !important;
}

body.acme-pdp-page .acme-breadcrumbs__item,
body.acme-pdp-page .acme-pdp-breadcrumbs__item,
body.acme-pdp-page .breadcrumbs .item {
    display: inline-flex !important;
    align-items: center !important;
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    white-space: nowrap !important;
    overflow: visible !important;
}

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

body.acme-pdp-page .acme-breadcrumbs__sep,
body.acme-pdp-page .acme-pdp-breadcrumbs__sep,
body.acme-pdp-page .breadcrumbs .separator {
    display: inline-block !important;
    padding: 0 0.5rem !important;
    color: #6b7280 !important;
    flex-shrink: 0 !important;
}

body.acme-pdp-page .acme-breadcrumbs__link,
body.acme-pdp-page .acme-pdp-breadcrumbs__link,
body.acme-pdp-page .acme-breadcrumbs__text,
body.acme-pdp-page .acme-breadcrumbs__current,
body.acme-pdp-page .acme-pdp-breadcrumbs__text,
body.acme-pdp-page .breadcrumbs a,
body.acme-pdp-page .breadcrumbs .item > span {
    font-family: Montserrat, system-ui, sans-serif !important;
    font-size: 0.875rem !important;
    line-height: 1.25rem !important;
    color: var(--acme-ink) !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 100% !important;
}

body.acme-pdp-page .acme-breadcrumbs__current,
body.acme-pdp-page .acme-breadcrumbs__item.is-current .acme-breadcrumbs__current,
body.acme-pdp-page .acme-pdp-breadcrumbs__text,
body.acme-pdp-page .breadcrumbs .item.product a,
body.acme-pdp-page .breadcrumbs .item.product [aria-current="page"],
body.acme-pdp-page .breadcrumbs a.text-fg-secondary[aria-current="page"],
body.acme-pdp-page .breadcrumbs .item.is-current .acme-breadcrumbs__current {
    color: #e57373 !important;
    font-weight: 600 !important;
}

body.acme-pdp-page .acme-breadcrumbs__link:hover {
    text-decoration: underline !important;
}

body.acme-pdp-page .breadcrumbs [aria-hidden="true"].sticky {
    display: none !important;
}

/* ==========================================================================
   Laptop / MacBook Air 13–15" (744-1799): fluid hero so title/options are not clipped.
   Figma 1488 rail is wider than Air CSS widths; do not overflow-x:clip.
   ========================================================================== */
@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: 0 0 var(--acme-pdp-main-size, min(44.4375rem, 100%)) !important;
        width: var(--acme-pdp-main-size, min(44.4375rem, 100%)) !important;
        min-width: 0 !important;
        max-width: var(--acme-pdp-main-size, min(44.4375rem, 100%)) !important;
        max-height: var(--acme-pdp-main-size, min(44.4375rem, 100%)) !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 6.5rem !important;
        width: 6.5rem !important;
        min-width: 6.5rem !important;
        max-width: 6.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 6.5rem !important;
        width: 6.5rem !important;
        min-width: 6.5rem !important;
        max-width: 6.5rem !important;
        height: 6.5rem !important;
        min-height: 6.5rem !important;
        max-height: 6.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;
        align-self: flex-start !important;
        max-height: none !important;
        overflow: visible !important;
        min-height: 0 !important;
    }

    body.acme-pdp-page .acme-pdp__options-wrap {
        overflow-x: hidden !important;
        overflow-y: visible !important;
        max-height: none !important;
        flex: 0 0 auto !important;
        min-height: auto !important;
    }

    body.acme-pdp-page .acme-pdp__options {
        overflow: visible !important;
        overflow-y: visible !important;
        max-height: none !important;
        flex: 0 0 auto !important;
    }

    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;
        font-size: clamp(1.35rem, 2vw, 2rem) !important;
        line-height: 1.2 !important;
    }

    body.acme-pdp-page .acme-pdp__title-wrap {
        overflow: hidden !important;
    }
}

/* PDP title — two lines then ellipsis on all viewports */
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;
    max-width: 100% !important;
    word-break: break-word !important;
    overflow-wrap: anywhere !important;
}

/* === acme-mba-noverlap-v2 2026-08-07 === */
@media (max-width: 1799px) and (min-width: 744px) {
    body.acme-pdp-page .acme-pdp__hero {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: stretch !important;
        overflow: visible !important;
        overflow-x: visible !important;
        gap: 1.25rem !important;
        max-width: 100% !important;
    }
    body.acme-pdp-page .acme-pdp__gallery {
        flex: 0 0 auto !important;
        max-width: none !important;
        min-width: 0 !important;
        width: auto !important;
    }
    body.acme-pdp-page .acme-pdp__gallery .snap-slider,
    body.acme-pdp-page .acme-pdp__gallery [data-slider-type="gallery"] {
        display: flex !important;
        flex-direction: row !important;
        gap: 0.75rem !important;
        max-width: 100% !important;
        min-width: 0 !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: 0 0 var(--acme-pdp-main-size, min(44.4375rem, 100%)) !important;
        width: var(--acme-pdp-main-size, min(44.4375rem, 100%)) !important;
        min-width: 0 !important;
        max-width: var(--acme-pdp-main-size, min(44.4375rem, 100%)) !important;
        height: var(--acme-pdp-main-size, auto) !important;
        min-height: 0 !important;
        max-height: var(--acme-pdp-main-size, min(44.4375rem, 100%)) !important;
        aspect-ratio: 1 / 1 !important;
        overflow: hidden !important;
        flex-shrink: 0 !important;
    }
    body.acme-pdp-page .acme-pdp__gallery .snap-pager,
    body.acme-pdp-page .acme-pdp__gallery [class*="snap-pager"] {
        flex: 0 0 5.5rem !important;
        width: 5.5rem !important;
        min-width: 5.5rem !important;
        max-width: 5.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 5.5rem !important;
        width: 5.5rem !important;
        height: 5.5rem !important;
        min-width: 5.5rem !important;
        max-width: 5.5rem !important;
        min-height: 5.5rem !important;
        max-height: 5.5rem !important;
    }
    body.acme-pdp-page .acme-pdp__info {
        flex: 1 1 auto !important;
        max-width: min(32.9375rem, 100%) !important; /* desktop Figma 527 */
        min-width: 0 !important;
        width: auto !important;
        position: relative !important;
        z-index: 2 !important;
        align-self: flex-start !important;
        max-height: none !important;
        overflow: visible !important;
        min-height: 0 !important;
    }
    body.acme-pdp-page .acme-pdp__panel {
        height: 100% !important;
        min-height: 0 !important;
        max-height: 100% !important;
        overflow: hidden !important;
        display: flex !important;
        flex-direction: column !important;
    }
    body.acme-pdp-page .acme-pdp__options-wrap {
        flex: 0 0 auto !important;
        min-height: auto !important;
        overflow-x: hidden !important;
        overflow-y: visible !important;
    }
    body.acme-pdp-page .acme-pdp__buy {
        margin-top: auto !important;
        flex-shrink: 0 !important;
        overflow: visible !important;
    }
    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;
        font-size: clamp(1.25rem, 1.8vw, 1.75rem) !important;
        line-height: 1.2 !important;
    }
}

/*
 * MBA 13 + 15 LOCK: densify band is max-height:1100px (not 900).
 * MBA 15 @1680×1050 must share the same air-fix as MBA 13. Width ≤1799
 * rail/type rules apply to both; JS equalize budgets gallery by viewport.
 */

/* === acme-gallery-exclusivity-v11 — always beat display:flex !important on thumbs === */
body.acme-pdp-page .acme-pdp__gallery.acme-gallery--child-only [data-acme-init-media],
body.acme-pdp-page .acme-pdp__gallery.acme-gallery--child-only .snap-pager .snap-marker[data-acme-init-media],
body.acme-pdp-page .acme-pdp__gallery.acme-gallery--child-only .snap-pager a.snap-marker[data-acme-init-media],
body.acme-pdp-page .acme-pdp__gallery.acme-gallery--child-only .snap-pager button.snap-marker[data-acme-init-media],
body.acme-pdp-page .acme-pdp__gallery .snap-pager .snap-marker.acme-gallery-thumb--hidden,
body.acme-pdp-page .acme-pdp__gallery .snap-pager a.snap-marker.acme-gallery-thumb--hidden,
body.acme-pdp-page .acme-pdp__gallery [data-track] > .acme-gallery-slide--hidden,
body.acme-pdp-page .acme-pdp__gallery #gallery-main > .acme-gallery-slide--hidden {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
    width: 0 !important;
    height: 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-width: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
    flex: 0 0 0 !important;
    opacity: 0 !important;
}

/* === Responsive: tablet / small laptop / mobile === */
@media (max-width: 743px) {
    body.acme-pdp-page .acme-pdp__hero {
        display: flex !important;
        flex-direction: column !important;
        gap: 0 !important; /* gallery/info own 16px padding — avoid double gap */
        overflow: visible !important;
        height: auto !important;
        min-height: 0 !important;
        align-items: stretch !important;
    }
    body.acme-pdp-page .acme-pdp__gallery,
    body.acme-pdp-page .acme-pdp__info {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        flex: 0 0 auto !important; /* never shrink — was 1 1 auto → hero overflow onto SKU */
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
    }
    body.acme-pdp-page .acme-pdp__gallery .snap-slider,
    body.acme-pdp-page .acme-pdp__gallery [data-slider-type="gallery"] {
        flex-direction: column !important; /* hero then thumbs (Figma 1157:4306) */
        flex: 0 0 auto !important;
        height: auto !important;
        max-height: none !important;
        gap: 0.75rem !important;
        overflow: visible !important;
    }
    body.acme-pdp-page .acme-pdp__gallery .snap-pager,
    body.acme-pdp-page .acme-pdp__gallery [class*="snap-pager"] {
        flex-direction: row !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        overflow-x: auto !important;
        overflow-y: hidden !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 4.5rem !important;
        width: 4.5rem !important;
        height: 4.5rem !important;
        min-width: 4.5rem !important;
        min-height: 4.5rem !important;
        max-width: 4.5rem !important;
        max-height: 4.5rem !important;
    }
    /* Hero is fixed 260px tall (Figma 1157:4307), not a square that grows with width */
    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] {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        aspect-ratio: 1 / 1 !important;
        aspect-ratio: auto !important;
    }
}

@media (max-width: 767px) {
    body.acme-pdp-page .acme-pdp,
    body.acme-pdp-page .acme-pdp__sections {
        padding-inline: 1rem !important;
    }
    body.acme-pdp-page .acme-pdp__title,
    body.acme-pdp-page .acme-pdp__title-wrap .page-title {
        font-size: clamp(1.25rem, 5.5vw, 1.65rem) !important;
        line-height: 1.25 !important;
    }
    body.acme-pdp-page .acme-pdp__badges {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        grid-template-rows: repeat(2, minmax(0, auto)) !important;
    }
    body.acme-pdp-page .acme-pdp__actions {
        flex-wrap: wrap !important;
    }
}

/* ---- Final PDP overrides (must win over acme-header.css / styles.css) ---- */
body.acme-pdp-page .acme-pdp__sku.acme-pdp__sku--parent {
    display: none !important;
}
@media (min-width: 744px) {
body.acme-pdp-page .acme-pdp__badges {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-auto-rows: 2.5rem !important;
    height: auto !important;
    max-height: none !important;
    gap: 0.5rem !important;
    row-gap: 0.5rem !important;
    column-gap: 0.5rem !important;
    overflow: visible !important;
}
body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--four,
body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--two {
    grid-template-rows: repeat(2, 2.5rem) !important;
}
body.acme-pdp-page .acme-pdp__badges > .acme-pdp__badge:nth-child(n + 3),
body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--two > .acme-pdp__badge:nth-child(n + 3) {
    display: flex !important;
}
body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--four > .acme-pdp__badge:nth-child(n + 5),
body.acme-pdp-page .acme-pdp__badges > .acme-pdp__badge:nth-child(n + 5) {
    display: none !important;
}
body.acme-pdp-page .acme-pdp__badge {
    display: flex !important;
    align-items: center !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 2.5rem !important;
    max-height: 2.5rem !important;
    border-radius: 0.5rem !important;
    overflow: hidden !important; /* text ellipsis only — container stays visible */
}
body.acme-pdp-page .acme-pdp__badge-text {
    display: block !important;
    min-width: 0 !important;
    flex: 1 1 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    -webkit-line-clamp: unset !important;
    line-clamp: unset !important;
}
}

/* === acme-pdp-title-2line-v1 === */
body.acme-pdp-page .acme-pdp__title,
body.acme-pdp-page .acme-pdp__title-wrap .page-title,
.acme-pdp__title,
.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;
    max-width: 100% !important;
    max-height: none !important;
}

/* === acme-pdp-ellipsis-hide-v1 === */
.acme-pdp-prose.is-expanded .acme-pdp-prose__ellipsis,
.acme-cms-prose.is-expanded .acme-cms-prose__ellipsis,
.acme-pdp-prose.is-expanded .acme-pdp-prose__ellipsis[hidden],
.acme-cms-prose.is-expanded .acme-cms-prose__ellipsis[hidden] {
    display: none !important;
}

/* === acme-pdp-buy-bottom-align-v1 === */
body.acme-pdp-page .acme-pdp__info,
body.acme-pdp-page .acme-pdp__panel {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    min-height: 0 !important;
}
body.acme-pdp-page .acme-pdp__panel {
    justify-content: flex-start !important;
}
@media (min-width: 744px) and (max-width: 1799px) {
    body.acme-pdp-page .acme-pdp__info,
    body.acme-pdp-page .acme-pdp__panel {
        height: auto !important;
        max-height: none !important;
    }
}
body.acme-pdp-page .acme-pdp__buy {
    margin-top: auto !important;
    gap: 0.625rem !important;
    flex: 0 0 auto !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    justify-content: flex-start !important;
}

/* ==========================================================================
   === acme-pdp-responsive-v1 ===
   Mobile (320-767) / phone only (<744); tablets use desktop pass. Desktop/tablet >= 744px (iPad Mini+) is finalized,
   so every rule below lives inside a max-width media query.
   Keep this block byte-identical in web/tailwind/components/acme-pdp.css.
   ========================================================================== */

@media (max-width: 743px) {
    /* Audit C3 — 37px option pills are below a comfortable touch target. */
    body.acme-pdp-page .acme-pdp__pill,
    .acme-pdp__pill {
        min-height: 2.75rem !important;
        padding: 0.625rem 0.875rem !important;
        line-height: 1.2 !important;
    }

    /* Magento swatch controls fall back to the 36px Hyva default. */
    body.acme-pdp-page .swatch-option,
    body.acme-pdp-page .swatch-attribute-options .swatch-option {
        --swatch-size: 2.75rem;
        min-block-size: 2.75rem;
        min-inline-size: 2.75rem;
    }

    body.acme-pdp-page .acme-pdp__qty-option {
        min-height: 2.75rem !important;
        align-items: center !important;
    }

    /* Breadcrumb links stay one-line; do not inherit 44px touch min-height (misaligns current crumb). */
    body.acme-pdp-page .acme-breadcrumbs__link,
    body.acme-pdp-page .acme-pdp-breadcrumbs__link,
    body.acme-pdp-page .breadcrumbs a {
        display: inline-flex !important;
        align-items: center !important;
        min-height: 0 !important;
        height: auto !important;
        line-height: 1.25rem !important;
        padding-block: 0 !important;
    }

    /* Thumb rail becomes horizontal here — give it snap and breathing room. */
    body.acme-pdp-page .acme-pdp__gallery .snap-pager,
    body.acme-pdp-page .acme-pdp__gallery [data-pager] {
        gap: 0.5rem !important;
        padding-bottom: 0.25rem !important;
        scroll-snap-type: x proximity !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 {
        scroll-snap-align: start !important;
    }

    /* Tier tiles: let long qty/price strings wrap instead of holding 78px. */
    body.acme-pdp-page .acme-pdp__tiers,
    body.acme-pdp-page .acme-pdp-tiers,
    body.acme-pdp-page [data-acme-tier-host] {
        min-height: 0 !important;
    }

    body.acme-pdp-page .acme-pdp-tiers__col {
        height: auto !important;
        min-height: 4.25rem !important;
    }

    body.acme-pdp-page .acme-pdp-tiers__brand {
        height: auto !important;
        min-height: 4.25rem !important;
    }

    body.acme-pdp-page .acme-pdp-tiers__qty {
        white-space: normal !important;
    }
}

@media (max-width: 639px) {
    /*
     * The tablet rule pins a 20rem min-height on the main stage while also
     * asking for aspect-ratio 1/1. Below ~360px of stage width that stretches
     * the square photography, so drop the floor and keep the ratio.
     */
    body.acme-pdp-page .acme-pdp__gallery #gallery-main,
    body.acme-pdp-page .acme-pdp__gallery [data-track] {
        min-height: 0 !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 {
        flex: 0 0 3.75rem !important;
        width: 3.75rem !important;
        height: 3.75rem !important;
        min-width: 3.75rem !important;
        min-height: 3.75rem !important;
        max-width: 3.75rem !important;
        max-height: 3.75rem !important;
    }

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

    /* Audit C3 — keep Wholesale Pricing card; 3 equal cols stay readable */
    body.acme-pdp-page .acme-pdp-tiers__banner {
        grid-template-columns: minmax(0, 1fr) auto !important;
        grid-template-rows: auto auto !important;
        gap: 0.5rem !important;
    }

    body.acme-pdp-page .acme-pdp-tiers__brand {
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        min-height: 0 !important;
        padding: 0.25rem 0.5rem !important;
        font-size: 0.625rem !important;
        line-height: normal !important;
    }

    body.acme-pdp-page .acme-pdp-tiers__cols {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !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--empty {
        height: 0 !important;
        min-height: 0 !important;
    }

    /*
     * Audit C4 — the rail used to crop the next card at an arbitrary width.
     * One full card plus a deliberate 3.5rem peek, snapped, with a rail
     * indicator under the track so the swipe affordance is explicit.
     */
    body.acme-pdp-page .acme-pdp-similar__grid {
        gap: 0.75rem !important;
        padding-bottom: 0.5rem !important;
        scroll-padding-inline: 0 !important;
        scroll-snap-type: x mandatory !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card,
    body.acme-pdp-page .acme-pdp-similar__card {
        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;
        scroll-snap-align: start !important;
    }

    body.acme-pdp-page .acme-pdp-similar::after {
        content: "";
        display: block;
        align-self: center;
        width: 3.5rem;
        height: 0.25rem;
        margin-top: -0.75rem;
        border-radius: 999px;
        background: linear-gradient(
            90deg,
            rgba(15, 45, 82, 0.32) 0%,
            rgba(15, 45, 82, 0.1) 100%
        );
    }
}

/* ≤479px: badges stay locked desktop 2×2 (no alternate mobile chrome). */

/* ==========================================================================
   === PDP1-MOBILE (Figma 1112:6431) ===
   Mobile product page layout. Desktop/tablet >= 744px (iPad Mini+) 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;
    }

    /* Keep breadcrumbs visible on mobile — beat any stray header/chrome hide. */
    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;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
    }
    body.acme-pdp-page .acme-breadcrumbs__list,
    body.acme-pdp-page .acme-pdp-breadcrumbs__list,
    body.acme-pdp-page .breadcrumbs .items {
        display: flex !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 {
        flex: 0 0 auto !important;
        flex-shrink: 0 !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
        background: #fff !important;
        padding: 1rem !important;
        box-sizing: border-box !important;
    }

    body.acme-pdp-page .acme-pdp__info {
        flex: 0 0 auto !important;
        flex-shrink: 0 !important;
        height: auto !important;
        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;
        flex: 0 0 auto !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;
        flex: 0 0 auto !important;
        flex-shrink: 0 !important;
        gap: 0.75rem !important;
        min-height: 0 !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !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 — now 1:1 */
        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;
        min-height: 0 !important;
        max-height: none !important;
        aspect-ratio: 1 / 1 !important;
        aspect-ratio: auto !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 > 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;
        max-width: 100% !important;
        height: 100% !important;
        min-height: 100% !important;
        overflow: hidden !important;
        scroll-snap-align: start !important;
        scroll-snap-stop: always !important;
    }

    body.acme-pdp-page .acme-pdp__gallery #gallery-main,
    body.acme-pdp-page .acme-pdp__gallery [data-track] {
        overscroll-behavior-x: contain !important;
        touch-action: pan-x pinch-zoom !important;
        -webkit-overflow-scrolling: touch !important;
    }

    /* Figma 1157:4307 — absolute inset-0 + object-cover; pin toward thumbs */
    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: left 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 — keep desktop 2×2 + icons (do not restyle on phone). */

    /* 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 .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;
        margin: 0 0 0.75rem !important;
    }

    body.acme-pdp-page .acme-pdp__buy .acme-pdp__tiers--empty {
        display: none !important;
        height: 0 !important;
        min-height: 0 !important;
        margin: 0 !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 only — desktop keeps DZEE strip) */
    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;
        max-width: 100% !important;
        padding: 0.75rem !important;
        background: #f8f8f8 !important;
        border-radius: 0.5rem !important;
        box-sizing: border-box !important;
        overflow: visible !important;
    }

    body.acme-pdp-page .acme-pdp-tiers__banner::before {
        content: "Wholesale Pricing" !important;
        display: block !important;
        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;
        flex-direction: row !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;
        white-space: nowrap !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;
        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 .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; /* 16px — smaller than current */
        line-height: 1.25 !important;
        letter-spacing: 0 !important;
        color: #374151 !important;
        text-decoration: line-through !important;
        text-decoration-color: #374151 !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;
        font-size: inherit !important;
        line-height: inherit !important;
    }

    body.acme-pdp-page .acme-pdp__price-row .special-price .price,
    body.acme-pdp-page .acme-pdp__price-row .normal-price .price,
    body.acme-pdp-page .acme-pdp__price-row .price-final_price .price {
        line-height: 1.15 !important;
    }

    body.acme-pdp-page .acme-pdp__price-row .acme-product-price-unit,
    body.acme-pdp-page .acme-pdp__price-unit {
        display: inline !important;
        align-self: auto !important;
        vertical-align: baseline !important;
        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;
        margin: 0 !important;
        padding: 0 !important;
        position: static !important;
        top: auto !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;
        min-height: 0 !important;
        justify-self: end !important;
        display: block !important;
        position: relative !important;
    }

    body.acme-pdp-page .acme-pdp__qty > .acme-pdp__qty-btn {
        position: static !important;
        top: auto !important;
        right: auto !important;
        width: auto !important;
        max-width: 100% !important;
        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-menu {
        width: 100% !important;
        min-width: 5.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;
    }

    /* Mobile: show price unit (Dz / Case), not a "Qty:" label */
    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;
    }

    /* Add to List left of ATC — shared 2-col buy grid */
    body.acme-pdp-page .acme-pdp__buy {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1.35fr) !important;
    }

    body.acme-pdp-page .acme-pdp__list {
        grid-column: 1 !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        flex: none !important;
        justify-self: stretch !important;
    }

    body.acme-pdp-page .acme-pdp__list-btn {
        width: 100% !important;
        min-height: 2.875rem !important;
        height: auto !important;
        max-height: none !important;
        padding: 0.875rem 0.5rem !important;
        border: 1.5px solid #0f2d52 !important;
        border-radius: 0.5rem !important;
        background: #fff !important;
        color: #0f2d52 !important;
        font-family: Montserrat, ui-sans-serif, system-ui, sans-serif !important;
        font-weight: 700 !important;
        font-size: 0.75rem !important;
        line-height: 1.2 !important;
        white-space: nowrap !important;
    }

    body.acme-pdp-page .acme-pdp__atc {
        grid-column: 2 !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; /* Figma 1157:4433 — fill frame edge-to-edge */
        object-position: center center !important;
        aspect-ratio: auto !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;
        text-align: left !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: none !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: nowrap !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__price .old-price .acme-product-price-unit {
        display: none !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;
        gap: 0.625rem !important; /* 10px — keep price glued to CTA */
        grid-template-columns: unset !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        flex: 0 0 auto !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
    }

    body.acme-pdp-page .acme-pdp__price-row,
    body.acme-pdp-page .acme-pdp__actions {
        margin-top: 0 !important;
        flex: 0 0 auto !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;
    }
}

/*
 * Final mobile gallery / tier / similar guards (must load after header + earlier PDP rules).
 * Staging still had flex:1 on thumbs → one marker = full-bleed “super large” image.
 */
@media (max-width: 743px) {
    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;
        flex-grow: 0 !important;
        flex-shrink: 0 !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;
    }

    /* Single-image PDP: thumb column hidden on desktop (audit-fixes + equalize JS) */

    body.acme-pdp-page .acme-pdp-tiers__brand {
        gap: 0.25em !important;
        white-space: nowrap !important;
    }

    body.acme-pdp-page .acme-pdp-tiers__brand-line {
        display: inline !important;
        width: auto !important;
        white-space: nowrap !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__info,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__head,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__meta,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__meta-line,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price {
        text-align: left !important;
        align-items: flex-start !important;
    }

    /*
     * Final Similar Products guards — Figma 1157:4429 / 1157:4433
     * Staging previously served 111px (6.9375rem) media + centered heading.
     */
    body.acme-pdp-page .acme-pdp-similar,
    body.acme-pdp-page .acme-pdp__similar .acme-pdp-similar {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        justify-content: flex-start !important;
        gap: 1rem !important;
        width: 100% !important;
        text-align: left !important;
    }

    body.acme-pdp-page .acme-pdp-similar__heading {
        text-align: left !important;
        align-self: flex-start !important;
        width: 100% !important;
        margin-inline: 0 !important;
    }

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

    body.acme-pdp-page .acme-pdp-similar .acme-product-card,
    body.acme-pdp-page .acme-pdp-similar__card {
        position: relative !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;
        margin: 0 !important;
        border-radius: 0.75rem !important; /* 12px */
        overflow: hidden !important;
        background: #f8f9fc !important;
        scroll-snap-align: start !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__media {
        position: relative !important;
        flex: 0 0 9.375rem !important; /* 150px */
        width: 100% !important;
        height: 9.375rem !important;
        min-height: 9.375rem !important;
        max-height: 9.375rem !important;
        aspect-ratio: auto !important;
        overflow: hidden !important;
        padding: 0 !important;
        margin: 0 !important;
        border-radius: 0.75rem 0.75rem 0 0 !important;
        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,
    body.acme-pdp-page .acme-pdp-similar img.product-image-photo {
        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;
    }

    /* Wishlist over image (Figma 1157:4433 — top-right 8px inset) */
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__wishlist {
        position: absolute !important;
        top: 0.5rem !important;
        right: 0.5rem !important;
        z-index: 3 !important;
        flex: none !important;
        width: 1.25rem !important;
        height: 1.25rem !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 {
        width: 1.25rem !important;
        height: 1.25rem !important;
        min-width: 1.25rem !important;
        min-height: 1.25rem !important;
        border-radius: 999px !important;
        background: #fff !important;
        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12) !important;
        color: #5a6a7e !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__actions {
        position: relative !important;
        display: flex !important;
        width: 100% !important;
        padding: 0.5rem 0.75rem 0.75rem !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__cart {
        flex: 1 1 auto !important;
        width: 100% !important;
    }
}

/* ==========================================================================
   === acme-pdp-ui-lock-v1 (Figma 1157:4367 / 1244:3266 / 1157:4289) ===
   Must load last. Qty-based tier highlight, CTA pinned to gallery bottom,
   Similar Products cards (2-line desc, price + cut price, wishlist + ATC).
   ========================================================================== */

body.acme-pdp-page .acme-pdp-tiers__col,
body.acme-pdp-page .acme-pdp-tiers__col:last-child,
body.acme-pdp-page .acme-pdp-tiers__col:last-child:nth-child(odd) {
    background: #fff !important;
    border: 1px solid #9d1f2b !important;
    box-shadow: none !important;
    transition: background 0.15s ease, border-color 0.15s ease;
}
body.acme-pdp-page .acme-pdp-tiers__col.is-active,
body.acme-pdp-page .acme-pdp-tiers__col:last-child.is-active,
body.acme-pdp-page li.acme-pdp-tiers__col.is-active {
    background: #ffebee !important;
    border: 2px solid #b12936 !important;
    box-shadow: inset 0 0 0 1px #b12936;
}

/* Wide desktop — grow hero with content; contain gallery inside rail (no image spill) */
@media (min-width: 1800px) {
    body.acme-pdp-page .acme-pdp__hero {
        align-items: stretch !important;
        overflow: hidden !important;
        max-width: 100% !important;
    }

    body.acme-pdp-page .acme-pdp__gallery {
        flex: 0 0 auto !important;
        width: auto !important;
        max-width: calc(var(--acme-pdp-thumb-w) + var(--acme-pdp-gap) + var(--acme-pdp-main-w)) !important;
        min-width: 0 !important;
        overflow: hidden !important;
    }

    body.acme-pdp-page .acme-pdp__gallery .snap-slider,
    body.acme-pdp-page .acme-pdp__gallery [data-slider-type="gallery"] {
        max-width: 100% !important;
        min-width: 0 !important;
        overflow: hidden !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: 0 0 var(--acme-pdp-main-w) !important;
        width: var(--acme-pdp-main-w) !important;
        max-width: var(--acme-pdp-main-w) !important;
        min-width: 0 !important;
    }

    body.acme-pdp-page .acme-pdp__info {
        height: auto !important;
        min-height: 100% !important;
        align-self: stretch !important;
        display: flex !important;
        flex-direction: column !important;
        overflow: visible !important;
        max-height: none !important;
        /* Wider right rail — leftover after thumbs+711 (JS sets exact px; ≤640 soft). */
        flex: 1 1 auto !important;
        width: auto !important;
        max-width: min(40rem, 100%) !important;
        min-width: 0 !important;
    }
    body.acme-pdp-page .acme-pdp__panel {
        display: flex !important;
        flex-direction: column !important;
        justify-content: flex-start !important;
        height: auto !important;
        min-height: 100% !important;
        flex: 1 1 auto !important;
        overflow: visible !important;
        max-height: none !important;
    }
    body.acme-pdp-page .acme-pdp__options-wrap,
    body.acme-pdp-page .acme-pdp__options,
    body.acme-pdp-page .acme-pdp__options--configurable,
    body.acme-pdp-page .acme-pdp__options--simple,
    body.acme-pdp-page .acme-pdp__options-wrap .product-options-wrapper {
        flex: 0 0 auto !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: visible !important;
        overflow-y: visible !important;
    }
    body.acme-pdp-page .acme-pdp__buy {
        margin-top: auto !important;
        flex: 0 0 auto !important;
        flex-shrink: 0 !important;
        overflow: visible !important;
        z-index: 4 !important;
    }
}

@media (min-width: 744px) {
    /* Match header / nav / footer content rail (1488 + side gutters) */
    body.acme-pdp-page .page-main,
    body.acme-pdp-page #maincontent.page-main,
    body.acme-pdp-page .columns,
    body.acme-pdp-page .column.main {
        width: 100% !important;
        max-width: none !important;
        margin-inline: 0 !important;
        padding-inline: 0 !important;
        box-sizing: border-box !important;
    }
    body.acme-pdp-page .acme-pdp {
        box-sizing: border-box !important;
        width: 100% !important;
        max-width: var(--acme-footer-inner, var(--acme-pdp-content-width, 93rem)) !important;
        margin-inline: auto !important;
        padding-inline: var(--acme-footer-pad-x, var(--acme-header-pad-x, clamp(1.25rem, 10.8vw, 12.875rem))) !important;
    }
    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 {
        box-sizing: border-box !important;
        width: 100% !important;
        max-width: var(--acme-header-inner, var(--acme-footer-inner, var(--acme-pdp-content-width, 93.3125rem))) !important;
        margin-inline: auto !important;
        padding-inline: var(--acme-header-pad-x, var(--acme-footer-pad-x, clamp(1.25rem, 10.8vw, 12.875rem))) !important;
    }
    body.acme-pdp-page .acme-pdp__hero,
    body.acme-pdp-page .acme-pdp .acme-pdp__details-wrap,
    body.acme-pdp-page .acme-pdp .acme-pdp__similar,
    body.acme-pdp-page .acme-pdp .acme-pdp-similar {
        width: 100% !important;
        max-width: 100% !important;
        margin-inline: 0 !important;
        padding-inline: 0 !important;
        box-sizing: border-box !important;
        text-align: left !important;
    }
    /* Orphaned after broken markup: still match header/footer rail */
    body.acme-pdp-page .product-info-main > .acme-pdp__details-wrap,
    body.acme-pdp-page #maincontent > .acme-pdp__similar,
    body.acme-pdp-page .page-main > .acme-pdp__similar,
    body.acme-pdp-page .columns ~ .acme-pdp__similar {
        width: 100% !important;
        max-width: var(--acme-footer-inner, var(--acme-pdp-content-width, 93rem)) !important;
        margin-inline: auto !important;
        padding-inline: var(--acme-footer-pad-x, var(--acme-header-pad-x, clamp(1.25rem, 10.8vw, 12.875rem))) !important;
        box-sizing: border-box !important;
    }

    body.acme-pdp-page .acme-pdp-similar {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 1.25rem !important;
    }
    body.acme-pdp-page .acme-pdp-similar__heading {
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        text-align: left !important;
        font-family: Montserrat, Inter, ui-sans-serif, sans-serif !important;
        font-size: 1.5rem !important;
        font-weight: 700 !important;
        line-height: 1.25 !important;
        letter-spacing: normal !important;
        color: #0f2d52 !important;
    }
    /* Desktop — static 4-up grid (match live; slider is mobile-only) */
    body.acme-pdp-page .acme-pdp-similar__grid {
        display: grid !important;
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 1.25rem !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
        scroll-snap-type: none !important;
    }
    body.acme-pdp-page .acme-pdp-similar::after {
        display: none !important;
        content: none !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;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        height: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 1px solid #e8ecf0 !important;
        border-radius: 1rem !important;
        background: #fff !important;
        box-shadow: 0 2px 20px rgba(15, 45, 82, 0.06) !important;
        overflow: hidden !important;
        scroll-snap-align: unset !important;
        flex: none !important;
        position: relative !important;
    }
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__media {
        position: relative !important;
        flex: 0 0 auto !important;
        width: 100% !important;
        aspect-ratio: 1 / 1 !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: hidden !important;
        background: #f8f9fc !important;
        border-radius: 1rem 1rem 0 0 !important;
    }
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__info {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-areas:
            "name"
            "meta"
            "price" !important;
        gap: 0.4375rem !important;
        align-items: start !important;
        padding: 1rem 1rem 0.5rem !important;
        min-width: 0 !important;
        flex: 1 1 auto !important;
        text-align: left !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,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__name a {
        grid-area: name !important;
        display: -webkit-box !important;
        width: 100% !important;
        margin: 0 !important;
        white-space: normal !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 2 !important;
        line-clamp: 2 !important;
        font-family: Inter, ui-sans-serif, sans-serif !important;
        font-size: 1.125rem !important;
        font-weight: 700 !important;
        line-height: 1.375rem !important;
        letter-spacing: 0.1px !important;
        color: #0f2d52 !important;
        text-align: left !important;
        text-decoration: none !important;
    }
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__meta-slot,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__meta {
        grid-area: meta !important;
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        min-height: 0 !important;
        height: auto !important;
        margin: 0 !important;
        overflow: hidden !important;
        text-align: left !important;
    }
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__meta-line,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__meta-line + .acme-product-card__meta-line {
        display: block !important;
        width: 100% !important;
        min-height: 0 !important;
        height: auto !important;
        font-family: Inter, ui-sans-serif, sans-serif !important;
        font-size: 1rem !important;
        font-weight: 400 !important;
        line-height: 1.25rem !important;
        letter-spacing: 0.4px !important;
        color: #5a6a7e !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        text-align: left !important;
    }
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price {
        grid-area: price !important;
        display: block !important;
        width: 100% !important;
        min-height: 0 !important;
        margin: 0.15rem 0 0 !important;
        padding: 0 !important;
        text-align: left !important;
        white-space: nowrap !important;
        overflow: hidden !important;
    }
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .price-box,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .price-container {
        display: inline-flex !important;
        flex-wrap: nowrap !important;
        align-items: baseline !important;
        gap: 0.2rem !important;
        white-space: nowrap !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,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .price-box .normal-price .price {
        font-family: Inter, ui-sans-serif, sans-serif !important;
        font-size: clamp(0.6875rem, 3vw, 0.8125rem) !important;
        font-weight: 700 !important;
        line-height: 1.1 !important;
        letter-spacing: 0 !important;
        color: #0f2d52 !important;
        text-decoration: none !important;
    }
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .acme-product-price-unit {
        display: inline !important;
        font-size: clamp(0.5rem, 2.2vw, 0.625rem) !important;
        line-height: 1.1 !important;
        font-weight: 400 !important;
        color: #0f2d52 !important;
        white-space: nowrap !important;
    }
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .old-price,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price span.old-price {
        display: inline-flex !important;
        align-items: baseline !important;
        font-size: 0 !important;
        line-height: 0 !important;
        text-decoration: none !important;
    }
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .old-price .price {
        font-family: Inter, ui-sans-serif, sans-serif !important;
        font-size: clamp(0.5625rem, 2.4vw, 0.6875rem) !important;
        font-weight: 400 !important;
        line-height: 1.05 !important;
        letter-spacing: 0 !important;
        color: #6b7280 !important;
        text-decoration: line-through !important;
        text-decoration-thickness: 1px !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__actions {
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0.5rem 1rem 1rem !important;
        box-sizing: border-box !important;
        position: relative !important;
    }
    /* Desktop Similar (Figma 1019:1812): heart on photo — not beside ATC */
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__actions .acme-product-card__wishlist {
        display: none !important;
    }
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__media .acme-product-card__wishlist {
        position: absolute !important;
        top: 1rem !important;
        right: 1rem !important;
        left: auto !important;
        bottom: auto !important;
        z-index: 4 !important;
        width: auto !important;
        height: auto !important;
        margin: 0 !important;
        flex: none !important;
    }
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__media .acme-product-card__wish-btn,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__media .acme-product-card__wishlist button {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 1.75rem !important;
        height: 1.75rem !important;
        min-width: 1.75rem !important;
        min-height: 1.75rem !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 50% !important;
        background: rgba(0, 0, 0, 0.07) !important;
        box-shadow: 0 6px 6px rgba(0, 0, 0, 0.02) !important;
        color: rgba(0, 0, 0, 0.54) !important;
    }
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__cart {
        display: flex !important;
        width: 100% !important;
        flex: 1 1 auto !important;
        min-width: 0 !important;
        min-height: 2.75rem !important;
        height: 2.75rem !important;
        border-radius: 0.5rem !important;
        font-size: 1rem !important;
        font-weight: 600 !important;
    }
}

@media (max-width: 743px) {
    body.acme-pdp-page .acme-pdp__details-wrap,
    body.acme-pdp-page .acme-pdp__reviews-wrap,
    body.acme-pdp-page .acme-pdp__faq-wrap,
    body.acme-pdp-page .acme-pdp__similar,
    body.acme-pdp-page .acme-pdp-similar {
        width: 100% !important;
        max-width: 100% !important;
        margin-inline: 0 !important;
        padding: 1rem !important;
        box-sizing: border-box !important;
        text-align: left !important;
    }
    body.acme-pdp-page .acme-pdp-similar,
    body.acme-pdp-page .acme-pdp__similar .acme-pdp-similar {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 1rem !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: 0 !important;
        margin-inline: 0 !important;
        padding: 0 !important;
        text-align: left !important;
        align-self: stretch !important;
        font-family: Montserrat, Inter, ui-sans-serif, sans-serif !important;
        font-size: 1.125rem !important;
        font-weight: 700 !important;
        line-height: 1.4 !important;
        letter-spacing: normal !important;
        color: #0f2d52 !important;
    }
    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;
    }
    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;
        position: relative !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;
        border: 1px solid #e8ecf0 !important;
        border-radius: 0.75rem !important;
        background: #fff !important;
        box-shadow: 0 2px 20px rgba(15, 45, 82, 0.06) !important;
        overflow: hidden !important;
        scroll-snap-align: start !important;
    }
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__media {
        position: relative !important;
        flex: 0 0 9.375rem !important;
        width: 100% !important;
        height: 9.375rem !important;
        min-height: 9.375rem !important;
        max-height: 9.375rem !important;
        aspect-ratio: auto !important;
        overflow: hidden !important;
        border-radius: 0.75rem 0.75rem 0 0 !important;
        background: #f8f9fc !important;
    }
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__info {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 0.375rem !important;
        padding: 0.5rem 0.75rem 0 !important;
        min-width: 0 !important;
        flex: 1 1 auto !important;
        text-align: left !important;
    }
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__name,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__name a {
        display: -webkit-box !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 2 !important;
        line-clamp: 2 !important;
        width: 100% !important;
        margin: 0 !important;
        overflow: hidden !important;
        white-space: normal !important;
        text-overflow: ellipsis !important;
        text-align: left !important;
        font-family: Inter, ui-sans-serif, sans-serif !important;
        font-size: 0.75rem !important;
        font-weight: 700 !important;
        line-height: 1rem !important;
        letter-spacing: 0.1px !important;
        color: #0f2d52 !important;
        min-height: 2rem !important;
        max-height: 2rem !important;
    }
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__meta-slot,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__meta {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        min-height: 2.49rem !important;
        height: 2.49rem !important;
        margin: 0 !important;
        overflow: hidden !important;
        text-align: left !important;
        align-items: flex-start !important;
    }
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__meta-line,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__meta p,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__meta-line + .acme-product-card__meta-line {
        display: block !important;
        width: 100% !important;
        min-height: 1.245rem !important;
        height: 1.245rem !important;
        font-family: Inter, ui-sans-serif, sans-serif !important;
        font-size: 0.75rem !important;
        font-weight: 400 !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;
        text-align: left !important;
    }
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price {
        display: block !important;
        width: 100% !important;
        min-height: 1.125rem !important;
        margin: 0 !important;
        padding: 0 !important;
        text-align: left !important;
        white-space: nowrap !important;
        overflow: hidden !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,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .price-box .normal-price .price {
        font-family: Inter, ui-sans-serif, sans-serif !important;
        font-size: clamp(0.6875rem, 3vw, 0.8125rem) !important;
        font-weight: 700 !important;
        line-height: 1.1 !important;
        letter-spacing: 0 !important;
        color: #0f2d52 !important;
        text-decoration: none !important;
    }
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .old-price,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price span.old-price {
        display: inline-flex !important;
        align-items: baseline !important;
        font-size: 0 !important;
        line-height: 0 !important;
    }
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .old-price .price {
        font-family: Inter, ui-sans-serif, sans-serif !important;
        font-size: 0.75rem !important;
        font-weight: 400 !important;
        line-height: 1rem !important;
        color: #6b7280 !important;
        text-decoration: line-through !important;
    }
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .acme-product-price-unit {
        display: inline !important;
        font-size: 0.75rem !important;
        font-weight: 400 !important;
        color: #0f2d52 !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__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;
        position: relative !important;
    }
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__wishlist {
        position: static !important;
        top: auto !important;
        right: auto !important;
        z-index: auto !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;
        white-space: nowrap !important;
    }
}

/* ==========================================================================
   === acme-pdp-ui-lock-v2 ===
   Heading left, similar card order, gallery fill, CTA column pin.
   ========================================================================== */
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;
}

@media (max-width: 743px) {
    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__gallery #gallery-main,
body.acme-pdp-page .acme-pdp__gallery [data-track] {
    overflow: hidden !important;
}
body.acme-pdp-page .acme-pdp__gallery #gallery-main img,
body.acme-pdp-page .acme-pdp__gallery [data-track] img,
body.acme-pdp-page .acme-pdp__gallery .acme-gallery-slide img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: left center !important;
}

/* ==========================================================================
   === acme-pdp-shell-rail-v1 + acme-pdp-mobile-lock-v3 ===
   Desktop: PDP shell (hero / details / similar) shares header+footer rail.
   Mobile: freeze PDP1 layout (do not regress with later desktop rules).
   ========================================================================== */
@media (min-width: 744px) {
    body.acme-pdp-page .page-main,
    body.acme-pdp-page #maincontent.page-main,
    body.acme-pdp-page .columns,
    body.acme-pdp-page .column.main {
        width: 100% !important;
        max-width: none !important;
        margin-inline: 0 !important;
        padding-inline: 0 !important;
        box-sizing: border-box !important;
    }
    body.acme-pdp-page .acme-pdp {
        box-sizing: border-box !important;
        width: 100% !important;
        max-width: var(--acme-footer-inner, var(--acme-pdp-content-width, 93rem)) !important;
        margin-inline: auto !important;
        padding-inline: var(--acme-footer-pad-x, var(--acme-header-pad-x, clamp(1.25rem, 10.8vw, 12.875rem))) !important;
    }
    /* Also constrain when a broken </div> orphans these outside .acme-pdp */
    body.acme-pdp-page .acme-pdp__details-wrap,
    body.acme-pdp-page .acme-pdp__similar,
    body.acme-pdp-page main > .acme-pdp__similar,
    body.acme-pdp-page .product-info-main > .acme-pdp__details-wrap {
        box-sizing: border-box !important;
        width: 100% !important;
        max-width: var(--acme-footer-inner, var(--acme-pdp-content-width, 93rem)) !important;
        margin-inline: auto !important;
        padding-inline: var(--acme-footer-pad-x, var(--acme-header-pad-x, clamp(1.25rem, 10.8vw, 12.875rem))) !important;
    }
    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 {
        box-sizing: border-box !important;
        width: 100% !important;
        max-width: var(--acme-header-inner, var(--acme-footer-inner, var(--acme-pdp-content-width, 93.3125rem))) !important;
        margin-inline: auto !important;
        padding-inline: var(--acme-header-pad-x, var(--acme-footer-pad-x, clamp(1.25rem, 10.8vw, 12.875rem))) !important;
    }
    body.acme-pdp-page .acme-pdp .acme-pdp__hero,
    body.acme-pdp-page .acme-pdp .acme-pdp__details-wrap,
    body.acme-pdp-page .acme-pdp .acme-pdp__similar,
    body.acme-pdp-page .acme-pdp .acme-pdp-similar {
        width: 100% !important;
        max-width: 100% !important;
        margin-inline: 0 !important;
        padding-inline: 0 !important;
        box-sizing: border-box !important;
    }
}
@media (min-width: 96rem) {
    body.acme-pdp-page .acme-pdp,
    body.acme-pdp-page .acme-pdp__details-wrap,
    body.acme-pdp-page .acme-pdp__similar,
    body.acme-pdp-page main > .acme-pdp__similar,
    body.acme-pdp-page .product-info-main > .acme-pdp__details-wrap,
    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 {
        padding-inline: 0 !important;
    }
}

@media (max-width: 743px) {
    /* acme-pdp-mobile-lock-v3 — keep stacked mobile chrome stable */
    body.acme-pdp-page .acme-pdp {
        max-width: none !important;
        margin-inline: 0 !important;
        padding-inline: 0 !important;
    }
    body.acme-pdp-page .acme-pdp__details-wrap,
    body.acme-pdp-page .acme-pdp__reviews-wrap,
    body.acme-pdp-page .acme-pdp__faq-wrap,
    body.acme-pdp-page .acme-pdp__similar,
    body.acme-pdp-page .acme-pdp-similar {
        width: 100% !important;
        max-width: 100% !important;
        margin-inline: 0 !important;
        padding: 1rem !important;
        box-sizing: border-box !important;
        text-align: left !important;
    }
    body.acme-pdp-page .acme-pdp-similar__heading,
    body.acme-pdp-page .acme-pdp-similar h3.acme-pdp-similar__heading {
        text-align: left !important;
        width: 100% !important;
        align-self: stretch !important;
    }
}

/* Size+Type paired products: Type row is auto-selected via Size pills */
body.acme-pdp-page .acme-pdp__option-group--paired-hidden {
    display: none !important;
}

/* No inner scrollbar on attribute column (equalized hero) */
body.acme-pdp-page .acme-pdp__options-wrap,
body.acme-pdp-page .acme-pdp__options,
body.acme-pdp-page .acme-pdp__options-wrap .product-options-wrapper {
    flex: 0 0 auto !important;
    max-height: none !important;
    overflow: visible !important;
    overflow-y: visible !important;
}

/* ==========================================================================
 * Similar Products — Figma 1019:1884 (desktop)
 * Image + heart top-right · title · 2 meta lines · price + old · full-width ATC
 * ========================================================================== */
@media (min-width: 744px) {
    body.acme-pdp-page .acme-pdp-similar .acme-product-card,
    body.acme-pdp-page .acme-pdp-similar__card {
        position: relative !important;
        display: flex !important;
        flex-direction: column !important;
        background: #fff !important;
        border: 1px solid #e8ecf0 !important;
        border-radius: 1rem !important;
        box-shadow: 0 2px 20px rgba(15, 45, 82, 0.06) !important;
        overflow: hidden !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__media {
        position: relative !important;
        overflow: hidden !important;
        aspect-ratio: 1 / 1 !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        flex: 0 0 auto !important;
        background: #f8f9fc !important;
        border-radius: 1rem 1rem 0 0 !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__media .acme-product-card__wishlist {
        position: absolute !important;
        top: 1rem !important;
        right: 1rem !important;
        left: auto !important;
        bottom: auto !important;
        z-index: 4 !important;
        width: auto !important;
        height: auto !important;
        margin: 0 !important;
        flex: none !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__media .acme-product-card__wish-btn,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__media .acme-product-card__wishlist button {
        width: 1.75rem !important;
        height: 1.75rem !important;
        min-width: 1.75rem !important;
        min-height: 1.75rem !important;
        border: 0 !important;
        border-radius: 50% !important;
        /* Figma 1019:1906 — muted circle behind heart */
        background: rgba(0, 0, 0, 0.07) !important;
        box-shadow: 0 6px 6px rgba(0, 0, 0, 0.02) !important;
        color: rgba(0, 0, 0, 0.54) !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__info {
        display: flex !important;
        flex-direction: column !important;
        gap: 0.35rem !important;
        padding: 0.85rem 0 0.5rem !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__name,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__name a {
        font-size: 1.125rem !important;
        font-weight: 700 !important;
        line-height: 1.3 !important;
        color: #0f2d52 !important;
        -webkit-line-clamp: 2 !important;
        line-clamp: 2 !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__meta-line {
        display: block !important;
        font-size: 0.9375rem !important;
        line-height: 1.35 !important;
        color: #5a6a7e !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 {
        display: block !important;
        flex-wrap: nowrap !important;
        align-items: baseline !important;
        gap: 0.25rem !important;
        margin-top: 0.25rem !important;
        white-space: normal !important;
        overflow: visible !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .price-box {
        display: inline-flex !important;
        flex-wrap: wrap !important;
        align-items: baseline !important;
        gap: 0.2rem 0.35rem !important;
        max-width: 100% !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-size: 1.125rem !important;
        font-weight: 700 !important;
        color: #0f2d52 !important;
    }

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

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .old-price .price {
        font-size: 0.875rem !important;
        font-weight: 400 !important;
        color: #6b7280 !important;
        text-decoration: line-through !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .acme-product-price-unit {
        display: inline !important;
        font-size: 0.75rem !important;
        font-weight: 400 !important;
        color: #0f2d52 !important;
        white-space: nowrap !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__actions {
        display: block !important;
        padding: 0.35rem 0 0 !important;
        margin-top: auto !important;
    }

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

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__cart {
        width: 100% !important;
        max-width: none !important;
        flex: none !important;
        min-height: 2.75rem !important;
        height: auto !important;
        border-radius: 0.5rem !important;
        background: #ad2733 !important;
    }
}

@media (max-width: 743px) {
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__media {
        position: relative !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__media .acme-product-card__wishlist {
        position: absolute !important;
        top: 1rem !important;
        right: 1rem !important;
        left: auto !important;
        bottom: auto !important;
        z-index: 4 !important;
        width: auto !important;
        height: auto !important;
        margin: 0 !important;
        flex: none !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__media .acme-product-card__wish-btn,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__media .acme-product-card__wishlist button {
        width: 1.75rem !important;
        height: 1.75rem !important;
        min-width: 1.75rem !important;
        min-height: 1.75rem !important;
        border: 0 !important;
        border-radius: 50% !important;
        background: rgba(0, 0, 0, 0.07) !important;
        box-shadow: 0 6px 6px rgba(0, 0, 0, 0.02) !important;
        color: rgba(0, 0, 0, 0.54) !important;
    }

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

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__cart {
        width: 100% !important;
        flex: 1 1 auto !important;
    }
}

/* MacBook Air 13–15" — thumb tile sizing (JS sets --acme-pdp-thumb-w from main image size) */
@media (min-width: 744px) and (max-width: 1799px) {
    body.acme-pdp-page .acme-pdp {
        --acme-pdp-thumb-w: 7rem;
    }
    body.acme-pdp-page .acme-pdp__gallery .snap-slider,
    body.acme-pdp-page .acme-pdp__gallery [data-slider-type="gallery"] {
        align-items: stretch !important;
    }
    body.acme-pdp-page .acme-pdp__gallery .snap-pager,
    body.acme-pdp-page .acme-pdp__gallery [data-pager] {
        width: var(--acme-pdp-thumb-w) !important;
        min-width: var(--acme-pdp-thumb-w) !important;
        max-width: var(--acme-pdp-thumb-w) !important;
        flex: 0 0 var(--acme-pdp-thumb-w) !important;
        align-self: stretch !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 0.5rem !important;
        visibility: visible !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 {
        width: var(--acme-pdp-thumb-w) !important;
        min-width: var(--acme-pdp-thumb-w) !important;
        max-width: var(--acme-pdp-thumb-w) !important;
        height: var(--acme-pdp-thumb-w) !important;
        min-height: var(--acme-pdp-thumb-w) !important;
        max-height: var(--acme-pdp-thumb-w) !important;
        flex: 0 0 var(--acme-pdp-thumb-w) !important;
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !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 {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        visibility: visible !important;
        opacity: 1 !important;
    }
    /* Single-image PDP: thumb column hidden — equalizeHeroHeights expands main (see audit-fixes.css) */
    body.acme-pdp-page .acme-pdp__gallery .snap-slider > .snap-pager {
        min-height: 0 !important;
        align-self: stretch !important;
        visibility: visible !important;
    }

    body.acme-pdp-page .acme-pdp__gallery [data-pager] {
        visibility: visible !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
    }

    body.acme-pdp-page .acme-pdp__gallery .snap-pager .snap-marker.stack 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 {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        min-width: 0 !important;
        min-height: 0 !important;
        object-fit: cover !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    body.acme-pdp-page .acme-pdp__gallery .snap-pager > [data-pager],
    body.acme-pdp-page .acme-pdp__gallery .snap-pager .snap-pager {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        flex: 0 0 auto !important;
        overflow: visible !important;
    }
}

/* v24 — PDP price ink: span.price always dark (not M16 gray) */
body.acme-pdp-page .acme-pdp__price-row .price-box .normal-price .price,
body.acme-pdp-page .acme-pdp__price-row .price-box .price-final_price .price,
body.acme-pdp-page .acme-pdp__price-row .price-box .final-price .price,
body.acme-pdp-page .acme-pdp__price-row .price-box .special-price .price,
body.acme-pdp-page .acme-pdp__price .price-box .normal-price .price,
body.acme-pdp-page .acme-pdp__price .price-box .price-final_price .price,
body.acme-pdp-page .acme-pdp__price .price-box .special-price .price,
body.acme-pdp-page .acme-pdp__price-row .special-price .price,
body.acme-pdp-page .acme-pdp__price .special-price .price,
body.acme-pdp-page span.price {
    color: #0f2d52 !important;
}

body.acme-pdp-page .acme-pdp__price-row .price-box .old-price .price,
body.acme-pdp-page .acme-pdp__price-row .old-price .price,
body.acme-pdp-page .acme-pdp__price .price-box .old-price .price,
body.acme-pdp-page .old-price .price {
    color: #374151 !important;
    text-decoration: line-through !important;
    text-decoration-color: #374151 !important;
}

/* v24 — Similar Products Figma 1019:1812 (desktop = Best Selling card chrome) */
body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .acme-product-price-unit {
    display: inline !important;
    font-weight: 400 !important;
    color: #0f2d52 !important;
    white-space: nowrap !important;
}

@media (min-width: 744px) {
    body.acme-pdp-page .acme-pdp-similar .acme-product-card,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card--similar {
        border-radius: 1rem !important;
        border: 1px solid #e8ecf0 !important;
        box-shadow: 0 2px 20px rgba(15, 45, 82, 0.06) !important;
        overflow: hidden !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__media,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__photo,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__photo img {
        border-radius: 1rem 1rem 0 0 !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .acme-product-price-unit {
        font-size: 1rem !important;
        line-height: 1.5rem !important;
    }
}

/* v25 — Tiers pinned above price inside buy; Similar card Figma 1019:1818 / 1019:1828 */
body.acme-pdp-page .acme-pdp__buy {
    display: flex !important;
    flex-direction: column !important;
    gap: 0.625rem !important;
}

body.acme-pdp-page .acme-pdp__buy > [data-acme-tier-host]:last-of-type,
body.acme-pdp-page .acme-pdp__buy > .acme-pdp__tiers:last-of-type {
    margin-bottom: 0 !important;
}

@media (min-width: 744px) {
    /* 1019:1818 — card info: title, 2-line meta, price */
    body.acme-pdp-page .acme-pdp-similar .acme-product-card,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card--similar {
        display: flex !important;
        flex-direction: column !important;
        height: 100% !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__info {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-areas:
            "name"
            "meta"
            "price" !important;
        gap: 0.4375rem !important;
        align-items: start !important;
        padding: 1rem 1rem 0.375rem !important;
        flex: 0 0 auto !important;
        min-height: 0 !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 {
        grid-area: name !important;
        margin: 0 !important;
        display: block !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        font-size: 1.125rem !important;
        line-height: 1.375rem !important;
        font-weight: 700 !important;
        color: #0f2d52 !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__name a {
        display: block !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        color: inherit !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__meta-slot,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__meta {
        grid-area: meta !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 0 !important;
        min-height: 2.5rem !important;
        max-height: 2.5rem !important;
        overflow: hidden !important;
        width: 100% !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__meta-line {
        display: block !important;
        width: 100% !important;
        min-height: 1.25rem !important;
        height: 1.25rem !important;
        margin: 0 !important;
        font-family: Inter, ui-sans-serif, sans-serif !important;
        font-size: 1rem !important;
        font-weight: 400 !important;
        line-height: 1.25rem !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:empty::before {
        content: "\00a0";
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price {
        grid-area: price !important;
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        align-items: baseline !important;
        gap: 0.5rem !important;
        width: 100% !important;
        margin: 0.15rem 0 0 !important;
        padding: 0 !important;
    }

    /* 1019:1828 — price row + full-width ATC */
    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,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .price-box .normal-price .price {
        font-size: 1.25rem !important;
        line-height: 2rem !important;
        font-weight: 700 !important;
        color: #0f2d52 !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .acme-product-price-unit {
        font-size: 1rem !important;
        line-height: 1.5rem !important;
        color: #0f2d52 !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .old-price .price {
        font-size: 0.875rem !important;
        line-height: 1.25rem !important;
        color: #6b7280 !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__actions {
        display: block !important;
        flex: 0 0 auto !important;
        width: 100% !important;
        margin-top: 0 !important;
        padding: 0.375rem 1rem 1rem !important;
        box-sizing: border-box !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__cart {
        display: flex !important;
        width: 100% !important;
        min-height: 2.75rem !important;
        height: 2.75rem !important;
        border-radius: 0.5rem !important;
        font-size: 1rem !important;
        font-weight: 600 !important;
    }

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

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__media .acme-product-card__wishlist {
        position: absolute !important;
        top: 1rem !important;
        right: 1rem !important;
        z-index: 4 !important;
    }
}

/* v26 — Similar cards: no stretch gap; MBA gallery hard cap wins over legacy blocks */
@media (min-width: 744px) {
    body.acme-pdp-page .acme-pdp-similar .acme-product-card,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card--similar {
        height: auto !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price {
        margin-top: 0 !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__actions {
        margin-top: 0 !important;
    }
}

@media (min-width: 744px) and (max-width: 1799px) {
    body.acme-pdp-page .acme-pdp {
        /* Densify-safe fallback — 711 blows past the 50% gallery half before equalize. */
        --acme-pdp-main-w: var(--acme-pdp-main-size, min(31rem, 42vw)) !important;
        --acme-pdp-main-h: var(--acme-pdp-main-size, auto) !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: 0 0 var(--acme-pdp-main-size, min(31rem, 42vw)) !important;
        width: var(--acme-pdp-main-size, min(31rem, 42vw)) !important;
        max-width: min(var(--acme-pdp-main-size, 31rem), calc(50vw - 8rem)) !important;
        min-width: 0 !important;
        max-height: min(var(--acme-pdp-main-size, 31rem), calc(50vw - 8rem)) !important;
        aspect-ratio: 1 / 1 !important;
    }
}

/* ========== v20 — mobile gallery visible 1:1 (override legacy 260px / 16.25rem) ========== */
@media (max-width: 743px) {
    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] {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
    }

    body.acme-pdp-page .acme-pdp__gallery .snap-slider > .relative {
        aspect-ratio: 1 / 1 !important;
        min-height: min(100vw - 2rem, 28rem) !important;
    }

    body.acme-pdp-page .acme-pdp__gallery #gallery-main,
    body.acme-pdp-page .acme-pdp__gallery [data-track] {
        position: absolute !important;
        inset: 0 !important;
        width: 100% !important;
        height: 100% !important;
        aspect-ratio: auto !important;
    }

    body.acme-pdp-page .acme-pdp__gallery #gallery-main img,
    body.acme-pdp-page .acme-pdp__gallery [data-track] img {
        object-fit: cover !important;
        object-position: left center !important;
    }
}


/* ========== v26 — tighten header/gallery whitespace; ensure ellipsis before Read More ========== */
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 {
    /* Block only — never shorthand-reset padding-inline (that blew out MBA rail). */
    padding-block: 0.5rem 0.35rem !important;
    min-height: 0 !important;
    margin-bottom: 0 !important;
}
body.acme-pdp-page .page-main,
body.acme-pdp-page .columns,
body.acme-pdp-page .column.main {
    padding-top: 0 !important;
}
body.acme-pdp-page .acme-pdp {
    margin-top: 0 !important;
    padding-top: 0 !important;
}
body.acme-pdp-page .acme-pdp__hero {
    margin-top: 0 !important;
    padding-top: 0 !important;
}
.acme-pdp-prose__ellipsis {
    display: inline !important;
    font-weight: 700 !important;
    letter-spacing: 0.02em !important;
}
.acme-pdp-prose:not(.is-expanded) .acme-pdp-prose__more {
    display: none !important;
}
.acme-pdp-prose:not(.is-expanded) .acme-pdp-prose__actions {
    display: inline !important;
    margin-left: 0.15rem !important;
}

/* ========== v52 — desktop PDP: more equal space above/below breadcrumbs ========== */
@media (min-width: 744px) {
    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,
    body.catalog-product-view .breadcrumbs,
    body.catalog-product-view .acme-breadcrumbs {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important;
        min-height: 0 !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }
}

/* ========== v53 — pin qty/ATC to column end (NO attribute scroll — matches desktop) ========== */
@media (min-width: 744px) {
    body.acme-pdp-page .acme-pdp__info {
        /* Height from equalizeHeroHeights / --acme-pdp-main-size — not a dvh clip */
        min-height: 0 !important;
        overflow: visible !important;
    }
    body.acme-pdp-page .acme-pdp__panel {
        height: 100% !important;
        max-height: 100% !important;
        min-height: 0 !important;
        overflow: visible !important;
        display: flex !important;
        flex-direction: column !important;
    }
    body.acme-pdp-page .acme-pdp__options-wrap {
        flex: 1 1 auto !important;
        min-height: 0 !important;
        /* Both axes visible — x:hidden + y:visible computes to y:auto (scroll) */
        overflow: visible !important;
        overflow-x: visible !important;
        overflow-y: visible !important;
    }
    body.acme-pdp-page .acme-pdp__buy {
        flex: 0 0 auto !important;
        margin-top: auto !important;
        overflow: visible !important;
        position: relative !important;
        z-index: 5 !important;
    }
}

/* ========== v55 — >3 rows: col1=1st/2nd/3rd, col2=4th at top; rows size to content ========== */
@media (min-width: 744px) {
    body.acme-pdp-page.acme-pdp--expand-options .acme-pdp__info,
    html body.acme-pdp-page.acme-pdp--expand-options .acme-pdp__info {
        overflow: visible !important;
        height: auto !important;
        max-height: none !important;
    }
    body.acme-pdp-page.acme-pdp--expand-options .acme-pdp__panel,
    html body.acme-pdp-page.acme-pdp--expand-options .acme-pdp__panel {
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
        display: flex !important;
        flex-direction: column !important;
    }
    body.acme-pdp-page.acme-pdp--expand-options .acme-pdp__options-wrap,
    html body.acme-pdp-page.acme-pdp--expand-options .acme-pdp__options-wrap {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        grid-auto-rows: auto !important;
        column-gap: 1.25rem !important;
        row-gap: 1.5rem !important;
        align-items: start !important;
        align-content: start !important;
        flex: 0 0 auto !important;
        min-height: auto !important;
        max-height: none !important;
        overflow: visible !important;
        width: 100% !important;
    }
    body.acme-pdp-page.acme-pdp--expand-options .acme-pdp__options-wrap > form,
    body.acme-pdp-page.acme-pdp--expand-options .acme-pdp__options-wrap > .mb-6,
    body.acme-pdp-page.acme-pdp--expand-options .acme-pdp__options-wrap .acme-pdp__options,
    body.acme-pdp-page.acme-pdp--expand-options .acme-pdp__options-wrap .product-options-wrapper,
    body.acme-pdp-page.acme-pdp--expand-options .acme-pdp__options-wrap fieldset,
    html body.acme-pdp-page.acme-pdp--expand-options .acme-pdp__options-wrap > form,
    html body.acme-pdp-page.acme-pdp--expand-options .acme-pdp__options-wrap > .mb-6,
    html body.acme-pdp-page.acme-pdp--expand-options .acme-pdp__options-wrap .acme-pdp__options,
    html body.acme-pdp-page.acme-pdp--expand-options .acme-pdp__options-wrap .product-options-wrapper,
    html body.acme-pdp-page.acme-pdp--expand-options .acme-pdp__options-wrap fieldset {
        display: contents !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
    }
    body.acme-pdp-page.acme-pdp--expand-options .acme-pdp__gallery-hint,
    html body.acme-pdp-page.acme-pdp--expand-options .acme-pdp__gallery-hint {
        grid-column: 1 / -1 !important;
    }
    body.acme-pdp-page.acme-pdp--expand-options .acme-pdp__option-group,
    html body.acme-pdp-page.acme-pdp--expand-options .acme-pdp__option-group {
        width: auto !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }
    body.acme-pdp-page.acme-pdp--expand-options .acme-pdp__option-pills--display-only,
    html body.acme-pdp-page.acme-pdp--expand-options .acme-pdp__option-pills--display-only {
        flex-wrap: wrap !important;
    }
    body.acme-pdp-page.acme-pdp--expand-options .acme-pdp__buy,
    html body.acme-pdp-page.acme-pdp--expand-options .acme-pdp__buy {
        margin-top: auto !important;
        flex: 0 0 auto !important;
    }
}

/* ========== v56 — qty menu escapes pinned buy clip; Similar cut price above ========== */
@media (min-width: 744px) {
    /* v53 pins options with overflow:hidden — lift clip while qty menu is open */
    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__buy:has(.acme-pdp__qty-menu.is-open),
    body.acme-pdp-page .acme-pdp__actions:has(.acme-pdp__qty-menu.is-open),
    body.acme-pdp-page .acme-pdp__qty:has(.acme-pdp__qty-menu.is-open) {
        overflow: visible !important;
        z-index: 40 !important;
    }
    body.acme-pdp-page .acme-pdp__qty-menu.is-open {
        z-index: 50 !important;
    }
}

/* Similar: cut ABOVE current — mobile only. Desktop keeps cut to the RIGHT of visible price. */
@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;
        flex-wrap: nowrap !important;
        align-items: flex-start !important;
        justify-content: flex-start !important;
        gap: 0.15rem !important;
        overflow: visible !important;
        white-space: normal !important;
        max-width: 100% !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .old-price,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price span.old-price {
        order: -1 !important;
        display: block !important;
        width: auto !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        white-space: nowrap !important;
        overflow: visible !important;
        text-decoration: none !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .old-price .price,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .old-price .price-wrapper,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .old-price .price-container {
        display: inline !important;
        font-size: 0.875rem !important;
        line-height: 1.25rem !important;
        font-weight: 400 !important;
        color: #6b7280 !important;
        text-decoration: line-through !important;
        text-decoration-thickness: 1px !important;
        white-space: nowrap !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-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: baseline !important;
        gap: 0.25rem !important;
        width: auto !important;
        max-width: 100% !important;
        white-space: nowrap !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .special-price .acme-price-amount-line,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .normal-price .acme-price-amount-line {
        display: inline-flex !important;
        flex-direction: row !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 .special-price .price,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .normal-price .price {
        white-space: nowrap !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .acme-product-price-unit {
        display: inline !important;
        white-space: nowrap !important;
        flex-shrink: 0 !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;
    }
}

/* Desktop Similar: visible price then cut price to the right (same row) */
@media (min-width: 744px) {
    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: row !important;
        flex-wrap: wrap !important;
        align-items: baseline !important;
        justify-content: flex-start !important;
        gap: 0.35rem !important;
        overflow: visible !important;
        white-space: nowrap !important;
        max-width: 100% !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-direction: row !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 .old-price,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price span.old-price {
        order: 2 !important;
        display: inline-flex !important;
        align-items: baseline !important;
        margin: 0 !important;
        padding: 0 !important;
        white-space: nowrap !important;
        text-decoration: none !important;
    }

    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .old-price .price,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .old-price .price-wrapper,
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__price .old-price .price-container {
        display: inline !important;
        font-size: 0.875rem !important;
        line-height: 1.25rem !important;
        font-weight: 400 !important;
        color: #6b7280 !important;
        text-decoration: line-through !important;
        text-decoration-thickness: 1px !important;
        white-space: nowrap !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 .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 — consistent 1:1 media frame on every card (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 {
    position: relative !important;
    aspect-ratio: 1 / 1 !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,
body.acme-pdp-page .acme-pdp-similar .acme-product-card__media > a,
body.acme-pdp-page .acme-pdp-similar .product-image-container,
body.acme-pdp-page .acme-pdp-similar .product-image-wrapper {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !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 {
    position: absolute !important;
    inset: 0 !important;
    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) {
    /* Keep 1:1 frame on phone — do not collapse to natural image height */
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__media {
        flex: 0 0 auto !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        aspect-ratio: 1 / 1 !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: center !important;
        gap: 0.2rem !important;
    }
    body.acme-pdp-page .acme-pdp__price-row .acme-product-price-unit {
        line-height: 1 !important;
        vertical-align: middle !important;
        align-self: center !important;
    }
    body.acme-pdp-page .acme-pdp__price-row {
        grid-column: 1 !important;
        grid-row: auto !important;
        display: flex !important;
        align-items: center !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: center !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"
            "hint hint"
            "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__actions-hint {
        grid-area: hint !important;
        grid-column: 1 / -1 !important;
        order: unset !important;
        text-align: right !important;
        width: 100% !important;
    }
    body.acme-pdp-page .acme-pdp__actions-hint:not(.is-prompt),
    body.acme-pdp-page .acme-pdp__actions-hint[hidden] {
        display: none !important;
        margin: 0 !important;
        padding: 0 !important;
        min-height: 0 !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;
    }
}

/* ========== v60 — price inside actions; mobile price|qty; desktop mega/qty; similar natural ========== */
@media (min-width: 744px) {
    body.acme-pdp-page .acme-pdp__info,
    body.acme-pdp-page .acme-pdp__panel,
    body.acme-pdp-page .acme-pdp__hero,
    body.acme-pdp-page .acme-pdp__buy,
    body.acme-pdp-page .acme-pdp__actions,
    body.acme-pdp-page .acme-pdp__qty {
        overflow: visible !important;
        overflow-y: visible !important;
    }
    /* Buy below header sticky (80) so open mega overlays tiers; qty-menu keeps own high z */
    body.acme-pdp-page .acme-header__sticky,
    body.acme-pdp-page .acme-header__sticky-bar {
        z-index: 80 !important;
    }
    body.acme-pdp-page .acme-header__sticky-bar.is-pinned {
        z-index: 90 !important;
    }
    body.acme-pdp-page .acme-mega-panel:not([hidden]):not(.acme-mega-panel--leave-end) {
        z-index: 85 !important;
    }
    body.acme-pdp-page .acme-pdp__buy {
        position: relative !important;
        z-index: 20 !important;
    }
    body.acme-pdp-page .acme-pdp__actions {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        align-items: stretch !important;
        gap: 1rem !important;
        width: 100% !important;
    }
    body.acme-pdp-page .acme-pdp__price-row {
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: 100% !important;
        order: -1 !important;
        justify-content: flex-start !important;
        text-align: left !important;
        margin: 0 !important;
    }
    body.acme-pdp-page .acme-pdp__qty-menu,
    body.acme-pdp-page .acme-pdp__qty-menu.is-open,
    body.acme-pdp-page .acme-pdp__qty-menu.opens-down {
        z-index: 260 !important;
        max-height: 14rem !important;
    }
    body.acme-pdp-page .acme-mega-panel--leave-end,
    body.acme-pdp-page .acme-mega-panel[hidden],
    body.acme-pdp-page .acme-mega-panel[style*="display: none"],
    body.acme-pdp-page .acme-mega-panel[style*="display:none"] {
        pointer-events: none !important;
        visibility: hidden !important;
    }
}
@media (max-width: 743px) {
    body.acme-pdp-page .acme-pdp__buy {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        width: 100% !important;
        gap: 0.75rem !important;
    }
    body.acme-pdp-page .acme-pdp__actions {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        grid-template-areas:
            "price qty"
            "atc atc" !important;
        align-items: center !important;
        column-gap: 0.75rem !important;
        row-gap: 0.75rem !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        min-height: 0 !important;
    }
    body.acme-pdp-page .acme-pdp__price-row {
        grid-area: price !important;
        justify-self: start !important;
        justify-content: flex-start !important;
        text-align: left !important;
        width: max-content !important;
        max-width: 100% !important;
        margin: 0 !important;
        order: 0 !important;
        flex: none !important;
    }
    body.acme-pdp-page .acme-pdp__qty {
        grid-area: qty !important;
        justify-self: end !important;
        width: auto !important;
        margin: 0 !important;
    }
    body.acme-pdp-page .acme-pdp__atc {
        grid-area: atc !important;
        width: 100% !important;
        max-width: 100% !important;
    }
    body.acme-pdp-page .acme-pdp-similar,
    body.acme-pdp-page .acme-pdp__similar {
        padding: 1rem 1rem 0.5rem !important;
        margin-bottom: 0 !important;
    }
    body.acme-pdp-page .acme-pdp,
    body.acme-pdp-page .product-info-main {
        padding-bottom: 1.25rem !important;
    }
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__media {
        position: relative !important;
        flex: 0 0 auto !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        aspect-ratio: 1 / 1 !important;
        overflow: hidden !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: static !important;
        inset: auto !important;
        height: auto !important;
        width: 100% !important;
    }
    body.acme-pdp-page .acme-pdp-similar .acme-product-card__media img,
    body.acme-pdp-page .acme-pdp-similar .product-image-photo {
        position: static !important;
        width: 100% !important;
        height: auto !important;
        max-height: none !important;
        object-fit: contain !important;
    }
}

/* v62 — PDP no inner scroll: grow with page (Belem / tall option stacks) */
@media (min-width: 744px) {
    body.acme-pdp-page .acme-pdp__info,
    body.acme-pdp-page .acme-pdp__panel,
    body.acme-pdp-page.acme-pdp--expand-options .acme-pdp__info,
    body.acme-pdp-page.acme-pdp--expand-options .acme-pdp__panel,
    html body.acme-pdp-page.acme-pdp--expand-options .acme-pdp__info,
    html body.acme-pdp-page.acme-pdp--expand-options .acme-pdp__panel {
        max-height: none !important;
        height: auto !important;
        overflow: visible !important;
        overflow-y: visible !important;
    }
    body.acme-pdp-page .acme-pdp__options-wrap,
    body.acme-pdp-page.acme-pdp--expand-options .acme-pdp__options-wrap,
    html body.acme-pdp-page.acme-pdp--expand-options .acme-pdp__options-wrap {
        flex: 0 1 auto !important;
        max-height: none !important;
        overflow: visible !important;
        overflow-y: visible !important;
    }
}

/* ==========================================================================
   v63 — tiers nudge + sparse tier cols + tablet thumbs-left gallery
   ========================================================================== */

/* Single/dual tier cards must fill the brand+cols rail (not leave empty 3-col tracks). */
body.acme-pdp-page .acme-pdp-tiers__cols:has(> .acme-pdp-tiers__col:only-child) {
    grid-template-columns: minmax(0, 1fr) !important;
}
body.acme-pdp-page .acme-pdp-tiers__cols:has(> .acme-pdp-tiers__col:nth-child(2):last-child) {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

/* Nudge Buy More / tiers slightly down without exceeding gallery / causing panel scroll. */
@media (min-width: 744px) {
    body.acme-pdp-page .acme-pdp__buy {
        margin-top: 0.75rem !important;
        padding-top: 0 !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 {
        margin-top: 0 !important;
        margin-bottom: 0.625rem !important;
    }
    /* Keep buy cluster inside hero: no overflow scroll on info when tiers drop. */
    body.acme-pdp-page .acme-pdp__info,
    body.acme-pdp-page .acme-pdp__panel {
        overflow: visible !important;
        overflow-y: visible !important;
        max-height: none !important;
    }
}

/*
 * Tablet (768–1023): thumbs LEFT of main image; shrink main so gallery
 * fits the confined hero width (override phone “thumbs below” stack).
 */
@media (min-width: 744px) and (max-width: 743px) {
    body.acme-pdp-page .acme-pdp__gallery .snap-slider,
    body.acme-pdp-page .acme-pdp__gallery [data-slider-type="gallery"] {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: flex-start !important;
        gap: 0.75rem !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !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] {
        display: flex !important;
        flex-direction: column !important;
        flex: 0 0 4.5rem !important;
        width: 4.5rem !important;
        min-width: 4.5rem !important;
        max-width: 4.5rem !important;
        order: 0 !important;
        height: auto !important;
        max-height: min(22rem, 55vw) !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        gap: 0.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,
    body.acme-pdp-page .acme-pdp__gallery .snap-pager button.snap-marker {
        flex: 0 0 4.5rem !important;
        width: 4.5rem !important;
        height: 4.5rem !important;
        min-width: 4.5rem !important;
        max-width: 4.5rem !important;
        min-height: 4.5rem !important;
        max-height: 4.5rem !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] {
        order: 1 !important;
        flex: 1 1 auto !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: min(22rem, calc(100% - 5.25rem)) !important;
        height: auto !important;
        max-height: min(22rem, 55vw) !important;
        min-height: 0 !important;
        aspect-ratio: 1 / 1 !important;
        overflow: hidden !important;
    }

    body.acme-pdp-page .acme-pdp__gallery #gallery-main img,
    body.acme-pdp-page .acme-pdp__gallery [data-track] img {
        width: 100% !important;
        height: 100% !important;
        object-fit: contain !important;
    }
}

/*
 * MBA 13 + 15 — desktop control sizes (must be last in this file).
 * Trust 2.5rem + tiers 78px + option pills 37px — same as ≥1800.
 * No vh-squash of pills (that made tiers look disproportionately huge).
 */
@media (min-width: 744px) and (max-width: 1799px) {
    html body.acme-pdp-page .acme-pdp__hero {
        gap: clamp(1rem, 0.75rem + 0.6vw, 1.5rem) !important;
    }

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

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

    html body.acme-pdp-page .acme-pdp__badges {
        margin-top: 0.5rem !important;
        gap: 0.5rem !important;
    row-gap: 0.5rem !important;
    column-gap: 0.5rem !important;
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        grid-auto-rows: 2.5rem !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
    }
    html body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--four,
    html body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--two {
        grid-template-rows: repeat(2, 2.5rem) !important;
    }
    html body.acme-pdp-page .acme-pdp__badges > .acme-pdp__badge:nth-child(n + 3),
    html body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--two > .acme-pdp__badge:nth-child(n + 3) {
        display: flex !important;
    }
    html body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--four > .acme-pdp__badge:nth-child(n + 5),
    html body.acme-pdp-page .acme-pdp__badges > .acme-pdp__badge:nth-child(n + 5) {
        display: none !important;
    }

    html body.acme-pdp-page .acme-pdp__badge {
        min-height: 2.5rem !important;
        max-height: 2.5rem !important;
        height: 2.5rem !important;
        padding: 6px 12px !important;
        gap: 0.5rem !important;
        border-radius: 0.5rem !important;
        overflow: hidden !important; /* text ellipsis only — grid stays visible */
        align-items: center !important;
    }

    html body.acme-pdp-page .acme-pdp__badge-icon,
    html body.acme-pdp-page .acme-pdp__badge-icon svg {
        width: 1.25rem !important;
        height: 1.25rem !important;
    }

    html body.acme-pdp-page .acme-pdp__badge-text {
        font-size: 0.8125rem !important;
        line-height: 1.25rem !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

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

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

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

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

    html body.acme-pdp-page .acme-pdp__option-pills {
        gap: 0.5rem !important;
    }

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

    html body.acme-pdp-page .acme-pdp__option-pills [role="option"],
    html body.acme-pdp-page .acme-pdp__option-pills button,
    html body.acme-pdp-page .acme-pdp__pill,
    html body.acme-pdp-page button.acme-pdp__pill,
    html body.acme-pdp-page .acme-pdp__swatch {
        min-height: 33px !important;
        height: auto !important;
        max-height: none !important;
        padding: 6px 9.6px !important;
        font-size: 16px !important;
        line-height: 1.2 !important;
        white-space: normal !important;
        overflow-wrap: break-word !important;
    }

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

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

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

    html body.acme-pdp-page .acme-pdp-tiers__brand {
        height: 78px !important;
        min-height: 78px !important;
        max-height: 78px !important;
        padding: 8px 6px !important;
    }

    html body.acme-pdp-page .acme-pdp-tiers__cols {
        gap: 0.5rem !important;
    }

    html body.acme-pdp-page .acme-pdp-tiers__col {
        min-height: 78px !important;
        height: 78px !important;
        max-height: 78px !important;
        padding: 8px 6px !important;
    }

    html body.acme-pdp-page .acme-pdp-tiers__qty,
    html body.acme-pdp-page .acme-pdp-tiers__price,
    html body.acme-pdp-page .acme-pdp-tiers__price .price,
    html body.acme-pdp-page .acme-pdp-tiers__unit {
        font-size: 14px !important;
        line-height: 1.2 !important;
        white-space: nowrap !important;
    }

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

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

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

    /* Figma info rail ~527 — panel is nested inside info, so keep it 100% of parent. */
    html body.acme-pdp-page .acme-pdp__info {
        max-width: min(32.9375rem, 100%) !important;
        overflow: visible !important;
        max-height: none !important;
    }
    html body.acme-pdp-page .acme-pdp__info > .acme-pdp__panel,
    html body.acme-pdp-page .acme-pdp__panel {
        max-width: 100% !important;
        width: 100% !important;
        overflow: visible !important;
        max-height: none !important;
    }
}

/* MBA 13 + 15 densify — ATC in first fold; trust/tiers stay desktop sizes */
@media (min-width: 744px) and (max-width: 1799px) and (max-height: 1100px) {
    /*
     * Beat the MBA-width 527px info cap — densify is 50/50 gallery|info.
     * Exact px come from equalize; this unlocks half-width before JS.
     */
    html body.acme-pdp-page:not(.acme-pdp--tablet-stack) .acme-pdp__gallery {
        flex: 0 0 calc((100% - var(--acme-pdp-gap, 0.65rem)) / 2) !important;
        width: calc((100% - var(--acme-pdp-gap, 0.65rem)) / 2) !important;
        max-width: calc((100% - var(--acme-pdp-gap, 0.65rem)) / 2) !important;
        overflow: hidden !important;
    }
    html body.acme-pdp-page .acme-pdp__info,
    html body.acme-pdp-page:not(.acme-pdp--expand-options) .acme-pdp__info,
    html body.acme-pdp-page:not(.acme-pdp--tablet-stack) .acme-pdp__info {
        flex: 0 0 calc((100% - var(--acme-pdp-gap, 0.65rem)) / 2) !important;
        width: calc((100% - var(--acme-pdp-gap, 0.65rem)) / 2) !important;
        max-width: calc((100% - var(--acme-pdp-gap, 0.65rem)) / 2) !important;
        position: relative !important;
        z-index: 5 !important;
        background: #fff !important;
    }
    /* Compact crumbs — free fold for desktop-like ATC air on MBA 13/15 */
    html body.acme-pdp-page .breadcrumbs,
    html body.acme-pdp-page .acme-breadcrumbs,
    html body.acme-pdp-page .acme-pdp-breadcrumbs,
    html body.acme-pdp-page .top-container .breadcrumbs {
        padding-top: 0.5rem !important;
        padding-bottom: 0.5rem !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }
    html body.acme-pdp-page .acme-pdp__panel { gap: 0.35rem !important; }
    html body.acme-pdp-page .acme-pdp__header { gap: 0.15rem !important; }
    html body.acme-pdp-page .acme-pdp__badges {
        margin-top: 0.25rem !important;
        gap: 0.35rem !important;
    row-gap: 0.35rem !important;
    column-gap: 0.35rem !important;
        grid-auto-rows: 2.5rem !important;
        height: auto !important;
        max-height: none !important;
    }
    html body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--four,
    html body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--two {
        grid-template-rows: repeat(2, 2.5rem) !important;
    }
    html body.acme-pdp-page .acme-pdp__badges > .acme-pdp__badge:nth-child(n + 3),
    html body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--two > .acme-pdp__badge:nth-child(n + 3) {
        display: flex !important;
    }
    html body.acme-pdp-page .acme-pdp__badge {
        min-height: 2.5rem !important;
        max-height: 2.5rem !important;
        height: 2.5rem !important;
    }
    html body.acme-pdp-page .acme-pdp__title,
    html body.acme-pdp-page .acme-pdp__title-wrap .page-title {
        font-size: clamp(1.15rem, 0.85rem + 0.7vw, 1.5rem) !important;
        line-height: 1.15 !important;
    }
    /* MBA 13: attributes + titles visible, fill options slot, never scroll */
    html body.acme-pdp-page .acme-pdp__options-wrap {
        margin-top: 0.75rem !important;
        flex: 1 1 auto !important;
        min-height: 0 !important;
        max-height: none !important;
        display: flex !important;
        flex-direction: column !important;
        overflow: visible !important;
        overflow-x: visible !important;
        overflow-y: visible !important;
        gap: 0.5rem !important;
        row-gap: 0.5rem !important;
    }
    html body.acme-pdp-page .acme-pdp__options,
    html body.acme-pdp-page .acme-pdp__options-wrap .product-options-wrapper {
        flex: 1 1 auto !important;
        min-height: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: space-evenly !important;
        gap: 0.5rem !important;
        row-gap: 0.5rem !important;
        overflow: visible !important;
        overflow-y: visible !important;
        max-height: none !important;
    }
    html body.acme-pdp-page .acme-pdp__option-group { gap: 0.25rem !important; margin: 0 !important; flex: 0 0 auto !important; }
    html body.acme-pdp-page .acme-pdp__option-label {
        font-size: 0.75rem !important;
        line-height: 1.15 !important;
        margin: 0 !important;
    }
    html body.acme-pdp-page .acme-pdp__option-pills {
        gap: 0.3rem !important;
        min-height: 1.75rem !important;
        flex-wrap: wrap !important;
    }
    html body.acme-pdp-page .acme-pdp__option-pills [role="option"],
    html body.acme-pdp-page .acme-pdp__option-pills button,
    html body.acme-pdp-page .acme-pdp__pill,
    html body.acme-pdp-page button.acme-pdp__pill,
    html body.acme-pdp-page .acme-pdp__swatch {
        min-height: 28px !important;
        height: auto !important;
        max-height: none !important;
        padding: 6px 10px !important;
        font-size: 13px !important;
        line-height: 1.1 !important;
    }
    html body.acme-pdp-page .acme-pdp-tiers__brand,
    html body.acme-pdp-page .acme-pdp-tiers__col {
        height: 78px !important;
        min-height: 78px !important;
        max-height: 78px !important;
    }
    html body.acme-pdp-page .acme-pdp__buy { gap: 0.35rem !important; }
    html body.acme-pdp-page .acme-pdp-tiers,
    html body.acme-pdp-page .acme-pdp__tiers { margin-bottom: 0.25rem !important; }
    html body.acme-pdp-page .acme-pdp__price-row,
    html body.acme-pdp-page .acme-pdp__price-row .price-box .price,
    html body.acme-pdp-page .acme-pdp__price-row .price {
        font-size: 1.35rem !important;
        line-height: 1.1 !important;
    }
    html body.acme-pdp-page .acme-pdp__actions,
    html body.acme-pdp-page .acme-pdp__qty-atc { gap: 0.4rem !important; }
    html body.acme-pdp-page .acme-pdp__atc,
    html body.acme-pdp-page button.acme-pdp__atc {
        min-height: 2.5rem !important;
        font-size: 0.875rem !important;
        padding-block: 0.45rem !important;
    }
    html body.acme-pdp-page .acme-pdp__qty,
    html body.acme-pdp-page .acme-pdp__qty-option { min-height: 2.5rem !important; }
}

/* ========== v70 — hub: hide SKU + tiers; keep price / qty / ATC visible (ATC inert) ========== */
body.acme-pdp-page .acme-pdp__badges,
html body.acme-pdp-page .acme-pdp__badges {
    margin-top: 0.75rem !important;
}
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__panel--configurable .acme-pdp__sku,
body.acme-pdp-page .acme-pdp__panel--configurable:not(.acme-pdp__panel--child-selected) .acme-pdp__sku,
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__panel--configurable .acme-pdp__buy [data-acme-tier-host],
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__panel--configurable .acme-pdp__buy .acme-pdp__tiers,
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__panel--configurable .acme-pdp__buy .acme-pdp-tiers,
body.acme-pdp-page .acme-pdp__panel--configurable:not(.acme-pdp__panel--child-selected) .acme-pdp__buy [data-acme-tier-host],
body.acme-pdp-page .acme-pdp__panel--configurable:not(.acme-pdp__panel--child-selected) .acme-pdp__buy .acme-pdp__tiers,
body.acme-pdp-page .acme-pdp__panel--configurable:not(.acme-pdp__panel--child-selected) .acme-pdp__buy .acme-pdp-tiers {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
}
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__panel--configurable .acme-pdp__buy,
body.acme-pdp-page .acme-pdp__panel--configurable:not(.acme-pdp__panel--child-selected) .acme-pdp__buy {
    display: flex !important;
    visibility: visible !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    pointer-events: auto !important;
}
/* Hub: ATC / qty stay clickable — click shows “Please select…” on all missing pills */
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__panel--configurable .acme-pdp__atc,
body.acme-pdp-page .acme-pdp__panel--configurable:not(.acme-pdp__panel--child-selected) .acme-pdp__atc,
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__panel--configurable .acme-pdp__atc.is-hub-blocked,
body.acme-pdp-page .acme-pdp__panel--configurable:not(.acme-pdp__panel--child-selected) .acme-pdp__atc.is-hub-blocked {
    cursor: pointer !important;
    opacity: 0.7 !important;
    pointer-events: auto !important;
}
/* Hub: Add to List blurred but clickable — same soft-prompt as ATC */
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__panel--configurable .acme-pdp__list-btn,
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__panel--configurable .acme-pdp__list-btn.is-hub-blocked,
body.acme-pdp-page .acme-pdp__panel--configurable:not(.acme-pdp__panel--child-selected) .acme-pdp__list-btn,
body.acme-pdp-page .acme-pdp__list-btn.is-hub-blocked {
    opacity: 0.45 !important;
    filter: grayscale(0.15) blur(0.4px) !important;
    cursor: pointer !important;
    pointer-events: auto !important;
}

/* Hub / MBA: keep natural vertical gap between pill rows (no space-between stretch) */
@media (min-width: 744px) and (max-width: 1799px) {
    html body.acme-pdp-page .acme-pdp__options--attrs-3,
    html body.acme-pdp-page .acme-pdp__options:not(.acme-pdp__options--attrs-3) {
        flex: none !important;
        min-height: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: flex-start !important;
        gap: 1.75rem !important;
        row-gap: 1.75rem !important;
    }
}

/*
 * Tablets — iPad Mini / Surface Pro 10 / iPad Pro 13 (portrait + landscape).
 * Gallery full width; info below. Also body.acme-pdp--tablet-stack from equalize JS.
 * NEVER bare max-width:1376 — that stacked MBA / 1366 laptops (fine pointer).
 */
@media (max-width: 743px),
       (max-width: 1376px) and (hover: none),
       (max-width: 1376px) and (pointer: coarse),
       (max-width: 1440px) and (orientation: portrait) and (hover: none),
       (max-width: 1440px) and (orientation: portrait) and (pointer: coarse),
       (max-width: 1511px) and (hover: none),
       (max-width: 1511px) and (pointer: coarse) {
    /* Gallery full-bleed width; product info stacked below */
    html body.acme-pdp-page .acme-pdp__hero,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__hero {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 0 !important;
        width: 100% !important;
        height: auto !important;
        max-height: none !important;
    }
    html body.acme-pdp-page .acme-pdp__gallery,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__gallery {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 auto !important;
        order: 1 !important;
        height: auto !important;
        max-height: none !important;
    }
    /* Phone ≤743: thumbs above/below handled in mobile block. Tablets: thumbs left, main right. */
    html body.acme-pdp-page .acme-pdp__gallery .snap-slider,
    html body.acme-pdp-page .acme-pdp__gallery [data-slider-type="gallery"] {
        flex-direction: row !important;
        align-items: flex-start !important;
        width: 100% !important;
        height: auto !important;
        gap: 0.75rem !important;
    }
    html body.acme-pdp-page .acme-pdp__gallery .snap-pager,
    html body.acme-pdp-page .acme-pdp__gallery [data-pager] {
        order: 1 !important;
        flex: 0 0 auto !important;
        width: 5.5rem !important;
        min-width: 5.5rem !important;
        max-width: 5.5rem !important;
        flex-direction: column !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        height: auto !important;
        max-height: min(70vw, 32rem) !important;
        gap: 0.5rem !important;
    }
    html body.acme-pdp-page .acme-pdp {
        --acme-pdp-thumb-w: 5.5rem;
    }
    html body.acme-pdp-page .acme-pdp__gallery .snap-pager .snap-marker,
    html body.acme-pdp-page .acme-pdp__gallery .snap-pager a.snap-marker,
    html body.acme-pdp-page .acme-pdp__gallery .snap-pager button.snap-marker {
        width: 5.5rem !important;
        min-width: 5.5rem !important;
        max-width: 5.5rem !important;
        height: 5.5rem !important;
        min-height: 5.5rem !important;
        max-height: 5.5rem !important;
        flex: 0 0 5.5rem !important;
    }
    html body.acme-pdp-page .acme-pdp__gallery .snap-slider > .relative,
    html body.acme-pdp-page .acme-pdp__gallery #gallery-main,
    html body.acme-pdp-page .acme-pdp__gallery [data-track] {
        order: 2 !important;
        flex: 1 1 auto !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        aspect-ratio: 1 / 1 !important;
        height: auto !important;
        max-height: none !important;
    }
}
/* Phone keeps column gallery (thumbs strip); tablets above keep thumbs|main row */
@media (max-width: 743px) {
    html body.acme-pdp-page .acme-pdp {
        --acme-pdp-thumb-w: 4.5rem;
    }
    html body.acme-pdp-page .acme-pdp__gallery .snap-slider,
    html body.acme-pdp-page .acme-pdp__gallery [data-slider-type="gallery"] {
        flex-direction: column !important;
        align-items: stretch !important;
    }
    html body.acme-pdp-page .acme-pdp__gallery .snap-pager,
    html body.acme-pdp-page .acme-pdp__gallery [data-pager] {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        max-height: none !important;
        flex-direction: row !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
    }
    html body.acme-pdp-page .acme-pdp__gallery .snap-slider > .relative,
    html body.acme-pdp-page .acme-pdp__gallery #gallery-main,
    html body.acme-pdp-page .acme-pdp__gallery [data-track] {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 auto !important;
    }
}

@media (max-width: 743px),
       (max-width: 1376px) and (hover: none),
       (max-width: 1376px) and (pointer: coarse),
       (max-width: 1440px) and (orientation: portrait) and (hover: none),
       (max-width: 1440px) and (orientation: portrait) and (pointer: coarse),
       (max-width: 1511px) and (hover: none),
       (max-width: 1511px) and (pointer: coarse) {
    /* Prevent attribute pills overlapping tiers/ATC — touch tablets only (not MBA). */
    html body.acme-pdp-page .acme-pdp__info,
    html body.acme-pdp-page .acme-pdp__panel,
    html body.acme-pdp-page:not(.acme-pdp--expand-options) .acme-pdp__info,
    html body.acme-pdp-page:not(.acme-pdp--expand-options) .acme-pdp__panel,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__info,
    html body.acme-pdp-page.acme-pdp--tablet-stack .acme-pdp__panel {
        height: auto !important;
        max-height: none !important;
        min-height: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        overflow: visible !important;
        order: 2 !important;
    }
    html body.acme-pdp-page .acme-pdp__options-wrap,
    html body.acme-pdp-page:not(.acme-pdp--expand-options) .acme-pdp__options-wrap {
        flex: 0 0 auto !important;
        overflow: visible !important;
    }
    html body.acme-pdp-page .acme-pdp__options--attrs-3 {
        justify-content: flex-start !important;
        gap: 1rem !important;
    }
    html body.acme-pdp-page .acme-pdp__buy {
        margin-top: 1.25rem !important;
        position: relative !important;
        z-index: 2 !important;
        background: #fff !important;
    }

    /* Badges: leave alone — use desktop/MBA badge rules (do not restyle on tablets). */

    html body.acme-pdp-page .acme-pdp__option-pills {
        gap: 0.5rem !important;
    }
    html body.acme-pdp-page .acme-pdp__option-pills [role="option"],
    html body.acme-pdp-page .acme-pdp__option-pills button,
    html body.acme-pdp-page .acme-pdp__pill,
    html body.acme-pdp-page button.acme-pdp__pill,
    html body.acme-pdp-page .acme-pdp__swatch {
        min-height: 2.5rem !important; /* touch-friendly on tablets */
        height: auto !important;
        max-height: none !important;
        padding: 0.625rem 0.875rem !important;
        font-size: 0.9375rem !important;
        line-height: 1.2 !important;
    }

    html body.acme-pdp-page .acme-pdp__buy {
        display: flex !important;
        flex-direction: column !important;
        gap: 0.75rem !important;
        margin-top: 1.25rem !important; /* stacked: real gap under pills, not auto-pin */
    }
}

/*
 * Tablets only — DZEE tier strip. Do NOT apply inside max-width:743 (phone Wholesale card).
 * Do NOT bare max-width:1376 — MBA / mouse laptops keep desktop tiers.
 */
@media (min-width: 744px) and (max-width: 1376px) and (hover: none),
       (min-width: 744px) and (max-width: 1376px) and (pointer: coarse),
       (min-width: 744px) and (max-width: 1440px) and (orientation: portrait) and (hover: none),
       (min-width: 744px) and (max-width: 1440px) and (orientation: portrait) and (pointer: coarse),
       (min-width: 744px) and (max-width: 1511px) and (hover: none),
       (min-width: 744px) and (max-width: 1511px) and (pointer: coarse) {
    html body.acme-pdp-page .acme-pdp-tiers__banner {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 3fr) !important;
        grid-template-rows: auto !important;
        gap: 0.5rem !important;
        padding: 0 !important;
        background: transparent !important;
        border-radius: 0 !important;
    }
    html body.acme-pdp-page .acme-pdp-tiers__banner::before {
        content: none !important;
        display: none !important;
    }
    html body.acme-pdp-page .acme-pdp-tiers__brand,
    html body.acme-pdp-page .acme-pdp-tiers__col {
        height: 78px !important;
        min-height: 78px !important;
        max-height: 78px !important;
        padding: 8px 6px !important;
    }
    html body.acme-pdp-page .acme-pdp-tiers__cols {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 0.5rem !important;
    }
    html body.acme-pdp-page .acme-pdp__qty,
    html body.acme-pdp-page .acme-pdp__qty-option,
    html body.acme-pdp-page .acme-pdp__atc,
    html body.acme-pdp-page button.acme-pdp__atc {
        min-height: 2.75rem !important; /* 44px+ touch */
    }
    html body.acme-pdp-page .acme-pdp__atc,
    html body.acme-pdp-page button.acme-pdp__atc {
        font-size: 1rem !important;
        padding-block: 0.75rem !important;
    }
}


/* Display-only pills: Alpine x-show/x-cloak must beat force-visible pill rules */
html body.acme-pdp-page .acme-pdp__pill.is-static[hidden],
html body.acme-pdp-page .acme-pdp__pill.is-static[style*="display: none"],
html body.acme-pdp-page .acme-pdp__pill.is-static[x-cloak],
html body.acme-pdp-page .acme-pdp__display-value[hidden],
html body.acme-pdp-page .acme-pdp__display-value[style*="display: none"],
html body.acme-pdp-page .acme-pdp__display-value[x-cloak],
html body.acme-pdp-page .acme-pdp__pill--hidden,
html body.acme-pdp-page .acme-pdp__pill[hidden],
html body.acme-pdp-page .acme-pdp__pill[style*="display: none"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* Hide display-attr rows until Alpine has a selected value */
html body.acme-pdp-page .acme-pdp__option-group--display-attr[x-cloak],
html body.acme-pdp-page .acme-pdp__option-group--display-attr[style*="display: none"] {
    display: none !important;
}

/* Label shrink-wrap so "Please select a …" stays on the same line as Type:/Size: */
html body.acme-pdp-page .acme-pdp__option-label-row > .acme-pdp__option-label {
    display: inline-flex !important;
    width: auto !important;
    max-width: none !important;
    flex: 0 0 auto !important;
}
html body.acme-pdp-page .acme-pdp__option-toast {
    display: inline !important;
    width: auto !important;
    flex: 0 1 auto !important;
}
html body.acme-pdp-page .acme-pdp__option-toast[style*="display: none"],
html body.acme-pdp-page .acme-pdp__option-toast[hidden],
html body.acme-pdp-page .acme-pdp__option-toast[x-cloak] {
    display: none !important;
}

/* Display-pill prompt: own line above ATC, right-aligned in the price/ATC column */
html body.acme-pdp-page .acme-pdp__actions-hint {
    display: none !important;
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    order: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: right !important;
    color: #1e3a8a !important;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
    font-size: 0.8125rem !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
    background: transparent !important;
    border: 0 !important;
    box-sizing: border-box !important;
}
html body.acme-pdp-page .acme-pdp__actions-hint.is-prompt {
    display: block !important;
}
/*
 * Buy cluster: price → qty (full row, control right) → Add to List + ATC → express.
 */
html body.acme-pdp-page .acme-pdp__actions > .acme-pdp__price-row {
    flex: 0 0 100% !important;
    width: 100% !important;
    order: 0 !important;
}
html body.acme-pdp-page .acme-pdp__actions > .acme-pdp__qty {
    order: 1 !important;
}
html body.acme-pdp-page .acme-pdp__actions > .acme-pdp__list {
    order: 2 !important;
}
html body.acme-pdp-page .acme-pdp__actions > .acme-pdp__atc {
    order: 3 !important;
}
html body.acme-pdp-page .acme-pdp__actions > .acme-pdp__express-pay,
html body.acme-pdp-page .acme-pdp__actions > .payment-request-button,
html body.acme-pdp-page .acme-pdp__actions > #payment-request-button,
html body.acme-pdp-page .acme-pdp__actions > #payment-method-messaging-element {
    flex: 0 0 100% !important;
    width: 100% !important;
    order: 10 !important;
}
@media (min-width: 744px) {
    html body.acme-pdp-page .acme-pdp__actions > .acme-pdp__qty {
        flex: 0 0 100% !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        position: relative !important;
        display: block !important;
        min-height: var(--acme-pdp-control-h, 3.3125rem) !important;
    }
    html body.acme-pdp-page .acme-pdp__actions > .acme-pdp__qty > .acme-pdp__qty-btn {
        position: absolute !important;
        top: 0 !important;
        right: 0 !important;
        width: 9.25rem !important;
        max-width: 9.25rem !important;
        z-index: 1 !important;
    }
    html body.acme-pdp-page .acme-pdp__actions > .acme-pdp__qty .acme-pdp__qty-menu {
        left: auto !important;
        right: 0 !important;
        width: 9.25rem !important;
    }
    html body.acme-pdp-page .acme-pdp__actions > .acme-pdp__list {
        flex: 0 0 9.25rem !important;
        width: 9.25rem !important;
        min-width: 9.25rem !important;
        max-width: 9.25rem !important;
    }
    html body.acme-pdp-page .acme-pdp__actions > .acme-pdp__atc {
        flex: 1 1 0% !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
    }
}
/* Legacy options-top banner — retired in favor of actions hint / label errors */
html body.acme-pdp-page .acme-pdp__gallery-hint.is-prompt,
html body.acme-pdp-page #acme-gallery-option-hint,
html body.acme-pdp-page #acme-gallery-option-hint.is-prompt {
    display: none !important;
}
/* Hub ATC/qty prompt: no blue wrap highlight — red field toasts only */
html body.acme-pdp-page .acme-pdp__options-wrap--prompt {
    outline: none !important;
    box-shadow: none !important;
}
html body.acme-pdp-page .acme-pdp__atc.is-hub-blocked {
    cursor: pointer !important;
    opacity: 0.7 !important;
    pointer-events: auto !important;
}

/*
 * Badges → options: hub = 2×2 (up to 4); child / landing-child = one row (2).
 * Driven by html.acme-pdp--hub (toggled on option select) so soft-nav matches URL.
 */
html body.acme-pdp-page {
    --acme-pdp-badges-options-gap: 0.75rem;
}
html.acme-pdp--hub body.acme-pdp-page {
    --acme-pdp-badges-options-gap: 1.75rem;
}
/* Badge label: black on every screen (never brand blue / navy ink). */
html body.acme-pdp-page .acme-pdp__badge-text,
html body.acme-pdp-page .acme-pdp__badge .acme-pdp__badge-text {
    color: #111 !important;
}
/* Always 2×2 up to 4 badges (hub + child) — pill pad shrink freed fold room */
html body.acme-pdp-page .acme-pdp__badges,
html:not(.acme-pdp--hub) body.acme-pdp-page .acme-pdp__badges,
html:not(.acme-pdp--hub) body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--two,
html:not(.acme-pdp--hub) body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--four,
html body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--two,
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__badges,
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--four,
html body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--four {
    grid-template-rows: repeat(2, 2.5rem) !important;
    grid-auto-rows: 2.5rem !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
}
html body.acme-pdp-page .acme-pdp__badges > .acme-pdp__badge:nth-child(n + 3),
html:not(.acme-pdp--hub) body.acme-pdp-page .acme-pdp__badges > .acme-pdp__badge:nth-child(n + 3),
html body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--two > .acme-pdp__badge:nth-child(n + 3),
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__badges > .acme-pdp__badge:nth-child(n + 3) {
    display: flex !important;
}
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__badges > .acme-pdp__badge:nth-child(n + 5),
html body.acme-pdp-page .acme-pdp__badges > .acme-pdp__badge:nth-child(n + 5),
html body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--four > .acme-pdp__badge:nth-child(n + 5) {
    display: none !important;
}
html body.acme-pdp-page .acme-pdp__panel {
    /* Header (title/badges) → options: fixed rhythm, not flex-stretch whitespace */
    row-gap: var(--acme-pdp-badges-options-gap) !important;
}
html body.acme-pdp-page .acme-pdp__options-wrap {
    margin-top: 0 !important;
    flex-shrink: 0 !important;
}
/* Hub only: space above first attribute row (mba-air must keep this — it loads last) */
html.acme-pdp--hub body.acme-pdp-page .acme-pdp__options-wrap {
    margin-top: 1.75rem !important;
}
/* Hub: top-aligned pill rows with fixed gap (no vertical stretch / space-between) */
@media (min-width: 1024px) {
    html.acme-pdp--hub body.acme-pdp-page .acme-pdp__options-wrap {
        flex: 0 1 auto !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: flex-start !important;
        min-height: 0 !important;
        flex-shrink: 0 !important;
        margin-top: 1.75rem !important;
    }
    html.acme-pdp--hub body.acme-pdp-page .acme-pdp__options,
    html.acme-pdp--hub body.acme-pdp-page .acme-pdp__options--attrs-3,
    html.acme-pdp--hub body.acme-pdp-page .acme-pdp__options.acme-pdp__options--display-attr {
        flex: none !important;
        justify-content: flex-start !important;
        gap: 1.75rem !important;
        row-gap: 1.75rem !important;
    }
}
@media (max-width: 743px) {
    html body.acme-pdp-page {
        --acme-pdp-badges-options-gap: 0.75rem;
    }
    html body.acme-pdp-page .acme-pdp__badges.acme-pdp__badges--two {
        grid-template-rows: minmax(0, auto) !important;
        grid-auto-rows: minmax(0, auto) !important;
    }
}

/*
 * Similar Products — heart + ATC same row (beats legacy overlay / display:none rules).
 * Matches homepage Best Selling wishlist+CTA row.
 */
html body.acme-pdp-page .acme-pdp-similar .acme-product-card__media .acme-product-card__wishlist,
html body.acme-pdp-page .acme-pdp-similar .acme-product-card__media .acme-product-card__wishlist--overlay {
    display: none !important;
}
html body.acme-pdp-page .acme-pdp-similar .acme-product-card__actions {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 0.5rem !important;
    width: 100% !important;
    margin-top: auto !important;
    padding: 0.5rem 1rem 1rem !important;
    box-sizing: border-box !important;
}
html body.acme-pdp-page .acme-pdp-similar .acme-product-card__actions .acme-product-card__wishlist,
html body.acme-pdp-page .acme-pdp-similar .acme-product-card__actions .acme-product-card__wishlist--inline {
    display: block !important;
    position: static !important;
    inset: auto !important;
    flex: 0 0 2.75rem !important;
    width: 2.75rem !important;
    height: 2.75rem !important;
    margin: 0 !important;
    order: 1 !important;
    z-index: 1 !important;
}
html body.acme-pdp-page .acme-pdp-similar .acme-product-card__actions .acme-product-card__wishlist button,
html body.acme-pdp-page .acme-pdp-similar .acme-product-card__actions .acme-product-card__wishlist--inline button,
html body.acme-pdp-page .acme-pdp-similar .acme-product-card__actions .acme-product-card__wish-btn {
    width: 2.75rem !important;
    height: 2.75rem !important;
    min-width: 2.75rem !important;
    min-height: 2.75rem !important;
    border-radius: 0.5rem !important;
    border: 1px solid #d0d7e2 !important;
    background: #fff !important;
    box-shadow: none !important;
    color: #0f2d52 !important;
}
html body.acme-pdp-page .acme-pdp-similar .acme-product-card__actions .acme-product-card__cart {
    display: inline-flex !important;
    flex: 1 1 auto !important;
    order: 2 !important;
    width: auto !important;
    max-width: none !important;
    min-height: 2.75rem !important;
    height: 2.75rem !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 0.5rem !important;
}
