@font-face{font-family:Barlow;src:url('assets/barlow-condensed-bold.ttf') format('truetype');font-weight:700;font-display:swap}
/* Reboot system: native CSS, Barlow display / system body. Layers: header 10, skip link 20.
   Pill controls, 24px feature surfaces, 34px real-device frames. */
:root{color-scheme:light dark;--paper:#f6f5f3;--surface:#edece9;--ink:#211d20;--muted:#656065;--line:#d6d1d3;--red:#be1639;--accent-soft:#e9c4ca;--header:rgba(246,245,243,.97);--max:1440px}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#161315;--surface:#231e21;--ink:#f6f3f4;--muted:#b9b1b5;--line:#493b42;--red:#ff7b91;--accent-soft:#622635;--header:rgba(22,19,21,.97)}}
:root[data-theme=dark]{color-scheme:dark;--paper:#161315;--surface:#231e21;--ink:#f6f3f4;--muted:#b9b1b5;--line:#493b42;--red:#ff7b91;--accent-soft:#622635;--header:rgba(22,19,21,.97)}
:root[data-theme=light]{color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{cursor:pointer}a,button{transition:background-color .2s,color .2s,transform .2s}a:hover{color:var(--red)}button:active,.button:active{transform:scale(.98)}:focus-visible{outline:3px solid var(--red);outline-offset:5px}::selection{background:#be1639;color:#fff}h1,h2,h3,p,figure{margin:0}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}h1,h2{font-family:Barlow,Impact,'Arial Narrow',sans-serif;font-weight:700;line-height:.96;letter-spacing:-.025em}h2{font-size:clamp(52px,6.6vw,104px)}h3{font-size:clamp(24px,2.4vw,36px);line-height:1.1;letter-spacing:-.045em}p{line-height:1.6}section[id]{scroll-margin-top:90px}em{font-style:normal}.section-pad{padding-inline:max(5vw,calc((100vw - var(--max))/2))}.platform-symbols{position:absolute;width:0;height:0;overflow:hidden}.skip-link{position:fixed;top:-80px;left:18px;z-index:20;padding:14px 20px;background:var(--paper);color:var(--ink)}.skip-link:focus{top:14px}
.site-header{height:76px;position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:28px;padding-inline:max(5vw,calc((100vw - var(--max))/2));background:var(--header);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;white-space:nowrap;font-size:16px;letter-spacing:-.055em;font-weight:800}.brand img{border-radius:9px}.brand b{color:var(--red)}.site-header nav{display:flex;align-items:center;gap:32px;margin-left:auto;font-size:13px;font-weight:600}.site-header nav>a{padding-block:12px}.nav-download{display:flex;align-items:center;gap:22px}.theme-toggle{background:transparent;color:var(--ink);border:1px solid var(--line);border-radius:999px;padding:10px 14px;font-size:12px;min-height:44px}.theme-toggle:hover{background:var(--surface)}[hidden]{display:none!important}
.hero{position:relative;min-height:700px;min-height:min(820px,calc(100dvh - 76px));display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:4%;padding-block:70px 80px;overflow:hidden}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.17em;color:var(--red);margin-bottom:28px}.hero h1{font-size:clamp(76px,9.2vw,146px);margin-bottom:26px}.button{display:inline-flex;justify-content:center;align-items:center;gap:12px;min-height:52px;padding:16px 24px;border-radius:999px;font-size:14px;font-weight:700;line-height:1.3}.text-link{display:inline-flex;gap:12px;align-items:center;font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:5px;padding-block:12px}.phone{background:#121114;border:7px solid #2a262b;border-radius:34px;overflow:hidden;box-shadow:0 28px 60px #25051038}.phone img{width:100%;height:auto}
.milestone{padding-block:90px 100px;border-top:1px solid var(--line);display:grid;grid-template-columns:.85fr 1.15fr;column-gap:8%;align-items:start}.milestone-heading{padding-top:18px}.milestone h2{font-size:clamp(48px,5vw,76px)}.milestone-heading p{margin-top:24px;max-width:280px;color:var(--muted);font-size:16px}.hero-metrics{min-width:0}.download-counter{display:flex;flex-direction:column;align-items:flex-start;min-width:0}.download-counter-label{font-size:10px;letter-spacing:.14em;font-weight:700;color:var(--red)}.download-counter-value{font-family:Barlow,Impact,'Arial Narrow',sans-serif;font-size:clamp(86px,11vw,168px);font-weight:700;line-height:1;display:flex;letter-spacing:-.02em;font-variant-numeric:tabular-nums;max-width:100%;margin-block:8px}.download-counter-digit{display:inline-block;width:.51em;height:1em;overflow:hidden;text-align:center}.download-counter-track{display:flex;flex-direction:column}.download-counter-track>span{display:block;flex:0 0 1em;height:1em;line-height:1}.metric-name{font-size:16px;font-weight:600}.download-counter-proof{font-size:12px;margin-top:12px;color:var(--muted);text-decoration:underline;text-underline-offset:4px}.download-counter-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.growth-figure{margin-top:28px;border-top:1px solid var(--line);padding-top:20px}.graph-top{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:12px}.graph-top span,.growth-figure figcaption{color:var(--muted)}#growth-graph{display:block;width:100%;height:auto;overflow:visible;margin-top:12px}.graph-line{stroke:var(--red);stroke-width:2.5;stroke-dasharray:5 7;fill:none}.graph-point{fill:var(--red)}.graph-value{font-size:20px;font-weight:700;fill:var(--ink)}.graph-label{font-size:16px;fill:var(--muted)}.growth-figure figcaption{font-size:11px;line-height:1.5}.hero-metric-note{grid-column:2;font-size:11px;line-height:1.6;color:var(--muted);margin-top:20px;max-width:520px}
.statement{padding-block:110px;border-top:1px solid var(--line)}.statement h2{max-width:800px}.experience-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:8%;margin-top:60px}.experience-lead{font-size:20px;max-width:360px;color:var(--muted)}.feature-lines{display:grid;grid-template-columns:1fr 1fr;gap:40px 30px}.feature-lines h3{font-size:21px;letter-spacing:-.035em}.feature-lines p{color:var(--muted);font-size:14px;margin-top:10px;max-width:240px}
.showcase{display:grid;grid-template-columns:1.1fr .9fr;gap:7%;align-items:center;padding-block:100px;background:var(--surface);overflow:hidden}.showcase-copy{max-width:600px}.showcase h2{font-size:clamp(62px,7.4vw,112px)}.showcase-lead{max-width:330px;color:var(--muted);font-size:16px;margin-top:26px}.showcase-tabs{display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin-top:32px}.showcase-tabs button{background:transparent;border:0;color:var(--muted);padding:12px 0;font-size:16px;min-height:44px;text-align:left}.showcase-tabs button[aria-selected=true]{color:var(--red);font-weight:700;text-decoration:underline;text-underline-offset:7px}.showcase-tabs button:hover{color:var(--ink)}.showcase-caption{font-size:12px;color:var(--muted);max-width:320px;min-height:48px;margin-top:24px}.showcase-visual{display:grid;place-items:center;position:relative;min-width:0;padding:24px}.showcase-visual:before{content:'';position:absolute;inset:12% -8%;border-radius:50%;background:radial-gradient(ellipse at 60% 40%,#f6587340,transparent 65%);pointer-events:none}.showcase-phone{width:min(100%,270px);position:relative;transition:opacity .16s,transform .16s}.showcase-phone.is-changing{opacity:.3;transform:translateY(8px)}
.details{padding-block:110px}.details h2{margin-bottom:46px}.details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.details-grid article{padding:40px;border-radius:24px;position:relative;overflow:hidden}.details-grid p{font-size:15px;max-width:320px;margin-top:16px;color:var(--muted)}.mix-feature{grid-column:1;min-height:400px;background:linear-gradient(135deg,#6b0c27,#bd1c3e 65%,#de425d);color:#fff6f8;display:flex;flex-direction:column;justify-content:space-between}.mix-feature p{color:#ffe0e6}.lyrics-feature{background:var(--surface);grid-column:2;min-height:400px;display:flex;flex-direction:column}.type-art{font-family:Barlow,Impact,sans-serif;font-size:clamp(100px,11vw,175px);line-height:.85;letter-spacing:-.025em;color:var(--red);margin-top:auto;padding-top:65px}.utility-feature{background:var(--surface)}.details-grid .utility-feature{padding-block:32px}.update-feature{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:20px 50px;background:var(--surface)}.update-feature p{margin:0;align-self:center}.update-feature .text-link{justify-self:start}
.journey{padding-block:110px;background:var(--surface);display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:start}.journey-head{position:sticky;top:124px}.journey-head h2{font-size:clamp(56px,6.7vw,98px)}.journey-head>p:last-child{margin-top:28px;color:var(--muted);font-size:18px}.story-chapters{min-width:0}.story-chapter{padding-block:36px 70px;border-bottom:1px solid var(--line)}.story-chapter:first-child{padding-top:0}.story-chapter:last-child{border:0;padding-bottom:0}.story-number,.story-word{display:block;font:700 clamp(130px,16vw,240px)/1 Barlow,Impact,sans-serif;color:var(--red);letter-spacing:-.03em;margin-bottom:25px}.story-number small{display:inline-block;font:700 15px Arial,sans-serif;margin-left:15px;letter-spacing:.1em}.story-word{font-size:clamp(90px,12vw,180px)}.story-chapter p{max-width:380px;font-size:16px;color:var(--muted);margin-top:20px}.story-chapter h3{font-size:32px}
.ecosystem{padding-block:110px}.ecosystem h2{max-width:820px}.ecosystem-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-top:60px;border-top:1px solid var(--line)}.eco-item{position:relative;padding-top:30px}.eco-item h3{font-size:38px}.eco-item p{max-width:350px;color:var(--muted);margin-top:20px;font-size:15px}.eco-item.air{padding-right:80px}.eco-item.air img{position:absolute;right:0;top:28px;border-radius:14px}.eco-item.air h3{color:var(--red)}
.final-cta{position:relative;padding-block:100px;background:linear-gradient(115deg,#701025,#b71738 60%,#cd2945);color:#fff6f7;overflow:hidden}.final-cta>.logo-crop{display:block;width:60px;margin-bottom:28px}.final-cta>.logo-crop img{border-radius:14px}.final-cta h2{font-size:clamp(62px,7.3vw,112px);margin-bottom:48px}.platform-downloads{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:start}.download-option{min-width:0}.button-white{background:#fff6f8;color:#6f1128;width:100%;font-size:13px;padding:17px 16px;gap:8px}.button-white:hover{background:#ffdde5;color:#6f1128}.platform-logo{width:20px;height:20px;flex-shrink:0}.download-label{min-width:0}.version-note,.cta-version{display:block;font-size:12px;line-height:1.6;margin-top:16px;color:#ffdde5}.version-note a{text-decoration:underline;text-underline-offset:3px}.final-cta .install-note{font-size:12px;max-width:620px;color:#ffdde5;margin-top:12px}.final-cta>.install-note{margin-top:32px}.final-cta :focus-visible{outline-color:#fff6f7}
.footer{padding-block:65px 26px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-bottom:50px}.footer-brand{font:700 clamp(44px,7vw,105px)/1 Barlow,Impact,sans-serif;letter-spacing:-.03em}.footer-brand em{color:var(--red)}.footer-brand>span{font:30px Arial,sans-serif;vertical-align:top;margin-left:14px}.footer-top p{color:var(--muted);font-size:14px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:24px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}.footer-bottom>div{display:flex;gap:24px}.privacy-content{max-width:1000px;padding-block:80px 120px}.privacy-content h1{font-size:80px;margin-block:24px}.privacy-content h2{font:700 26px Arial,sans-serif;margin-top:40px}.privacy-content p{font-size:17px;color:var(--muted);margin-top:20px}.privacy-content a{color:var(--red);text-decoration:underline}.story-kicker{font-size:11px;color:var(--red);letter-spacing:.1em}
@media(min-width:1100px){.download-label{white-space:nowrap}}
@media(max-width:1279px){.hero{min-height:650px;gap:2%}.hero h1{font-size:clamp(72px,10vw,105px)}.platform-downloads{grid-template-columns:1fr}.download-option{display:grid;grid-template-columns:minmax(270px,1fr) 1fr;gap:0 25px}.download-option .version-note,.download-option .cta-version{align-self:center;margin:0}.download-option .install-note{grid-column:2;margin:0}.button-white{width:100%;font-size:14px;max-width:450px}.showcase{gap:4%}.site-header nav{gap:20px}.details-grid article{padding:30px}.type-art{font-size:17vw}}
@media(max-width:767px){html{scroll-padding-top:120px}.section-pad{padding-inline:22px}.site-header{height:auto;min-height:96px;padding:12px 22px;display:grid;grid-template-columns:1fr auto;gap:8px 12px}.brand{font-size:14px}.brand img{width:28px;height:28px}.theme-toggle{grid-column:2;grid-row:1;min-height:34px;padding:7px 12px}.site-header nav{grid-column:1/-1;grid-row:2;justify-content:space-between;margin:0;gap:10px;font-size:12px}.site-header nav>a{padding-block:6px;min-height:30px}.nav-download{gap:8px}.hero{grid-template-columns:1fr;min-height:0;padding-top:44px;padding-bottom:40px;gap:35px}.hero h1{font-size:clamp(72px,17vw,116px);margin-bottom:22px}.eyebrow{margin-bottom:20px;font-size:10px}.milestone{grid-template-columns:1fr;padding-block:60px;gap:32px}.milestone-heading p{max-width:320px;margin-top:18px}.milestone h2{font-size:56px}.hero-metric-note{grid-column:1;margin-top:0}.download-counter-value{font-size:clamp(80px,calc(152vw / var(--digits,4)),140px)}.growth-figure{margin-top:24px}.statement,.details,.ecosystem{padding-block:65px}h2{font-size:clamp(48px,12vw,76px)}.experience-layout{grid-template-columns:1fr;gap:32px;margin-top:30px}.experience-lead{font-size:17px;max-width:100%}.feature-lines{gap:28px 24px}.feature-lines h3{font-size:19px}.feature-lines p{font-size:13px}.showcase{grid-template-columns:1fr;padding-block:65px;gap:26px}.showcase h2{font-size:64px}.showcase h2 br:last-child{display:none}.showcase-lead{font-size:15px}.showcase-tabs{flex-direction:row;flex-wrap:wrap;gap:18px;margin-top:20px}.showcase-tabs button{font-size:13px}.showcase-caption{margin-top:12px;min-height:40px}.showcase-visual{padding:12px}.showcase-phone{width:230px}.details h2{margin-bottom:30px}.details-grid{grid-template-columns:1fr;gap:14px}.details-grid article{grid-column:auto;grid-row:auto;padding:28px}.mix-feature{min-height:370px}.lyrics-feature{min-height:340px}.type-art{font-size:100px;line-height:.9;padding-top:28px}.update-feature{display:block}.update-feature p{margin-top:16px}.update-feature .text-link{margin-top:15px}.journey{grid-template-columns:1fr;gap:36px;padding-block:65px}.journey-head{position:static}.journey-head h2{font-size:64px}.journey-head>p:last-child{font-size:16px}.story-chapter{padding-block:35px 45px;display:grid;grid-template-columns:90px 1fr;gap:20px}.story-number,.story-word{font-size:104px;line-height:1;margin:0}.story-word{font-size:48px;white-space:nowrap}.story-number small{display:block;font-size:10px;margin:5px 0 0;letter-spacing:.08em}.story-chapter h3{font-size:24px}.story-chapter p{font-size:14px;margin-top:16px}.ecosystem-grid{grid-template-columns:1fr;gap:32px;margin-top:30px}.eco-item{padding-top:24px}.eco-item.air{border-top:1px solid var(--line)}.eco-item h3{font-size:32px}.eco-item p{font-size:14px}.final-cta{padding-block:65px}.final-cta h2{font-size:60px;margin-bottom:34px}.platform-downloads{gap:30px}.download-option{display:block}.button-white{max-width:none;font-size:13px;min-height:54px}.download-option .version-note,.download-option .cta-version{margin-top:12px}.download-option .install-note{margin-top:8px}.final-cta>.install-note{margin-top:28px}.footer{padding-block:45px 25px}.footer-top{display:block;padding-bottom:30px}.footer-top p{margin-top:20px}.footer-brand{font-size:58px}.footer-bottom{flex-direction:column;gap:18px}.footer-bottom>div{gap:22px;flex-wrap:wrap}.privacy-content{padding-block:50px}.privacy-content h1{font-size:65px}}
@media(max-width:359px){.section-pad{padding-inline:18px}.site-header{padding-inline:18px}.hero h1{font-size:72px}.feature-lines{grid-template-columns:1fr}.story-chapter{grid-template-columns:72px 1fr;gap:16px}.story-number{font-size:84px}.story-word{font-size:40px}.final-cta h2{font-size:52px}.button-white{padding-inline:12px;font-size:12px}.platform-logo{width:18px;height:18px}}
/* Content is visible by default; progressive enhancement never hides the page if JS fails. */
@media(prefers-reduced-motion:no-preference){.graph-animated.graph-entered #growth-reveal rect{transform-origin:left;animation:growth-draw 1.2s cubic-bezier(.16,1,.3,1) both}@keyframes growth-draw{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@supports(animation-timeline:view()){.story-number,.story-word{animation:story-emphasis linear both;animation-timeline:view();animation-range:entry 0% entry 100%}@keyframes story-emphasis{from{opacity:.35;transform:translateY(25px)}to{opacity:1;transform:none}}}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* A short, decorative opening sequence. The static page works without JavaScript. */
#intro-root { display: none; }
html.intro-active { overflow: hidden; }
html.intro-active #site-content { visibility: hidden; animation: intro-reveal 0s 3.6s forwards; }
html.intro-active #intro-root {
  display: block; position: fixed; inset: 0; z-index: 10000;
  width: 100%; height: 100%; background: #000; overflow: hidden;
  pointer-events: none; animation: intro-away .6s ease 3.6s forwards;
}
.intro-wordmark {
  position: absolute; inset: 0; margin: 0; display: flex; align-items: center;
  justify-content: center; gap: .22em; color: #fff;
  font-family: Arial, Helvetica, sans-serif; font-size: clamp(48px, 11vw, 156px);
  font-weight: 700; line-height: 1; letter-spacing: -.065em;
  text-shadow: 0 2px 32px #000; white-space: nowrap;
}
.intro-air { color: #f12846; }
.intro-wordmark > span {
  display: inline-block;
  animation: intro-word-rise 3.1s cubic-bezier(.22, 1, .36, 1) .1s both;
}
.intro-wordmark > .intro-air { animation-delay: .3s; }
@keyframes intro-word-rise {
  0% { opacity: 0; transform: translateY(.32em) scale(.94); filter: blur(8px); }
  28% { opacity: 1; transform: translateY(-.025em) scale(1.015); filter: blur(0); }
  45% { opacity: 1; transform: translateY(0) scale(1); filter: blur(0); }
  78% { opacity: 1; transform: translateY(-.018em) scale(1.012); filter: blur(0); }
  100% { opacity: 1; transform: translateY(0) scale(1); filter: blur(0); }
}
.intro-vignette { background: radial-gradient(ellipse, #0005 0%, transparent 65%, #0007 100%); }
@keyframes intro-reveal { to { visibility: visible; } }
@keyframes intro-away { to { opacity: 0; } }
@media (prefers-reduced-motion: reduce) {
  html.intro-active #intro-root { display: none; }
  html.intro-active #site-content { visibility: visible; }
  html.intro-active { overflow: auto; }
}

/* Wave hero: intentionally self-contained; lower-page red gradients stay unchanged. */
.hero.shader-hero {
  isolation: isolate; display: flex; flex-direction: column; justify-content: center;
  gap: 0; min-height: calc(100svh - var(--hero-header-height, 76px));
  padding: 64px 24px 88px; background: #050405; color: #fff;
}
#hero-motion { position: absolute; inset: 0; z-index: -2; overflow: hidden; }
.hero-wave-canvas { position: absolute; inset: 0; display: block; width: 100%; height: 100%; pointer-events: none; }
.hero-wave-shade { position: absolute; inset: 0; z-index: -1; pointer-events: none; background: linear-gradient(180deg,#05040588,transparent 25%,#05040555 58%,#050405ee),radial-gradient(ellipse at center,#05040599,transparent 80%); }
.wave-hero-frame { width: min(100%, 960px); padding: 8px; position: relative; }
.wave-hero-copy { text-align: center; padding: 48px 24px; }
.shader-hero .eyebrow { margin: 0 0 28px; color: #ff8498; font-size: 10px; letter-spacing: .18em; }
.shader-hero h1 { font-family: Arial,Helvetica,sans-serif; font-size: clamp(48px,7.5vw,104px); line-height: .98; letter-spacing: -.075em; font-weight: 800; margin: 0 0 24px; text-shadow: 0 3px 32px #0008; }
.wave-hero-lead { color: #e1dadd; font-size: clamp(14px,1.4vw,18px); line-height: 1.65; }
.hero-platforms { color: #ff9caf; font-size: 10px; font-weight: 700; letter-spacing: .13em; margin: 24px 0 20px; }
.hero-platforms span { margin-inline: 8px; color: #aa7c86; }
.liquid-button { display: inline-flex; align-items: center; justify-content: center; gap: 12px; position: relative; isolation: isolate; border-radius: 999px; cursor: pointer; }
.hero-download-button { min-height: 52px; padding: 14px 28px; font: 600 14px/1.3 Arial,Helvetica,sans-serif; color: #fff; background: transparent; border: 1px solid #ffffff55; box-shadow: inset 0 1px 0 #ffffff88,inset 0 -1px 0 #ffffff22,0 8px 32px #0003; backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px); }
.hero-download-button:hover { color: #fff; background: #ffffff0d; transform: translateY(-2px); }
.hero-download-button:focus-visible,.hero-motion-toggle:focus-visible,.hero-scroll-cue:focus-visible { outline: 2px solid #fff; outline-offset: 6px; }
.liquid-glass-surface { position: absolute; inset: 0; z-index: -1; border-radius: inherit; pointer-events: none; box-shadow: inset 1px 1px 1px #ffffff55,inset -1px -1px 1px #0006; }
.liquid-filter { position: absolute; pointer-events: none; }
.hero-scroll-cue { position: absolute; bottom: 28px; display: flex; align-items: center; gap: 12px; color: #d3c9cd; font-size: 11px; }
.hero-motion-toggle { position: absolute; bottom: 14px; right: 16px; border: 0; background: #050405a6; color: #c9bfc3; border-radius: 4px; font-size: 10px; padding: 12px; min-height: 44px; pointer-events: auto; }
/* Keep the control above the decorative layers, without lifting the canvas. */
#hero-motion { z-index: auto; pointer-events: none; }
.hero-wave-canvas { z-index: -2; }
.hero-motion-toggle { z-index: 2; }
@media(max-width:767px) {
  .hero.shader-hero { min-height: calc(100svh - var(--hero-header-height, 106px)); padding: 36px 18px 100px; }
  .wave-hero-frame { padding: 6px; }
  .wave-hero-copy { padding: 36px 12px; }
  .shader-hero h1 { font-size: clamp(44px,11.3vw,76px); }
  .shader-hero .eyebrow { font-size: 8px; letter-spacing: .12em; margin-bottom: 24px; }
  .wave-hero-lead { font-size: 13px; }
  .hero-platforms { font-size: 9px; }
  .hero-download-button { font-size: 13px; padding-inline: 20px; }
  .hero-scroll-cue { bottom: 56px; }
  .hero-motion-toggle { bottom: 4px; right: 50%; transform: translateX(50%); white-space: nowrap; }
}
@media(prefers-reduced-motion:reduce) { .hero-motion-toggle { display: none; } }

/* Blend the hero into the active page theme within the existing section spacing. */
.shader-hero + .milestone {
  border-top-color: #050405;
  background: linear-gradient(to bottom, #050405, var(--paper)) top / 100% clamp(60px, 8vw, 90px) no-repeat, var(--paper);
}

/* Quiet dot texture, confined to the page surfaces outside the shader hero. */
:root { --dot-ink: rgb(0 0 0 / .16); }
:root[data-theme=dark] { --dot-ink: rgb(255 255 255 / .18); }
@media(prefers-color-scheme:dark) {
  :root:not([data-theme=light]) { --dot-ink: rgb(255 255 255 / .18); }
}
main > section:not(.hero), .footer, .privacy-content { position: relative; isolation: isolate; }
main > section:not(.hero)::before, .footer::before, .privacy-content::before, .site-header::before {
  content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background-image: radial-gradient(circle, var(--dot-ink) 1px, transparent 1.2px);
  background-size: 24px 24px;
  mask-image: linear-gradient(transparent, #000 60px, #000 calc(100% - 60px), transparent);
}
.site-header { isolation: isolate; }
.site-header::before { mask-image: none; opacity: .5; }
#hero-announcement { margin-top: 24px; }
.hero-release-pill {
  max-width: 100%; min-height: 44px; height: auto; padding: 6px 14px 6px 6px;
  gap: 12px; font-size: 11px; font-weight: 400; line-height: 1.4;
  white-space: normal; text-align: left;
}
.release-version {
  flex-shrink: 0; border-radius: 999px; padding: 7px 10px;
  background: #ffffff0d; border: 1px solid #ffffff26; font-weight: 600;
}
@media(max-width:359px) {
  .hero-release-pill { gap: 8px; font-size: 10px; padding-right: 10px; }
  .release-version { padding-inline: 8px; }
}

/* Transparent navigation dock, with the same clear glass optics as the hero CTA. */
.site-header { background: transparent; border-bottom: 0; }
.site-header::before { content: none; }
.site-header nav > a, .site-header .theme-toggle {
  position: relative; isolation: isolate; display: inline-flex; align-items: center;
  justify-content: center; min-height: 44px; padding: 10px 16px; border-radius: 999px;
  color: var(--ink); background: transparent; border: 1px solid #ffffff55;
  box-shadow: inset 0 1px 0 #ffffff88, inset 0 -1px 0 #ffffff22, 0 8px 32px #0003;
  backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px);
}
.site-header nav > a:hover, .site-header .theme-toggle:hover { background: #ffffff0d; }
.nav-glass-optics { position: absolute; inset: 0; z-index: -1; border-radius: inherit; pointer-events: none; }
.nav-glass-optics .liquid-glass-surface { z-index: 0; }
:root[data-theme=light] .site-header nav > a, :root[data-theme=light] .site-header .theme-toggle {
  border-color: #00000026; box-shadow: inset 0 1px 0 #fff, inset 0 -1px 0 #0000000d, 0 5px 20px #0000000a;
}
@media(max-width:767px) {
  .site-header { padding-block: 12px; gap: 10px 12px; }
  .site-header nav { gap: 8px; }
  .site-header nav > a { padding: 9px 13px; font-size: 11px; }
  .site-header .theme-toggle { min-height: 36px; padding: 7px 14px; }
  .site-header .nav-download { gap: 7px; }
}
@media(max-width:359px) {
  .site-header nav { gap: 6px; }
  .site-header nav > a { padding-inline: 10px; font-size: 10px; }
}

/* The hero itself extends under the transparent, sticky navigation. */
.hero.shader-hero {
  margin-top: calc(-1 * var(--hero-header-height, 76px));
  min-height: 100svh;
  padding-top: calc(64px + var(--hero-header-height, 76px));
}
.site-header.over-hero { color: #fff; }
.site-header.over-hero nav > a, .site-header.over-hero .theme-toggle { color: #fff; }
:root[data-theme=light] .site-header.over-hero nav > a, :root[data-theme=light] .site-header.over-hero .theme-toggle {
  border-color: #ffffff55;
  box-shadow: inset 0 1px 0 #ffffff88, inset 0 -1px 0 #ffffff22, 0 8px 32px #0003;
}
.site-header .nav-download svg { flex-shrink: 0; }
@media(max-width:767px) {
  .hero.shader-hero {
    margin-top: calc(-1 * var(--hero-header-height, 114px));
    padding-top: calc(36px + var(--hero-header-height, 114px));
  }
}
