:root{--bg:#f7f6f2;--ink:#111;--mute:#7b786f;--card:#fff;--star:#ffc83d;--blue:#0a84ff;--u:1px;--sh:#0002}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#141413;--ink:#f3f1ea;--mute:#9a968c;--card:#1d1d1b;--sh:#0006}}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:400 16px/1.5 DM Sans,system-ui,sans-serif;overflow-x:hidden}a{color:inherit}h1,h2,h3,p{margin:0}em,i{font-family:Fraunces,serif}:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.serif{font-family:Fraunces,serif}.hand{font:500 max(15px,calc(24*var(--u)))/1.05 "Caveat",cursive;color:var(--mute)}nav{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;justify-content:space-between;align-items:center;padding:calc(14px + env(safe-area-inset-top,0px)) clamp(16px,2.4vw,32px) 14px;mix-blend-mode:difference;color:#fff;pointer-events:none}nav a{pointer-events:auto;text-decoration:none}nav .logo{font:600 22px Fraunces,serif}nav div{display:flex;gap:22px;font-size:13px}nav div a:hover{text-decoration:underline;text-underline-offset:4px}.bub{position:fixed;left:0;top:0;z-index:60;background:var(--blue);color:#fff;font-size:13px;padding:6px 13px;border-radius:16px 16px 16px 4px;pointer-events:none;opacity:0;scale:.6;transform-origin:0 0;transition:opacity .18s,scale .25s cubic-bezier(.3,1.6,.5,1);white-space:nowrap}.bub.show{opacity:1;scale:1}.btn{display:inline-block;padding:9px 18px;border:1px solid var(--ink);font-size:13px;text-decoration:none;margin:10px 8px 0 0;background:transparent;transition:.2s}.btn.fill,.btn:hover{background:var(--ink);color:var(--bg)}.btn.fill:hover{background:transparent;color:var(--ink)}.outer{position:relative}.pin{position:sticky;top:0;height:100vh;overflow:hidden}.track{position:absolute;top:0;left:0;height:100%;width:calc(8800*var(--u));will-change:transform}.world{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible}.scr,.ln,.ring{fill:none;stroke:var(--ink);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.scr{stroke-width:2.4}.ring{stroke-width:2;stroke-dasharray:3 9}.dot{fill:var(--ink)}.svt{font:italic 400 26px Fraunces,serif;fill:var(--mute)}.at{position:absolute;left:calc(var(--x)*var(--u));top:calc(var(--y)*var(--u));width:calc(var(--w,0)*var(--u))}.at{width:auto}.at[style*="--w:"]{width:calc(var(--w)*var(--u))}.hero-h h1{font:600 max(34px,calc(84*var(--u)))/.93 "DM Sans",sans-serif;letter-spacing:-.03em}.end h1{font:600 max(34px,calc(96*var(--u)))/.93 "DM Sans",sans-serif;letter-spacing:-.03em}.hero-h em,.end h1 em{font:italic 600 1em/1 Fraunces,serif}.cta{font-size:13px;text-align:right;transform:translate(0)}h2{font:400 max(30px,calc(86*var(--u)))/1.02 "Fraunces",serif;letter-spacing:-.02em;white-space:nowrap}h2 em{font-style:italic}.sub{color:var(--mute);font-size:max(14px,calc(24*var(--u)));white-space:nowrap}.stk svg{width:100%;height:auto;overflow:visible;transition:transform .35s cubic-bezier(.3,1.7,.5,1)}.stk:hover svg{transform:scale(1.1) rotate(-3deg)}.stk .hand{display:block;text-align:center;font-size:max(13px,calc(22*var(--u)))}.o,.f,.y{stroke:var(--ink);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.o{fill:none}.f{fill:var(--card)}.y{fill:var(--star)}.sh{fill:var(--sh)}.beat h3{font:400 max(24px,calc(54*var(--u)))/1.05 "Fraunces",serif;white-space:nowrap}.beat p{color:var(--mute);font-size:max(13px,calc(21*var(--u)));margin-top:6px;max-width:calc(420*var(--u))}.tl{width:calc(360*var(--u));margin-left:calc(-180*var(--u));text-align:center;font-size:max(12px,calc(19*var(--u)));display:flex;flex-direction:column;align-items:center}.tl b{display:block;font-weight:500;font-size:1.2em}.tl span,.tl small{display:block;color:var(--mute)}.tl small{font-size:.85em;margin-top:2px}.tl.up{top:auto;bottom:calc(370*var(--u))}.tl.dn{top:calc(580*var(--u))}.tick{width:1px;height:calc(70*var(--u));background:var(--mute);position:relative;display:block}.tick:after{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:var(--mute);left:-3px}.up .tick{margin-top:8px}.up .tick:after{bottom:-3px}.dn .tick{margin-bottom:8px}.dn .tick:after{top:-3px}.reveal{font:400 max(26px,calc(60*var(--u)))/1.1 "Fraunces",serif;white-space:nowrap}.w{color:var(--mute);opacity:.45;transition:.5s}.w.on{color:var(--ink);opacity:1}.loopt h2 .g{color:var(--mute)}.loopt h2{white-space:normal;width:calc(1000*var(--u))}.work{position:relative;display:grid;grid-template-columns:minmax(260px,1fr) 2fr;gap:5vw;padding:16vh clamp(20px,6vw,90px) 12vh;border-top:1px solid var(--ink);overflow:hidden}.wm{position:absolute;left:-1vw;top:-2vw;font:600 24vw/1 DM Sans,sans-serif;color:var(--ink);opacity:.06;pointer-events:none}.work aside{position:sticky;top:15vh;align-self:start;z-index:1}.work aside h2{font-size:clamp(34px,4.2vw,64px);white-space:normal;margin:10px 0 18px}.work aside p{color:var(--mute);margin-bottom:26px}small{color:var(--mute);font-size:12px}.chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.chip{font:inherit;font-size:13px;padding:7px 18px;border:1px solid var(--mute);border-radius:99px;background:transparent;color:var(--ink);cursor:pointer}.chip[aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}.rows{display:grid;gap:56px;z-index:1}.row{text-decoration:none;display:block}.shot{border:1px solid var(--mute);background:var(--card);overflow:hidden;transition:transform .3s}.bar{display:flex;gap:6px;padding:10px 14px;border-bottom:1px solid var(--mute)}.bar i{width:9px;height:9px;border-radius:50%;background:var(--mute);opacity:.5}.scene{display:grid;place-items:center;height:clamp(200px,28vw,380px);background:radial-gradient(circle at 70% 30%,#8aa4ff33,transparent 55%),radial-gradient(circle at 20% 80%,#ffc83d2a,transparent 50%)}.scene svg{height:62%;overflow:visible}.meta{display:flex;justify-content:space-between;gap:20px;margin-top:16px}.meta h3{font:400 clamp(28px,3vw,42px)/1.1 "Fraunces",serif}.meta p{color:var(--mute);max-width:52ch}.meta em{display:block;font-size:13px;margin-top:8px}.arr{border:1px solid var(--ink);width:34px;height:34px;display:grid;place-items:center;flex:none;transition:.2s}.row:hover .arr{background:var(--ink);color:var(--bg)}.more{display:flex;align-items:center;gap:22px;border-top:1px solid var(--mute);padding-top:30px;font-size:clamp(22px,2.4vw,32px);flex-wrap:wrap}.more i{color:var(--mute)}.end{position:relative;min-height:110vh;padding:18vh clamp(20px,6vw,90px) 80px;overflow:hidden}.end .sub{margin:18px 0}.big{font:400 clamp(24px,3vw,40px)/1.15 "Fraunces",serif;margin:26px 0}.arc{position:absolute;right:6vw;top:10vh;width:60vw;height:60vh}.arc path{fill:none;stroke:var(--ink);stroke-width:3;stroke-linecap:round;vector-effect:non-scaling-stroke;stroke-dasharray:2400;stroke-dashoffset:2400;transition:stroke-dashoffset 2.6s cubic-bezier(.5,0,.2,1)}.me{position:absolute;right:clamp(20px,9vw,150px);bottom:90px;width:min(24vw,240px);aspect-ratio:2/4.6;border:2px dashed var(--mute);border-radius:120px 120px 10px 10px;display:grid;place-items:center;text-align:center}.fun{position:absolute;left:46%;bottom:100px;width:210px}.astro2{width:150px;margin-top:6px}.astro2 svg{width:100%;overflow:visible}footer{position:absolute;right:clamp(20px,6vw,90px);bottom:18px;font-size:11px;color:var(--mute)}@media (max-width:820px){.work{grid-template-columns:1fr}.work aside{position:static}.fun,.orbit{display:none}.note{top:52vh}}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.isdark body{background:#07070a}.scr,.ln{stroke-width:3}.pen{fill:var(--ink)}.rep{font:italic 600 30px Fraunces,serif;fill:var(--ink)}.svt{font-size:24px}.note-s{color:var(--mute);font-size:max(12px,calc(19*var(--u)));line-height:1.35;display:flex;gap:8px}.cta{text-align:right}.tl.up{bottom:calc(345*var(--u))}.tl.dn{top:calc(555*var(--u))}.bub{box-shadow:0 6px 22px #0a84ff55;border:1px solid #4aa3ff;font-size:14px;padding:7px 15px;border-radius:18px 18px 18px 5px}.more .g{color:var(--mute)}.pill{display:inline-grid;border-radius:99px;position:relative;margin:0;padding:12px 26px;font-size:15px}.pill b{grid-area:1/1;font-weight:400;text-align:center;transition:opacity .15s}.pill .t2,.pill .t3{opacity:0}.pill:hover{background:var(--ink);color:var(--bg)}.pill:hover .t1{opacity:0}.pill:hover .t2{animation:a2 2.1s steps(1) forwards}.pill:hover .t3{animation:a3 2.1s steps(1) forwards}@keyframes a2{0%{opacity:1}50%,to{opacity:0}}@keyframes a3{0%{opacity:0}50%,to{opacity:1}}.work:has(.pill:hover) .row,.work:has(.pill:hover) aside,.work:has(.pill:hover) .more .serif{opacity:.35;transition:opacity .4s}.dive{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;overflow:hidden;animation:dfade .8s 3.4s forwards;cursor:progress}@keyframes dfade{to{opacity:0;visibility:hidden}}.dim{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;animation:dim .6s .05s forwards}.dive.dark .dim{background:#f7f6f2}.dive.light .dim{background:#07070a}@keyframes dim{to{opacity:.6}}.lens{position:absolute;left:0;top:0;width:100px;height:100px;border-radius:50%;transform:scale(0);backdrop-filter:blur(2.5px) saturate(1.25);-webkit-backdrop-filter:blur(2.5px) saturate(1.25);-webkit-mask:radial-gradient(circle,#000 38%,transparent 70%);mask:radial-gradient(circle,#000 38%,transparent 70%);pointer-events:none}.dcv,.swirl{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.dsk{position:absolute;left:0;top:0;opacity:0;will-change:transform,opacity,filter;transform-origin:50% 50%}.dsk svg{width:100%;height:auto;display:block;overflow:visible;filter:drop-shadow(0 16px 20px #0003)}.dsk img{width:100%;height:auto;display:block;filter:drop-shadow(0 18px 24px #0004)}.fin{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;animation:fin .5s 2.85s ease-in forwards}.dive.dark .fin{background:#07070a}.dive.light .fin{background:#f7f6f2}@keyframes fin{to{opacity:1}}.track{top:50%;margin-top:calc(-450*var(--u));height:calc(900*var(--u))}.stk{outline:none;-webkit-tap-highlight-color:transparent;cursor:default}.stk:hover,.stk.on{z-index:8}.stk img,.stk svg{display:block;width:100%;height:auto;overflow:visible;-webkit-user-select:none;user-select:none;transform:rotate(var(--rot,0deg));filter:drop-shadow(0 16px 14px #00000026);transition:transform .45s cubic-bezier(.3,1.6,.5,1),filter .3s}.stk:hover img,.stk.on img,.stk:hover svg,.stk.on svg{transform:rotate(0) translateY(-8px) scale(1.07);filter:drop-shadow(0 30px 22px #00000030)}.stk:focus-visible img,.stk:focus-visible svg{outline:2px solid var(--blue);outline-offset:6px;border-radius:8px}.stk .hand{display:block;text-align:center;margin-top:4px;transition:opacity .2s}.stk.on .hand{opacity:.35}.sbub{position:absolute;left:50%;bottom:100%;z-index:6;background:var(--blue);color:#fff;font:500 max(13px,calc(24*var(--u)))/1.2 "DM Sans",sans-serif;padding:.55em 1.1em;border-radius:1.3em;white-space:nowrap;box-shadow:0 8px 26px #0a84ff55;border:1px solid #4aa3ff;opacity:0;pointer-events:none;transform:translate(-50%,12px) scale(.82);transform-origin:50% 100%;transition:opacity .2s,transform .4s cubic-bezier(.3,1.6,.5,1)}.stk.on .sbub{opacity:1;transform:translate(-50%,-6px) scale(1)}.sbub .gh{visibility:hidden}.sbub .lv{position:absolute;left:1.1em;top:.55em}.caret{display:inline-block;width:2px;height:1.05em;margin-left:2px;vertical-align:-.18em;background:#fff;animation:blink 1s steps(1) infinite}@keyframes blink{50%{opacity:0}}.cta.l{text-align:left}.dsk img{display:block;width:100%;height:auto;filter:drop-shadow(0 14px 18px #0003)}@media (max-width:820px){.nav div,nav div{gap:12px;font-size:12px}.work{padding-top:14vh}}.grp{font:500 12px DM Sans;letter-spacing:.16em;text-transform:uppercase;color:var(--mute);margin:0 0 -22px}.phones{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:30px}.pcard{text-decoration:none;display:block}.stage{display:grid;place-items:center;padding:clamp(28px,4vw,56px) 0 clamp(20px,3vw,40px);border:1px solid var(--mute);border-radius:8px;background:radial-gradient(ellipse at 50% 25%,#fff,#ecebe4 62%,#e3e1d9);overflow:hidden;transition:transform .3s}.pcard:hover .stage{transform:translateY(-6px)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .stage{background:radial-gradient(ellipse at 50% 25%,#26262a,#1a1a1c 62%)}}.ph-wrap{display:grid;place-items:center;perspective:1000px}.ph{--pw:clamp(190px,19vw,250px);position:relative;width:var(--pw);aspect-ratio:9/19.4;padding:calc(var(--pw)*.012);border-radius:calc(var(--pw)*.175);background:linear-gradient(135deg,#ecebe5,#a09e98 20%,#dedcd6,#7f7d78 72%,#cfcdc7);box-shadow:inset 0 1px #fffa,0 0 0 1px #0005,0 42px 50px -24px #000a,0 18px 28px -16px #0007;transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .3s cubic-bezier(.2,.8,.2,1);transform-style:preserve-3d;will-change:transform}.sbtn{position:absolute;width:calc(var(--pw)*.016);border-radius:3px;background:linear-gradient(90deg,#8a8883,#dad8d2,#8a8883)}.sbtn.a{left:calc(var(--pw)*-.012);top:14%;height:4.2%}.sbtn.v1{left:calc(var(--pw)*-.012);top:21.5%;height:7.5%}.sbtn.v2{left:calc(var(--pw)*-.012);top:31%;height:7.5%}.sbtn.pw{right:calc(var(--pw)*-.012);top:26%;height:12%}.ph-bezel{width:100%;height:100%;background:#040404;border-radius:calc(var(--pw)*.163);padding:calc(var(--pw)*.026);box-shadow:inset 0 0 0 1px #2a2a2a}.ph-screen{position:relative;width:100%;height:100%;border-radius:calc(var(--pw)*.137);overflow:hidden;background:#0b0b10}.ph-screen img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .7s;-webkit-user-select:none;user-select:none}.ph-screen img.on{opacity:1}.ph-di{position:absolute;top:calc(var(--pw)*.03);left:50%;transform:translate(-50%);width:calc(var(--pw)*.29);height:calc(var(--pw)*.088);border-radius:99px;background:#000;z-index:4}.ph-di:after{content:"";position:absolute;right:11%;top:50%;width:21%;aspect-ratio:1;border-radius:50%;transform:translateY(-50%);background:radial-gradient(circle at 35% 35%,#34457a,#0a0f22 62%)}.ph-sb{position:absolute;z-index:3;top:calc(var(--pw)*.043);left:calc(var(--pw)*.085);right:calc(var(--pw)*.075);display:flex;justify-content:space-between;align-items:center;color:#fff;mix-blend-mode:difference;font:600 calc(var(--pw)*.05)/1 "DM Sans",sans-serif}.ph-sb svg{height:calc(var(--pw)*.052);width:auto}.ph-home{position:absolute;z-index:4;bottom:calc(var(--pw)*.02);left:50%;transform:translate(-50%);width:34%;height:calc(var(--pw)*.014);border-radius:9px;background:#fff;mix-blend-mode:difference}.ph-glare{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;pointer-events:none;background:radial-gradient(circle at var(--gx,25%) var(--gy,8%),#ffffff2e,transparent 52%),linear-gradient(115deg,transparent 40%,#ffffff12 50%,transparent 60%)}.ph-ph{position:absolute;top:0;right:0;bottom:0;left:0;padding:calc(var(--pw)*.22) calc(var(--pw)*.085) calc(var(--pw)*.07);display:flex;flex-direction:column;gap:calc(var(--pw)*.035);color:#fff;background:radial-gradient(circle at 85% 6%,color-mix(in srgb,var(--ac) 50%,transparent),transparent 55%),linear-gradient(180deg,#15151d,#09090e)}.ph-ph .ico{height:calc(var(--pw)*.34)}.ph-ph .ico svg{height:100%;overflow:visible}.ph-ph h4{margin:0;font:400 calc(var(--pw)*.11)/1 "Fraunces",serif}.sk{display:block;height:calc(var(--pw)*.05);border-radius:99px;background:#ffffff17}.ph-ph .cards{display:flex;gap:calc(var(--pw)*.03);margin-top:auto}.ph-ph .cards i{flex:1;aspect-ratio:1;border-radius:calc(var(--pw)*.05);background:#ffffff10;border:1px solid #ffffff14}.ph-ph small{color:#ffffff80;font-size:calc(var(--pw)*.04);text-align:center;margin-top:calc(var(--pw)*.02)}.ph-ph .o,.ph-ph .f,.ph-ph .y,.bw-ph .o,.bw-ph .f,.bw-ph .y{stroke:#f1efe8}.ph-ph .f,.bw-ph .f{fill:#1d1d26}.bw{border:1px solid var(--mute);border-radius:10px;overflow:hidden;background:var(--card);box-shadow:0 34px 50px -30px #0007}.bw-bar{display:flex;align-items:center;gap:6px;padding:10px 14px;border-bottom:1px solid #8883;background:#8881}.bw-bar i{width:10px;height:10px;border-radius:50%;background:#ff5f57}.bw-bar i:nth-child(2){background:#febc2e}.bw-bar i:nth-child(3){background:#28c840}.bw-url{margin:0 auto;transform:translate(-24px);font-size:12px;color:var(--mute);background:#8881;border-radius:99px;padding:3px 22px;min-width:38%;text-align:center}.bw-screen{position:relative;aspect-ratio:1903/997;overflow:hidden;background:#0b0b10}.bw-screen img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:top;opacity:0;transition:opacity .7s}.bw-screen img.on{opacity:1}.bw-ph{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#fff;background:radial-gradient(circle at 75% 20%,color-mix(in srgb,var(--ac) 45%,transparent),transparent 55%),linear-gradient(180deg,#14141b,#09090e)}.bw-ph .ico{height:26%}.bw-ph .ico svg{height:100%;overflow:visible}.bw-ph h4{margin:0;font:400 clamp(22px,3vw,40px)/1 "Fraunces",serif}.bw-ph small{color:#ffffff80;font-size:12px}.bw-ph .sk{height:8px}.row .shot{border:0;background:none;overflow:visible}.row:hover .shot{transform:translateY(-6px)}.badge{display:inline-block;font:500 12px DM Sans;padding:5px 12px;border-radius:99px;background:linear-gradient(90deg,#ffc83d,#ff8a4c);color:#111;margin:2px 0 10px}@media (max-width:820px){.ph{--pw:clamp(190px,56vw,240px)}}.ph-track{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;cursor:grab;outline:none;-webkit-overflow-scrolling:touch}.ph-track::-webkit-scrollbar{display:none}.ph-track.drag{cursor:grabbing;scroll-snap-type:none;scroll-behavior:auto}.ph-track>*{flex:0 0 100%;height:100%;scroll-snap-align:center;scroll-snap-stop:always}.ph-screen .ph-track>img{position:static;opacity:1;width:100%;height:100%;object-fit:cover;pointer-events:none}.ph-screen .ph-track>.ph-ph{position:relative;inset:auto}.ph-di,.ph-sb,.ph-home{pointer-events:none}.ph-dots{position:absolute;z-index:4;left:50%;bottom:calc(var(--pw)*.062);transform:translate(-50%);display:flex;gap:calc(var(--pw)*.022);padding:calc(var(--pw)*.014) calc(var(--pw)*.026);border-radius:99px;background:#0005;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.ph-dots button{all:unset;cursor:pointer;width:calc(var(--pw)*.026);height:calc(var(--pw)*.026);border-radius:50%;background:#fff6;transition:.25s}.ph-dots button.on{background:#fff;width:calc(var(--pw)*.06);border-radius:99px}.ph-track:focus-visible{box-shadow:inset 0 0 0 2px var(--blue)}.ph-ph .sk.row{height:calc(var(--pw)*.085);border-radius:calc(var(--pw)*.03)}.ph-ph .ring{align-self:center;width:44%;aspect-ratio:1;border-radius:50%;margin:calc(var(--pw)*.03) 0;background:conic-gradient(var(--ac) 0 62%,#ffffff17 0);-webkit-mask:radial-gradient(circle,transparent 56%,#000 58%);mask:radial-gradient(circle,transparent 56%,#000 58%)}.ph-ph .cards{margin-top:auto}.dsk{width:calc(clamp(80px,9vw,130px)*var(--s,1))}.dsk img{width:100%;height:auto;display:block;filter:drop-shadow(0 16px 20px #0004)}.astro2{width:170px}.astro2 img{width:100%;height:auto;display:block;filter:drop-shadow(0 12px 14px #0003)}.stk img[alt*=brain]{filter:drop-shadow(0 22px 22px #ff7a9a33)}.stk.lnk{cursor:pointer}a.sbub{text-decoration:none;color:#fff}.stk.on a.sbub{pointer-events:auto;cursor:pointer}a.sbub:after{content:"";position:absolute;left:0;right:0;top:100%;height:24px}a.sbub:hover,a.sbub:focus-visible{background:#2b94ff;outline:none}.rv{opacity:0;transition:opacity .5s ease}.rv.on{opacity:1}.sway{transform-box:fill-box;transform-origin:50% 50%;animation:sway 16s ease-in-out infinite alternate}@keyframes sway{0%{transform:rotate(-3.5deg) scale(1)}to{transform:rotate(4deg) scale(1.03)}}.dd{cursor:default}.dd-in path,.dd-in circle,.dd-in rect{fill:none;stroke:var(--ink);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:0}.dd-in .y{fill:var(--star)}.dd-in{transform-box:fill-box;opacity:.9}.dd-in>*{animation:ddraw 1.5s var(--dl) cubic-bezier(.5,0,.2,1) backwards}@keyframes ddraw{0%{stroke-dashoffset:1;opacity:0}20%{opacity:1}}.dd:hover .dd-in{animation:wob .7s ease}@keyframes wob{25%{transform:translate(-24px,-24px) rotate(-10deg) scale(1.15)}60%{transform:translate(-24px,-24px) rotate(6deg) scale(1.08)}}.front{pointer-events:none;z-index:7}.stk.still:hover,.stk.still.on{z-index:auto}.stk.still:hover img,.stk.still.on img{transform:none;filter:drop-shadow(0 22px 18px #00000030)}.aside{display:flex;align-items:flex-start;gap:6px;transform:rotate(-4deg)}.aside .hand{white-space:nowrap}.aside svg{margin-top:20px}.aside path{fill:none;stroke:var(--mute);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.ul{position:relative;display:inline-block}.ul svg{position:absolute;left:-1%;width:102%;bottom:-.1em;height:.14em;overflow:visible}.ul path{fill:none;stroke:var(--ink);stroke-width:3;stroke-linecap:round;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.2s cubic-bezier(.5,0,.2,1) .15s}.ul.on path{stroke-dashoffset:0}.node .nr{fill:var(--bg);stroke:var(--ink);stroke-width:2.5}.node .nd{fill:var(--ink)}.node .tk{fill:none;stroke:var(--mute);stroke-width:1.6;stroke-linecap:round;stroke-dasharray:2 6}.node .star{transform-box:fill-box;transform-origin:center}.node .burst path{fill:none;stroke:var(--ink);stroke-width:2;stroke-linecap:round;opacity:0;transform-box:view-box}.node.on .burst path{animation:burst .9s ease-out both}@keyframes burst{0%{opacity:0;stroke-dasharray:0 9}25%{opacity:1}to{opacity:0;stroke-dasharray:9 9;transform:scale(1.5)}}.node.on .star{animation:starpop .8s cubic-bezier(.3,1.7,.5,1) both}@keyframes starpop{0%{transform:scale(.2) rotate(-80deg)}}.node .doodle{color:var(--ink)}.node .doodle path,.node .doodle rect,.node .doodle circle{fill:none;stroke:var(--ink);stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}.node .doodle .y{fill:var(--star)}.node .doodle{opacity:0;transition:opacity .5s .15s}.node.on .doodle{opacity:1}.tl{width:calc(360*var(--u));margin-left:0;text-align:center;font-size:max(12px,calc(19*var(--u)));display:block}.tl.up{top:calc(var(--y)*var(--u));bottom:auto;transform:translate(-50%,-100%)}.tl.dn{top:calc(var(--y)*var(--u));transform:translate(-50%)}.tl .card{display:flex;flex-direction:column;align-items:center;gap:.2em;transition:transform .7s cubic-bezier(.2,.8,.2,1)}.tl.up .card{transform:translateY(16px)}.tl.dn .card{transform:translateY(-16px)}.tl.on .card{transform:none}.tl b{font:400 1.55em/1.05 Fraunces,serif;letter-spacing:-.01em}.tl span{max-width:20em;line-height:1.35}.tl small{font:500 1.25em/1 Caveat,cursive;color:var(--mute);margin:0 0 .15em;display:block}.reveal{top:calc(var(--y)*var(--u))}.cue{position:absolute;left:50%;bottom:calc(22px + env(safe-area-inset-bottom,0px));transform:translate(-50%);display:flex;align-items:center;gap:8px;color:var(--mute);pointer-events:none;transition:opacity .5s,transform .5s}.cue .hand{font-size:20px}.cue svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;animation:nudge 1.6s ease-in-out infinite}@keyframes nudge{50%{transform:translate(8px)}}.cue.gone{opacity:0;transform:translate(-50%,8px)}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;pointer-events:none;opacity:.045;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .9 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}.isdark body:after{opacity:.03}.btn{border-radius:2px;transition:background .2s,color .2s,transform .25s cubic-bezier(.3,1.6,.5,1)}.btn:hover{transform:translateY(-2px)}.stk .hand{letter-spacing:.01em}.hero-h h1{text-wrap:balance}@media (max-width:820px){.aside{display:none}.cue{bottom:16px}}.dd-in .rd{fill:#c8312b}.end{min-height:100vh;display:block;padding:clamp(90px,15vh,150px) clamp(20px,6vw,100px) 90px}.end-l{position:relative;z-index:4;max-width:min(52vw,760px)}.end h1{font-size:clamp(54px,8.4vw,128px);line-height:.95}.end .sub{color:var(--mute);font-size:clamp(16px,1.5vw,21px);line-height:1.45;margin:22px 0 36px}.end .who{display:flex;align-items:flex-end;gap:6px;font-size:23px;transform:rotate(-4deg);margin:0 0 4px -6px;width:max-content}.who svg{margin-bottom:-10px}.who path,.farr path,.note path,.spark path,.swing path{fill:none;stroke:var(--mute);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.arc{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none;overflow:visible}.arc path{fill:none;stroke:var(--ink);stroke-width:3;stroke-linecap:round;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 3s cubic-bezier(.55,0,.2,1) .25s}.end.on .arc path{stroke-dashoffset:0}.cbtn{display:inline-flex;align-items:center;justify-content:space-between;gap:clamp(28px,4vw,64px);padding:15px 22px;border:1px solid var(--ink);border-radius:10px;font-size:17px;text-decoration:none;transition:background .25s,color .25s,transform .3s cubic-bezier(.3,1.6,.5,1),box-shadow .3s}.cbtn i{font-style:normal;transition:transform .3s}.cbtn:hover{transform:translateY(-3px);box-shadow:0 12px 22px -12px #0006}.cbtn:hover i{transform:translate(3px,-3px)}.cbtn.fill{background:var(--ink);color:var(--bg);padding:19px 26px;font-size:19px}.cbtn:not(.fill):hover{background:var(--ink);color:var(--bg)}.crow{display:flex;gap:14px;flex-wrap:wrap;margin-top:14px}.end{--mh:min(74vh,760px);--mw:calc(var(--mh)*.3037);--mr:clamp(24px,7vw,130px)}.me{position:absolute;z-index:3;right:var(--mr);bottom:28px;height:var(--mh);aspect-ratio:616/2028;width:auto;border:0;border-radius:0;display:block;place-items:initial}.me img{height:100%;width:auto;display:block;filter:drop-shadow(0 1px 2px #00000026);transition:transform .6s cubic-bezier(.3,1.6,.5,1);transform-origin:50% 100%}.me:hover img{transform:rotate(-1.2deg) scale(1.015)}.me:after{display:none}.me:before{content:"";position:absolute;z-index:-1;left:-16%;right:-16%;bottom:-13px;height:30px;background:radial-gradient(ellipse at 50% 50%,#0000004d 0,#0000002a 38%,#0000 70%);filter:blur(3px);pointer-events:none}.spark{position:absolute;left:60%;top:-6%;width:clamp(54px,5vw,80px);height:auto;opacity:0;overflow:visible}.spark path{stroke:var(--ink);stroke-width:2.6;vector-effect:non-scaling-stroke}.end.on .spark{animation:sparkle .9s 3s ease-out forwards}@keyframes sparkle{0%{opacity:0;transform:scale(.6)}40%{opacity:1}to{opacity:1;transform:none}}.note.n1{position:absolute;z-index:4;left:41%;top:clamp(58px,8.5vh,92px);font-size:clamp(17px,1.5vw,22px);line-height:1.12;transform:rotate(-3deg);text-align:left;display:flex;gap:8px;align-items:flex-start}.note.n1 svg{margin-top:34px;transform:rotate(190deg)}.fun{position:absolute;z-index:4;left:46%;bottom:84px;width:auto;display:flex;flex-direction:column;align-items:flex-start;gap:4px}.fun .hand{font-size:clamp(17px,1.5vw,22px);line-height:1.15;transform:rotate(-4deg);transform-origin:0 100%}.farr{margin:-2px 0 0 -26px;transform:rotate(8deg)}.bat{position:relative;width:clamp(96px,9vw,140px);margin:0 0 0 18px;transform:rotate(14deg);transition:transform .5s cubic-bezier(.3,1.7,.5,1)}.bat img{width:100%;height:auto;display:block;filter:drop-shadow(0 20px 14px #0000002e)}.bat:hover{transform:rotate(-6deg) translateY(-10px)}.swing{position:absolute;left:-46%;top:6%;width:56%;opacity:0;transition:opacity .3s}.bat:hover .swing{opacity:1}.u16{position:absolute;left:50%;bottom:-18px;transform:translate(-50%) rotate(-8deg);white-space:nowrap;font:500 15px Caveat,cursive;font-style:normal;background:var(--ink);color:var(--bg);padding:3px 12px 4px;border-radius:99px}.end footer{position:absolute;left:clamp(20px,6vw,100px);right:auto;bottom:22px;z-index:4}@media (max-width:1100px){.note.n1{display:none}.end-l{max-width:60vw}}@media (max-width:900px){.end{padding-top:96px;min-height:auto;padding-bottom:520px}.end-l{max-width:100%}.arc{display:none}.me{height:min(52vh,430px);right:4vw}.fun{left:6vw;bottom:70px}.spark{display:none}.end h1{font-size:clamp(48px,15vw,88px)}}.note.n2{position:absolute;z-index:4;right:calc(var(--mr) + var(--mw) + 30px);bottom:calc(28px + var(--mh)*.58);font-size:clamp(17px,1.5vw,22px);line-height:1.12;transform:rotate(-2deg);text-align:left;text-decoration:none;display:block;transition:color .2s,transform .35s cubic-bezier(.3,1.7,.5,1)}.note.n2 svg{position:absolute;right:-46px;bottom:-4px;transform:rotate(-6deg)}.note.n2:hover{color:var(--ink);transform:rotate(-2deg) translateY(-3px)}.note.n2:hover path{stroke:var(--ink)}.sign{position:absolute;z-index:4;right:calc(var(--mr) + var(--mw) + 30px);bottom:34px;width:clamp(200px,16vw,290px);display:flex;flex-direction:column;align-items:flex-start;gap:0}.sign .hand{font-size:clamp(17px,1.5vw,22px);line-height:1.1;display:flex;align-items:flex-end;gap:4px;transform:rotate(-3deg);transform-origin:0 100%;margin:0 0 -2px 6px;opacity:0;transition:opacity .6s 3s}.sign .hand svg{margin-bottom:-12px;flex:none}.end.on .sign .hand{opacity:1}.sign .hand path{fill:none;stroke:var(--mute);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.sg{width:100%;height:auto;overflow:visible;display:block}.sg path{fill:none;stroke:var(--ink);stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 2.6s cubic-bezier(.5,0,.3,1) 3.5s}.sg path.sw{stroke-width:2.6;transition:stroke-dashoffset .8s cubic-bezier(.5,0,.2,1) 6.2s}.end.on .sg path{stroke-dashoffset:0}@media (prefers-reduced-motion:reduce){.sg path,.sign .hand{transition-duration:.01s;transition-delay:0s}}@media (max-width:1359px){.note.n2{display:none}}@media (max-width:1199px){.sign{right:auto;left:clamp(20px,6vw,100px);bottom:56px;width:clamp(170px,22vw,240px)}.end{padding-bottom:230px}}@media (max-width:900px){.end{padding-bottom:540px}.fun{bottom:200px}.sign{bottom:64px;width:190px}.sign .hand{white-space:nowrap}.me{bottom:20px}}.aft{opacity:0;transform:translateY(14px);transition:opacity 1.1s ease,transform 1.1s cubic-bezier(.2,.8,.2,1);pointer-events:none}.aft.on{opacity:1;transform:none;pointer-events:auto}.hero-h .hl{display:block;opacity:0;transform:translateY(.35em);transition:opacity .9s var(--d,0s),transform 1s cubic-bezier(.2,.8,.2,1) var(--d,0s)}.hero-h.on .hl{opacity:1;transform:none}.hero-h.aft{transition:none;transform:none}.hero-h.aft:not(.on){opacity:1}.node .doodle{display:none}.scr{stroke-width:2.3}.outer .pen{opacity:0;transition:opacity .6s}.outer.drawn .pen{opacity:1}.tl{pointer-events:auto}.tl .tlb{position:absolute;left:50%;z-index:6;white-space:nowrap;font-size:max(13px,calc(20*var(--u)));pointer-events:none}.tl.up .tlb{bottom:100%;margin-bottom:6px}.tl.dn .tlb{bottom:100%;top:auto;margin:0 0 4px;left:calc(50% + 24px);transform-origin:0 100%;transform:translateY(10px) scale(.82)}.tl:hover .tlb,.tl:focus-within .tlb{opacity:1;pointer-events:auto}.tl.up:hover .tlb,.tl.up:focus-within .tlb{transform:translate(-50%,-4px) scale(1)}.tl.dn:hover .tlb,.tl.dn:focus-within .tlb{transform:translate(0) scale(1)}.tl .tlb:after{content:"";position:absolute;left:-10%;right:-10%;height:22px}.tl.up .tlb:after,.tl.dn .tlb:after{top:100%}.pen{stroke:var(--bg);stroke-width:3.5}.bub{z-index:90}body.dk-lock{overflow:hidden}.dk{--bg:#07070a;--ink:#f1efe8;--mute:#8d8a82;--card:#101015;--sh:#0000;--ease:cubic-bezier(.65,0,.15,1);position:relative;background:var(--bg);color:var(--ink);min-height:100vh;isolation:isolate}.dk .o,.dk .f,.dk .y{stroke:#f1efe8}.dk .f{fill:#1d1d26}.dk-dust{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none;fill:#fff}.dk-dust .tw{animation:dkTw var(--td,3s) var(--dl,0s) ease-in-out infinite alternate}@keyframes dkTw{0%{opacity:var(--o,.8)}to{opacity:.08}}.dk-hero{position:relative;z-index:1;height:max(100vh,660px);height:max(100svh,660px);overflow:hidden}.dk-earth{position:absolute;z-index:0;right:-7vw;bottom:-6vw;width:min(108vw,1760px);aspect-ratio:1480/986;pointer-events:none;mix-blend-mode:screen;-webkit-mask-image:radial-gradient(ellipse 74% 80% at 56% 70%,#000 34%,transparent 74%);mask-image:radial-gradient(ellipse 74% 80% at 56% 70%,#000 34%,transparent 74%)}.dk-earth img{display:block;width:100%;height:100%;object-fit:cover;animation:dkDrift 46s ease-in-out infinite alternate;transform-origin:60% 80%}@keyframes dkDrift{to{transform:scale(1.045) translate(-1.2%,-.8%)}}.dk-atmo{position:absolute;z-index:0;right:-4vw;bottom:-4vw;width:min(96vw,1560px);height:min(34vw,560px);pointer-events:none;background:radial-gradient(ellipse 52% 60% at 56% 100%,#4f8bff40,#2a56c21c 46%,transparent 72%);filter:blur(26px);animation:dkBreath 7s ease-in-out infinite alternate}@keyframes dkBreath{to{opacity:.6}}.dk-shoot{position:absolute;z-index:1;left:62%;top:8%;width:130px;height:1.5px;background:linear-gradient(90deg,transparent,#fff);transform:rotate(24deg);opacity:0;animation:dkShoot 11s 3s ease-in infinite}@keyframes dkShoot{0%{opacity:0;transform:translate(0) rotate(24deg)}2%{opacity:.9}9%{opacity:0;transform:translate(-340px,150px) rotate(24deg)}to{opacity:0}}.dk-line{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:2;pointer-events:none;overflow:visible}.dk-line path{fill:none;stroke:#f1efe8;stroke-linecap:round;vector-effect:non-scaling-stroke}.dk-line .l0{stroke-width:1.3;stroke-opacity:.85;stroke-dasharray:1;stroke-dashoffset:0}.dk-line .l1{stroke-width:2.6;stroke:#bcd4ff;stroke-dasharray:.05 1.2;stroke-dashoffset:1.25;filter:drop-shadow(0 0 5px #8fb6ff)}[data-stage=hero] .dk-line .l0{animation:dkDraw 3.4s .45s cubic-bezier(.5,0,.2,1) both}[data-stage=hero] .dk-line .l1{animation:dkComet 6.5s 4.2s linear infinite}@keyframes dkDraw{0%{stroke-dashoffset:1}}@keyframes dkComet{to{stroke-dashoffset:0}}[data-stage=down] .dk-line,[data-stage=fell] .dk-line{opacity:0}.dk-astro{position:absolute;z-index:3;left:6vw;top:clamp(80px,17vh,200px);width:clamp(150px,21vw,330px)}.dk-head{position:absolute;z-index:3;right:12vw;top:clamp(86px,13vh,170px);width:clamp(84px,9.5vw,150px);rotate:12deg}.dk-astro .par,.dk-head .par{transition:transform .5s ease-out}.dk-astro .par{transform:translate(calc(var(--mx,0)*-22px),calc(var(--my,0)*-16px))}.dk-head .par{transform:translate(calc(var(--mx,0)*26px),calc(var(--my,0)*18px))}.dk-astro .flt{animation:dkFloat 7s ease-in-out infinite}.dk-head .flt{animation:dkFloat 8.5s 1s ease-in-out infinite reverse}@keyframes dkFloat{50%{transform:translateY(-16px) rotate(5deg)}}.dk-astro img,.dk-head img{display:block;width:100%;height:auto;filter:drop-shadow(0 26px 34px #000b)}[data-stage=down] .dk-astro,[data-stage=fell] .dk-astro,[data-stage=down] .dk-head,[data-stage=fell] .dk-head{opacity:0}[data-stage=hero] .dk-astro{animation:dkAstroIn 2s .1s cubic-bezier(.2,.9,.2,1) both}[data-stage=hero] .dk-head{animation:dkHeadIn 1.8s .5s cubic-bezier(.2,.9,.2,1) both}@keyframes dkAstroIn{0%{opacity:0;transform:translate(-24vw,-34vh) rotate(-38deg) scale(.45)}}@keyframes dkHeadIn{0%{opacity:0;transform:translate(14vw,-26vh) rotate(40deg) scale(.4)}}[data-stage=down] .dk-earth,[data-stage=fell] .dk-earth,[data-stage=down] .dk-atmo,[data-stage=fell] .dk-atmo{opacity:0}[data-stage=hero] .dk-earth{animation:dkRise 2.8s .2s cubic-bezier(.2,.8,.2,1) both}[data-stage=hero] .dk-atmo{animation:dkRise 3.2s .4s ease-out both}@keyframes dkRise{0%{opacity:0;transform:translateY(16%) scale(1.06)}}.dk-spk{position:absolute;z-index:2;fill:#fff;opacity:0;pointer-events:none}[data-stage=hero] .dk-spk{opacity:.9;animation:dkSpk 3.6s var(--dl,0s) ease-in-out infinite}@keyframes dkSpk{0%,to{transform:scale(.55) rotate(0);opacity:.35}50%{transform:scale(1.15) rotate(45deg);opacity:1}}.dk-down{position:absolute;z-index:4;left:50%;top:50%;transform:translate(-50%,-50%);text-align:center;color:var(--ink);font-size:clamp(28px,3.2vw,46px);line-height:1.05;margin:0;opacity:0;pointer-events:none}[data-stage=down] .dk-down{animation:dkWrite 1.2s .5s ease-out both}[data-stage=fell] .dk-down{opacity:0;transition:opacity .4s}@keyframes dkWrite{0%{opacity:0;transform:translate(-50%,-30%);filter:blur(6px)}to{opacity:1;transform:translate(-50%,-50%);filter:none}}.dk-down{opacity:0}[data-stage=down] .dk-down{opacity:1}.dk-sq{position:absolute;z-index:3;width:clamp(34px,3.4vw,52px);opacity:0;pointer-events:none;overflow:visible}.dk-sq path{fill:none;stroke:#f1efe8;stroke-width:1.4;stroke-linecap:round;stroke-dasharray:1;vector-effect:non-scaling-stroke}[data-stage=down] .dk-sq{opacity:.55;animation:dkSqF 6s var(--dl,0s) ease-in-out infinite alternate}[data-stage=down] .dk-sq path{animation:dkSqD 1.4s calc(.5s + var(--dl,0s)) ease-out both}@keyframes dkSqF{to{transform:translate(10px,-14px) rotate(14deg)}}@keyframes dkSqD{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}.dk-title{position:absolute;z-index:5;left:50%;top:50%;transform:translate(-50%,-50%);width:max-content;max-width:94vw;transition:left 1.5s var(--ease),top 1.5s var(--ease),transform 1.5s var(--ease)}.dk-title h2{font:400 clamp(50px,7.4vw,122px)/1 "Fraunces",serif;letter-spacing:-.025em;margin:0;color:#f6f4ee;text-shadow:0 4px 40px #0008}.dk-title p{position:absolute;top:100%;margin:6px 0 0;color:#cfcbc0;font-size:clamp(20px,1.9vw,28px);line-height:1.1;white-space:nowrap;transition:opacity .6s}.dk-title p.a{left:50%;transform:translate(-50%)}.dk-title p.b{left:0}[data-stage=down] .dk-title{opacity:0}[data-stage=fell] .dk-title h2{animation:dkFell 1.1s ease-out both}[data-stage=fell] .dk-title p.a{animation:dkFell 1.1s .4s ease-out both}@keyframes dkFell{0%{opacity:0;transform:translateY(14px);filter:blur(5px)}}.dk-title p.b,[data-stage=down] .dk-title p.a{opacity:0}[data-stage=hero] .dk-title{left:clamp(22px,33vw,560px);top:clamp(92px,15.5vh,170px);transform:none}[data-stage=hero] .dk-title p.a{opacity:0}[data-stage=hero] .dk-title p.b{opacity:1;transition-delay:1.2s}.dk-note{position:absolute;z-index:4;left:clamp(26px,12vw,220px);bottom:clamp(120px,26vh,260px);margin:0;color:var(--ink);opacity:0;rotate:-7deg;font-size:clamp(20px,1.9vw,28px);line-height:1.12}[data-stage=hero] .dk-note{opacity:.9;animation:dkNote 1.2s 1.6s ease-out both}@keyframes dkNote{0%{opacity:0;transform:translateY(16px)}}.aw{position:absolute;z-index:5;left:clamp(20px,4vw,64px);bottom:clamp(26px,5.5vh,60px);margin:0;display:flex;align-items:flex-end;gap:14px;font:400 clamp(56px,8.2vw,132px)/.9 "Fraunces",serif;letter-spacing:-.025em;color:#f6f4ee}.aw svg{margin-bottom:.12em;flex:none;width:.34em;height:auto;opacity:.8}[data-stage=down] .aw,[data-stage=fell] .aw{opacity:0}[data-stage=hero] .aw{animation:dkFell 1.1s 1.1s ease-out both}.dk-work{position:relative;z-index:1;max-width:1500px;margin:0 auto;padding:clamp(14px,2.4vh,26px) clamp(18px,4vw,64px) 0}.dk-bar{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.dk .chips{margin:0}.dk .chip{color:var(--ink);border-color:#ffffff30;padding:8px 18px;transition:.2s}.dk .chip:hover{border-color:#fffa}.dk .chip sup{font-size:10px;margin-left:6px;opacity:.55}.dk .chip[aria-pressed=true]{background:var(--ink);color:#07070a;border-color:var(--ink)}.dk-grp{position:relative;display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:clamp(46px,9vh,96px) 0 clamp(20px,3.4vh,34px)}.dk-grp small{display:block;font:500 12px DM Sans;letter-spacing:.16em;text-transform:uppercase;color:var(--mute);margin-bottom:10px}.dk-grp h3{font:400 clamp(32px,4.2vw,60px)/1.02 "Fraunces",serif;letter-spacing:-.02em}.dk-grp h3 i{color:#bdb9ad}.dk-brain{width:clamp(70px,9vw,130px);margin:0 clamp(0px,3vw,40px) -8px 0;animation:dkFloat 8s ease-in-out infinite}.dk-brain img{display:block;width:100%;height:auto;filter:drop-shadow(0 16px 24px #000a)}.dk-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,1.6vw,22px)}.dk-rv{opacity:0;transform:translateY(34px);transition:opacity .8s var(--d,0s) ease,transform .9s var(--d,0s) cubic-bezier(.2,.8,.2,1),border-color .3s,box-shadow .4s}.dk-rv.dk-in{opacity:1;transform:none}.dk-card{position:relative;display:flex;flex-direction:column;text-align:left;color:inherit;background:var(--card);border:1px solid #ffffff18;border-radius:20px;overflow:hidden;cursor:pointer;outline-offset:4px}.dk-card:hover,.dk-card:focus-visible{transform:translateY(-4px);border-color:color-mix(in srgb,var(--ac) 22%,#ffffff2a);box-shadow:0 24px 44px -30px #000c}.dk-card.dk-rv.dk-in:hover{transition-delay:0s}.dk-shot{position:relative;display:grid;place-items:center;background:radial-gradient(circle at 72% 14%,color-mix(in srgb,var(--ac) 24%,transparent),transparent 58%),radial-gradient(circle at 10% 92%,color-mix(in srgb,var(--ac) 10%,transparent),transparent 52%),#0b0b10}.dk-card.app .dk-shot{padding:clamp(26px,3.4vw,40px) 0 clamp(26px,3.4vw,40px)}.dk-card.app .ph{--pw:clamp(196px,15.5vw,236px)}.shot-s{position:relative;aspect-ratio:1903/997;overflow:hidden;width:100%;background:#0b0b10}.shot-s img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:top;opacity:0;transition:opacity .7s,transform .8s cubic-bezier(.2,.8,.2,1)}.shot-s img.on{opacity:1}.dk-card:hover .shot-s img,.dk-card:hover .cv{transform:scale(1.02)}.dk-meta{display:flex;flex-direction:column;gap:5px;padding:20px 24px 26px;border-top:1px solid #ffffff10}.dk-meta small{font:500 11px DM Sans;letter-spacing:.14em;text-transform:uppercase;color:color-mix(in srgb,var(--ac) 48%,#b9b6ac)}.dk-meta b{font:400 clamp(26px,2.2vw,32px)/1.08 "Fraunces",serif;letter-spacing:-.01em}.dk-meta span{color:#aaa79d;font-size:15px;line-height:1.45;padding-right:40px}.dk-meta em{font:500 12px DM Sans;font-style:normal;color:#7f7c74;margin-top:8px}.dk-card .arr{position:absolute;right:18px;bottom:22px;width:36px;height:36px;border-radius:50%;border-color:#ffffff38;font-style:normal;font-size:14px;transition:.3s}.dk-card:hover .arr,.dk-card:focus-visible .arr{background:#ffffff14;border-color:#fff6;transform:rotate(45deg)}.dk-card .badge{position:absolute;top:14px;left:14px;z-index:3;margin:0;box-shadow:0 8px 20px #0007}.cv{position:absolute;top:0;right:0;bottom:0;left:0;container-type:inline-size;display:grid;place-items:center;overflow:hidden;transition:transform .8s cubic-bezier(.2,.8,.2,1);background:radial-gradient(circle at 82% 10%,color-mix(in srgb,var(--ac) 42%,transparent),transparent 56%),radial-gradient(circle at 6% 100%,color-mix(in srgb,var(--ac) 22%,transparent),transparent 52%),#0e0e13}.cv-bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.cv-wave{fill:none;stroke:#fff;stroke-opacity:.34;stroke-width:1.2}.cv-wave.w2{stroke-opacity:.15}.cv-ring{fill:none;stroke:#fff;stroke-opacity:.16;stroke-width:1}.cv .flow{stroke:var(--ac);stroke-opacity:.8;stroke-dasharray:2 12;animation:dkFlow 16s linear infinite}@keyframes dkFlow{to{stroke-dashoffset:-280}}.cv-node{fill:#0e0e13;stroke:var(--ac);stroke-width:1.7}.cv-dot{fill:var(--ac)}.cv-lab{font:500 8.5px DM Sans;letter-spacing:.16em;text-transform:uppercase;fill:#fff;fill-opacity:.5}.cv-src{fill:#fff;fill-opacity:.35}.cv-vec{fill:var(--ac);fill-opacity:.75}.cv-tick{fill:#fff;fill-opacity:.38}.cv-merge{fill:none;stroke:var(--ac);stroke-opacity:.38;stroke-width:1.3}.cv-merge.flow{stroke-opacity:.9}.cv-frame{fill:none;stroke:#fff;stroke-opacity:.22}.cv-t{position:relative;z-index:1;font:400 clamp(26px,12.5cqw,66px)/1 "Fraunces",serif;color:#f6f4ee;letter-spacing:-.015em;text-shadow:0 2px 34px #000a;text-align:center;padding:0 6%}.dk-end{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:18px;max-width:1500px;margin:clamp(70px,12vh,140px) auto 0;padding:30px clamp(18px,4vw,64px) 20px;border-top:1px solid #ffffff1f;font-size:clamp(22px,2.4vw,30px)}.dk-end:before{content:"";position:absolute;left:clamp(18px,4vw,64px);right:clamp(18px,4vw,64px);top:-1px;height:1px;background:linear-gradient(90deg,transparent,#fff6,transparent)}.dk-end a.serif{text-decoration:none}.dk-end a.serif:hover i{text-decoration:underline;text-underline-offset:6px}.dk-end i{font-style:italic}.dk .btn.pill{color:var(--ink);border-color:#ffffff40}.dk .btn.pill:hover{background:var(--ink);color:#07070a}.dk-credit{width:100%;margin-top:26px;font:400 11px DM Sans;color:#5d5b55}.pv{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;color:#f1efe8;animation:pvFade .5s ease both}@keyframes pvFade{0%{opacity:0}}.pv-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 70% 70% at 76% 42%,color-mix(in srgb,var(--ac) 16%,transparent),transparent 70%),#07070af2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.pv-scroll{position:absolute;top:0;right:0;bottom:0;left:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scroll-behavior:smooth}.pv-main{position:relative;min-height:100vh;min-height:100svh;max-width:1640px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.04fr);align-items:center;gap:clamp(24px,5vw,96px);padding:clamp(88px,12vh,130px) clamp(24px,6vw,112px) clamp(104px,15vh,150px)}.pv-k{display:block;font:500 14px DM Sans;letter-spacing:.05em;color:#8d8a82;margin-bottom:8px}.pv-t{font:400 clamp(54px,8vw,136px)/.94 "Fraunces",serif;letter-spacing:-.03em;margin:0 0 .26em;text-wrap:balance}.pv .badge{display:block;width:fit-content;margin:0 0 16px}.pv-lead{font:400 clamp(17px,1.5vw,23px)/1.5 "DM Sans",sans-serif;color:#cfccc2;max-width:30em}.pv-act{display:flex;gap:12px;flex-wrap:wrap;margin:clamp(24px,4vh,38px) 0 22px}.pv-b{display:inline-flex;align-items:center;gap:8px;padding:14px 26px;border-radius:99px;border:1px solid #ffffff55;color:#f1efe8;font:500 16px DM Sans,sans-serif;text-decoration:none;transition:transform .25s,background .25s,box-shadow .25s,color .25s}.pv-b:hover{transform:translateY(-2px);background:#ffffff1f}.pv-b.fill{background:#f1efe8;color:#07070a;border-color:#f1efe8}.pv-b.fill:hover{background:#fff;box-shadow:0 14px 34px -12px #fff7}.pv-tags{display:flex;flex-wrap:wrap;gap:8px}.pv-tags span{font:500 13px DM Sans;padding:7px 15px;border:1px solid #ffffff2e;border-radius:99px;color:#d9d6cc}.pv-r{position:relative;display:grid;place-items:center;min-width:0}.pv-glow{position:absolute;top:-12%;right:-6%;bottom:-12%;left:-6%;background:radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--ac) 32%,transparent),transparent 62%);filter:blur(34px);opacity:.85;pointer-events:none}.pv-spark{position:absolute;z-index:2;top:3%;right:3%;width:clamp(18px,1.8vw,28px);fill:#fff;animation:dkSpk 3.4s ease-in-out infinite}.pv-phone,.pv-site{position:relative;z-index:1}.pv-phone .ph{--pw:clamp(210px,min(23vw,37vh),340px)}.pv-site{width:100%;max-width:840px}.pv-site .bw{border-color:#ffffff24;box-shadow:0 60px 100px -34px #000,0 0 0 1px #ffffff10;transform:perspective(1800px) rotateY(-5deg) rotateX(1.5deg);transition:transform .6s cubic-bezier(.2,.8,.2,1)}.pv-site .bw:hover{transform:perspective(1800px) rotateY(0) rotateX(0)}.pv-site .bw-screen{aspect-ratio:1903/997}.pv-main{--dx:1}.pv-main.back{--dx:-1}.pv-main.out{animation:pvOut .26s ease-in both}@keyframes pvOut{to{opacity:0;transform:translate(calc(var(--dx)*-36px))}}.pv-main.in .pv-l>*{animation:pvUp .8s cubic-bezier(.2,.8,.2,1) both}.pv-main.in .pv-l>:nth-child(2){animation-delay:.06s}.pv-main.in .pv-l>:nth-child(3){animation-delay:.12s}.pv-main.in .pv-l>:nth-child(4){animation-delay:.18s}.pv-main.in .pv-l>:nth-child(5){animation-delay:.24s}.pv-main.in .pv-l>:nth-child(6){animation-delay:.3s}.pv-main.in .pv-r{animation:pvDev 1s .05s cubic-bezier(.2,.8,.2,1) both}@keyframes pvUp{0%{opacity:0;transform:translateY(26px)}}@keyframes pvDev{0%{opacity:0;transform:translate(calc(var(--dx)*70px)) rotate(calc(var(--dx)*2deg)) scale(.96)}}.pv-x{position:fixed;z-index:5;top:calc(18px + env(safe-area-inset-top,0px));right:clamp(16px,3vw,38px);width:48px;height:48px;border-radius:50%;border:1px solid #ffffff44;background:#0b0b10b0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:grid;place-items:center;color:#f1efe8;cursor:pointer;padding:0;transition:transform .35s cubic-bezier(.3,1.6,.5,1),background .25s,color .25s}.pv-x svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}.pv-x:hover{transform:rotate(90deg);background:#f1efe8;color:#07070a}.pv-nav{position:fixed;z-index:5;left:50%;bottom:calc(22px + env(safe-area-inset-bottom,0px));transform:translate(-50%);display:flex;gap:10px}.pv-nav button{font:500 14px DM Sans,sans-serif;padding:11px 22px;border-radius:99px;border:1px solid #ffffff3a;background:#0b0b10c0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#f1efe8;cursor:pointer;transition:background .2s,color .2s,transform .2s}.pv-nav button:hover{background:#f1efe8;color:#07070a;transform:translateY(-2px)}.pv-story{position:relative;padding:clamp(48px,11vh,120px) clamp(24px,6vw,112px) clamp(120px,20vh,200px);border-top:1px solid #ffffff14;background:linear-gradient(180deg,#ffffff05,transparent 40%)}.pv-story-in{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(28px,6vw,96px);align-items:start}.pv-sl{grid-column:1/-1;margin:0;font:500 12px DM Sans;letter-spacing:.16em;text-transform:uppercase;color:#8d8a82}.pv-about{font:400 clamp(21px,2.1vw,30px)/1.35 "Fraunces",serif;color:#ece9df;letter-spacing:-.005em}.pv-points{list-style:none;margin:0;padding:0}.pv-points li{display:grid;grid-template-columns:44px 1fr;gap:6px;padding:17px 0;border-top:1px solid #ffffff16;color:#cdcabf;font-size:16px;line-height:1.55}.pv-points li:last-child{border-bottom:1px solid #ffffff16}.pv-points li span{font:500 12px DM Sans;letter-spacing:.1em;color:color-mix(in srgb,var(--ac) 75%,#fff);padding-top:5px}.pv-end{grid-column:1/-1;display:flex;gap:12px;flex-wrap:wrap;margin-top:10px}@media (max-width:1000px){.dk-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dk-card.app .ph{--pw:clamp(190px,26vw,236px)}}@media (max-width:820px){.dk-hero{height:max(100svh,700px)}.dk-earth{width:250vw;right:-112vw;bottom:-18vw;-webkit-mask-image:radial-gradient(ellipse 60% 70% at 52% 62%,#000 30%,transparent 72%);mask-image:radial-gradient(ellipse 60% 70% at 52% 62%,#000 30%,transparent 72%)}.dk-atmo{width:140vw;right:-20vw;height:70vw}.dk-line{display:none}.dk-astro{left:auto;right:5vw;top:30vh;width:clamp(120px,36vw,190px)}.dk-head{right:auto;left:7vw;top:44vh;width:clamp(70px,20vw,100px)}[data-stage=hero] .dk-title{left:22px;top:clamp(84px,12vh,120px)}.dk-title h2{font-size:clamp(46px,15vw,84px)}.dk-title p.b{white-space:normal;max-width:70vw}.dk-note{left:22px;bottom:clamp(96px,17vh,150px);font-size:21px}.aw{font-size:clamp(52px,16vw,88px)}.pv-main{grid-template-columns:1fr;align-items:start;padding-top:96px;gap:30px}.pv-r{order:-1}.pv-phone .ph{--pw:clamp(200px,58vw,270px)}.pv-t{font-size:clamp(50px,15vw,92px)}.pv-story-in{grid-template-columns:1fr}}@media (max-width:640px){.dk-grid{grid-template-columns:1fr}.dk-card.app .ph{--pw:clamp(210px,62vw,250px)}.dk-brain{display:none}}.dk-hero:after{content:"";position:absolute;z-index:4;left:0;right:0;bottom:0;height:16vh;pointer-events:none;background:linear-gradient(180deg,transparent,#07070a 92%)}.dk-note{text-shadow:0 2px 14px #000,0 0 30px #000c;bottom:clamp(150px,30vh,300px);color:#fff}.aw{z-index:5}.pv-bg{background:radial-gradient(ellipse 70% 70% at 76% 42%,color-mix(in srgb,var(--ac) 16%,transparent),transparent 70%),#07070af8;backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px)}.pv-t{font-size:clamp(48px,6.3vw,112px);overflow-wrap:anywhere}.pv-main{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}body:has(.pv) nav,body:has(.pv) .nav{visibility:hidden}@media (max-width:820px){.pv-t{font-size:clamp(46px,14vw,88px)}}.pv-nav button{white-space:nowrap}@media (max-width:820px){.pv-main{grid-template-columns:minmax(0,1fr)}}.isdark .bub,body:has(.pv) .bub{background:#f1efe81c;color:#f1efe8;border:1px solid #ffffff30;box-shadow:none;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-weight:400}.more{gap:34px 40px;padding-top:34px;padding-bottom:10px}.spot{position:relative;display:inline-block;margin:58px 30px 62px 12px}.spot .pill{margin:0;padding:15px 34px;font-size:clamp(16px,1.35vw,19px);position:relative;z-index:2;background:var(--bg)}.spot .pill:hover{background:var(--ink)}.spot .ring{position:absolute;left:-22px;right:-22px;top:-16px;bottom:-16px;width:calc(100% + 44px);height:calc(100% + 32px);z-index:1;pointer-events:none;overflow:visible}.spot .ring path{fill:none;stroke:var(--ink);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:1;opacity:.8;transition:stroke-dashoffset 1.5s cubic-bezier(.5,0,.2,1) .15s}.spot.seen .ring path{stroke-dashoffset:0}.spot .cn{position:absolute;z-index:3;white-space:nowrap;font-size:clamp(19px,1.7vw,25px);line-height:1;pointer-events:none;opacity:0;transition:opacity .6s}.spot.seen .cn{opacity:1}.spot.seen .cn1{transition-delay:1.1s}.spot.seen .cn2{transition-delay:1.5s}.spot .cn svg{position:absolute;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;overflow:visible}.spot .cn1{left:-30px;bottom:calc(100% + 30px);color:var(--mute);transform:rotate(-4deg);transform-origin:0 100%}.spot .cn1 svg{left:calc(100% - 6px);top:46%;animation:spotNudge 1.8s ease-in-out infinite}.spot .cn2{right:-14px;top:calc(100% + 30px);color:var(--blue);transform:rotate(-2.5deg);transform-origin:100% 0;padding-left:44px}.spot .cn2 svg{left:-4px;top:-26px;animation:spotNudgeUp 1.8s ease-in-out infinite .4s}@keyframes spotNudge{50%{transform:translate(4px,5px)}}@keyframes spotNudgeUp{50%{transform:translate(2px,-5px)}}.spot .burst2{position:absolute;right:-30px;top:-34px;z-index:3;pointer-events:none;fill:none;stroke:var(--ink);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;overflow:visible;opacity:0;transition:opacity .4s 1.3s}.spot.seen .burst2{opacity:1;animation:spotTwinkle 2.4s ease-in-out infinite 1.6s}.spot .burst2 .y{fill:var(--star);stroke:var(--ink);stroke-width:1.6}@keyframes spotTwinkle{50%{transform:rotate(8deg) scale(1.1)}}.work:has(.pill:hover) .spot .cn,.work:has(.pill:hover) .spot .ring{opacity:0;transition:opacity .25s}@media (max-width:820px){.more{gap:8px}.spot{margin:62px 20px 68px 8px}.spot .cn1{left:-8px}.spot .cn2{right:-6px}}@media (prefers-reduced-motion:reduce){.spot .cn svg,.spot.seen .burst2{animation:none}.spot .ring path{transition-duration:.01s}}
