@font-face{font-family:League Spartan;font-style:normal;font-weight:700;font-display:swap;src:url(../media/9b54134352eab360-s.10hsp5uob50t_.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:League Spartan;font-style:normal;font-weight:700;font-display:swap;src:url(../media/d67088d4a05ec385-s.21-85hpu1rtwe.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:League Spartan;font-style:normal;font-weight:700;font-display:swap;src:url(../media/dc6542f7bf5562fe-s.p.32snlzrbv4loj.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:League Spartan Fallback;src:local(Arial);ascent-override:75.47%;descent-override:23.72%;line-gap-override:0.0%;size-adjust:92.75%}.w2IZpq_className{font-family:League Spartan,League Spartan Fallback;font-style:normal;font-weight:700}.w2IZpq_variable{--font-display:"League Spartan", "League Spartan Fallback"}
@font-face{font-family:Figtree;font-style:italic;font-weight:400;font-display:swap;src:url(../media/cec8c5a80c39deb9-s.33v-0ifip0z2g.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:Figtree;font-style:italic;font-weight:400;font-display:swap;src:url(../media/363d72056bb03231-s.p.0a2480i8-ibs2.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:Figtree;font-style:italic;font-weight:600;font-display:swap;src:url(../media/cec8c5a80c39deb9-s.33v-0ifip0z2g.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:Figtree;font-style:italic;font-weight:600;font-display:swap;src:url(../media/363d72056bb03231-s.p.0a2480i8-ibs2.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:Figtree;font-style:italic;font-weight:700;font-display:swap;src:url(../media/cec8c5a80c39deb9-s.33v-0ifip0z2g.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:Figtree;font-style:italic;font-weight:700;font-display:swap;src:url(../media/363d72056bb03231-s.p.0a2480i8-ibs2.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:Figtree;font-style:normal;font-weight:400;font-display:swap;src:url(../media/4032351b19cb998e-s.19g-lkcx7iw64.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:Figtree;font-style:normal;font-weight:400;font-display:swap;src:url(../media/cb4b92673aedbbad-s.p.0-95eo-012xnf.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:Figtree;font-style:normal;font-weight:600;font-display:swap;src:url(../media/4032351b19cb998e-s.19g-lkcx7iw64.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:Figtree;font-style:normal;font-weight:600;font-display:swap;src:url(../media/cb4b92673aedbbad-s.p.0-95eo-012xnf.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:Figtree;font-style:normal;font-weight:700;font-display:swap;src:url(../media/4032351b19cb998e-s.19g-lkcx7iw64.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:Figtree;font-style:normal;font-weight:700;font-display:swap;src:url(../media/cb4b92673aedbbad-s.p.0-95eo-012xnf.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:Figtree Fallback;src:local(Arial);ascent-override:94.32%;descent-override:24.82%;line-gap-override:0.0%;size-adjust:100.72%}.nV49zq_className{font-family:Figtree,Figtree Fallback}.nV49zq_variable{--font-text:"Figtree", "Figtree Fallback"}
@font-face{font-family:Caveat;font-style:normal;font-weight:600;font-display:swap;src:url(../media/974981e1eca6835f-s.09x_m4nagdesf.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:Caveat;font-style:normal;font-weight:600;font-display:swap;src:url(../media/25956f05b5455a57-s.2wbvw_buzqzvz.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Caveat;font-style:normal;font-weight:600;font-display:swap;src:url(../media/cfea0ed4771e6999-s.0rk4w-o65wlzl.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:Caveat;font-style:normal;font-weight:600;font-display:swap;src:url(../media/8365a24fee21d08d-s.p.2dim39isyjvqg.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:Caveat Fallback;src:local(Arial);ascent-override:124.77%;descent-override:38.99%;line-gap-override:0.0%;size-adjust:76.94%}.L8kAaa_className{font-family:Caveat,Caveat Fallback;font-style:normal;font-weight:600}.L8kAaa_variable{--font-hand:"Caveat", "Caveat Fallback"}
:root{--bg:#f4f6f7;--card:#fff;--surface:#ecf0f2;--surface-2:#dfe7ea;--line:#e2e8eb;--ink:#1f3038;--muted:#5d6b72;--accent:#0d7480;--accent-2:#3fd0c9;--sun:#f2b632;--coral:#ff7a63;--accent-ink:#fff;--display:var(--font-display), "League Spartan", "Arial Black", sans-serif;--text:var(--font-text), "Figtree", "Helvetica Neue", Arial, sans-serif;--hand:var(--font-hand), "Caveat", "Comic Sans MS", cursive;--step-small:.875rem;--step-body:1rem;--step-lead:1.25rem;--step-head:clamp(2rem, 7cqi, 3.5rem);--pad:18px;--radius:22px;--tabbar:104px;--ease:cubic-bezier(.2, .7, .1, 1);--spring:cubic-bezier(.34, 1.56, .64, 1);--shadow:0 1px 2px #1020280f, 0 8px 24px #1020280f}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;height:100%}body{background:var(--bg);min-height:100%;color:var(--ink);font-family:var(--text);font-size:var(--step-body);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;margin:0;line-height:1.5}img,svg{max-width:100%;display:block}img{height:auto}figure,h1,h2,h3,p,ul,ol,dl,dd{margin:0}ul,ol{padding:0;list-style:none}a{color:inherit;text-underline-offset:.18em}button,input{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}::selection{background:var(--accent);color:var(--accent-ink)}kbd{font-family:var(--text)}[hidden]{display:none!important}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip{z-index:50;background:var(--ink);color:#fff;border-radius:999px;padding:12px 18px;position:fixed;top:12px;left:12px}.skip:not(:focus){clip:rect(0 0 0 0);width:1px;height:1px;padding:0;overflow:hidden}.head{font-family:var(--display);font-weight:700;font-size:var(--step-head);letter-spacing:-.04em;line-height:.95}.sub{color:var(--muted);max-width:52ch}.kicker{font-family:var(--display);letter-spacing:-.03em;margin:40px 0 14px;font-size:1.375rem}.scribble{font-family:var(--hand);color:var(--coral);font-size:1.25rem;line-height:1}.btn{background:var(--accent);min-height:50px;color:var(--accent-ink);transition:transform .2s var(--ease), background-color .2s;border:0;border-radius:999px;align-items:center;gap:10px;padding:0 24px;font-weight:600;text-decoration:none;display:inline-flex}.btn span{transition:transform .2s var(--ease)}.btn:hover{background:var(--ink)}.btn:hover span{transform:translate(4px)}.btn:active{transform:scale(.96)}.btn-ghost{color:var(--ink);box-shadow:inset 0 0 0 2px var(--ink);background:0 0}.btn-ghost:hover{background:var(--ink);color:#fff}.btn-ghost:hover span{transform:translateY(3px)}.btn-small{min-height:42px;padding:0 18px;font-size:.9375rem}.icon-btn{background:var(--surface);width:40px;height:40px;color:var(--ink);transition:background-color .2s, transform .2s var(--ease);border:0;border-radius:50%;flex:none;place-items:center;display:grid}.icon-btn:hover{background:var(--surface-2)}.icon-btn:active{transform:scale(.92)}.icon-btn svg,.nav-i svg,.cv-link svg{width:20px;height:20px}.avatar{background:var(--accent);color:#fff;width:44px;height:44px;font-family:var(--display);letter-spacing:-.02em;box-shadow:0 0 0 3px #fff, 0 0 0 5px var(--sun);border-radius:50%;flex:none;place-items:center;font-size:1rem;font-weight:700;display:grid}.avatar-s{width:34px;height:34px;box-shadow:0 0 0 2px #fff, 0 0 0 4px var(--sun);font-size:.8125rem}.app{background:var(--bg);grid-template-rows:auto 1fr auto;grid-template-areas:"bar""main""nav";min-height:100dvh;display:grid;position:relative}.js .app{height:100dvh;min-height:0;position:fixed;inset:0;overflow:clip}.appbar{z-index:4;padding:calc(10px + env(safe-area-inset-top)) var(--pad) 10px;background:#f4f6f7eb;border-bottom:1px solid #0000;grid-area:bar;align-items:center;gap:12px;transition:border-color .2s;display:flex;position:relative}.app.scrolled .appbar{border-color:var(--line)}.appbar-me{border-radius:50%;text-decoration:none}.appbar-t{font-family:var(--display);letter-spacing:-.03em;flex:1;font-size:1.25rem;font-weight:700;line-height:1}.nav{z-index:6;padding:30px 12px calc(10px + env(safe-area-inset-bottom));pointer-events:none;grid-area:nav;margin-top:-30px;position:relative}.lights,.me,.nav-foot,.nav kbd{display:none}.nav-track{pointer-events:auto;--glide:.52s cubic-bezier(.5, 1.5, .45, 1);position:relative}.nav-bg{filter:drop-shadow(0 12px 22px #0d748029)drop-shadow(0 2px 4px #10202812);background:#fff;border-radius:26px;position:absolute;inset:0}.nav-clip{border-radius:0 0 26px 26px;position:absolute;inset:-40px 0 0;overflow:hidden}.nav-bg{transition:border-radius .26s var(--ease)}.nav-track[data-edge=start] .nav-bg{border-top-left-radius:0}.nav-track[data-edge=end] .nav-bg{border-top-right-radius:0}.nav-hump,.nav-orb{width:20%;height:0;transform:translateX(calc(var(--i,0) * 100%));transition:transform var(--glide);justify-content:center;display:flex;position:absolute;top:0;left:0;overflow:visible}.nav-hump{top:40px}.nav-hump svg{fill:#fff;width:96px;max-width:none;height:31px;position:absolute;bottom:-1px}.nav-orb{z-index:1}.nav-orb i{background:radial-gradient(circle at 30% 25%, #2bb3b4 0, var(--accent) 55%, #075a64 100%);border-radius:50%;width:50px;height:50px;position:absolute;top:-25px;box-shadow:0 8px 18px -4px #0d74808c,inset 0 1px 1px #ffffff59}.nav-list{z-index:2;grid-template-columns:repeat(5,1fr);display:grid;position:relative}.nav-i{color:#8b979d;text-align:center;white-space:nowrap;justify-items:center;gap:4px;padding:12px 2px 10px;font-size:.6875rem;font-weight:600;line-height:1.1;text-decoration:none;transition:color .25s;display:grid;position:relative}.nav-i svg{z-index:1;width:22px;height:22px;transition:transform var(--glide,.4s var(--spring)), color .25s;position:relative}.nav-i span{transition:transform .3s var(--ease)}.nav-i:before{display:none}.nav-i[aria-current=page]{color:var(--accent);font-weight:700}.nav-i[aria-current=page] svg{color:#fff;transform:translateY(-23px)scale(1.04)}.nav-i[aria-current=page] span{transform:translateY(1px)}.nav-i:not([aria-current]):active svg{transform:scale(.85)}@media (max-width:759px){.nav-i[aria-current=page] .ic{--ic-accent:var(--sun)}}.screens{outline:none;grid-area:main;min-height:0;position:relative}.js .screens{overflow:clip}.screen{container:pane/inline-size}.js .screen{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;visibility:hidden;opacity:0;transition:opacity .26s var(--ease), transform .36s var(--ease), visibility 0s .36s;position:absolute;inset:0;overflow:hidden auto;transform:translate(16px)}.js .screen.on{visibility:visible;opacity:1;transition:opacity .26s var(--ease), transform .36s var(--ease), visibility 0s;transform:none}.js .screen.back{transform:translate(-16px)}.pad{padding:8px var(--pad) 170px;max-width:1180px;margin:0 auto}.screen-head{gap:12px;padding:16px 0 24px;display:grid}.hero{gap:24px;padding-top:12px;display:grid}.hero-intro{justify-items:start;gap:16px;display:grid}.hello{color:var(--accent);align-items:center;gap:6px;font-size:1.125rem;font-weight:600;display:flex}.wave{transform-origin:70% 80%;display:inline-block}.js .wave{animation:2.4s ease-in-out 1s 2 wave}@keyframes wave{10%,30%{transform:rotate(16deg)}20%,40%{transform:rotate(-8deg)}50%,to{transform:none}}.hero-h{font-family:var(--display);letter-spacing:-.045em;max-width:11ch;font-size:clamp(2.5rem,11cqi,4.75rem);font-weight:700;line-height:.92}.hero-p{color:#33464e;max-width:46ch;font-size:1.0625rem}.hero-actions,.facts{flex-wrap:wrap;gap:10px;display:flex}.facts div{background:var(--card);box-shadow:var(--shadow);border-radius:16px;padding:10px 16px;display:grid}.facts dt{color:var(--muted);order:2;font-size:.8125rem}.facts dd{font-family:var(--display);letter-spacing:-.03em;margin:0;font-size:1.5rem;font-weight:700;line-height:1.1}.stage{background:var(--stage);transition:background-color .7s var(--ease);border-radius:28px;gap:18px;padding:28px 16px 18px;display:grid;position:relative;overflow:hidden}.stage:before{content:"";pointer-events:none;background:radial-gradient(circle at 70% 20%,#ffffff38,#0000 55%);position:absolute;inset:0}.rig{aspect-ratio:1/.86;width:100%;max-width:560px;transition:opacity .26s, transform .36s var(--ease);justify-self:center;position:relative}.rig.out{opacity:0;transform:translateY(14px)scale(.98)}.mock{filter:drop-shadow(0 18px 24px #08101652);width:100%;height:auto;display:block}.r{height:auto;display:block;position:absolute}.js .r{animation:pop .56s var(--ease) both}.r-web{box-shadow:0 18px 40px #08101659}.r-web img{width:100%;height:auto}.rig[data-layout=all] .r-web{width:82%;top:2%;left:0}.rig[data-layout=all] .r-tab{z-index:1;width:36%;animation-delay:80ms;bottom:0;left:40%}.rig[data-layout=all] .r-ph1{z-index:2;width:22%;animation-delay:.16s;bottom:0;right:0}.rig[data-layout=web] .r-web{width:84%;top:6%;left:0}.rig[data-layout=web] .r-ph1{z-index:2;width:25%;animation-delay:.1s;bottom:0;right:20%}.rig[data-layout=web] .r-ph2{z-index:1;width:22%;animation-delay:.18s;bottom:5%;right:0}.rig[data-layout=mobile] .r-ph1{z-index:2;width:34%;bottom:0;left:33%}.rig[data-layout=mobile] .r-ph2{width:29%;animation-delay:90ms;bottom:5%;left:6%;transform:rotate(-6deg)}.rig[data-layout=mobile] .r-ph3{width:29%;animation-delay:.16s;bottom:5%;right:6%;transform:rotate(6deg)}.switch{scrollbar-width:none;justify-content:safe center;gap:6px;padding:2px;display:flex;position:relative;overflow-x:auto}.switch::-webkit-scrollbar{display:none}.switch button{color:#fff;transition:background-color .25s, color .25s, transform .2s var(--ease);background:#0000004d;border:0;border-radius:999px;flex:none;padding:9px 14px;font-size:.875rem;font-weight:600}.switch button:hover{background:#00000080}.switch button:active{transform:scale(.94)}.switch button[aria-selected=true]{color:var(--ink);background:#fff}.widgets{grid-template-columns:1fr 1fr;gap:12px;display:grid}.widget{border-radius:var(--radius);background:var(--card);min-height:168px;box-shadow:var(--shadow);transition:transform .3s var(--spring), box-shadow .3s;align-content:end;gap:4px;padding:16px;text-decoration:none;display:grid;position:relative;overflow:hidden}a.widget:hover{transform:translateY(-4px)rotate(-.6deg);box-shadow:0 2px 4px #1020280f,0 18px 40px #1020281f}a.widget:active{transform:scale(.97)}.widget b{font-family:var(--display);letter-spacing:-.03em;font-size:1.25rem;line-height:1.02}.w-k{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:.75rem;font-weight:700}.w-s{color:var(--muted);font-size:.875rem}.w-story{background:#fff4d6}.mini-vinyl{width:78px;position:absolute;top:-16px;right:-16px}@container pane (min-width:560px){.mini-vinyl{width:104px;top:-18px;right:-18px}}.js .mini-vinyl{animation:6s linear infinite spin}.w-work{background:#e6f4f5;grid-row:span 2;min-height:348px}.w-phones{justify-content:center;height:62%;display:flex;position:absolute;inset:14px 0 auto}.w-phones img{width:34%;height:auto;transition:transform .4s var(--spring);align-self:flex-start;margin:0 -7%}.w-phones img:first-child{transform:rotate(-9deg)translateY(16px)}.w-phones img:nth-child(2){z-index:1;position:relative}.w-phones img:nth-child(3){transform:rotate(9deg)translateY(16px)}.w-work:hover .w-phones img:first-child{transform:rotate(-14deg)translate(-8px,10px)}.w-work:hover .w-phones img:nth-child(2){transform:translateY(-8px)}.w-work:hover .w-phones img:nth-child(3){transform:rotate(14deg)translate(8px,10px)}.w-fun{background:var(--ink);color:#fff}.w-fun .w-k,.w-fun .w-s{color:#a9bcc3}.w-row{align-items:center;gap:10px;margin-top:8px;display:flex}.w-more{color:var(--accent-2);font-size:.8125rem;font-weight:600;text-decoration:none}.w-more:hover{text-decoration:underline}.w-hello{background:#ffe6e0}.w-fake{height:38px;color:var(--muted);white-space:nowrap;background:#fff;border-radius:999px;align-items:center;margin-top:8px;padding:0 12px;font-size:.8125rem;display:flex;overflow:hidden}.w-fake i{background:var(--accent);width:2px;height:16px;margin-left:2px;animation:1s step-end infinite caret}@keyframes caret{50%{opacity:0}}.worked{color:var(--muted);font-size:var(--step-small);margin-top:32px}.worked span{color:var(--ink);font-weight:600;display:block}.play-btn{background:var(--sun);width:44px;height:44px;color:var(--ink);transition:transform .25s var(--spring), background-color .2s;border:0;border-radius:50%;flex:none;place-items:center;display:grid}.play-btn:hover{transform:scale(1.08)}.play-btn:active{transform:scale(.9)}.play-btn svg{fill:currentColor;width:20px;height:20px}.eq{align-items:flex-end;gap:3px;height:18px;display:inline-flex}.eq i{background:var(--accent-2);border-radius:2px;width:4px;height:30%;transition:height .3s}.playing .eq i{animation:.9s ease-in-out infinite alternate eq}.eq i:nth-child(2){animation-delay:-300ms!important}.eq i:nth-child(3){animation-delay:-600ms!important}.eq i:nth-child(4){animation-delay:-150ms!important}.eq i:nth-child(5){animation-delay:-450ms!important}@keyframes eq{0%{height:20%}to{height:100%}}.chips{z-index:3;scrollbar-width:none;padding:10px var(--pad);background:var(--bg);box-shadow:0 1px 0 var(--line);gap:6px;display:flex;position:sticky;top:0;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chips a{background:var(--card);box-shadow:inset 0 0 0 1px var(--line);color:var(--muted);transition:background-color .2s, color .2s, transform .2s var(--spring);border-radius:999px;flex:none;padding:7px 14px;font-size:.875rem;font-weight:600;text-decoration:none}.chips a:hover{color:var(--ink)}.chips a[aria-current=true]{background:var(--ink);color:#fff;box-shadow:none;transform:scale(1.04)}.story-intro{gap:20px;padding:16px 0 8px;display:grid}.col{color:#33464e;gap:1em;max-width:44ch;display:grid}.col-first{color:var(--ink);font-size:1.125rem;font-weight:600}.timeline{gap:56px;padding:40px 0 0 22px;display:grid;position:relative}.timeline:before{content:"";background:repeating-linear-gradient(var(--surface-2) 0 8px, transparent 8px 14px);width:2px;position:absolute;top:48px;bottom:0;left:5px}.chapter{gap:22px;scroll-margin-top:64px;display:grid;position:relative}.chapter:before{content:"";background:var(--bg);width:12px;height:12px;box-shadow:inset 0 0 0 3px var(--accent);transition:background-color .3s, transform .3s var(--spring);border-radius:50%;position:absolute;top:14px;left:-22px}.chapter.here:before{background:var(--accent);transform:scale(1.3)}.chapter-text{gap:12px;display:grid}.year{font-family:var(--display);letter-spacing:-.045em;color:var(--accent);font-variant-numeric:tabular-nums;font-size:clamp(2.75rem,12cqi,5.5rem);font-weight:700;line-height:.85}.chapter-h{font-family:var(--display);letter-spacing:-.04em;max-width:14ch;font-size:clamp(1.75rem,5.5cqi,2.75rem);font-weight:700;line-height:.95}.chapter-p{color:#33464e;gap:1em;max-width:56ch;display:grid}.chapter-p p:first-child{color:var(--ink);font-size:1.125rem;line-height:1.4}.frag{background:var(--stage);border-radius:var(--radius);padding:24px;position:relative;overflow:hidden}.frag-record{place-items:center;padding:36px 24px;display:grid}.frag-record svg{cursor:grab;width:min(260px,78%)}.js .frag-record svg{animation:12s linear infinite spin}.frag-record.scratch svg{animation-duration:.6s;animation-direction:reverse}.frag-record .scribble{color:var(--ink);position:absolute;bottom:14px;right:18px;transform:rotate(-6deg)}@keyframes spin{to{transform:rotate(360deg)}}.frag-code pre{color:#e6edf0;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.8125rem;line-height:1.7}.frag-code .c{color:#c9eef0}.frag-domains{padding:8px}.domains{border-radius:calc(var(--radius) - 8px);background:#fff;overflow:hidden}.domains li+li{border-top:1px solid var(--surface)}.domains a,.domains .row{grid-template-columns:1fr auto;align-items:center;gap:4px 12px;padding:14px;text-decoration:none;transition:background-color .2s;display:grid}.domains a:hover{background:var(--surface)}.domains em{color:#136c3b;background:#dff3e7;border-radius:999px;padding:2px 10px;font-size:.8125rem;font-style:normal;font-weight:600}.domains em.ai{color:#0b4f57;background:#d5eef0}.domains b{font-weight:600}.domains span{color:var(--muted);grid-column:1/-1;font-size:.875rem;line-height:1.45}.frag-phones{grid-template-columns:1fr 1fr;align-items:start;gap:16px;padding:28px 24px 32px;display:grid}.frag-phones .mock:nth-child(2){margin-top:40px}.frag-three{grid-template-columns:1fr 1fr 1fr;gap:10px}.frag-three .mock:nth-child(3){margin-top:18px}.frag-phones .mock{transition:transform .5s var(--spring)}.frag-phones:hover .mock:first-child{transform:translateY(-8px)rotate(-2deg)}.frag-phones:hover .mock:nth-child(2){transform:translateY(8px)rotate(2deg)}.frag-sleeve{place-items:center;padding:32px 24px;display:grid}.sleeve{aspect-ratio:1;background:var(--sun);width:min(380px,100%);color:var(--ink);transition:transform .5s var(--spring);grid-template-rows:auto auto 1fr;gap:6px;padding:24px;display:grid}.frag-sleeve:hover .sleeve{transform:rotate(-3deg)scale(1.02)}.sleeve-t{font-family:var(--display);letter-spacing:-.04em;font-size:clamp(1.5rem,5cqi,2.25rem);font-weight:700;line-height:.95}.sleeve-s{font-size:var(--step-small);font-weight:600}.sleeve-list{align-self:end;gap:7px;display:grid}.sleeve-list li{justify-content:space-between;gap:12px;font-size:.9375rem;display:flex}.sleeve-list b{font-weight:600}.sleeve-list span{color:#5a4a12}.growth{background:var(--card);box-shadow:var(--shadow);border-radius:28px;margin-top:72px;padding:28px 22px 24px;scroll-margin-top:64px}.growth-head{gap:6px;padding-bottom:20px;display:grid}.growth-n{font-family:var(--display);letter-spacing:-.05em;color:var(--accent);font-size:clamp(5rem,22cqi,10rem);font-weight:700;line-height:.85}.growth-h{font-family:var(--display);letter-spacing:-.03em;font-size:1.5rem;font-weight:700;line-height:1}.growth-note{color:var(--muted);max-width:52ch;min-height:3em;font-size:.9375rem}.bars{gap:6px;display:grid}.bars button{height:32px;width:var(--w);min-width:84px;color:var(--ink);font-variant-numeric:tabular-nums;transform-origin:0;background:#c3d0d5;border:0;border-radius:999px;justify-content:space-between;align-items:center;padding:0 12px;font-size:.875rem;font-weight:600;transition:background-color .2s;display:flex}.bars button.now{background:var(--accent);color:#fff}.bars button:hover,.bars button[aria-pressed=true]{background:var(--ink);color:#fff}.js .bars button{transform:scaleX(0)}.js .bars.in button{transition:transform .9s var(--ease) calc(var(--i) * 60ms), background-color .2s;transform:none}.next-up{border-radius:var(--radius);background:var(--ink);color:#a9bcc3;transition:transform .3s var(--spring), background-color .2s;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin-top:56px;padding:22px 24px;font-size:.875rem;font-weight:600;text-decoration:none;display:flex}.next-up b{color:#fff;font-family:var(--display);letter-spacing:-.03em;font-size:1.5rem;line-height:1.1}.next-up span{color:var(--sun);transition:transform .3s var(--spring);margin-left:auto;font-size:1.5rem}.next-up:hover{background:var(--accent)}.next-up:hover span{transform:translate(6px)}.seg{z-index:3;background:#e2e8ebf2;border-radius:999px;grid-template-columns:repeat(3,1fr);max-width:460px;margin-bottom:20px;padding:4px;display:grid;position:sticky;top:8px}.seg button{z-index:1;min-height:40px;color:var(--muted);background:0 0;border:0;border-radius:999px;font-size:.875rem;font-weight:600;transition:color .25s;position:relative}.seg button[aria-selected=true]{color:var(--ink)}.seg-pill{width:calc(33.3333% - 2.66667px);transform:translateX(calc(var(--seg,0) * 100%));transition:transform .38s var(--spring);background:#fff;border-radius:999px;position:absolute;top:4px;bottom:4px;left:4px;box-shadow:0 2px 8px #1020281f}.panel{animation:rise .42s var(--ease) both}@keyframes rise{0%{opacity:0;transform:translateY(12px)}}.apps{grid-template-columns:1fr 1fr;gap:12px;display:grid}.app-card{text-align:left;aspect-ratio:3/4;border-radius:var(--radius);background:var(--tint);width:100%;transition:transform .3s var(--spring), box-shadow .3s;animation:pop .42s var(--ease) both;animation-delay:calc(var(--i) * 45ms);border:0;grid-template-rows:1fr auto;padding:0;display:grid;position:relative;overflow:hidden}.app-card:hover{box-shadow:0 18px 36px -12px var(--tint);transform:translateY(-4px)}.app-card:active{transform:scale(.97)}.app-card-shot{position:relative;overflow:hidden}.app-card-shot img{width:58%;transition:transform .5s var(--spring);filter:drop-shadow(0 12px 18px #0000004d);position:absolute;top:16px;left:50%;transform:translate(-50%)rotate(-4deg)}.app-card:hover .app-card-shot img{transform:translate(-50%)translateY(-10px)rotate(0)}.app-card-t{background:#fffffff5;gap:2px;padding:12px 14px 14px;display:grid;position:relative}.app-card-t b{font-family:var(--display);letter-spacing:-.02em;font-size:1.125rem;line-height:1.05}.app-card-t span{color:var(--muted);font-size:.75rem;line-height:1.3}.badge{z-index:1;background:#fff;border-radius:999px;padding:3px 9px;font-size:.6875rem;font-weight:700;position:absolute;top:10px;left:10px}.badge-mine{background:var(--sun)}@keyframes pop{0%{opacity:0;transform:translateY(14px)scale(.98)}}.sites{gap:20px;display:grid}.site{border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow);display:grid;overflow:hidden}.site-text{justify-items:start;gap:8px;padding:20px;display:grid}.site-h{font-family:var(--display);letter-spacing:-.03em;font-size:1.5rem;font-weight:700;line-height:1}.site-k{color:var(--muted);font-size:var(--step-small);font-weight:600}.site-text p:not(.site-k){color:#33464e;max-width:52ch}.site-go{min-height:44px;color:var(--accent);transition:gap .2s var(--ease), color .2s;align-items:center;gap:8px;font-weight:600;text-decoration:none;display:inline-flex}.site-go:hover{color:var(--ink);gap:14px}.site-status{align-items:center;gap:8px;min-height:44px;font-weight:600;display:inline-flex}.site-status:before{content:"";background:var(--sun);border-radius:50%;width:10px;height:10px;animation:1.6s ease-in-out infinite blink}@keyframes blink{50%{opacity:.3}}.site-media{background:var(--stage);padding:22px 22px 34px;display:block;position:relative;overflow:hidden}.browser{background:#fff;border-radius:10px;width:84%;display:block;overflow:hidden}.browser-bar{background:#e7ebee;align-items:center;gap:5px;height:24px;padding:0 10px;display:flex}.browser-bar i{background:#ff5f57;border-radius:50%;width:8px;height:8px}.browser-bar i:nth-child(2){background:#febc2e}.browser-bar i:nth-child(3){background:#28c840}.browser-url{color:#5d6b72;white-space:nowrap;text-overflow:ellipsis;background:#fff;border-radius:5px;flex:1;max-width:60%;height:15px;margin-left:8px;padding:0 6px;font-size:10px;line-height:15px;overflow:hidden}.browser img{width:100%}.shot-m{width:26%;transition:transform .6s var(--spring);position:absolute;bottom:12px;right:18px}.site-media:hover .shot-m{transform:translateY(-10px)rotate(-3deg)}.ledger{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:6px 18px}.ledger li+li{border-top:1px solid var(--surface)}.ledger li.gap{border-top:6px solid var(--surface)}.ledger a{transition:transform .22s var(--ease);grid-template-columns:1fr auto;column-gap:16px;padding:13px 0;text-decoration:none;display:grid}.ledger b{font-weight:600}.ledger span{color:var(--muted);grid-row:2;font-size:.875rem}.ledger em{font-variant-numeric:tabular-nums;color:var(--muted);grid-area:1/2;font-size:.875rem;font-style:normal}.ledger li[data-app] em:after{content:" · screens";color:var(--accent);font-weight:600}.ledger a:hover{transform:translate(6px)}.fun-grid{gap:14px;display:grid}.player{--art:#f2b632;background:var(--ink);color:#fff;border-radius:28px;gap:18px;padding:22px;display:grid;position:relative;overflow:clip}.player:before{content:"";background:radial-gradient(circle at 30% 30%, var(--art), transparent 45%);opacity:.35;pointer-events:none;transition:background .6s;position:absolute;inset:-40%}.turntable{aspect-ratio:1;justify-self:center;width:min(240px,72%);position:relative}.vinyl{filter:drop-shadow(0 12px 22px #0006);width:100%}.js .vinyl{animation:3s linear infinite paused spin}.playing .vinyl{animation-play-state:running}.vinyl-label{transition:fill .5s}.arm{transform-origin:73% 9%;width:26%;transition:transform .7s var(--spring);position:absolute;top:-6%;right:-14%;transform:rotate(-24deg)}.playing .arm{transform:rotate(0)}.player-info{text-align:center;justify-items:center;gap:4px;display:grid;position:relative}.player-k{text-transform:uppercase;letter-spacing:.1em;color:#a9bcc3;font-size:.75rem;font-weight:700}.player-t{font-family:var(--display);letter-spacing:-.03em;margin-top:4px;font-size:1.75rem;line-height:1}.player-a{color:#c8d6db}.player .eq{margin:10px 0 4px}.controls{align-items:center;gap:18px;margin-top:6px;display:flex}.ctl{color:#fff;width:44px;height:44px;transition:background-color .2s, transform .2s var(--spring);background:#ffffff1a;border:0;border-radius:50%;place-items:center;display:grid}.ctl:hover{background:#fff3}.ctl:active{transform:scale(.88)}.ctl svg{fill:currentColor;width:18px;height:18px}.play-xl{width:64px;height:64px}.play-xl svg{width:28px;height:28px}.listen{color:#a9bcc3;margin-top:12px;font-size:.8125rem}.listen a{color:var(--accent-2);font-weight:600;text-decoration:none}.listen a:hover{text-decoration:underline}.playlist-card,.game{background:var(--card);box-shadow:var(--shadow);border-radius:28px;padding:20px}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;margin-bottom:10px;display:flex}.card-head h3{font-family:var(--display);letter-spacing:-.03em;font-size:1.5rem}.playlist{counter-reset:n}.track{text-align:left;width:100%;transition:background-color .2s, transform .2s var(--spring);background:0 0;border:0;border-radius:14px;grid-template-columns:22px 44px 1fr auto;align-items:center;gap:12px;padding:8px;display:grid}.track:hover{background:var(--surface)}.track:active{transform:scale(.98)}.track-n{font-variant-numeric:tabular-nums;color:var(--muted);text-align:center;font-size:.875rem}.track-art{background:var(--c);color:#fff;width:44px;height:44px;font-family:var(--display);border-radius:10px;place-items:center;font-size:1rem;display:grid;box-shadow:inset 0 0 0 1px #0000000f}.track-t{min-width:0;display:grid}.track-t b{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.track-t span{color:var(--muted);font-size:.8125rem}.track .eq{opacity:0}.track .eq i{background:var(--accent)}.track[aria-current=true]{background:#e6f4f5}.track[aria-current=true] b{color:var(--accent)}.track[aria-current=true] .eq{opacity:1}.playing .track[aria-current=true] .eq i{animation:.9s ease-in-out infinite alternate eq}.hobbies{grid-template-columns:1fr 1fr;gap:12px;display:grid}.hobby{border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow);transition:transform .3s var(--spring);align-content:start;gap:6px;padding:18px;display:grid}.hobby:hover{transform:translateY(-4px)rotate(-1deg)}.hobby:nth-child(2n):hover{transform:translateY(-4px)rotate(1deg)}.hobby-i{background:var(--h);width:48px;height:48px;transition:transform .4s var(--spring);border-radius:16px;place-items:center;margin-bottom:6px;font-size:1.5rem;display:grid}.hobby:hover .hobby-i{transform:rotate(-12deg)scale(1.1)}.hobby b{font-weight:700;line-height:1.2}.hobby span:last-child{color:var(--muted);font-size:.875rem;line-height:1.45}.game{margin-top:14px}.game-q{color:var(--muted);margin-bottom:12px}.game-opts{gap:8px;display:grid}.game-opts button{text-align:left;background:var(--surface);transition:background-color .2s, transform .2s var(--spring);border:0;border-radius:16px;padding:14px 16px;font-weight:600}.game-opts button:hover:not(:disabled){background:var(--surface-2);transform:translate(4px)}.game-opts button:disabled{cursor:default}.game-opts .lie{color:#9c2b17;background:#ffe6e0}.game-opts .truth{color:#136c3b;background:#dff3e7}.game-opts .picked{animation:.4s shake}@keyframes shake{25%{transform:translate(-5px)}75%{transform:translate(5px)}}.game-out{min-height:1.5em;margin:12px 0 10px;font-weight:600}.close{gap:14px;margin-top:14px;display:grid}.letter,.contact{background:var(--card);box-shadow:var(--shadow);border-radius:28px;padding:26px 22px}.letter-col{color:#33464e;gap:1em;font-size:1.0625rem;line-height:1.6;display:grid}.letter mark{background:var(--sun);color:var(--ink);padding:.05em .2em}.sign{font-family:var(--hand);color:var(--ink);margin-top:.4em;font-size:2rem;line-height:1}.sign-role{color:var(--muted);margin-top:-.6em;font-size:.875rem}.contact-col{gap:16px;display:grid}.contact-h{font-family:var(--display);letter-spacing:-.04em;font-size:2rem;font-weight:700;line-height:.98}.contact-h span{color:var(--accent);display:block}.field{position:relative}.field input{background:var(--surface);border:0;border-radius:999px;width:100%;height:58px;padding:0 62px 0 20px;font-size:1rem}.field input:focus{box-shadow:inset 0 0 0 2px var(--accent);outline:none}.field button{background:var(--accent);color:#fff;width:44px;height:44px;transition:transform .2s var(--spring), background-color .2s;border:0;border-radius:50%;place-items:center;display:grid;position:absolute;top:7px;right:7px}.field button:hover{background:var(--ink);transform:translate(3px)}.field-note{font-size:var(--step-small);color:var(--muted)}.rows{gap:14px;margin-top:18px;font-size:.9375rem;display:grid}.rows dt{color:var(--muted);font-size:var(--step-small)}.rows dd{overflow-wrap:anywhere}.rows .clock{font-variant-numeric:tabular-nums;font-weight:700}.chat{overscroll-behavior:contain;gap:10px;max-height:420px;padding:4px 2px;display:grid;overflow-y:auto}.chat-me{background:var(--accent);color:#fff;overflow-wrap:anywhere;max-width:85%;animation:bubble .38s var(--spring) both;transform-origin:100% 100%;border-radius:20px 20px 6px;justify-self:end;padding:10px 14px;font-size:.9375rem;line-height:1.4}.chat-bot{grid-template-columns:36px 1fr;place-items:end start;gap:8px;display:grid}.chat-av{background:var(--sun);border-radius:50%;place-items:center;width:36px;height:36px;display:grid;overflow:hidden}.chat-av svg{width:100%;height:100%}.chat-b{background:var(--surface);max-width:100%;color:var(--ink);animation:bubble .38s var(--spring) both;transform-origin:0 100%;border-radius:20px 20px 20px 6px;gap:8px;padding:10px 14px;font-size:.9375rem;line-height:1.4;display:grid}.chat-b b{font-family:var(--hand);color:var(--accent);margin-right:.15em;font-size:1.25rem;font-weight:600}.chat-hit{background:var(--card);color:var(--ink);text-align:left;border:0;border-radius:14px;gap:2px;padding:10px 12px;text-decoration:none;transition:background-color .2s;display:grid}.chat-hit:hover{background:#fff7e0}.chat-hit b{font-family:var(--body,inherit);color:var(--ink);margin:0;font-size:.9375rem}.chat-hit span{color:var(--muted);font-size:.8125rem}.chat-send{background:var(--ink);color:#fff;min-height:40px;transition:transform .2s var(--spring), background-color .2s;border:0;border-radius:999px;justify-self:start;align-items:center;gap:6px;padding:0 16px;font-size:.875rem;font-weight:600;display:inline-flex}.chat-send:hover{background:var(--accent);transform:translate(2px)}.chat-send svg{width:16px;height:16px}.contact-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.chat-new{background:var(--surface);min-height:36px;color:var(--muted);border:0;border-radius:999px;flex:none;padding:0 14px;font-size:.8125rem;font-weight:600;transition:background-color .2s,color .2s}.chat-new:hover{background:var(--ink);color:#fff}.chat-new:disabled{opacity:.5}.chat-email{grid-template-columns:1fr auto;gap:6px;display:grid}.chat-email input{background:var(--card);border:0;border-radius:999px;min-width:0;height:42px;padding:0 14px;font-size:.9375rem}.chat-email input:focus{box-shadow:inset 0 0 0 2px var(--accent);outline:none}.chat-email input[aria-invalid=true]{box-shadow:inset 0 0 0 2px #d0452b}.chat-email button{background:var(--accent);color:#fff;border:0;border-radius:999px;height:42px;padding:0 16px;font-size:.875rem;font-weight:600}.chat-err{color:#b03a22;grid-column:1/-1;font-size:.8125rem}.chat-dots{grid-auto-flow:column;gap:4px;padding:14px 16px}.chat-dots i{background:var(--muted);border-radius:50%;width:7px;height:7px;animation:1s infinite dot}.chat-dots i:nth-child(2){animation-delay:.15s}.chat-dots i:nth-child(3){animation-delay:.3s}@keyframes dot{0%,60%,to{opacity:.3;transform:none}30%{opacity:1;transform:translateY(-3px)}}.foot{color:var(--muted);gap:4px;margin-top:28px;font-size:.8125rem;display:grid}.np{z-index:7;left:10px;right:96px;bottom:calc(var(--tabbar) + env(safe-area-inset-bottom) + 10px);background:var(--ink);color:#fff;transition:transform .4s var(--spring), opacity .3s;border-radius:18px;align-items:center;gap:10px;padding:6px;display:flex;position:absolute;box-shadow:0 12px 30px #1020284d}.np[data-state=idle]{opacity:0;pointer-events:none;transform:translateY(20px)}.np-open{min-width:0;color:inherit;text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:10px;padding:0;display:flex}.np-art{background:var(--art,var(--sun));border-radius:10px;flex:none;width:38px;height:38px;position:relative;overflow:hidden}.np-art:after{content:"";background:radial-gradient(circle,#16181a 0 18%,#0000 19%),repeating-radial-gradient(circle,#16181a 0 2px,#26292c 2px 4px);border-radius:50%;position:absolute;inset:8px}.js .np-art:after{animation:3s linear infinite paused spin}.playing .np-art:after{animation-play-state:running}.np-t{min-width:0;display:grid}.np-t b{white-space:nowrap;text-overflow:ellipsis;font-size:.875rem;overflow:hidden}.np-t span{color:#a9bcc3;white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}.play-s{width:38px;height:38px}.play-s svg{width:16px;height:16px}.eq-s{height:14px}.eq-s i{width:3px}.bubble{width:max-content;max-width:min(290px,100vw - 24px);color:var(--ink);box-shadow:0 16px 40px #1020282e, 0 0 0 1px var(--line);transform-origin:100% 100%;animation:bubble .38s var(--spring) both;background:#fff;border-radius:20px 20px 6px;margin-bottom:8px;padding:14px 16px;position:relative}@keyframes bubble{0%{opacity:0;transform:scale(.6)translateY(10px)}}.bubble-t{font-size:.9375rem;line-height:1.4}.bubble-t b{font-family:var(--hand);color:var(--accent);margin-right:.15em;font-size:1.375rem;font-weight:600}.bubble-chips{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.bubble-chips:empty{display:none}.bubble-chips button{background:var(--surface);min-height:36px;transition:background-color .2s, transform .2s var(--spring);border:0;border-radius:999px;padding:0 12px;font-size:.8125rem;font-weight:600}.bubble-chips button:hover{background:var(--accent);color:#fff}.bubble-chips button:active{transform:scale(.94)}.bubble-chips .ghost{color:var(--muted);background:0 0}.sheet{background:var(--card);width:100%;max-width:100%;max-height:92dvh;color:var(--ink);border:0;border-radius:28px 28px 0 0;margin:auto 0 0;padding:0;overflow:hidden}.sheet::backdrop{-webkit-backdrop-filter:blur(6px);background:#101c2273}.sheet[open]{animation:sheet-up .42s var(--ease)}.sheet[open]::backdrop{animation:.3s fade}@keyframes sheet-up{0%{transform:translateY(100%)}}@keyframes fade{0%{opacity:0}}.sheet-in{overscroll-behavior:contain;max-height:92dvh;padding-bottom:env(safe-area-inset-bottom);display:grid;overflow-y:auto}.grab{background:var(--surface-2);border-radius:3px;justify-self:center;width:40px;height:5px;margin-top:10px}.sheet-top{align-items:center;gap:12px;padding:14px 18px 4px;display:flex}.app-icon{background:var(--tint,var(--accent));color:#fff;width:52px;height:52px;font-family:var(--display);border-radius:15px;flex:none;place-items:center;font-size:1.5rem;display:grid;box-shadow:inset 0 0 0 1px #00000014}.sheet-title{flex:1;min-width:0}.sheet-title h2{font-family:var(--display);letter-spacing:-.03em;font-size:1.625rem;line-height:1}.sheet-title p{color:var(--muted);margin-top:3px;font-size:.875rem}.shots{scroll-snap-type:x mandatory;scrollbar-width:thin;background:linear-gradient(var(--card), color-mix(in srgb, var(--tint,#0d7480) 14%, var(--card)));gap:14px;padding:18px 18px 22px;display:flex;overflow-x:auto}.shots img{scroll-snap-align:center;filter:drop-shadow(0 12px 18px #10202838);width:min(52vw,230px);height:auto;animation:pop .42s var(--ease) both;flex:none}.shots img:nth-child(2){animation-delay:60ms}.shots img:nth-child(3){animation-delay:.12s}.shots img:nth-child(4){animation-delay:.18s}.sheet-body{gap:14px;padding:4px 18px 22px;display:grid}.sheet-body>p{color:#33464e;max-width:62ch}.tags{flex-wrap:wrap;gap:6px;display:flex}.tags li{background:var(--surface);border-radius:999px;padding:5px 12px;font-size:.8125rem;font-weight:600}.sheet-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.sheet-nav{gap:8px;margin-left:auto;display:flex}.js [data-reveal]{opacity:0;transition:opacity .6s var(--ease), transform .6s var(--ease);transform:translateY(18px)}.js [data-reveal].in{opacity:1;transform:none}@container pane (min-width:560px){.widgets{grid-template-columns:repeat(3,1fr)}.w-work{grid-row:span 2}.apps{grid-template-columns:repeat(3,1fr)}.hobbies{grid-template-columns:repeat(4,1fr)}.close{grid-template-columns:1fr 1fr;align-items:start}.site{grid-template-columns:1.3fr 1fr;align-items:center}.site-media{align-content:center;align-self:stretch;display:grid}.site:nth-child(2n) .site-media{order:2}.build{padding:44px 36px}.letter,.contact{padding:32px}}@container pane (min-width:820px){.pad{padding:16px 36px 140px}.chips{padding:12px 36px}.hero{grid-template-columns:1fr 1.05fr;align-items:center;gap:36px;min-height:min(640px,76dvh)}.widgets{grid-template-columns:repeat(4,1fr)}.widget{min-height:250px}.w-work{grid-row:auto;min-height:250px}.w-phones{height:auto;inset:10px 0 auto}.w-phones img{width:26%}.apps{grid-template-columns:repeat(4,1fr)}.story-intro{grid-template-columns:1fr 1fr;align-items:end;gap:36px}.timeline{gap:96px;padding-left:40px}.timeline:before{left:9px}.chapter{grid-template-columns:5fr 7fr;align-items:start;gap:40px}.chapter:before{left:-40px}.chapter-text{position:sticky;top:76px}.frag{padding:40px}.frag-phones{gap:24px;padding:40px 48px 48px}.fun-grid{grid-template-columns:1fr 1fr;align-items:stretch}.player{align-content:center;padding:36px}.growth{grid-template-columns:1fr;padding:40px;display:grid}.growth-head{grid-template-columns:auto 1fr;align-items:end;column-gap:28px}.growth-n{grid-row:1/3}.growth-note{grid-column:2}.bars{grid-template-columns:repeat(9,1fr);align-items:end;gap:8px;height:300px}.bars button{width:auto;min-width:0;height:var(--h);transform-origin:bottom;border-radius:999px 999px 10px 10px;flex-direction:column;justify-content:flex-start;align-items:center;padding:12px 0 0;font-size:.9375rem}.js .bars button{transform:scaleY(0)}.shots img{width:220px}}@container pane (min-width:1040px){.apps{grid-template-columns:repeat(5,1fr)}.chapter{grid-template-columns:4fr 7fr;gap:64px}}@media (min-width:760px){:root{--pad:28px}.app{grid-template:"nav bar""nav main"1fr/96px 1fr}.nav{pointer-events:auto;padding:calc(18px + env(safe-area-inset-top)) 8px 18px;border-top:0;border-right:1px solid var(--line);background:#fff;flex-direction:column;align-items:center;gap:18px;margin-top:0;display:flex}.me{border-radius:50%;text-decoration:none;display:block}.me-t,.appbar-me{display:none}.appbar{padding-left:32px;padding-right:24px}.appbar-t{font-size:1.5rem}.nav-track{width:100%}.nav-bg,.nav-orb{display:none}.nav-list{grid-template-columns:1fr;gap:6px;width:100%;display:grid}.nav-i{color:var(--muted);white-space:normal}.nav-i:before{content:"";opacity:0;width:56px;transition:transform .3s var(--spring), opacity .2s;background:#d5eef0;border-radius:999px;margin-left:-28px;display:block;position:absolute;left:50%;transform:scaleX(.3)}.nav-i[aria-current=page]:before{opacity:1;transform:none}.nav-i[aria-current=page] svg{color:inherit;transform:translateY(-1px)scale(1.06)}.nav-i{gap:5px;padding:8px 0;font-size:.75rem}.nav-i:before{height:32px;top:5px}.nav-i svg{width:22px;height:22px;margin-top:4px}.nav-foot{justify-items:center;margin-top:auto;display:grid}.cv-link{background:var(--surface);width:48px;height:48px;color:var(--ink);border-radius:16px;place-items:center;text-decoration:none;transition:background-color .2s;display:grid}.cv-link:hover{background:var(--sun)}.cv-link span,.nav-clock{display:none}.np{width:320px;bottom:22px;left:auto;right:112px}.buddy{width:88px;height:88px}.sheet{border-radius:28px;max-width:720px;max-height:88dvh;margin:auto}.sheet[open]{animation:sheet-in .38s var(--spring)}@keyframes sheet-in{0%{opacity:0;transform:translateY(24px)scale(.96)}}.sheet-in{max-height:88dvh}.grab{display:none}.sheet-top{padding:22px 24px 4px}.shots{padding:20px 24px 24px}.sheet-body{padding:4px 24px 26px}}@media (min-width:1180px){body{background:radial-gradient(circle at 12% 18%,#ffe3a3 0,#0000 38%),radial-gradient(circle at 88% 12%,#b7ece6 0,#0000 36%),radial-gradient(circle at 78% 92%,#ffc7bb 0,#0000 38%),radial-gradient(circle at 20% 88%,#cfe0ff 0,#0000 34%),#eef2f3}.js .app{max-width:1520px;height:auto;transition:inset .5s var(--ease), border-radius .5s var(--ease), transform .5s var(--spring), opacity .4s;border-radius:18px;grid-template-columns:264px 1fr;margin:0 auto;inset:28px;box-shadow:0 0 0 1px #1020281a,0 30px 80px -20px #10202859}.js .app.max{border-radius:0;max-width:none;inset:0}.js .app.min{opacity:.6;transform:scale(.92)translateY(30px)}.js .app.nope{animation:.5s nope}@keyframes nope{20%,60%{transform:translate(-10px)}40%,80%{transform:translate(10px)}}.nav{background:#f8fafb;align-items:stretch;gap:14px;padding:16px 14px 18px}.lights{gap:8px;padding:2px 4px 6px;display:flex}.light{background:#ff5f57;border:0;border-radius:50%;width:13px;height:13px;padding:0;position:relative;box-shadow:inset 0 0 0 1px #0000001f}.l-min{background:#febc2e}.l-max{background:#28c840}.light:after{content:"";text-align:center;color:#0000008c;opacity:0;place-items:center;font-size:10px;font-weight:700;line-height:13px;display:grid;position:absolute;inset:0}.lights:hover .light:after{opacity:1}.l-close:after{content:"×"}.l-min:after{content:"–"}.l-max:after{content:"+"}.me{box-shadow:var(--shadow);background:#fff;border-radius:18px;align-items:center;gap:12px;padding:12px;display:flex}.me .avatar{width:42px;height:42px}.me-t{line-height:1.25;display:grid}.me-t b{font-size:.9375rem}.me-t>span{color:var(--muted);align-items:center;gap:6px;font-size:.75rem;display:flex}.dot{background:#28c840;border-radius:50%;width:8px;height:8px;animation:2s infinite ping;box-shadow:0 0 #28c84080}@keyframes ping{70%{box-shadow:0 0 0 7px #28c84000}to{box-shadow:0 0 #28c84000}}.nav-list{gap:2px}.nav-i{color:var(--ink);text-align:left;border-radius:12px;grid-template-columns:22px 1fr auto;place-items:center start;gap:12px;padding:10px 12px;font-size:.9375rem;transition:background-color .2s,color .2s}.nav-i:before{display:none}.nav-i svg{width:20px;height:20px;color:var(--muted);margin:0}.nav-i:hover{background:var(--surface)}.nav-i[aria-current=page]{background:var(--ink);color:#fff}.nav-i[aria-current=page] svg{color:var(--sun);transform:none}.nav kbd{background:var(--surface);min-width:22px;color:var(--muted);text-align:center;border-radius:6px;padding:1px 6px;font-size:.6875rem;font-weight:700;display:block}.nav-i[aria-current=page] kbd{color:#fff;background:#ffffff24}.nav-foot{justify-items:stretch;gap:10px;padding-bottom:82px}.cv-link{width:auto;height:44px;box-shadow:inset 0 0 0 1px var(--line);background:#fff;border-radius:12px;justify-content:center;gap:10px;font-size:.875rem;font-weight:600;display:flex}.cv-link span{display:inline}.nav-clock{color:var(--muted);justify-content:space-between;align-items:baseline;padding:0 4px;font-size:.75rem;display:flex}.nav-clock b{font-family:var(--display);color:var(--ink);font-variant-numeric:tabular-nums;font-size:1rem}.appbar{background:#ffffffe6;padding:14px 28px}.np{width:236px;bottom:18px;left:14px;right:auto}.np[data-state=idle]{opacity:1;pointer-events:auto;transform:none}.buddy{width:96px;height:96px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.js [data-reveal]{opacity:1;transform:none}.js .bars button{transform:none}}.site-btn{font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.site-text .site-go+.site-go{margin-top:-10px}.ic{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:1em;height:1em;overflow:visible}.ic .f{fill:var(--ic-accent,currentColor);stroke:none}.ic .fs{fill:none;stroke:var(--ic-accent,currentColor);stroke-width:2.1px}.nav-i{--ic-accent:var(--sun)}.nav-i[aria-current=page]{--ic-accent:currentColor}@media (min-width:1180px){.nav-i[aria-current=page]{--ic-accent:#fff}}.icon-btn,.cv-link{--ic-accent:var(--accent)}.cv-link:hover{--ic-accent:var(--ink)}.btn span{place-items:center;display:inline-grid}.btn .ic{width:18px;height:18px}.btn-ghost{--ic-accent:var(--accent)}.btn-ghost:hover{--ic-accent:var(--sun)}.next-up span .ic{width:26px;height:26px}.site-go .ic{--ic-accent:var(--sun);width:18px;height:18px}.w-more{align-items:center;gap:6px;display:inline-flex}.w-more .ic{width:14px;height:14px}.listen a{vertical-align:middle;align-items:center;gap:5px;display:inline-flex}.listen .ic{--ic-accent:var(--sun);width:15px;height:15px}.play-btn .ic{width:20px;height:20px}.play-s .ic{width:16px;height:16px}.play-xl .ic{width:28px;height:28px}.ctl .ic{width:18px;height:18px}.field button .ic{--ic-accent:currentColor;width:20px;height:20px}.hit .sw .ic{width:28px;height:28px}.sheet-nav .ic{width:16px;height:16px}.hobby-i{color:var(--ink);--ic-accent:#fff}.hobby-i .ic{stroke-width:1.7px;width:28px;height:28px}.hello .wave{--ic-accent:var(--sun);--ic-on-accent:#fff4d6;width:26px;height:26px;stroke:var(--accent);transform-origin:50% 85%}.bubble-chips button{align-items:center;gap:6px;display:inline-flex}.bubble-chips .ic{--ic-accent:var(--sun);width:15px;height:15px}.bubble-chips button:hover .ic{--ic-accent:#fff}.avatar-photo{background:var(--sun);overflow:hidden}.avatar-photo img,.avatar-photo svg{object-fit:cover;width:100%;height:100%;display:block}.avatar-photo svg{transform:scale(1.22)translateY(6%)}.sp-embed{border-radius:12px;width:100%;max-width:360px;margin-top:14px;display:none;overflow:hidden}.sp-embed.on{display:block}.sp-embed iframe{border:0;border-radius:12px;display:block}.listen{max-width:34ch;line-height:1.5}.track-art{overflow:hidden}.track-art img{object-fit:cover;width:100%;height:100%}.np-art img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.np-art:has(img):after{display:none}.now-card{border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow);animation:pop .5s var(--ease) both;grid-template-columns:64px 1fr auto;align-items:center;gap:14px;margin-bottom:14px;padding:14px 16px;display:grid}.now-card img,.now-art{object-fit:cover;background:var(--surface-2);border-radius:14px;width:64px;height:64px}.now-t{min-width:0;line-height:1.3;display:grid}.now-t b{font-family:var(--display);letter-spacing:-.03em;white-space:nowrap;text-overflow:ellipsis;font-size:1.25rem;overflow:hidden}.now-t>span{color:var(--muted);font-size:.875rem}.now-k{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);align-items:center;gap:6px;font-size:.75rem;font-weight:700;display:flex}.now-k .ic{--ic-accent:var(--muted);width:16px;height:16px}.now-card.live .now-k{color:var(--accent)}.now-card.live .now-k .ic{--ic-accent:#1ed760;animation:1.6s ease-in-out infinite blink}.w-live{text-transform:uppercase;letter-spacing:.08em;color:#a9bcc3;align-items:center;gap:6px;font-size:.6875rem;font-weight:700;display:inline-flex;position:absolute;top:14px;left:16px}.w-live .ic{--ic-accent:#a9bcc3;width:15px;height:15px}.w-live.on{color:#fff}.w-live.on .ic{--ic-accent:#1ed760;animation:1.6s ease-in-out infinite blink}.mascot{z-index:5;right:24px;bottom:calc(var(--tabbar) + env(safe-area-inset-bottom) - 22px);justify-items:end;display:grid;position:absolute}.buddy{touch-action:manipulation;perspective:400px;background:0 0;border:0;width:88px;height:88px;padding:0;position:relative}.b-body{transform-origin:50% 100%;position:absolute;inset:0}.js .b-body{animation:4s ease-in-out infinite idle}@keyframes idle{0%,to{transform:rotate(-2deg)}50%{transform:rotate(2deg)}}.b-face{filter:drop-shadow(0 -2px 8px #1020282e);transform:rotateY(var(--ry,0deg)) rotateX(var(--rx,0deg));transition:transform .26s var(--ease);position:absolute;inset:0}.b-face svg{pointer-events:none;width:100%;height:100%;display:block;overflow:visible}@media (min-width:760px){.mascot{z-index:8;bottom:8px;right:22px}}@media (min-width:1180px){.mascot{right:28px}}.buddy.wow .b-face{animation:wow .52s var(--spring)}@keyframes wow{40%{transform:scale(1.16)rotate(-4deg)}}.b-notes{width:100%;height:100%;fill:var(--coral);stroke:var(--coral);stroke-width:2.5px;stroke-linecap:round;opacity:0;position:absolute;inset:0;overflow:visible}.b-notes path{fill:none}.buddy:hover .b-body{animation-duration:.8s}.buddy:active .b-body{animation:none;transform:scale(.92)}.buddy.talk .b-face{animation:.42s ease-in-out 3 talk}@keyframes talk{50%{transform:rotateY(var(--ry,0deg)) rotateX(var(--rx,0deg)) translateY(-2px) rotate(-3deg)}}.buddy.dance .b-body{animation:.6s ease-in-out infinite alternate dance}.buddy.dance .b-notes{animation:1.8s ease-out infinite notes}@keyframes dance{0%{transform:rotate(-7deg)translateY(0)}to{transform:rotate(7deg)translateY(-5px)}}@keyframes notes{0%{opacity:0;transform:translateY(8px)}30%{opacity:1}to{opacity:0;transform:translateY(-16px)}}.buddy.dizzy .b-body{animation:dizzy .9s var(--ease)}@keyframes dizzy{to{transform:rotate(720deg)}}.buddy.hop .b-body{animation:hop .52s var(--spring)}@keyframes hop{40%{transform:translateY(-14px)scaleY(1.05)}70%{transform:translateY(0)scaleY(.92)}}.fe-blink{transform-box:fill-box;transform-origin:50%}.js .fe-blink,.face-sheet .fe-blink{animation:5s infinite blink-eye}.fe-blink+.fe-blink{animation-delay:20ms}@keyframes blink-eye{0%,95%,to{transform:scaleY(1)}97%{transform:scaleY(.08)}}.fm-talk{transform-box:fill-box;transform-origin:50% 20%;animation:.26s ease-in-out infinite alternate talk-mouth}@keyframes talk-mouth{0%{transform:scaleY(.3)}to{transform:scaleY(1)}}.fb{transition:transform .24s var(--ease)}@media (prefers-reduced-motion:reduce){.fe-blink,.fm-talk{animation:none!important}}.face-sheet{max-width:1040px;margin:0 auto;padding:40px 16px 64px}.face-sheet h1{font-family:var(--display);letter-spacing:-.02em;font-size:2.25rem}.face-sheet>p{color:var(--muted,#5b6b72);margin:6px 0 28px}.face-sheet ul{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.face-sheet li{background:var(--card,#fff);box-shadow:var(--shadow);border-radius:18px;justify-items:center;gap:8px;padding:14px;display:grid}.face-sheet li svg{aspect-ratio:1;background:var(--sun);border-radius:50%;width:100%}.face-sheet li span{text-transform:capitalize;font-weight:700}@media (max-width:759px){.hero-actions{grid-template-columns:1fr 1fr;gap:10px;width:100%;display:grid}.hero-actions .btn{white-space:nowrap;border-radius:14px;justify-content:center;gap:8px;min-height:52px;padding:0 14px;font-size:1rem}.hero-actions .btn:hover{background:var(--accent)}.hero-actions .btn:active{opacity:.85;transform:scale(.97)}.hero-actions .btn-ghost{color:var(--accent);box-shadow:none;background:#dcecee}.hero-actions .btn-ghost:hover{color:var(--accent);background:#dcecee}.hero-actions .btn:hover span{transform:none}.facts{background:var(--card);width:100%;box-shadow:var(--shadow);border-radius:18px;grid-template-columns:repeat(3,1fr);gap:0;padding:14px 0;display:grid}.facts div{box-shadow:none;text-align:center;background:0 0;border-radius:0;justify-items:center;padding:0 6px}.facts div+div{border-left:1px solid var(--line)}.facts dd{font-size:1.625rem}.facts dt{font-size:.75rem;line-height:1.25}}@container pane (min-width:820px){.fun-grid{grid-template-columns:1fr;align-items:start}.player{grid-template-columns:clamp(170px,28cqi,250px) minmax(0,1fr);align-content:center;align-items:center;column-gap:clamp(64px,9cqi,104px);padding:32px clamp(28px,5cqi,56px)}.turntable{width:100%}.player .arm{right:-4%}.player-info{text-align:left;justify-items:start}.player-info .controls{justify-content:flex-start}.player-info .sp-embed{max-width:440px}.player-info .listen{max-width:52ch}.playlist-card{grid-template-rows:auto minmax(0,1fr);max-height:min(560px,100dvh - 160px);display:grid}.playlist{overscroll-behavior:contain;scrollbar-width:thin;grid-template-columns:1fr 1fr;align-content:start;column-gap:12px;margin:0 -8px;padding:0 8px 4px;display:grid;overflow-y:auto}}
