/* Storefront presentation layer. Layout and API-rendered class contracts remain
 * in storefront.css; motion owns its animated elements' transform properties. */
body.gac-page {
    background: #edf3fb;
}

.gac-app {
    --gac-primary: #2868e9;
    --gac-primary-dark: #174ec4;
    --gac-secondary: #709ef4;
    --gac-accent: #b0d2ff;
    --gac-background: #f5f8fc;
    --gac-surface-muted: #edf3f9;
    --gac-border: #dde6f0;
    --gac-text: #142b49;
    --gac-text-muted: #5b6e83;
    --gac-blue-soft: #edf3ff;
    --gac-shadow-xs: 0 2px 5px rgba(19, 46, 80, 0.025), 0 5px 14px rgba(19, 46, 80, 0.035);
    --gac-shadow-sm: 0 3px 8px rgba(19, 46, 80, 0.035), 0 12px 28px rgba(19, 46, 80, 0.055);
    --gac-shadow-md: 0 5px 12px rgba(19, 46, 80, 0.04), 0 20px 48px rgba(19, 46, 80, 0.09);
    --gac-shadow-primary: 0 4px 8px rgba(28, 83, 185, 0.08), 0 10px 24px rgba(28, 83, 185, 0.18);
    --gac-polish-ease: cubic-bezier(0.22, 1, 0.36, 1);
    background: var(--gac-background);
}

.gac-app .gac-screen:not(.gac-auth-screen):not(.gac-screen--blue):not(.gac-screen--white) {
    background: linear-gradient(180deg, #f0f5fc 0, #f8fafd 700px, #f5f8fc 100%);
}

.gac-app :is(h1, h2, h3, .gac-product-prices strong, .gac-auth-heading) {
    letter-spacing: -0.025em;
}

.gac-app :is(.gac-product-prices, .gac-cart-copy > strong, .gac-price-summary, .gac-qty) {
    font-variant-numeric: tabular-nums;
}

/* Route focus provides a screen-reader announcement, not a card-sized outline.
 * Keyboard-operated controls retain a clearly visible, high-contrast ring. */
.gac-app main.gac-scroll[tabindex="-1"]:focus-visible {
    outline: none;
}

.gac-app :is(button, a, input, select, textarea, [role="button"]):focus-visible {
    outline: 3px solid var(--gac-primary-dark);
    outline-offset: 3px;
}

.gac-app :is(.gac-field__control, .gac-phone-field, .gac-inline-search label, .gac-search-box):focus-within {
    border-color: var(--gac-primary);
    box-shadow: 0 0 0 4px rgba(40, 104, 233, 0.1);
}

.gac-app :is(.gac-field > input, .gac-field > select, .gac-field > textarea) {
    border-color: var(--gac-border);
    background: #ffffff;
    transition: border-color 180ms ease, box-shadow 180ms ease, background-color 180ms ease;
}

.gac-app :is(.gac-field > input, .gac-field > select, .gac-field > textarea):focus {
    border-color: var(--gac-primary);
    box-shadow: 0 0 0 4px rgba(40, 104, 233, 0.1);
}

.gac-app :is(.gac-phone-field, .gac-inline-search label, .gac-search-box) {
    border-color: var(--gac-border);
    box-shadow: inset 0 1px 2px rgba(19, 46, 80, 0.025);
    transition: border-color 180ms ease, box-shadow 180ms ease;
}

.gac-app .gac-btn {
    font-weight: 700;
    letter-spacing: -0.01em;
    transition: box-shadow 220ms ease, background-color 220ms ease, border-color 220ms ease, filter 220ms ease;
}

.gac-app :is(.gac-btn-primary, .gac-btn.primary) {
    border-color: rgba(17, 63, 156, 0.12);
    background: linear-gradient(125deg, #2a6beb, #1852ce);
    box-shadow: var(--gac-shadow-primary), inset 0 1px 0 rgba(255, 255, 255, 0.18);
}

.gac-app :is(.gac-btn-outline, .gac-btn-white-outline, .gac-btn.outline) {
    border-color: #cfddf2;
    color: var(--gac-primary-dark);
    background: #ffffff;
    box-shadow: 0 2px 4px rgba(19, 46, 80, 0.025);
}

.gac-app :is(.gac-card, .gac-product-card, .gac-offer-card, .gac-brand-card, .gac-order-card, .gac-address-card) {
    border-color: var(--gac-border);
    box-shadow: var(--gac-shadow-xs);
}

.gac-app :is(.gac-product-card, .gac-brand-card, .gac-offer-card, .gac-card--interactive, .gac-feature-card) {
    transition: border-color 260ms ease, box-shadow 260ms ease, background-color 260ms ease;
}

/* The entrance animation's inline transform must never compete with an older
 * stylesheet's hover transform on the same card. Micro-motion stays inside it. */
.gac-app :is(.gac-product-card, .gac-brand-card, .gac-offer-card, .gac-card--interactive):hover,
.gac-app .gac-feature-card:active,
.gac-app .gac-btn:active {
    transform: none;
}

.gac-app :is(.gac-product-image, .gac-product-card-image) {
    background: radial-gradient(ellipse at 50% 36%, #ffffff 5%, #f0f5fb 100%);
    border-bottom: 1px solid #edf2f8;
}

.gac-app .gac-product-card.gac-product-grid {
    padding: 0;
    gap: 0;
}

.gac-app .gac-product-image > button[data-route] {
    display: grid;
    width: 100%;
    height: 100%;
    padding: 0;
    place-items: center;
    border: 0;
    background: transparent;
}

.gac-app :is(.gac-product-image, .gac-product-main-image, .gac-gallery-thumbs button),
.gac-app .gac-product-image > button[data-route] {
    min-width: 0;
    min-height: 0;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: minmax(0, 1fr);
}

.gac-app .gac-product-main-image {
    overflow: hidden;
}

.gac-app :is(.gac-product-image, .gac-product-main-image, .gac-gallery-thumbs) img {
    min-width: 0;
    min-height: 0;
    max-height: 100%;
    object-fit: contain;
}

.gac-app :is(.gac-product-image, .gac-product-card-image) > img,
.gac-app .gac-product-image > button[data-route] > img {
    transition: transform 500ms var(--gac-polish-ease);
}

.gac-app .gac-product-name {
    letter-spacing: -0.015em;
}

/* Compact catalog cards only; detail, wishlist and search layouts stay intact.
 * The grid class also exists on cards, so container rules exclude them. */
.gac-app.gac-route-products .gac-product-tabs {
    --gac-tab-accent: var(--gac-primary-dark);
    --gac-tab-border: #dfe6ef;
    --gac-tab-selected-surface: #edf3ff;
    --gac-tab-selected-border: #bdd0f4;
    --gac-tab-selected-icon: #dce8fc;
    width: min(100%, 1280px);
    max-width: 100%;
    margin-inline: auto;
    padding: 6px 2px 10px;
    gap: 8px;
    border: 0;
    border-radius: 0;
    background: transparent;
    scroll-padding-inline: 4px;
}

@supports (background: color-mix(in srgb, black, white)) {
    .gac-app.gac-route-products .gac-brand-product-appbar .gac-product-tabs {
        /* Bound the accent luminance so white labels stay readable for any brand. */
        --gac-tab-accent: color-mix(in srgb, var(--active-brand-color, #2866d3) 35%, #10213e);
        --gac-tab-border: color-mix(in srgb, var(--active-brand-color, #2866d3) 12%, #ffffff);
        --gac-tab-selected-surface: color-mix(in srgb, var(--active-brand-color, #2866d3) 5%, #ffffff);
        --gac-tab-selected-border: var(--gac-tab-accent);
        --gac-tab-selected-icon: color-mix(in srgb, var(--gac-tab-accent) 9%, #ffffff);
    }
}

.gac-app.gac-route-products .gac-product-tabs .gac-product-tab {
    min-height: 46px;
    padding: 6px 14px 6px 9px;
    gap: 7px;
    border-color: var(--gac-tab-border);
    border-radius: 999px;
    color: #536681;
    background: transparent;
    box-shadow: none;
    font-size: 12px;
    font-weight: 650;
    line-height: 18px;
}

.gac-app.gac-route-products .gac-product-tab-icon {
    display: grid;
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
    place-items: center;
    border: 0;
    border-radius: 50%;
    color: inherit;
    background: transparent;
    transition: color 180ms ease, background-color 180ms ease, border-color 180ms ease;
}

.gac-app.gac-route-products .gac-product-tab-icon svg {
    width: 20px;
    height: 20px;
}

.gac-app.gac-route-products .gac-product-tabs .gac-product-tab.is-active {
    border-color: var(--gac-tab-selected-border);
    color: var(--gac-tab-accent);
    background: var(--gac-tab-selected-surface);
    box-shadow: 0 2px 5px rgba(16, 33, 62, 0.12);
}

.gac-app.gac-route-products .gac-product-tab.is-active .gac-product-tab-icon {
    color: inherit;
    background: var(--gac-tab-selected-icon);
}

.gac-app.gac-route-products .gac-product-tabs .gac-product-tab:focus-visible {
    outline: 2px solid var(--gac-tab-accent);
    outline-offset: -2px;
}

.gac-app.gac-route-products .gac-product-tabs .gac-product-tab.is-active:focus-visible {
    outline-color: currentColor;
    outline-offset: -4px;
}

@media (hover: hover) and (pointer: fine) {
    .gac-app.gac-route-products .gac-product-tabs .gac-product-tab:not(.is-active):hover {
        border-color: var(--gac-tab-accent);
        color: var(--gac-tab-accent);
        background: transparent;
    }
}

@media (max-width: 1023px) {
    .gac-app.gac-route-products .gac-brand-product-appbar {
        /* Stable underlay for translucent brand gradients, not a tab strip. */
        background-color: #ffffff;
    }

    /* Outlined categories surround one light selected capsule, not a white bar. */
    .gac-app.gac-route-products .gac-brand-product-appbar .gac-product-tabs .gac-product-tab:not(.is-active) {
        border-color: rgba(255, 255, 255, 0.3);
        border-color: color-mix(in srgb, currentColor 30%, transparent);
        color: var(--gac-tab-on-brand, #ffffff);
        background: var(--gac-tab-wash, transparent);
    }

    .gac-app.gac-route-products .gac-brand-product-appbar .gac-product-tabs .gac-product-tab.is-active {
        border-color: var(--gac-tab-selected-border);
        color: var(--gac-tab-accent);
        background: var(--gac-tab-selected-surface);
    }

    .gac-app.gac-route-products .gac-brand-product-appbar .gac-product-tabs .gac-product-tab:focus-visible {
        outline-color: Highlight;
    }
}

.gac-app.gac-route-products .gac-product-grid:not(.gac-product-card) {
    padding-block: 12px;
    gap: 12px;
    align-items: stretch;
}

.gac-app.gac-route-products .gac-product-card {
    padding: 0;
    gap: 0;
    border-radius: 15px;
    box-shadow: 0 2px 8px rgba(19, 46, 80, 0.045);
}

.gac-app.gac-route-products .gac-product-card.gac-product-grid > .gac-product-image {
    height: clamp(108px, 29vw, 136px);
    min-height: 0;
    padding: 0;
    aspect-ratio: auto;
}

.gac-app.gac-route-products .gac-product-card .gac-wishlist-button {
    top: 0;
    right: 0;
    width: 44px;
    min-width: 44px;
    height: 44px;
    border: 0;
    background: transparent;
    box-shadow: none;
}

/* A smaller visible heart keeps a comfortable, unchanged touch target. */
.gac-app.gac-route-products .gac-wishlist-button::before {
    position: absolute;
    inset: 7px;
    border: 1px solid #dde7f2;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 2px 6px rgba(19, 46, 80, 0.06);
    pointer-events: none;
    content: "";
}

.gac-app.gac-route-products .gac-wishlist-button.is-active::before {
    border-color: #f5d7df;
    background: #fff3f5;
}

.gac-app.gac-route-products .gac-wishlist-button svg {
    position: relative;
    width: 16px;
    height: 16px;
}

.gac-app.gac-route-products .gac-product-card > .gac-product-body {
    padding: 10px;
}

.gac-app.gac-route-products .gac-product-meta {
    min-height: 18px;
    margin-top: 0;
    font-size: 10px;
    line-height: 1.4;
}

.gac-app.gac-route-products .gac-product-meta > span:first-child {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.gac-app.gac-route-products .gac-product-meta .gac-rating {
    flex-shrink: 0;
    gap: 3px;
    font-size: 10px;
}

.gac-app.gac-route-products .gac-product-meta .gac-rating svg {
    width: 12px;
    height: 12px;
}

.gac-app.gac-route-products .gac-product-name {
    min-height: 32px;
    margin-top: 2px;
    font-size: 12px;
    line-height: 16px;
}

.gac-app.gac-route-products .gac-product-model {
    margin-top: 0;
    font-size: 10px;
    line-height: 1.5;
}

/* Logo and availability share one row; keep the rating beside the model. */
.gac-app.gac-route-products .gac-product-brand-row,
.gac-app.gac-route-products .gac-product-detail-row {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
}

.gac-app.gac-route-products .gac-product-brand-row {
    min-height: 20px;
}

.gac-app.gac-route-products .gac-product-brand {
    display: block;
    min-width: 0;
    max-width: 76px;
    flex: 1 1 auto;
    color: var(--gac-text-muted);
}

.gac-app.gac-route-products .gac-product-brand-logo {
    display: block;
    width: 100%;
    height: 20px;
    object-fit: contain;
    object-position: left center;
}

.gac-app.gac-route-products .gac-product-brand-name {
    display: block;
    overflow: hidden;
    font-size: 10px;
    line-height: 20px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.gac-app.gac-route-products .gac-product-brand-logo + .gac-product-brand-name,
.gac-app.gac-route-products .gac-product-brand-logo.is-fallback {
    display: none;
}

.gac-app.gac-route-products .gac-product-brand-logo.is-fallback + .gac-product-brand-name {
    display: block;
}

.gac-app.gac-route-products .gac-product-brand-row .gac-product-stock {
    margin-top: 0;
    flex-shrink: 0;
}

.gac-app.gac-route-products .gac-product-detail-row .gac-product-model {
    min-width: 0;
    flex: 1 1 auto;
}

.gac-app.gac-route-products .gac-product-detail-row .gac-rating {
    flex-shrink: 0;
    gap: 3px;
    font-size: 10px;
    line-height: 1.5;
}

.gac-app.gac-route-products .gac-product-detail-row .gac-rating svg {
    width: 12px;
    height: 12px;
}

.gac-app.gac-route-products .gac-product-stock {
    min-height: 20px;
    margin-top: 6px;
    padding: 0;
    align-self: flex-start;
    border-radius: 0;
    background: transparent;
}

.gac-app.gac-route-products .gac-stock-badge {
    min-height: 20px;
    padding: 2px 7px;
    font-size: 9px;
    line-height: 1.5;
}

.gac-app.gac-route-products .gac-product-prices {
    margin-top: 6px;
    gap: 2px 5px;
}

.gac-app.gac-route-products .gac-product-prices strong {
    font-size: 16px;
    line-height: 1.35;
}

.gac-app.gac-route-products .gac-product-prices > * {
    white-space: nowrap;
}

.gac-app.gac-route-products .gac-saving {
    margin-top: 2px;
    font-size: 10px;
    line-height: 1.5;
}

.gac-app.gac-route-products .gac-product-card.gac-product-list {
    grid-template-columns: clamp(100px, 26vw, 124px) minmax(0, 1fr);
}

.gac-app.gac-route-products .gac-product-card.gac-product-list > .gac-product-image {
    min-height: 0;
    padding: 0;
    border-right: 1px solid #edf2f8;
    border-bottom: 0;
}

.gac-app.gac-route-products .gac-product-list .gac-product-ribbon {
    top: auto;
    bottom: 10px;
}

.gac-app.gac-route-products .gac-product-card-actions {
    padding-top: 8px;
}

.gac-app.gac-route-products .gac-product-card-actions .gac-btn {
    min-width: 0;
    min-height: 44px;
    padding-inline: 8px;
    gap: 4px;
    font-size: 11px;
}

.gac-app.gac-route-products .gac-product-card-actions .gac-btn svg {
    width: 14px;
    height: 14px;
    flex-shrink: 0;
}

@media (min-width: 768px) {
    .gac-app.gac-route-products .gac-product-grid:not(.gac-product-card) {
        gap: 16px;
    }

    .gac-app.gac-route-products .gac-product-card.gac-product-grid > .gac-product-image {
        height: 150px;
    }

    .gac-app.gac-route-products .gac-product-card > .gac-product-body {
        padding: 12px;
    }

    .gac-app.gac-route-products .gac-product-name {
        min-height: 36px;
        font-size: 13px;
        line-height: 18px;
    }

    .gac-app.gac-route-products .gac-product-prices strong {
        font-size: 18px;
    }
}

@media (min-width: 1024px) {
    .gac-app.gac-route-products .gac-product-card.gac-product-grid > .gac-product-image {
        height: 160px;
    }
}

.gac-app .gac-stock-badge {
    letter-spacing: 0.005em;
}

.gac-app .gac-wishlist-button {
    border-color: #dde7f2;
    box-shadow: 0 3px 9px rgba(19, 46, 80, 0.06);
    transition: border-color 180ms ease, color 180ms ease, background-color 180ms ease;
}

.gac-app .gac-wishlist-button.is-active {
    border-color: #f5d7df;
    background: #fff3f5;
}

.gac-app :is(.gac-product-toolbar > button, .gac-pagination button) {
    border: 1px solid var(--gac-border);
    box-shadow: 0 2px 6px rgba(19, 46, 80, 0.025);
}

.gac-app .gac-chip {
    transition: color 180ms ease, background-color 180ms ease, border-color 180ms ease;
}

.gac-app :is(.gac-chip.is-active, .gac-chip[aria-pressed="true"], .gac-chip[aria-selected="true"]) {
    border-color: var(--gac-primary-dark);
    color: #ffffff;
    background: var(--gac-primary-dark);
    box-shadow: 0 3px 8px rgba(28, 83, 185, 0.13);
}

.gac-app :is(.gac-carousel, .gac-home-carousel) {
    outline: 1px solid rgba(255, 255, 255, 0.55);
    outline-offset: -1px;
    box-shadow: var(--gac-shadow-md);
}

.gac-app .gac-carousel-slide img[src*="/assets/storefront/images/home/banner.png"] {
    object-fit: contain;
    background: #edf4fc;
}

.gac-app .gac-feature-card:is(.is-blue, .is-emerald, .is-amber, .is-violet) {
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 8px 20px rgba(20, 48, 86, 0.1);
}

.gac-app .gac-feature-card.is-blue {
    background: linear-gradient(135deg, #2c66cd, #2156c9);
}

.gac-app .gac-feature-card.is-emerald {
    background: linear-gradient(135deg, #117d67, #087052);
}

.gac-app .gac-feature-card.is-amber {
    background: linear-gradient(135deg, #996217, #8b550c);
}

.gac-app .gac-feature-card.is-violet {
    background: linear-gradient(135deg, #7557d8, #5034a9);
}

.gac-app :is(.gac-feature-icon, .gac-feature-arrow) {
    border: 1px solid rgba(255, 255, 255, 0.16);
    background: rgba(255, 255, 255, 0.13);
    backdrop-filter: none;
}

.gac-app :is(.gac-feature-arrow > svg, .gac-feature-art) {
    transition: transform 450ms var(--gac-polish-ease);
}

.gac-app .gac-feature-subtitle {
    color: rgba(255, 255, 255, 0.92);
}

.gac-app .gac-consult-card {
    background: radial-gradient(ellipse at 98% 5%, rgba(94, 154, 255, 0.36), transparent 45%), linear-gradient(115deg, #13366d, #1c58bd);
    box-shadow: 0 10px 26px rgba(20, 54, 109, 0.15), inset 0 1px 0 rgba(255, 255, 255, 0.15);
}

.gac-app .gac-consult-email {
    border: 1px solid rgba(255, 255, 255, 0.2);
    background: rgba(255, 255, 255, 0.1);
    font-weight: 700;
}

.gac-app .gac-product-hero {
    background: linear-gradient(145deg, #ffffff, #f4f8ff);
}

.gac-app .gac-gallery-thumbs button {
    transition: border-color 180ms ease, box-shadow 180ms ease;
}

.gac-app .gac-gallery-thumbs button.is-active {
    box-shadow: 0 0 0 2px rgba(40, 104, 233, 0.13);
}

.gac-app :is(.gac-price-summary, .gac-checkout-summary, .gac-coupon-card) {
    background: #ffffff;
    box-shadow: var(--gac-shadow-sm);
}

.gac-app .gac-cart-item-footer {
    border-top-color: #e8eef6;
    background: #fbfcff;
}

.gac-app .gac-menu-icon {
    color: var(--gac-primary-dark);
    background: #edf3ff;
}

.gac-app :is(.gac-bottom-nav, .gac-sticky-actions) {
    border-color: rgba(213, 224, 239, 0.92);
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 -4px 24px rgba(19, 46, 80, 0.065);
}

.gac-app .gac-bottom-nav-item.is-active {
    color: var(--gac-primary-dark);
    background: linear-gradient(180deg, #e9f1ff, #f4f7ff);
}

.gac-app :is(.gac-modal, .gac-sheet) {
    box-shadow: 0 24px 70px rgba(10, 30, 63, 0.22);
}

/* Authentication uses the same typography and control surfaces as shopping. */
.gac-app .gac-auth-heading h1 {
    color: #132e52;
    letter-spacing: -0.035em;
}

.gac-app .gac-auth-heading h2 {
    margin-top: 6px;
    color: var(--gac-primary-dark);
    font-weight: 650;
    letter-spacing: -0.025em;
}

.gac-app .gac-auth-heading p {
    color: var(--gac-text-muted);
    line-height: 1.65;
}

.gac-app .gac-auth-features {
    padding-top: 18px;
    border-top: 1px solid #e9eef6;
}

.gac-app .gac-auth-features > div > span {
    border: 1px solid #e0eaff;
    background: #f2f6ff;
}

.gac-app .gac-auth-features strong {
    font-size: 11px;
    font-weight: 650;
    line-height: 1.4;
}

.gac-app .gac-auth-features small {
    color: var(--gac-text-muted);
    font-size: 10px;
    line-height: 1.4;
}

@media (min-width: 1024px) {
    .gac-app .gac-desktop-header {
        border-bottom-color: rgba(208, 221, 238, 0.8);
        background: rgba(255, 255, 255, 0.91);
        box-shadow: 0 3px 18px rgba(19, 46, 80, 0.035);
        -webkit-backdrop-filter: blur(20px) saturate(140%);
        backdrop-filter: blur(20px) saturate(140%);
    }

    .gac-app .gac-desktop-brand strong {
        color: #123364;
        letter-spacing: -0.035em;
    }

    .gac-app .gac-desktop-nav button {
        font-weight: 650;
    }

    .gac-app .gac-desktop-nav button.is-active {
        background: #eaf1ff;
    }

    .gac-app .gac-desktop-nav button.is-active::after {
        right: 20px;
        left: 20px;
    }

    .gac-app .gac-desktop-search {
        background: #f6f9fe;
    }

    .gac-app :is(.gac-desktop-account, .gac-desktop-icon) {
        box-shadow: 0 2px 6px rgba(19, 46, 80, 0.025);
    }

    .gac-app .gac-product-card {
        border-radius: 20px;
    }

    .gac-app .gac-product-body {
        padding: 16px;
    }

    .gac-app .gac-product-image {
        padding: 18px;
    }

    .gac-app .gac-product-prices strong {
        font-size: 20px;
        letter-spacing: -0.035em;
    }

    .gac-app:is(.gac-route-login, .gac-route-signup, .gac-route-otp) .gac-auth-screen {
        background:
            radial-gradient(ellipse at 5% 5%, rgba(102, 154, 244, 0.22), transparent 48%),
            radial-gradient(ellipse at 100% 100%, rgba(89, 170, 234, 0.18), transparent 46%),
            linear-gradient(135deg, #f0f5fd, #fbfcff 52%, #f0f5fb);
    }

    .gac-app:is(.gac-route-login, .gac-route-signup, .gac-route-otp) .gac-auth {
        border-color: rgba(212, 224, 241, 0.95);
        border-radius: 26px;
        background: #ffffff;
        box-shadow: 0 8px 22px rgba(27, 61, 108, 0.04), 0 28px 80px rgba(27, 61, 108, 0.105);
    }

    .gac-app .gac-auth-heading h1 {
        font-size: 30px;
    }

    .gac-app .gac-auth-heading h2 {
        font-size: 19px;
    }

    .gac-app .gac-auth-heading p {
        font-size: 13px;
    }

    .gac-app .gac-auth-wave {
        opacity: 0.4;
    }
}

@media (max-width: 767px) {
    .gac-app .gac-auth-screen {
        background: linear-gradient(160deg, #f0f6ff 0, #ffffff 40%, #ffffff 80%, #edf4ff 100%);
    }

    .gac-app .gac-auth-heading h1 {
        font-size: 26px;
    }

    .gac-app .gac-auth-wave {
        opacity: 0.56;
    }

    .gac-app .gac-product-card {
        border-radius: 17px;
    }

    .gac-app .gac-bottom-nav {
        border-radius: 22px 22px 0 0;
    }
}

@media (hover: hover) and (pointer: fine) {
    .gac-app :is(.gac-product-card, .gac-brand-card, .gac-offer-card, .gac-card--interactive):hover {
        border-color: #acc7ee;
        box-shadow: 0 5px 14px rgba(19, 46, 80, 0.04), 0 18px 36px rgba(19, 46, 80, 0.09);
    }

    .gac-app .gac-product-card:hover .gac-product-image > img,
    .gac-app .gac-product-card:hover .gac-product-image > button[data-route] > img {
        transform: scale(1.045);
    }

    .gac-app .gac-feature-card:hover {
        filter: none;
        box-shadow: 0 12px 28px rgba(20, 48, 86, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.2);
    }

    .gac-app .gac-feature-card:hover .gac-feature-arrow > svg {
        transform: translateX(3px);
    }

    .gac-app .gac-feature-card:hover .gac-feature-art {
        transform: scale(1.035);
    }

    .gac-app .gac-btn-primary:not(:disabled):hover {
        filter: brightness(1.04);
        box-shadow: 0 6px 12px rgba(28, 83, 185, 0.1), 0 14px 28px rgba(28, 83, 185, 0.22);
    }

    .gac-app :is(.gac-btn-outline, .gac-btn-white-outline):not(:disabled):hover {
        filter: none;
        border-color: #a6c0ed;
        background: #f7faff;
        box-shadow: var(--gac-shadow-xs);
    }

    .gac-app .gac-menu-item:hover {
        background: #f7faff;
    }
}

@media (prefers-reduced-motion: no-preference) {
    html:not(.lenis):has(> body.gac-page) {
        scroll-behavior: smooth;
        scroll-padding-top: 152px;
    }
}

@media (prefers-reduced-motion: reduce) {
    html:has(> body.gac-page),
    .gac-app .gac-scroll {
        scroll-behavior: auto !important;
    }

    .gac-app *,
    .gac-app *::before,
    .gac-app *::after {
        transition-duration: 0.01ms !important;
    }

    .gac-app .gac-product-card:hover .gac-product-image > img,
    .gac-app .gac-product-card:hover .gac-product-image > button[data-route] > img,
    .gac-app .gac-feature-card:hover .gac-feature-art,
    .gac-app .gac-feature-card:hover .gac-feature-arrow > svg {
        transform: none;
    }
}

@media (forced-colors: active) {
    .gac-app.gac-route-products .gac-product-tabs .gac-product-tab.is-active,
    .gac-app.gac-route-products .gac-product-tabs .gac-product-tab:focus-visible,
    .gac-app.gac-route-products .gac-product-tabs .gac-product-tab.is-active:focus-visible {
        outline: 2px solid Highlight;
        outline-offset: -3px;
    }

    .gac-app :is(.gac-card, .gac-product-card, .gac-offer-card, .gac-brand-card, .gac-order-card, .gac-address-card, .gac-feature-card, .gac-btn, .gac-phone-field) {
        border: 1px solid ButtonText;
        box-shadow: none;
    }

    .gac-app :is(.gac-chip.is-active, .gac-bottom-nav-item.is-active, .gac-desktop-nav button.is-active) {
        outline: 2px solid Highlight;
        outline-offset: -3px;
    }

    .gac-app :is(button, a, input, select, textarea, [role="button"]):focus-visible {
        outline-color: Highlight;
    }
}

/* Reference catalogue: brand-led hero, horizontal product cards and floating
 * controls. These selectors do not change search, wishlist or product detail. */
.gac-app.gac-route-products .gac-screen.gac-catalog-screen {
    --catalog-brand: #0755e9;
    --catalog-on-brand: #fff;
    --catalog-accent: #0755e9;
    --catalog-nav-offset: 0px;
    --catalog-title-height: calc(56px + env(safe-area-inset-top, 0px));
    color: #101929;
    background: #fff;
}

.gac-app .gac-catalog-sticky-heading {
    position: sticky;
    z-index: 70;
    top: var(--catalog-nav-offset);
    height: var(--catalog-title-height);
    padding: env(safe-area-inset-top, 0px) 16px 0;
    flex-shrink: 0;
    color: var(--catalog-on-brand);
    background: var(--catalog-brand);
}
.gac-app .gac-catalog-sticky-heading > .gac-catalog-heading { height: 100%; min-height: 0; }
.gac-app .gac-catalog-sticky-heading h1 { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.gac-app .gac-catalog-hero {
    position: relative;
    overflow: hidden;
    flex-shrink: 0;
    padding: 0 16px 18px;
    border-radius: 0 0 25px 25px;
    color: var(--catalog-on-brand);
    background: var(--catalog-brand);
    isolation: isolate;
}

.gac-app .gac-catalog-hero::after {
    position: absolute;
    z-index: -1;
    inset: 0;
    opacity: var(--catalog-pattern-opacity, 1);
    background: linear-gradient(164deg, transparent 58%, rgba(0, 0, 0, .025) 58%, rgba(0, 0, 0, .025) 78%, transparent 78%);
    content: "";
}

.gac-app .gac-catalog-heading {
    display: flex;
    min-height: 56px;
    align-items: center;
    gap: 12px;
}

.gac-app .gac-catalog-heading > button {
    display: grid;
    width: 44px;
    height: 44px;
    min-height: 44px;
    margin-left: -4px;
    padding: 0;
    flex: 0 0 44px;
    place-items: center;
    border: 1px solid transparent;
    border-color: color-mix(in srgb, currentColor 16%, transparent);
    border-radius: 14px;
    color: inherit;
    background: rgba(255, 255, 255, .08);
    background: color-mix(in srgb, var(--catalog-on-brand) 8%, var(--catalog-brand));
    transition: background 160ms ease, border-color 160ms ease;
}

.gac-app .gac-catalog-heading > button svg { width: 22px; height: 22px; stroke-width: 1.8; }
.gac-app .gac-catalog-heading > button:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
.gac-app .gac-catalog-heading h1 { margin: 0; font-size: clamp(18px, 4.9vw, 20px); font-weight: 600; line-height: 1.2; letter-spacing: -.025em; overflow-wrap: anywhere; }
.gac-app .gac-catalog-brand-intro { display: flex; margin-top: 10px; align-items: center; gap: 14px; }
.gac-app .gac-catalog-brand-intro > div { min-width: 0; }
.gac-app .gac-catalog-brand-intro h2 { margin: 0 0 7px; color: inherit; font-size: 20px; font-weight: 650; line-height: 1.2; overflow-wrap: anywhere; }
.gac-app .gac-catalog-brand-intro p { display: -webkit-box; overflow: hidden; max-width: 340px; margin: 0; font-size: 12px; line-height: 1.55; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }

.gac-app .gac-catalog-logo {
    position: relative;
    display: grid;
    overflow: hidden;
    width: 84px;
    height: 86px;
    flex: 0 0 84px;
    place-items: center;
    border: 1px solid #f0f0f0;
    border-radius: 13px;
    color: #243a59;
    background: #fff;
}

.gac-app .gac-catalog-logo img { position: absolute; inset: 0; width: 100%; height: 100%; padding: 4px; object-fit: contain; background: #fff; }
.gac-app .gac-catalog-logo img.is-fallback { display: none; }
.gac-app .gac-catalog-logo-fallback { font-size: 23px; font-weight: 650; text-transform: uppercase; }
.gac-app .gac-catalog-logo:has(img:not(.is-fallback)) .gac-catalog-logo-fallback { visibility: hidden; }

.gac-app .gac-catalog-screen > .gac-scroll { overflow: visible; padding-bottom: 0; background: #fff; }
.gac-app .gac-content.gac-catalog-content { width: 100%; max-width: 1280px; margin-inline: auto; padding: 8px 12px calc(82px + env(safe-area-inset-bottom, 0px)); }
.gac-app .gac-catalog-sticky-tabs { position: sticky; z-index: 60; top: calc(var(--catalog-nav-offset) + var(--catalog-title-height)); margin-inline: -12px; padding: 4px 12px; background: #fff; box-shadow: 0 1px 0 #edf0f5; }
.gac-app .gac-catalog-content :is(button, input, a[href], .gac-product-card, .gac-catalog-card) { scroll-margin-top: calc(var(--catalog-nav-offset) + var(--catalog-title-height) + 72px); scroll-margin-bottom: 90px; }
.gac-app .gac-catalog-search { margin: 10px 0 4px; }
.gac-app.gac-route-products .gac-catalog-content .gac-product-tabs { width: calc(100% + 8px); max-width: none; margin: 0 -4px; padding: 0 2px; gap: 6px; min-height: 44px; align-items: center; scrollbar-width: none; }
.gac-app.gac-route-products .gac-catalog-content .gac-product-tabs .gac-product-tab {
    position: relative;
    min-width: 46px;
    min-height: 30px;
    margin-block: 7px;
    padding: 5px 9px;
    border: 1px solid #e6e6e8;
    border-radius: 999px;
    color: #202735;
    background: #fff;
    box-shadow: none;
    font-size: clamp(10px, 2.8vw, 11px);
    font-weight: 550;
    line-height: 18px;
}
.gac-app.gac-route-products .gac-catalog-content .gac-product-tab::after { position: absolute; inset: -7px 0; content: ""; }
.gac-app.gac-route-products .gac-catalog-content .gac-product-tabs .gac-product-tab.is-active { border-color: var(--catalog-accent); color: #fff; background: var(--catalog-accent); }
.gac-app.gac-route-products .gac-catalog-content .gac-product-tab:focus-visible { outline: 2px solid var(--catalog-accent); outline-offset: 3px; }
.gac-app.gac-route-products .gac-catalog-content .gac-product-tab.is-active:focus-visible { outline-color: var(--catalog-accent); outline-offset: 3px; }

.gac-app .gac-catalog-toolbar { display: flex; min-height: 52px; margin-bottom: 4px; padding-inline: 4px; align-items: center; justify-content: space-between; gap: 12px; }
.gac-app .gac-catalog-count { margin: 0; color: #686e78; font-size: 12px; font-weight: 500; }
.gac-app .gac-catalog-view { display: flex; padding: 0 3px; border: 1px solid #f4f4f5; border-radius: 12px; background: #fff; box-shadow: 0 2px 12px rgba(16, 25, 41, .045); }
.gac-app .gac-catalog-view button { display: grid; width: 35px; height: 38px; padding: 0; place-items: center; border: 0; color: #747983; background: transparent; }
.gac-app .gac-catalog-view button svg { width: 19px; height: 19px; }
.gac-app .gac-catalog-view button.is-active { color: var(--catalog-accent); }

.gac-app .gac-catalog-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; }
.gac-app .gac-catalog-card {
    position: relative;
    display: grid;
    min-width: 0;
    grid-template-columns: minmax(88px, 30%) minmax(0, 1fr);
    gap: 14px;
    padding: 12px;
    border: 1px solid #f5f5f6;
    border-radius: 15px;
    background: #fff;
    box-shadow: 0 2px 10px rgba(16, 25, 41, .045);
}

.gac-app .gac-catalog-media { display: flex; min-width: 0; align-items: center; flex-direction: column; }
.gac-app .gac-catalog-image { position: relative; display: grid; overflow: hidden; width: 100%; min-height: 98px; aspect-ratio: 1; padding: 0; place-items: center; border: 0; border-radius: 12px; background: #f6f6fa; }
.gac-app .gac-catalog-image img { position: absolute; inset: 0; width: 100%; height: 100%; padding: 0; object-fit: contain; background: #fff; }
.gac-app .gac-catalog-image img.is-fallback { display: none; }
.gac-app .gac-catalog-image-fallback { display: grid; place-items: center; color: #a9b8df; }
.gac-app .gac-catalog-image-fallback svg { width: 38px; height: 38px; }
.gac-app .gac-catalog-specs { max-width: 100%; margin-top: 8px; padding: 2px 8px; border-radius: 99px; color: #28574c; background: #e8f8f1; font-size: 9px; font-weight: 550; line-height: 1.35; text-align: center; overflow-wrap: anywhere; }
.gac-app .gac-catalog-heart { position: relative; display: grid; width: 30px; height: 30px; min-height: 30px; margin: auto auto 0 0; padding: 6px; place-items: center; align-self: flex-start; border: 1px solid #e6e7ea; border-radius: 9px; color: #172333; background: #fff; }
.gac-app .gac-catalog-heart::after { position: absolute; inset: -7px; content: ""; }
.gac-app .gac-catalog-heart svg { width: 18px; height: 18px; }
.gac-app .gac-catalog-heart.is-active { color: #d83364; }
.gac-app .gac-catalog-heart.is-active svg { fill: currentColor; }
.gac-app .gac-catalog-copy { position: relative; display: flex; min-width: 0; flex-direction: column; }
.gac-app.gac-route-products .gac-catalog-brand-row { margin: 0 18px 6px 0; }
.gac-app .gac-catalog-model { margin: 0 0 6px; color: #626975; font-size: 10px; line-height: 1.5; overflow-wrap: anywhere; }
.gac-app .gac-catalog-saving { display: block; margin-top: 4px; color: #16865c; font-size: 9px; line-height: 1.4; }
.gac-app .gac-catalog-label { margin: 6px 0; padding: 2px 6px; border-radius: 5px; color: var(--catalog-accent); background: #edf3ff; font-size: 9px; font-weight: 600; }
.gac-app .gac-catalog-media .gac-catalog-heart { margin-top: auto; }
.gac-app .gac-catalog-footer .gac-catalog-details { margin-left: auto; }
.gac-app .gac-catalog-name { display: -webkit-box; overflow: hidden; width: calc(100% - 16px); min-height: 16px; margin: 0 0 5px; padding: 0; border: 0; color: #101929; background: none; font-size: 12px; font-weight: 650; line-height: 16px; text-align: left; overflow-wrap: anywhere; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.gac-app .gac-catalog-menu { position: absolute; display: grid; top: -9px; right: -10px; width: 32px; height: 34px; padding: 0; place-items: center; border: 0; color: #4e5460; background: transparent; }
.gac-app .gac-catalog-menu svg { width: 17px; height: 17px; }
.gac-app .gac-catalog-summary { display: grid; min-width: 0; grid-template-columns: minmax(0, 1fr) auto; gap: 6px; flex: 1; }
.gac-app .gac-catalog-facts { min-width: 0; }
.gac-app .gac-catalog-description { display: -webkit-box; overflow: hidden; margin: 0 0 7px; color: #626975; font-size: 10px; line-height: 1.4; overflow-wrap: anywhere; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.gac-app .gac-catalog-features { display: grid; margin: 0 0 8px; padding: 0; gap: 6px; list-style: none; }
.gac-app .gac-catalog-features li { display: flex; min-width: 0; align-items: flex-start; gap: 6px; color: #626975; font-size: 9px; line-height: 1.4; }
.gac-app .gac-catalog-features li svg { width: 12px; height: 12px; margin-top: 1px; flex: 0 0 12px; }
.gac-app .gac-catalog-features li span { overflow-wrap: anywhere; }
.gac-app .gac-catalog-price { min-width: 0; padding-top: 0; text-align: right; font-variant-numeric: tabular-nums; }
.gac-app .gac-catalog-price > strong { display: block; color: #101929; font-size: 14px; font-weight: 700; line-height: 1.3; white-space: nowrap; }
.gac-app .gac-catalog-price > div { display: flex; margin-top: 3px; flex-wrap: wrap; justify-content: flex-end; align-items: center; gap: 4px; }
.gac-app .gac-catalog-price del { color: #777d87; font-size: 10px; white-space: nowrap; }
.gac-app .gac-catalog-price > div > span { padding: 2px 3px; border-radius: 3px; color: #247a3a; background: #dff5e5; font-size: 8px; font-weight: 650; white-space: nowrap; }
.gac-app .gac-catalog-unavailable { display: inline-block; margin-bottom: 6px; color: #b42336; font-size: 10px; }
.gac-app .gac-catalog-footer { display: flex; margin-top: 2px; padding-top: 3px; flex-direction: column; align-items: flex-start; gap: 0; border-top: 1px solid #f3f3f5; }
.gac-app .gac-catalog-reviews { display: flex; min-height: 24px; max-width: 100%; padding: 0; align-items: center; gap: 6px; flex-wrap: wrap; border: 0; color: #646c7a; background: transparent; font-size: 9px; text-align: left; }
.gac-app .gac-catalog-reviews > svg { width: 12px; height: 12px; }
.gac-app .gac-catalog-rating { display: inline-flex; padding: 1px 3px; align-items: center; gap: 3px; color: #197340; background: #def6e6; font-size: 9px; font-weight: 650; }
.gac-app .gac-catalog-rating svg { width: 11px; height: 11px; fill: currentColor; }
.gac-app .gac-catalog-details { display: flex; min-height: 26px; padding: 4px 10px; align-items: center; align-self: flex-end; gap: 6px; border: 1px solid var(--catalog-accent); border-radius: 7px; color: var(--catalog-accent); background: #fff; font-size: 10px; font-weight: 650; }
.gac-app .gac-catalog-details svg { width: 13px; height: 13px; }

.gac-app .gac-catalog-section-heading { display: flex; margin: 10px 6px 6px; align-items: center; justify-content: space-between; gap: 8px; }
.gac-app .gac-catalog-section-heading h2 { margin: 0; font-size: 13px; font-weight: 650; line-height: 1.4; }
.gac-app .gac-catalog-section-heading > button { min-height: 34px; padding: 0 2px; border: 0; color: var(--catalog-accent); background: transparent; font-size: 11px; font-weight: 600; }
.gac-app .gac-catalog-brands { display: flex; overflow-x: auto; padding: 0 4px 6px; gap: 14px; overscroll-behavior-x: contain; scrollbar-width: none; }
.gac-app .gac-catalog-brand { display: flex; width: 60px; min-width: 60px; padding: 0; flex-direction: column; align-items: center; gap: 7px; border: 0; color: #313946; background: transparent; }
.gac-app .gac-catalog-brand .gac-catalog-logo { width: 54px; height: 54px; flex-basis: 54px; border-radius: 50%; color: #243a59; color: color-mix(in srgb, var(--brand-color) 40%, #101929); background: #f6f7f9; background: color-mix(in srgb, var(--brand-color) 12%, #fff); box-shadow: 0 2px 5px rgba(16, 25, 41, .08); }
.gac-app .gac-catalog-brand .gac-catalog-logo:has(img:not(.is-fallback)) { background: var(--brand-color); }
.gac-app .gac-catalog-brand .gac-catalog-logo img { background: transparent; }
.gac-app .gac-catalog-brand > span:last-child { width: 100%; font-size: 9px; line-height: 1.4; text-align: center; overflow-wrap: anywhere; }

.gac-app .gac-catalog-controls { position: fixed; z-index: 45; bottom: calc(12px + env(safe-area-inset-bottom, 0px)); left: 50%; display: flex; width: min(320px, calc(100% - 24px)); gap: 8px; align-items: center; transform: translateX(-50%); }
.gac-app .gac-catalog-dock, .gac-app .gac-catalog-brand-trigger { display: flex; min-height: 44px; align-items: center; border: 1px solid #263142; border-radius: 999px; color: #fff; background: #101b2b; box-shadow: 0 3px 8px rgba(16, 25, 41, .22); }
.gac-app .gac-catalog-brand-trigger { width: 52px; height: 52px; padding: 4px; flex: 0 0 52px; justify-content: center; border-radius: 50%; font-size: 12px; font-weight: 600; }
.gac-app .gac-catalog-brand-trigger.has-brand { border-color: var(--catalog-accent); color: var(--catalog-on-brand); background: var(--catalog-brand); }
.gac-app .gac-catalog-brand-trigger .gac-catalog-logo { width: 42px; height: 42px; flex: 0 0 42px; border: 0; border-radius: 50%; color: #243a59; background: #fff; }
.gac-app .gac-catalog-brand-trigger .gac-catalog-logo img { padding: 15%; object-fit: contain; }
.gac-app .gac-catalog-brand-trigger .gac-catalog-logo-fallback { font-size: 16px; }
.gac-app .gac-catalog-brand-trigger svg { width: 22px; height: 22px; flex-shrink: 0; }
.gac-app .gac-catalog-dock { min-width: 0; padding: 2px 6px; flex: 1; }
.gac-app .gac-catalog-dock button { position: relative; display: flex; min-width: 0; min-height: 36px; padding: 2px 6px; flex: 1; align-items: center; justify-content: center; gap: 6px; border: 0; color: inherit; background: transparent; font-size: 12px; font-weight: 550; }
.gac-app .gac-catalog-dock button::after { position: absolute; inset: -4px 0; content: ""; }
.gac-app .gac-catalog-dock button + button { border-left: 1px solid #354153; }
.gac-app .gac-catalog-dock svg { width: 17px; height: 17px; flex-shrink: 0; }
.gac-app .gac-catalog-filter-count { display: grid; min-width: 15px; height: 15px; padding: 0 3px; place-items: center; border-radius: 99px; color: #101929; background: #fff; font-size: 9px; }
.gac-app .gac-catalog-sort-dot { width: 5px; height: 5px; border-radius: 50%; background: #fff; }
.gac-app .gac-catalog-sort-options, .gac-app .gac-catalog-menu-options { display: grid; gap: 10px; }
.gac-app .gac-catalog-sort-options button { display: flex; min-height: 48px; padding: 10px 14px; align-items: center; justify-content: space-between; gap: 12px; border: 1px solid #e2e7ef; border-radius: 10px; color: #34445c; background: #fff; font-size: 14px; }
.gac-app .gac-catalog-sort-options button[aria-pressed="true"] { border-color: var(--gac-primary); color: var(--gac-primary-dark); background: #edf3ff; }

.gac-app .gac-sheet-overlay .gac-brand-picker-sheet { display: flex; max-height: min(88vh, 680px); max-height: min(88dvh, 680px); flex-direction: column; overflow: hidden; }
.gac-app .gac-brand-picker-sheet > header, .gac-app .gac-brand-picker-sheet > .gac-sheet-handle { flex-shrink: 0; }
.gac-app .gac-brand-picker-sheet .gac-sheet-body { overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; }
.gac-app .gac-brand-picker-intro { margin: 0 0 16px; color: #647084; font-size: 13px; line-height: 1.5; }
.gac-app .gac-brand-picker-search { position: sticky; z-index: 2; top: 0; display: flex; min-height: 46px; padding: 0 12px; align-items: center; gap: 10px; border: 1px solid #dce3ec; border-radius: 12px; background: #f7f9fc; }
.gac-app .gac-brand-picker-search svg { width: 18px; height: 18px; flex-shrink: 0; color: #647084; }
.gac-app .gac-brand-picker-search:focus-within { border-color: var(--catalog-accent, var(--gac-primary)); }
.gac-app .gac-brand-picker-search input { width: 100%; min-width: 0; min-height: 44px; padding: 0; border: 0; outline: none; color: #101929; background: transparent; font-size: 16px; }
.gac-app .gac-brand-picker-all { display: flex; width: 100%; min-height: 46px; margin: 12px 0 16px; padding: 10px 12px; align-items: center; justify-content: space-between; gap: 12px; border: 1px solid #e3e8ef; border-radius: 12px; color: #34445c; background: #fff; font-size: 13px; font-weight: 600; }
.gac-app .gac-brand-picker-all > span { display: flex; align-items: center; gap: 10px; }
.gac-app .gac-brand-picker-all svg { width: 18px; height: 18px; }
.gac-app .gac-brand-picker-grid { display: grid; padding: 3px 3px 8px; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.gac-app .gac-brand-picker-option { position: relative; display: flex; min-width: 0; padding: 12px 6px 10px; flex-direction: column; align-items: center; justify-content: flex-start; gap: 9px; border: 1px solid #e3e8ef; border-radius: 14px; color: #263346; background: #fff; }
.gac-app .gac-brand-picker-option .gac-catalog-logo { width: 58px; height: 58px; flex-basis: 58px; border: 1px solid #edf0f5; border-radius: 12px; color: #34445c; background: #f4f7fc; background: color-mix(in srgb, var(--picker-brand) 12%, #fff); box-shadow: none; }
.gac-app .gac-brand-picker-option .gac-catalog-logo img { padding: 4px; background: #fff; }
.gac-app .gac-brand-picker-name { width: 100%; font-size: 12px; font-weight: 600; line-height: 1.4; text-align: center; overflow-wrap: anywhere; }
.gac-app .gac-brand-picker-option[aria-pressed="true"], .gac-app .gac-brand-picker-all[aria-pressed="true"] { border-color: var(--catalog-accent, var(--gac-primary)); color: #263346; background: #f5f8fd; background: color-mix(in srgb, var(--catalog-accent, var(--gac-primary)) 5%, #fff); }
.gac-app .gac-brand-picker-all[aria-pressed="true"] > svg { color: var(--catalog-accent, var(--gac-primary)); }
.gac-app .gac-brand-picker-check { position: absolute; top: 5px; right: 5px; display: grid; width: 18px; height: 18px; place-items: center; border-radius: 50%; color: #fff; background: var(--catalog-accent, var(--gac-primary)); }
.gac-app .gac-brand-picker-check svg { width: 12px; height: 12px; }
.gac-app .gac-brand-picker-empty, .gac-app .gac-brand-picker-message { margin: 4px 0 16px; padding: 20px 12px; border-radius: 12px; color: #647084; background: #f7f9fc; font-size: 13px; line-height: 1.5; text-align: center; }
.gac-app .gac-brand-picker-message, .gac-app .gac-brand-picker-grid > .gac-inline-loader { grid-column: 1 / -1; }
.gac-app .gac-brand-picker-message p { margin: 0 0 12px; }

@media (max-width: 359px) {
    .gac-app .gac-catalog-card { gap: 10px; padding: 10px; grid-template-columns: 82px minmax(0, 1fr); }
    .gac-app .gac-catalog-summary { display: flex; flex-direction: column-reverse; justify-content: flex-end; gap: 5px; }
    .gac-app .gac-catalog-price { text-align: left; }
    .gac-app .gac-catalog-price > div { justify-content: flex-start; }
}

@media (min-width: 600px) {
    .gac-app.gac-route-products .gac-screen.gac-catalog-screen { --catalog-title-height: calc(64px + env(safe-area-inset-top, 0px)); }
    .gac-app .gac-catalog-sticky-heading { padding-inline: 24px; }
    .gac-app .gac-catalog-sticky-tabs { margin-inline: -24px; padding-inline: 24px; }
    .gac-app .gac-catalog-hero { padding: 0 24px 24px; }
    .gac-app .gac-catalog-brand-intro { gap: 22px; }
    .gac-app .gac-catalog-brand-intro > .gac-catalog-logo { width: 108px; height: 108px; flex-basis: 108px; }
    .gac-app .gac-catalog-brand-intro h2 { font-size: 26px; }
    .gac-app .gac-catalog-brand-intro p { font-size: 14px; }
    .gac-app .gac-content.gac-catalog-content { padding: 14px 24px 100px; }
    .gac-app .gac-catalog-grid.is-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .gac-app .gac-catalog-grid { gap: 18px; }
    .gac-app .gac-catalog-toolbar { margin-bottom: 12px; }
    .gac-app .gac-catalog-count { font-size: 14px; }
    .gac-app .gac-catalog-view button { width: 42px; height: 42px; }
    .gac-app .gac-catalog-controls { width: 374px; gap: 10px; }
    .gac-app .gac-catalog-dock, .gac-app .gac-catalog-brand-trigger { min-height: 46px; }
    .gac-app .gac-catalog-brand-trigger { width: 56px; height: 56px; flex-basis: 56px; font-size: 14px; }
    .gac-app .gac-catalog-brand-trigger .gac-catalog-logo { width: 46px; height: 46px; flex-basis: 46px; }
    .gac-app .gac-catalog-dock button { min-height: 36px; font-size: 14px; }
    .gac-app .gac-brand-picker-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
    .gac-app .gac-brand-picker-option { padding-block: 16px 12px; }
    .gac-app .gac-brand-picker-option .gac-catalog-logo { width: 68px; height: 68px; flex-basis: 68px; }
    .gac-app .gac-brand-picker-name { font-size: 13px; }
    .gac-app .gac-catalog-brands { gap: 24px; }
    .gac-app .gac-catalog-brand { width: 78px; min-width: 78px; }
    .gac-app .gac-catalog-brand .gac-catalog-logo { width: 64px; height: 64px; flex-basis: 64px; }
    .gac-app .gac-catalog-brand > span:last-child { font-size: 11px; }
    .gac-app .gac-catalog-section-heading { margin-top: 20px; }
    .gac-app .gac-catalog-section-heading h2 { font-size: 18px; }
    .gac-app .gac-catalog-section-heading > button { font-size: 13px; }
}

@media (min-width: 600px) and (max-width: 899px) {
    .gac-app .gac-catalog-summary { display: flex; flex-direction: column-reverse; justify-content: flex-end; gap: 6px; }
    .gac-app .gac-catalog-price { text-align: left; }
    .gac-app .gac-catalog-price > div { justify-content: flex-start; }
}

@media (min-width: 1024px) {
    .gac-app.gac-route-products .gac-screen.gac-catalog-screen { --catalog-nav-offset: 77px; --catalog-title-height: 64px; }
    .gac-app .gac-catalog-sticky-heading { width: min(100% - 64px, 1232px); margin: 22px auto 0; padding: 0 26px; border-radius: 24px 24px 0 0; }
    .gac-app .gac-catalog-hero { width: min(100% - 64px, 1232px); margin: 0 auto; padding: 0 26px 28px; border-radius: 0 0 24px 24px; }
    .gac-app .gac-catalog-heading h1 { font-size: 22px; }
    .gac-app .gac-catalog-brand-intro { margin-top: 12px; }
    .gac-app .gac-catalog-brand-intro p { max-width: 650px; }
    .gac-app.gac-route-products .gac-catalog-content .gac-product-tabs .gac-product-tab { min-height: 38px; padding-inline: 20px; font-size: 13px; }
    .gac-app .gac-catalog-card { padding: 20px; grid-template-columns: minmax(120px, 30%) minmax(0, 1fr); gap: 18px; border-radius: 18px; }
    .gac-app .gac-catalog-name { width: calc(100% - 20px); margin-bottom: 8px; font-size: 16px; line-height: 21px; }
    .gac-app .gac-catalog-model { font-size: 12px; }
    .gac-app .gac-catalog-saving { font-size: 11px; }
    .gac-app .gac-catalog-description { margin-bottom: 12px; font-size: 12px; }
    .gac-app .gac-catalog-features { gap: 10px; }
    .gac-app .gac-catalog-features li { font-size: 11px; }
    .gac-app .gac-catalog-features li svg { width: 15px; height: 15px; flex-basis: 15px; }
    .gac-app .gac-catalog-price > strong { font-size: 19px; }
    .gac-app .gac-catalog-price del { font-size: 11px; }
    .gac-app .gac-catalog-price > div > span { font-size: 9px; }
    .gac-app .gac-catalog-specs { margin-top: 12px; font-size: 11px; }
    .gac-app .gac-catalog-footer { margin-top: 10px; padding-top: 8px; flex-direction: row; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 8px; }
    .gac-app .gac-catalog-reviews { min-height: 34px; font-size: 11px; }
    .gac-app .gac-catalog-rating { font-size: 11px; }
    .gac-app .gac-catalog-details { min-height: 36px; padding-inline: 12px; font-size: 12px; }
    .gac-app .gac-catalog-heart { width: 34px; height: 34px; }
    .gac-app .gac-catalog-controls { bottom: 22px; }
    .gac-app .gac-catalog-grid.is-list .gac-catalog-card { grid-template-columns: 180px minmax(0, 1fr); }
    .gac-app .gac-catalog-grid.is-list .gac-catalog-features { display: flex; flex-wrap: wrap; gap: 14px; }
    .gac-app .gac-catalog-grid.is-list .gac-catalog-copy { justify-content: center; }
    .gac-app .gac-catalog-grid.is-list .gac-catalog-summary { flex: 0; }
}

@media (max-width: 599px) {
    .gac-app .gac-catalog-hero { padding-bottom: 16px; }
    .gac-app .gac-catalog-heading { min-height: 52px; }
    .gac-app .gac-catalog-brand-intro { margin-top: 8px; }
    .gac-app .gac-catalog-brand-intro > .gac-catalog-logo { height: 84px; }
    .gac-app .gac-catalog-toolbar { min-height: 48px; }
    .gac-app .gac-catalog-card { padding: 11px; }
    .gac-app .gac-catalog-description { margin-bottom: 6px; }
    .gac-app .gac-catalog-features { margin-bottom: 6px; }
    .gac-app .gac-catalog-footer { padding-top: 2px; }
    .gac-app .gac-catalog-grid.is-list .gac-catalog-card { grid-template-columns: 78px minmax(0, 1fr); gap: 12px; }
    .gac-app .gac-catalog-grid.is-list .gac-catalog-image { min-height: 78px; }
    .gac-app .gac-catalog-grid.is-list .gac-catalog-footer { flex-direction: row; flex-wrap: wrap; align-items: center; justify-content: space-between; }
}

@media (hover: hover) and (pointer: fine) {
    .gac-app .gac-catalog-heading > button:hover { border-color: currentColor; background: color-mix(in srgb, var(--catalog-on-brand) 12%, var(--catalog-brand)); }
    .gac-app .gac-catalog-brand-trigger:not(.has-brand):hover, .gac-app .gac-catalog-dock button:hover { background: #26364d; }
    .gac-app .gac-catalog-brand-trigger.has-brand:hover { box-shadow: 0 0 0 3px color-mix(in srgb, var(--catalog-accent) 18%, transparent), 0 3px 8px rgba(16, 25, 41, .22); }
    .gac-app .gac-brand-picker-option:hover, .gac-app .gac-brand-picker-all:hover { border-color: var(--catalog-accent, var(--gac-primary)); }
    .gac-app.gac-route-products .gac-catalog-content .gac-product-tabs .gac-product-tab:not(.is-active):hover { border-color: var(--catalog-accent); color: var(--catalog-accent); background: #fff; }
    .gac-app .gac-catalog-details:hover { color: #fff; background: var(--catalog-accent); }
    .gac-app .gac-catalog-card:hover { border-color: #dce2ec; box-shadow: 0 5px 18px rgba(16, 25, 41, .075); }
}

@media (forced-colors: active) {
    .gac-app .gac-catalog-card, .gac-app .gac-catalog-dock, .gac-app .gac-catalog-brand-trigger, .gac-app .gac-catalog-logo { border: 1px solid CanvasText; }
    .gac-app .gac-brand-picker-option[aria-pressed="true"], .gac-app .gac-brand-picker-all[aria-pressed="true"] { outline: 2px solid Highlight; }
    .gac-app.gac-route-products .gac-catalog-content .gac-product-tab.is-active { outline: 2px solid Highlight; }
}
/* Product details: scoped presentation only; purchase and variant hooks unchanged. */
.gac-app.gac-route-product .gac-product-detail { background: #f1f3f6; }
.gac-app.gac-route-product .gac-product-detail > .gac-content { padding: 0 0 28px; }
.gac-app.gac-route-product .gac-product-hero { min-height: 0; background: #fff; border-bottom: 1px solid #e8edf5; }
.gac-app.gac-route-product .gac-product-gallery { min-height: 0; padding: 12px 16px 8px; }
.gac-app.gac-route-product .gac-product-main-image { height: clamp(220px, 64vw, 350px); padding: 14px 24px 0; background: #fff; border-radius: 0; }
.gac-app.gac-route-product .gac-gallery-thumbs { height: 62px; gap: 10px; padding: 3px; justify-content: safe center; }
.gac-app.gac-route-product .gac-gallery-thumbs button { width: 56px; height: 56px; border-radius: 6px; }
.gac-app.gac-route-product .gac-pdp-summary { min-width: 0; margin-top: 0; padding: 18px 16px; border: 0; border-radius: 0; background: #fff; box-shadow: none; }
.gac-app.gac-route-product .gac-product-heading > div { flex-wrap: wrap; gap: 8px 12px; }
.gac-app.gac-route-product .gac-product-heading > div > span { font-size: 11px; font-weight: 700; letter-spacing: .08em; }
.gac-app.gac-route-product .gac-product-heading > h1 { margin-top: 6px; color: #212121; font-size: clamp(16px, 2vw, 23px); font-weight: 500; line-height: 1.5; letter-spacing: -.015em; overflow-wrap: anywhere; }
.gac-app.gac-route-product .gac-product-heading > p { margin-top: 4px; font-size: 11px; line-height: 1.5; overflow-wrap: anywhere; }
.gac-app.gac-route-product .gac-product-heading .gac-rating { color: #fff; background: #168443; font-size: 12px; border-radius: 4px; min-height: 25px; gap: 4px; padding: 3px 6px; }
.gac-app.gac-route-product .gac-product-price-row { position: relative; display: block; margin-top: 10px; padding: 4px 0 8px; border: 0; border-radius: 0; background: transparent; }
.gac-app.gac-route-product .gac-product-price-row > :last-child:not(div) { position: absolute; right: 0; bottom: 8px; }
.gac-app.gac-route-product .gac-product-price-row strong { color: #212121; font-size: clamp(27px, 3vw, 32px); font-weight: 650; letter-spacing: -.03em; }
.gac-app.gac-route-product .gac-product-price-row del { font-size: 13px; }
.gac-app.gac-route-product .gac-product-price-row small { padding-right: 80px; font-size: 11px; line-height: 1.5; }
.gac-app.gac-route-product .gac-spec-grid { grid-template-columns: minmax(0, 1fr); margin-top: 8px; gap: 0; }
.gac-app.gac-route-product .gac-spec-grid > div { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: 14px; min-height: 44px; padding: 12px 0; border: 0; border-bottom: 1px solid #f0f0f0; border-radius: 0; background: #fff; text-align: left; align-items: center; }
.gac-app.gac-route-product .gac-spec-grid small { font-size: 11px; line-height: 1.4; }
.gac-app.gac-route-product .gac-spec-grid strong { margin-top: 0; font-size: 13px; font-weight: 500; line-height: 1.4; overflow-wrap: anywhere; }
.gac-app.gac-route-product .gac-detail-info-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 16px; }
.gac-app.gac-route-product .gac-detail-info-grid article { display: grid; grid-template-columns: 24px minmax(0, 1fr); column-gap: 9px; row-gap: 3px; min-height: 66px; padding: 10px 4px; border: 0; border-radius: 0; text-align: left; align-content: center; }
.gac-app.gac-route-product .gac-detail-info-grid svg { grid-row: 1 / 3; width: 22px; height: 22px; align-self: center; }
.gac-app.gac-route-product .gac-detail-info-grid strong { font-size: 12px; font-weight: 650; }
.gac-app.gac-route-product .gac-detail-info-grid small { grid-column: 2; font-size: 10px; line-height: 1.4; }
.gac-app.gac-route-product .gac-variant-selector { margin-top: 18px; padding-top: 14px; border-top: 1px solid #eee; }
.gac-app.gac-route-product .gac-variant-selector > h3 { font-size: 13px; font-weight: 650; }
.gac-app.gac-route-product .gac-variant-selector .gac-chip { min-height: 42px; padding: 10px 15px; font-size: 12px; border-radius: 5px; }
.gac-app.gac-route-product .gac-variant-selector .gac-chip.is-active { color: #1d5ace; background: #f2f7ff; border: 1.5px solid #2874f0; box-shadow: none; }
.gac-app.gac-route-product .gac-buy-options { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; margin-top: 20px; padding: 18px 0 0; border: 0; border-top: 1px solid #edf0f5; border-radius: 0; box-shadow: none; }
.gac-app.gac-route-product .gac-buy-options > div:first-child { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.gac-app.gac-route-product .gac-buy-options > div > span { margin: 0; color: #253047; font-size: 14px; font-weight: 600; }
.gac-app.gac-route-product .gac-buy-options .gac-qty { display: grid; grid-template-columns: 42px 40px 42px; width: auto; min-width: 0; height: 44px; padding: 0; gap: 0; overflow: hidden; border: 1px solid #dce2ea; border-radius: 10px; background: #fff; }
.gac-app.gac-route-product .gac-buy-options .gac-qty button { display: grid; place-items: center; width: 42px; height: 42px; padding: 0; border: 0; border-radius: 0; color: #253047; background: color-mix(in srgb, var(--pdp-brand, #0755e9) 6%, white); }
.gac-app.gac-route-product .gac-buy-options .gac-qty strong { display: grid; place-items: center; min-width: 0; font-size: 15px; font-weight: 650; font-variant-numeric: tabular-nums; }
.gac-app.gac-route-product .gac-exchange-link { display: grid; grid-template-columns: 36px minmax(0, 1fr) 18px; width: 100%; min-height: 78px; padding: 14px; gap: 12px; border: 1px solid #dfe5ed; border-radius: 12px; color: #253047; background: #fafbfd; }
.gac-app.gac-route-product .gac-exchange-link > svg:first-child { width: 36px; height: 36px; padding: 8px; border-radius: 10px; color: var(--pdp-on-brand, #fff); background: var(--pdp-brand, #0755e9); }
.gac-app.gac-route-product .gac-exchange-link > svg:last-child { width: 18px; height: 18px; color: #67748a; }
.gac-app.gac-route-product .gac-exchange-link strong { font-size: 13px; font-weight: 600; line-height: 1.45; }
.gac-app.gac-route-product .gac-exchange-link small { margin-top: 4px; color: #68768a; font-size: 11px; font-weight: 400; line-height: 1.45; }
.gac-app.gac-route-product .gac-exchange-applied { grid-template-columns: 24px minmax(0, 1fr) 40px 40px; gap: 8px; min-height: 78px; padding: 12px; border-radius: 12px; }
.gac-app.gac-route-product .gac-exchange-applied strong { font-size: 12px; white-space: normal; overflow-wrap: anywhere; }
.gac-app.gac-route-product .gac-exchange-applied small { font-size: 11px; }
.gac-app.gac-route-product .gac-exchange-applied button { min-width: 40px; min-height: 44px; font-size: 12px; border-radius: 8px; background: #fff; }
@media (hover: hover) {
    .gac-app.gac-route-product .gac-exchange-link:hover { border-color: var(--pdp-brand, #0755e9); background: color-mix(in srgb, var(--pdp-brand, #0755e9) 4%, white); }
}
.gac-app.gac-route-product .gac-qty button { min-width: 40px; min-height: 40px; }
.gac-app.gac-route-product .gac-pdp-information { min-width: 0; }
.gac-app.gac-route-product .gac-pdp-information > :is(.gac-detail-section, .gac-warranty-card) { margin-top: 8px; padding: 20px 16px; border: 0; border-radius: 0; background: #fff; box-shadow: none; overflow-wrap: anywhere; }
.gac-app.gac-route-product .gac-detail-section h2 { color: #17253d; font-size: 17px; font-weight: 650; letter-spacing: -.02em; }
.gac-app.gac-route-product .gac-rich-text, .gac-app.gac-route-product .gac-highlight-list li { font-size: 13px; line-height: 1.75; }
.gac-app.gac-route-product .gac-rich-text { overflow-x: auto; }
.gac-app.gac-route-product .gac-highlight-list { gap: 12px; }
.gac-app.gac-route-product .gac-highlight-list li { gap: 10px; }
.gac-app.gac-route-product .gac-highlight-list svg { margin-top: 4px; }
.gac-app.gac-route-product .gac-warranty-card strong { font-size: 14px; }
.gac-app.gac-route-product .gac-warranty-card :is(p, small) { font-size: 12px; line-height: 1.6; }
.gac-app.gac-route-product .gac-product-actions { border-top: 1px solid #e5e5e5; box-shadow: 0 -2px 8px #0000000a; gap: 0; padding: 0 0 env(safe-area-inset-bottom, 0px); background: #fff; }
.gac-app.gac-route-product .gac-product-actions .gac-btn { min-height: 56px; border: 0; border-radius: 0; font-size: 14px; font-weight: 600; box-shadow: none; }
.gac-app.gac-route-product :is(.gac-product-actions, .gac-desktop-product-actions) .gac-btn-outline { color: #212121; background: #fff; border-color: #e0e0e0; }
.gac-app.gac-route-product :is(.gac-product-actions, .gac-desktop-product-actions) .gac-btn-primary { color: var(--pdp-on-brand, #fff); background: var(--pdp-brand, #0755e9); box-shadow: none; }
.gac-app.gac-route-product :is(.gac-product-actions, .gac-desktop-product-actions) .gac-btn-primary:not(:disabled):hover { filter: brightness(.94); }
.gac-app.gac-route-product :is(.gac-product-actions, .gac-desktop-product-actions) .gac-btn-outline { border: 1px solid var(--pdp-brand, #0755e9); background: color-mix(in srgb, var(--pdp-brand, #0755e9) 9%, white); }
.gac-app.gac-route-product .gac-variant-selector .gac-chip.is-active { color: var(--pdp-on-brand, #fff); background: var(--pdp-brand, #0755e9); border-color: var(--pdp-brand, #0755e9); }
.gac-app.gac-route-product .gac-gallery-thumbs button.is-active { border-color: var(--pdp-brand, #0755e9); box-shadow: 0 0 0 1px var(--pdp-brand, #0755e9); }
.gac-app.gac-route-product .gac-pdp-slider { display: flex; width: 100%; min-width: 0; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; overscroll-behavior-x: contain; touch-action: pan-x pan-y pinch-zoom; }
.gac-app.gac-route-product .gac-pdp-slider::-webkit-scrollbar { display: none; }
.gac-app.gac-route-product .gac-pdp-slider .gac-product-main-image { flex: 0 0 100%; min-width: 0; scroll-snap-align: center; scroll-snap-stop: always; padding: 0; border-radius: 0; }
.gac-app.gac-route-product .gac-product-main-image img { mix-blend-mode: normal; object-fit: contain; }
.gac-app.gac-route-product .gac-image-viewer-stage { touch-action: none; cursor: grab; }
.gac-app.gac-route-product .gac-image-viewer-stage:active { cursor: grabbing; }
.gac-app.gac-route-product .gac-pdp-gallery-actions { position: absolute; z-index: 2; top: 16px; right: 12px; display: grid; gap: 10px; }
.gac-app.gac-route-product .gac-pdp-gallery-actions .gac-icon-btn { width: 38px; height: 38px; min-width: 38px; min-height: 38px; padding: 0; aspect-ratio: 1; border: 1px solid #e8e8e8; border-radius: 50%; color: #6b7280; background: #fff; box-shadow: 0 2px 6px #00000008; }
.gac-app.gac-route-product .gac-pdp-gallery-actions .gac-icon-btn.is-active { color: #e33c59; }
.gac-app.gac-route-product .gac-pdp-gallery-actions .gac-icon-btn.is-active svg { fill: #ffe4eb; }
.gac-app.gac-route-product .gac-pdp-quick-specs { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; padding: 4px 16px 14px; }
.gac-app.gac-route-product .gac-pdp-quick-specs:empty { display: none; }
.gac-app.gac-route-product .gac-pdp-quick-specs span { padding: 5px 9px; color: #596575; background: #f5f6f8; border-radius: 4px; font-size: 10px; }
.gac-app.gac-route-product .gac-pdp-rating-link { display: flex; align-items: center; gap: 8px; min-height: 40px; margin-top: 4px; padding: 0; border: 0; color: #2874f0; background: transparent; font-size: 12px; }
.gac-app.gac-route-product .gac-pdp-rating-link svg { width: 13px; height: 13px; }
.gac-app.gac-route-product .gac-product-price-row .gac-pdp-discount { display: inline-flex; align-items: center; gap: 1px; padding: 0; color: #168443; background: transparent; font-size: 19px; font-weight: 650; }
.gac-app.gac-route-product .gac-pdp-discount svg { width: 17px; height: 17px; }
.gac-app.gac-route-product .gac-pdp-saving { display: flex; align-items: center; gap: 8px; padding: 10px 12px; color: #19783e; background: #eff9f0; border-radius: 4px; font-size: 12px; line-height: 1.5; }
.gac-app.gac-route-product .gac-pdp-saving svg { width: 17px; height: 17px; flex-shrink: 0; }
@media (min-width: 1024px) {
    .gac-app.gac-route-product .gac-product-detail { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); padding: 24px 32px 64px; gap: 16px 24px; }
    .gac-app.gac-route-product .gac-product-detail > .gac-content { display: contents; }
    .gac-app.gac-route-product .gac-product-detail > .gac-product-hero { grid-column: 1; grid-row: 1; top: 155px; min-height: 0; border: 1px solid #ececec; border-radius: 4px; box-shadow: none; }
    .gac-app.gac-route-product .gac-product-gallery { min-height: 0; padding: 24px; }
    .gac-app.gac-route-product .gac-product-main-image { height: 400px; padding: 8px; }
    .gac-app.gac-route-product .gac-pdp-summary { grid-column: 2; grid-row: 1; margin: 0; padding: 24px; border-radius: 4px; }
    .gac-app.gac-route-product .gac-pdp-information { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 16px; }
    .gac-app.gac-route-product .gac-pdp-information > :is(.gac-detail-section, .gac-warranty-card) { margin: 0; padding: 26px; }
    .gac-app.gac-route-product .gac-desktop-product-actions .gac-btn { min-height: 50px; border-radius: 4px; }
}
