:root{
  color-scheme:light dark;
  --paper:#f3f6f9;--paper2:#e8edf4;--ink:#172b43;--muted:#586b82;
  --sky:#bdd9e8;--iris:#9696c9;--fjord:#0d2034;
  --edge:rgba(57,82,108,.15);--white:#ffffff;
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Helvetica Neue",sans-serif;
  font-synthesis:none;
  -webkit-font-smoothing:antialiased;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:92px}
body{margin:0;color:var(--ink);background:var(--paper);overflow-x:hidden}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer}
img{max-width:100%;display:block}
h1,h2,h3,p,blockquote{margin-top:0}
.shell{width:min(1240px,calc(100% - 90px));margin-inline:auto}
.skip-link{position:absolute;z-index:100;top:-90px;left:30px;background:#fff;color:var(--fjord);padding:13px 20px;border:2px solid #6e88b8}
.skip-link:focus{top:12px}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #557fbb;outline-offset:4px}
svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.site-header{position:sticky;top:0;z-index:30;background:rgba(243,246,249,.87);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);border-bottom:1px solid rgba(64,84,119,.11)}
.nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:10px;font-family:"Avenir Next","Helvetica Neue",sans-serif;font-weight:730;font-size:21px;letter-spacing:-.65px}
.brand img{border-radius:10px}
.nav-middle{display:flex;align-items:center;gap:34px;color:#445a74;font-size:12.5px;font-weight:560}
.nav-middle a{position:relative}
.nav-middle a::after{content:"";height:1px;background:#567196;position:absolute;left:0;right:100%;bottom:-7px;transition:right .2s}
.nav-middle a:hover::after{right:0}
.nav-cta{display:flex;align-items:center;gap:12px;font-weight:660;font-size:12px;padding:12px 16px 12px 21px;border-radius:999px;background:#e2eaf2;border:1px solid #d0dae7}
.nav-cta svg{width:16px}
.nav-cta:hover{background:#d5e2ee}
.hero{position:relative;overflow:hidden;isolation:isolate;background:linear-gradient(145deg,#f7f9fb,#edf3f8 66%,#e8eef4);border-bottom:1px solid var(--edge)}
.hero-topographic{position:absolute;inset:0;z-index:-1;opacity:.28;pointer-events:none;background-image:repeating-radial-gradient(ellipse 100% 85% at 108% 9%,transparent 0 30px,rgba(118,143,177,.095) 31px 32px);mask-image:linear-gradient(to left,black,transparent 65%)}
.hero-grid{min-height:705px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);gap:3.5vw;align-items:center}
.hero-copy{padding:65px 0 96px;position:relative;z-index:3}
.introline{display:flex;align-items:center;gap:12px;font-family:"Avenir Next",sans-serif;font-weight:610;color:#60738e;font-size:12px;letter-spacing:.03em;margin:0 0 29px}
.introline-mark{display:block;width:21px;height:2px;background:#7492b4;border-radius:3px}
h1,h2{font-family:"Avenir Next",sans-serif}
h1{font-size:clamp(57px,5.4vw,84px);font-weight:730;letter-spacing:-5px;line-height:1.05;margin:0 0 29px}
.underlined-word{position:relative;white-space:nowrap}
.underlined-word::after{content:"";position:absolute;left:1%;right:2%;height:5px;bottom:0;background:#b7cce0;transform:rotate(-1.5deg);border-radius:5px;z-index:-1}
.hero-subtitle{max-width:520px;font-family:"Avenir Next",sans-serif;font-size:clamp(18px,1.7vw,22px);font-weight:520;line-height:1.52;letter-spacing:-.4px;color:#293f57;margin:0 0 19px}
.hero-detail{max-width:500px;color:var(--muted);font-size:13.5px;line-height:1.84;margin:0}
.hero-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin:29px 0 46px}
.action{display:inline-flex;align-items:center;justify-content:center;gap:19px;min-height:51px;padding:12px 20px 12px 25px;border-radius:15px;font-size:13px;font-weight:680;transition:transform .2s,background-color .2s}
.action:hover{transform:translateY(-2px)}
.action-dark{background:#182d45;color:#fff;box-shadow:0 12px 24px rgba(26,48,80,.16),inset 0 1px rgba(255,255,255,.18)}
.action-dark:hover{background:#254765}
.action-dark svg{width:19px;height:19px}
.text-link{font-size:13px;font-weight:650;color:#3c5472;border-bottom:1px solid #8aa2bf;padding-bottom:5px}
.text-link span{margin-left:5px}
.text-link:hover{color:#1e3858}
.hero-info{display:flex;align-items:center;gap:13px;flex-wrap:wrap;color:#74859a;font-size:10.5px}
.hero-info span+span::before{content:"";display:inline-block;vertical-align:middle;width:3px;height:3px;background:#aab7c6;border-radius:100%;margin-right:13px}
.hero-composition{height:630px;position:relative;display:flex;align-items:center;justify-content:center;isolation:isolate}
.alpine-photo{position:absolute;z-index:-2;inset:0 -12% 0 -4%;background:linear-gradient(90deg,#f0f4f8 0%,rgba(236,241,247,.60) 19%,rgba(225,237,247,.16) 80%),url('assets/alpine.jpg') center 20%/cover no-repeat;mask-image:radial-gradient(ellipse 77% 75% at 58% 53%,black 0%,rgba(0,0,0,.94) 38%,transparent 78%);opacity:.68}
.alpine-film{position:absolute;z-index:-1;width:95%;height:75%;background:radial-gradient(ellipse at 55% 48%,rgba(151,193,229,.45),transparent 72%)}
.hero-product{width:100%;max-width:660px;transform:rotate(2.5deg) translate(10px,18px);border:1px solid rgba(249,252,255,.90);border-radius:23px;box-shadow:0 57px 74px rgba(37,70,105,.23),0 15px 24px rgba(26,45,87,.12),0 0 0 5px rgba(255,255,255,.47);overflow:hidden;background:#17223a;padding:0 6px 6px;position:relative}
.hero-product::after{content:"";position:absolute;inset:0;border-radius:22px;box-shadow:inset 0 1px rgba(255,255,255,.65);pointer-events:none}
.hero-product img{width:100%;height:490px;object-fit:cover;object-position:center top;border-radius:11px}
.window-toolbar{height:43px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;color:#bdcbe3;font-size:10px;background:linear-gradient(180deg,#25344e,#19273e)}
.traffic,.gallery-lights{display:flex;gap:6px}
.traffic b,.gallery-lights b{width:8px;height:8px;border-radius:100%;background:#f77977}
.traffic b:nth-child(2),.gallery-lights b:nth-child(2){background:#f6cf69}
.traffic b:nth-child(3),.gallery-lights b:nth-child(3){background:#72cd8a}
.window-title{font-weight:670;letter-spacing:.04em}
.window-pill{font-size:9px;padding:6px 10px;border-radius:20px;background:rgba(255,255,255,.1)}
.scene-caption{position:absolute;bottom:5px;right:0;color:#7f8fa5;font-size:11px;letter-spacing:.01em}
.scene-caption span{margin-right:8px;color:#62778f}
.hero-bottom-rule{height:11px;background:linear-gradient(90deg,#b1c8db 0%,#e9f0f5 47%,#b6cde1)}
.promise{display:flex;align-items:center;justify-content:space-between;gap:40px;padding-block:35px;border-bottom:1px solid var(--edge)}
.promise>p{font-family:"Avenir Next",sans-serif;font-size:15px;letter-spacing:-.3px;font-weight:680;margin:0}
.promise-detail{display:flex;gap:18px;align-items:center;color:#7c8ca0;font-size:11px}
.promise-separator{height:4px;width:4px;border-radius:50%;background:#c5cfdb}
.why-section{padding-top:145px;padding-bottom:150px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:min(9vw,118px)}
.section-label{font-size:12px;font-weight:710;color:#6c7e95;margin:0 0 24px}
.why-heading h2,.details-hero h2,.download-left h2,.faq-left h2{font-size:clamp(42px,4.6vw,66px);letter-spacing:-3.8px;line-height:1.09;margin:0 0 25px;font-weight:690}
.why-heading h2 span{color:#8699ae}
.why-heading>p:last-child{max-width:395px;color:#5b6e86;font-size:14px;line-height:1.85}
.steps{border-top:1px solid #b4c1cd}
.step{display:grid;grid-template-columns:48px 1fr 42px;gap:20px;padding:30px 0 27px;border-bottom:1px solid #b4c1cd;align-items:start}
.step-index{font-family:"Avenir Next",sans-serif;font-size:12px;font-weight:700;color:#8399b0;padding-top:8px}
.step h3{font-family:"Avenir Next",sans-serif;font-size:23px;letter-spacing:-.7px;margin:0 0 8px;font-weight:670}
.step p{font-size:12.5px;line-height:1.8;color:#5d7189;max-width:470px;margin:0}
.step-symbol{font-size:27px;text-align:right;color:#859db2;font-weight:300}
.gallery{background:#102840;position:relative;overflow:hidden;color:#f5f8fc;padding:116px 0 115px}
.gallery::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 51% 70% at 83% 68%,rgba(148,185,220,.12),transparent 88%),linear-gradient(160deg,rgba(205,226,249,.065),transparent 29%)}
.gallery-content{position:relative;display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.48fr);gap:5vw;align-items:center}
.gallery-overline{font-size:12px;font-weight:650;color:#a7c1d6}
.gallery-intro h2{font-size:clamp(41px,4.3vw,64px);line-height:1.13;letter-spacing:-2.9px;margin:25px 0 23px;font-weight:660}
.gallery-intro h2 em{font-style:normal;color:#b4d4e5}
.gallery-intro>p:not(.gallery-overline){font-size:13px;line-height:1.85;color:#b0c3d4;max-width:350px}
.gallery-switcher{display:flex;flex-direction:column;align-items:stretch;border-top:1px solid rgba(227,239,249,.26);margin-top:42px}
.gallery-tab{display:flex;align-items:center;gap:13px;padding:17px 10px 17px 0;border:0;border-bottom:1px solid rgba(227,239,249,.23);color:#9bb2c8;text-align:left;background:transparent;font-size:14px;transition:color .15s}
.gallery-tab.selected,.gallery-tab:hover{color:white}
.tab-dot{height:9px;width:9px;border:1px solid #9bb6ca;border-radius:50%}
.gallery-tab.selected .tab-dot{background:#c7e1ef;border-color:#c7e1ef;box-shadow:0 0 0 4px rgba(191,225,243,.12)}
.gallery-caption{margin-top:28px;min-height:90px}
.gallery-caption strong{font-size:13px;font-weight:650}
.gallery-caption p{font-size:12px;line-height:1.7;color:#a8c0d3;margin:7px 0 0;max-width:340px}
.gallery-stage{position:relative}
.gallery-window{background:#0b192d;border:1px solid rgba(241,250,255,.27);border-radius:22px;padding:5px;box-shadow:0 53px 85px rgba(1,8,18,.34),0 8px 21px rgba(1,9,20,.19),0 0 0 7px rgba(225,238,251,.035);overflow:hidden}
.gallery-window-bar{display:flex;align-items:center;justify-content:space-between;height:38px;padding:0 15px;font-size:10px;color:#aabdd1}
.gallery-window img{border-radius:11px;display:block;width:100%;height:485px;object-fit:cover;object-position:center top;transition:opacity .14s}
.gallery-footnote{position:absolute;right:0;bottom:-32px;color:#8eacc6;font-size:10px}
.details-section{padding-top:152px;padding-bottom:146px;display:grid;grid-template-columns:1fr 1fr;gap:9vw}
.details-name{font-size:12px;color:#7589a0;margin-bottom:22px}
.details-hero h2{max-width:500px}
.details-hero p{max-width:415px;font-size:13.5px;color:#61758d;line-height:1.85}
.feature-rows{border-top:1px solid #b3c1d0}
.feature-rows>div{display:grid;grid-template-columns:35px 1fr;column-gap:15px;padding:23px 0;border-bottom:1px solid #b3c1d0}
.feature-number{grid-row:span 2;font-family:"Avenir Next",sans-serif;font-size:13px;color:#7b90a8;padding-top:4px}
.feature-rows h3{font-family:"Avenir Next",sans-serif;font-size:20px;letter-spacing:-.5px;margin-bottom:7px}
.feature-rows p{font-size:12px;line-height:1.75;color:#64758b;margin-bottom:0}
.makers-note{background:linear-gradient(125deg,#e2eaf2,#e8e7f0 75%,#e4ebf2);padding:110px 0;border-top:1px solid rgba(70,92,115,.12);border-bottom:1px solid rgba(70,92,115,.13)}
.note-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:100px;align-items:center}
.note-emblem{height:327px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.95);background:linear-gradient(145deg,rgba(255,255,255,.72),rgba(194,212,228,.35));border-radius:32px;box-shadow:0 20px 40px rgba(64,85,119,.08),inset 0 1px white;overflow:hidden}
.note-emblem img{position:relative;z-index:1;filter:drop-shadow(0 20px 20px rgba(66,78,146,.13))}
.note-emblem>span:last-child{position:relative;z-index:1;font-size:12px;color:#617b99;margin-top:16px}
.note-rings{position:absolute;width:260px;height:260px;border-radius:50%;border:1px solid rgba(107,142,174,.19);box-shadow:0 0 0 26px rgba(135,161,190,.045),0 0 0 52px rgba(135,161,190,.038)}
.note-message blockquote{font-family:"Avenir Next",sans-serif;font-size:clamp(32px,3.3vw,49px);line-height:1.3;letter-spacing:-1.5px;font-weight:600;margin:0 0 21px}
.note-message>p:not(.section-label){font-size:13.5px;color:#5c7187;line-height:1.9;max-width:640px}
.note-signature{display:inline-block;border-top:1px solid #b2c0cf;padding-top:17px;margin-top:14px;color:#48627b;font-size:12px;font-weight:680}
.download-section{display:grid;grid-template-columns:1.15fr .85fr;gap:80px;padding-top:150px;padding-bottom:105px}
.download-left h2{margin:0 0 20px}
.download-left>p:not(.section-label):not(.availability){color:#63778d;font-size:14px}
.download-link{margin-top:17px}
.availability{margin-top:25px;color:#76889e;font-size:11.5px;line-height:1.7}
.download-side{position:relative;border-left:1px solid #bfcbd9;padding-left:56px;display:flex;flex-direction:column;justify-content:center;gap:17px}
.download-mark{width:120px;height:120px;filter:drop-shadow(0 16px 20px rgba(48,77,122,.18))}
.checksum p:first-child{font-weight:710;color:#324a63;font-size:13px;margin:0 0 9px}
.checksum-help{color:#74869a;font-size:11px;line-height:1.6;max-width:280px}
.checksum code{display:block;overflow-wrap:anywhere;white-space:normal;font-size:10.5px;color:#4b617a;letter-spacing:.02em;font-family:ui-monospace,Menlo,monospace;line-height:1.6}
.checksum button{margin-top:15px;background:#e3edf4;border:1px solid #b8cbd8;border-radius:9px;padding:8px 11px;color:#344f69;font-size:11px;font-weight:650}
.checksum button:hover{background:#d5e3ee}
.security-note{display:flex;gap:18px;align-items:flex-start;background:#e5ebf1;border:1px solid #cbd5e0;border-radius:15px;padding:21px 23px;margin-bottom:135px;max-width:1160px}
.security-symbol{display:flex;align-items:center;justify-content:center;flex:none;height:24px;width:24px;border:1px solid #91a6b9;border-radius:50%;font-family:Georgia,serif;color:#55708b;font-size:15px;font-style:italic}
.security-note p{font-size:11.7px;line-height:1.8;color:#5d7186;margin:0}
.security-note strong{color:#263f58}
.security-note a{text-decoration:underline;text-underline-offset:3px;color:#355c87;font-weight:650}
.faq-section{display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw;padding-bottom:160px}
.faq-list{border-top:1px solid #b7c6d5}
.faq-list details{border-bottom:1px solid #b7c6d5;padding:0}
.faq-list summary{list-style:none;cursor:pointer;position:relative;padding:23px 35px 23px 0;font-size:14px;font-weight:650;color:#314965}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:"+";position:absolute;right:6px;top:20px;color:#748ba3;font-size:22px;font-weight:320}
.faq-list details[open] summary::after{content:"−"}
.faq-list details p{font-size:12.5px;line-height:1.8;color:#60758d;max-width:630px;padding-bottom:20px}
.footer{background:#132941;color:#f5f8fb;padding-top:42px}
.footer-top{display:flex;align-items:center;gap:35px;padding-bottom:42px}
.footer .brand{font-size:19px}
.footer-top>p{color:#9fb4c8;font-size:12px;margin:0 auto 0 0}
.footer-nav{display:flex;gap:26px}
.footer-nav a{color:#c0d0df;font-size:11.5px}
.footer-nav a:hover{text-decoration:underline}
.footer-bottom{border-top:1px solid rgba(225,239,251,.17);display:flex;justify-content:space-between;gap:20px;color:#829db7;font-size:10.5px;padding:23px 0}
.legal{max-width:850px;padding:85px 0 125px}
.legal h1{font-size:clamp(42px,4.8vw,62px);line-height:1.12;letter-spacing:-3px;font-weight:700}
.legal h2{font-size:25px;letter-spacing:-.6px;margin-top:40px}
.legal p,.legal li{font-size:13.5px;line-height:1.85;color:var(--muted)}
.legal a{color:#2b608d;text-decoration:underline}
.legal ul{padding-left:20px}
@media(max-width:1120px){
 .shell{width:min(100% - 64px,1240px)}
 .hero-grid{grid-template-columns:1fr .94fr}
 h1{font-size:clamp(50px,5.4vw,67px);letter-spacing:-3.7px}
 .hero-product img{height:415px}
 .hero-composition{height:570px}
 .nav-middle{gap:19px}
 .promise{flex-wrap:wrap}
 .promise-detail{flex-wrap:wrap}
 .note-grid{gap:55px}
}
@media(max-width:820px){
 .shell{width:min(100% - 42px,1240px)}
 .nav-middle{display:none}
 .hero-grid{display:block}
 .hero-copy{padding:74px 0 35px}
 .hero-composition{height:auto;padding:10px 0 80px}
 .hero-product{max-width:700px;transform:rotate(1deg) translateY(0)}
 .hero-product img{height:clamp(290px,60vw,450px)}
 .alpine-photo{inset:-30% -20% 10%;mask-image:radial-gradient(ellipse 70% 80%,black 25%,transparent 80%)}
 .scene-caption{bottom:25px}
 .why-section,.details-section,.note-grid,.download-section,.faq-section{grid-template-columns:1fr;gap:35px}
 .why-section,.details-section{padding-block:95px}
 .why-heading>p:last-child{max-width:620px}
 .gallery{padding:90px 0}
 .gallery-content{grid-template-columns:1fr;gap:40px}
 .gallery-intro>p:not(.gallery-overline){max-width:520px}
 .gallery-switcher{display:flex;flex-direction:row;justify-content:flex-start;gap:16px;border:0;margin-top:25px}
 .gallery-tab{border:1px solid rgba(218,232,247,.18);border-radius:12px;padding:11px 15px}
 .gallery-caption{min-height:0}
 .gallery-window img{height:clamp(350px,65vw,515px)}
 .makers-note{padding:80px 0}
 .note-emblem{max-width:490px}
 .download-section{padding-top:100px;padding-bottom:50px}
 .download-side{border-left:0;border-top:1px solid #bfcbd9;padding:32px 0 0;flex-direction:row;align-items:center}
 .download-mark{width:110px}
 .security-note{margin-bottom:90px}
 .faq-section{padding-bottom:110px}
}
@media(max-width:520px){
 .shell{width:calc(100% - 34px)}
 .nav{height:70px}
 .nav-cta{font-size:11px;padding:11px 13px}
 .brand{font-size:19px}
 .brand img{height:35px;width:35px}
 h1{font-size:clamp(43px,11vw,57px);letter-spacing:-3px}
 .hero-copy{padding-top:56px}
 .hero-subtitle{font-size:18px}
 .hero-detail{font-size:13px}
 .hero-actions{gap:20px;margin-bottom:31px}
 .action{min-height:48px;padding-inline:18px;font-size:12px}
 .text-link{font-size:12px}
 .hero-info{gap:10px}
 .hero-info span+span::before{margin-right:10px}
 .hero-product{border-radius:14px;padding:0 3px 3px}
 .hero-product img{height:290px;border-radius:9px}
 .window-toolbar{height:34px}
 .window-pill{display:none}
 .scene-caption{bottom:33px}
 .promise{padding:28px 0;gap:15px}
 .promise>p{font-size:13px}
 .promise-detail{font-size:10px;gap:9px}
 .why-heading h2,.details-hero h2,.download-left h2,.faq-left h2{font-size:44px;letter-spacing:-2.5px}
 .step{grid-template-columns:27px 1fr 25px;gap:10px}
 .step h3{font-size:20px}
 .step p{font-size:12px}
 .gallery-intro h2{font-size:40px;letter-spacing:-1.8px}
 .gallery-switcher{gap:7px}
 .gallery-tab{font-size:12px;gap:7px;padding:10px}
 .gallery-window img{height:300px}
 .gallery-window-bar{height:30px}
 .note-emblem{height:260px}
 .note-emblem img{width:135px}
 .note-message blockquote{font-size:31px}
 .download-side{gap:18px}
 .download-mark{width:75px}
 .security-note{padding:17px}
 .footer-top,.footer-bottom{align-items:flex-start;flex-direction:column;gap:20px}
 .footer-top>p{margin:0}
 .footer-nav{gap:20px;flex-wrap:wrap}
 .legal{padding-top:65px}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 .action,.nav-middle a::after{transition:none}
 .action:hover{transform:none}
 .hero-product{transform:none}
 .gallery-window img{transition:none}
}


/* --------------------------------------------------------------------------
   Adaptive appearance
   Light: alpine paper and ink. Dark: obsidian, lacquer and silvered glass.
   The browser/macOS preference is authoritative: no localStorage or toggle.
   -------------------------------------------------------------------------- */
@media (prefers-color-scheme: dark) {
  :root {
    --paper:#08090b;
    --paper2:#111317;
    --ink:#f1f2f3;
    --muted:#b2b6be;
    --sky:#b5bbc6;
    --iris:#c9c8d5;
    --fjord:#090a0c;
    --edge:rgba(255,255,255,.14);
    --white:#f5f5f6;
  }
  body {
    background:linear-gradient(165deg,#0d0f12 0%,#070809 38%,#090a0b 100%);
    color:var(--ink);
  }
  .site-header {
    background:rgba(10,11,12,.88);
    border-bottom:1px solid rgba(255,255,255,.13);
    box-shadow:0 1px 0 rgba(255,255,255,.035),0 8px 26px rgba(0,0,0,.12);
  }
  .brand,.nav-middle a {color:#e7e8ea}
  .nav-middle a::after {background:#f0f0f1}
  .nav-cta {
    color:#f1f1f2;
    background:linear-gradient(145deg,rgba(255,255,255,.18),rgba(255,255,255,.055) 64%,rgba(255,255,255,.025));
    border:1px solid rgba(255,255,255,.27);
    box-shadow:inset 0 1px rgba(255,255,255,.18),0 7px 20px rgba(0,0,0,.2);
  }
  .nav-cta:hover {background:rgba(255,255,255,.20)}
  .skip-link {color:#111;background:#fff}
  a:focus-visible,button:focus-visible,summary:focus-visible {outline-color:#d7d9df}
  .hero {
    background:
      radial-gradient(ellipse 65% 50% at 85% 2%,rgba(255,255,255,.11),transparent 69%),
      linear-gradient(140deg,#15171a 0%,#090a0b 45%,#08090b 100%);
    border-bottom-color:rgba(255,255,255,.13);
  }
  .hero-topographic {
    opacity:.24;
    background-image:repeating-radial-gradient(ellipse 100% 85% at 108% 9%,transparent 0 30px,rgba(245,246,249,.12) 31px 32px);
  }
  .introline,.section-label,.details-name {color:#b5b9c0}
  .introline-mark {background:#d1d2d5}
  h1,h2,h3,.promise>p,.step h3,.feature-rows h3,.faq-list summary {color:#f0f0f2}
  .underlined-word::after {background:#4f5258}
  .hero-subtitle {color:#e5e6e9}
  .hero-detail,.why-heading>p:last-child,.details-hero p,.feature-rows p,
  .download-left>p:not(.section-label):not(.availability),.faq-list details p,
  .note-message>p:not(.section-label),.legal p,.legal li {color:#b0b4ba}
  .hero-info,.promise-detail,.scene-caption,.step-index,.step-symbol,
  .details-name,.feature-number,.availability {color:#a7aab0}
  .hero-info span+span::before,.promise-separator {background:#76787e}
  .action-dark {
    color:#101214;
    background:linear-gradient(160deg,#fafafa 0%,#d4d5d8 100%);
    box-shadow:inset 0 1px #fff,0 13px 27px rgba(0,0,0,.32),0 1px 0 rgba(255,255,255,.15);
  }
  .action-dark:hover {background:linear-gradient(160deg,#fff,#e6e6e8)}
  .text-link {color:#e2e3e6;border-bottom-color:#8f939b}
  .text-link:hover {color:#fff}
  .alpine-photo {
    opacity:.44;
    filter:grayscale(1) brightness(.58) contrast(1.15);
    background-image:linear-gradient(90deg,#0a0b0d 0%,rgba(10,11,13,.22) 32%,transparent 100%),url('assets/alpine.jpg');
  }
  .alpine-film {background:radial-gradient(ellipse at 57% 40%,rgba(220,226,232,.14),transparent 75%)}
  .hero-product {
    background:#0b0c0e;
    border-color:rgba(252,252,253,.44);
    box-shadow:0 54px 80px rgba(0,0,0,.72),0 14px 27px rgba(0,0,0,.40),0 0 0 5px rgba(255,255,255,.065);
  }
  .hero-product::after {box-shadow:inset 0 1px rgba(255,255,255,.48)}
  .scene-caption span {color:#bfc1c6}
  .hero-bottom-rule {background:linear-gradient(90deg,#323438,#c7c8cb 50%,#303236)}
  .promise {border-bottom-color:rgba(255,255,255,.13)}
  .steps,.feature-rows,.faq-list {border-top-color:rgba(255,255,255,.27)}
  .step,.feature-rows>div,.faq-list details {border-bottom-color:rgba(255,255,255,.23)}
  .gallery {
    background:linear-gradient(160deg,#131416 0%,#050607 53%,#0c0d0f 100%);
    color:#f4f4f4;
  }
  .gallery::before {
    background:radial-gradient(ellipse 52% 70% at 83% 70%,rgba(255,255,255,.115),transparent 88%),
               linear-gradient(160deg,rgba(255,255,255,.095),transparent 30%);
  }
  .gallery-overline {color:#bdbfc5}
  .gallery-intro h2 em {color:#d6d6db}
  .gallery-intro>p:not(.gallery-overline),.gallery-caption p {color:#b5b5bc}
  .gallery-switcher {border-top-color:rgba(255,255,255,.23)}
  .gallery-tab {color:#babcc1;border-bottom-color:rgba(255,255,255,.21)}
  .gallery-tab.selected,.gallery-tab:hover {color:#fff}
  .tab-dot {border-color:#b9b9bd}
  .gallery-tab.selected .tab-dot {background:#e8e8eb;border-color:#fff;box-shadow:0 0 0 4px rgba(255,255,255,.11)}
  .gallery-window {
    background:#101113;
    border-color:rgba(255,255,255,.41);
    box-shadow:0 55px 88px rgba(0,0,0,.8),0 0 0 7px rgba(255,255,255,.045),inset 0 1px rgba(255,255,255,.30);
  }
  .gallery-footnote {color:#b4b5b9}
  .makers-note {
    background:linear-gradient(145deg,#17191c 0%,#0b0d0f 56%,#16171a 100%);
    border-color:rgba(255,255,255,.16);
  }
  .note-emblem {
    border-color:rgba(255,255,255,.30);
    background:linear-gradient(135deg,rgba(255,255,255,.16),rgba(255,255,255,.045) 43%,rgba(255,255,255,.015) 90%);
    box-shadow:inset 0 1px rgba(255,255,255,.24),0 26px 55px rgba(0,0,0,.28);
  }
  .note-rings {
    border-color:rgba(245,245,248,.23);
    box-shadow:0 0 0 26px rgba(255,255,255,.03),0 0 0 52px rgba(255,255,255,.017);
  }
  .note-emblem>span:last-child,.note-signature {color:#c0c3c8}
  .note-signature {border-top-color:rgba(255,255,255,.28)}
  .download-side {border-left-color:rgba(255,255,255,.26)}
  .download-mark {filter:drop-shadow(0 18px 26px rgba(0,0,0,.48))}
  .checksum p:first-child {color:#f1f1f2}
  .checksum-help,.checksum code {color:#b0b4ba}
  .checksum button {
    color:#f0f1f3;
    background:linear-gradient(140deg,rgba(255,255,255,.18),rgba(255,255,255,.06));
    border-color:rgba(255,255,255,.33);
    box-shadow:inset 0 1px rgba(255,255,255,.18);
  }
  .checksum button:hover {background:rgba(255,255,255,.20)}
  .security-note {
    background:linear-gradient(140deg,#1a1b1e,#101113);
    border-color:rgba(255,255,255,.24);
    box-shadow:inset 0 1px rgba(255,255,255,.13);
  }
  .security-symbol {color:#dedee1;border-color:#9d9ea4}
  .security-note p {color:#bcbec2}
  .security-note strong {color:#f3f3f4}
  .security-note a,.legal a {color:#e2e3e6}
  .faq-list summary::after {color:#cbcccf}
  .footer {
    background:#050607;
    border-top:1px solid rgba(255,255,255,.18);
    color:#f2f2f3;
  }
  .footer-top>p,.footer-nav a,.footer-bottom {color:#babcc1}
  .footer-bottom {border-top-color:rgba(255,255,255,.17)}
  .legal h1,.legal h2 {color:#f2f2f3}
  .legal a:hover,.footer-nav a:hover {color:#fff}
  @media (max-width:820px) {
    .download-side {border-top-color:rgba(255,255,255,.26)}
    .gallery-tab {border-color:rgba(255,255,255,.21)}
  }
}

/* Deliberate narrow-screen typography and tap targets.
   Avoid relying on body overflow:hidden to conceal layout mistakes. */
@media (max-width:820px) {
  .hero-grid,.gallery-content,.details-section,.note-grid,.download-section,.faq-section,
  .gallery-stage,.hero-copy,.hero-composition {min-width:0}
  .gallery-switcher {flex-wrap:wrap}
  .action,.gallery-tab,.nav-cta {min-height:44px}
  .hero-product,.gallery-window {max-width:100%}
  .gallery-window img {aspect-ratio:1.32;object-position:center top}
  .gallery-stage {width:100%}
  .download-side {min-width:0}
  .checksum code {overflow-wrap:anywhere;word-break:break-word}
}
@media (max-width:390px) {
  .nav {gap:10px}
  .brand {font-size:17px;gap:6px}
  .brand img {width:30px;height:30px}
  .nav-cta {font-size:10px;padding:8px 10px 8px 11px;gap:6px}
  .nav-cta svg {width:13px;height:13px}
  h1 {font-size:clamp(37px,11.3vw,45px);letter-spacing:-2.2px}
  .hero-copy {padding-top:44px}
  .introline {font-size:11px;margin-bottom:21px}
  .hero-actions {gap:16px}
  .hero-info {font-size:10px;gap:8px}
  .hero-product img {height:258px}
  .scene-caption {right:0}
  .gallery-switcher {gap:6px}
  .gallery-tab {padding:9px;font-size:11px}
  .gallery-window img {height:245px}
  .why-heading h2,.details-hero h2,.download-left h2,.faq-left h2 {font-size:39px;letter-spacing:-2.1px}
  .note-message blockquote {font-size:28px}
  .download-side {align-items:flex-start}
  .download-mark {width:55px}
}

/* Never offer a download when release manifest checks fail. */
.download-link[aria-disabled="true"] {opacity:.58; cursor:not-allowed; filter:saturate(.4)}
.download-link[aria-disabled="true"]:hover {transform:none}
