:root {
            --gold: #f56924;
            --orange: #f56924;
            --gold-dark: #d95316;
            --gold-light: #eaf2fb;
            --navy: #004ba4;
            --ink: #07376d;
            --muted: #6B7280;
            --line: #E1E5F0;
            --cream: #f3f7fc;
            --bg: #FFFFFF;
            --dark: #004ba4;
            --radius: 14px;
        }

        * { box-sizing: border-box; }
        body { margin: 0; font-family: 'Inter', 'Segoe UI', Tahoma, sans-serif; color: var(--ink); background: var(--bg); line-height: 1.5; -webkit-font-smoothing: antialiased; }
        img { max-width: 100%; display: block; }
        a { text-decoration: none; color: inherit; }
        ul { margin: 0; padding: 0; list-style: none; }
        button { font-family: inherit; }
        svg { display: block; flex-shrink: 0; }

        .wrap { max-width: 1280px; margin: 0 auto; padding: 0 24px; }

        /* ---------- Topbar ---------- */
        .topbar { background: var(--dark); color: #cfd3da; font-size: 12.5px; }
        .topbar .wrap { display: flex; align-items: center; justify-content: space-between; padding: 9px 24px; gap: 16px; flex-wrap: wrap; }
        .topbar-left { display: flex; align-items: center; gap: 22px; }
        .topbar-left span { display: flex; align-items: center; gap: 7px; }
        .topbar-right { display: flex; align-items: center; gap: 20px; }
        .topbar-right a { color: #cfd3da; }
        .topbar-right a:hover { color: #fff; }
        .topbar-right .drop { display: flex; align-items: center; gap: 4px; cursor: pointer; }
        .topbar-right .sep { width: 1px; height: 12px; background: rgba(255,255,255,.15); }
        .currency-switcher { display: inline-flex; min-height: 30px; align-items: center; gap: 6px; padding: 3px 7px 3px 9px; border: 1px solid rgba(255,255,255,.28); border-radius: 8px; background: rgba(255,255,255,.08); color: #fff; }
        .currency-switcher label { font-size: 11px; font-weight: 600; cursor: pointer; }
        .currency-switcher select { min-width: 58px; padding: 3px 20px 3px 6px; border: 0; border-left: 1px solid rgba(255,255,255,.22); background: transparent; color: #fff; font: inherit; font-weight: 800; cursor: pointer; outline: 0; }
        .currency-switcher select option { color: var(--ink); background: #fff; }
        .currency-switcher:hover, .currency-switcher:focus-within { border-color: #fff; background: rgba(255,255,255,.14); }

        /* ---------- Header ---------- */
        header.site-header { background: #fff; border-bottom: 1px solid var(--line); }
        .header-inner { display: flex; align-items: center; gap: 20px; padding: 18px 24px; }

        .menu-toggle {
            display: none; align-items: center; justify-content: center;
            width: 42px; height: 42px; border-radius: 10px; border: 1px solid var(--line);
            background: #fff; color: var(--ink); flex-shrink: 0; cursor: pointer; padding: 0;
            position: relative; z-index: 1201;
        }
        .menu-toggle:hover { border-color: var(--gold); color: var(--gold-dark); }
        .menu-toggle__icon { position: relative; width: 20px; height: 16px; }
        .menu-toggle__icon span {
            position: absolute; left: 0; width: 20px; height: 2px; border-radius: 999px;
            background: currentColor; transform-origin: center; transition: transform .28s ease, opacity .2s ease, top .28s ease;
        }
        .menu-toggle__icon span:nth-child(1) { top: 0; }
        .menu-toggle__icon span:nth-child(2) { top: 7px; }
        .menu-toggle__icon span:nth-child(3) { top: 14px; }
        .menu-toggle[aria-expanded="true"] .menu-toggle__icon span:nth-child(1) { top: 7px; transform: rotate(45deg); }
        .menu-toggle[aria-expanded="true"] .menu-toggle__icon span:nth-child(2) { opacity: 0; transform: scaleX(0); }
        .menu-toggle[aria-expanded="true"] .menu-toggle__icon span:nth-child(3) { top: 7px; transform: rotate(-45deg); }
        .menu-backdrop { display: none; }

        .logo { display: flex; align-items: center; gap: 10px; flex-shrink: 0; }
        .logo-img { height: 120px; width: auto; display: block; }

        .search-bar { flex: 1; display: flex; max-width: 620px; min-width: 0; }
        .search-bar input {
            flex: 1; min-width: 0; border: 1.5px solid var(--line); border-right: none; background: #FAFAFB;
            border-radius: 10px 0 0 10px; padding: 12px 18px; font-size: 14px; outline: none; font-family: inherit;
        }
        .search-bar input:focus { border-color: var(--gold-dark); }
        .search-bar button { background: var(--gold); border: none; color: #fff; padding: 0 22px; border-radius: 0 10px 10px 0; cursor: pointer; display: flex; align-items: center; }
        .search-bar button:hover { background: var(--gold-dark); }

        .header-actions { display: flex; align-items: stretch; gap: 8px; margin-left: auto; flex-shrink: 0; }
        .header-actions .item {
            display: flex; align-items: center; gap: 9px; min-height: 48px; padding: 7px 9px;
            border: 1px solid transparent; border-radius: 10px; position: relative; white-space: nowrap;
            color: var(--ink); transition: color .18s ease, background .18s ease, border-color .18s ease;
        }
        .header-actions .item:hover { color: var(--gold-dark); background: #fff; border-color: var(--line); }
        .header-actions .action-icon {
            position: relative; width: 28px; height: 34px; display: flex; align-items: center; justify-content: center;
            color: var(--navy);
        }
        .header-actions .item .txt { line-height: 1.2; }
        .header-actions .item .txt small { display: block; margin-bottom: 2px; font-size: 10.5px; color: var(--muted); }
        .header-actions .item .txt strong { display: block; font-size: 13px; line-height: 1.2; font-weight: 700; color: var(--ink); }
        .header-actions .badge {
            position: absolute; top: -4px; right: -3px; background: var(--gold); color: #fff;
            font-size: 9px; font-weight: 800; min-width: 17px; height: 17px; padding: 0 4px;
            border: 2px solid #fff; border-radius: 999px; display: flex; align-items: center; justify-content: center;
        }

        .subnav { border-bottom: 1px solid var(--line); }
        .subnav .wrap { display: flex; align-items: center; gap: 26px; padding: 13px 24px; overflow-x: auto; }
        .subnav a { font-size: 13.5px; font-weight: 600; color: var(--ink); white-space: nowrap; padding-bottom: 4px; border-bottom: 2px solid transparent; }
        .subnav a:hover { color: var(--gold-dark); }
        .subnav a.active { color: var(--gold-dark); border-color: var(--gold); }
        .subnav .drop { display: flex; align-items: center; gap: 4px; }
        .subnav .special { margin-left: auto; color: var(--gold); display: flex; align-items: center; gap: 6px; }
        .subnav .special:hover { color: var(--gold-dark); }

        /* ---------- Hero ---------- */
        .hero { padding: 0; }
        .hero-panel {
            background: var(--cream); overflow: hidden; position: relative; width: 100%;
        }
        .hero-panel .wrap {
            display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 20px;
        }
        .hero-copy { padding: 60px 20px 60px 0; }
        .hero-copy h1 { font-size: 46px; line-height: 1.12; font-weight: 800; letter-spacing: -.01em; margin: 0 0 18px; color: var(--ink); }
        .hero-copy p { font-size: 15.5px; color: var(--muted); max-width: 420px; margin: 0 0 30px; }
        .hero-description > :first-child { margin-top: 0; }
        .hero-description > :last-child { margin-bottom: 30px; }
        .hero-description ul, .hero-description ol { max-width: 440px; margin: 0 0 30px; padding-left: 22px; color: var(--muted); font-size: 15px; }
        .btn-gold {
            background: var(--gold); color: #fff; font-weight: 700; padding: 15px 28px; border-radius: 12px;
            font-size: 15px; display: inline-flex; align-items: center; gap: 10px; border: none; cursor: pointer;
        }
        .btn-gold:hover { background: var(--gold-dark); }

        .hero-art { position: relative; padding: 30px 0 30px 30px; display: flex; align-items: center; justify-content: center; overflow: hidden; align-self: stretch; }
        .hero-art svg { display: none; }
        .hero-picture {
            display: block;
            width: 100%;
            height: 100%;
        }
        .hero-product-image {
            display: block;
            width: 100%;
            height: 100%;
            min-height: 330px;
            object-fit: cover;
            object-position: 68% center;
            border-radius: 24px;
        }

        /* ---------- Trust strip ---------- */
        .trust { background: #fff; border-bottom: 1px solid var(--line); }
        .trust .wrap { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; padding: 26px 24px; }
        .trust-item { display: flex; align-items: center; gap: 12px; }
        .trust-icon { width: 42px; height: 42px; border-radius: 12px; background: var(--gold-light); color: var(--gold-dark); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
        .trust-item strong { display: block; font-size: 13.5px; }
        .trust-item small { color: var(--muted); font-size: 12px; }

        /* ---------- Sections ---------- */
        .section { padding: 56px 0; }
        .section-head { display: flex; align-items: flex-end; justify-content: space-between; margin-bottom: 28px; gap: 16px; flex-wrap: wrap; }
        .section-head .eyebrow { color: var(--gold-dark); font-size: 12.5px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; margin-bottom: 6px; display: block; }
        .section-head h2 { font-size: 26px; margin: 0; font-weight: 800; }
        .section-head p { margin: 6px 0 0; color: var(--muted); font-size: 14px; }
        .section-head .count { color: var(--muted); font-size: 13.5px; background: #fff; border: 1px solid var(--line); padding: 6px 14px; border-radius: 999px; }

        /* ---------- Featured products ---------- */
        .featured-section { background: linear-gradient(180deg, #fff 0%, #f3f7fc 100%); }
        .featured-heading { align-items: center; }
        .featured-mark { display: inline-flex; align-items: center; gap: 7px; padding: 8px 13px; border: 1px solid #d7e3f2; border-radius: 999px; background: #fff; color: var(--navy); font-size: 12px; font-weight: 700; box-shadow: 0 8px 24px rgba(0,75,164,.08); }
        .featured-mark svg { color: var(--gold); }
        .featured-grid { display: grid; grid-template-columns: 1.35fr 1fr 1fr; grid-auto-rows: 230px; gap: 18px; }
        .featured-card { position: relative; min-width: 0; overflow: hidden; border-radius: 20px; color: #fff; background: var(--navy); isolation: isolate; box-shadow: 0 14px 34px rgba(0,54,118,.14); }
        .featured-card--spotlight { grid-row: span 2; }
        .featured-card > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .5s cubic-bezier(.2,.7,.2,1); z-index: -2; }
        .featured-card:hover > img { transform: scale(1.055); }
        .featured-shade { position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(0,33,72,.06) 15%, rgba(0,25,57,.88) 100%); }
        .featured-card--spotlight .featured-shade { background: linear-gradient(180deg, rgba(0,33,72,.05) 20%, rgba(0,25,57,.9) 100%); }
        .featured-card__top { position: absolute; top: 16px; left: 16px; right: 16px; display: flex; align-items: center; justify-content: space-between; gap: 10px; }
        .featured-category, .featured-stock { padding: 6px 10px; border-radius: 999px; background: rgba(255,255,255,.92); color: var(--navy); font-size: 10px; font-weight: 800; backdrop-filter: blur(8px); }
        .featured-stock { margin-left: auto; background: rgba(18,134,75,.9); color: #fff; }
        .featured-stock--out { background: rgba(79,89,105,.9); }
        .featured-card__content { position: absolute; left: 20px; right: 20px; bottom: 18px; display: flex; flex-direction: column; align-items: flex-start; }
        .featured-kicker { margin-bottom: 5px; color: #ffb087; font-size: 10px; font-weight: 800; text-transform: uppercase; letter-spacing: .09em; }
        .featured-card__content > strong { max-width: 100%; font-size: 18px; line-height: 1.2; overflow-wrap: anywhere; }
        .featured-card--spotlight .featured-card__content > strong { font-size: 28px; }
        .featured-description { display: -webkit-box; margin-top: 7px; max-width: 520px; overflow: hidden; color: rgba(255,255,255,.76); font-size: 12px; line-height: 1.5; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
        .featured-card--spotlight .featured-description { font-size: 13px; }
        .featured-card__bottom { display: flex; align-items: flex-end; justify-content: space-between; width: 100%; margin-top: 13px; gap: 12px; }
        .featured-price { display: flex; align-items: baseline; flex-wrap: wrap; gap: 7px; }
        .featured-price b { color: #fff; font-size: 16px; }
        .featured-card--spotlight .featured-price b { font-size: 21px; }
        .featured-price s { color: rgba(255,255,255,.6); font-size: 11px; }
        .featured-price small { flex-basis: 100%; color: rgba(255,255,255,.62); font-size: 10px; }
        .featured-arrow { display: flex; align-items: center; justify-content: center; width: 38px; height: 38px; flex-shrink: 0; border-radius: 50%; background: var(--gold); color: #fff; transition: transform .2s ease, background .2s ease; }
        .featured-card:hover .featured-arrow { transform: translateX(3px); background: #fff; color: var(--gold-dark); }
        .featured-empty { display: flex; align-items: center; justify-content: center; gap: 15px; min-height: 150px; padding: 28px; border: 1px dashed #c9d8ea; border-radius: 20px; background: rgba(255,255,255,.7); color: var(--muted); text-align: left; }
        .featured-empty__icon { display: flex; align-items: center; justify-content: center; width: 56px; height: 56px; flex-shrink: 0; border-radius: 16px; background: #fff0e8; color: var(--gold); }
        .featured-empty strong, .featured-empty span { display: block; }
        .featured-empty strong { margin-bottom: 3px; color: var(--ink); }

        /* ---------- Category grid ---------- */
        .category-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 16px; }
        .category-card { background: #fff; border: 1px solid var(--line); border-radius: var(--radius); padding: 20px 14px; text-align: center; transition: .15s ease; }
        .category-card:hover { transform: translateY(-4px); box-shadow: 0 14px 30px rgba(20,24,31,.08); border-color: var(--gold); }
        .category-card .cat-thumb { width: 68px; height: 68px; border-radius: 50%; margin: 0 auto 14px; background: var(--gold-light); display: flex; align-items: center; justify-content: center; overflow: hidden; }
        .category-card .cat-thumb img { width: 100%; height: 100%; object-fit: cover; }
        .category-card span { font-size: 13.5px; font-weight: 600; }
        .empty-note { grid-column: 1 / -1; text-align: center; color: var(--muted); padding: 34px 0; border: 1px dashed var(--line); border-radius: var(--radius); background: #fff; }

        /* ---------- Deals ---------- */
        .deals { background: var(--dark); border-radius: 24px; padding: 34px 40px; display: flex; align-items: center; justify-content: space-between; gap: 20px; flex-wrap: wrap; color: #fff; }
        .deals-copy { display: flex; align-items: center; gap: 18px; }
        .deals-icon { width: 56px; height: 56px; border-radius: 16px; background: var(--gold); color: var(--dark); display: flex; align-items: center; justify-content: center; }
        .deals h3 { margin: 0 0 4px; font-size: 21px; font-weight: 800; }
        .deals p { margin: 0; color: #b7bcc6; font-size: 13.5px; }

        /* ---------- Products ---------- */
        .product-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; }
        .product-card { background: #fff; border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; display: flex; flex-direction: column; transition: .15s ease; }
        .product-card:hover { box-shadow: 0 16px 34px rgba(20,24,31,.1); transform: translateY(-4px); border-color: #d8dae0; }
        .product-thumb { position: relative; width: 100%; aspect-ratio: 1 / 1; overflow: hidden; flex: 0 0 auto; background: var(--gold-light); }
        .product-thumb img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
        .badge2 { position: absolute; top: 12px; font-size: 11px; font-weight: 700; padding: 5px 10px; border-radius: 999px; }
        .badge2-stock { left: 12px; background: rgba(20,24,31,.78); color: #fff; }
        .badge2-sale { right: 12px; background: var(--gold); color: var(--dark); }
        .badge2-featured { right: 12px; background: var(--gold); color: var(--dark); }
        .product-body { padding: 16px 18px 18px; display: flex; flex-direction: column; gap: 10px; flex: 1; }
        .product-name { font-size: 14.5px; font-weight: 600; flex: 1; }
        .product-foot { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
        .price-now { font-size: 16.5px; font-weight: 800; color: var(--ink); display: block; }
        .price-old { font-size: 12px; color: var(--muted); text-decoration: line-through; }
        .price-unit { font-size: 11.5px; color: var(--muted); }
        .add-btn2 { width: 38px; height: 38px; border-radius: 50%; background: var(--gold-light); color: var(--gold-dark); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
        .product-card:hover .add-btn2 { background: var(--gold); color: #fff; }

        /* ---------- Product details ---------- */
        .product-page { padding: 28px 0 70px; background: #f7f9fc; }
        .breadcrumbs { display: flex; align-items: center; gap: 9px; margin-bottom: 24px; color: var(--muted); font-size: 12px; white-space: nowrap; overflow-x: auto; }
        .breadcrumbs a:hover { color: var(--gold-dark); }
        .breadcrumbs span[aria-current="page"] { color: var(--ink); }
        .product-detail { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(380px, .95fr); gap: 54px; padding: 34px; border: 1px solid var(--line); border-radius: 24px; background: #fff; box-shadow: 0 18px 50px rgba(0,54,118,.07); }
        .product-gallery { min-width: 0; }
        .product-gallery__main { position: relative; width: 100%; aspect-ratio: 1 / 1; overflow: hidden; border-radius: 18px; background: var(--gold-light); }
        .product-gallery__main img { width: 100%; height: 100%; object-fit: cover; object-position: center; transition: opacity .18s ease; }
        .product-detail__featured { position: absolute; top: 16px; left: 16px; padding: 7px 12px; border-radius: 999px; background: var(--gold); color: #fff; font-size: 11px; font-weight: 800; }
        .product-gallery__thumbs { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; margin-top: 12px; }
        .product-gallery__thumb { position: relative; width: 100%; aspect-ratio: 1 / 1; overflow: hidden; padding: 0; border: 2px solid transparent; border-radius: 11px; background: #fff; cursor: pointer; }
        .product-gallery__thumb:hover, .product-gallery__thumb.active { border-color: var(--gold); }
        .product-gallery__thumb img { width: 100%; height: 100%; object-fit: cover; }
        .product-summary { min-width: 0; padding: 12px 0; }
        .product-summary__category { display: inline-flex; padding: 6px 11px; border-radius: 999px; background: #eaf2fb; color: var(--navy); font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .04em; }
        .product-summary h1 { margin: 14px 0 10px; color: var(--ink); font-size: clamp(30px, 3vw, 44px); line-height: 1.12; overflow-wrap: anywhere; }
        .product-summary__meta { display: flex; align-items: center; gap: 10px 18px; flex-wrap: wrap; color: var(--muted); font-size: 12px; }
        .product-summary__meta .in-stock { color: #12864b; font-weight: 700; }
        .product-summary__meta .out-of-stock { color: #b42318; font-weight: 700; }
        .product-share { display: flex; align-items: center; justify-content: flex-end; gap: 12px; margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--line); }
        .product-share > span { color: var(--muted); font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
        .product-share > div { display: flex; align-items: center; gap: 7px; flex-wrap: wrap; }
        .product-share__button { display: inline-flex; width: 38px; height: 38px; padding: 0; align-items: center; justify-content: center; border: 1px solid var(--line); border-radius: 50%; background: #fff; color: var(--navy); font: inherit; cursor: pointer; transition: transform .15s ease, border-color .15s ease, color .15s ease, background .15s ease; }
        .product-share__button:hover { transform: translateY(-1px); border-color: currentColor; }
        .product-share__button svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.8; }
        .product-share__button.facebook svg { fill: currentColor; stroke: none; }
        .product-share__button.whatsapp { color: #168a48; }
        .product-share__button.facebook { color: #1877f2; }
        .product-share__button.x { color: #111827; }
        .product-share__button.telegram { color: #229ed9; }
        .product-share__button.copy { color: #596579; }
        .product-summary__short { margin-top: 22px; color: #5d6879; font-size: 14px; line-height: 1.7; }
        .product-summary__short > :first-child { margin-top: 0; }
        .product-summary__short > :last-child { margin-bottom: 0; }
        .product-summary__price { display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; margin: 26px 0; padding: 20px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
        .product-summary__price strong { color: var(--navy); font-size: 30px; line-height: 1; }
        .product-summary__price s { color: var(--muted); font-size: 15px; }
        .product-summary__price small { flex-basis: 100%; margin-top: 2px; color: var(--muted); }
        .product-summary__discount { padding: 5px 9px; border-radius: 999px; background: #fff0e8; color: var(--gold-dark); font-size: 10px; font-weight: 800; }
        .product-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); gap: 10px; }
        .product-facts > div { min-width: 0; padding: 14px; border: 1px solid var(--line); border-radius: 12px; background: #fafcff; }
        .product-facts span, .product-facts strong { display: block; }
        .product-facts span { margin-bottom: 5px; color: var(--muted); font-size: 10px; text-transform: uppercase; letter-spacing: .04em; }
        .product-facts strong { color: var(--ink); font-size: 12px; line-height: 1.35; overflow-wrap: anywhere; }
        .product-order-note { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 12px; margin-top: 22px; padding: 16px; border-radius: 14px; background: var(--navy); color: #fff; }
        .product-order-note__icon { display: flex; align-items: center; justify-content: center; width: 42px; height: 42px; border-radius: 11px; background: rgba(255,255,255,.12); color: #fff; }
        .product-order-note strong, .product-order-note span { display: block; }
        .product-order-note div > span { margin-top: 2px; color: rgba(255,255,255,.7); font-size: 11px; }
        .product-order-note a { padding: 9px 12px; border-radius: 8px; background: var(--gold); color: #fff; font-size: 11px; font-weight: 800; white-space: nowrap; }
        .product-cart-form { display: grid; grid-template-columns: minmax(130px, 170px) 1fr; align-items: end; gap: 12px; margin-top: 22px; }
        .product-cart-form__quantity label { display: block; margin-bottom: 6px; color: var(--muted); font-size: 11px; font-weight: 700; }
        .product-cart-form__quantity > div { display: flex; overflow: hidden; border: 1px solid var(--line); border-radius: 10px; background: #fff; }
        .product-cart-form__quantity input { width: 100%; min-width: 0; padding: 12px; border: 0; outline: none; font: inherit; }
        .product-cart-form__quantity span { display: flex; align-items: center; padding: 0 12px; border-left: 1px solid var(--line); background: #f6f8fb; color: var(--muted); font-size: 12px; }
        .product-cart-form > button { display: flex; align-items: center; justify-content: center; gap: 9px; min-height: 46px; padding: 0 22px; border: 0; border-radius: 10px; background: var(--gold); color: #fff; font: inherit; font-weight: 800; cursor: pointer; }
        .product-cart-form > button:hover { background: var(--gold-dark); }
        .product-cart-form__total { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 2px; padding: 13px 15px; border: 1px solid #cfe0f3; border-radius: 10px; background: #f4f8fd; }
        .product-cart-form__total > span { color: var(--muted); font-size: 12px; }
        .product-cart-form__total > span b { color: var(--ink); }
        .product-cart-form__total > strong { color: var(--navy); font-size: 19px; white-space: nowrap; }
        .product-description, .related-products { margin-top: 48px; }
        .product-description__content { padding: 30px; border: 1px solid var(--line); border-radius: 18px; background: #fff; color: #4f5d70; font-size: 14px; line-height: 1.8; }
        .product-description__content > :first-child { margin-top: 0; }
        .product-description__content > :last-child { margin-bottom: 0; }
        .product-description__content h2, .product-description__content h3 { color: var(--ink); }
        .product-description__content blockquote { margin-left: 0; padding-left: 16px; border-left: 3px solid var(--gold); }
        .product-description__content ul, .product-description__content ol { padding-left: 22px; }
        .product-description__content ul { list-style: disc; }
        .product-description__content ol { list-style: decimal; }

        /* ---------- Shopping cart ---------- */
        .cart-page { min-height: 65vh; padding: 28px 0 70px; background: #f7f9fc; }
        .cart-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 26px; }
        .cart-heading .eyebrow { color: var(--gold-dark); font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; }
        .cart-heading h1 { margin: 5px 0 3px; font-size: 34px; }
        .cart-heading p { margin: 0; color: var(--muted); font-size: 13px; }
        .cart-continue { padding: 10px 14px; border: 1px solid var(--line); border-radius: 9px; background: #fff; color: var(--navy); font-size: 12px; font-weight: 800; }
        .cart-alert { margin-bottom: 18px; padding: 13px 16px; border-radius: 10px; font-size: 13px; }
        .cart-alert--success { border: 1px solid #b7e3c9; background: #eaf8f0; color: #176b37; }
        .cart-alert--error { border: 1px solid #f1c1bd; background: #fff0ee; color: #9f2c24; }
        .cart-layout { display: grid; grid-template-columns: minmax(0, 1fr) 340px; align-items: start; gap: 24px; }
        .cart-items { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
        .cart-item { position: relative; display: grid; grid-template-columns: 112px minmax(170px, 1fr) 150px 110px; align-items: center; gap: 18px; padding: 16px 52px 16px 16px; border: 1px solid var(--line); border-radius: 16px; background: #fff; }
        .cart-item__image { width: 112px; aspect-ratio: 1 / 1; overflow: hidden; border-radius: 12px; background: var(--gold-light); }
        .cart-item__image img { width: 100%; height: 100%; object-fit: cover; }
        .cart-item__details { min-width: 0; }
        .cart-item__details > span { color: var(--gold-dark); font-size: 10px; font-weight: 800; text-transform: uppercase; }
        .cart-item__details > a { display: block; margin: 4px 0; color: var(--ink); font-size: 15px; font-weight: 800; overflow-wrap: anywhere; }
        .cart-item__details > small { display: block; color: var(--muted); font-size: 10px; }
        .cart-item__details > strong { display: block; margin-top: 9px; color: var(--navy); font-size: 14px; }
        .cart-item__details > strong small { color: var(--muted); font-size: 10px; font-weight: 400; }
        .cart-item__quantity label { display: block; margin-bottom: 5px; color: var(--muted); font-size: 10px; font-weight: 700; }
        .cart-item__quantity > div { display: flex; overflow: hidden; border: 1px solid var(--line); border-radius: 8px; }
        .cart-item__quantity input { width: 100%; min-width: 0; padding: 9px; border: 0; outline: none; font: inherit; font-size: 12px; }
        .cart-item__quantity span { display: flex; align-items: center; padding: 0 8px; border-left: 1px solid var(--line); background: #f5f7fa; color: var(--muted); font-size: 10px; }
        .cart-item__quantity button { width: 100%; margin-top: 6px; padding: 6px; border: 0; border-radius: 7px; background: #eaf2fb; color: var(--navy); font: inherit; font-size: 10px; font-weight: 800; cursor: pointer; }
        .cart-item__subtotal { text-align: right; }
        .cart-item__subtotal span, .cart-item__subtotal strong { display: block; }
        .cart-item__subtotal span { color: var(--muted); font-size: 10px; }
        .cart-item__subtotal strong { margin-top: 3px; color: var(--navy); font-size: 17px; }
        .cart-item__remove { position: absolute; top: 14px; right: 14px; }
        .cart-item__remove button { display: flex; align-items: center; justify-content: center; width: 30px; height: 30px; padding: 0; border: 0; border-radius: 8px; background: #fff0ee; color: #b42318; cursor: pointer; }
        .cart-summary { position: sticky; top: 20px; padding: 24px; border: 1px solid var(--line); border-radius: 18px; background: #fff; box-shadow: 0 14px 36px rgba(0,54,118,.07); }
        .cart-summary .eyebrow { color: var(--gold-dark); font-size: 10px; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; }
        .cart-summary h2 { margin: 5px 0 18px; font-size: 23px; }
        .cart-summary__lines { display: flex; flex-direction: column; gap: 12px; padding: 16px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
        .cart-summary__lines > div { display: flex; align-items: center; justify-content: space-between; gap: 14px; }
        .cart-summary__lines span { color: var(--muted); font-size: 12px; }
        .cart-summary__lines strong { color: var(--navy); font-size: 18px; }
        .cart-summary__notice { padding: 10px; border-radius: 8px; background: #fff8e8; color: #765c18; font-size: 10px; line-height: 1.5; }
        .cart-summary__benefit { display: flex; gap: 9px; margin: 16px 0; color: var(--muted); font-size: 11px; line-height: 1.5; }
        .cart-summary__benefit svg { flex-shrink: 0; color: var(--gold); }
        .cart-checkout { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 46px; border: 0; border-radius: 10px; background: var(--gold); color: #fff; font: inherit; font-weight: 800; }
        .cart-checkout:hover { background: var(--gold-dark); }
        .cart-summary__continue { display: block; margin-top: 12px; color: var(--navy); font-size: 11px; font-weight: 800; text-align: center; }
        .cart-empty { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 390px; padding: 40px; border: 1px dashed #c9d8ea; border-radius: 20px; background: #fff; text-align: center; }
        .cart-empty__icon { display: flex; align-items: center; justify-content: center; width: 78px; height: 78px; border-radius: 22px; background: #eaf2fb; color: var(--navy); }
        .cart-empty h2 { margin: 18px 0 5px; }
        .cart-empty p { margin: 0 0 22px; color: var(--muted); font-size: 13px; }

        /* ---------- Checkout ---------- */
        .checkout-page, .order-success-page { min-height: 70vh; padding: 28px 0 70px; background: #f7f9fc; }
        .checkout-heading { margin-bottom: 26px; }
        .checkout-heading .eyebrow, .checkout-summary .eyebrow, .order-success .eyebrow { color: var(--gold-dark); font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
        .checkout-heading h1 { margin: 5px 0 4px; font-size: 34px; }
        .checkout-heading p { margin: 0; color: var(--muted); font-size: 13px; }
        .checkout-layout { display: grid; grid-template-columns: minmax(0, 1fr) 380px; align-items: start; gap: 24px; }
        .checkout-main { display: flex; flex-direction: column; gap: 16px; }
        .checkout-panel { padding: 24px; border: 1px solid var(--line); border-radius: 17px; background: #fff; }
        .checkout-panel__head { display: flex; align-items: flex-start; gap: 12px; margin-bottom: 22px; }
        .checkout-panel__head > span { display: flex; align-items: center; justify-content: center; width: 32px; height: 32px; flex-shrink: 0; border-radius: 9px; background: var(--navy); color: #fff; font-size: 12px; font-weight: 800; }
        .checkout-panel__head h2 { margin: 0 0 3px; font-size: 18px; }
        .checkout-panel__head p { margin: 0; color: var(--muted); font-size: 11px; }
        .checkout-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
        .checkout-field--full { grid-column: 1 / -1; }
        .checkout-field label { display: block; margin-bottom: 6px; color: var(--ink); font-size: 12px; font-weight: 700; }
        .checkout-field label small { color: var(--muted); font-weight: 400; }
        .checkout-field input, .checkout-field textarea, .checkout-field select { width: 100%; padding: 12px 13px; border: 1px solid #ced8e5; border-radius: 9px; background: #fff; color: var(--ink); font: inherit; font-size: 13px; outline: none; }
        .checkout-field select { min-height: 45px; padding-right: 40px; appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23004ba4' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 13px center; cursor: pointer; }
        .checkout-field select:invalid { color: #738196; }
        .checkout-field textarea { min-height: 92px; resize: vertical; }
        .checkout-field input:focus, .checkout-field textarea:focus, .checkout-field select:focus { border-color: var(--navy); box-shadow: 0 0 0 3px rgba(0,75,164,.08); }
        .delivery-estimate { display: flex; align-items: flex-start; gap: 6px; min-height: 17px; margin-top: 7px; color: #66768a; font-size: 10px; line-height: 1.45; }
        .delivery-estimate::before { content: 'i'; display: inline-grid; width: 15px; height: 15px; place-items: center; flex: 0 0 15px; border-radius: 50%; background: #e9f2fc; color: var(--navy); font-size: 9px; font-weight: 800; }
        .checkout-field > span, .checkout-field-error { display: block; margin-top: 5px; color: #b42318; font-size: 11px; }
        .payment-options { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
        .payment-options[hidden], .payment-option[hidden], .checkout-incompatible[hidden], .checkout-payment-prompt[hidden] { display: none !important; }
        .checkout-payment-prompt { padding: 14px; border: 1px dashed var(--line); border-radius: 10px; background: #f8fafc; color: var(--muted); font-size: 12px; }
        .payment-option { position: relative; display: flex; align-items: center; gap: 12px; padding: 15px; border: 1px solid var(--line); border-radius: 12px; cursor: pointer; }
        .payment-option:has(input:checked) { border-color: var(--navy); background: #f3f8fe; box-shadow: 0 0 0 2px rgba(0,75,164,.08); }
        .payment-option input { position: absolute; opacity: 0; pointer-events: none; }
        .payment-option__icon { display: flex; align-items: center; justify-content: center; width: 42px; height: 42px; flex-shrink: 0; border-radius: 11px; background: #eaf2fb; color: var(--navy); }
        .payment-option strong, .payment-option small { display: block; }
        .payment-option strong { color: var(--ink); font-size: 12px; }
        .payment-option small { margin-top: 3px; color: var(--muted); font-size: 10px; line-height: 1.4; }
        .checkout-incompatible { padding: 14px; border: 1px solid #f1c1bd; border-radius: 10px; background: #fff0ee; color: #9f2c24; font-size: 12px; line-height: 1.55; }
        .checkout-summary { position: sticky; top: 20px; padding: 24px; border: 1px solid var(--line); border-radius: 18px; background: #fff; box-shadow: 0 14px 36px rgba(0,54,118,.07); }
        .checkout-summary h2 { margin: 5px 0 18px; font-size: 23px; }
        .checkout-summary__items { display: flex; flex-direction: column; gap: 13px; max-height: 350px; overflow-y: auto; padding-right: 3px; }
        .checkout-summary__item { display: grid; grid-template-columns: 48px minmax(0, 1fr) auto; align-items: center; gap: 9px; }
        .checkout-summary__image { position: relative; width: 48px; height: 48px; }
        .checkout-summary__image img { width: 100%; height: 100%; border-radius: 9px; object-fit: cover; }
        .checkout-summary__image b { position: absolute; top: -6px; right: -6px; display: flex; align-items: center; justify-content: center; min-width: 18px; height: 18px; padding: 0 4px; border-radius: 999px; background: var(--gold); color: #fff; font-size: 8px; }
        .checkout-summary__item > span:nth-child(2) { min-width: 0; }
        .checkout-summary__item strong, .checkout-summary__item small { display: block; }
        .checkout-summary__item strong { color: var(--ink); font-size: 11px; overflow-wrap: anywhere; }
        .checkout-summary__item small { margin-top: 3px; color: var(--muted); font-size: 9px; }
        .checkout-summary__item > b { color: var(--navy); font-size: 10px; white-space: nowrap; }
        .checkout-summary__totals { display: flex; flex-direction: column; gap: 10px; margin-top: 18px; padding: 16px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
        .checkout-summary__totals > div { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
        .checkout-summary__totals span { color: var(--muted); font-size: 11px; }
        .checkout-summary__totals strong { color: var(--navy); font-size: 16px; }
        #checkoutGrandTotals { display: flex; flex-direction: column; gap: 10px; }
        #checkoutGrandTotals:empty { display: none; }
        #checkoutGrandTotals > div { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-top: 10px; border-top: 1px dashed #d7e1ed; }
        .checkout-summary > p { color: var(--muted); font-size: 10px; line-height: 1.5; }
        .checkout-summary > button { width: 100%; min-height: 46px; border: 0; border-radius: 10px; background: var(--gold); color: #fff; font: inherit; font-weight: 800; cursor: pointer; }
        .checkout-summary > button:hover { background: var(--gold-dark); }
        .checkout-summary > button:disabled { background: #aeb9c7; cursor: not-allowed; }
        .checkout-summary > a { display: block; margin-top: 12px; color: var(--navy); font-size: 11px; font-weight: 800; text-align: center; }
        .order-success { max-width: 800px; margin: 30px auto 0; padding: 42px; border: 1px solid var(--line); border-radius: 22px; background: #fff; box-shadow: 0 18px 50px rgba(0,54,118,.08); text-align: center; }
        .order-success__check { display: flex; align-items: center; justify-content: center; width: 82px; height: 82px; margin: 0 auto 20px; border-radius: 50%; background: #eaf8f0; color: #12864b; }
        .order-success h1 { margin: 6px 0 7px; font-size: 34px; }
        .order-success > p { margin: 0 auto 20px; max-width: 560px; color: var(--muted); font-size: 13px; }
        .order-success__number { display: inline-flex; padding: 10px 16px; border: 1px dashed #aac2df; border-radius: 9px; background: #f4f8fd; color: var(--navy); letter-spacing: .06em; }
        .order-success__facts { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin: 24px 0; }
        .order-success__facts > div { padding: 14px; border: 1px solid var(--line); border-radius: 11px; text-align: left; }
        .order-success__facts span, .order-success__facts strong { display: block; }
        .order-success__facts span { margin-bottom: 4px; color: var(--muted); font-size: 9px; text-transform: uppercase; }
        .order-success__facts strong { color: var(--ink); font-size: 12px; overflow-wrap: anywhere; }
        .order-success__notice { margin-bottom: 20px; padding: 13px; border-radius: 9px; background: #fff8e8; color: #765c18; font-size: 11px; }
        .order-success__items, .order-success__totals { display: flex; flex-direction: column; gap: 9px; padding: 16px 0; border-top: 1px solid var(--line); text-align: left; }
        .order-success__items > div, .order-success__totals > div { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
        .order-success__items span, .order-success__totals span { color: var(--ink); font-size: 12px; }
        .order-success__items small { color: var(--muted); }
        .order-success__items strong, .order-success__totals strong { color: var(--navy); font-size: 12px; white-space: nowrap; }
        .order-success__totals { margin-bottom: 22px; border-bottom: 1px solid var(--line); }

        /* ---------- Footer ---------- */
        footer.site-footer { background: var(--dark); color: #b7bcc6; margin-top: 20px; }
        .footer-top { padding: 48px 0 32px; border-bottom: 1px solid rgba(255,255,255,.08); }
        .newsletter-row { display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap; }
        .newsletter-row h4 { color: #fff; font-size: 19px; margin: 0 0 6px; }
        .newsletter-row p { margin: 0; color: #9096a1; font-size: 13.5px; }
        .newsletter-form { display: flex; max-width: 380px; width: 100%; min-width: 0; }
        .newsletter-form input { flex: 1; min-width: 0; border: 1px solid rgba(255,255,255,.15); background: rgba(255,255,255,.05); color: #fff; border-radius: 10px 0 0 10px; padding: 12px 18px; font-size: 13.5px; outline: none; font-family: inherit; }
        .newsletter-form input::placeholder { color: #7d8290; }
        .newsletter-form button { background: var(--gold); border: none; color: #fff; padding: 0 22px; border-radius: 0 10px 10px 0; font-weight: 700; cursor: pointer; }
        .newsletter-form button:hover { background: var(--gold-dark); }
        .footer-grid { display: grid; grid-template-columns: 1.6fr 1fr 1fr 1fr; gap: 28px; padding: 40px 0 24px; }
        .footer-grid h4 { color: #fff; font-size: 14.5px; margin: 0 0 16px; }
        .footer-grid p { font-size: 13px; color: #9096a1; max-width: 260px; }
        .footer-grid li { margin-bottom: 10px; font-size: 13px; }
        .footer-grid > div { min-width: 0; }
        .footer-grid li, .footer-grid p { overflow-wrap: anywhere; }
        .footer-grid a:hover { color: #fff; }
        .footer-bottom { border-top: 1px solid rgba(255,255,255,.08); padding: 18px 0; font-size: 12px; color: #767c88; display: flex; justify-content: space-between; flex-wrap: wrap; gap: 8px; }

        @media (max-width: 1080px) {
            .logo-img { height: 96px; }
            .hero-panel .wrap { grid-template-columns: 1fr; }
            .hero-copy { padding: 44px 32px 0; }
            .hero-art { padding: 30px 32px 44px; }
            .hero-picture { height: auto; }
            .hero-product-image {
                height: auto;
                min-height: 0;
                aspect-ratio: 16 / 9;
                object-position: center;
            }
            .header-inner { flex-wrap: wrap; row-gap: 12px; }
            .search-bar { max-width: none; flex: 1 1 100%; order: 5; }
            .category-grid { grid-template-columns: repeat(4, 1fr); }
            .product-grid { grid-template-columns: repeat(3, 1fr); }
            .featured-grid { grid-template-columns: 1fr 1fr; }
            .featured-card--spotlight { grid-column: span 2; grid-row: auto; min-height: 360px; }
            .product-detail { grid-template-columns: 1fr 1fr; gap: 28px; padding: 26px; }
            .product-facts { grid-template-columns: 1fr; }
            .cart-layout { grid-template-columns: 1fr; }
            .cart-summary { position: static; }
            .checkout-layout { grid-template-columns: 1fr; }
            .checkout-summary { position: static; }
            .footer-grid { grid-template-columns: 1fr 1fr 1fr; }

            .logo { order: 1; }
            .header-actions { order: 3; }
            .menu-toggle { display: flex; order: 4; margin-left: auto; }
            body.menu-open { overflow: hidden; }
            body.menu-open .menu-toggle {
                position: fixed; top: 20px; right: 24px; margin: 0;
                background: #fff; box-shadow: 0 8px 28px rgba(16,24,46,.16);
            }
            .subnav {
                position: fixed; top: 0; right: 0; bottom: 0; width: min(360px, 88vw);
                z-index: 1200; overflow-y: auto; overscroll-behavior: contain;
                background: #fff; border: 0; box-shadow: -18px 0 45px rgba(16,24,46,.18);
                transform: translateX(105%); visibility: hidden;
                transition: transform .32s cubic-bezier(.22,.8,.26,1), visibility 0s linear .32s;
            }
            .subnav.open {
                transform: translateX(0); visibility: visible;
                transition: transform .32s cubic-bezier(.22,.8,.26,1), visibility 0s;
            }
            .subnav .wrap {
                display: flex;
                flex-direction: column;
                align-items: stretch;
                gap: 0;
                width: 100%; min-height: 100%; padding: 84px 28px 28px;
                overflow: visible;
            }
            .subnav a {
                width: 100%;
                padding: 15px 0;
                border-bottom: 1px solid var(--line);
                opacity: 0; transform: translateX(18px);
                transition: opacity .2s ease, transform .25s ease, color .15s ease;
            }
            .subnav.open a { opacity: 1; transform: translateX(0); }
            .subnav.open a:nth-child(1) { transition-delay: .06s; }
            .subnav.open a:nth-child(2) { transition-delay: .08s; }
            .subnav.open a:nth-child(3) { transition-delay: .10s; }
            .subnav.open a:nth-child(4) { transition-delay: .12s; }
            .subnav.open a:nth-child(5) { transition-delay: .14s; }
            .subnav.open a:nth-child(6) { transition-delay: .16s; }
            .subnav.open a:nth-child(7) { transition-delay: .18s; }
            .subnav.open a:nth-child(8) { transition-delay: .20s; }
            .subnav.open a:nth-child(9) { transition-delay: .22s; }
            .subnav.open a:nth-child(10) { transition-delay: .24s; }
            .subnav.open a:nth-child(11) { transition-delay: .26s; }
            .menu-backdrop {
                display: block; position: fixed; inset: 0; z-index: 1190;
                border: 0; padding: 0; background: rgba(10,18,38,.52);
                opacity: 0; visibility: hidden; pointer-events: none;
                transition: opacity .3s ease, visibility 0s linear .3s;
            }
            .menu-backdrop.open {
                opacity: 1; visibility: visible; pointer-events: auto;
                transition: opacity .3s ease, visibility 0s;
            }
            .subnav .special { margin-left: 0; }
        }
        @media (max-width: 760px) {
            .logo-img { height: 82px; }
            .trust .wrap { grid-template-columns: repeat(2, 1fr); }
            .category-grid { grid-template-columns: repeat(3, 1fr); }
            .product-grid { grid-template-columns: repeat(2, 1fr); }
            .featured-grid { grid-template-columns: 1fr; grid-auto-rows: 280px; }
            .featured-card--spotlight { grid-column: auto; min-height: 360px; }
            .product-page { padding-top: 18px; }
            .product-detail { grid-template-columns: 1fr; padding: 18px; border-radius: 18px; }
            .product-summary { padding-bottom: 0; }
            .product-facts { grid-template-columns: repeat(3, minmax(0, 1fr)); }
            .cart-item { grid-template-columns: 96px minmax(0, 1fr) 140px; }
            .cart-item__image { width: 96px; }
            .cart-item__subtotal { grid-column: 2; text-align: left; }
            .footer-grid { grid-template-columns: 1fr 1fr; }
            .topbar-left span:nth-child(2) { display: none; }
            .topbar-right a, .topbar-right .sep { display: none; }
            .footer-top { padding: 38px 0 28px; }
            .newsletter-row { flex-direction: column; align-items: stretch; }
            .newsletter-form { max-width: none; }
            .footer-grid { gap: 32px 24px; padding-top: 34px; }
            .footer-bottom { flex-direction: column; align-items: center; text-align: center; padding: 20px 0; }
        }
        @media (max-width: 560px) {
            .product-share { align-items: flex-start; flex-direction: column; gap: 8px; }
            .logo-img { height: 68px; }
            .hero-copy h1 { font-size: 32px; }
            .category-grid { grid-template-columns: repeat(2, 1fr); }
            .product-grid { grid-template-columns: 1fr 1fr; }
            .featured-section { padding: 40px 0; overflow: hidden; }
            .featured-section .wrap { width: 100%; padding-left: 16px; padding-right: 16px; }
            .featured-heading { display: block; margin-bottom: 20px; }
            .featured-heading h2 { font-size: 23px; }
            .featured-heading p { max-width: 320px; font-size: 13px; line-height: 1.45; }
            .featured-mark { margin-top: 13px; padding: 7px 11px; }
            .featured-grid { width: 100%; grid-template-columns: minmax(0, 1fr); grid-auto-rows: auto; gap: 14px; }
            .featured-card, .featured-card--spotlight { width: 100%; min-width: 0; min-height: 0; grid-column: auto; grid-row: auto; border-radius: 16px; }
            .featured-card { height: 220px; }
            .featured-card--spotlight { height: 310px; }
            .featured-card__top { top: 12px; left: 12px; right: 12px; }
            .featured-category, .featured-stock { max-width: 48%; padding: 5px 8px; overflow: hidden; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
            .featured-card__content { left: 14px; right: 14px; bottom: 14px; }
            .featured-card__content > strong, .featured-card--spotlight .featured-card__content > strong { font-size: 20px; line-height: 1.15; }
            .featured-card:not(.featured-card--spotlight) .featured-description { display: none; }
            .featured-card--spotlight .featured-description { margin-top: 5px; font-size: 11px; line-height: 1.4; -webkit-line-clamp: 2; }
            .featured-card__bottom { margin-top: 9px; }
            .featured-price b, .featured-card--spotlight .featured-price b { font-size: 16px; }
            .featured-price small { font-size: 9px; }
            .featured-arrow { width: 34px; height: 34px; }
            .featured-empty { align-items: flex-start; }
            .product-detail { gap: 20px; padding: 14px; }
            .product-gallery__main { border-radius: 14px; }
            .product-gallery__thumbs { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 7px; }
            .product-summary h1 { font-size: 28px; }
            .product-summary__price strong { font-size: 25px; }
            .product-facts { grid-template-columns: 1fr; }
            .product-order-note { grid-template-columns: auto 1fr; }
            .product-order-note a { grid-column: 1 / -1; text-align: center; }
            .product-cart-form { grid-template-columns: 1fr; }
            .product-description, .related-products { margin-top: 38px; }
            .product-description__content { padding: 20px; }
            .cart-page { padding-top: 18px; }
            .cart-heading { align-items: flex-start; flex-direction: column; }
            .cart-item { grid-template-columns: 82px minmax(0, 1fr); gap: 12px; padding: 12px 44px 14px 12px; }
            .cart-item__image { width: 82px; }
            .cart-item__quantity { grid-column: 1 / -1; }
            .cart-item__subtotal { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; }
            .cart-summary { padding: 20px; }
            .checkout-page, .order-success-page { padding-top: 18px; }
            .checkout-fields, .payment-options { grid-template-columns: 1fr; }
            .checkout-field--full { grid-column: auto; }
            .checkout-panel, .checkout-summary { padding: 18px; }
            .order-success { margin-top: 10px; padding: 26px 18px; }
            .order-success h1 { font-size: 28px; }
            .order-success__facts { grid-template-columns: 1fr; }
            footer.site-footer .wrap { padding-left: 18px; padding-right: 18px; }
            .footer-grid { grid-template-columns: 1fr; gap: 26px; padding-top: 30px; }
            .footer-grid p { max-width: none; }
            .footer-grid h4 { margin-bottom: 12px; }
            .header-actions .txt { display: none; }
            .header-actions { gap: 16px; }
            body.menu-open .menu-toggle { top: 14px; right: 16px; }
            .subnav { width: min(340px, 92vw); }
            .subnav .wrap { padding: 72px 22px 24px; }
        }
        @media (max-width: 400px) {
            .product-grid { grid-template-columns: 1fr; }
            .newsletter-form { flex-direction: column; gap: 8px; }
            .newsletter-form input, .newsletter-form button {
                min-height: 44px; width: 100%; border-radius: 9px;
            }
        }
        @media (prefers-reduced-motion: reduce) {
            .subnav, .subnav a, .menu-backdrop, .menu-toggle__icon span { transition-duration: .01ms !important; }
        }

        /* Wishlist */
        .featured-card__link { position: absolute; inset: 0; z-index: 2; border-radius: inherit; }
        .featured-card__top, .featured-card__content { pointer-events: none; }
        .featured-card__top { right: 62px; }
        .card-wishlist { position: absolute; z-index: 4; margin: 0; }
        .card-wishlist button, .product-detail-wishlist {
            display: inline-flex; align-items: center; justify-content: center; gap: 7px;
            border: 1px solid var(--line); background: #fff; color: var(--navy);
            cursor: pointer; transition: transform .18s ease, color .18s ease, border-color .18s ease, background .18s ease;
        }
        .card-wishlist button:hover, .product-detail-wishlist:hover { transform: translateY(-2px); border-color: var(--orange); color: var(--orange); }
        .card-wishlist button.active, .product-detail-wishlist.active { background: var(--orange); border-color: var(--orange); color: #fff; }
        .featured-wishlist { top: 14px; right: 14px; }
        .featured-wishlist button { width: 36px; height: 36px; padding: 0; border: 0; border-radius: 50%; box-shadow: 0 7px 18px rgba(0,0,0,.16); }
        .product-card { position: relative; }
        .product-card__link { display: flex; flex: 1; min-width: 0; flex-direction: column; color: inherit; }
        .product-wishlist { top: 10px; right: 10px; }
        .product-wishlist button { width: 34px; height: 34px; padding: 0; border-radius: 50%; box-shadow: 0 6px 16px rgba(0,54,118,.1); }
        .product-card .badge2-sale, .product-card .badge2-featured { top: 51px; }
        .product-summary__topline { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
        .product-detail-wishlist { flex: 0 0 auto; min-height: 38px; padding: 8px 13px; border-radius: 20px; font: inherit; font-weight: 800; }

        .wishlist-page { min-height: 58vh; padding: 30px 0 72px; background: #f7f9fc; }
        .wishlist-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin: 30px 0 26px; }
        .wishlist-heading h1 { margin: 5px 0 4px; color: var(--navy); font-size: clamp(30px, 4vw, 44px); line-height: 1.05; }
        .wishlist-heading p { margin: 0; color: var(--muted); }
        .wishlist-heading > a { padding: 11px 16px; border: 1px solid var(--line); border-radius: 9px; background: #fff; color: var(--navy); font-weight: 800; }
        .wishlist-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
        .wishlist-card { min-width: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 17px; background: #fff; box-shadow: 0 12px 30px rgba(0,54,118,.06); }
        .wishlist-card__image { position: relative; display: block; aspect-ratio: 4 / 3; overflow: hidden; background: #f1f4f8; }
        .wishlist-card__image img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
        .wishlist-card:hover .wishlist-card__image img { transform: scale(1.035); }
        .wishlist-card__image span { position: absolute; left: 12px; bottom: 12px; padding: 6px 9px; border-radius: 20px; color: #fff; font-size: 11px; font-weight: 800; }
        .wishlist-card__image .available { background: #078a50; }
        .wishlist-card__image .unavailable { background: #b72b2b; }
        .wishlist-card__body { display: flex; min-height: 210px; padding: 18px; flex-direction: column; }
        .wishlist-card__body > span { color: var(--orange); font-size: 11px; font-weight: 900; text-transform: uppercase; letter-spacing: .06em; }
        .wishlist-card__body > a { margin-top: 5px; color: var(--navy); font-size: 18px; font-weight: 900; line-height: 1.3; }
        .wishlist-card__price { display: flex; align-items: baseline; gap: 7px; margin-top: 14px; color: var(--navy); }
        .wishlist-card__price strong { font-size: 18px; }
        .wishlist-card__price small { color: var(--muted); }
        .wishlist-card__actions { display: grid; grid-template-columns: 1fr auto; gap: 9px; margin-top: auto; padding-top: 18px; }
        .wishlist-card__actions form, .wishlist-card__actions button { width: 100%; }
        .wishlist-card__actions button { min-height: 42px; padding: 9px 13px; border-radius: 9px; font: inherit; font-weight: 850; cursor: pointer; }
        .wishlist-card__actions .move { border: 0; background: var(--orange); color: #fff; }
        .wishlist-card__actions .move:disabled { cursor: not-allowed; opacity: .48; }
        .wishlist-card__actions .remove { border: 1px solid var(--line); background: #fff; color: #a72626; }
        .wishlist-empty { display: flex; min-height: 330px; padding: 40px 20px; align-items: center; justify-content: center; flex-direction: column; text-align: center; border: 1px dashed #cbd6e4; border-radius: 18px; background: #fff; }
        .wishlist-empty > span { display: grid; width: 74px; height: 74px; place-items: center; border-radius: 50%; background: #eef5fd; color: var(--orange); }
        .wishlist-empty h2 { margin: 18px 0 7px; color: var(--navy); }
        .wishlist-empty p { margin: 0 0 22px; color: var(--muted); }
        .wishlist-signin-note { display: flex; margin-top: 25px; padding: 18px 20px; align-items: center; justify-content: space-between; gap: 18px; border: 1px solid #cddced; border-radius: 13px; background: #eef5fd; color: var(--navy); }
        .wishlist-signin-note a { color: var(--orange); font-weight: 800; }

        @media (max-width: 900px) {
            .wishlist-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        }
        @media (max-width: 560px) {
            .featured-card__top { right: 56px; }
            .featured-wishlist { top: 10px; right: 10px; }
            .product-summary__topline { align-items: flex-start; }
            .product-detail-wishlist span { display: none; }
            .product-detail-wishlist { width: 40px; padding: 0; }
            .wishlist-page { padding-top: 18px; padding-bottom: 45px; }
            .wishlist-heading { margin-top: 22px; align-items: flex-start; flex-direction: column; gap: 14px; }
            .wishlist-grid { grid-template-columns: 1fr; gap: 15px; }
            .wishlist-card { display: grid; grid-template-columns: 112px minmax(0, 1fr); }
            .wishlist-card__image { height: 100%; min-height: 190px; aspect-ratio: auto; }
            .wishlist-card__body { min-height: 190px; padding: 14px; }
            .wishlist-card__body > a { font-size: 16px; }
            .wishlist-card__actions { grid-template-columns: 1fr; padding-top: 12px; }
            .wishlist-card__actions button { min-height: 38px; }
            .wishlist-signin-note { align-items: flex-start; flex-direction: column; }
        }

        /* Shop, search and filtering */
        .shop-page { min-height: 65vh; padding: 28px 0 72px; background: #f7f9fc; }
        .shop-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin: 28px 0 26px; }
        .shop-heading .eyebrow, .shop-product-category { color: var(--orange, #f56924); font-size: 11px; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
        .shop-heading h1 { margin: 5px 0 6px; color: var(--navy); font-size: clamp(31px, 4vw, 44px); line-height: 1.08; }
        .shop-heading p { margin: 0; color: var(--muted); }
        .shop-heading > span { flex: 0 0 auto; padding: 8px 14px; border: 1px solid var(--line); border-radius: 999px; background: #fff; color: var(--muted); font-size: 13px; }
        .shop-layout { display: grid; grid-template-columns: 270px minmax(0, 1fr); align-items: start; gap: 24px; }
        .shop-filters { position: sticky; top: 18px; padding: 20px; border: 1px solid var(--line); border-radius: 16px; background: #fff; box-shadow: 0 10px 30px rgba(0,54,118,.05); }
        .shop-filters__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 18px; padding-bottom: 15px; border-bottom: 1px solid var(--line); }
        .shop-filters__head strong { color: var(--navy); font-size: 17px; }
        .shop-filters__head a { color: var(--gold-dark); font-size: 11px; font-weight: 800; }
        .shop-filter { margin-bottom: 16px; }
        .shop-filter label { display: block; margin-bottom: 7px; color: var(--ink); font-size: 12px; font-weight: 800; }
        .shop-filter input, .shop-filter select { width: 100%; min-height: 42px; padding: 9px 10px; border: 1px solid var(--line); border-radius: 8px; background: #fff; color: var(--ink); font: inherit; font-size: 12px; outline: none; }
        .shop-filter input:focus, .shop-filter select:focus { border-color: var(--gold); box-shadow: 0 0 0 3px rgba(245,105,36,.1); }
        .shop-price-range { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }
        .shop-filter small { display: block; margin-top: 6px; color: var(--muted); font-size: 9px; }
        .shop-filter-submit { width: 100%; min-height: 44px; padding: 10px 15px; justify-content: center; border-radius: 9px; }
        .shop-results { min-width: 0; }
        .shop-product-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
        .shop-product-category { display: block; margin-bottom: -4px; font-size: 9px; }
        .shop-empty { display: flex; min-height: 410px; padding: 40px; align-items: center; justify-content: center; flex-direction: column; border: 1px dashed #cbd6e4; border-radius: 18px; background: #fff; text-align: center; }
        .shop-empty > span { display: grid; width: 70px; height: 70px; place-items: center; border-radius: 50%; background: #eef5fd; color: var(--gold); }
        .shop-empty h2 { margin: 17px 0 6px; color: var(--navy); }
        .shop-empty p { margin: 0 0 22px; color: var(--muted); }
        .shop-pagination { margin-top: 30px; }
        .shop-pagination nav > div:first-child { display: none; }
        .shop-pagination nav > div:last-child { display: flex; align-items: center; justify-content: space-between; gap: 15px; }
        .shop-pagination nav p { color: var(--muted); font-size: 12px; }
        .shop-pagination nav span[aria-current="page"] span, .shop-pagination nav a, .shop-pagination nav span[aria-disabled="true"] span {
            display: inline-flex; min-width: 38px; min-height: 38px; padding: 7px 10px; align-items: center; justify-content: center;
            border: 1px solid var(--line); background: #fff; color: var(--ink); font-size: 12px;
        }
        .shop-pagination nav span[aria-current="page"] span { border-color: var(--navy); background: var(--navy); color: #fff; }
        .shop-pagination nav svg { width: 18px; height: 18px; }

        @media (max-width: 980px) {
            .shop-layout { grid-template-columns: 230px minmax(0, 1fr); }
            .shop-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        }
        @media (max-width: 760px) {
            .shop-layout { grid-template-columns: 1fr; }
            .shop-filters { position: static; }
            .shop-filters form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 12px; }
            .shop-filter--search, .shop-filter-submit { grid-column: 1 / -1; }
        }
        @media (max-width: 560px) {
            .shop-page { padding-top: 18px; padding-bottom: 45px; }
            .shop-heading { margin-top: 20px; align-items: flex-start; flex-direction: column; gap: 13px; }
            .shop-filters form { grid-template-columns: 1fr; }
            .shop-filter--search, .shop-filter-submit { grid-column: auto; }
            .shop-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
            .shop-product-grid .product-body { padding: 12px; }
            .shop-product-grid .product-name { font-size: 13px; }
            .shop-product-grid .price-now { font-size: 14px; }
            .shop-product-grid .add-btn2 { width: 32px; height: 32px; }
            .shop-pagination nav > div:last-child { align-items: flex-start; flex-direction: column; }
        }
        @media (max-width: 390px) {
            .shop-product-grid { grid-template-columns: 1fr; }
        }

        /* Customer account */
        .account-page { min-height: 65vh; padding: 28px 0 72px; background: #f7f9fc; }
        .account-layout { display: grid; grid-template-columns: 245px minmax(0, 1fr); align-items: start; gap: 25px; }
        .account-nav { overflow: hidden; border: 1px solid var(--line); border-radius: 16px; background: #fff; box-shadow: 0 10px 30px rgba(0,54,118,.05); }
        .account-nav__user { display: flex; align-items: center; gap: 11px; padding: 20px; border-bottom: 1px solid var(--line); }
        .account-nav__user > span { display: grid; width: 43px; height: 43px; flex: 0 0 auto; place-items: center; border-radius: 50%; background: var(--navy); color: #fff; font-weight: 900; }
        .account-nav__user div { min-width: 0; }
        .account-nav__user strong, .account-nav__user small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
        .account-nav__user small { margin-top: 2px; color: var(--muted); font-size: 10px; }
        .account-nav nav { padding: 10px; }
        .account-nav nav a { display: block; margin: 2px 0; padding: 11px 12px; border-radius: 8px; color: var(--ink); font-size: 13px; font-weight: 750; }
        .account-nav nav a:hover, .account-nav nav a.active { background: #eaf2fb; color: var(--navy); }
        .account-nav > form { padding: 0 10px 12px; }
        .account-nav > form button { width: 100%; padding: 10px 12px; border: 0; border-radius: 8px; background: #fff0ee; color: #a32620; text-align: left; cursor: pointer; font-weight: 750; }
        .account-content { min-width: 0; }
        .account-heading { display: flex; min-height: 82px; margin-bottom: 22px; align-items: flex-end; justify-content: space-between; gap: 20px; }
        .account-heading .eyebrow { color: var(--gold-dark); font-size: 11px; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
        .account-heading h1 { margin: 5px 0 5px; color: var(--navy); font-size: clamp(29px, 4vw, 40px); line-height: 1.08; }
        .account-heading p { margin: 0; color: var(--muted); }
        .account-heading > span { padding: 7px 12px; border: 1px solid var(--line); border-radius: 999px; background: #fff; color: var(--muted); font-size: 12px; }
        .account-panel { padding: 22px; border: 1px solid var(--line); border-radius: 16px; background: #fff; box-shadow: 0 10px 30px rgba(0,54,118,.045); }
        .account-panel__head { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin-bottom: 19px; }
        .account-panel__head h2, .account-panel h2 { margin: 0; color: var(--navy); font-size: 19px; }
        .account-panel__head p { margin: 4px 0 0; color: var(--muted); font-size: 11px; }
        .account-panel__head > a { color: var(--gold-dark); font-size: 12px; font-weight: 800; }
        .account-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 13px; margin-bottom: 20px; }
        .account-stats > a { padding: 17px; border: 1px solid var(--line); border-radius: 13px; background: #fff; }
        .account-stats span, .account-stats strong { display: block; }
        .account-stats span { color: var(--muted); font-size: 10px; }
        .account-stats strong { margin-top: 7px; color: var(--navy); font-size: 25px; }
        .account-order-list > a { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; align-items: center; gap: 16px; padding: 14px 0; border-bottom: 1px solid var(--line); }
        .account-order-list > a:last-child { border: 0; }
        .account-order-list strong, .account-order-list small { display: block; }
        .account-order-list small { margin-top: 4px; color: var(--muted); font-size: 10px; }
        .account-order-list b { color: var(--gold-dark); font-size: 11px; }
        .account-order-status { display: inline-flex; padding: 6px 9px; border-radius: 999px; background: #e8f1ff; color: var(--navy); font-size: 10px; font-weight: 850; white-space: nowrap; }
        .account-order-status.status-delivered { background: #e5f7ec; color: #176b37; }
        .account-order-status.status-cancelled { background: #fee9e7; color: #a32620; }
        .account-order-status.status-shipped { background: #eee9ff; color: #6741c4; }
        .account-empty { display: flex; min-height: 190px; padding: 25px; align-items: center; justify-content: center; flex-direction: column; text-align: center; color: var(--muted); }
        .account-empty strong { color: var(--navy); font-size: 18px; }
        .account-empty span { margin: 5px 0 18px; }
        .account-settings-grid { display: grid; grid-template-columns: 1fr 1fr; align-items: start; gap: 20px; }
        .account-form h2 { margin-bottom: 20px; }
        .account-form label { display: block; margin-bottom: 15px; color: var(--ink); font-size: 12px; font-weight: 750; }
        .account-form input, .account-form textarea { width: 100%; margin-top: 6px; padding: 11px 12px; border: 1px solid var(--line); border-radius: 8px; background: #fff; color: var(--ink); font: inherit; outline: none; }
        .account-form textarea { min-height: 85px; resize: vertical; }
        .account-form input:focus, .account-form textarea:focus { border-color: var(--gold); box-shadow: 0 0 0 3px rgba(245,105,36,.1); }
        .field-error { display: block; margin-top: 5px; color: #b42318; font-size: 10px; }
        .account-form .btn-gold { min-height: 43px; padding: 10px 18px; border-radius: 8px; }
        .address-layout { display: grid; grid-template-columns: minmax(0, .85fr) minmax(360px, 1.15fr); align-items: start; gap: 20px; }
        .address-list { display: flex; flex-direction: column; gap: 12px; }
        .address-card { padding: 18px; border: 1px solid var(--line); border-radius: 13px; background: #fff; }
        .address-card.default { border-color: #8ab8ec; box-shadow: inset 3px 0 var(--navy); }
        .address-card > div:first-child { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
        .address-card > div:first-child > strong { color: var(--navy); }
        .address-card > div:first-child > span { padding: 4px 7px; border-radius: 999px; background: #e5f7ec; color: #176b37; font-size: 9px; font-weight: 850; }
        .address-card h3 { margin: 15px 0 5px; font-size: 14px; }
        .address-card p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.7; }
        .address-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 15px; }
        .address-actions form { margin: 0; }
        .address-actions a, .address-actions button { padding: 6px 9px; border: 1px solid var(--line); border-radius: 6px; background: #fff; color: var(--navy); font: inherit; font-size: 10px; font-weight: 800; cursor: pointer; }
        .address-actions button.danger { color: #a32620; }
        .account-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0 12px; }
        .account-form-grid .full { grid-column: 1 / -1; }
        .account-check { display: flex !important; align-items: center; gap: 8px; }
        .account-check input { width: auto; margin: 0; }
        .account-form-actions { display: flex; align-items: center; gap: 12px; }
        .account-form-actions > a { color: var(--muted); font-size: 12px; font-weight: 800; }
        .account-orders { display: flex; flex-direction: column; gap: 13px; }
        .account-orders > article { padding: 18px; border: 1px solid var(--line); border-radius: 12px; }
        .account-orders__head { display: flex; align-items: center; justify-content: space-between; gap: 15px; }
        .account-orders small { display: block; color: var(--muted); font-size: 9px; text-transform: uppercase; }
        .account-orders__facts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 13px; margin: 16px 0; padding: 14px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
        .account-orders__facts strong { display: block; margin-top: 4px; font-size: 12px; }
        .account-orders > article > a { color: var(--gold-dark); font-size: 11px; font-weight: 850; }
        .account-outline-button { display: inline-flex; padding: 10px 13px; border: 1px solid var(--line); border-radius: 8px; background: #fff; color: var(--navy); font-size: 12px; font-weight: 800; }
        .invoice-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
        .order-tracker { margin-bottom: 20px; }
        .order-track-steps { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); }
        .order-track-steps > div { position: relative; display: flex; align-items: center; flex-direction: column; gap: 7px; color: var(--muted); text-align: center; font-size: 10px; }
        .order-track-steps > div:not(:last-child)::after { content: ""; position: absolute; top: 17px; left: calc(50% + 18px); right: calc(-50% + 18px); height: 3px; background: var(--line); }
        .order-track-steps > div.complete:not(:last-child)::after { background: var(--navy); }
        .order-track-steps > div > span { position: relative; z-index: 1; display: grid; width: 36px; height: 36px; place-items: center; border: 2px solid var(--line); border-radius: 50%; background: #fff; font-weight: 900; }
        .order-track-steps > div.complete { color: var(--navy); }
        .order-track-steps > div.complete > span { border-color: var(--navy); background: var(--navy); color: #fff; }
        .order-track-steps > div.current > span { box-shadow: 0 0 0 5px #dceafd; }
        .order-cancelled-notice { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 13px; border-radius: 9px; background: #fee9e7; color: #a32620; }
        .order-cancelled-notice span { font-size: 11px; }
        .account-order-layout { display: grid; grid-template-columns: minmax(0, 1fr) 285px; align-items: start; gap: 20px; }
        .account-order-items > div { display: grid; grid-template-columns: 62px minmax(0, 1fr) auto; align-items: center; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--line); }
        .account-order-items img { width: 62px; height: 62px; border-radius: 8px; object-fit: cover; }
        .account-order-items strong, .account-order-items small { display: block; }
        .account-order-items small { margin-top: 5px; color: var(--muted); font-size: 9px; line-height: 1.5; }
        .account-order-items > div > b { color: var(--navy); font-size: 12px; white-space: nowrap; }
        .account-order-totals { max-width: 310px; margin: 18px 0 0 auto; }
        .account-order-totals > div { display: flex; justify-content: space-between; gap: 30px; padding: 8px 0; }
        .account-order-totals span { color: var(--muted); font-size: 11px; }
        .account-order-info { position: sticky; top: 18px; }
        .account-order-info h2 { margin-bottom: 18px; }
        .account-order-info > div { margin-bottom: 15px; }
        .account-order-info small, .account-order-info strong { display: block; }
        .account-order-info small { margin-bottom: 4px; color: var(--muted); font-size: 9px; text-transform: uppercase; }
        .account-order-info strong { font-size: 12px; line-height: 1.6; }
        .account-order-info form { margin-top: 20px; padding-top: 18px; border-top: 1px solid var(--line); }
        .account-cancel-button { width: 100%; min-height: 40px; border: 1px solid #efb1ad; border-radius: 8px; background: #fff; color: #a32620; cursor: pointer; font-weight: 800; }
        .account-order-info form > small { margin-top: 7px; text-align: center; text-transform: none; }
        .checkout-saved-addresses { margin-bottom: 20px; padding: 14px; border: 1px solid #cbdced; border-radius: 10px; background: #f5f9fe; }
        .checkout-saved-addresses > strong { display: block; margin-bottom: 10px; color: var(--navy); font-size: 12px; }
        .checkout-saved-addresses > div { display: flex; flex-wrap: wrap; gap: 8px; }
        .checkout-saved-addresses button { padding: 8px 11px; border: 1px solid var(--line); border-radius: 7px; background: #fff; color: var(--ink); cursor: pointer; font-weight: 750; }
        .checkout-saved-addresses button.selected { border-color: var(--navy); background: var(--navy); color: #fff; }
        .checkout-saved-addresses button small { margin-left: 5px; color: var(--gold); }

        @media (max-width: 900px) {
            .account-layout { grid-template-columns: 1fr; }
            .account-nav nav { display: flex; overflow-x: auto; }
            .account-nav nav a { flex: 0 0 auto; white-space: nowrap; }
            .account-nav > form { display: none; }
            .account-settings-grid, .address-layout, .account-order-layout { grid-template-columns: 1fr; }
            .account-order-info { position: static; }
        }
        @media (max-width: 650px) {
            .account-page { padding-top: 18px; padding-bottom: 45px; }
            .account-stats { grid-template-columns: 1fr 1fr; }
            .account-heading { align-items: flex-start; flex-direction: column; }
            .account-order-list > a { grid-template-columns: 1fr auto; }
            .account-order-list b { grid-column: 1 / -1; }
            .account-form-grid { grid-template-columns: 1fr; }
            .account-form-grid .full { grid-column: auto; }
            .account-orders__facts { grid-template-columns: 1fr 1fr; }
            .order-track-steps { overflow-x: auto; grid-template-columns: repeat(5, 95px); padding: 5px; }
            .account-order-items > div { grid-template-columns: 52px minmax(0, 1fr); }
            .account-order-items img { width: 52px; height: 52px; }
            .account-order-items > div > b { grid-column: 2; }
        }

/* Product reviews */
.product-reviews { margin-top: 52px; }
.reviews-shell { display: grid; grid-template-columns: 300px minmax(0, 1fr); overflow: hidden; border: 1px solid var(--line); border-radius: 22px; background: #fff; box-shadow: 0 14px 40px rgba(0, 53, 113, .05); }
.reviews-summary { padding: 32px 28px; border-right: 1px solid var(--line); background: linear-gradient(145deg, #f4f8fd 0%, #fff 70%); }
.reviews-summary__label { display: block; color: var(--muted); font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; }
.reviews-summary > strong { display: block; margin-top: 8px; color: var(--navy); font-size: 58px; line-height: 1; letter-spacing: -.06em; }
.reviews-stars { display: flex; gap: 3px; margin-top: 13px; color: #d9e1eb; font-size: 21px; }
.reviews-stars .filled { color: var(--orange); }
.reviews-summary > p { margin: 8px 0 25px; color: var(--muted); font-size: 12px; }
.rating-bars { display: grid; gap: 9px; }
.rating-bars > div { display: grid; grid-template-columns: 32px 1fr 20px; align-items: center; gap: 8px; color: var(--muted); font-size: 11px; }
.rating-bars i { display: block; height: 6px; overflow: hidden; border-radius: 999px; background: #e3eaf3; }
.rating-bars b { display: block; height: 100%; border-radius: inherit; background: var(--orange); }
.rating-bars small { text-align: right; }
.reviews-content { min-width: 0; padding: 30px; }
.reviews-list { display: grid; gap: 14px; }
.review-card { padding: 20px; border: 1px solid #e6ebf2; border-radius: 15px; background: #fff; }
.review-card__head { display: grid; grid-template-columns: 42px minmax(0,1fr) auto; align-items: center; gap: 11px; }
.review-avatar { display: flex; width: 42px; height: 42px; align-items: center; justify-content: center; border-radius: 50%; background: #eaf2fc; color: var(--navy); font-weight: 800; }
.review-card__head strong, .review-card__head small { display: block; }
.review-card__head strong { color: var(--ink); font-size: 14px; }
.review-card__head small { margin-top: 3px; color: var(--muted); font-size: 10px; }
.review-card__stars { color: var(--orange); font-size: 13px; letter-spacing: 1px; white-space: nowrap; }
.review-card__stars span { color: #d9e1eb; }
.review-card h3 { margin: 17px 0 5px; color: var(--ink); font-size: 16px; }
.review-card p { margin: 0; color: #59677a; font-size: 13px; line-height: 1.7; }
.reviews-empty, .review-eligibility { display: flex; align-items: center; gap: 15px; padding: 22px; border: 1px dashed #cad6e5; border-radius: 15px; background: #fafcff; }
.reviews-empty > span, .review-eligibility > span { display: flex; width: 46px; height: 46px; flex: 0 0 46px; align-items: center; justify-content: center; border-radius: 50%; background: #fff1e9; color: var(--orange); font-size: 25px; font-weight: 800; }
.reviews-empty strong, .review-eligibility strong { display: block; color: var(--ink); font-size: 14px; }
.reviews-empty p, .review-eligibility p { margin: 4px 0 0; color: var(--muted); font-size: 12px; line-height: 1.5; }
.review-eligibility { margin-top: 18px; border-style: solid; }
.review-eligibility a { color: var(--navy); font-weight: 800; }
.review-form { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 20px; padding: 24px; border-radius: 17px; background: #f5f8fc; }
.review-form__head { display: flex; grid-column: 1 / -1; align-items: flex-end; justify-content: space-between; gap: 15px; padding-bottom: 15px; border-bottom: 1px solid #dfe7f1; }
.review-form__head span { color: var(--orange); font-size: 10px; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.review-form__head h3 { margin: 4px 0 0; color: var(--ink); font-size: 20px; }
.review-form__head p { margin: 0; color: var(--muted); font-size: 11px; }
.review-form > label { display: grid; gap: 7px; color: var(--ink); font-size: 12px; font-weight: 700; }
.review-form > label small { color: var(--muted); font-weight: 400; }
.review-form > label:has(textarea) { grid-column: 1 / -1; }
.review-form input:not([type="radio"]), .review-form textarea { width: 100%; padding: 12px 14px; border: 1px solid #cfd9e6; border-radius: 10px; background: #fff; color: var(--ink); font: inherit; outline: 0; resize: vertical; }
.review-form input:focus, .review-form textarea:focus { border-color: var(--navy); box-shadow: 0 0 0 3px rgba(0,75,164,.08); }
.review-form button { display: inline-flex; min-width: 190px; min-height: 48px; width: max-content; grid-column: 1 / -1; align-items: center; justify-content: center; gap: 20px; padding: 12px 24px; border: 2px solid var(--orange); border-radius: 10px; background: var(--orange); color: #fff; font-size: 14px; font-weight: 800; cursor: pointer; box-shadow: 0 8px 20px rgba(245,105,36,.22); transition: background .18s,color .18s,transform .18s; }
.review-form button:hover { background: #fff; color: var(--orange); transform: translateY(-1px); }
.star-rating { display: flex; width: max-content; grid-column: 1 / -1; flex-direction: row-reverse; justify-content: flex-end; margin: 0; padding: 0; border: 0; }
.star-rating legend { margin-bottom: 5px; color: var(--ink); font-size: 12px; font-weight: 700; }
.star-rating input { position: absolute; opacity: 0; }
.star-rating label { color: #fff; font-size: 29px; line-height: 1; cursor: pointer; -webkit-text-stroke: 1px #aebdce; text-shadow: 0 1px 1px rgba(0, 44, 98, .08); transition: color .15s, -webkit-text-stroke-color .15s, transform .15s; }
.star-rating label:hover, .star-rating label:hover ~ label, .star-rating input:checked ~ label { color: var(--orange); -webkit-text-stroke-color: var(--orange); }
.star-rating label:hover { transform: scale(1.12); }
.review-error { grid-column: 1 / -1; color: #b42318; font-size: 11px; }

@media (max-width: 900px) {
    .reviews-shell { grid-template-columns: 1fr; }
    .reviews-summary { border-right: 0; border-bottom: 1px solid var(--line); }
    .reviews-summary > strong { font-size: 48px; }
    .rating-bars { max-width: 420px; }
}
@media (max-width: 650px) {
    .product-reviews { margin-top: 38px; }
    .reviews-shell { border-radius: 16px; }
    .reviews-summary, .reviews-content { padding: 20px; }
    .review-form { grid-template-columns: 1fr; padding: 18px; }
    .review-form__head { align-items: flex-start; flex-direction: column; }
    .review-form > label, .review-form > label:has(textarea), .review-form button, .star-rating { grid-column: 1; }
    .review-card__head { grid-template-columns: 38px 1fr; }
    .review-avatar { width: 38px; height: 38px; }
    .review-card__stars { grid-column: 2; }
}

/* Contact page */
.contact-page { padding-bottom: 70px; background: #f6f8fc; }
.contact-hero { padding: 62px 0 115px; background: linear-gradient(135deg, #003b82, #075fc4); color: #fff; text-align: center; }
.contact-hero span { color: #ffb087; font-size: 11px; font-weight: 850; letter-spacing: .11em; }
.contact-hero h1 { margin: 10px 0 12px; color: #fff; font-size: clamp(34px, 5vw, 52px); letter-spacing: -.04em; }
.contact-hero p { max-width: 650px; margin: 0 auto; color: rgba(255,255,255,.78); font-size: 15px; line-height: 1.7; }
.contact-layout { display: grid; grid-template-columns: 360px minmax(0,1fr); align-items: start; gap: 24px; margin-top: -70px; }
.contact-info, .contact-form-card { border: 1px solid var(--line); border-radius: 20px; background: #fff; box-shadow: 0 18px 45px rgba(0,51,112,.08); }
.contact-info { padding: 29px; }
.contact-info h2, .contact-form-card h2 { margin: 6px 0 8px; color: var(--ink); font-size: 25px; }
.contact-info > p, .contact-form-card > div > p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.65; }
.contact-info__cards { display: grid; gap: 12px; margin-top: 25px; }
.contact-info__cards article { display: flex; align-items: center; gap: 13px; padding: 14px; border: 1px solid #e6ebf2; border-radius: 12px; }
.contact-info__cards article > span { display: grid; width: 40px; height: 40px; flex: 0 0 40px; place-items: center; border-radius: 10px; background: #fff0e8; color: var(--orange); font-size: 19px; }
.contact-info__cards small, .contact-info__cards a, .contact-info__cards strong { display: block; }
.contact-info__cards small { margin-bottom: 3px; color: var(--muted); font-size: 9px; text-transform: uppercase; }
.contact-info__cards a, .contact-info__cards strong { color: var(--ink); font-size: 12px; line-height: 1.45; overflow-wrap: anywhere; }
.contact-hours { margin-top: 20px; padding: 16px; border-radius: 12px; background: #edf5ff; }
.contact-hours strong { color: var(--navy); font-size: 12px; }
.contact-hours p { margin: 5px 0 0; color: var(--muted); font-size: 11px; line-height: 1.6; }
.contact-social { margin-top: 20px; }
.contact-social > strong { color: var(--navy); font-size: 13px; }
.contact-social > p { margin: 5px 0 12px; color: var(--muted); font-size: 11px; line-height: 1.5; }
.contact-social__links { display: flex; flex-wrap: wrap; gap: 9px; }
.contact-social__links > a, .contact-social__links > span { display: grid; width: 42px; height: 42px; flex: 0 0 42px; place-items: center; border: 0; border-radius: 11px; color: #fff; box-shadow: 0 6px 15px rgba(0,40,90,.16); }
.contact-social__links > a:nth-child(1) { background: #1877f2; }
.contact-social__links > a:nth-child(2) { background: linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045); }
.contact-social__links > a:nth-child(3) { background: #111; }
.contact-social__links > span:nth-child(4) { background: #229ed9; }
.contact-social__links > span:nth-child(5) { background: #25d366; }
.contact-social__links > a { transition: border-color .18s, box-shadow .18s, transform .18s; }
.contact-social__links > a:hover { border-color: var(--orange); box-shadow: 0 7px 18px rgba(4,75,164,.09); transform: translateY(-1px); }
.contact-social__links svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.contact-social__links svg .social-fill { fill: currentColor; stroke: none; }
.contact-social__links a:first-child svg { fill: currentColor; stroke: none; }
.contact-social__links .is-coming-soon { color: #fff; cursor: not-allowed; opacity: .5; filter: saturate(.7); }
.contact-form-card { padding: 32px; }
.contact-success { margin: 20px 0; padding: 14px; border: 1px solid #a9dfbc; border-radius: 10px; background: #e9f8ee; color: #176b37; font-size: 12px; font-weight: 750; }
.contact-form-card form { display: grid; grid-template-columns: 1fr 1fr; gap: 17px; margin-top: 25px; }
.contact-form-card label { display: grid; gap: 7px; color: var(--ink); font-size: 11px; font-weight: 800; }
.contact-form-card label.full { grid-column: 1 / -1; }
.contact-form-card label > span small { color: var(--muted); font-weight: 400; }
.contact-form-card input, .contact-form-card select, .contact-form-card textarea { width: 100%; padding: 13px 14px; border: 1px solid #cfd9e6; border-radius: 9px; background: #fff; color: var(--ink); font: inherit; outline: 0; }
.contact-form-card textarea { min-height: 135px; resize: vertical; }
.contact-form-card input:focus, .contact-form-card select:focus, .contact-form-card textarea:focus { border-color: var(--navy); box-shadow: 0 0 0 3px rgba(0,75,164,.08); }
.contact-form-card label > small { color: #b42318; font-size: 10px; }
.contact-form__footer { display: flex; grid-column: 1 / -1; align-items: stretch; flex-direction: column; gap: 12px; margin-top: 2px; }
.contact-form__footer p { margin: 0; color: var(--muted); font-size: 10px; }
.contact-form__footer button { display: inline-flex !important; width: 100%; min-height: 50px; align-items: center; justify-content: center; gap: 22px; padding: 13px 20px; border: 2px solid var(--orange); border-radius: 9px; background: var(--orange) !important; color: #fff !important; font-size: 14px; font-weight: 850; cursor: pointer; box-shadow: 0 8px 20px rgba(245,105,36,.22); }
.contact-form__footer button:hover { background: #fff !important; color: var(--orange) !important; }
.contact-map-section { margin-top: 32px; overflow: hidden; border: 1px solid #dce5f0; border-radius: 20px; background: #fff; box-shadow: 0 16px 38px rgba(0,59,130,.08); }
.contact-map-heading { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 25px 28px; }
.contact-map-heading h2 { margin: 4px 0 6px; color: var(--navy); font-size: 25px; }
.contact-map-heading p { margin: 0; color: var(--muted); font-size: 12px; }
.contact-map-heading > a { display: inline-flex; align-items: center; gap: 10px; flex-shrink: 0; padding: 12px 16px; border-radius: 9px; background: var(--orange); color: #fff; font-size: 12px; font-weight: 800; }
.contact-map-heading > a:hover { box-shadow: 0 8px 18px rgba(245,105,36,.22); transform: translateY(-1px); }
.contact-map-frame { height: 440px; overflow: hidden; border-top: 1px solid #e5ebf3; background: #eaf0f7; }
.contact-map-frame iframe { display: block; width: 100%; height: 100%; border: 0; }
@media (max-width: 900px) { .contact-layout { grid-template-columns: 1fr; } .contact-info__cards { grid-template-columns: repeat(3,1fr); } .contact-info__cards article { align-items: flex-start; } }
@media (max-width: 650px) { .contact-hero { padding: 45px 18px 95px; } .contact-layout { margin-top: -55px; } .contact-info, .contact-form-card { padding: 20px; border-radius: 15px; } .contact-info__cards, .contact-form-card form { grid-template-columns: 1fr; } .contact-form-card label.full, .contact-form__footer { grid-column: 1; } .contact-form__footer { align-items: stretch; flex-direction: column; } .contact-form__footer button { justify-content: space-between; width: 100%; } .contact-map-section { border-radius: 15px; }.contact-map-heading { align-items:flex-start;flex-direction:column;padding:21px; }.contact-map-heading > a { width:100%;justify-content:center; }.contact-map-frame { height:340px; } }

/* Store footer */
.parent-company-section { padding: 72px 0; background: #fff; }
.parent-company-card { position: relative; display: grid; grid-template-columns: .78fr 1.22fr; align-items: stretch; min-height: 370px; overflow: hidden; border-radius: 26px; background: linear-gradient(120deg,#003b82,#004ba4 58%,#0961bd); box-shadow: 0 25px 55px rgba(0,59,130,.18); }
.parent-company-card::before { content:'';position:absolute;right:-90px;top:-110px;width:330px;height:330px;border:55px solid rgba(255,255,255,.055);border-radius:50%; }
.parent-company-visual { position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:20px;overflow:hidden;padding:45px;background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.025)); }
.parent-company-visual::after { content:'';position:absolute;bottom:-80px;left:-70px;width:230px;height:230px;border-radius:50%;background:#f56924;opacity:.13; }
.parent-company-logo-wrap { position:relative;z-index:1;display:grid;width:min(100%,310px);min-height:215px;place-items:center;padding:28px;border:1px solid rgba(255,255,255,.25);border-radius:24px;background:#fff;box-shadow:0 20px 38px rgba(0,22,60,.22); }
.parent-company-logo { display:block;width:100%;max-width:250px;height:155px;object-fit:contain; }
.parent-company-copy { position:relative;z-index:1;padding:55px 62px;color:#fff; }.parent-company-label { display:inline-flex;padding:7px 11px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:rgba(255,255,255,.09);color:#ffc3a5;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.09em; }.parent-company-copy h2 { margin:17px 0 15px;max-width:640px;font-size:clamp(28px,3vw,43px);line-height:1.1;letter-spacing:-.035em; }.parent-company-copy > p { max-width:700px;margin:0;color:rgba(255,255,255,.76);font-size:14px;line-height:1.75; }
.parent-company-features { display:flex;flex-wrap:wrap;gap:10px 20px;margin:24px 0 28px; }.parent-company-features span { color:rgba(255,255,255,.88);font-size:12px;font-weight:650; }.parent-company-features i { display:inline-grid;width:20px;height:20px;margin-right:5px;place-items:center;border-radius:50%;background:rgba(245,105,36,.2);color:#ff9b69;font-style:normal; }
.parent-company-copy > a { display:inline-flex;align-items:center;gap:14px;padding:13px 18px;border-radius:10px;background:#f56924;color:#fff;font-size:13px;font-weight:850;box-shadow:0 10px 23px rgba(0,20,50,.2);transition:transform .18s,box-shadow .18s; }.parent-company-copy > a:hover { color:#fff;box-shadow:0 14px 28px rgba(0,20,50,.3);transform:translateY(-2px); }
@media(max-width:850px){.parent-company-card{grid-template-columns:1fr}.parent-company-visual{min-height:280px}.parent-company-copy{padding:42px}}@media(max-width:550px){.parent-company-section{padding:45px 0}.parent-company-card{border-radius:18px}.parent-company-visual{min-height:230px;padding:30px}.parent-company-logo-wrap{min-height:175px;padding:22px}.parent-company-logo{height:130px}.parent-company-copy{padding:30px 23px}.parent-company-features{align-items:flex-start;flex-direction:column}.parent-company-copy>a{justify-content:center;width:100%}}

.sr-only { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; }
footer.site-footer { margin-top: 20px; background: linear-gradient(135deg,#00336f 0%,#004ba4 55%,#003b82 100%); color: rgba(255,255,255,.82); }
.footer-newsletter { border-bottom: 1px solid rgba(255,255,255,.16); background: linear-gradient(105deg,#004ba4,#075bb7); }
.footer-newsletter .newsletter-row { display: grid; grid-template-columns: minmax(0,1fr) minmax(360px,480px); align-items: center; gap: 45px; padding-top: 34px; padding-bottom: 34px; }
.newsletter-copy { display: flex; align-items: center; gap: 17px; }
.newsletter-icon { display: grid; width: 52px; height: 52px; flex: 0 0 52px; place-items: center; border-radius: 14px; background: #f56924; color: #fff; font-size: 23px; }
.newsletter-copy small { color: #ffc5a8; font-size: 11px; font-weight: 850; letter-spacing: .1em; }
.newsletter-copy h3 { margin: 5px 0; color: #fff; font-size: 23px; letter-spacing: -.02em; }
.newsletter-copy p { margin: 0; color: rgba(255,255,255,.76); font-size: 13px; }
footer.site-footer .newsletter-form { display: flex; width: 100%; max-width: none; padding: 5px; border: 1px solid rgba(255,255,255,.22); border-radius: 12px; background: rgba(255,255,255,.08); }
footer.site-footer .newsletter-form input { min-width: 0; flex: 1; padding: 11px 13px; border: 0; background: transparent; color: #fff; outline: 0; }
footer.site-footer .newsletter-form input::placeholder { color: rgba(255,255,255,.5); }
footer.site-footer .newsletter-form button { display: inline-flex; align-items: center; gap: 16px; padding: 11px 18px; border: 0; border-radius: 8px; background: #f56924; color: #fff; font-weight: 800; cursor: pointer; }
.newsletter-success, .newsletter-error { margin-top: 12px; padding: 10px 13px; border-radius: 8px; font-size: 11px; }
.newsletter-success { background: #e9f8ee; color: #176b37; }.newsletter-error { background: #fee9e7; color: #a32620; }
.footer-main { display: grid; grid-template-columns: 1.45fr .8fr .9fr 1.15fr; gap: 58px; padding-top: 58px; padding-bottom: 52px; }
.footer-logo { display: inline-flex; padding: 11px 15px; border-radius: 14px; background: #fff; box-shadow: 0 12px 28px rgba(0,20,55,.2); }
.footer-logo img { display: block; width: 120px; height: 70px; object-fit: contain; }
.footer-brand > p { max-width: 330px; margin: 22px 0; color: rgba(255,255,255,.78); font-size: 14px; line-height: 1.8; }
.footer-trust { display: flex; flex-wrap: wrap; gap: 7px; }
.footer-trust span, .footer-payments span { padding: 8px 11px; border: 1px solid rgba(255,255,255,.22); border-radius: 999px; background: rgba(255,255,255,.06); color: rgba(255,255,255,.88); font-size: 11px; }
.footer-column h4 { position: relative; margin: 0 0 23px; padding-bottom: 13px; color: #fff; font-size: 16px; letter-spacing: -.01em; }
.footer-column h4::after { content: ''; position: absolute; bottom: 0; left: 0; width: 36px; height: 3px; border-radius: 2px; background: #f56924; }
.footer-column ul { margin: 0; padding: 0; list-style: none; }
.footer-column li { margin-bottom: 12px; font-size: 13px; line-height: 1.55; }
.footer-column a { display: inline-block; color: rgba(255,255,255,.8); transition: color .18s, transform .18s; }
.footer-column a:hover { color: #fff; transform: translateX(3px); }
.footer-contact li { margin-bottom: 17px; }
.footer-contact li span, .footer-contact li a, .footer-contact li strong { display: block; }
.footer-contact li span { margin-bottom: 5px; color: #ffad84; font-size: 10px; font-weight: 850; text-transform: uppercase; letter-spacing: .08em; }
.footer-contact li strong { color: rgba(255,255,255,.82); font-size: 13px; font-weight: 500; }
.footer-payments { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 17px; }
.footer-social { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 13px; }
.footer-social a, .footer-social > span { display: grid; width: 40px; height: 40px; place-items: center; border: 0; border-radius: 50%; color: #fff; box-shadow: 0 7px 17px rgba(0,20,55,.24); transition: transform .18s, box-shadow .18s; }
.footer-social a:nth-child(1) { background: #1877f2; }
.footer-social a:nth-child(2) { background: linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045); }
.footer-social a:nth-child(3) { background: #111; }
.footer-social > span:nth-child(4) { background: #229ed9; }
.footer-social > span:nth-child(5) { background: #25d366; }
.footer-social a:hover { color: #fff; box-shadow: 0 10px 22px rgba(0,20,55,.34); transform: translateY(-3px); }
.footer-social .is-coming-soon { color: #fff; cursor: not-allowed; opacity: .48; filter: saturate(.7); }
.footer-social svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.footer-social svg .social-fill { fill: currentColor; stroke: none; }
.footer-social a:first-child svg { fill: currentColor; stroke: none; }
.footer-bottom { padding: 0; border-top: 1px solid rgba(255,255,255,.12); }
.footer-bottom .wrap { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-top: 20px; padding-bottom: 20px; color: rgba(255,255,255,.62); font-size: 12px; }
.footer-bottom .wrap > div { display: flex; align-items: center; gap: 20px; }.footer-bottom a { color: rgba(255,255,255,.67); }
@media (max-width: 1000px) { .footer-newsletter .newsletter-row { grid-template-columns: 1fr; gap: 22px; } .footer-main { grid-template-columns: 1.25fr 1fr 1fr; gap: 38px; } .footer-contact { grid-column: 1 / -1; } .footer-contact ul { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; } }
@media (max-width: 700px) { .footer-main { grid-template-columns: 1fr 1fr; gap: 36px 25px; } .footer-brand, .footer-contact { grid-column: 1 / -1; } .footer-contact ul { grid-template-columns: 1fr; gap: 0; } .footer-bottom .wrap { align-items: flex-start; flex-direction: column; } }
@media (max-width: 500px) { .footer-newsletter .newsletter-row { padding-top: 26px; padding-bottom: 26px; } .newsletter-copy { align-items: flex-start; } .newsletter-icon { width: 44px; height: 44px; flex-basis: 44px; } .newsletter-copy h3 { font-size: 17px; } footer.site-footer .newsletter-form { flex-direction: column; gap: 6px; padding: 6px; } footer.site-footer .newsletter-form button { justify-content: space-between; width: 100%; } .footer-main { grid-template-columns: 1fr; padding-top: 35px; padding-bottom: 30px; } .footer-brand, .footer-contact { grid-column: auto; } }

/* Informational pages */
.customer-support-page { padding: 70px 0 90px; background: linear-gradient(135deg,#edf5ff,#fff8f3); }
.support-page-grid { display: grid; grid-template-columns: .72fr 1.28fr; align-items: start; gap: 45px; }
.support-intro { position: sticky; top: 25px; padding: 35px; border-radius: 22px; background: #004ba4; color: #fff; box-shadow: 0 20px 45px rgba(0,59,130,.16); }
.support-intro h1 { margin: 8px 0 15px; font-size: 35px; }.support-intro p { color: rgba(255,255,255,.75); line-height: 1.7; }
.support-presence { display:flex;align-items:center;gap:11px;margin-top:28px;padding:14px;border:1px solid rgba(255,255,255,.15);border-radius:13px;background:rgba(255,255,255,.08); }.support-presence i { width:11px;height:11px;border-radius:50%;background:#35d07f;box-shadow:0 0 0 5px rgba(53,208,127,.15); }.support-presence strong,.support-presence small { display:block; }.support-presence small { margin-top:3px;color:rgba(255,255,255,.65); }
.customer-chat { display:flex;height:620px;flex-direction:column;overflow:hidden;border:1px solid #dbe5f1;border-radius:22px;background:#fff;box-shadow:0 20px 48px rgba(0,59,130,.1); }.customer-chat > header { display:flex;align-items:center;justify-content:space-between;padding:20px 23px;border-bottom:1px solid #e6edf5; }.customer-chat > header strong,.customer-chat > header span { display:block; }.customer-chat > header strong { color:#003b82;font-size:18px; }.customer-chat > header div span { margin-top:3px;color:#718096;font-size:10px; }.support-status-dot { padding:6px 10px;border-radius:999px;background:#e5f7ec;color:#176b37;font-size:10px;font-weight:800; }
.customer-chat__messages { display:flex;flex:1;flex-direction:column;gap:13px;overflow-y:auto;padding:24px; }.chat-empty { margin:auto;color:#718096;text-align:center; }.chat-message { max-width:74%;padding:13px 15px;border-radius:15px 15px 15px 4px;background:#edf2f8;color:#172033; }.chat-message.mine { align-self:flex-end;border-radius:15px 15px 4px;background:#004ba4;color:#fff; }.chat-message strong { font-size:10px; }.chat-message p { margin:5px 0;line-height:1.5;white-space:pre-wrap; }.chat-message small { opacity:.65;font-size:9px; }
.customer-chat__form { display:grid;grid-template-columns:1fr auto;gap:10px;padding:16px;border-top:1px solid #e6edf5; }.customer-chat__form textarea { min-height:50px;max-height:110px;padding:14px;border:1px solid #ced9e7;border-radius:11px;resize:none;font:inherit; }.customer-chat__form button { padding:0 24px;border:0;border-radius:11px;background:#f56924;color:#fff;font-weight:800;cursor:pointer; }
@media(max-width:800px){.customer-support-page{padding:35px 0 55px}.support-page-grid{grid-template-columns:1fr}.support-intro{position:static}.customer-chat{height:600px}.chat-message{max-width:88%}}

.info-page { color: #003b82; }
.info-eyebrow { display: block; margin-bottom: 12px; color: #f56924; font-size: 11px; font-weight: 900; letter-spacing: .1em; }
.info-hero { overflow: hidden; background: linear-gradient(115deg,#eef5fd 0%,#f7faff 62%,#fff4ed 100%); }
.info-hero__grid { display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; gap: 70px; min-height: 480px; padding-top: 65px; padding-bottom: 65px; }
.info-hero h1 { margin: 0 0 22px; max-width: 650px; font-size: clamp(38px,5vw,66px); line-height: 1.03; letter-spacing: -.045em; }
.info-hero p { max-width: 620px; margin: 0 0 30px; color: #586a82; font-size: 16px; line-height: 1.75; }
.info-primary-link { display: inline-flex; align-items: center; gap: 25px; padding: 15px 21px; border-radius: 10px; background: #f56924; color: #fff; font-weight: 850; }
.about-visual { position: relative; display: flex; min-height: 315px; padding: 45px; align-items: flex-end; overflow: hidden; border-radius: 28px; background: #004ba4; color: #fff; box-shadow: 0 24px 60px rgba(0,75,164,.18); }
.about-visual::after { content: ''; position: absolute; width: 230px; height: 230px; top: -65px; right: -45px; border: 45px solid #f56924; border-radius: 50%; opacity: .95; }
.about-visual > .parent-company-logo { position: absolute; z-index: 1; top: 38px; left: 45px; width: 210px; height: 120px; padding: 16px; border-radius: 17px; background: #fff; object-fit: contain; box-shadow: 0 15px 35px rgba(0,25,70,.22); }
.about-visual__mark { position: absolute; top: -40px; left: 30px; color: rgba(255,255,255,.08); font-size: 300px; font-weight: 950; line-height: 1; }
.about-visual > div:last-child { position: relative; z-index: 1; display: grid; gap: 7px; }
.about-visual strong { font-size: 23px; }.about-visual span { color: rgba(255,255,255,.7); }
.info-section { padding-top: 90px; padding-bottom: 90px; }
.info-heading { max-width: 690px; }.info-heading h2,.about-mission h2,.info-cta h2 { margin: 0 0 15px; font-size: clamp(28px,3.4vw,43px); line-height: 1.15; letter-spacing: -.035em; }.info-heading p,.about-mission p { color: #607087; line-height: 1.75; }
.value-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 22px; margin-top: 45px; }
.value-grid article { padding: 30px; border: 1px solid #dbe5f1; border-radius: 18px; background: #fff; box-shadow: 0 15px 40px rgba(16,56,104,.06); }
.value-grid article > span { color: #f56924; font-size: 12px; font-weight: 900; }.value-grid h3 { margin: 35px 0 10px; font-size: 20px; }.value-grid p { margin: 0; color: #66768b; line-height: 1.7; }
.about-mission { display: grid; grid-template-columns: .85fr 1.15fr; gap: 90px; padding-top: 70px; padding-bottom: 70px; border-top: 1px solid #dbe5f1; }
.about-mission p:first-child { margin-top: 0; }.info-cta { display: flex; align-items: center; justify-content: space-between; gap: 30px; margin-bottom: 80px; padding: 38px 42px; border-radius: 22px; background: #004ba4; color: #fff; }.info-cta span { color: #ffb18b; font-size: 10px; font-weight: 900; letter-spacing: .1em; }.info-cta h2 { margin: 6px 0 0; }.info-cta a { flex: none; padding: 14px 19px; border-radius: 9px; background: #f56924; color: #fff; font-weight: 850; }
.legal-hero { padding: 72px 0; background: linear-gradient(120deg,#eef5fd,#f9fbfe); border-bottom: 1px solid #dce6f1; }.legal-hero h1 { margin: 0 0 12px; font-size: clamp(38px,5vw,62px); letter-spacing: -.045em; }.legal-hero p { max-width: 680px; margin: 0 0 22px; color: #5f7087; font-size: 17px; }.legal-hero small { color: #7b899b; }
.legal-layout { display: grid; grid-template-columns: 230px minmax(0,790px); justify-content: space-between; gap: 75px; padding-top: 65px; padding-bottom: 90px; }
.legal-nav { position: sticky; top: 25px; align-self: start; display: grid; gap: 5px; padding: 20px; border: 1px solid #dce5f0; border-radius: 14px; background: #fff; }.legal-nav strong { margin-bottom: 9px; }.legal-nav a { padding: 8px 10px; border-radius: 7px; color: #65758a; font-size: 12px; }.legal-nav a:hover { background: #eef5fd; color: #004ba4; }
.legal-content { min-width: 0; }.legal-notice { margin-bottom: 38px; padding: 20px 22px; border-left: 4px solid #f56924; border-radius: 0 10px 10px 0; background: #fff4ed; color: #5a4a40; line-height: 1.65; }.legal-content section { scroll-margin-top: 25px; padding: 0 0 32px; margin: 0 0 32px; border-bottom: 1px solid #e2e9f1; }.legal-content section:last-child { border: 0; }.legal-content h2 { margin: 0 0 13px; font-size: 23px; }.legal-content p { margin: 0; color: #5f6f83; line-height: 1.85; }.legal-content a { color: #f56924; text-decoration: underline; }
@media (max-width: 850px) { .info-hero__grid { grid-template-columns: 1fr; gap: 40px; }.about-visual { min-height: 260px; }.value-grid { grid-template-columns: 1fr 1fr; }.about-mission { grid-template-columns: 1fr; gap: 20px; }.legal-layout { grid-template-columns: 1fr; gap: 30px; }.legal-nav { position: static; grid-template-columns: 1fr 1fr; }.legal-nav strong { grid-column: 1/-1; } }
@media (max-width: 550px) { .info-hero__grid { min-height: 0; padding-top: 45px; padding-bottom: 45px; }.info-hero h1 { font-size: 39px; }.about-visual { min-height: 260px; padding: 28px; border-radius: 20px; }.about-visual > .parent-company-logo { top: 25px; left: 28px; width: 175px; height: 100px; padding: 12px; }.info-section { padding-top: 60px; padding-bottom: 60px; }.value-grid { grid-template-columns: 1fr; }.about-mission { padding-top: 55px; padding-bottom: 55px; }.info-cta { align-items: flex-start; flex-direction: column; margin-bottom: 55px; padding: 27px; }.legal-hero { padding: 50px 0; }.legal-layout { padding-top: 35px; padding-bottom: 60px; }.legal-nav { grid-template-columns: 1fr; }.legal-nav strong { grid-column: auto; } }

/* Public order tracking */
.tracking-timeline { display: flex; list-style: none; padding: 0; margin: 32px 0; text-align: center; }
.tracking-timeline__step { position: relative; flex: 1; min-width: 0; color: #61748b; }
.tracking-timeline__step:not(:last-child)::after { content: ''; position: absolute; top: 19px; left: calc(50% + 20px); width: calc(100% - 40px); height: 3px; background: #dce6f1; }
.tracking-timeline__marker { position: relative; z-index: 1; display: grid; place-items: center; width: 40px; height: 40px; margin: 0 auto 12px; border: 2px solid #dce6f1; border-radius: 50%; background: #f5f8fc; font-size: 16px; font-weight: 800; }
.tracking-timeline__step strong, .tracking-timeline__step small, .tracking-timeline__step time { display: block; }
.tracking-timeline__step strong { font-size: 12px; }
.tracking-timeline__step small, .tracking-timeline__step time { margin-top: 5px; font-size: 10px; }
.tracking-timeline__step.is-complete .tracking-timeline__marker { background: #12864b; border-color: #12864b; color: #fff; }
.tracking-timeline__step.is-complete::after { background: #12864b; }
.tracking-timeline__step.is-current { color: var(--ink); }
.tracking-timeline__step.is-current .tracking-timeline__marker { background: var(--gold); border-color: var(--gold); color: #fff; box-shadow: 0 0 0 5px #fff0e8; }
.tracking-timeline__step.is-cancelled .tracking-timeline__marker { background: #bc3030; border-color: #bc3030; box-shadow: 0 0 0 5px #fdecec; }
@media (max-width: 600px) {
    .tracking-timeline { flex-direction: column; text-align: left; gap: 0; }
    .tracking-timeline__step { display: flex; gap: 16px; padding-bottom: 26px; }
    .tracking-timeline__step:last-child { padding-bottom: 0; }
    .tracking-timeline__marker { flex-shrink: 0; margin: 0; }
    .tracking-timeline__step:not(:last-child)::after { top: 40px; left: 19px; width: 3px; height: calc(100% - 40px); }
    .tracking-timeline__step strong { font-size: 14px; }
    .tracking-timeline__step small, .tracking-timeline__step time { font-size: 12px; }
}

/* Frequently asked questions */
.faq-hero { padding: 70px 0 85px; text-align: center; background: linear-gradient(125deg,#edf5fd,#f9fbfe 62%,#fff2e9); border-bottom: 1px solid #dce6f1; }.faq-hero .info-eyebrow { margin-bottom: 10px; }.faq-hero h1 { margin: 0 0 13px; font-size: clamp(39px,5vw,61px); letter-spacing: -.045em; }.faq-hero p { margin: 0 auto 28px; color: #62738a; font-size: 16px; }.faq-search { display: flex; align-items: center; gap: 12px; width: min(570px,100%); margin: auto; padding: 5px 7px 5px 17px; border: 1px solid #d6e1ee; border-radius: 12px; background: #fff; box-shadow: 0 15px 38px rgba(0,59,130,.09); color: #6c7e94; }.faq-search input { width: 100%; padding: 11px 5px; border: 0; outline: 0; color: #123c6d; }
.faq-layout { display: grid; grid-template-columns: 220px minmax(0,820px); justify-content: space-between; gap: 75px; padding-top: 65px; padding-bottom: 70px; }.faq-categories { position: sticky; top: 25px; align-self: start; display: grid; gap: 4px; padding: 18px; border: 1px solid #dce5f0; border-radius: 14px; background: #fff; }.faq-categories strong { margin: 2px 9px 10px; }.faq-categories a { padding: 9px; border-radius: 7px; color: #63758a; font-size: 12px; }.faq-categories a:hover { color: #004ba4; background: #edf5fd; }
.faq-group { scroll-margin-top: 25px; margin-bottom: 50px; }.faq-group__heading { display: flex; align-items: center; gap: 15px; margin-bottom: 16px; }.faq-group__heading > span { display: grid; width: 42px; height: 42px; place-items: center; flex: none; border-radius: 11px; background: #004ba4; color: #fff; font-size: 11px; font-weight: 900; }.faq-group h2 { margin: 0 0 3px; font-size: 24px; }.faq-group__heading p { margin: 0; color: #77869a; font-size: 12px; }
.faq-item { margin-bottom: 10px; border: 1px solid #dce5f0; border-radius: 12px; background: #fff; transition: border-color .18s,box-shadow .18s; }.faq-item[open] { border-color: #b9cde5; box-shadow: 0 10px 30px rgba(0,59,130,.06); }.faq-item summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 18px 20px; cursor: pointer; list-style: none; color: #063b78; font-weight: 800; }.faq-item summary::-webkit-details-marker { display: none; }.faq-item summary span { display: grid; width: 27px; height: 27px; place-items: center; flex: none; border-radius: 50%; background: #edf4fc; color: #f56924; font-size: 19px; font-weight: 500; transition: transform .18s,background .18s; }.faq-item[open] summary span { transform: rotate(45deg); background: #fff1e9; }.faq-item > p { margin: 0; padding: 0 60px 20px 20px; color: #617187; line-height: 1.75; }.faq-empty { padding: 28px; border: 1px dashed #cbd9e9; border-radius: 13px; text-align: center; color: #687a91; }
.faq-contact { display: flex; align-items: center; justify-content: space-between; gap: 30px; margin-bottom: 75px; padding: 34px 38px; border-radius: 20px; background: #004ba4; color: #fff; }.faq-contact h2 { margin: 0 0 7px; font-size: 29px; }.faq-contact p { margin: 0; color: rgba(255,255,255,.68); }.faq-contact a { display: inline-flex; gap: 24px; flex: none; padding: 14px 18px; border-radius: 9px; background: #f56924; color: #fff; font-weight: 850; }
@media (max-width: 800px) { .faq-layout { grid-template-columns: 1fr; gap: 30px; }.faq-categories { position: static; grid-template-columns: 1fr 1fr; }.faq-categories strong { grid-column: 1/-1; }.faq-contact { align-items: flex-start; flex-direction: column; } }
@media (max-width: 500px) { .faq-hero { padding: 50px 0 60px; }.faq-layout { padding-top: 40px; }.faq-categories { grid-template-columns: 1fr; }.faq-categories strong { grid-column: auto; }.faq-item summary { padding: 16px; font-size: 13px; }.faq-item > p { padding: 0 16px 18px; font-size: 13px; }.faq-contact { margin-bottom: 55px; padding: 26px; } }
