/* V_CODE V20 — editorial Apple premiere, vivid blue and clean official imagery. */
.apple-launch { margin-bottom:22px; }
.launch-masthead { position:relative; display:grid; grid-template-columns:1fr 1.18fr; min-height:350px; overflow:hidden; isolation:isolate; border:1px solid #2c456b; border-radius:26px; background:#0b1d3c; color:#f8fbff; }
.launch-copy { position:relative; z-index:2; padding:35px 16px 35px 32px; background:radial-gradient(ellipse at 0 90%,#134e9d60,transparent 75%); }
.launch-eyebrow { display:flex; align-items:center; gap:8px; font-size:12px; font-weight:750; letter-spacing:.12em; color:#82c8ff; }
.launch-eyebrow svg { flex:none; }
.launch-copy h1 { max-width:390px; font-size:clamp(36px,4.6vw,52px); line-height:1.01; letter-spacing:-.055em; margin:19px 0 12px; font-weight:760; text-wrap:balance; color:#f8fbff; }
.launch-intro { margin:0 0 24px; color:#bacbe3; font-size:17px; line-height:1.4; letter-spacing:-.015em; }
.launch-preorder { display:grid; grid-template-columns:7px 1fr; align-items:center; gap:5px 8px; margin-bottom:20px; }
.launch-status-dot { width:6px; height:6px; border-radius:50%; background:#84c9ff; box-shadow:0 0 12px #54a9ff77; }
.launch-preorder b { font-size:14px; color:#a5d7ff; font-weight:650; }
.launch-preorder>span:last-child { grid-column:2; font-size:13px; line-height:1.4; color:#b3c6e0; }
.launch-browse { display:flex; align-items:center; justify-content:space-between; gap:23px; min-height:46px; border:1px solid #518df1; border-radius:12px; background:#3178f6; color:#fff; padding:11px 17px; font-size:14px; font-weight:650; box-shadow:0 7px 22px #0002; }
.launch-browse>span { font-size:21px; line-height:1; font-weight:400; }
.launch-visual { position:relative; min-width:0; overflow:hidden; background:#f6f5f3; border-radius:0 25px 25px 0; }
.launch-visual::after { content:''; position:absolute; inset:0; pointer-events:none; box-shadow:inset 1px 0 0 #ffffff1a; }
.launch-device { position:absolute; width:56%; height:78%; object-fit:contain; top:11%; transition:transform .5s ease; }
.launch-device-1 { left:-1%; transform:translateY(8px); }
.launch-device-2 { right:-1%; transform:translateY(-8px); }
.launch-hero-image { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; object-position:center; }
.launch-edition { position:absolute; z-index:2; right:16px; bottom:14px; color:#546375; font-size:11px; letter-spacing:.1em; text-transform:uppercase; }
.launch-edition:empty { display:none; }
.launch-selection { margin-top:25px; }
.launch-section-head { display:flex; justify-content:space-between; align-items:end; gap:15px; margin-bottom:16px; }
.launch-section-head h2 { margin:5px 0 0; color:var(--text); font-size:25px; font-weight:700; line-height:1.16; letter-spacing:-.035em; scroll-margin-top:90px; }
.launch-rail-controls { display:flex; align-items:center; gap:7px; flex-shrink:0; }
.launch-rail-controls>span { margin-right:7px; white-space:nowrap; color:var(--muted); font-size:12px; }
.launch-rail-controls button { display:grid; place-items:center; width:38px; height:38px; border:1px solid var(--line); border-radius:50%; background:var(--surface-2); color:var(--text); font-size:27px; line-height:1; font-weight:400; padding:0 0 3px; }
.launch-rail-controls button:disabled { color:var(--muted); opacity:.35; cursor:default; }
.launch-product-rail { display:grid; grid-auto-flow:column; grid-auto-columns:calc((100% - 28px)/3); column-gap:14px; align-items:stretch; overflow-x:auto; overscroll-behavior-x:contain; scroll-snap-type:x mandatory; scroll-padding-inline:1px; scrollbar-width:thin; scrollbar-color:#305278 transparent; padding:2px 1px 12px; }
.launch-product-rail::-webkit-scrollbar { height:4px; }
.launch-product-rail::-webkit-scrollbar-thumb { background:#305278; border-radius:4px; }
.launch-product-card { scroll-snap-align:start; content-visibility:visible; contain:layout paint; border-radius:20px; }
.launch-product-card .product-image-wrap { aspect-ratio:1.5; background:#f5f5f4; }
.launch-product-card .product-image { padding:16px 35px 16px 22px; }
.launch-product-card .product-info { padding:17px; }
.launch-product-card .product-name { font-size:18px; font-weight:680; min-height:25px; line-height:1.3; margin:6px 0 17px; letter-spacing:-.025em; }
.launch-product-card .product-meta { text-transform:none; font-size:12px; }
.launch-product-card .product-badge { font-size:10px; letter-spacing:.12em; font-weight:750; }
.product-card.is-preorder .product-price { display:flex; flex-direction:column; flex:1; min-width:0; gap:4px; letter-spacing:0; }
.product-card.is-preorder .product-price>b { color:var(--text); font-size:16px; font-weight:650; line-height:1.3; }
.product-card.is-preorder .product-price>small { font-size:12px; color:var(--muted); line-height:1.45; font-weight:400; max-width:220px; }
.product-card.is-preorder .product-footer { align-items:end; flex-wrap:nowrap; }
.product-card.is-preorder .product-arrow { width:30px; height:30px; }
.product-card.has-official-image .product-image-wrap { background:#f5f5f4; }
.product-card.has-official-image .card-favorite,.product-card.has-official-image .compare-card-btn,.launch-product-card .card-favorite,.launch-product-card .compare-card-btn { color:#3c485b; background:#fffffff0; border-color:#e0e3e8; }
.product-card.has-official-image .card-favorite.active,.launch-product-card .card-favorite.active { color:#d43b65; }
.product-card.has-official-image .compare-card-btn.active,.launch-product-card .compare-card-btn.active { color:#1768df; border-color:#81b3fa; }
#productSheet.has-official-image .sheet-media,#productSheet.has-official-image .gallery-slide { background:#f5f5f4; }
#productSheet.is-preorder .availability { color:var(--v19-accent); margin-top:8px; }
#productSheet.is-preorder .buy-row { position:static; margin-top:22px; padding:18px 0 14px; border-top:1px solid var(--line); min-height:0; background:transparent; }
#productSheet.is-preorder .buy-row>div { width:100%; }
#productSheet.is-preorder .buy-row small { font-size:14px; color:var(--v19-accent); font-weight:650; margin-bottom:4px; }
#productSheet.is-preorder #sheetPrice { font-size:22px; letter-spacing:-.025em; line-height:1.22; font-weight:700; max-width:350px; }
#productSheet.is-preorder #sheetAskManager { min-height:52px; padding:13px 16px; line-height:1.35; font-size:15px; margin-top:0; }
.preorder-sheet-note { margin:10px 0 18px; font-size:13px; line-height:1.5; color:var(--muted); }
.official-image-caption { display:flex; flex-wrap:wrap; gap:5px 12px; padding:10px 22px; color:var(--muted); font-size:12px; line-height:1.5; border-bottom:1px solid var(--line); }
.official-image-caption a { color:var(--v19-accent); text-decoration:none; white-space:nowrap; }
.cart-preorder-open { display:block; margin:10px 0; border:1px solid var(--line); border-radius:10px; background:var(--surface-2); color:var(--text); padding:10px 12px; font-size:13px; text-align:left; }
html[data-theme="light"] .launch-masthead { border-color:#c8d8ee; }
html[data-theme="light"] .launch-copy { background:linear-gradient(130deg,#132d56,#0b1d3c); }
html[data-theme="light"] .launch-product-rail { scrollbar-color:#b8cde7 transparent; }
html[data-theme="light"] .launch-product-card { background:#fff; border-color:#dbe3f0; }
html[data-theme="light"] .product-card.is-preorder .product-price>b { color:#142a47; }
html[data-theme="light"] #productSheet.is-preorder .buy-row small,html[data-theme="light"] #productSheet.is-preorder .availability,html[data-theme="light"] .official-image-caption a { color:#1764cd; }
@media(hover:hover) { .launch-browse:hover { background:#4388ff; } .launch-rail-controls button:not(:disabled):hover { border-color:#7198d5; } .launch-product-card:hover .product-image { transform:translateY(-3px); } .launch-product-card .product-image { transition:transform .25s ease; } }
@media(max-width:760px) { .launch-masthead { min-height:310px; grid-template-columns:1fr 1fr; border-radius:23px; } .launch-copy { padding:27px 16px 26px 24px; } .launch-copy h1 { font-size:38px; } .launch-intro { font-size:15px; } .launch-product-rail { grid-auto-columns:calc((100% - 14px)/2.35); } .launch-section-head h2 { font-size:23px; } .launch-rail-controls>span { display:none; } .launch-visual { border-radius:0 22px 22px 0; } .launch-product-card .product-name { font-size:17px; } }
@media(max-width:560px) { .launch-masthead { display:grid; grid-template-columns:1fr; min-height:0; border-radius:22px; } .launch-copy { padding:23px 22px 21px; display:grid; grid-template-columns:1fr auto; gap:0 15px; } .launch-eyebrow { grid-column:1/-1; font-size:11px; } .launch-copy h1 { grid-column:1/-1; font-size:38px; max-width:300px; margin:13px 0 11px; } .launch-intro { display:none; } .launch-preorder { grid-column:1/-1; margin-bottom:15px; gap:4px 8px; } .launch-preorder b { font-size:13px; } .launch-preorder>span:last-child { font-size:12px; } .launch-browse { grid-column:1/-1; justify-self:start; font-size:13px; min-height:43px; padding:9px 14px; gap:27px; } .launch-visual { height:172px; border-radius:0; } .launch-device { height:94%; top:3%; width:46%; } .launch-device-1 { left:6%; transform:none; } .launch-device-2 { right:6%; transform:none; } .launch-hero-image { object-fit:cover; object-position:center; } .launch-edition { bottom:9px; right:12px; font-size:10px; } .launch-selection { margin-top:22px; } .launch-section-head { align-items:center; margin-bottom:13px; gap:8px; } .launch-section-head h2 { font-size:22px; max-width:230px; } .launch-section-head .kicker { font-size:10px; letter-spacing:.095em; } .launch-rail-controls { gap:5px; } .launch-rail-controls button { width:33px; height:33px; font-size:24px; } .launch-product-rail { grid-auto-columns:76%; column-gap:12px; margin-right:-16px; padding-right:16px; scroll-padding-right:16px; } .launch-product-card .product-image-wrap { aspect-ratio:1.6; } .launch-product-card .product-info { padding:15px; } .launch-product-card .product-name { font-size:18px; min-height:24px; margin-bottom:15px; } .launch-product-card .product-image { padding:12px 29px 12px 19px; } .product-card.is-preorder .product-price>b { font-size:15px; } .product-card.is-preorder .product-price>small { font-size:12px; } .official-image-caption { padding-inline:17px; } }
@media(max-width:360px) { .launch-copy { padding:21px 19px; } .launch-copy h1 { font-size:34px; } .launch-visual { height:155px; } .launch-section-head h2 { font-size:20px; } .launch-product-rail { grid-auto-columns:84%; margin-right:-12px; padding-right:12px; } .launch-rail-controls button { width:30px; height:30px; } #productSheet.is-preorder #sheetPrice { font-size:21px; } }
@media(prefers-reduced-motion:reduce) { .launch-device,.launch-product-card .product-image { transition:none; } .launch-product-card:hover .product-image { transform:none; } .launch-product-rail { scroll-behavior:auto; } }
