@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--bg:#101110;--fg:#eeeee8;--muted:#969791;--line:#30312d;--primary:#ff4d24;--surface:#191a18;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font-family:'DM Sans',Arial,sans-serif;min-height:100svh;transition:background .3s,color .3s}body.light{--bg:#f2f2ed;--fg:#161713;--muted:#65675f;--line:#cecec6;--surface:#e8e8e0;color-scheme:light}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid var(--primary);outline-offset:6px}button{border:0;background:none}a{color:inherit;text-decoration:none}header{height:120px;display:flex;justify-content:space-between;align-items:center;margin:0 5.2%;border-bottom:1px solid var(--line);position:relative;z-index:2}.mark{font-family:'Space Grotesk',sans-serif;font-weight:700;letter-spacing:-5px;font-size:48px;line-height:1}.mark span{font:12px 'DM Sans',sans-serif;letter-spacing:0;vertical-align:top;margin-left:9px;color:var(--primary)}nav{display:flex;gap:34px;align-items:center}.nav-project{font-size:14px}.nav-project span{color:var(--primary);padding-left:12px}.languages{display:flex;align-items:center;gap:10px;font:12px monospace}.languages button{padding:7px 0;color:var(--muted)}.languages button[aria-pressed=true]{color:var(--primary)}.languages>span{color:var(--line)}.icon-button{border:1px solid var(--line);border-radius:8px;width:38px;height:38px;display:grid;place-items:center}.icon-button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6}#particles{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:0}main{position:relative;z-index:1;margin:0 9.1%;min-height:calc(100svh - 209px)}#home{display:flex;align-items:center}.hero{padding:65px 0 68px}.eyebrow{display:flex;align-items:center;gap:12px;font:12px monospace;letter-spacing:2.6px;color:var(--muted);margin:0 0 28px}.dash{display:block;width:25px;height:2px;background:var(--primary)}h1{font-family:'Space Grotesk',Arial,sans-serif;font-size:clamp(84px,8.3vw,144px);font-weight:500;line-height:.96;letter-spacing:-.075em;margin:0 0 29px;width:fit-content}h1>span{color:var(--primary)}h1 .period{color:var(--fg)}h1:focus,h2:focus{outline:none}.intro{font-size:17px;color:var(--muted);margin:0 0 35px;line-height:1.6}.hero-actions{display:flex;align-items:center;gap:25px}.project-button{display:flex;align-items:center;gap:27px;background:var(--primary);border-radius:5px;padding:12px 13px 12px 21px;color:#101110;font-size:14px;font-weight:600;transition:transform .2s,background .2s}.project-button:hover{transform:translateY(-3px);background:#ff6946}.round-arrow{border:1px solid #10111055;border-radius:50%;width:29px;height:29px;display:grid;place-items:center;font-size:21px;font-weight:400}.tiny{font:11px monospace;color:var(--muted);letter-spacing:2px}.socials{display:flex;gap:9px;margin-top:45px}.socials button{width:39px;height:39px;border:1px solid var(--line);border-radius:7px;display:grid;place-items:center;position:relative;color:var(--muted);transition:color .2s,border-color .2s,transform .2s}.socials button:hover{color:var(--primary);border-color:var(--primary);transform:translateY(-3px)}.socials svg{width:16px;height:16px;fill:currentColor}.socials button:after{content:attr(data-name);position:absolute;top:47px;background:var(--surface);padding:5px 9px;border-radius:4px;font-size:12px;opacity:0;pointer-events:none}.socials button:hover:after,.socials button:focus-visible:after{opacity:1}.orb-label{position:absolute;left:61%;bottom:80px;display:flex;flex-direction:column;align-items:center;gap:9px;white-space:nowrap;font:10px monospace;letter-spacing:2px;color:var(--muted)}.coord{font-size:10px;opacity:.5}footer{position:relative;z-index:1;margin:0 5.2%;height:89px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font:10px monospace;letter-spacing:1.2px;color:var(--muted)}.footer-center{font:12px 'DM Sans',sans-serif;letter-spacing:0}.footer-right{display:flex;align-items:center;gap:17px}.footer-right span{font-size:25px;color:var(--primary)}#projects{padding:67px 0 72px}.projects-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:42px}.projects-heading .eyebrow{margin-bottom:15px}h2{font-family:'Space Grotesk',sans-serif;font-weight:500;letter-spacing:-5px;font-size:86px;line-height:1.1;margin:0}h2 span{color:var(--primary)}.back{font-size:14px;padding:12px 0}.back:hover{color:var(--primary)}.project-list article{display:flex;gap:35px;align-items:center;padding:29px 0;border-top:1px solid var(--line);transition:padding .3s,background .3s}.project-list article:last-child{border-bottom:1px solid var(--line)}.project-list article:hover{padding-left:14px;background:var(--surface)}.number{font:12px monospace;color:var(--primary)}.category{font:10px monospace;letter-spacing:1.7px;color:var(--muted)}h3{font-family:'Space Grotesk',sans-serif;font-size:30px;font-weight:500;letter-spacing:-1px;margin:6px 0}.project-list p{margin:0;color:var(--muted);font-size:14px}.placeholder{font:10px monospace;letter-spacing:1px;color:var(--muted);border:1px solid var(--line);border-radius:20px;padding:7px 10px;margin-left:auto}.project-symbol{font-size:30px;color:var(--muted);margin-left:28px}.project-list article:hover .project-symbol{color:var(--primary)}[hidden]{display:none!important}#wash{position:fixed;z-index:20;width:100px;height:100px;background:var(--primary);border-radius:43% 57% 60% 40% / 45% 39% 61% 55%;pointer-events:none;transform:translate(-50%,-50%) scale(0)}#notice{position:fixed;z-index:30;bottom:30px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:var(--fg);color:var(--bg);font-size:14px;padding:14px 22px;border-radius:6px;transition:.2s;width:max-content;max-width:90vw;text-align:center}#notice.show{opacity:1;transform:translate(-50%,0)}
@media(min-width:1600px){.hero{padding:90px 0}.orb-label{bottom:100px}}@media(max-width:800px){header{height:90px;margin:0 6%}nav{gap:19px}.mark{font-size:40px}.hero{padding:76px 0 65px}main{margin:0 8%;min-height:calc(100svh - 179px)}h1{font-size:105px}.orb-label{display:none}.intro{max-width:250px;font-size:16px}.footer-center{display:none}.eyebrow{font-size:11px;letter-spacing:1.8px}.projects-heading{align-items:start;gap:20px}h2{font-size:61px}.back{font-size:12px;white-space:nowrap;margin-top:35px}.project-list article{gap:18px}.project-symbol{display:none}.placeholder{font-size:8px;padding:6px}.project-list p{max-width:220px}.project-list h3{font-size:26px}.category{font-size:9px}.footer-right{font-size:9px;gap:8px}}@media(max-width:400px){nav{gap:13px}.nav-project{font-size:12px}h1{font-size:88px}.hero-actions{gap:14px}.tiny{font-size:9px}.project-button{gap:18px;padding-left:15px}.placeholder{display:none}h2{font-size:52px}footer{font-size:9px;letter-spacing:.6px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}}
/* Compact shell and full-screen field */
body{transition:none}header{height:78px}.mark{font-size:39px;letter-spacing:-4px}nav{gap:26px}main{min-height:calc(100svh - 157px)}footer{height:79px}.hero{padding:76px 0}.hero .intro{text-shadow:0 0 20px var(--bg)}#projects{padding-top:53px}.projects-heading{margin-bottom:35px}.project-grid{display:grid;grid-template-columns:1.07fr 1fr;gap:22px;align-items:stretch}.project-card{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:9px;background:var(--surface);min-width:0;display:flex;flex-direction:column;transition:transform .35s,border-color .35s}.project-card:hover{transform:translateY(-5px);border-color:var(--primary)}.atlas{grid-row:span 2;background:var(--primary);color:#171612;border-color:var(--primary)}.card-top{display:flex;gap:12px;justify-content:space-between;align-items:center;padding:24px 25px;font:11px monospace;letter-spacing:1px}.card-top .placeholder{margin:0;font-size:9px;padding:6px 8px;color:inherit;border-color:currentColor;opacity:.65}.card-visual{display:flex;flex:1;align-items:center;justify-content:center;position:relative;overflow:hidden}.atlas-visual{min-height:355px;margin:15px 25px;background-image:linear-gradient(#17161218 1px,transparent 1px),linear-gradient(90deg,#17161218 1px,transparent 1px);background-size:40px 40px}.atlas-visual>span{font:600 clamp(95px,10vw,155px)/.85 'Space Grotesk',sans-serif;letter-spacing:-.1em;position:relative;transform:rotate(-7deg);transition:transform .5s}.atlas:hover .atlas-visual>span{transform:rotate(0deg)}.atlas-star{font-size:.46em;position:absolute;right:-.4em;top:-.3em;font-weight:400}.atlas-visual small{position:absolute;left:12px;bottom:15px;font:10px monospace;letter-spacing:1.6px}.card-copy{padding:22px 25px 26px}.card-copy h3{font-size:31px;margin:0 0 8px}.card-copy p{font-size:15px;line-height:1.6;margin:0;color:var(--muted)}.atlas .card-copy p{color:#171612ba}.card-tag{display:block;font:10px monospace;letter-spacing:1.1px;margin-top:22px;opacity:.65}.flow-visual{min-height:100px;padding:20px 25px}.flow-visual>span{display:flex;align-items:center;font:17px 'Space Grotesk',sans-serif;color:var(--muted);width:100%;justify-content:center}.flow-line{width:12%;height:1px;background:var(--line);margin:0 14px;position:relative}.flow-line:after{content:'';width:5px;height:5px;background:var(--primary);position:absolute;top:-2px;left:35%;transition:left .5s}.flow:hover .flow-line:after{left:95%}.flow-visual em{font-style:normal;font-size:38px;letter-spacing:-2px;color:var(--primary)}.playground{background:var(--fg);color:var(--bg)}.playground .card-copy p{color:inherit;opacity:.65}.play-visual{min-height:130px;flex-direction:column;gap:15px;background-image:radial-gradient(#ff4d2455 1px,transparent 1px);background-size:12px 12px;margin:0 25px}.play-visual>span{font:600 clamp(36px,4.6vw,67px)/1 monospace;letter-spacing:-4px;transition:letter-spacing .4s}.playground:hover .play-visual>span{letter-spacing:0}.play-visual small{font:10px monospace;letter-spacing:2px}.project-card .card-top{line-height:1.4}
#cursor-trail{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:100;display:none}#cursor-ring{position:fixed;left:0;top:0;width:26px;height:26px;border:1px solid var(--primary);border-radius:50%;z-index:101;pointer-events:none;opacity:0;transform:translate(-50%,-50%);transition:width .18s,height .18s,background .18s,opacity .15s}#cursor-ring.over{width:43px;height:43px;background:#ff4d2412}#cursor-ring.pressed{width:19px;height:19px;background:#ff4d2440}@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){body.custom-cursor,body.custom-cursor *{cursor:none!important}body.custom-cursor #cursor-trail{display:block}body.custom-cursor #cursor-ring.visible{opacity:1}}
::view-transition-old(root),::view-transition-new(root){animation:none;mix-blend-mode:normal}::view-transition-new(root){z-index:2}::view-transition-old(root){z-index:1}::view-transition-group(root){animation-duration:0s}.theme-transition *, .theme-transition *:before,.theme-transition *:after{transition:none!important}.theme-fallback{position:fixed;inset:0;z-index:50;pointer-events:none;overflow:hidden;contain:strict;background:var(--bg)}
@media(max-width:800px){header{height:68px}nav{gap:18px}.mark{font-size:35px}main{min-height:calc(100svh - 147px)}.hero{padding:68px 0}.project-grid{gap:16px}.card-top{padding:18px;flex-wrap:wrap;font-size:10px}.card-copy{padding:20px 18px}.atlas-visual{margin:10px 18px;min-height:330px}.atlas-visual>span{font-size:100px}.card-copy h3{font-size:26px}.flow-visual{padding:15px;min-height:80px}.flow-visual>span{font-size:14px}.flow-visual em{font-size:28px}.flow-line{margin:0 8px}.card-copy p{font-size:14px}.play-visual{margin:0 18px;min-height:100px}.play-visual>span{font-size:39px}.play-visual small{font-size:9px;letter-spacing:1px}}
@media(max-width:600px){.project-grid{grid-template-columns:1fr}.atlas{grid-row:auto}.atlas-visual{min-height:285px}.atlas-visual>span{font-size:130px}.card-top{flex-wrap:nowrap}.flow-visual{min-height:125px}.play-visual{min-height:170px}.play-visual>span{font-size:56px}.projects-heading{margin-bottom:26px}.card-copy{padding:22px}.card-tag{margin-top:15px}#projects{padding-top:40px}.hero{padding-top:64px}}

.theme-fallback .copy-home{display:flex;align-items:center}.theme-fallback .copy-projects{padding:53px 0 72px}@media(max-width:600px){.theme-fallback .copy-projects{padding-top:40px}}
header{position:sticky;top:0;z-index:8;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(14px)}main{min-height:calc(100svh - 78px)}.arcade-hint{display:flex;align-items:center;gap:13px;font:12px monospace;color:var(--muted);margin-top:28px;padding:5px 0}.arcade-hint>span:first-child{color:var(--primary);letter-spacing:3px}.arcade-hint:hover{color:var(--fg)}.signal-visual,.orbit-visual{min-height:135px;flex-direction:column;gap:17px}.signal-visual>span{font:500 clamp(45px,5vw,75px)/1 'Space Grotesk',sans-serif;letter-spacing:-4px;color:var(--primary)}.forma{grid-row:span 2;background:#d6dfcc;color:#191d17}.forma .card-copy p{color:#4d5747}.forma-visual{min-height:355px;flex-direction:column;gap:26px}.forma-visual>span{font:500 clamp(75px,8vw,120px)/.9 'Space Grotesk',sans-serif;letter-spacing:-9px}.orbit-visual>span{font:500 clamp(30px,3.5vw,50px)/1 monospace;letter-spacing:-2px;color:var(--primary)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#arcade{position:fixed;inset:0;z-index:40;background:#101110f5;color:#eeeee8;display:grid;place-items:center;padding:20px;overflow:auto;font-family:monospace}.arcade-shell{width:min(720px,100%)}.arcade-top{display:flex;align-items:center;justify-content:space-between;color:#ff4d24;font-size:13px;letter-spacing:3px;margin-bottom:18px}.arcade-top button{border:1px solid #42443c;border-radius:5px;color:#eeeee8;padding:8px 13px;font:12px monospace;letter-spacing:1px}.arcade-hud{display:flex;justify-content:space-between;font-size:12px;color:#969791;padding:13px 0;letter-spacing:2px}.arcade-hud strong{font-size:17px;color:#eeeee8;margin-left:10px;font-weight:400}.game-stage{position:relative;border:1px solid #33352e;background:#0b0c0b;line-height:0;width:100%;max-height:calc(100svh - 205px);aspect-ratio:720 / 560}.game-stage canvas{display:block;width:100%;height:100%;object-fit:contain;outline:none}.game-message{position:absolute;inset:0;background:#101110e8;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.5;text-align:center;padding:20px}.game-message h2{font:500 clamp(30px,5vw,48px) 'Space Grotesk',sans-serif;letter-spacing:-2px;color:#ff4d24}.game-message p{font:14px/1.6 monospace;color:#b8b9b0}.game-message button{background:#ff4d24;color:#101110;padding:12px 23px;border-radius:4px;font:14px monospace;margin-top:14px}.arcade-controls{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#969791;letter-spacing:1px;margin-top:16px}.arcade-controls button{font:inherit;padding:5px}.touch-controls{display:none;justify-content:space-between;margin-top:18px;gap:15px}.touch-controls button{border:1px solid #55574e;border-radius:5px;min-width:65px;min-height:48px;touch-action:none}.touch-controls button[data-key=Space]{flex:1;color:#ff4d24}body.game-mode{overflow:hidden}body.game-mode #cursor-ring,body.game-mode #cursor-trail{display:none!important}body.game-mode.custom-cursor,body.game-mode.custom-cursor *{cursor:auto!important}body.game-mode button{cursor:pointer!important}@media(pointer:coarse){.touch-controls{display:flex}.game-stage{max-height:calc(100svh - 280px)}}@media(max-width:800px){main{min-height:calc(100svh - 68px)}}@media(max-width:600px){.forma{grid-row:auto}.forma-visual{min-height:285px}.arcade-hud{font-size:10px;letter-spacing:1px}.arcade-hud strong{font-size:15px;margin-left:5px}#arcade{padding:15px}.arcade-controls{font-size:9px;letter-spacing:0}}
.nav-history{font-size:14px}.nav-history>span{color:var(--primary);padding-left:12px}header [data-go][aria-current=page]{color:var(--primary)}#history,.theme-fallback .copy-history{padding:53px 0 80px}.history-layout{display:grid;grid-template-columns:1fr 2.1fr;gap:60px;margin-top:65px}.history-intro{align-self:start;position:sticky;top:125px}.history-index{font:12px monospace;color:var(--primary);letter-spacing:2px}.history-intro p{font:400 clamp(25px,3vw,40px)/1.15 'Space Grotesk',sans-serif;letter-spacing:-1.5px;max-width:210px;margin:22px 0}.history-draft{font:11px/1.8 monospace;letter-spacing:1px;color:var(--muted);display:block;max-width:210px}.career-timeline{list-style:none;margin:0;padding:0}.career-entry{position:relative;border-left:1px solid var(--line);padding:0 0 48px 35px}.career-entry:before{content:'';position:absolute;top:2px;left:-5px;width:9px;height:9px;border:1px solid var(--primary);background:var(--bg);border-radius:50%;transition:background .2s,box-shadow .2s}.career-entry:first-child:before{background:var(--primary)}.career-entry:hover:before{background:var(--primary);box-shadow:0 0 0 6px #ff4d2412}.career-entry:last-child{padding-bottom:0;border-left-color:transparent}.career-meta{display:flex;align-items:center;gap:17px;font:12px monospace;color:var(--muted);margin-bottom:23px}.career-number{color:var(--primary)}.career-company{font:12px monospace;letter-spacing:1px;color:var(--muted)}.career-content h3{font-size:clamp(25px,3vw,35px);margin:9px 0 13px}.career-content p{font-size:16px;color:var(--muted);line-height:1.7;max-width:480px;margin:0}.career-skills{display:flex;gap:9px;flex-wrap:wrap;margin-top:20px}.career-skills span{font:12px monospace;border:1px solid var(--line);border-radius:5px;padding:8px 11px;color:var(--muted);background:var(--bg)}.career-content{border-bottom:1px solid var(--line);padding-bottom:34px}.career-entry:last-child .career-content{border-bottom:0}@media(max-width:800px){header nav{gap:16px}.nav-project>span,.nav-history>span{display:none}.history-layout{gap:30px;grid-template-columns:1fr 2fr}.career-entry{padding-left:25px}.career-content h3{font-size:27px}.history-intro p{font-size:29px}}@media(max-width:600px){#history,.theme-fallback .copy-history{padding-top:40px}.history-layout{grid-template-columns:1fr;gap:35px;margin-top:35px}.history-intro{position:static}.history-intro p{max-width:none;margin:12px 0}.history-draft{max-width:none}.career-timeline{margin-left:5px}.career-meta{margin-bottom:20px}header nav{gap:13px}.nav-history,.nav-project{font-size:12px}header .languages{gap:6px}header .icon-button{width:32px;height:32px}.mark{font-size:32px}.mark span{margin-left:7px}.career-content h3{font-size:26px}}@media(max-width:360px){header{margin:0 4%}header nav{gap:9px}.mark{font-size:29px}}
/* Career as a Git branch graph: each role branches from and rejoins main. */
.git-timeline .career-entry{border:0;padding:28px 0 35px 96px;min-height:285px}.git-timeline .career-entry:before{display:none}.git-timeline .career-meta{gap:15px;flex-wrap:wrap;margin-bottom:20px;line-height:1.5}.git-timeline .career-number{font-size:12px;letter-spacing:-.2px;color:var(--primary)}.git-rail{position:absolute;left:0;top:0;bottom:0;width:76px;pointer-events:none}.git-main-line{position:absolute;left:12px;top:0;bottom:0;border-left:1px solid var(--line)}.git-rail svg{position:absolute;left:0;width:76px;height:80px;stroke:var(--primary);stroke-width:1.5;overflow:visible}.git-split{top:0}.git-merge{bottom:0}.git-branch-line{position:absolute;left:56px;top:79px;bottom:79px;border-left:1.5px solid var(--primary)}.git-commit{position:absolute;left:50px;top:35px;width:13px;height:13px;border:2px solid var(--primary);border-radius:50%;background:var(--bg);box-shadow:0 0 0 5px var(--bg);transition:background .2s,box-shadow .2s}.git-fork{position:absolute;left:9px;top:0;width:7px;height:7px;background:var(--muted);border-radius:50%}.git-timeline .career-entry:hover .git-commit,.git-timeline .career-entry:first-child .git-commit{background:var(--primary);box-shadow:0 0 0 5px var(--bg),0 0 0 6px #ff4d2430}.git-timeline .career-content{padding-bottom:30px}.git-timeline .career-entry:last-child{padding-bottom:35px}.history-intro .history-index{border:1px solid var(--line);padding:8px 11px;border-radius:5px;background:var(--bg);display:inline-block;letter-spacing:.5px}.history-intro p{max-width:235px}.git-timeline:after{content:'main';display:block;font:12px monospace;color:var(--muted);margin-left:0;padding-top:12px}.history-layout{gap:40px;grid-template-columns:1fr 2.4fr}@media(max-width:800px){.history-layout{gap:22px;grid-template-columns:1fr 2.6fr}.git-timeline .career-entry{padding-left:85px}.git-timeline .career-meta{gap:8px}.history-intro p{font-size:26px}}@media(max-width:600px){.history-layout{grid-template-columns:1fr;gap:20px}.history-intro p{max-width:none}.git-timeline{margin-left:0}.git-timeline .career-entry{padding-left:68px;min-height:300px}.git-rail{transform:scaleX(.75);transform-origin:left}.git-timeline .career-content h3{font-size:24px}.git-timeline .career-meta{flex-direction:column;align-items:flex-start}.git-timeline .career-content p{font-size:15px}.career-skills span{font-size:11px}}

/* Unmerged side branches fade out instead of rejoining the career path. */
:root{--branch-violet:#a68bea;--branch-cyan:#56b8cb;--branch-amber:#c9aa5f}body.light{--branch-violet:#7857b6;--branch-cyan:#247f91;--branch-amber:#997623}.git-rail .git-ghosts{left:-100px;top:0;width:220px;height:320px;stroke:none;stroke-width:1.4;opacity:.8;z-index:0}.git-ghosts circle{fill:var(--bg);stroke-width:1.5}.git-main-line,.git-split,.git-merge,.git-branch-line,.git-commit,.git-fork{z-index:1}.git-ghosts{transition:opacity .3s}.career-entry:hover .git-ghosts{opacity:1}@media(max-width:800px){.git-rail .git-ghosts{transform:scaleX(.65);transform-origin:112px 0}}@media(max-width:600px){.git-rail .git-ghosts{transform:scaleX(.28);opacity:.7}.git-ghosts circle{stroke-width:2}.git-rail .git-ghosts path{stroke-width:2}}

/* Double the graph's original line weights, including the mobile treatment. */
.git-main-line{border-left-width:2px;left:11px}.git-rail .git-split,.git-rail .git-merge{stroke-width:3}.git-branch-line{border-left-width:3px;left:54.5px}.git-rail .git-ghosts{stroke-width:2.8}.git-ghosts circle{stroke-width:3}.git-commit{border-width:4px}@media(max-width:600px){.git-rail .git-ghosts path,.git-rail .git-ghosts circle{stroke-width:4}}
.nav-blog{font-size:14px}.nav-blog>span{color:var(--primary);padding-left:12px}#blog,.theme-fallback .copy-blog{padding:53px 0 80px}.blog-grid{display:grid;grid-template-columns:1.12fr 1fr;gap:23px}.blog-card{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:9px;background:var(--surface);display:flex;flex-direction:column}.blog-featured{grid-row:span 2;background:var(--primary);border-color:var(--primary);color:#161713;transition:transform .25s}.blog-featured:hover{transform:translateY(-5px)}.blog-card-top{padding:24px;display:flex;align-items:center;justify-content:space-between;gap:12px;font:11px/1.4 monospace;letter-spacing:.8px}.blog-status{font-size:9px;border:1px solid currentColor;border-radius:20px;padding:6px 8px;opacity:.7}.blog-art{min-height:130px;display:flex;align-items:center;justify-content:center;padding:20px;font:500 clamp(30px,4vw,54px)/1 monospace;letter-spacing:-2px}.blog-less{flex:1;min-height:300px;align-items:center;justify-content:flex-start;padding:30px}.blog-less>span{font:500 clamp(65px,7vw,108px)/.9 'Space Grotesk',sans-serif;letter-spacing:-7px}.blog-less i{font-size:.47em;font-style:normal;letter-spacing:-3px}.blog-card-copy{padding:24px 28px 30px}.blog-card h3{font-size:clamp(25px,2.7vw,36px);line-height:1.1;letter-spacing:-1.3px;margin:0 0 17px}.blog-card p{font-size:16px;line-height:1.6;margin:0;color:var(--muted)}.blog-featured p{color:#161713bd}.blog-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:30px;font:11px/1.5 monospace}.blog-bottom>span:last-child{font:14px 'DM Sans',sans-serif}.blog-code .blog-art{color:var(--primary)}.blog-lab{background:var(--fg);color:var(--bg)}.blog-lab p{color:inherit;opacity:.7}#article,.theme-fallback .copy-article{padding:35px 0 90px}.article-top{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--line);padding-bottom:18px}.article-sample{font:11px monospace;letter-spacing:1px;color:var(--muted)}.reading{max-width:760px;margin:60px auto 0}.reading-header{position:static;display:block;height:auto;min-height:0;margin:0;padding:0;border:0;background:none;backdrop-filter:none;z-index:auto}.reading-header h1{font:500 clamp(43px,5.5vw,76px)/1.04 'Space Grotesk',sans-serif;letter-spacing:-.055em;margin:0 0 26px;width:auto}.article-deck{font-size:21px;line-height:1.55;color:var(--muted);margin:0}.article-meta{display:flex;gap:25px;font:11px monospace;color:var(--muted);letter-spacing:1px;border-bottom:1px solid var(--line);margin-top:30px;padding-bottom:30px}.article-body{max-width:640px;margin:42px auto}.article-body p{font-size:18px;line-height:1.85;color:var(--muted);margin:0 0 24px}.article-body>p:first-child{font-size:16px;border-left:2px solid var(--primary);padding-left:20px}.article-body h2{font:500 clamp(25px,3vw,32px)/1.25 'Space Grotesk',sans-serif;letter-spacing:-1px;margin:44px 0 22px}.article-body blockquote{font:400 clamp(25px,3vw,34px)/1.4 'Space Grotesk',sans-serif;letter-spacing:-.6px;margin:40px 0;padding:28px 0;border-top:1px solid var(--primary);border-bottom:1px solid var(--line);color:var(--fg)}.article-end{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:24px;font-size:14px}.article-end>span{color:var(--primary);font:16px monospace}.article-end a:hover{color:var(--primary)}@media(max-width:800px){.nav-blog>span{display:none}.blog-card-top{padding:18px;flex-wrap:wrap}.blog-card-copy{padding:20px}.blog-less{padding:20px}.blog-less>span{font-size:75px}.blog-bottom{flex-wrap:wrap}.blog-card h3{font-size:28px}}@media(max-width:600px){body>header{height:auto;min-height:68px;padding:12px 0;gap:18px}body>header>nav{flex-wrap:wrap;justify-content:flex-end;row-gap:9px;max-width:calc(100% - 60px)}.nav-blog{font-size:12px}.blog-grid{grid-template-columns:1fr;gap:18px}.blog-featured{grid-row:auto}.blog-less{min-height:240px}.blog-card-top{flex-wrap:nowrap}.blog-art{min-height:150px}#blog,.theme-fallback .copy-blog{padding-top:40px}.reading{margin-top:38px}.article-top{gap:12px}.article-sample{font-size:9px}.article-deck{font-size:18px}.article-body p{font-size:17px}.article-meta{font-size:10px;gap:20px}.article-body{margin-top:30px}.reading-header{padding:0}.reading-header h1{font-size:45px}}
/* Adaptive cursor: the trail has a contrasting hairline at all times. */
#cursor-ring{--cursor-ink:255,77,36;--cursor-outline:16,17,16;border:1.6px solid rgb(var(--cursor-ink));box-shadow:0 0 0 1px rgba(var(--cursor-outline),.4);transition:width .18s,height .18s,background .18s,opacity .15s,border-color .12s}#cursor-ring.over{background:rgba(var(--cursor-ink),.09)}#cursor-ring.pressed{background:rgba(var(--cursor-ink),.22)}
/* DEVELOPMENT ONLY */
#cursor-lab{position:fixed;z-index:95;left:14px;top:92px;width:250px;max-width:calc(100vw - 28px);font:12px/1.5 monospace;background:var(--bg);border:1px solid var(--line);border-radius:8px;box-shadow:0 10px 35px #0002;color:var(--fg)}#cursor-lab summary{display:flex;align-items:center;gap:9px;padding:12px 14px;list-style:none;user-select:none;cursor:pointer}#cursor-lab summary::-webkit-details-marker{display:none}.dev-led{width:6px;height:6px;background:var(--primary);border-radius:2px}.dev-tag{font-size:9px;letter-spacing:1px;color:var(--primary);border:1px solid var(--line);padding:1px 5px;border-radius:3px}.lab-toggle{margin-left:auto;font-size:18px;line-height:1;transition:transform .2s}#cursor-lab details[open] .lab-toggle{transform:rotate(45deg)}.lab-body{padding:0 14px 14px;max-height:calc(100svh - 165px);overflow:auto}.lab-body>p{font:12px/1.5 'DM Sans',sans-serif;color:var(--muted);margin:0 0 16px}.lab-control{display:grid;grid-template-columns:1fr auto;gap:7px;margin-bottom:13px}.lab-control label{font-size:12px}.lab-control output{color:var(--primary);font-size:11px}.lab-control input{grid-column:1/-1;width:100%;margin:0;accent-color:var(--primary);min-height:20px}.lab-control input:focus-visible,#cursor-lab summary:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.lab-actions{border-top:1px solid var(--line);padding-top:12px;display:flex;justify-content:space-between;align-items:center}.lab-actions button{border:1px solid var(--line);border-radius:4px;padding:6px 8px;font:11px monospace}.lab-actions a{color:var(--primary)}.lab-actions button:hover{border-color:var(--primary)}body.game-mode #cursor-lab{display:none}
#style-kit,.theme-fallback .copy-style-kit{padding:53px 0 100px}.kit-lead{max-width:690px;font-size:18px;line-height:1.65;color:var(--muted);margin:0 0 30px}.kit-index{display:flex;gap:12px 24px;flex-wrap:wrap;margin-bottom:55px;font:12px monospace}.kit-index a{border-bottom:1px solid var(--line);padding:8px 0;color:var(--muted)}.kit-index a:hover{color:var(--primary);border-color:var(--primary)}.kit-section{padding:35px 0;border-top:1px solid var(--line);scroll-margin-top:100px}.kit-section-head{display:flex;gap:22px;align-items:center;margin-bottom:24px}.kit-section-head>span{font:12px monospace;color:var(--primary)}.kit-section-head h3{font-size:32px;margin:0}.kit-section>p{font-size:16px;line-height:1.7;color:var(--muted);max-width:760px}.kit-swatches{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:28px 0}.kit-swatch{min-width:0;border:1px solid var(--line);border-radius:7px;overflow:hidden;background:var(--bg)}.kit-swatch>span{height:100px;display:block;border-bottom:1px solid var(--line)}.kit-swatch strong{display:block;font-size:13px;padding:13px 12px 4px;font-weight:500}.kit-swatch code{display:block;font-size:11px;color:var(--muted);padding:0 12px 14px}.kit-note{font-size:14px!important;color:var(--muted);line-height:1.7!important;border-left:2px solid var(--line);padding-left:17px;max-width:800px;margin:28px 0 0}.kit-type-row{padding:27px 0;border-bottom:1px solid var(--line)}.kit-type-row:last-of-type{border-bottom:0}.kit-type-row>code{font:11px monospace;letter-spacing:1px;color:var(--muted)}.kit-type-row>p{margin:18px 0 0}.kit-display{font:500 clamp(40px,6vw,80px)/1.05 'Space Grotesk',sans-serif;letter-spacing:-.055em}.kit-display>span{color:var(--primary)}.kit-heading{font:500 clamp(28px,4vw,42px)/1.2 'Space Grotesk',sans-serif;letter-spacing:-1.5px}.kit-body{font-size:18px;line-height:1.7;max-width:660px;color:var(--muted)}.kit-meta{font:12px monospace;letter-spacing:2px}.kit-component-row{display:flex;align-items:center;flex-wrap:wrap;gap:20px;padding:18px 0}.kit-secondary{border:1px solid var(--line);border-radius:5px;padding:14px 20px;font-size:14px;transition:border-color .2s,color .2s}.kit-secondary:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.kit-secondary:disabled{opacity:.35;cursor:not-allowed}.kit-text-link{font-size:14px;text-decoration:underline;text-underline-offset:5px;text-decoration-color:var(--primary)}.kit-text-link:hover{color:var(--primary)}.kit-badge{font:11px monospace;letter-spacing:.6px;padding:7px 10px;border:1px solid var(--line);border-radius:20px}.kit-badge.accent{border-color:var(--primary);color:var(--primary)}.kit-component-row .placeholder{margin:0}.kit-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:28px 0}.kit-example-card{padding:26px;border:1px solid var(--line);border-radius:9px;min-height:285px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .25s}.kit-example-card:hover{transform:translateY(-4px)}.kit-example-card>span{font:11px monospace;letter-spacing:1px}.kit-example-card h4{font:500 clamp(28px,3.5vw,44px)/1.1 'Space Grotesk',sans-serif;letter-spacing:-1.5px;margin:25px 0}.kit-example-card p{font:12px monospace;margin:0;opacity:.75}.kit-orange{background:#ff4d24;color:#101110;border-color:#ff4d24}.kit-dark{background:#101110;color:#eeeee8;border-color:#30312d}.kit-light{background:#f2f2ed;color:#161713;border-color:#cecec6}.kit-motion-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.kit-motion-grid h4{font:500 24px 'Space Grotesk',sans-serif;margin:0 0 13px}.kit-motion-grid p{font-size:16px;line-height:1.7;color:var(--muted);margin:0}@media(max-width:800px){#cursor-lab{top:86px;width:225px}.kit-swatches{grid-template-columns:repeat(3,minmax(0,1fr))}.kit-card-grid{gap:12px}.kit-example-card{padding:18px;min-height:255px}.kit-example-card h4{font-size:30px}.kit-motion-grid{gap:18px}}@media(max-width:600px){#cursor-lab{top:102px;left:10px;width:220px}#cursor-lab summary{padding:9px 12px}.lab-body{max-height:calc(100svh - 160px)}#style-kit,.theme-fallback .copy-style-kit{padding-top:40px}.kit-lead{font-size:16px}.kit-index{gap:8px 17px;margin-bottom:30px}.kit-card-grid,.kit-motion-grid{grid-template-columns:1fr}.kit-example-card{min-height:250px;padding:25px}.kit-example-card h4{font-size:40px}.kit-section{scroll-margin-top:120px}.kit-section-head h3{font-size:26px}.kit-section-head{gap:15px}.kit-swatches{gap:9px}.kit-swatch strong{font-size:12px;padding-left:8px}.kit-swatch code{padding-left:8px;font-size:10px}.kit-swatch>span{height:75px}}
#atlas,.theme-fallback .copy-atlas{padding:35px 0 75px}.case-top{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:18px}.case-label{font:10px/1.5 monospace;letter-spacing:1px;color:var(--muted)}.case-hero{position:relative;padding:65px 0 40px}.case-hero h1{font:500 clamp(75px,10.5vw,155px)/.9 'Space Grotesk',sans-serif;letter-spacing:-.065em;margin:0}.case-hero h1 span{color:var(--primary)}.case-tagline{position:absolute;right:0;bottom:48px;white-space:pre-line;font:400 clamp(20px,2.5vw,31px)/1.35 'Space Grotesk',sans-serif;letter-spacing:-1px;color:var(--muted);max-width:310px}.case-intro{display:grid;grid-template-columns:1fr 1fr;gap:70px;border-top:1px solid var(--line);padding-top:32px;margin-top:10px}.case-summary{font-size:19px;line-height:1.65;margin:0;color:var(--muted);max-width:500px}.case-facts{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin:0}.case-facts dt{font:10px monospace;color:var(--muted);letter-spacing:1.5px;margin-bottom:9px}.case-facts dd{font-size:14px;margin:0;line-height:1.5}.case-disclaimer{font:12px/1.7 monospace;color:var(--muted);border-left:2px solid var(--primary);padding-left:14px;margin:35px 0 45px;max-width:800px}.case-preview{margin:0 0 80px;background:var(--primary);padding:25px 35px 40px;border-radius:8px;overflow:hidden}.case-preview figcaption{display:flex;justify-content:space-between;gap:15px;margin-bottom:24px;color:#161713;font:10px/1.5 monospace;letter-spacing:1px}.atlas-product{display:grid;grid-template-columns:150px 1fr;background:#141512;color:#eceee6;border-radius:7px;border:1px solid #21241c;box-shadow:0 20px 45px #52160538}.atlas-sidebar{padding:25px 18px;border-right:1px solid #303329;display:flex;flex-direction:column;gap:18px}.atlas-sidebar>strong{font:600 31px 'Space Grotesk',sans-serif;letter-spacing:-2px;margin-bottom:22px}.atlas-sidebar>strong span{font-size:23px;color:#ff4d24;margin-left:8px}.atlas-sidebar>span{font-size:12px;color:#929887;padding:8px}.atlas-sidebar .mock-active{color:#ff6e4d;background:#ff4d2415;border-radius:4px}.atlas-sidebar small{font:8px/1.6 monospace;margin-top:auto;color:#7f8675;letter-spacing:1px}.atlas-workspace{padding:27px;min-width:0}.mock-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.mock-heading>div>span{font:9px monospace;color:#929887;letter-spacing:1px}.mock-heading h3{font:500 clamp(17px,2vw,25px)/1.2 'Space Grotesk',sans-serif;letter-spacing:-.7px;margin:9px 0 24px}.mock-avatar{border:1px solid #424736;border-radius:50%;font:10px monospace;padding:10px}.mock-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:26px}.mock-stats>div{border:1px solid #303329;padding:15px;border-radius:5px}.mock-stats small{font:8px monospace;color:#a0a794;letter-spacing:.5px}.mock-stats strong{display:block;font:500 34px 'Space Grotesk',sans-serif;margin-top:9px}.mock-stats strong>span{font:9px 'DM Sans',sans-serif;color:#929887;display:block;margin-top:3px}.mock-table-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;font-size:12px}.mock-table-heading>span{font:8px monospace;color:#929887}.mock-project-row{display:grid;grid-template-columns:20px 1fr 80px 80px;align-items:center;gap:12px;border-top:1px solid #303329;padding:16px 0}.mock-project-id{font:10px monospace;color:#ff6e4d}.mock-project-row strong{font-size:11px;font-weight:500;display:block}.mock-project-row small{font-size:9px;color:#929887;display:block;margin-top:4px}.mock-progress{height:3px;background:#33392a}.mock-progress i{display:block;height:100%;background:#ff6e4d}.mock-status{font:9px monospace;color:#adb39f;text-align:right}.case-story{display:grid;grid-template-columns:1fr 1.55fr;gap:65px;padding:40px 0;border-top:1px solid var(--line)}.case-section-label>span{font:11px monospace;color:var(--primary);letter-spacing:1px}.case-section-label h2{font:500 clamp(27px,3.4vw,43px)/1.13 'Space Grotesk',sans-serif;letter-spacing:-1.8px;white-space:pre-line;margin-top:22px}.case-story p{font-size:17px;line-height:1.8;color:var(--muted);margin:0 0 20px}.case-step{display:flex;gap:22px;margin-bottom:28px}.case-step>span{font:12px monospace;color:var(--primary);padding-top:7px}.case-step h3{font-size:24px;margin:0 0 10px}.case-step p{font-size:16px;margin:0}.case-features{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin:18px 0 60px}.case-features>div{padding:27px;border:1px solid var(--line);border-radius:7px;background:var(--surface)}.case-features>div>span{font:12px monospace;color:var(--primary)}.case-features h3{font-size:23px;margin:30px 0 12px}.case-features p{font-size:15px;line-height:1.7;color:var(--muted);margin:0}.case-results{background:var(--fg);color:var(--bg);border-radius:8px;padding:40px;margin:0 0 55px}.case-results-heading{display:flex;justify-content:space-between;gap:25px;align-items:start}.case-results .eyebrow{color:inherit;opacity:.6;margin-bottom:18px}.case-results h2{font:500 clamp(30px,4vw,51px)/1.1 'Space Grotesk',sans-serif;letter-spacing:-2px;white-space:pre-line}.case-results .case-label{color:inherit;opacity:.6}.case-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:42px;padding-top:28px;border-top:1px solid color-mix(in srgb,var(--bg) 25%,transparent)}.case-metrics strong{font:500 clamp(45px,6vw,80px)/1 'Space Grotesk',sans-serif;letter-spacing:-4px;display:block;margin-bottom:14px}.case-metrics>div>span{font-size:14px;line-height:1.5;opacity:.7;display:block;max-width:180px}.case-tech-tags{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:24px}.case-tech-tags>span{font:12px monospace;border:1px solid var(--line);border-radius:5px;padding:9px 13px}.case-end{margin-top:25px;border-top:1px solid var(--line);padding-top:32px;display:flex;justify-content:space-between;align-items:center}.case-end>span{font:12px monospace;color:var(--muted)}.case-end>a{font:500 clamp(25px,4vw,42px) 'Space Grotesk',sans-serif;letter-spacing:-1.5px}.case-end>a>span:last-child{color:var(--primary);margin-left:24px}.case-end>a:hover{color:var(--primary)}a.atlas:focus-visible{outline:2px solid var(--fg);outline-offset:5px}@media(max-width:1000px){.case-preview{padding:22px}.atlas-product{grid-template-columns:120px 1fr}.atlas-workspace{padding:20px}.mock-project-row{grid-template-columns:18px 1fr 45px 70px;gap:9px}.case-intro{gap:35px}.case-tagline{font-size:24px;max-width:245px}.case-story{gap:35px}.case-features{gap:14px}.case-features>div{padding:20px}}@media(max-width:700px){.case-hero{padding-top:45px}.case-hero h1{font-size:100px}.case-tagline{position:static;max-width:none;margin:28px 0 0}.case-intro{grid-template-columns:1fr;gap:30px}.case-summary{font-size:17px}.case-facts{gap:24px}.case-preview{padding:17px;margin-bottom:40px}.case-preview figcaption{font-size:8px}.atlas-product{grid-template-columns:1fr}.atlas-sidebar{display:none}.atlas-workspace{padding:18px}.mock-stats{gap:7px}.mock-stats>div{padding:10px}.mock-stats strong{font-size:27px}.mock-stats small{font-size:7px}.mock-status{display:none}.mock-project-row{grid-template-columns:18px 1fr 60px}.mock-heading h3{font-size:20px}.case-story{grid-template-columns:1fr;gap:27px;padding:33px 0}.case-section-label h2{margin-top:15px;font-size:33px;letter-spacing:-1.3px}.case-features{grid-template-columns:1fr;margin-bottom:35px}.case-features h3{margin-top:18px}.case-results{padding:25px;margin-bottom:30px}.case-results-heading{flex-direction:column;gap:20px}.case-metrics{gap:16px;margin-top:28px}.case-metrics strong{font-size:44px;letter-spacing:-2px}.case-metrics>div>span{font-size:12px}.case-results h2{font-size:38px}.case-label{font-size:9px}.case-top{gap:15px}.case-end>a{font-size:26px}.case-end>a>span:last-child{margin-left:10px}}@media(max-width:380px){.case-hero h1{font-size:82px}.case-metrics strong{font-size:37px}.atlas-workspace{padding:12px}.mock-stats strong{font-size:23px}.mock-stats small{font-size:6px}}
/* A continuous typographic ribbon in the right-hand negative space. */
#home>.hero{position:relative;z-index:2}.tech-ribbon{position:absolute;right:-9.1vw;top:-130px;width:min(57vw,1080px);aspect-ratio:760 / 650;z-index:1;pointer-events:none;overflow:hidden}.tech-ribbon-svg{display:block;width:100%;height:100%;overflow:hidden}.tech-band-edge{fill:none;stroke:var(--primary);stroke-width:80}.tech-band{fill:none;stroke:var(--bg);stroke-width:77}.tech-flow-text{fill:var(--fg);font:500 20px monospace;letter-spacing:1.2px;dominant-baseline:central;white-space:pre}.tech-inventory{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);list-style:none;padding:0;margin:0}.tech-pause{position:absolute;right:16%;bottom:6%;pointer-events:auto;color:var(--muted);font:11px monospace;border:1px solid var(--line);background:var(--bg);border-radius:20px;padding:8px 12px;opacity:.7}.tech-pause:hover,.tech-pause:focus-visible{opacity:1;border-color:var(--primary);color:var(--primary)}@media(min-width:1600px){.tech-ribbon{top:-155px}}@media(max-width:1100px) and (min-width:801px){.tech-ribbon{top:-30px;width:52vw}.tech-band-edge{stroke-width:85}.tech-band{stroke-width:82}}@media(max-width:800px){#home{display:block}.tech-ribbon{position:relative;right:auto;top:auto;width:100vw;max-width:none;margin:0 -8vw;aspect-ratio:760 / 280}.tech-pause{right:10%;bottom:4%;font-size:10px;padding:6px 9px}.tech-flow-text{font-size:20px}#home>.hero{padding-bottom:32px}}@media(prefers-reduced-motion:reduce){.tech-ribbon{top:80px;right:0;width:42%;aspect-ratio:auto;overflow:visible}.tech-ribbon-svg,.tech-pause{display:none}.tech-inventory{position:static;width:auto;height:auto;clip-path:none;display:flex;gap:12px;flex-wrap:wrap;padding:30px 0}.tech-inventory li{font:14px monospace;border:1px solid var(--line);border-radius:5px;padding:12px 15px;color:var(--fg)}@media(max-width:800px){.tech-ribbon{top:auto;width:100%;margin:0;padding:0 0 35px}}}

/* Brief analog-like tracking errors; clean and readable between bursts. */
.ribbon-echo{opacity:0;pointer-events:none}.ribbon-glitching .ribbon-echo{opacity:.85}.ribbon-echo .tech-band{stroke:none}.ribbon-echo-0 .tech-band-edge{stroke:#5ccbd6}.ribbon-echo-0 .tech-flow-text{fill:#5ccbd6}.ribbon-echo-1 .tech-band-edge{stroke:var(--primary)}.ribbon-echo-1 .tech-flow-text{fill:var(--primary)}.ribbon-echo .tech-band-edge{stroke-width:81}.ribbon-original{transform-origin:center}.ribbon-echo-0{mix-blend-mode:screen}body.light .ribbon-echo-0{mix-blend-mode:multiply}@media(prefers-reduced-motion:reduce){.ribbon-echo{display:none!important}}

/* Continuous, quantized distortion on both orange ribbon borders only. */
.ribbon-outline{filter:url(#ribbon-edge-glitch)}.ribbon-echo .tech-band{stroke:var(--bg);stroke-width:77;stroke-opacity:.92}.ribbon-echo-0,body.light .ribbon-echo-0{mix-blend-mode:normal}.ribbon-glitching .ribbon-echo{opacity:.72}@media(prefers-reduced-motion:reduce){.ribbon-outline{filter:none}}
#menu-toggle{display:none}.blob-dialog{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;border:0;padding:0;margin:0;background:transparent;color:var(--fg);overflow:hidden}.blob-dialog::backdrop{background:#05060599;backdrop-filter:blur(5px)}.dialog-panel{margin-left:auto;width:min(620px,100%);height:100%;overflow:auto;padding:32px 42px;background:var(--bg);overscroll-behavior:contain;box-sizing:border-box}.menu-panel{background:var(--primary);color:#101110;max-width:520px}.panel-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px;font:11px monospace;letter-spacing:1.5px}.panel-close{width:42px;height:42px;border:1px solid currentColor;border-radius:50%;font:26px Arial;opacity:.8}.panel-close:hover{opacity:1}.menu-links nav{display:flex;flex-direction:column;align-items:stretch;gap:0;max-width:none}.menu-links nav>a{font:500 clamp(42px,10vw,65px)/1.2 'Space Grotesk',sans-serif;letter-spacing:-3px;border-bottom:1px solid #10111033;padding:18px 0;color:#101110}.menu-links nav>a>span{display:inline;color:inherit;font-size:27px;float:right;padding-top:12px}.menu-links .languages{margin-top:32px;gap:18px;font-size:14px}.menu-links .languages>span{color:#10111055}.menu-links .languages button{color:#10111088;padding:8px}.menu-links .languages button[aria-pressed=true]{color:#101110;border-bottom:1px solid #101110}.menu-links .theme{margin:20px 0;width:44px;height:44px;border-color:#10111055}.menu-contact{display:block;padding:25px 0 15px;text-align:left;font-size:17px}.menu-email{font-size:13px;text-decoration:underline;text-underline-offset:5px;overflow-wrap:anywhere}.contact-panel h2{font-size:clamp(40px,6vw,64px);letter-spacing:-3px;margin:0 0 16px}.contact-intro{font-size:18px;color:var(--muted);line-height:1.5}.contact-email{display:block;color:var(--primary);font-size:clamp(17px,3.8vw,24px);letter-spacing:-.5px;margin-top:25px;overflow-wrap:anywhere}.contact-alternative{font-size:13px;line-height:1.6;color:var(--muted);margin:10px 0 32px}.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}#contact-form label{display:block;font-size:13px;margin:0 0 9px}#contact-form input:not([type=hidden]),#contact-form textarea{font:16px 'DM Sans',sans-serif;width:100%;color:var(--fg);background:var(--surface);border:1px solid var(--line);border-radius:5px;padding:12px;outline:none;margin:0 0 20px}#contact-form input:focus,#contact-form textarea:focus{border-color:var(--primary)}#contact-form textarea{resize:vertical;min-height:120px}#contact-form .form-honey{display:none}.form-service{font-size:12px;line-height:1.6;color:var(--muted);margin:0 0 22px}.form-service a{text-decoration:underline}#contact-status{font-size:13px;line-height:1.6;color:var(--muted)}body.panel-open{overflow:hidden}body:has(dialog[open]),body:has(dialog[open]) *{cursor:auto!important}body:has(dialog[open]) #cursor-ring,body:has(dialog[open]) #cursor-trail{display:none!important}.panel-close:focus-visible,.menu-panel button:focus-visible,.menu-panel a:focus-visible{outline:2px solid currentColor;outline-offset:5px}@media(max-width:700px){body>header{height:68px;padding:0;min-height:68px}body>header>nav{display:none}#menu-toggle{display:grid;grid-template-columns:auto 22px;column-gap:12px;row-gap:5px;align-items:center;padding:10px 0;font:12px monospace}#menu-toggle>span{grid-row:span 2}#menu-toggle i{width:22px;height:1px;background:var(--fg);display:block}.dialog-panel{padding:24px;width:100%}.panel-top{margin-bottom:27px}.contact-fields{grid-template-columns:1fr;gap:0}.contact-panel .panel-top{margin-bottom:30px}#cursor-lab{top:82px}.menu-links nav{max-width:none}.menu-panel{max-width:100%}}
.projects-heading h1{font-family:'Space Grotesk',sans-serif;font-weight:500;letter-spacing:-5px;font-size:86px;line-height:1.1;margin:0}.projects-heading h1 span{color:var(--primary)}@media(max-width:800px){.projects-heading h1{font-size:61px}}@media(max-width:400px){.projects-heading h1{font-size:52px}}

.mobile-nav-actions{display:none}@media(max-width:700px){.mobile-nav-actions{display:flex;align-items:center;gap:18px}.mobile-nav-actions .theme{width:40px;height:40px;flex:none}.mobile-nav-actions #menu-toggle{padding:10px 0}.contact-panel .contact-alternative{max-width:370px;margin-bottom:0}.contact-panel{padding-bottom:50px}}
