:root {
  color-scheme:dark;
  --paper:#141414;
  --ink:#f3f3f3;
  --muted:#a0a0a0;
  --accent:#f3f3f3;
  font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  color:var(--ink);
  background:var(--paper);
}
* { box-sizing:border-box; }
body { margin:0; }
a { color:inherit; text-decoration:none; }
button { font:inherit; }
a:focus-visible,button:focus-visible { outline:2px solid var(--accent); outline-offset:7px; }
::selection { background:#484848; }
.skip { position:fixed; z-index:10; left:15px; top:15px; padding:10px; background:var(--ink); color:#141414; transform:translateY(-150%); }
.skip:focus { transform:translateY(0); }
.topbar { height:100px; display:flex; justify-content:space-between; align-items:center; padding:0 4.5vw; position:relative; z-index:3; }
.small-brand { display:flex; align-items:center; font-size:22px; font-weight:650; letter-spacing:-1.3px; }
.small-brand>span { margin:0 4px; color:var(--accent); font-size:25px; }
.topbar nav { display:flex; gap:36px; align-items:center; }
.topbar nav a { font-size:13px; transition:color .2s; }
.topbar nav a:hover { color:var(--accent); }
.nav-product span { margin-left:7px; }
.bottom-bar { display:flex; align-items:center; justify-content:space-between; padding:0 4.5vw; min-height:70px; font-size:10px; color:var(--muted); letter-spacing:.2px; }
.home { height:100vh; height:100svh; display:grid; grid-template-rows:100px minmax(0,1fr) 70px; overflow:hidden; }
.home-stage { position:relative; min-height:0; display:grid; place-items:center; isolation:isolate; }
.logo-scene { position:relative; text-align:center; transform:translate(var(--drift-x,0px),var(--drift-y,0px)); transition:transform 1s ease-out; }
.hero-wordmark { position:relative; z-index:1; display:flex; justify-content:center; align-items:center; gap:.025em; margin:0; font-size:clamp(70px,12.2vw,190px); line-height:1.15; letter-spacing:-.075em; font-weight:600; }
.hero-caption { position:relative; z-index:1; margin:32px 0 0; color:var(--muted); font-size:14px; letter-spacing:.3px; }
.latest-app { position:absolute; bottom:30px; display:flex; align-items:center; gap:13px; font-size:11px; padding:12px 17px; border:1px solid #373737; border-radius:30px; background:#1c1c1c; transition:background .2s,border-color .2s; }
.latest-app:hover { background:#262626; border-color:#686868; }
.latest-app>span:nth-child(2) { color:var(--muted); }
.latest-app b { font-weight:550; }.live-dot { width:5px; height:5px; background:#bdbdbd; border-radius:50%; }
.motion-toggle { position:absolute; bottom:36px; right:4.5vw; background:none; border:0; padding:7px; cursor:pointer; color:var(--muted); font-size:10px; }
.motion-toggle>span { margin-left:6px; }
.motion-paused .hero-wordmark { animation-play-state:paused; }
.motion-paused .logo-scene { transform:none; }
.inner { min-height:100svh; display:flex; flex-direction:column; }
.inner .bottom-bar { margin-top:auto; }
.content-page { width:min(1050px,91%); margin:50px auto 70px; }
.eyebrow { color:var(--accent); font-size:10px; letter-spacing:1.6px; }
.page-heading h1 { font-size:clamp(50px,7vw,90px); letter-spacing:-.065em; line-height:1.04; font-weight:500; margin:23px 0; }
.page-heading>p { font-size:15px; color:var(--muted); line-height:1.7; }
.app-card { display:grid; grid-template-columns:1fr 1fr; background:#1d1d1d; margin-top:43px; overflow:hidden; border-radius:5px; }
.app-card-copy { padding:35px; display:flex; flex-direction:column; justify-content:space-between; gap:40px; }
.app-meta { display:flex; align-items:center; gap:15px; font-size:9px; letter-spacing:1px; }
.app-icon { background:#333333; border-radius:12px; width:45px; height:45px; display:grid; place-items:center; font-family:Georgia,serif; font-size:32px; color:#f4f4f4; }
.app-card h2 { font-size:49px; letter-spacing:-2px; font-weight:500; margin:0 0 15px; }
.app-card p { color:#ababab; max-width:300px; font-size:14px; line-height:1.75; }
.app-card img { width:100%; height:450px; object-fit:cover; transition:transform .7s; }
.app-card:hover img { transform:scale(1.025); }
.app-discover { display:flex; justify-content:space-between; border-top:1px solid #383838; padding-top:17px; font-size:12px; }
.coming-note { color:var(--muted); font-size:11px; margin-top:23px; }
.about-page { display:grid; grid-template-columns:1fr 1fr; gap:90px; margin-top:90px; }
.about-text { padding-top:32px; font-size:16px; line-height:1.85; color:var(--muted); }
.about-text .intro { color:var(--ink); font-size:24px; line-height:1.5; letter-spacing:-.5px; margin-top:0; }
.about-link { display:inline-flex; gap:25px; border-bottom:1px solid #777777; padding-bottom:8px; margin-top:17px; color:var(--ink); font-size:13px; }
@media(max-width:650px) {
  .topbar { padding:0 23px; height:84px; }.small-brand { font-size:18px; }.small-brand>span { font-size:21px; margin-inline:3px; }.topbar nav { gap:20px; }.topbar nav a { font-size:11px; }.nav-product span { margin-left:1px; }
  .home { grid-template-rows:84px minmax(0,1fr) 64px; }.hero-wordmark { font-size:12.2vw; }.hero-caption { font-size:11px; margin-top:23px; }.bottom-bar { min-height:64px; padding-inline:23px; font-size:8px; gap:15px; }
  .latest-app { bottom:60px; gap:10px; padding:11px 14px; font-size:10px; }.motion-toggle { bottom:13px; right:50%; transform:translateX(50%); font-size:9px; white-space:nowrap; }
  .content-page { width:calc(100% - 46px); margin-top:35px; }.app-card { grid-template-columns:1fr; }.app-card-copy { padding:25px; gap:25px; }.app-card img { height:320px; }.about-page { grid-template-columns:1fr; gap:10px; }.about-text { font-size:15px; padding-top:0; }.about-text .intro { font-size:22px; }
}
@media(max-height:500px) {
  .home { grid-template-rows:65px minmax(0,1fr) 42px; }.topbar { height:65px; }.bottom-bar { min-height:42px; }.hero-wordmark { font-size:min(10vw,110px); }.hero-caption { margin-top:12px; }.logo-scene { margin-top:-35px; }.latest-app { bottom:5px; padding:7px 13px; }.motion-toggle { bottom:8px; right:4.5vw; transform:none; }.home .bottom-bar { font-size:8px; }
}
@media(prefers-reduced-motion:reduce) {
  *,*:before,*:after { animation:none!important; transition:none!important; }.logo-scene { transform:none; }
}
/* Keep decorative transforms inside the fixed landing viewport. */
html:has(body.home) { height:100%; overflow:hidden; }
.home-stage { overflow:clip; }

/* A typographic identity, without a symbol or spinner. */
.wordmark-gap { width:.14em; }
.hero-wordmark { letter-spacing:-.065em; font-weight:550; animation:wordmark-breathe 9s ease-in-out infinite; }
.topbar nav a { color:#b5b5b5; }
.topbar nav a:hover { color:#fff; }
.small-brand { letter-spacing:-.9px; }
@keyframes wordmark-breathe {
  0%,100% { opacity:1; transform:translateY(0); }
  50% { opacity:.72; transform:translateY(-5px); }
}
@media(prefers-reduced-motion:reduce) { .hero-wordmark { animation:none; } }
