:root{--bg:#fff;--ink:#141414;--ink-2:#3a3a3a;--muted:#767676;--line:#ececec;--soft:#f6f6f4;--blue:15 163 227;--purple:168 85 247;--rose:244 63 94;--green:16 185 129;--amber:245 158 11;--orange:251 146 60;--mk-yellow:255 214 64;--mk-mint:122 224 178;--mk-sky:126 200 255;--mk-pink:255 158 196;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--font-sans:"Rubik", system-ui, -apple-system, "Segoe UI", sans-serif;--font-serif:"Instrument Serif", Georgia, serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--wrap:1180px;--gutter:clamp(16px, 4vw, 40px)}*,: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:var(--bg);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:17px;line-height:1.6;overflow-x:hidden}img,svg,canvas{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}::selection{background:rgb(var(--mk-yellow) / .6)}.wrap{max-width:var(--wrap);padding:0 var(--gutter);margin:0 auto}.serif{font-family:var(--font-serif);letter-spacing:-.01em;font-style:italic;font-weight:400}.mono{font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;font-size:12px}.ink-c{color:rgb(var(--c))}.nav{z-index:50;background:#fffffff0;border-bottom:1px solid #0000;transition:border-color .2s;position:sticky;top:0}.nav[data-scrolled]{border-color:var(--line)}.nav-inner{justify-content:space-between;align-items:center;height:64px;display:flex}.logo{letter-spacing:-.025em;font-size:18px;font-weight:600}.nav-links{gap:4px;margin:0;padding:0;list-style:none;display:flex}.nav-links a{color:var(--ink-2);border-radius:999px;padding:8px 12px;font-size:15px;transition:background-color .15s,color .15s;display:block}.nav-links a:hover{background:var(--soft);color:var(--ink)}@media (width<=720px){.nav-links{display:none}}.btn{--c:20 20 20;cursor:pointer;background:var(--ink);color:#fff;height:44px;box-shadow:0 10px 24px -10px rgb(var(--c) / .7);transition:transform .16s var(--ease-out), box-shadow .2s ease;border:0;border-radius:999px;align-items:center;gap:8px;padding:0 20px;font-size:15px;font-weight:500;display:inline-flex}.btn:active{transform:scale(.97)}.btn-color{background:rgb(var(--c))}.btn-ghost{color:var(--ink);box-shadow:inset 0 0 0 1px var(--line);background:0 0}.btn-ghost:hover{box-shadow:inset 0 0 0 1px #d6d6d6}.btn-sm{height:36px;padding:0 14px;font-size:14px}.btn .arrow{transition:transform .2s var(--ease-out)}@media (hover:hover) and (pointer:fine){.btn:hover .arrow{transform:translate(3px)}}.mark{--mk:var(--mk-yellow);color:inherit;background-color:#0000;background-image:linear-gradient(104deg, rgb(var(--mk) / 0) 0.9%, rgb(var(--mk) / .8) 2.6%, rgb(var(--mk) / .52) 6%, rgb(var(--mk) / .45) 92%, rgb(var(--mk) / .72) 96%, rgb(var(--mk) / 0) 99%);-webkit-box-decoration-break:clone;box-decoration-break:clone;transition:background-size .9s var(--ease-in-out);background-repeat:no-repeat;background-size:0% 100%;border-radius:.4em .55em .35em .5em;margin:0 -.2em;padding:.04em .35em}.mark.is-drawn,.no-js .mark{background-size:100% 100%}.mark.mint{--mk:var(--mk-mint)}.mark.sky{--mk:var(--mk-sky)}.mark.pink{--mk:var(--mk-pink)}@media (prefers-reduced-motion:reduce){.mark{transition:none}}.scribble{white-space:nowrap;position:relative}.scribble svg{pointer-events:none;width:104%;height:.42em;position:absolute;bottom:-.18em;left:-2%;overflow:visible}.scribble path{fill:none;stroke:rgb(var(--c,var(--rose)));stroke-width:3.5px;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1px;transition:stroke-dashoffset .8s var(--ease-in-out) .3s}.scribble.is-drawn path{stroke-dashoffset:0}.reveal{opacity:0;transition:opacity .6s var(--ease-out), transform .6s var(--ease-out);transition-delay:calc(var(--i,0) * 60ms);transform:translateY(14px)}.reveal.is-in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{transition:opacity .3s;transform:none}}.card{--c:var(--blue);isolation:isolate;box-shadow:0 1px 2px #0000000a, 0 12px 24px -14px rgb(var(--c) / .45), 0 30px 60px -28px rgb(var(--c) / .55);transition:transform .3s var(--ease-out);background:#fff;border:1px solid #0000000f;border-radius:22px;position:relative}.card:after{content:"";z-index:-1;border-radius:inherit;box-shadow:0 24px 50px -16px rgb(var(--c) / .6), 0 50px 90px -40px rgb(var(--c) / .7);opacity:0;pointer-events:none;transition:opacity .3s;position:absolute;inset:0}.card .spot{border-radius:inherit;pointer-events:none;background:radial-gradient(420px circle at var(--mx,50%) var(--my,50%), rgb(var(--c) / .12), transparent 60%);opacity:0;transition:opacity .25s;position:absolute;inset:0}@media (hover:hover) and (pointer:fine){.card.lift:hover{transform:translateY(-4px)}.card.lift:hover:after,.card:hover .spot{opacity:1}}section{position:relative}.section{padding:clamp(80px,12vw,140px) 0}.eyebrow{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);align-items:center;gap:8px;font-size:12px;display:inline-flex}.eyebrow:before{content:"";background:rgb(var(--c,var(--blue)));width:8px;height:8px;box-shadow:0 0 0 4px rgb(var(--c,var(--blue)) / .15);border-radius:50%}.h2{letter-spacing:-.035em;margin:14px 0 0;font-size:clamp(34px,5vw,60px);font-weight:600;line-height:1.04}.h2 .serif{font-size:1.08em}.lede{max-width:560px;color:var(--ink-2);margin:18px 0 0;font-size:18px}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:48px;display:flex}.hero-stage{min-height:clamp(560px,100svh - 64px,900px);position:relative}.hero{align-items:center;min-height:clamp(560px,100svh - 64px,900px);display:flex;position:relative;overflow:hidden}.hero canvas.field{width:100%;height:100%;position:absolute;inset:0}.hero .wrap{width:100%;position:relative}.hero-kicker{box-shadow:inset 0 0 0 1px var(--line), 0 8px 20px -12px rgb(var(--blue) / .5);color:var(--ink-2);background:#fff;border-radius:999px;align-items:center;gap:10px;padding:6px 12px 6px 6px;font-size:14px;display:inline-flex}.hero-kicker .dot{background:rgb(var(--green) / .14);border-radius:50%;place-items:center;width:22px;height:22px;display:grid}.hero-kicker .dot:after{content:"";background:rgb(var(--green));border-radius:50%;width:8px;height:8px}.hero h1{letter-spacing:-.045em;margin:22px 0 0;font-size:clamp(46px,8vw,112px);font-weight:600;line-height:.96}.hero h1 .serif{letter-spacing:-.02em;font-size:1.1em}.hero-sub{max-width:600px;color:var(--ink-2);margin:26px 0 0;font-size:clamp(18px,2vw,21px);line-height:1.5}.hero-sub strong{font-weight:500}.hero-cta{flex-wrap:wrap;gap:12px;margin-top:34px;display:flex}.hero-motto{color:var(--muted);margin-top:40px}.enter>*{opacity:0;animation:enter .7s var(--ease-out) forwards;transform:translateY(12px)}.enter>:first-child{animation-delay:60ms}.enter>:nth-child(2){animation-delay:.12s}.enter>:nth-child(3){animation-delay:.18s}.enter>:nth-child(4){animation-delay:.24s}.enter>:nth-child(5){animation-delay:.3s}@keyframes enter{to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.enter>*{animation-name:fade;transform:none}@keyframes fade{to{opacity:1}}}.hero-hint{right:var(--gutter);color:var(--muted);align-items:center;gap:8px;display:flex;position:absolute;bottom:28px}@media (width<=720px),(hover:none){.hero-hint{display:none}}.hero-hint .cursor-ico{border:1.5px solid;border-radius:50%;width:14px;height:14px}.hero-airflow .copy{max-width:760px}.hero-deck .wrap{grid-template-columns:1.1fr .9fr;align-items:center;gap:40px;display:grid}.hero-deck h1{font-size:clamp(44px,6.4vw,92px)}.deck{perspective:1200px;height:460px;position:relative}.deck-tilt{transform-style:preserve-3d;will-change:transform;position:absolute;inset:0}.deck-card{cursor:pointer;width:270px;height:340px;transform:translate3d(var(--x), var(--y), 0) rotate(var(--r));transition:transform .5s var(--ease-out);flex-direction:column;justify-content:space-between;margin:-170px 0 0 -135px;padding:22px;display:flex;position:absolute;top:50%;left:50%}.deck-card .art{background:linear-gradient(135deg, rgb(var(--c) / .95), rgb(var(--c) / .55));border-radius:14px;height:150px;position:relative;overflow:hidden}.deck-card .art svg{width:100%;height:100%;position:absolute;inset:0}.deck-card h3{letter-spacing:-.02em;margin:0;font-size:22px}.deck-card p{color:var(--muted);margin:4px 0 0;font-size:14px}.deck-card .tag{color:var(--muted);justify-content:space-between;display:flex}.deck:hover .deck-card{transform:translate3d(var(--fx), var(--fy), 0) rotate(var(--fr))}@media (hover:hover) and (pointer:fine){.deck .deck-card:hover{transform:translate3d(var(--fx), calc(var(--fy) - 14px), 40px) rotate(var(--fr))}.deck .deck-card:hover:after{opacity:1}}@media (width<=900px){.hero-deck .wrap{grid-template-columns:1fr}.deck{height:380px}.deck-card{width:210px;height:280px;margin:-140px 0 0 -105px;padding:16px}.deck-card .art{height:110px}}.hero-grid{text-align:center}.hero-grid .copy{max-width:900px;margin:0 auto;position:relative}.hero-grid h1{font-size:clamp(56px,11vw,160px)}.hero-grid .hero-sub{margin-left:auto;margin-right:auto}.hero-grid .hero-cta{justify-content:center}.hero-grid .halo{z-index:-1;pointer-events:none;background:radial-gradient(closest-side,#fff 55%,#fff0);position:absolute;inset:-40px -60px}.statement{padding:clamp(100px,16vw,200px) 0}.statement p{letter-spacing:-.04em;max-width:1000px;margin:0;font-size:clamp(32px,5.4vw,72px);font-weight:600;line-height:1.08}.statement .w{color:#d9d9d9;transition:color .3s}.statement .w.on{color:var(--ink)}.statement .w.serif.on{color:rgb(var(--rose))}.statement cite{color:var(--muted);margin-top:28px;font-style:normal;display:block}.about-grid{grid-template-columns:.85fr 1.15fr;align-items:start;gap:clamp(32px,6vw,90px);display:grid}.portrait{aspect-ratio:4/5;overflow:hidden}.portrait img{object-fit:cover;object-position:50% 40%;border-radius:16px;width:calc(100% - 20px);height:calc(100% - 20px);position:absolute;inset:10px}.bio p{color:var(--ink-2);margin:0 0 20px;font-size:19px;line-height:1.65}.bio p:first-of-type{color:var(--ink);font-size:23px;line-height:1.5}.pillars{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:36px;display:grid}.pillar{transform-style:preserve-3d;will-change:transform;border-radius:18px;padding:20px;transition:none}.pillar .glyph{background:rgb(var(--c) / .12);width:40px;height:40px;color:rgb(var(--c));border-radius:12px;place-items:center;font-size:20px;display:grid}.pillar h3{letter-spacing:-.01em;margin:16px 0 4px;font-size:18px}.pillar p{color:var(--muted);margin:0;font-size:14px;line-height:1.45}@media (width<=900px){.about-grid{grid-template-columns:1fr}.portrait{max-width:380px}.pillars{grid-template-columns:1fr}}.bento{grid-template-columns:repeat(6,1fr);grid-auto-rows:200px;gap:20px;display:grid}.work{cursor:pointer;flex-direction:column;justify-content:space-between;padding:24px;display:flex;overflow:hidden}.work.w-lg{grid-area:span 2/span 4}.work.w-md{grid-area:span 2/span 2}.work.w-sm{grid-column:span 2}.work.w-wide{grid-column:span 4}.work .meta{color:var(--muted);z-index:1;justify-content:space-between;align-items:center;display:flex;position:relative}.work .pill{background:rgb(var(--c) / .1);color:rgb(var(--c));font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:4px 10px;font-size:11px}.work h3{letter-spacing:-.025em;z-index:1;margin:0;font-size:clamp(20px,2vw,26px);line-height:1.15;position:relative}.work.w-lg h3{max-width:520px;font-size:clamp(26px,3.2vw,40px)}.work p{color:var(--muted);z-index:1;max-width:460px;margin:8px 0 0;font-size:15px;position:relative}.work .art{pointer-events:none;position:absolute;inset:0}.work .open{width:36px;height:36px;box-shadow:inset 0 0 0 1px var(--line);transition:transform .3s var(--ease-out), background-color .2s ease, color .2s ease;background:#fff;border-radius:50%;place-items:center;display:grid}@media (hover:hover) and (pointer:fine){.work:hover .open{background:rgb(var(--c));color:#fff;box-shadow:none;transform:rotate(-45deg)}}@media (width<=900px){.bento{grid-template-columns:1fr 1fr;grid-auto-rows:220px}.work.w-lg,.work.w-wide{grid-column:span 2}.work.w-md{grid-area:span 1/span 1}.work.w-sm{grid-column:span 1}}@media (width<=560px){.bento{grid-template-columns:1fr}.work.w-lg,.work.w-wide,.work.w-md,.work.w-sm{grid-area:span 1/span 1}.work.w-lg{grid-row:span 2}}.filters{background:var(--soft);border-radius:999px;flex-wrap:wrap;gap:2px;padding:4px;display:inline-flex;position:relative}.filters .hl{height:32px;box-shadow:0 1px 2px #0000000f, 0 6px 16px -8px rgb(var(--c,20 20 20) / .6);transition:transform .3s var(--ease-out), width .3s var(--ease-out);background:#fff;border-radius:999px;position:absolute;top:4px;left:0}.filters button{cursor:pointer;height:32px;color:var(--muted);background:0 0;border:0;border-radius:999px;padding:0 14px;font-size:14px;transition:color .15s;position:relative}.filters button[aria-pressed=true]{color:var(--ink)}.filters button:active{transform:scale(.97)}.posts{border-top:1px solid var(--line);margin:28px 0 0;padding:0;list-style:none}.post-row a{border-bottom:1px solid var(--line);grid-template-columns:120px 1fr auto 28px;align-items:center;gap:24px;padding:22px 4px;display:grid}.post-row .date{color:var(--muted)}.post-row .title{letter-spacing:-.015em;transition:transform .3s var(--ease-out);font-size:clamp(18px,2vw,22px);font-weight:500}.post-row .cat{background:rgb(var(--c) / .1);color:rgb(var(--c));font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:4px 10px;font-size:11px}.post-row .go{color:var(--muted);transition:transform .3s var(--ease-out), color .15s ease}.post-row[hidden]{display:none}@media (hover:hover) and (pointer:fine){.post-row a:hover .title{transform:translate(6px)}.post-row a:hover .go{color:rgb(var(--c));transform:translate(4px)}}@media (width<=720px){.post-row a{grid-template-columns:1fr auto;gap:6px 12px}.post-row .date{grid-column:1/-1}.post-row .go{display:none}}.peek{z-index:40;pointer-events:none;opacity:0;width:280px;padding:10px;transition:opacity .2s;position:fixed;top:0;left:0;transform:translate(-999px,-999px)}.peek.on{opacity:1}.peek .thumb{background:linear-gradient(135deg, rgb(var(--c) / .95), rgb(var(--c) / .45));border-radius:14px;height:150px;position:relative;overflow:hidden}.peek .thumb svg{width:100%;height:100%;position:absolute;inset:0}.peek p{color:var(--ink-2);margin:10px 4px 2px;font-size:13px;line-height:1.45}@media (hover:none),(pointer:coarse){.peek{display:none}}.news{grid-template-columns:1.1fr .9fr;gap:40px;padding:clamp(28px,5vw,56px);display:grid;overflow:hidden}.news h2{letter-spacing:-.03em;margin:12px 0 0;font-size:clamp(56px,8vw,104px);line-height:.9}.news .latin{color:var(--muted);font-family:var(--font-serif);margin:14px 0 0;font-size:20px;font-style:italic}.news .desc{color:var(--ink-2);max-width:480px;margin:20px 0 28px;font-size:18px}.news .perks{color:var(--muted);flex-wrap:wrap;gap:18px;margin-top:22px;display:flex}.news .perks span:before{content:"✦ ";color:rgb(var(--amber))}.issues{min-height:300px;position:relative}.issue{width:min(300px,90%);transform:translate(-50%, -50%) translate(var(--x), var(--y)) rotate(var(--r));border-radius:16px;padding:18px 18px 20px;position:absolute;top:50%;left:50%}.issue .no{color:var(--muted)}.issue h4{letter-spacing:-.015em;margin:8px 0 6px;font-size:18px;line-height:1.25}.issue p{color:var(--muted);margin:0;font-size:14px;line-height:1.45}.issue .bar{background:rgb(var(--c));border-radius:6px;width:40%;height:6px;margin-bottom:14px}@media (width<=900px){.news{grid-template-columns:1fr}}footer{border-top:1px solid var(--line);margin-top:60px;padding:80px 0 40px}.foot-big{letter-spacing:-.05em;margin:0;font-size:clamp(40px,9vw,130px);font-weight:600;line-height:.9}.foot-big .serif{color:rgb(var(--blue))}.foot-row{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:20px;margin-top:48px;font-size:15px;display:flex}.socials{flex-wrap:wrap;gap:8px;display:flex}.social{color:var(--ink-2);box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .2s ease, color .15s ease, transform .16s var(--ease-out);background:#fff;border-radius:999px;padding:8px 14px}.social:hover{color:rgb(var(--c));box-shadow:inset 0 0 0 1px rgb(var(--c) / .4), 0 10px 20px -10px rgb(var(--c) / .7)}.social:active{transform:scale(.97)}.mock-note{background:var(--soft);color:var(--muted);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;vertical-align:middle;border-radius:6px;margin-left:8px;padding:2px 8px;font-size:10px;display:inline-block}.work .stat{z-index:1;flex-direction:column;gap:6px;display:flex;position:relative}.work .stat .big{letter-spacing:-.06em;color:rgb(var(--c));font-size:clamp(72px,9vw,112px);font-weight:600;line-height:.85}.work .stat sup{letter-spacing:-.02em;vertical-align:top;margin-left:4px;font-size:.38em}.work .stat .of{color:var(--muted)}.all-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin:80px 0 24px;display:flex}.all-head h3{letter-spacing:-.025em;align-items:center;gap:10px;margin:0;font-size:26px;display:flex}.all-head .count{background:var(--soft);color:var(--muted);border-radius:999px;padding:3px 9px;font-size:12px}.projects{grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.proj[hidden]{display:none}.proj a{height:100%;box-shadow:inset 0 0 0 1px var(--line);transition:transform .25s var(--ease-out), box-shadow .25s ease;background:#fff;border-radius:16px;grid-template-columns:44px 1fr;align-items:center;gap:10px 14px;padding:14px;display:grid}.proj a:active{transform:scale(.98)}.proj .emo{background:rgb(var(--c) / .1);border-radius:12px;place-items:center;width:44px;height:44px;font-size:20px;display:grid}.proj .pt b{letter-spacing:-.01em;font-size:15px;font-weight:500;line-height:1.3;display:block}.proj .pm{color:var(--muted);font-size:13px;display:block}.proj .tags{flex-wrap:wrap;grid-column:2;gap:6px;display:flex}.proj .tags span{background:rgb(var(--c) / .1);color:rgb(var(--c));font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:2px 8px;font-size:10px}@media (hover:hover) and (pointer:fine){.proj a:hover{box-shadow:inset 0 0 0 1px rgb(var(--c) / .35), 0 16px 30px -18px rgb(var(--c) / .8);transform:translateY(-2px)}}.list-more{justify-content:center;margin-top:28px;display:flex}.pager{justify-content:flex-end;align-items:center;gap:12px;margin-top:24px;display:flex}.list-more[hidden],.pager[hidden]{display:none}.pager-label{color:var(--muted);text-align:center;min-width:48px}.pager-btn{cursor:pointer;width:44px;height:44px;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line), 0 10px 22px -14px rgb(var(--blue) / .8);transition:transform .16s var(--ease-out), box-shadow .2s ease, opacity .15s ease;background:#fff;border:0;border-radius:50%;place-items:center;font-size:18px;display:grid}.pager-btn:active:not(:disabled){transform:scale(.94)}.pager-btn:disabled{opacity:.35;cursor:default;box-shadow:inset 0 0 0 1px var(--line)}.pager-btn:focus-visible,.list-more .btn:focus-visible{outline:2px solid rgb(var(--blue));outline-offset:2px}@media (hover:hover) and (pointer:fine){.pager-btn:hover:not(:disabled){box-shadow:inset 0 0 0 1px rgb(var(--blue) / .4), 0 12px 26px -12px rgb(var(--blue) / .9)}}.c-blue{--c:var(--blue)}.c-purple{--c:var(--purple)}.c-rose{--c:var(--rose)}.c-green{--c:var(--green)}.c-amber{--c:var(--amber)}.c-orange{--c:var(--orange)}
