@font-face{font-family:Geist;src:url(/assets/Geist-Variable-Bj2R_7yk.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono;src:url(/assets/GeistMono-Variable-Dispecij.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}:root{color-scheme:light;--bg:#f3f2ee;--bg-elev:#fffcf8;--fg:#1c2429;--muted:#3d494f;--faint:#5c686e;--line:rgba(28,36,41,.12);--line-strong:rgba(28,36,41,.32);--grid:rgba(28,36,41,.055);--shadow:0 24px 60px rgba(28,36,41,.08);--sans:"Geist",system-ui,-apple-system,"Segoe UI",sans-serif;--mono:"Geist Mono",ui-monospace,"SFMono-Regular",monospace;--pad:24px;--max:1120px}@media (prefers-color-scheme:dark){:root{color-scheme:dark;--bg:#0b0c0d;--bg-elev:#141618;--fg:#f3f5f4;--muted:#c5cccf;--faint:#9aa3a8;--line:rgba(243,245,244,.12);--line-strong:rgba(243,245,244,.34);--grid:rgba(243,245,244,.05);--shadow:0 24px 60px rgba(0,0,0,.45)}}*{box-sizing:border-box}html,body{margin:0}body{min-height:100svh;display:flex;flex-direction:column;background:var(--bg);color:var(--fg);font:400 17px/1.5 var(--sans);font-synthesis:none;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;background-image:linear-gradient(to right,var(--grid) 1px,transparent 1px),linear-gradient(to bottom,var(--grid) 1px,transparent 1px);background-size:72px 72px;-webkit-mask-image:radial-gradient(ellipse 80% 60% at 50% 0%,#000 10%,transparent 72%);mask-image:radial-gradient(ellipse 80% 60% at 50% 0%,#000 10%,transparent 72%);animation:drift 36s linear infinite}body>*{position:relative;z-index:1}.skip{position:absolute;left:16px;top:12px;z-index:3;padding:8px 12px;background:var(--bg-elev);color:var(--fg);border:1px solid var(--line);border-radius:8px;transform:translateY(-160%)}.skip:focus{transform:none}a:focus-visible,button:focus-visible{outline:2px solid var(--fg);outline-offset:3px}.sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.lockup{display:inline-flex;align-items:baseline;gap:.17em}.mark{height:1.62cap;width:auto;display:block;color:currentColor;overflow:visible}.snow{fill:var(--bg)}.word{font-weight:500;letter-spacing:.15em;line-height:1;margin-right:-.15em}main{flex:1;width:min(var(--max),100%);margin:0 auto;padding:0 var(--pad) 72px}.hero{min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:56px}.hero-mark{margin:0;font-size:clamp(3rem,6.4vw,4.75rem);font-weight:500;letter-spacing:0;line-height:1;text-align:center;animation:rise .8s cubic-bezier(.2,.7,.2,1) backwards}.apps{width:min(720px,100%)}.apps ul{list-style:none;margin:0;padding:0;display:grid;gap:28px}.apps li{animation:rise .85s cubic-bezier(.2,.7,.2,1) backwards}.apps li:nth-child(1){animation-delay:.18s}.apps li:nth-child(2){animation-delay:.32s}.apps a{display:grid;grid-template-columns:52px minmax(0,1fr);column-gap:16px;row-gap:4px;align-items:center;color:inherit;text-decoration:none}.app-mark{grid-row:1 / span 2;width:52px;height:52px;border-radius:14px;border:1px solid var(--line);overflow:hidden;background:var(--bg-elev);transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s ease}.app-name{font:500 1.25rem/1.1 var(--sans);letter-spacing:-.03em;align-self:end}.app-line{max-width:32ch;color:var(--muted);font-size:.98rem;line-height:1.45;align-self:start}.go{display:inline-block;opacity:.4;transition:transform .35s ease,opacity .35s ease}@media (hover:hover){.apps a:hover .app-mark{transform:translateY(-3px) scale(1.05);box-shadow:var(--shadow)}.apps a:hover .app-name{text-decoration:underline;text-underline-offset:4px}.apps a:hover .go{opacity:1;transform:translate(4px)}}footer{border-top:1px solid var(--line);padding:22px var(--pad) 28px}footer p{max-width:var(--max);margin:0 auto;font:500 .78rem/1.4 var(--mono);letter-spacing:.04em;color:var(--faint)}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes drift{to{background-position:72px 72px}}@media (min-width:760px){:root{--pad:40px}.hero{gap:72px}.apps ul{grid-template-columns:1fr 1fr;gap:48px;align-items:start}}@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
