:root{--ink:#111008;--paper:#faf8f2;--paper-2:#f1eee3;--lime:#cdfb4f;--lime-2:#9be600;--coral:#ff4d3d;--violet:#7a5cff;--line:#1110081f;--font-display:"Fraunces", serif;--font-body:"Manrope", sans-serif;--font-mono:"IBM Plex Mono", monospace}*{box-sizing:border-box;margin:0;padding:0}html{background:var(--paper)}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);position:relative;overflow-x:hidden}body.custom-cursor-active{cursor:none}body.touch-device{cursor:auto}body:before{content:"";z-index:0;pointer-events:none;opacity:.45;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.35'/%3E%3C/svg%3E");position:fixed;inset:0}::selection{background:var(--ink);color:var(--paper)}a{color:inherit;text-decoration:none}section,header,footer{z-index:1;position:relative}.preloader{z-index:1000;background:var(--ink);flex-direction:column;justify-content:center;align-items:center;gap:26px;transition:opacity .4s;display:flex;position:fixed;inset:0}.preloader.hidden{opacity:0;pointer-events:none}.pl-word{font-family:var(--font-display);color:var(--paper);letter-spacing:-.02em;font-size:clamp(2rem,6vw,4rem);font-style:italic;font-weight:600;transition:transform .5s cubic-bezier(.6,0,.2,1);display:block;overflow:hidden}.pl-word.done{transform:translateY(-110%)}.pl-count{font-family:var(--font-mono);color:var(--lime);letter-spacing:.1em;font-size:.85rem}.pl-bar{background:#faf8f233;width:220px;height:1px;position:relative;overflow:hidden}.pl-bar-fill{background:var(--lime);height:100%;position:absolute;top:0;left:0}.pl-panel{background:var(--ink);z-index:999;width:25%;height:100%;transition:transform .9s cubic-bezier(.7,0,.15,1);position:fixed;top:0}.progress{background:linear-gradient(90deg, var(--coral), var(--lime-2), var(--violet));z-index:300;transform-origin:0;width:100%;height:3px;position:fixed;top:0;left:0}.cursor-dot{background:var(--ink);pointer-events:none;z-index:9999;will-change:transform;border-radius:50%;width:8px;height:8px;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}.cursor-ring{border:1px solid var(--ink);pointer-events:none;z-index:9998;will-change:transform;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;transition:width .35s cubic-bezier(.3,1.4,.5,1),height .35s cubic-bezier(.3,1.4,.5,1),background .3s,border-color .3s;display:flex;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}.cursor-ring span{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;opacity:0;white-space:nowrap;color:var(--ink);font-size:.6rem;transition:opacity .25s}.cursor-ring.active{background:var(--lime);border-color:#0000;width:84px;height:84px}.cursor-ring.active span{opacity:1}.cursor-ring.dark{background:var(--ink)}.cursor-ring.dark span{color:var(--paper)}.trail-canvas{z-index:9997;pointer-events:none;position:fixed;inset:0}@media (hover:none){.cursor-dot,.cursor-ring,.trail-canvas{display:none}body{cursor:auto}}.hero-webgl{pointer-events:none;z-index:0;width:100%;height:100%;position:absolute;inset:0}.shapes{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.shape{will-change:transform;position:absolute}@keyframes spin{to{transform:rotate(360deg)}}@keyframes spinRev{to{transform:rotate(-360deg)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.35)}}@keyframes blobMorph{0%,to{border-radius:42% 58% 63% 37%/41% 44% 56% 59%}33%{border-radius:63% 37% 41% 59%/51% 62% 38% 49%}66%{border-radius:37% 63% 56% 44%/63% 41% 59% 37%}}header.site-header{z-index:100;justify-content:space-between;align-items:center;padding:22px 5vw;display:flex;position:fixed;top:0;left:0;right:0}.logo{font-family:var(--font-display);letter-spacing:-.02em;align-items:center;gap:10px;font-size:1.3rem;font-weight:700;display:flex}.logo .dot{background:var(--lime-2);width:9px;height:9px;box-shadow:0 0 0 3px var(--ink);border-radius:50%;animation:2s ease-in-out infinite pulse}nav.site-nav ul{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;gap:2.4vw;font-size:.78rem;list-style:none;display:flex}nav.site-nav a{padding-bottom:4px;display:inline-block;position:relative}nav.site-nav a:after{content:"";background:var(--ink);width:0;height:1.5px;transition:width .35s cubic-bezier(.6,0,.2,1);position:absolute;bottom:0;left:0}nav.site-nav a:hover:after{width:100%}@media (max-width:820px){nav.site-nav ul{display:none}}.hero{flex-direction:column;justify-content:center;min-height:100svh;padding:0 5vw;display:flex}.hero-eyebrow{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:12px;margin-bottom:22px;font-size:.82rem;display:flex}.hero-eyebrow .line{background:var(--ink);transform-origin:0;width:46px;height:1px;transition:transform .6s cubic-bezier(.2,1,.3,1);display:inline-block;transform:scaleX(0)}.hero-eyebrow .line.on{transform:scaleX(1)}.hero h1{font-family:var(--font-display);letter-spacing:-.02em;font-size:clamp(3.2rem,10.5vw,9.2rem);font-weight:600;line-height:.86}.hero h1 .row{overflow:hidden}.hero h1 em{color:#0000;-webkit-text-stroke:1.4px var(--ink);font-style:italic;font-weight:500}.split-line{transition:transform 1.1s cubic-bezier(.16,1,.3,1);display:inline-block;transform:translateY(110%)}.split-line.in{transform:translateY(0)}.hero-sub{color:#2b2a22;opacity:0;max-width:600px;margin-top:32px;font-size:1.05rem;line-height:1.65;transition:opacity .9s,transform .9s;transform:translateY(18px)}.hero-sub.in{opacity:1;transform:translateY(0)}.hero-meta{opacity:0;flex-wrap:wrap;gap:14px;margin-top:40px;transition:opacity .9s,transform .9s;display:flex;transform:translateY(18px)}.hero-meta.in{opacity:1;transform:translateY(0)}.pill{font-family:var(--font-mono);border:1px solid var(--line);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff80;border-radius:100px;align-items:center;gap:8px;padding:9px 16px;font-size:.76rem;display:flex}.pill .ping{background:var(--coral);border-radius:50%;width:6px;height:6px;animation:1.6s infinite pulse}.scroll-cue{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;opacity:0;align-items:center;gap:10px;font-size:.72rem;transition:opacity .6s;display:flex;position:absolute;bottom:38px;left:5vw}.scroll-cue.in{opacity:1}.scroll-cue .bar{background:var(--ink);width:1px;height:34px;position:relative;overflow:hidden}.scroll-cue .bar:after{content:"";background:var(--lime-2);width:100%;height:100%;animation:1.8s ease-in-out infinite scrollLine;position:absolute;top:-100%;left:0}@keyframes scrollLine{0%{top:-100%}60%{top:100%}to{top:100%}}.hero-bg-word{font-family:var(--font-display);color:#0000;-webkit-text-stroke:1px var(--line);z-index:-1;-webkit-user-select:none;user-select:none;pointer-events:none;white-space:nowrap;font-size:clamp(6rem,22vw,22rem);font-style:italic;font-weight:700;position:absolute;top:50%;right:-2vw;transform:translateY(-50%)}.marquee-wrap{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--ink);padding:20px 0;overflow:hidden}.marquee-track{will-change:transform;width:max-content;display:flex}.marquee-track span{font-family:var(--font-mono);color:var(--paper);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;align-items:center;gap:2.4vw;padding:0 2.4vw;font-size:1rem;display:flex}.marquee-track span i{background:var(--lime);border-radius:50%;width:7px;height:7px;font-style:normal;display:inline-block}.section-pad{padding:min(13vw,140px) 5vw}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:60px;display:flex}.section-num{font-family:var(--font-mono);color:#8b8873;letter-spacing:.1em;font-size:.78rem}.section-title{font-family:var(--font-display);letter-spacing:-.02em;font-size:clamp(2.3rem,6vw,4.4rem);font-weight:600;line-height:1}.reveal-el{opacity:0;transition:opacity 1s cubic-bezier(.2,.8,.2,1),transform 1s cubic-bezier(.2,.8,.2,1);transform:translateY(50px)}.reveal-el.in{opacity:1;transform:translateY(0)}.build-grid{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:2px;display:grid}.build-card{background:var(--paper);padding:44px 32px;transition:background .4s;position:relative;overflow:hidden}.build-card:before{content:"";background:var(--ink);z-index:0;transition:transform .5s cubic-bezier(.6,0,.2,1);position:absolute;inset:0;transform:translateY(100%)}.build-card:hover:before{transform:translateY(0)}.build-card:hover .bnum,.build-card:hover .btitle,.build-card:hover .bdesc{color:var(--paper)}.build-card:hover .bicon{filter:invert();transform:scale(1.15)rotate(8deg)}.build-card *{z-index:1;position:relative}.bnum{font-family:var(--font-mono);color:#8b8873;font-size:.78rem;transition:color .4s}.bicon{width:44px;height:44px;margin:22px 0;transition:transform .4s,filter .4s}.btitle{font-family:var(--font-display);margin-bottom:12px;font-size:1.5rem;font-weight:600;transition:color .4s}.bdesc{color:#4a4838;font-size:.92rem;line-height:1.6;transition:color .4s}@media (max-width:900px){.build-grid{grid-template-columns:1fr}}.proj-list{flex-direction:column;display:flex}.proj-row{border-top:1px solid var(--line);grid-template-columns:90px 1fr 1fr;align-items:center;gap:40px;padding:48px 0;display:grid;position:relative;overflow:hidden}.proj-row:last-child{border-bottom:1px solid var(--line)}.proj-row:before{content:"";background:var(--paper-2);z-index:0;height:0;transition:height .4s cubic-bezier(.6,0,.2,1);position:absolute;bottom:0;left:0;right:0}.proj-row:hover:before{height:100%}.proj-row>*{z-index:1;position:relative}.proj-index{font-family:var(--font-mono);color:#8b8873;font-size:1rem}.proj-main .proj-title{font-family:var(--font-display);letter-spacing:-.01em;font-size:clamp(1.5rem,3vw,2.3rem);font-weight:600;transition:transform .4s,color .4s}.proj-row:hover .proj-title{color:var(--coral);transform:translate(14px)}.proj-tags{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.proj-tags span{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;background:var(--paper);border:1px solid var(--line);padding:5px 10px;font-size:.68rem}.proj-side{text-align:right;flex-direction:column;align-items:flex-end;gap:14px;display:flex}.proj-desc{color:#2b2a22;max-width:340px;font-size:.92rem;line-height:1.6}.proj-link-row{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:10px;font-size:.75rem;display:flex}.proj-link-row svg{width:14px;height:14px;transition:transform .3s}.proj-row:hover .proj-link-row svg{transform:translate(3px,-3px)}.proj-visual{opacity:0;pointer-events:none;z-index:0;filter:blur(2px);border-radius:50%;width:130px;height:130px;transition:opacity .4s;position:absolute;top:50%;right:6%}.proj-row:hover .proj-visual{opacity:.55}@media (max-width:820px){.proj-row{grid-template-columns:1fr;gap:16px}.proj-side{text-align:left;align-items:flex-start}.proj-desc{max-width:100%}}.pg-grid{flex-direction:column;gap:26px;display:flex}.pg-panel{background:#0d0c08;border-radius:14px;overflow:hidden;box-shadow:0 30px 80px -20px #11100859,0 0 0 1px #ffffff0a}.pg-bar{background:#171610;border-bottom:1px solid #ffffff0f;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:14px 18px;display:flex}.pg-bar .pg-title{font-family:var(--font-mono);color:#8b8873;text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:10px;font-size:.72rem;display:flex}.pg-bar .pg-title .pg-led{background:var(--lime);border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite pulse}.pg-controls{flex-wrap:wrap;gap:8px;display:flex}.pg-btn{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:#c9c6b3;cursor:pointer;background:0 0;border:1px solid #ffffff26;border-radius:100px;padding:7px 12px;font-size:.66rem;transition:background .2s,color .2s,border-color .2s}.pg-btn:hover,.pg-btn.active{background:var(--lime);color:#0d0c08;border-color:#0000}.pg-btn:disabled{opacity:.4;cursor:not-allowed}.shader-canvas{width:100%;height:300px;display:block}.pg-caption{font-family:var(--font-mono);color:#5c5a48;text-transform:uppercase;letter-spacing:.06em;border-top:1px solid #ffffff0f;padding:12px 18px;font-size:.68rem}.pathfinder-canvas{cursor:crosshair;width:100%;height:auto;display:block}.pf-editor-caption{font-family:var(--font-mono);color:#5c5a48;text-transform:uppercase;letter-spacing:.06em;border-top:1px solid #ffffff0f;padding:10px 18px;font-size:.66rem}.pf-race-grid{border-top:1px solid #ffffff0f;grid-template-columns:repeat(3,1fr);gap:14px;padding:16px 18px;display:grid}@media (max-width:760px){.pf-race-grid{grid-template-columns:1fr}}.pf-race-cell{border:1px solid #ffffff14;border-radius:10px;transition:border-color .3s,box-shadow .3s;overflow:hidden}.pf-race-cell.winner{border-color:var(--lime);box-shadow:0 0 0 1px var(--lime), 0 0 24px -4px var(--lime)}.pf-race-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.07em;color:#c9c6b3;background:#171610;justify-content:space-between;align-items:center;padding:8px 12px;font-size:.66rem;display:flex}.pf-race-label .badge{color:var(--lime);font-size:.6rem;display:none}.pf-race-cell.winner .pf-race-label .badge{display:inline}.race-canvas{width:100%;height:auto;display:block}.pf-race-stats{font-family:var(--font-mono);color:#8b8873;text-transform:uppercase;letter-spacing:.04em;padding:8px 12px;font-size:.64rem}.pf-legend{font-family:var(--font-mono);color:#8b8873;text-transform:uppercase;letter-spacing:.05em;border-top:1px solid #ffffff0f;flex-wrap:wrap;gap:14px;padding:12px 18px;font-size:.66rem;display:flex}.pf-legend span{align-items:center;gap:6px;display:flex}.pf-legend i{border-radius:3px;width:10px;height:10px;display:inline-block}.heatmap-canvas{width:100%;height:auto;display:block}.heatmap-body{padding:16px 18px 6px;position:relative}.heatmap-status{font-family:var(--font-mono);color:#8b8873;padding:0 0 10px;font-size:.72rem}.heatmap-tooltip{pointer-events:none;z-index:5;color:#e7e4d2;font-family:var(--font-mono);opacity:0;white-space:nowrap;background:#171610;border:1px solid #ffffff1a;border-radius:6px;padding:6px 10px;font-size:.68rem;transition:opacity .15s;position:absolute;transform:translate(-50%,-120%)}.heatmap-legend{font-family:var(--font-mono);color:#5c5a48;text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:6px;padding:8px 18px 14px;font-size:.64rem;display:flex}.heatmap-legend i{border-radius:2px;width:10px;height:10px;display:inline-block}.term-wrap{max-width:900px;margin:0 auto}.term-window{background:#0b0a07;border-radius:10px;position:relative;overflow:hidden;box-shadow:0 40px 100px -20px #11100880,0 0 0 1px #ffffff0f,inset 0 0 60px #0000004d}.term-bar{background:linear-gradient(#211f16,#171610);border-bottom:1px solid #ffffff12;align-items:center;gap:8px;padding:12px 16px;display:flex;position:relative}.term-dots{gap:8px;display:flex}.term-dot{border-radius:50%;width:12px;height:12px;box-shadow:inset 0 0 0 1px #00000026}.term-bar .term-title{font-family:var(--font-mono);color:#8b8873;pointer-events:none;align-items:center;gap:7px;font-size:.72rem;display:flex;position:absolute;left:50%;transform:translate(-50%)}.term-body{color:#c9c6b3;cursor:text;background:radial-gradient(at top,#cdfb4f08,#0000 60%),#0b0a07;height:380px;padding:16px 20px 14px;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.84rem;line-height:1.68;position:relative;overflow-y:auto}.term-line{white-space:pre-wrap;word-break:break-word;z-index:1;position:relative}.term-line.boot{color:#6b6852;font-size:.78rem}.term-line.boot .ok-tag{color:var(--lime-2)}.term-line.cmd{color:#e7e4d2}.term-line.err{color:#ff6b5c}.term-line.ok{color:var(--lime);white-space:pre-wrap}.term-prompt-user{color:#7ee787;font-weight:600}.term-prompt-at{color:#6b6852}.term-prompt-host{color:#79c0ff;font-weight:600}.term-prompt-path{color:#d2a8ff;margin-left:2px}.term-prompt-sym{color:#6b6852;margin:0 6px 0 2px}.term-input-row{flex-wrap:wrap;align-items:center;display:flex}.term-input{color:#e7e4d2;min-width:60px;caret-color:var(--lime);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:.84rem}.term-hint{text-align:center;font-family:var(--font-mono);color:#8b8873;text-transform:uppercase;letter-spacing:.08em;margin-top:16px;font-size:.72rem}.term-hint b{color:var(--ink)}.term-kbd{border:1px solid var(--line);color:#5c5a48;border-radius:4px;margin:0 2px;padding:1px 6px;font-size:.66rem;display:inline-block}.dev-comment{font-family:var(--font-mono);color:#6b7f3a;border-left:2px solid var(--lime-2);background:#cdfb4f12;max-width:640px;margin:0 0 22px;padding:8px 14px;font-size:.74rem;line-height:1.6;display:none}body.dev-comments-visible .dev-comment{display:block}.dev-badge{z-index:400;color:#c9c6b3;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;background:#0d0c08;border-radius:100px;align-items:center;gap:10px;padding:10px 14px;font-size:.7rem;display:none;position:fixed;bottom:24px;left:24px;box-shadow:0 20px 50px -12px #0006,0 0 0 1px #ffffff0f}.dev-badge.show{display:flex}.dev-badge-dot{background:var(--lime);border-radius:50%;width:7px;height:7px;animation:1.6s ease-in-out infinite pulse}.dev-badge button{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;background:var(--lime);color:#0d0c08;cursor:pointer;border:none;border-radius:100px;padding:4px 10px;font-size:.66rem}.cmdk-overlay{z-index:900;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;pointer-events:none;background:#11100899;justify-content:center;align-items:flex-start;padding-top:14vh;transition:opacity .2s;display:flex;position:fixed;inset:0}.cmdk-overlay.open{opacity:1;pointer-events:auto}.cmdk-panel{opacity:0;background:#0d0c08;border-radius:14px;width:min(94vw,560px);transition:transform .3s cubic-bezier(.34,1.56,.64,1),opacity .3s;overflow:hidden;transform:translateY(-14px)scale(.97);box-shadow:0 40px 100px -20px #0009,0 0 0 1px #ffffff0f}.cmdk-overlay.open .cmdk-panel{opacity:1;transform:translateY(0)scale(1)}.cmdk-input-row{border-bottom:1px solid #ffffff12;align-items:center;gap:12px;padding:16px 18px;display:flex}.cmdk-input-row svg{opacity:.6;flex-shrink:0;width:16px;height:16px}.cmdk-input{color:#e7e4d2;font-family:var(--font-mono);caret-color:var(--lime);background:0 0;border:none;outline:none;flex:1;font-size:.92rem}.cmdk-kbd{font-family:var(--font-mono);color:#5c5a48;border:1px solid #ffffff26;border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:.62rem}.cmdk-list{max-height:360px;padding:8px;overflow-y:auto}.cmdk-item{cursor:pointer;font-family:var(--font-mono);color:#c9c6b3;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;font-size:.8rem;display:flex}.cmdk-item .cmdk-item-main{align-items:center;gap:10px;display:flex}.cmdk-item .cmdk-item-tag{color:#6b6852;text-transform:uppercase;letter-spacing:.05em;font-size:.64rem}.cmdk-item.active{color:#e7e4d2;background:#cdfb4f1a}.cmdk-item.active .cmdk-item-tag{color:var(--lime)}.cmdk-empty{text-align:center;font-family:var(--font-mono);color:#5c5a48;padding:24px 12px;font-size:.78rem}.cmdk-footer{font-family:var(--font-mono);color:#5c5a48;text-transform:uppercase;letter-spacing:.05em;border-top:1px solid #ffffff0f;gap:16px;padding:10px 18px;font-size:.64rem;display:flex}.contact{text-align:center;padding:min(16vw,180px) 5vw min(10vw,110px);position:relative;overflow:hidden}.contact-blob{background:radial-gradient(circle at 30% 30%, var(--lime), transparent 60%);opacity:.5;z-index:0;filter:blur(40px);width:60vw;max-width:800px;height:60vw;max-height:800px;animation:12s ease-in-out infinite blobMorph,40s linear infinite spin;position:absolute;top:-10%;left:50%;transform:translate(-50%)}.contact h2{font-family:var(--font-display);letter-spacing:-.02em;font-size:clamp(2.6rem,9vw,7rem);font-weight:600;line-height:1.02}.contact h2 .em{-webkit-text-stroke:1.2px var(--ink);color:#0000;font-style:italic}.magnetic-btn{background:var(--ink);color:var(--paper);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;border-radius:100px;align-items:center;gap:14px;margin:50px auto 0;padding:22px 42px;font-size:.85rem;display:inline-flex;position:relative}.foot-links{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;flex-wrap:wrap;justify-content:center;gap:34px;margin-top:66px;font-size:.82rem;display:flex}.foot-links a{padding-bottom:3px;position:relative}.foot-links a:after{content:"";background:var(--ink);width:0;height:1px;transition:width .3s;position:absolute;bottom:0;left:0}.foot-links a:hover:after{width:100%}.foot-bottom{border-top:1px solid var(--line);font-family:var(--font-mono);color:#8b8873;text-transform:uppercase;letter-spacing:.06em;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:100px;padding-top:26px;font-size:.72rem;display:flex}.contact>:not(.contact-blob){z-index:2;position:relative}.spidey-egg{z-index:250;opacity:0;pointer-events:none;flex-direction:column;align-items:center;transition:opacity .5s,transform .5s cubic-bezier(.2,1.6,.4,1);display:flex;position:fixed;bottom:24px;right:34px;transform:translateY(-24px)}.spidey-egg.visible{opacity:1;pointer-events:auto;transform:translateY(0)}.spidey-thread{background:#11100847;width:1px;height:44px;transition:height .3s}.spidey-egg:hover .spidey-thread{height:62px}.spidey-body{transform-origin:top;background:#0d0c08;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;animation:3.6s ease-in-out infinite spideyIdle;display:flex;box-shadow:0 10px 26px -6px #00000059}@keyframes spideyIdle{0%,to{transform:rotate(-6deg)}50%{transform:rotate(6deg)}}.spidey-egg:hover .spidey-body{animation-duration:.5s}.spidey-body svg{width:18px;height:18px}.spidey-tip{font-family:var(--font-mono);letter-spacing:.03em;color:#e7e4d2;white-space:nowrap;opacity:0;background:#0d0c08;border-radius:6px;margin-top:8px;padding:5px 10px;font-size:.62rem;transition:opacity .2s,transform .2s;transform:translateY(-4px)}.spidey-egg:hover .spidey-tip{opacity:1;transform:translateY(0)}.spidey-web2{z-index:5;opacity:0;pointer-events:none;width:120px;height:160px;transition:opacity .5s,transform .5s cubic-bezier(.2,1.6,.4,1);position:absolute;top:-6px;right:6vw;transform:translateY(-16px)}.spidey-web2.visible{opacity:1;pointer-events:auto;transform:translateY(0)}.spidey-web-canvas{cursor:grab;width:100%;height:100%;display:block}.spidey-web2-tip{font-family:var(--font-mono);white-space:nowrap;color:#faf8f2;opacity:0;pointer-events:none;background:#111008;border-radius:6px;margin-top:4px;padding:5px 10px;font-size:.62rem;transition:opacity .2s;position:absolute;top:100%;left:50%;transform:translate(-50%)translateY(-6px)}.spidey-web2:hover .spidey-web2-tip{opacity:1}@media (max-width:820px){.spidey-web2{display:none}}.doodle-note{color:var(--coral);white-space:nowrap;pointer-events:none;align-items:center;gap:2px;font-family:Caveat,cursive;font-size:1.35rem;font-weight:700;animation:1.8s ease-in-out infinite doodleBounce;display:flex;position:absolute}.doodle-note svg{flex-shrink:0;width:38px;height:30px}@keyframes doodleBounce{0%,to{transform:translateY(0)rotate(-4deg)}50%{transform:translateY(-5px)rotate(-4deg)}}.matrix-canvas{z-index:500;pointer-events:none;opacity:0;transition:opacity .2s;position:fixed;inset:0}.matrix-canvas.on{opacity:.9}.snake-overlay{z-index:700;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;background:#111008b8;justify-content:center;align-items:center;transition:opacity .25s;display:none;position:fixed;inset:0}.snake-overlay.open{opacity:1;display:flex}.snake-panel{opacity:0;background:#0d0c08;border-radius:18px;width:min(94vw,560px);padding:0;transition:transform .3s cubic-bezier(.34,1.56,.64,1),opacity .3s;overflow:hidden;transform:scale(.92);box-shadow:0 40px 100px -20px #0009,0 0 0 1px #ffffff0d}.snake-overlay.open .snake-panel{opacity:1;transform:scale(1)}.snake-header{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:#8b8873;border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding:16px 20px;font-size:.72rem;display:flex}.snake-header .snake-logo{color:var(--lime);font-weight:600}.snake-scores{gap:18px;display:flex}.snake-scores b{color:var(--paper);font-size:.9rem}.snake-close{color:#8b8873;cursor:pointer;background:0 0;border:1px solid #ffffff26;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:.8rem;line-height:1;transition:background .2s,color .2s;display:flex}.snake-close:hover{background:var(--coral);color:#0d0c08;border-color:#0000}.snake-canvas{background:#0d0c08;width:100%;height:auto;display:block}.snake-footer{text-align:center;font-family:var(--font-mono);letter-spacing:.06em;color:#5c5a48;text-transform:uppercase;border-top:1px solid #ffffff0f;padding:14px 20px;font-size:.68rem}@media print{.preloader,.pl-panel,.progress,.cursor-dot,.cursor-ring,.trail-canvas,.shapes,.hero-webgl,.marquee-wrap,#playground,#terminal,.dev-badge,.matrix-canvas,.snake-overlay,.cmdk-overlay,.contact-blob,header.site-header,.scroll-cue,.hero-bg-word,.dev-comment,.spidey-egg,.spidey-web2{display:none!important}}
