@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:200 800;font-stretch:75% 100%;font-display:swap;src:url(../media/3d51db290a6a25f3-s.19qyygf-kmpcq.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:200 800;font-stretch:75% 100%;font-display:swap;src:url(../media/f7054824cbb51795-s.128w4kk8i02cq.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:200 800;font-stretch:75% 100%;font-display:swap;src:url(../media/74effe3e2193102a-s.p.1jake7ccbq8_p.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Bricolage Grotesque Fallback;src:local(Arial);ascent-override:88.21%;descent-override:25.61%;line-gap-override:0.0%;size-adjust:105.43%}.bricolage_grotesque_fafe10e7-module__ThThaq__className{font-family:Bricolage Grotesque,Bricolage Grotesque Fallback;font-style:normal}.bricolage_grotesque_fafe10e7-module__ThThaq__variable{--font-display:"Bricolage Grotesque", "Bricolage Grotesque Fallback"}
@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.3p2_lha1f2xer.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.1qq4vpdcun5oj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.390ncx5urfkfu.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.21jp631_3pja2.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.0wgildi0cnwt9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_190ee6a9-module__tUSYfq__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_190ee6a9-module__tUSYfq__variable{--font-body:"Geist", "Geist Fallback"}
:root{--bg:#0b0e14;--floor:#07090d;--surface:#121722;--surface-2:#19202d;--border:rgb(var(--ink) / .1);--border-strong:rgb(var(--ink) / .2);--text:#eef2f8;--muted:#9aa4b5;--link:#eef2f8;--accent:#2f7bff;--accent-fg:#fff;--focus:#ffd166;--radius:18px;--container:1200px;--gutter:clamp(1rem, 4vw, 2.5rem);--sans:var(--font-body), system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--display-face:var(--font-display), var(--font-body), system-ui, sans-serif;--ease:cubic-bezier(.22, 1, .36, 1);--ink:226 234 248;--glass:#1116219e;--glass-strong:#111621b8;--glass-solid:#0b0e14db;--shadow-rgb:0 0 0;--shadow-strength:1;--grain:.05;--badge-live-bg:#14532d;--badge-live-border:#1f7a43;--badge-live-fg:#eef2f8;--badge-beta-bg:#4a3a0a;--badge-beta-border:#7a6113;--badge-beta-fg:#eef2f8;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--bg:#f5f7fb;--floor:#e8ecf4;--surface:#fff;--surface-2:#eef1f6;--text:#0f172a;--muted:#4b5568;--link:#0f172a;--accent:#1f5fe0;--accent-fg:#fff;--focus:#0b57d0;--ink:15 23 42;--glass:#ffffffb3;--glass-strong:#ffffffc7;--glass-solid:#ffffffe6;--shadow-rgb:15 23 42;--shadow-strength:.3;--grain:.03;--badge-live-bg:#dcfce7;--badge-live-border:#86efac;--badge-live-fg:#14532d;--badge-beta-bg:#fef3c7;--badge-beta-border:#fcd34d;--badge-beta-fg:#713f12;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:light){:root:not([data-theme]){--bg:#f5f7fb;--floor:#e8ecf4;--surface:#fff;--surface-2:#eef1f6;--text:#0f172a;--muted:#4b5568;--link:#0f172a;--accent:#1f5fe0;--accent-fg:#fff;--focus:#0b57d0;--ink:15 23 42;--glass:#ffffffb3;--glass-strong:#ffffffc7;--glass-solid:#ffffffe6;--shadow-rgb:15 23 42;--shadow-strength:.3;--grain:.03;--badge-live-bg:#dcfce7;--badge-live-border:#86efac;--badge-live-fg:#14532d;--badge-beta-bg:#fef3c7;--badge-beta-border:#fcd34d;--badge-beta-fg:#713f12;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}}:root[data-theme=light] *{--accent-ink:color-mix(in oklab, var(--accent) 55%, #000)}@media (prefers-color-scheme:light){:root:not([data-theme]) *{--accent-ink:color-mix(in oklab, var(--accent) 55%, #000)}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:radial-gradient(ellipse 70% 45% at 50% -8%, #6ea0ff12, transparent 70%), var(--bg);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;background-attachment:fixed;flex-direction:column;min-height:100vh;margin:0;font-size:1.0625rem;line-height:1.65;display:flex}body:after{content:"";z-index:50;pointer-events:none;opacity:var(--grain);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}main{flex:1}main:focus{outline:none}img{max-width:100%;height:auto;display:block}h1,h2,h3{font-family:var(--sans);letter-spacing:-.015em;margin:0 0 .5em;font-weight:600;line-height:1.15}.display{font-family:var(--display-face);font-variation-settings:"opsz" 96, "wdth" 94;letter-spacing:-.028em;font-weight:620;line-height:.98}.display--xl{text-wrap:balance;font-size:clamp(2.9rem,7.4vw,6.4rem)}.display--md{font-size:clamp(2rem,4vw,3rem)}.display--lg{text-wrap:balance;font-size:clamp(2.4rem,5.5vw,4.4rem)}h1{font-size:clamp(2.2rem,5vw,3.6rem)}h2{font-size:clamp(1.5rem,3vw,2.1rem)}h3{font-size:1.15rem}p{margin:0 0 1em}a{color:var(--link);text-underline-offset:.18em}a:hover{text-decoration-thickness:2px}:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:4px}:where(ul[class],ol[class]){margin:0;padding:0;list-style:none}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip-link{z-index:100;color:#000;background:#ffd166;border-radius:8px;padding:.75rem 1rem;font-weight:600;position:absolute;top:-100px;left:1rem}.skip-link:focus{top:1rem}.container{width:100%;max-width:var(--container);padding-inline:var(--gutter);margin-inline:auto}.narrow{max-width:760px}.section{padding-block:clamp(2.5rem,6vw,5rem)}.section__head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:1.5rem;display:flex}.section__head h2{margin:0}.muted{color:var(--muted)}.lede{color:var(--muted);max-width:60ch;font-size:clamp(1.1rem,2vw,1.3rem)}.eyebrow{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:.75rem;font-size:.95rem;display:flex}.pre-line{white-space:pre-line}.button-row{flex-wrap:wrap;gap:.85rem;display:flex}.button{color:#fff;letter-spacing:-.005em;text-shadow:0 1px 1px #000a2840;min-height:48px;transition:transform .25s var(--ease), box-shadow .25s var(--ease), filter .25s var(--ease), background-color .25s var(--ease);background:linear-gradient(#3d8cff 0%,#2266f2 52%,#1a4fd8 100%);border:0;border-radius:999px;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.6rem;font-weight:600;text-decoration:none;display:inline-flex;box-shadow:inset 0 1px #ffffff4d,inset 0 -1px #00000040,0 0 0 1px #5a9bff8c,0 10px 28px -10px #2f7bffbf}.button:hover{filter:brightness(1.07);transform:translateY(-1px);box-shadow:inset 0 1px #ffffff57,inset 0 -1px #00000040,0 0 0 1px #78afffb3,0 16px 36px -10px #2f7bfff2}.button:active{transform:translateY(0)scale(.98)}.button--ghost{background:rgb(var(--ink) / .05);color:var(--text);text-shadow:none;box-shadow:inset 0 1px 0 #ffffff12, 0 0 0 1px rgb(var(--ink) / .16);-webkit-backdrop-filter:blur(10px)}.button--ghost:hover{filter:none;background:rgb(var(--ink) / .09);box-shadow:inset 0 1px 0 #ffffff1a, 0 0 0 1px rgb(var(--ink) / .34)}.button--accent{background:var(--accent);color:var(--accent-fg);text-shadow:none;box-shadow:inset 0 1px 0 #ffffff40, 0 10px 26px -12px var(--accent)}.button--accent:hover{box-shadow:inset 0 1px 0 #ffffff4d, 0 14px 32px -10px var(--accent)}@media (prefers-reduced-motion:reduce){.button,.button:hover,.button:active{transition:none;transform:none}}.site-header{z-index:40;pointer-events:none;justify-content:center;margin-top:12px;padding-inline:12px;display:flex;position:sticky;top:12px}.island{pointer-events:auto;background:var(--glass);border:1px solid var(--border);box-shadow:0 1px 0 #ffffff0f inset, 0 18px 40px -18px rgb(var(--shadow-rgb) / calc(.7 * var(--shadow-strength)));-webkit-backdrop-filter:blur(18px)saturate(150%);transition:padding .35s var(--ease), background-color .35s var(--ease), box-shadow .35s var(--ease);border-radius:999px;align-items:center;gap:.5rem;padding:6px 6px 6px 10px;display:flex}.island[data-compact]{background:var(--glass-solid);box-shadow:0 1px 0 #ffffff12 inset, 0 22px 50px -16px rgb(var(--shadow-rgb) / calc(.85 * var(--shadow-strength)));padding:4px 4px 4px 8px}.island__bar{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.island__brand{min-height:44px;color:var(--text);font-family:var(--sans);white-space:nowrap;align-items:center;gap:.6rem;padding-right:.95rem;font-size:.97rem;line-height:1;text-decoration:none;display:inline-flex}.island__brand svg{transition:transform .4s var(--ease)}.island__brand:hover svg{transform:rotate(-8deg)scale(1.06)}.island__links{border-left:1px solid var(--border);align-items:center;gap:2px;display:flex;position:relative;padding-left:.5rem!important}.island__links a{z-index:1;min-height:40px;color:var(--muted);letter-spacing:-.006em;transition:color .25s var(--ease);border-radius:999px;align-items:center;padding:0 1rem;font-size:.92rem;font-weight:500;text-decoration:none;display:inline-flex;position:relative}.island__links a:hover,.island__links a[aria-current=page]{color:var(--text)}.island__links a:focus-visible{outline-offset:0}.wordmark__lead{letter-spacing:-.02em;font-weight:680}.wordmark__rest{letter-spacing:-.012em;color:var(--muted);font-weight:450}.island__pill{background:rgb(var(--ink) / .1);opacity:0;height:40px;transition:transform .35s var(--ease), width .35s var(--ease), opacity .2s var(--ease);pointer-events:none;border-radius:999px;margin-top:-20px;position:absolute;top:50%;left:0;box-shadow:inset 0 1px #ffffff14}.island__pill[data-visible]{opacity:1}.island__toggle{background:rgb(var(--ink) / .08);width:44px;height:44px;color:var(--text);cursor:pointer;border:0;border-radius:50%;place-items:center;display:none}.theme-switch{background:rgb(var(--ink) / .08);width:62px;height:32px;box-shadow:inset 0 0 0 1px rgb(var(--ink) / .12);cursor:pointer;transition:background-color .25s var(--ease);border:0;border-radius:999px;flex-shrink:0;justify-content:space-between;align-items:center;padding:0 7px;display:inline-flex;position:relative}.theme-switch:hover{background:rgb(var(--ink) / .12)}.theme-switch__knob{background:var(--surface);width:26px;height:26px;box-shadow:0 1px 3px #00000040, inset 0 0 0 1px rgb(var(--ink) / .08);transition:transform .3s var(--ease);border-radius:50%;position:absolute;top:3px;left:3px}.theme-switch[data-state=dark] .theme-switch__knob{transform:translate(30px)}.theme-switch__icon{fill:none;width:16px;height:16px;stroke:var(--muted);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;transition:stroke .25s var(--ease);position:relative}.theme-switch[data-state=light] .theme-switch__icon--sun{stroke:#e8a317}.theme-switch[data-state=dark] .theme-switch__icon--moon{stroke:#9db8ff}@media (prefers-reduced-motion:reduce){.theme-switch__knob{transition:none}}@media (min-width:641px){.island__bar{display:contents}.island__nav{order:1}.theme-switch{order:2;margin:0 4px 0 2px}}@media (max-width:640px){.island__bar .theme-switch{margin-left:auto}.island__bar{gap:4px}.island{border-radius:28px;flex-direction:column;align-items:stretch;gap:0;width:100%;padding:6px 6px 6px 12px}.island[data-compact]{padding:4px 4px 4px 10px}.island__toggle{display:grid}.island__nav{transition:grid-template-rows .35s var(--ease);grid-template-rows:0fr;display:grid}.island[data-open] .island__nav{grid-template-rows:1fr}.island__links{visibility:hidden;border-left:0;flex-direction:column;align-items:stretch;transition:visibility 0s linear .35s;overflow:hidden;padding-left:0!important}.island[data-open] .island__links{visibility:visible;transition-delay:0s;padding:.5rem 6px .25rem 0!important}.island__links a{min-height:48px;font-size:1.05rem}.island__pill{display:none}.island__links a[aria-current=page]{background:rgb(var(--ink) / .08)}}@media (prefers-reduced-motion:reduce){.island,.island__pill,.island__nav,.island__brand svg{transition:none}}.preview-bar{color:#000;text-align:center;padding:.4rem var(--gutter);background:#ffd166;font-size:.9rem}.preview-bar a{color:#000;font-weight:600}.site-footer{background:radial-gradient(ellipse 50% 80% at 50% 0%, #2f7bff14, transparent 70%), linear-gradient(to bottom, transparent, var(--floor));border-top:1px solid var(--border);margin-top:5rem;padding-block:0 2rem;font-size:.95rem;position:relative}.dock-wrap{justify-content:center;margin-bottom:-1.5rem;display:flex;transform:translateY(-50%)}.dock{background:var(--glass-strong);border:1px solid var(--border-strong);box-shadow:0 1px 0 #ffffff14 inset, 0 24px 50px -20px rgb(var(--shadow-rgb) / calc(.85 * var(--shadow-strength)));-webkit-backdrop-filter:blur(16px)saturate(150%);border-radius:34px;align-items:flex-end;gap:18px;padding:20px 28px;display:flex}.dock li{position:relative}.dock__app{transform-origin:50% 100%;transition:transform .25s var(--ease);border-radius:14px;display:block}.dock__app .app-icon{box-shadow:0 0 0 1px #ffffff14, 0 10px 14px -10px var(--accent)}.dock li:hover .dock__app,.dock li:focus-within .dock__app{transform:translateY(-10px)scale(1.4)}.dock li:hover+li .dock__app,.dock li:focus-within+li .dock__app{transform:translateY(-4px)scale(1.15)}.dock li:has(+li:hover) .dock__app{transform:translateY(-4px)scale(1.15)}.dock li:has(+li:focus-within) .dock__app{transform:translateY(-4px)scale(1.15)}.dock__label{background:var(--text);color:var(--bg);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s var(--ease), translate .2s var(--ease);border-radius:8px;padding:.3rem .7rem;font-size:.8rem;font-weight:600;position:absolute;bottom:calc(100% + 26px);left:50%;translate:-50% 4px}.dock li:hover .dock__label,.dock li:focus-within .dock__label{opacity:1;translate:-50%}.dock__app:focus-visible{outline-offset:4px}@media (max-width:520px){.dock{border-radius:26px;gap:10px;padding:14px 16px}.dock .app-icon{width:42px!important;height:42px!important}}@media (prefers-reduced-motion:reduce){.dock__app,.dock__label{transition:none}.dock li:hover .dock__app,.dock li:focus-within .dock__app,.dock li:hover+li .dock__app,.dock li:focus-within+li .dock__app{transform:none}.dock li:has(+li:hover) .dock__app{transform:none}.dock li:has(+li:focus-within) .dock__app{transform:none}}.site-footer__grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:2rem 3rem;padding-block:3rem 2.5rem;display:grid}@media (min-width:900px){.site-footer__grid{grid-template-columns:1.6fr 1fr 1fr 1fr}}.site-footer__intro p{max-width:32ch;margin-top:1rem}.site-footer__brand{color:var(--text);font-family:var(--sans);align-items:center;gap:.75rem;font-size:1.2rem;line-height:1;text-decoration:none;display:inline-flex}.site-footer__heading{font-family:var(--sans);letter-spacing:0;color:var(--muted);margin-bottom:.9rem;font-size:.85rem;font-weight:500}.site-footer__links{gap:.55rem;display:grid}.site-footer__links a{color:var(--text);transition:background-size .3s var(--ease);background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:0% 1px;text-decoration:none}.site-footer__links a:hover,.site-footer__links a:focus-visible{background-size:100% 1px}.site-footer__bar{border-top:1px solid var(--border);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-top:1.5rem;font-size:.85rem;display:flex}.site-footer__bar p{margin:0}.site-footer__top{border:1px solid var(--border);min-height:44px;color:var(--text);transition:border-color .25s var(--ease);border-radius:999px;align-items:center;gap:.4rem;padding:0 1rem;text-decoration:none;display:inline-flex}.site-footer__top:hover{border-color:var(--border-strong)}.breadcrumbs ol{color:var(--muted);flex-wrap:wrap;gap:.25rem;margin:0;padding:1.25rem 0 0;font-size:.9rem;list-style:none;display:flex}.breadcrumbs li+li:before{content:"/";color:var(--border);margin-right:.35rem}.card-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:1rem;display:grid}.tilt{height:100%}.app-card,.post-card{background:linear-gradient(180deg, #ffffff09, #ffffff03), var(--surface);border:1px solid var(--border);border-radius:var(--radius);height:100%;transition:border-color .3s var(--ease);padding:1.4rem;position:relative}.app-card{gap:1rem;display:flex;overflow:hidden}.app-card:before{content:"";pointer-events:none;background:radial-gradient(120% 80% at 0% 0%, color-mix(in oklab, var(--accent) 16%, transparent), transparent 60%);position:absolute;inset:0}.app-card:hover,.post-card:hover{border-color:color-mix(in oklab, var(--accent) 55%, transparent)}.app-card:focus-within,.post-card:focus-within{outline:3px solid var(--focus);outline-offset:2px}.app-card__title,.post-card__title{margin-bottom:.25rem}.app-card__title a,.post-card__title a{color:var(--text);text-decoration:none}.stretched-link:after{content:"";position:absolute;inset:0}.stretched-link:focus-visible{outline:none}.app-card__tagline{color:var(--muted);margin-bottom:.5rem}.app-card__meta{color:var(--muted);align-items:center;gap:.5rem;margin:0;font-size:.85rem;display:flex}.post-card__cover{border-radius:calc(var(--radius) - 4px);aspect-ratio:16/9;object-fit:cover;width:100%;margin-bottom:1rem}.app-icon{background:var(--accent);color:var(--accent-fg);border-radius:22%;flex-shrink:0;place-items:center;font-size:1.4rem;font-weight:700;display:inline-grid;overflow:hidden}.app-icon img{object-fit:cover;width:100%;height:100%}.badge{letter-spacing:.02em;text-transform:none;border:1px solid var(--border);color:var(--text);border-radius:999px;padding:.1rem .55rem;font-size:.75rem;font-weight:600;display:inline-block}.badge--live{background:var(--badge-live-bg);border-color:var(--badge-live-border);color:var(--badge-live-fg)}.badge--beta{background:var(--badge-beta-bg);border-color:var(--badge-beta-border);color:var(--badge-beta-fg)}.badge--coming-soon{background:var(--surface-2)}.filter-bar{flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;display:flex}.filter-bar button{border:1px solid var(--border);min-height:40px;color:var(--text);font:inherit;cursor:pointer;background:#ffffff05;border-radius:999px;padding:.35rem 1rem}.filter-bar button:hover{border-color:var(--border-strong)}.filter-bar button[aria-pressed=true]{background:var(--text);color:var(--bg);border-color:var(--text)}.hero{background:radial-gradient(ellipse 38% 55% at 70% 18%, #6ea0ff14, transparent 70%), linear-gradient(to bottom, transparent 70%, var(--floor));position:relative;overflow:clip}.hero__inner{align-items:center;gap:1.5rem;padding-block:clamp(2.5rem,6vw,4.5rem) clamp(1.5rem,4vw,3rem);display:grid}@media (min-width:960px){.hero__inner{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}.hero__visual{margin-right:calc(-1 * var(--gutter))}}.hero__copy .lede{max-width:44ch;margin-top:1.5rem}.hero__visual{gap:.5rem;display:grid}.hero__labels{grid-template-columns:repeat(var(--count,3), 1fr);text-align:center;width:72%;margin-inline:auto;font-size:.95rem;display:grid}.hero__labels[data-count="1"]{--count:1}.hero__labels[data-count="2"]{--count:2}.hero__labels a{min-height:44px;color:var(--text);justify-content:center;align-items:center;gap:.5rem;text-decoration:none;display:inline-flex}.hero__labels a:before{content:"";background:var(--accent);width:7px;height:7px;box-shadow:0 0 10px var(--accent);border-radius:50%}.hero__labels a:hover{text-decoration:underline}.phone-stage{isolation:isolate;position:relative;overflow:clip}.phone-stage__poster,.phone-stage__canvas{position:absolute;inset:0}.phone-stage__canvas{opacity:0;transition:opacity .9s var(--ease)}.phone-stage__poster{transition:opacity .6s var(--ease) .25s}.phone-stage[data-ready] .phone-stage__canvas{opacity:1}.phone-stage[data-ready] .phone-stage__poster{opacity:0;pointer-events:none}.phone-stage--hero{height:clamp(380px,46vw,640px)}.phone-stage--hero .phone-stage__canvas,.phone-stage--app .phone-stage__canvas{-webkit-mask-image:radial-gradient(50% 50%,#000 55%,#0000 100%);mask-image:radial-gradient(50% 50%,#000 55%,#0000 100%)}.phone-stage--app{touch-action:pan-y;height:clamp(440px,68vh,640px)}@media (max-width:520px){.phone-stage--app{height:440px}}.hero-posters{perspective:1200px;justify-content:center;align-items:flex-end;display:flex;position:absolute;inset:0 0 12%}.hero-poster{width:24%;margin-inline:-1%}.hero-poster:first-child:not(:only-child){transform:rotateY(26deg)translateZ(-60px)translateY(-4%)}.hero-poster:nth-child(2){z-index:1;transform:translateY(-8%)}.hero-poster:nth-child(3){transform:rotateY(-26deg)translateZ(-90px)translateY(-2%)}.phone-frame,.hero-poster img,.phone-poster{aspect-ratio:9/19.5;background:var(--surface);box-shadow:0 0 0 1px #ffffff14, 0 40px 70px -30px rgb(var(--shadow-rgb) / calc(.85 * var(--shadow-strength))), 0 0 90px -30px var(--accent);border:6px solid #1a2130;border-radius:13%/6%;position:relative}.phone-frame{overflow:hidden}.phone-frame img{object-fit:cover;width:100%;height:100%}.phone-frame:after{content:"";pointer-events:none;background:linear-gradient(115deg,#ffffff1f,#0000 38%);position:absolute;inset:0}.hero-poster img,.phone-poster{object-fit:cover;-webkit-box-reflect:below 10px linear-gradient(transparent 72%, #ffffff24);width:100%}.about{align-items:start;gap:2.5rem;display:grid}@media (min-width:900px){.about{grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:4rem}}.about__bio .prose{max-width:32ch;font-family:var(--display-face);font-variation-settings:"opsz" 60, "wdth" 98;letter-spacing:-.018em;font-size:clamp(1.5rem,3vw,2.3rem);font-weight:480;line-height:1.24}.about__card{border-top:1px solid var(--border-strong);padding:1.5rem}.about__avatar{object-fit:cover;border-radius:50%;width:96px;height:96px;margin-bottom:1rem}.about__name{margin-bottom:.25rem;font-weight:600}.about__links{flex-wrap:wrap;gap:.5rem 1.25rem;display:flex;margin-top:1rem!important}.cta{text-align:center;justify-items:center;display:grid}.cta .button-row{justify-content:center}.app-hero{background:radial-gradient(55% 45% at 78% 35%, color-mix(in oklab, var(--accent) 20%, transparent), transparent 70%);position:relative}.app-hero__inner{align-items:center;gap:2rem;padding-block:clamp(1.5rem,5vw,3rem);display:grid}@media (min-width:900px){.app-hero__inner{grid-template-columns:1.1fr 1fr}}@media (min-width:900px) and (prefers-reduced-motion:no-preference){.app-hero[data-scroll-zone]{height:calc(100svh + (var(--screens) - 1) * 45svh)}.app-hero[data-scroll-zone] .app-hero__sticky{align-items:center;min-height:100svh;display:flex;position:sticky;top:0}}.app-hero__copy .app-icon{box-shadow:0 12px 40px -10px var(--accent);margin-bottom:1.5rem}.app-hero__facts{color:var(--muted);flex-wrap:wrap;gap:.5rem;font-size:.85rem;display:flex;margin-top:1.25rem!important}.app-hero__facts li{border:1px solid var(--border);border-radius:999px;padding:.2rem .7rem}.showcase{gap:.75rem;display:grid}.phone-stage--app .phone-stage__poster{justify-content:center;align-items:center;display:flex}.phone-stage--app .phone-poster{width:auto;height:88%}.phone-stage__swap{object-fit:contain}.showcase__controls{justify-content:center;align-items:center;gap:1rem;display:flex}.showcase__controls button{border:1px solid var(--border-strong);width:44px;height:44px;color:var(--text);cursor:pointer;background:#ffffff08;border-radius:50%;place-items:center;display:grid}.showcase__controls button:hover{border-color:var(--accent)}.showcase__caption{text-align:center;min-width:10ch;color:var(--muted);font-variant-numeric:tabular-nums;margin:0;font-size:.9rem}.store-badges{flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;display:flex}.store-badge{color:#fff;background:#000;border:1px solid #555;border-radius:12px;align-items:center;gap:.6rem;min-height:52px;padding:.5rem 1.1rem;font-weight:600;line-height:1.1;text-decoration:none;display:inline-flex}.store-badge small{font-size:.7rem;font-weight:400;display:block}.feature-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:0 3rem;display:grid}.feature{border-top:1px solid var(--border);grid-template-columns:auto 1fr;gap:.25rem 1rem;padding-block:1.5rem;display:grid}.feature__icon{background:color-mix(in oklab, var(--accent) 14%, transparent);width:44px;height:44px;color:var(--accent-ink,var(--accent));border-radius:50%;grid-row:span 2;place-items:center;display:grid}.feature__title{font-family:var(--display-face);font-variation-settings:"opsz" 28;letter-spacing:-.02em;margin:.4rem 0 0;font-size:1.3rem;font-weight:600}.feature__text{color:var(--muted);margin:0}.gallery{scroll-snap-type:x mandatory;padding:1rem 0 2rem;overflow-x:auto}.gallery__track{gap:1.5rem;display:flex}.gallery__track>li{scroll-snap-align:start;flex:0 0 min(58vw,240px)}.gallery__item{margin:0}.gallery__item img{aspect-ratio:9/19.5;object-fit:cover;background:var(--surface);border:6px solid #1a2130;border-radius:13%/6%;width:100%}.gallery__item figcaption{color:var(--muted);text-align:center;margin-top:.75rem;font-size:.9rem}.legal-links{flex-wrap:wrap;gap:.5rem 1.5rem;display:flex;margin-bottom:1rem!important}.legal-links a[aria-current=page]{color:var(--text);font-weight:600;text-decoration:none}.contact-list,.legal__meta{gap:.75rem;margin:1.5rem 0 2.5rem;display:grid}.contact-list div,.legal__meta div{gap:.1rem;display:grid}dt{color:var(--muted);font-size:.85rem}dd{overflow-wrap:anywhere;margin:0}.support-list{gap:1rem;display:grid}.support-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);gap:1rem;padding:1.25rem;display:flex}.support-item h3{margin-bottom:.25rem}.support-item p{margin:0 0 .25rem}.support-item__links{flex-wrap:wrap;gap:.25rem 1rem;font-size:.9rem;display:flex}.spotlight{background:radial-gradient(ellipse 45% 60% at var(--light-x,72%) 30%, color-mix(in oklab, var(--accent) 26%, transparent), transparent 70%), radial-gradient(ellipse 35% 12% at var(--light-x,72%) 92%, rgb(var(--shadow-rgb) / calc(.45 * var(--shadow-strength))), transparent 70%), linear-gradient(to bottom, var(--bg), var(--floor) 85%, var(--bg));padding-block:clamp(3.5rem,7vw,6.5rem);position:relative;overflow:clip}.spotlight--left{--light-x:28%}.spotlight__inner{align-items:center;gap:3rem;display:grid}@media (min-width:900px){.spotlight__inner{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(4rem,7vw,7rem)}.spotlight--left .spotlight__copy{order:2}}.spotlight__copy{z-index:1;min-width:0;position:relative}.spotlight__copy .app-icon{box-shadow:0 16px 44px -12px var(--accent);margin-bottom:1.75rem}.spotlight__name{font-family:var(--display-face);z-index:1;font-variation-settings:"opsz" 96, "wdth" 92;letter-spacing:-.032em;overflow-wrap:anywhere;text-wrap:balance;margin-bottom:1rem;font-size:clamp(2.8rem,6vw,5.4rem);font-weight:680;line-height:.95;position:relative}.spotlight__tagline{color:var(--muted);max-width:36ch;font-size:clamp(1.15rem,2vw,1.35rem)}.spotlight__features{gap:.9rem;max-width:44ch;display:grid;margin:2rem 0!important}.spotlight__features li{grid-template-columns:20px 1fr;align-items:start;gap:.85rem;display:grid}.spotlight__features svg{color:var(--accent-ink,var(--accent));margin-top:.2rem}.spotlight__actions{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.spotlight__actions .store-badges{margin-top:0}.fan{perspective:1600px;place-items:center;min-height:clamp(380px,48vw,600px);display:grid}.fan__stage{aspect-ratio:1/1.05;width:min(100%,480px);transform-style:preserve-3d;position:relative}.fan__slot{width:46%;transform-style:preserve-3d;position:absolute;top:6%;left:50%}.fan__phone{transform-origin:50% 100%}.fan__slot--0 .fan__phone{transform:translate(-118%)rotateY(28deg)translateZ(-140px)rotate(-3deg)}.fan__slot--1{z-index:1}.fan__slot--1 .fan__phone{transform:translate(-50%)}.fan__slot--2 .fan__phone{transform:translate(18%)rotateY(-28deg)translateZ(-140px)rotate(3deg)}@media (max-width:600px){.fan{min-height:0;padding-block:1rem}.fan__stage{width:min(100%,300px)}.fan__slot--0 .fan__phone{transform:translate(-100%)rotateY(26deg)translateZ(-120px)rotate(-3deg)}.fan__slot--2 .fan__phone{transform:translate(0%)rotateY(-26deg)translateZ(-120px)rotate(3deg)}}.more-apps{margin-top:1.5rem}.catalogue{position:relative}.catalogue__list{border-bottom:1px solid var(--border)}.catalogue__row{border-top:1px solid var(--border);color:var(--text);transition:background-color .3s var(--ease), padding .3s var(--ease);grid-template-columns:48px minmax(0,1fr) auto;grid-template-areas:"icon name meta""icon tagline meta";align-items:center;column-gap:1.25rem;padding-block:1.25rem;text-decoration:none;display:grid}@media (min-width:900px){.catalogue__row{grid-template-columns:48px minmax(0,1.1fr) minmax(0,1.4fr) auto;grid-template-areas:"icon name tagline meta"}}.catalogue__row:hover,.catalogue__row:focus-visible{background:linear-gradient(90deg, color-mix(in oklab, var(--accent) 12%, transparent), transparent 70%);padding-inline:1rem}.catalogue__icon{grid-area:icon;display:flex}.catalogue__name{font-family:var(--display-face);font-variation-settings:"opsz" 48, "wdth" 96;letter-spacing:-.018em;grid-area:name;font-size:clamp(1.3rem,2.4vw,1.85rem);font-weight:600;line-height:1.1}.catalogue__tagline{color:var(--muted);grid-area:tagline}.catalogue__meta{color:var(--muted);flex-direction:column;grid-area:meta;align-items:flex-end;gap:.35rem;font-size:.85rem;display:flex}@media (min-width:900px){.catalogue__meta{flex-direction:row;align-items:center;gap:.75rem}}.catalogue__preview{pointer-events:none;opacity:0;width:170px;transition:opacity .25s var(--ease);z-index:2;margin:-170px 0 0 32px;position:absolute;top:0;left:0}.catalogue__preview[data-visible]{opacity:1}.catalogue__shot{opacity:0;width:100%;transition:opacity .25s var(--ease);position:absolute;inset:0 auto auto 0}.catalogue__shot[data-active]{opacity:1}@media (hover:none){.catalogue__preview{display:none}}@media (prefers-reduced-motion:reduce){.fan__slot,.fan__stage,.catalogue__preview{transform:none!important}.catalogue__preview{display:none}.catalogue__row{transition:none}}.prose{max-width:70ch}.prose h2,.prose h3,.prose h4{margin-top:2rem;scroll-margin-top:1rem}.prose ul,.prose ol,.legal__body ol,.legal__body ul:not([class]){margin:0 0 1em;padding-left:1.4rem}.prose-list{list-style:revert!important;margin:0 0 1em!important;padding-left:1.4rem!important}ol.prose-list{list-style-type:decimal!important}.prose-list li::marker{color:var(--muted)}.prose li+li{margin-top:.35rem}.prose blockquote{border-left:3px solid var(--accent);color:var(--muted);margin:1.5rem 0;padding-left:1rem}.prose img{border-radius:var(--radius);margin-block:1.5rem}.post__header{margin:1.5rem 0 2rem}.post__cover{border-radius:var(--radius);width:100%;margin-bottom:2rem}.legal{max-width:760px;padding-bottom:3rem;line-height:1.75}.legal h1{letter-spacing:-.025em;font-weight:650}.legal__header{border-bottom:1px solid var(--border);margin-bottom:2rem;padding-top:1.5rem}.legal__header h1{font-size:clamp(1.9rem,4vw,2.6rem)}.legal__meta{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:1.5rem}.legal__body h2{margin-top:2rem;font-size:1.35rem}.legal__footer{border-top:1px solid var(--border);margin-top:3rem;padding-top:1.5rem}.legal__footer-title{font-size:1rem}@media print{:root{--bg:#fff;--surface:#fff;--text:#000;--muted:#333;--link:#000;--border:#999;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.site-header,.site-footer,.skip-link,.preview-bar,.breadcrumbs,.legal__footer{display:none!important}body{background:#fff;font-size:11pt}body:after{display:none}.legal{max-width:none;padding:0}.legal a[href^=mailto\:]:after,.legal__body a[href^=http]:after{content:" (" attr(href) ")";font-size:.85em}}
