:root{color-scheme:dark;--ink:#e6edf1;--body:#b4c6d0;--muted:#8da7b5;--accent:#c9a3d6;--accent-muted:#a98bb6;--on-accent:#1d1326;--line:#173c4a;--page:#011720;--surface:#022432;--raised:#092d3b;--sans:"Segoe UI",system-ui,-apple-system,Roboto,Arial,sans-serif;--serif:var(--sans)}
*{box-sizing:border-box}
body{margin:0;color:var(--ink);background:var(--page);font-family:var(--sans);font-size:16px;line-height:1.65}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
h1,h2,h3,p{margin-top:0}
em{font-style:italic}
.shell{width:min(1160px,calc(100% - 64px));margin:0 auto}

/* Masthead */
.site-header{border-bottom:1px solid var(--line)}
.header-inner{height:72px;display:flex;align-items:center;justify-content:space-between}
.brand{font:700 24px/1 var(--sans);letter-spacing:-.01em}
.brand em{color:var(--accent);font-style:normal}
.header-inner nav{display:flex;align-items:center;gap:30px;font:600 14px var(--sans)}
.header-inner nav a{color:var(--body)}
.header-inner nav a:hover{color:var(--accent)}
.nav-download{color:var(--ink)!important;border-bottom:1px solid var(--accent);padding-bottom:2px}

/* Hero */
.hero{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px;align-items:center;padding:72px 0 56px}
h1,h2,h3{font-family:var(--sans);font-weight:600;letter-spacing:-.03em}
h1{font-size:clamp(52px,6.2vw,88px);line-height:.98;margin-bottom:28px}
h1 em,h2 em,h3 em{color:var(--accent);font-style:normal}
.hero-description{max-width:420px;color:var(--body);font-size:17px;line-height:1.75;margin-bottom:32px}
.hero-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.hero-meta{font:400 16px var(--sans);color:var(--muted)}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 26px;border-radius:2px;font-weight:600;font-size:14px;letter-spacing:.01em;line-height:1}
.primary{background:var(--accent);color:var(--on-accent)}
.primary:hover{background:#d9bde3}

.hero-stage{position:relative;aspect-ratio:16/12;min-width:0}
.hero-stage .app-shot{position:absolute;width:82%}
.stage-back{top:0;right:0;opacity:.75;transform:rotate(1.5deg)}
.stage-front{left:0;bottom:0;box-shadow:0 30px 70px rgba(0,0,0,.55)}

/* Essay */
.essay{columns:2;column-gap:56px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:44px 0}
.essay p{color:var(--body);line-height:1.85;margin:0 0 16px;break-inside:avoid-column}
.essay p:last-child{margin-bottom:0}
.lede::first-letter{float:left;font:600 70px/.8 var(--sans);color:var(--accent);padding:8px 10px 0 0}

/* Carousel */
.features-section{padding:64px 0}
.carousel-viewport{overflow:hidden;margin:0 -40px}
.carousel-track{display:flex;transition:transform .7s cubic-bezier(.6,.1,.2,1)}
.slide{flex:0 0 100%;display:grid;grid-template-columns:.65fr 1.35fr;gap:56px;align-items:center;padding:20px 40px 36px}
.chapter{font:400 18px var(--sans);color:var(--accent-muted);margin-bottom:10px;padding-bottom:12px;border-bottom:1px solid var(--line);display:inline-block}
.slide-copy h3{font-size:clamp(32px,3.4vw,44px);line-height:1.08;margin-bottom:18px}
.slide-copy>p:not(.chapter){color:var(--body);line-height:1.8}
.palette-note{font:400 15px var(--sans);color:var(--muted)!important}
.carousel-controls{display:flex;align-items:center;justify-content:flex-end;gap:18px}
.slide-count{font:400 17px var(--sans);color:var(--muted);min-width:64px;text-align:center}
.carousel-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--ink);cursor:pointer;line-height:0}
.carousel-btn:hover{border-color:var(--accent);color:var(--accent)}

/* Download */
.download-section{padding:0 0 72px}
.download-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:end;border-top:1px solid var(--line);padding-top:56px}
.download-inner h2{font-size:clamp(40px,4.6vw,64px);line-height:1.02;margin:0}
.download-action>p:first-child{color:var(--body);margin-bottom:22px}
.release-note{font-size:12px;color:var(--muted);line-height:1.6;margin:16px 0 0}

/* Footer */
footer{border-top:1px solid var(--line);padding:26px 0}
.footer-inner{display:flex;align-items:center;gap:22px}
.footer-brand{font-size:20px}
.footer-inner p{font-size:12px;color:var(--muted);margin:0}
.footer-inner>a:last-child{font-size:12px;margin-left:auto;color:var(--muted)}
.footer-inner>a:last-child:hover{color:var(--accent)}

/* Screenshots */
.app-shot{margin:0;border:1px solid var(--line);border-radius:6px;overflow:hidden;box-shadow:0 20px 50px rgba(0,0,0,.4);background:var(--surface);min-width:0}
.app-shot a{display:block;cursor:zoom-in}
.app-shot img{display:block;width:100%;height:auto}
.shot-viewer{width:100vw;height:100vh;max-width:none;max-height:none;margin:0;padding:24px;border:0;background:transparent;display:none;place-items:center;cursor:zoom-out}
.shot-viewer[open]{display:grid}
.shot-viewer::backdrop{background:rgba(1,12,18,.86)}
.shot-viewer img{max-width:100%;max-height:calc(100vh - 48px);border-radius:6px}
.viewer-close{position:fixed;top:14px;right:18px;width:40px;height:40px;border:0;border-radius:50%;background:rgba(255,255,255,.14);color:#fff;font-size:26px;line-height:1;cursor:pointer}

@media(prefers-reduced-motion:reduce){.carousel-track{transition:none}}
@media(max-width:1260px){.carousel-viewport{margin:0 -32px}.slide{padding-left:32px;padding-right:32px}}
@media(max-width:900px){
  .hero{grid-template-columns:1fr;gap:40px;padding-top:52px}
  .essay{columns:1}
  .slide{grid-template-columns:1fr;gap:28px}
  .download-inner{grid-template-columns:1fr;gap:28px}
}
@media(max-width:600px){
  .shell{width:calc(100% - 36px)}
  .header-inner nav a:first-child{display:none}
  .carousel-viewport{margin:0 -18px}
  .slide{padding:16px 18px 28px}
  .carousel-controls{justify-content:center}
  .footer-inner{flex-wrap:wrap;gap:10px}
  .footer-inner p{order:3;width:100%}
}
/* Centered layout */
.hero{grid-template-columns:1fr;justify-items:center;text-align:center;gap:44px;padding:64px 0 56px}.hero-copy{order:2}.hero-actions{justify-content:center}.hero-stage{width:min(900px,100%);order:1}.download-inner{grid-template-columns:1fr;justify-items:center;text-align:center}.download-action{max-width:560px}.download-action .release-note{margin-left:auto;margin-right:auto}
