/* Mobile-first storefront refinement. Original campaign files are unchanged.
   Home collections use server prices, stock and verified completed-order aggregates. */
:root { --bg:#0a1020; --panel:#131e32; --line:#27354f; }
body { background:radial-gradient(ellipse 75% 620px at 100% 0,#20325b55,transparent 80%),radial-gradient(ellipse 70% 700px at 0 650px,#35215228,transparent 85%),#0a1020; }
.announcement { background:#15223a; border-bottom:1px solid #a9b5f014; }
.announcement .wrap { min-height:32px; color:#c4d1e9; }
.header { background:#0d1729; border-bottom:1px solid #7287b32b; backdrop-filter:none; -webkit-backdrop-filter:none; box-shadow:0 6px 24px #00000015; }
.header-inner { min-height:86px; gap:28px; }
.header .brand { font-size:27px; letter-spacing:-1px; }
.header .brand small { color:#90a2c2; letter-spacing:1.2px; }
.header .site-logo { border-radius:50%; width:46px; height:46px; border:1px solid #75b3ff38; }
.header-search { background:#19253a; border:1px solid #52638165; border-radius:14px; min-height:48px; box-shadow:none; }
.header-search:focus-within { background:#1c2c46; border-color:#8c9df2; box-shadow:0 0 0 3px #7a8ee01a; }
.header-search input::placeholder { color:#a3b1ca; }
.header-search button { color:#c3ccff; background:#8895ff18; border-radius:9px; min-height:35px; min-width:35px; }
.header-actions { gap:18px; }.account-link { color:#d4def0; }
.nav-shell { background:transparent; border-top:1px solid #9fb3e512; }
.nav-inner { min-height:47px; }.nav-inner nav { gap:28px; }
.nav-inner nav a { font-size:12px; color:#aabbd5; }.nav-inner nav a.active { color:#bcaeff; }
body[data-page=home] .site-main { padding-top:0; }
.storefront-intro { padding:25px 0 19px; }
.storefront-intro h2 { color:#f4f6fd; font-weight:650; letter-spacing:-.8px; }
.storefront-intro .welcome-kicker { color:#a4b9dd; }
.home-promo-layout { margin-bottom:15px; }
.home-carousel.hero { border:1px solid #738ab136; border-radius:22px; background:#111a2d; box-shadow:0 15px 45px #0000001c; }
/* Readability comes from a continuous edge shade on the image, never a text panel. */
.carousel-art::after { content:''; position:absolute; inset:0; pointer-events:none; background:linear-gradient(15deg,#081021e6 0%,#08102180 20%,transparent 50%); z-index:1; }
.carousel-copy { background:none; border:0; border-radius:0; box-shadow:none; backdrop-filter:none; -webkit-backdrop-filter:none; padding:0; bottom:23px; left:26px; width:40%; gap:5px 16px; text-shadow:0 2px 8px #020716e6; }
.carousel-copy::before,.carousel-copy::after { display:none; }
.carousel-copy .carousel-product-name { grid-column:1/-1; grid-row:1; font-size:19px; font-weight:650; color:white; }
.carousel-kicker { display:none; }.carousel-features { grid-column:1/-1; grid-row:2; margin:0; }.carousel-live-price { grid-row:3; grid-column:1; justify-content:start; }.carousel-cta { grid-row:3; grid-column:2; }.carousel-terms { display:none; }.carousel-features li { color:#e3eaff; font-size:12px; line-height:1.6; }
.carousel-live-price>strong { color:white; font-size:34px; }.carousel-live-price .currency { color:#e3eaff; }
.carousel-cta .button { text-shadow:none; min-height:44px; background:#e9eeff; color:#182449; border:1px solid #fff; border-radius:10px; box-shadow:0 4px 15px #080f2830; }
.carousel-controls { position:relative; inset:auto; transform:none; display:flex; justify-content:space-between; width:100%; max-width:none; min-height:48px; padding:2px 15px; border:0; border-radius:0; background:#111c30; box-shadow:none; backdrop-filter:none; -webkit-backdrop-filter:none; }
.carousel-controls[hidden] { display:none; }
.carousel-dots { display:flex; }.carousel-dots button { min-width:30px; min-height:44px; }
.carousel-counter { display:block; color:#b1c0db; font-size:11px; }
.carousel-buttons { gap:3px; }.carousel-buttons button { width:44px; height:44px; min-width:44px; min-height:44px; background:none; border:0; color:#d7e0f2; }
.carousel-buttons button svg { width:17px; height:17px; }
.home-jumps { display:flex; align-items:center; gap:10px; margin:0 0 28px; }
.home-jumps a { min-height:44px; display:flex; align-items:center; justify-content:center; gap:9px; padding:9px 19px; border:1px solid #758ab333; border-radius:12px; background:#1b28422e; font-size:12px; color:#c6d4f1; }
.home-jumps a:first-child { color:#c9bbff; border-color:#ac8cf04a; }
.home-jumps a:hover { background:#283757; border-color:#a8a5e1; }
.collection-section { margin:0 0 35px; scroll-margin-top:165px; }
.collection-section .section-head { margin-bottom:16px; align-items:center; }
.collection-section .section-head h2 { font-size:26px; font-weight:650; margin:0; }
.collection-section .eyebrow { color:#91a6c7; font-size:10px; }
.collection-section .section-head .text-link { font-size:11px; }
.affordable-collection { padding:0; background:none; border:0; border-radius:0; margin-inline:0; }
.collection-rail.products-grid { display:grid; grid-auto-flow:column; grid-auto-columns:calc((100% - 48px)/4); grid-template-columns:none; align-items:stretch; gap:16px; overflow-x:auto; overscroll-behavior-x:contain; scroll-snap-type:x mandatory; padding:2px 0 12px; scrollbar-width:thin; scrollbar-color:#405577 transparent; }
.collection-rail .product-card { scroll-snap-align:start; }
.product-card { background:#141f32; border:1px solid #a1b5df24; border-radius:17px; box-shadow:none; }
.product-card:hover { border-color:#a08fe36b; transform:translateY(-2px); }
.product-card .product-art { background:radial-gradient(ellipse at 50% 100%,color-mix(in srgb,var(--platform-color) 12%,transparent),transparent 75%),#18243a; }
.card-topline { padding:13px 15px 0; }.product-body { padding:15px; }
.product-card .card-details { border-color:#a6b6e53b; background:#263452; color:#e5ebff; border-radius:10px; }
.collection-rail .product-art { min-height:95px; height:95px; padding:15px; }
.collection-rail .platform-object { transform:none; background:none; box-shadow:none; border:0; padding:0; width:100%; max-width:none; gap:7px; }
.collection-rail .object-label,.collection-rail .object-caption,.collection-rail .platform-watermark { display:none; }
.collection-rail .product-art .brand-symbol { --symbol-size:46px; box-shadow:none; }
.collection-rail .product-art .brand-label { font-size:12px; color:#d1dcf2; }.collection-rail .platform-object .brand-lockup { padding:0; background:none; border:0; border-radius:0; box-shadow:none; }.collection-rail .product-art .brand-symbol { background:#fff; }
.collection-rail .product-body h3 { min-height:0; margin:0 0 7px; font-size:14px; line-height:1.65; }
.collection-rail .card-plan { font-size:10px; margin:0 0 8px; }
.collection-rail .card-facts { margin:0 0 10px; }
.collection-rail .delivery { display:none; }
.collection-rail .card-bottom { padding-top:11px; margin-top:auto; gap:9px; }
.collection-rail .card-price .money { font-size:23px; }.collection-rail .card-price>small { font-size:9px; }
.collection-rail .card-details { width:auto; min-width:86px; max-width:none; min-height:44px; padding:7px 12px; margin:0; }.collection-rail .card-details span { display:inline; }
.offers-collection { padding-block:23px; border-top:1px solid #a8bae024; border-bottom:1px solid #a8bae024; }
.offers-empty { display:flex; align-items:center; gap:16px; padding:8px 0; color:#b2c1df; }.offers-empty>svg { flex:none; color:#b49ff1; }
.offers-empty p { margin:0; font-size:13px; }.offers-empty small { display:block; font-size:11px; color:#92a7c6; margin-top:5px; }
.offers-empty .text-link { margin-inline-start:auto; white-space:nowrap; font-size:11px; }.section-count { color:#a99bd5; font-size:11px; }
body[data-page=home] .category-section { padding-top:4px; margin-bottom:38px; }
body[data-page=home] .category-card { border-radius:16px; background:#152137; border:1px solid #a7bbeb22; }
body[data-page=home] .how-section { background:#152039; border-color:#b8c6ee24; }
.mobile-nav { background:#0e192c; box-shadow:0 -5px 25px #03091425; backdrop-filter:none; -webkit-backdrop-filter:none; }
.mobile-nav a { color:#94a9cb; }.mobile-nav a[aria-current=page] { color:#c4b3ff; }
@media(max-width:1100px) and (min-width:701px) {
 .collection-rail.products-grid { grid-auto-columns:calc((100% - 32px)/3); }
 .carousel-copy { left:18px; bottom:17px; }.carousel-copy .carousel-product-name { font-size:15px; }
 .carousel-features,.carousel-terms { display:none; }
 .carousel-live-price>strong { font-size:28px; }
}
@media(max-width:700px) {
 .announcement .wrap { min-height:26px; font-size:8px; }.announcement-mark { display:none; }
 .header-inner { padding-block:10px; gap:10px; }
 .header .brand { font-size:23px; gap:8px; }.header .site-logo { width:35px; height:35px; }
 .header .brand small { font-size:5px; letter-spacing:.65px; }
 .header-actions { gap:13px; }.header-actions a { min-height:35px; }.account-link { font-size:10px; }
 .header-search { min-height:44px; border-radius:12px; padding-inline:12px 4px; }
 .header-search input { font-size:12px; }.header-search button { min-height:35px; min-width:35px; }
 .storefront-intro { padding:17px 0 12px; }.storefront-intro h2 { font-size:20px; line-height:1.6; margin:0; letter-spacing:-.4px; }
 .storefront-intro .welcome-kicker { font-size:8px; margin-bottom:2px; }
 .home-carousel.hero { border-radius:15px; }.home-promo-layout { margin-bottom:13px; }
 .carousel-slide { padding:0; min-height:0; aspect-ratio:3/1; }
 .carousel-art::after { background:linear-gradient(18deg,#071024e6,#07102475 29%,transparent 56%); }
 .carousel-copy { left:10px; right:auto; bottom:9px; width:48%; padding:0; margin:0; gap:3px 5px; border:0; border-radius:0; background:none; box-shadow:none; backdrop-filter:none; -webkit-backdrop-filter:none; }
 .carousel-copy .carousel-product-name { grid-row:1; font:650 11px/1.35 system-ui,sans-serif; text-align:start; margin:0; }
 .carousel-live-price { grid-row:2; grid-column:1; min-width:0; gap:3px; }.carousel-live-price>strong { font-size:24px; line-height:1.1; }.carousel-live-price .currency { font-size:9px; }
 .carousel-live-price>small,.carousel-features,.carousel-kicker,.carousel-terms { display:none; }
 .carousel-live-price del { font-size:9px; color:#d1d8eb; }
 .carousel-cta { grid-row:2; grid-column:2; }.carousel-cta .button { width:44px; min-width:44px; min-height:44px; max-width:44px; padding:0; border-radius:10px; font-size:0; }
 .carousel-cta .button svg { width:18px; height:18px; }
 .carousel-copy .carousel-stock { font-size:8px; grid-row:3; }
 .carousel-controls { position:relative; inset:auto; min-height:44px; padding:0 8px; border-radius:0; background:#111c30; }
 .carousel-buttons { gap:0; }.carousel-buttons button { min-width:44px; min-height:44px; }
 .carousel-dots button { min-width:25px; min-height:44px; }.carousel-counter { font-size:9px; }
 .home-jumps { gap:6px; margin-bottom:24px; }.home-jumps a { flex:1; min-width:0; min-height:44px; padding:8px 3px; gap:5px; font-size:10px; border-radius:10px; white-space:nowrap; }
 .home-jumps a svg { width:15px; height:15px; flex:none; }
 .collection-section { scroll-margin-top:130px; margin-bottom:25px; }
 .collection-section .section-head { margin-bottom:12px; gap:8px; }.collection-section .section-head h2 { font-size:22px; }.collection-section .eyebrow { font-size:8px; }
 .collection-section .section-head .text-link { font-size:10px; }
 .collection-rail.products-grid { grid-auto-columns:73%; grid-template-columns:none; gap:11px; padding-bottom:10px; }
 .collection-rail .product-card { border-radius:14px; }
 .collection-rail .card-topline { padding:11px 13px 0; }.collection-rail .product-category { font-size:9px; }.collection-rail .badge { font-size:8px; }
 .collection-rail .product-art { min-height:66px; height:66px; padding:10px 13px; }
 .collection-rail .product-art .brand-lockup { flex-direction:row; justify-content:center; gap:10px; }
 .collection-rail .product-art .brand-symbol { --symbol-size:39px; }.collection-rail .product-art .brand-label { font-size:13px; }
 .collection-rail .product-body { padding:12px 13px; }.collection-rail .product-body h3 { font-size:13px; line-height:1.6; margin:0 0 5px; }
 .collection-rail .card-plan { font-size:9px; line-height:1.5; margin-bottom:7px; }
 .collection-rail .card-facts { font-size:9px; margin-bottom:8px; }.collection-rail .card-facts span { padding:3px 6px; }
 .collection-rail .card-bottom { flex-direction:row; align-items:end; gap:6px; padding-top:9px; }
 .collection-rail .card-price .money { font-size:24px; }.collection-rail .card-price .currency { font-size:10px; }.collection-rail .card-price>small { font-size:8px; }
 .collection-rail .card-details { min-height:44px; padding:6px 10px; font-size:10px; gap:7px; }
 .offers-collection { padding-block:18px; }.offers-empty { flex-wrap:wrap; gap:11px; }.offers-empty p { font-size:11px; }.offers-empty small { font-size:10px; }.offers-empty .text-link { margin-inline-start:33px; min-height:36px; }
 body[data-page=home] .category-section { margin-bottom:30px; }
 body[data-page=home] .category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
 body[data-page=home] .category-card { flex-direction:row; text-align:start; padding:13px 10px; min-height:76px; gap:9px; }
 body[data-page=home] .category-icon { width:34px; height:38px; border-radius:11px; }
 body[data-page=home] .category-card h3 { font-size:10px; }.category-card small { font-size:8px; }
 .mobile-nav a { padding-top:9px; gap:4px; }.mobile-nav a[aria-current=page]::before { background:#b6a2ff; width:19px; }
}
@media(max-width:360px) {
 .header .brand { font-size:21px; }.storefront-intro h2 { font-size:18px; }
 .carousel-copy { left:8px; bottom:7px; width:49%; }.carousel-copy .carousel-product-name { font-size:10px; }
 .carousel-live-price>strong { font-size:21px; }.carousel-live-price .currency { font-size:8px; }
 .home-jumps a { font-size:9px; gap:3px; }.home-jumps a svg { width:13px; height:13px; }
 .collection-rail.products-grid { grid-auto-columns:81%; }
}
@media(prefers-reduced-motion:no-preference) {
 .carousel-slide:not([hidden]) .carousel-art picture { animation:campaign-reveal .45s ease-out; }
 @keyframes campaign-reveal { from {opacity:.35} to {opacity:1} }
}
