:root{--void-950:#0a0e2a;--void-900:#121a3d;--void-800:#1b2550;--void-700:#293367;--ink-100:#edeff7;--ink-300:#d9c7a3;--ink-400:#7b84ac;--accent:#ff2e4d;--accent-glow:#ff2e4d66;--accent-dim:#ff2e4d2e;--city-cyan:#4fe3ff;--city-magenta:#ff4fd8;--city-warm:#ffc978;--font-display:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--font-body:"IBM Plex Sans", -apple-system, system-ui, sans-serif;--u:8px;--content-max:1180px;--font-projects-display:"Rajdhani", "IBM Plex Sans", sans-serif;--font-projects-body:"Share Tech Mono", ui-monospace, SFMono-Regular, monospace;--font-about-display:"Caveat", cursive;--font-about-body:"Kalam", cursive;--font-contact-display:"Bungee", "IBM Plex Sans", sans-serif;--font-contact-body:"Special Elite", "IBM Plex Mono", monospace;--contact-magenta:#ff1fa6;--contact-yellow:#f4ff3d;--proj-void:#17130f}*{box-sizing:border-box}html,body,#root{height:100%}html{background:var(--void-950)}body{background:var(--void-950);color:var(--ink-100);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;overflow:hidden}a{color:inherit}::selection{background:var(--accent);color:var(--void-950)}button{font:inherit}.mark{z-index:80;cursor:pointer;opacity:.92;background:0 0;border:none;width:24px;height:24px;padding:0;transition:opacity .2s,transform .2s;position:fixed;top:22px;left:24px}.mark:hover{opacity:1;transform:translateY(-1px)}.mark svg{width:100%;height:100%;display:block}.mark:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.deck-viewport{position:fixed;inset:0;overflow:hidden}.deck-track{will-change:transform;width:400%;height:100%;transition:transform .64s cubic-bezier(.65,0,.35,1);display:flex}.slide{flex-shrink:0;width:25%;height:100%;position:relative;overflow:hidden}[data-slide-scroll]{scrollbar-width:none;-ms-overflow-style:none}[data-slide-scroll]::-webkit-scrollbar{display:none}.slide.home{background:var(--void-950);position:relative}.slide.home:before{content:"";z-index:0;pointer-events:none;background:radial-gradient(75% 65% at 32% 30%,#ffffff08 0%,#0a0e2a00 55%);position:absolute;inset:0}.skyline{z-index:1;pointer-events:none;width:100%;position:absolute;bottom:0;left:0;right:0}.skyline-far{opacity:.3;height:32vh}.skyline-far rect{fill:var(--void-800)}.skyline-near{opacity:.5;height:44vh}.skyline-near rect{fill:var(--void-900)}.skyline-near line{stroke:var(--void-700);stroke-width:2px}.home-content{z-index:2;height:100%;max-width:var(--content-max);overscroll-behavior:contain;flex-direction:column;justify-content:center;gap:clamp(10px,2vh,22px);margin:0 auto;padding:clamp(48px,9vh,88px) 28px clamp(56px,10vh,76px);display:flex;position:relative;overflow-y:auto}.hazard{background:repeating-linear-gradient(-45deg, var(--accent) 0 6px, var(--void-800) 6px 12px);opacity:.85;border-radius:1px;width:56px;height:5px}.eyebrow{font-family:var(--font-display);color:var(--accent);letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:11.5px;font-weight:500}.headline{font-family:var(--font-display);letter-spacing:-.01em;text-wrap:balance;max-width:760px;margin:0;font-size:clamp(1.3rem,min(3.3vw,4.4vh),2.7rem);font-weight:600;line-height:1.2}.headline .accent-phrase{color:var(--accent);text-shadow:-1.5px 0 #4fe3ff66,1.5px 0 #ff2e4d8c}.proof-line{font-family:var(--font-body);color:var(--ink-300);max-width:540px;margin:0;font-size:.98rem;line-height:1.6}.demo-panel{-webkit-backdrop-filter:blur(16px);background:#121a3d94;border:1px solid #ffffff17;border-radius:3px;max-width:560px;transition:border-color .15s cubic-bezier(.4,0,.2,1);position:relative;box-shadow:0 20px 44px #0006}.demo-panel:hover{border-color:#ff2e4d66}.demo-reticle{z-index:5;pointer-events:none;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}.demo-reticle-h,.demo-reticle-v{background:#ff2e4d8c;position:absolute;top:50%;left:50%}.demo-reticle-h{width:14px;height:1px;transform:translate(-50%,-50%)}.demo-reticle-v{width:1px;height:14px;transform:translate(-50%,-50%)}.demo-reticle-label{white-space:nowrap;font-family:var(--font-display);color:var(--accent);letter-spacing:.04em;background:#06091cf0;border:1px solid #ff2e4d4d;border-radius:1px;padding:1px 4px;font-size:9px;position:absolute;top:9px;left:9px}.demo-panel:before{content:"";pointer-events:none;mix-blend-mode:overlay;background-image:radial-gradient(#ffffff12 1px,#0000 1.3px);background-size:5px 5px;border-radius:3px;position:absolute;inset:0}.brace{opacity:.8;width:11px;height:11px;position:absolute}.brace svg{width:100%;height:100%;display:block}.brace.tl{top:-1px;left:-1px}.brace.br{bottom:-1px;right:-1px;transform:rotate(180deg)}.demo-titlebar{z-index:1;background:#0a0e2a66;border-bottom:1px solid #ffffff12;align-items:center;gap:6px;padding:clamp(6px,1.2vh,9px) 14px;display:flex;position:relative}.demo-titlebar .dot{background:var(--void-700);border-radius:50%;width:6px;height:6px;display:inline-block}.demo-path{font-family:var(--font-display);color:var(--ink-400);letter-spacing:.02em;margin-left:8px;font-size:11px}.demo-body{z-index:1;padding:clamp(10px,2vh,16px) 18px;position:relative}.demo-output{font-family:var(--font-display);color:var(--ink-300);white-space:pre-wrap;margin:0;font-size:11.5px;line-height:1.6}.demo-output .k{color:var(--ink-400)}.demo-output .accent{color:var(--accent)}.demo-output .cursor{color:var(--accent);animation:1s step-end infinite blink}.cap-grid{grid-template-columns:repeat(4,1fr);gap:clamp(8px,1.4vh,12px);max-width:980px;display:grid}.cap-card{background:#121a3d80;border:1px solid #ffffff17;border-radius:2px;padding:clamp(10px,1.8vh,14px) 14px clamp(10px,1.8vh,15px);transition:border-color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1);position:relative}.cap-card:hover{background:#121a3db3;border-color:#ff2e4d80}.cap-card:before{content:"";pointer-events:none;mix-blend-mode:overlay;background-image:radial-gradient(#ffffff0f 1px,#0000 1.3px);background-size:5px 5px;border-radius:2px;position:absolute;inset:0}.cap-icon{width:19px;height:19px;color:var(--accent);z-index:1;margin-bottom:clamp(5px,1.2vh,10px);display:inline-block;position:relative}.cap-icon svg{width:100%;height:100%;display:block}.cap-label{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.07em;color:var(--ink-100);z-index:1;margin-bottom:6px;font-size:10px;font-weight:600;display:block;position:relative}.cap-desc{font-family:var(--font-body);color:var(--ink-300);z-index:1;font-size:12px;line-height:1.48;position:relative}.slide.projects{background:radial-gradient(120% 85% at 18% 100%, #ffb70a17 0%, transparent 60%), var(--proj-void)}.proj-content{z-index:2;height:100%;max-width:var(--content-max);overscroll-behavior:contain;flex-direction:column;justify-content:center;gap:clamp(8px,1.8vh,18px);margin:0 auto;padding:clamp(48px,9vh,88px) 28px clamp(56px,10vh,76px);display:flex;position:relative;overflow-y:auto}.proj-eyebrow{font-family:var(--font-projects-display);color:var(--ink-300);letter-spacing:.18em;text-transform:uppercase;margin:0;font-size:11px;font-weight:600}.proj-heading{font-family:var(--font-projects-display);color:var(--ink-100);text-shadow:-1px 0 #ffd60a52,1px 0 #00d1ff52,0 1.5px #ff00d13d;margin:0;font-size:clamp(1.1rem,min(2.7vw,3.5vh),1.95rem);font-weight:700}.proj-sub{font-family:var(--font-projects-body);color:var(--ink-400);max-width:520px;margin:0;font-size:.86rem;line-height:1.6}.plate-grid{grid-template-columns:repeat(3,1fr);gap:clamp(8px,1.6vh,14px);margin-top:4px;display:grid}.plate{cursor:crosshair;background:#30241a66;border:1px solid #d9c7a340;border-radius:2px;padding:clamp(10px,1.6vh,14px) 14px clamp(8px,1.4vh,12px);transition:transform .42s cubic-bezier(.34,1.56,.64,1),border-color .42s cubic-bezier(.34,1.56,.64,1);position:relative}.plate:hover{border-color:#d9c7a380;transform:translateY(-3px)}.plate:active{transform:translateY(0)scale(.98)}.plate:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.plate-corner{opacity:.7;mix-blend-mode:screen;width:13px;height:13px;position:absolute}.plate-corner svg{width:100%;height:100%;display:block}.plate-corner.tl{top:6px;left:6px}.plate-corner.br{bottom:6px;right:6px}.plate-stamp{opacity:.8;mix-blend-mode:screen;width:42px;height:42px;font-family:var(--font-projects-display);color:#ff2e4de6;text-align:center;letter-spacing:.04em;text-transform:uppercase;border:1.5px solid #ff2e4dbf;border-radius:50%;justify-content:center;align-items:center;font-size:7.5px;font-weight:700;line-height:1.1;display:flex;position:absolute;top:8px;right:10px;transform:rotate(-14deg)}.plate-dim{font-family:var(--font-projects-body);color:var(--ink-400);align-items:center;gap:4px;margin-top:8px;font-size:8px;display:flex}.plate-dim:before,.plate-dim:after{content:"";background:#d9c7a340;flex:1;height:1px}.plate-diagram{height:clamp(40px,6vh,64px);margin:2px 0 clamp(6px,1.2vh,10px);display:block}.plate-diagram svg{width:100%;height:100%;display:block}.plate-title{font-family:var(--font-projects-display);color:var(--ink-100);text-transform:uppercase;letter-spacing:.05em;margin:0 0 8px;font-size:12.5px;font-weight:700;display:block}.plate-block{border-top:1px solid #d9c7a333;grid-template-columns:1fr 1fr;gap:6px 10px;padding-top:8px;display:grid}.plate-block div{font-family:var(--font-projects-body);color:var(--ink-400);font-size:9.5px}.plate-block b{color:var(--ink-300);text-transform:uppercase;letter-spacing:.09em;margin-bottom:2px;font-size:7.5px;font-weight:500;display:block}.swatch-strip{align-items:center;gap:8px;margin-top:8px;display:flex}.swatch{border:1px solid #ffffff2e;border-radius:50%;width:13px;height:13px;display:inline-block}.swatch-label{font-family:var(--font-projects-body);color:var(--ink-400);letter-spacing:.07em;text-transform:uppercase;margin-left:4px;font-size:9.5px}.proj-secondary{align-items:flex-start;gap:24px;margin-top:clamp(6px,1.4vh,14px);display:flex}.proj-section-label{font-family:var(--font-projects-display);color:var(--ink-400);letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px;font-size:10px;font-weight:600}.rev-panel{flex:0 0 38%;min-width:0}.article-panel{flex:auto;min-width:0}.rev-table{border-top:1px solid #d9c7a333;flex-direction:column;gap:6px;padding-top:6px;display:flex}.rev-row{font-family:var(--font-projects-body);white-space:nowrap;align-items:center;gap:8px;font-size:10px;display:flex;overflow:hidden}.rev-tag{width:15px;height:15px;color:var(--accent);border:1px solid #ff2e4d99;border-radius:2px;flex:none;justify-content:center;align-items:center;font-size:8px;font-weight:600;display:flex}.rev-role{color:var(--ink-100);text-overflow:ellipsis;font-weight:500;overflow:hidden}.rev-org{color:var(--ink-400)}.rev-org:before{content:"·";opacity:.6;margin-right:8px}.carousel-wrap{flex-direction:column;display:flex}.carousel-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.carousel-header .proj-section-label{margin:0}.carousel-nav{gap:8px;display:flex}.carousel-arrow{width:28px;height:28px;color:var(--ink-300);cursor:pointer;background:#ffffff0f;border:1px solid #d9c7a340;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:background .15s,border-color .15s,color .15s;display:flex}.carousel-arrow svg{width:14px;height:14px}.carousel-arrow:hover{border-color:var(--accent);color:var(--accent)}.carousel-arrow:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.carousel-arrow-next{background:var(--accent);border-color:var(--accent);color:var(--void-950)}.carousel-arrow-next:hover{color:var(--void-950);filter:brightness(1.12)}.article-carousel{cursor:pointer;background:var(--proj-void);border:1px solid #ffffff12;border-radius:18px;flex-direction:column;min-height:176px;padding:22px 24px 20px;animation:.38s cubic-bezier(.22,.9,.32,1.1) carousel-slide-in;display:flex;position:relative;overflow:hidden}.article-carousel:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@keyframes carousel-slide-in{0%{opacity:0;transform:translateX(var(--slide-offset,26px))}to{opacity:1;transform:translate(0)}}.article-carousel[data-tone=amber]{background:radial-gradient(135% 115% at 14% 108%, #ffb70a8c 0%, #ffb70a14 42%, transparent 66%), var(--proj-void)}.article-carousel[data-tone=cyan]{background:radial-gradient(135% 115% at 14% 108%, #00d1ff80 0%, #00d1ff12 42%, transparent 66%), var(--proj-void)}.article-carousel[data-tone=magenta]{background:radial-gradient(135% 115% at 14% 108%, #ff00d17a 0%, #ff00d112 42%, transparent 66%), var(--proj-void)}.carousel-eyebrow{font-family:var(--font-projects-display);color:#ffffffb8;letter-spacing:.12em;text-transform:uppercase;margin:0 0 6px;font-size:10.5px;font-weight:700}.carousel-title{font-family:var(--font-projects-display);color:#fff;text-transform:uppercase;letter-spacing:.01em;margin:0 0 8px;font-size:clamp(1.05rem,2vw,1.3rem);font-weight:700;line-height:1.28}.carousel-topic{font-family:var(--font-projects-body);color:#ffffffa8;max-width:420px;margin:0 0 16px;font-size:11.5px;line-height:1.55}.carousel-cta{color:#fff;font-family:var(--font-projects-display);letter-spacing:.03em;text-transform:uppercase;background:#ffffff24;border:1px solid #ffffff38;border-radius:999px;align-self:flex-start;margin-top:auto;padding:9px 16px;font-size:11px;font-weight:700;transition:background .15s}.article-carousel:hover .carousel-cta{background:#ffffff38}.carousel-dots{justify-content:center;gap:6px;margin-top:12px;display:flex}.carousel-dot{cursor:pointer;background:#d9c7a340;border:none;border-radius:1px;width:14px;height:3px;padding:0;transition:background .15s,width .15s}.carousel-dot:hover{background:#d9c7a380}.carousel-dot.active{background:var(--accent);width:20px}.carousel-dot:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.plate-modal-overlay{z-index:100;background:#06091cdb;justify-content:center;align-items:center;padding:clamp(16px,4vh,48px) clamp(16px,4vw,48px);animation:.18s ease-out plate-modal-scrim-in;display:flex;position:fixed;inset:0}@keyframes plate-modal-scrim-in{0%{opacity:0}to{opacity:1}}.plate-modal{background:var(--proj-void);border:1px solid #d9c7a359;width:min(640px,100%);max-height:100%;padding:clamp(22px,4vh,34px) clamp(24px,4vw,38px) clamp(24px,4vh,32px);animation:.38s cubic-bezier(.34,1.56,.64,1) plate-modal-in;position:relative;overflow-y:auto;box-shadow:0 30px 70px #0000008c}@keyframes plate-modal-in{0%{opacity:0;transform:scale(.9)translateY(10px)}60%{opacity:1;transform:scale(1.02)translateY(-2px)}to{opacity:1;transform:scale(1)translateY(0)}}.plate-modal-close{font-family:var(--font-projects-body);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-400);cursor:pointer;background:0 0;border:1px solid #d9c7a34d;border-radius:1px;padding:4px 8px;font-size:10px;transition:border-color .15s,color .15s;position:absolute;top:14px;right:16px}.plate-modal-close:hover{border-color:var(--accent);color:var(--accent)}.plate-modal-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.plate-modal-header{align-items:center;gap:16px;margin:6px 0 18px;display:flex}.plate-modal-logo{width:64px;height:64px;font-family:var(--font-projects-display);color:var(--ink-100);letter-spacing:.04em;text-transform:uppercase;text-align:center;border:1.5px dashed #d9c7a366;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:20px;font-weight:700;line-height:1;display:flex}.plate-modal-titles{min-width:0}.plate-modal-dwg{font-family:var(--font-projects-body);color:var(--ink-400);letter-spacing:.1em;text-transform:uppercase;margin:0 0 4px;font-size:10px}.plate-modal-name{font-family:var(--font-projects-display);color:var(--ink-100);text-transform:uppercase;letter-spacing:.02em;text-shadow:-1px 0 #ffd60a47,1px 0 #00d1ff47,0 1.5px #ff00d133;margin:0;font-size:clamp(1.3rem,3vw,1.7rem);font-weight:700}.plate-modal-diagram{height:clamp(70px,12vh,110px);margin:4px 0 20px;display:block}.plate-modal-diagram svg{width:100%;height:100%;display:block}.plate-modal-copy-label{font-family:var(--font-projects-display);color:var(--ink-400);letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px;font-size:10px;font-weight:600}.plate-modal-copy{font-family:var(--font-projects-body);color:var(--ink-300);margin:0 0 22px;font-size:.92rem;line-height:1.7}.plate-modal-block{border-top:1px solid #d9c7a333;grid-template-columns:1fr 1fr;gap:8px 14px;padding-top:10px;display:grid}.plate-modal-block div{font-family:var(--font-projects-body);color:var(--ink-400);font-size:10px}.plate-modal-block b{color:var(--ink-300);text-transform:uppercase;letter-spacing:.09em;margin-bottom:2px;font-size:8px;font-weight:500;display:block}.article-modal-overlay{z-index:100;background:#06091cdb;justify-content:center;align-items:center;padding:clamp(16px,4vh,48px) clamp(16px,4vw,48px);animation:.18s ease-out plate-modal-scrim-in;display:flex;position:fixed;inset:0}.article-modal{background:var(--proj-void);border:1px solid #d9c7a359;width:min(760px,100%);max-height:100%;padding:clamp(26px,5vh,40px) clamp(28px,5vw,46px) clamp(28px,5vh,38px);animation:.38s cubic-bezier(.34,1.56,.64,1) plate-modal-in;position:relative;overflow-y:auto;box-shadow:0 30px 70px #0000008c}.article-modal-eyebrow{font-family:var(--font-projects-body);color:var(--ink-400);letter-spacing:.12em;text-transform:uppercase;margin:6px 0 8px;font-size:10px}.article-modal-title{font-family:var(--font-projects-display);color:var(--ink-100);text-transform:uppercase;letter-spacing:.02em;text-shadow:-1px 0 #ffd60a47,1px 0 #00d1ff47,0 1.5px #ff00d133;margin:0 0 10px;font-size:clamp(1.4rem,3.4vw,1.9rem);font-weight:700}.article-modal-topic{font-family:var(--font-projects-body);color:var(--ink-300);margin:0;font-size:.85rem;line-height:1.6}.article-modal-rule{border-top:1px solid #d9c7a333;margin:18px 0}.article-modal-body{font-family:var(--font-projects-body);color:var(--ink-300);margin:0;font-size:.95rem;line-height:1.8}.slide.about{background:var(--void-950);--about-violet:#b98ae0}.about-bg{z-index:0;pointer-events:none;filter:url(#watercolor-edge);transform:translate(var(--parallax-x,0px), var(--parallax-y,0px));transition:transform .9s cubic-bezier(.16,1,.3,1);position:absolute;inset:-10%}.bloom-drift{position:absolute}.bloom-drift-1{width:52%;height:60%;animation:26s ease-in-out infinite alternate driftA;top:-8%;left:-6%}.bloom-drift-2{width:58%;height:64%;animation:32s ease-in-out infinite alternate driftB;bottom:-12%;right:-8%}.bloom-drift-3{width:40%;height:46%;animation:22s ease-in-out infinite alternate driftC;top:20%;right:8%}.bloom-drift-4{width:44%;height:48%;animation:28s ease-in-out infinite alternate driftD;bottom:10%;left:12%}@keyframes driftA{0%{transform:translate(0)}to{transform:translate(3%,4%)}}@keyframes driftB{0%{transform:translate(0)}to{transform:translate(-4%,-3%)}}@keyframes driftC{0%{transform:translate(0)}to{transform:translate(-3%,3%)}}@keyframes driftD{0%{transform:translate(0)}to{transform:translate(4%,-2%)}}.bloom-blob{filter:blur(40px);border-radius:50%;width:100%;height:100%}.bloom-warm{background:radial-gradient(circle,#ff2e4d80 0%,#ffc97847 45%,#0000 72%)}.bloom-cool{background:radial-gradient(circle,#4fe3ff66 0%,#4fe3ff1f 50%,#0000 72%)}.bloom-warm-soft{background:radial-gradient(circle,#ffc97866 0%,#ff4fd82e 50%,#0000 72%)}.bloom-violet{background:radial-gradient(circle,#b98ae06b 0%,#b98ae024 50%,#0000 72%)}.cursor-trail{z-index:1;pointer-events:none;filter:blur(18px);opacity:0;background:radial-gradient(circle,#ff2e4d38 0%,#4fe3ff1f 55%,#0000 75%);border-radius:50%;width:180px;height:180px;transition:opacity .7s;position:absolute;top:0;left:0}.about-content{z-index:2;height:100%;max-width:var(--content-max);overscroll-behavior:contain;margin:0 auto;padding:clamp(48px,9vh,88px) 28px clamp(56px,10vh,76px);position:relative;overflow-y:auto}.about-eyebrow{z-index:3;font-family:var(--font-about-body);color:var(--ink-300);letter-spacing:.01em;margin:0 0 clamp(18px,3.6vh,34px);font-size:15px;font-weight:700;position:relative}.about-scatter{width:100%;height:clamp(400px,68vh,620px);position:relative}.frag{background:#121a3d70;border:1px solid #ffffff14;position:absolute;box-shadow:0 14px 30px #00000047}.frag-note{font-family:var(--font-about-body);color:var(--ink-300);padding:12px 16px;font-size:clamp(.95rem,1.3vw,1.1rem);font-weight:400;line-height:1.4}.frag-anchor{background:#121a3d85;padding:22px 26px 26px}.frag-anchor-text,.frag-anchor-smear{font-family:var(--font-about-display);letter-spacing:0;font-size:clamp(2.2rem,5.4vw,3.7rem);font-weight:700;line-height:1.05;display:block}.frag-anchor-text{color:var(--ink-100);position:relative}.frag-anchor-smear{color:#0000;background:linear-gradient(#ff2e4d8c,#b98ae059 55%,#0000 100%);filter:blur(6px);-webkit-background-clip:text;background-clip:text;position:absolute;top:22px;left:26px;right:26px;transform:translate(3px,8px);-webkit-mask-image:linear-gradient(#000 40%,#0000 95%);mask-image:linear-gradient(#000 40%,#0000 95%)}.frag-portrait{background:#121a3d6b;flex-direction:column;align-items:center;gap:8px;padding:16px 16px 14px;display:flex}.frag-portrait .about-photo{filter:drop-shadow(0 6px 16px #00000059);border-radius:3px;width:100%;height:auto;display:block}.plate-modal-logo-img{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.frag-portrait .about-caption{font-family:var(--font-about-body);color:var(--ink-400);letter-spacing:.01em;margin:0;font-size:13px;font-weight:400}.torn-1{clip-path:polygon(3% 0%,18% 2%,33% 0%,50% 3%,67% 0%,83% 2%,100% 0%,97% 14%,100% 29%,98% 46%,100% 63%,97% 80%,100% 97%,84% 100%,68% 98%,51% 100%,34% 97%,17% 100%,0% 98%,2% 82%,0% 65%,3% 48%,0% 31%,2% 15%)}.torn-2{clip-path:polygon(0% 4%,14% 0%,29% 3%,46% 0%,62% 2%,79% 0%,100% 5%,97% 20%,100% 36%,96% 52%,100% 68%,97% 84%,100% 100%,83% 97%,66% 100%,49% 98%,32% 100%,15% 97%,0% 100%,3% 84%,0% 68%,4% 52%,0% 35%,3% 19%)}.torn-3{clip-path:polygon(5% 0%,20% 3%,36% 0%,52% 4%,68% 0%,84% 3%,100% 0%,98% 16%,100% 33%,97% 50%,100% 66%,98% 83%,100% 100%,85% 98%,69% 100%,53% 97%,37% 100%,21% 98%,5% 100%,0% 84%,3% 67%,0% 50%,2% 33%,0% 16%)}.slide.contact{background:var(--void-950);cursor:crosshair}.contact-halftone-svg{z-index:0;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.scrap-layer{z-index:3;pointer-events:none;position:absolute;inset:0;overflow:hidden}.scrap{clip-path:polygon(0 0,70% 0,100% 40%,60% 100%,0 80%);width:9px;height:13px;margin:-6px 0 0 -4px;animation:.62s ease-out forwards scrap-fall;position:absolute}.scrap-magenta{background:var(--contact-magenta)}.scrap-yellow{background:var(--contact-yellow)}@keyframes scrap-fall{0%{transform:rotate(var(--rot)) translateY(0) scale(1);opacity:.95}to{transform:rotate(calc(var(--rot) + 55deg)) translateY(24px) scale(.35);opacity:0}}.stamp-layer{z-index:4;pointer-events:none;position:absolute;inset:0;overflow:hidden}.stamp-mark{border:3px solid var(--contact-magenta);width:64px;height:64px;font-family:var(--font-contact-display);color:var(--contact-magenta);letter-spacing:.06em;text-transform:uppercase;border-radius:50%;justify-content:center;align-items:center;margin:-32px 0 0 -32px;font-size:9px;animation:.52s cubic-bezier(.34,1.56,.64,1) forwards stamp-pop;display:flex;position:absolute}@keyframes stamp-pop{0%{opacity:0;transform:scale(.3)rotate(-14deg)}35%{opacity:1;transform:scale(1.12)rotate(6deg)}to{opacity:0;transform:scale(1)rotate(-3deg)}}@keyframes slap-jog{0%{transform:translate(0)rotate(0)}20%{transform:translate(-3px,-4px)rotate(-2deg)}45%{transform:translate(2px,3px)rotate(1.5deg)}70%{transform:translate(-1px,-2px)rotate(-.8deg)}to{transform:translate(0)rotate(0)}}.contact-content{z-index:2;height:100%;max-width:var(--content-max);overscroll-behavior:contain;flex-direction:column;justify-content:center;gap:clamp(6px,1.2vh,10px);margin:0 auto;padding:clamp(48px,9vh,88px) 28px clamp(56px,10vh,76px);display:flex;position:relative;overflow-y:auto}.contact-eyebrow{font-family:var(--font-contact-body);color:var(--contact-yellow);letter-spacing:.14em;text-transform:uppercase;margin:0 0 8px;font-size:11px;font-weight:400}.contact-hazard{background:repeating-linear-gradient(-45deg, var(--contact-yellow) 0 6px, var(--contact-magenta) 6px 12px);opacity:.9;border-radius:1px;width:64px;height:5px;margin-bottom:clamp(14px,2.6vh,22px)}.contact-heading{font-family:var(--font-contact-display);text-transform:uppercase;color:var(--ink-100);max-width:640px;margin:0 0 10px;font-size:clamp(1.05rem,min(2.6vw,3.3vh),1.85rem);font-weight:400;line-height:1.3}.contact-sub{font-family:var(--font-contact-body);color:var(--ink-400);max-width:520px;margin:0 0 clamp(20px,3.6vh,32px);font-size:.82rem;line-height:1.75}.contact-anchor{background:#121a3d8c;border:1px solid #ffffff14;align-self:flex-start;margin:0 0 clamp(24px,4vh,38px);padding:22px 30px 26px;display:inline-block;position:relative;box-shadow:0 14px #00000080,0 4px 22px #00000073}.contact-anchor:hover{animation:.26s cubic-bezier(.34,1.56,.64,1) slap-jog}.anchor-ghost{font-family:var(--font-contact-display);white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none;margin:0;font-size:clamp(2.4rem,6.2vw,4.2rem);font-weight:400;line-height:1;position:absolute;top:22px;left:30px;right:30px}.anchor-ghost-a{color:var(--contact-magenta);opacity:.6;transform:translate(5px,4px)}.anchor-ghost-b{color:var(--contact-yellow);opacity:.45;transform:translate(-4px,-3px)}.contact-anchor-text{font-family:var(--font-contact-display);color:var(--ink-100);white-space:nowrap;margin:0;font-size:clamp(2.4rem,6.2vw,4.2rem);font-weight:400;line-height:1;position:relative}.ransom-char{will-change:transform;display:inline-block}.contact-grid{align-items:flex-start;gap:clamp(14px,2.4vw,22px);display:flex}.lineup-panel{background:#121a3d6b;border:1px solid #ffffff14;flex:auto;min-width:0;padding:18px 20px 16px}.contact-section-label{font-family:var(--font-contact-body);color:var(--contact-yellow);letter-spacing:.12em;text-transform:uppercase;margin:0 0 10px;font-size:10px}.lineup-list{flex-direction:column;display:flex}.lineup-row{cursor:pointer;border-bottom:1px dashed #ffffff24;flex-wrap:wrap;align-items:baseline;gap:10px;padding:9px 4px;text-decoration:none;display:flex}.lineup-row:last-child{border-bottom:none}.lineup-row:hover{animation:.26s cubic-bezier(.34,1.56,.64,1) slap-jog}.lineup-row:hover .lineup-name{color:var(--contact-magenta)}.lineup-name{font-family:var(--font-contact-display);color:var(--ink-100);text-transform:uppercase;font-size:clamp(.95rem,1.5vw,1.2rem);font-weight:400;transition:color .16s}.lineup-tag{font-family:var(--font-contact-body);color:var(--contact-magenta);letter-spacing:.07em;text-transform:uppercase;font-size:9.5px}.lineup-value{font-family:var(--font-contact-body);color:var(--ink-400);margin-left:auto;font-size:11px}.patch{text-align:center;background:linear-gradient(160deg,#ff1fa629,#ff1fa60a);border:1px solid #ffffff1a;flex-direction:column;flex:0 0 clamp(140px,18vw,190px);align-items:center;gap:6px;padding:16px 14px 14px;display:flex;box-shadow:0 10px #0006}.patch:hover{animation:.26s cubic-bezier(.34,1.56,.64,1) slap-jog}.patch-tag{font-family:var(--font-contact-body);color:var(--ink-400);letter-spacing:.1em;text-transform:uppercase;font-size:9px}.patch-value{font-family:var(--font-contact-display);color:var(--contact-yellow);font-size:15px;font-weight:400}.shard-1{clip-path:polygon(0% 0%,8% 4%,16% 0%,26% 5%,36% 0%,47% 6%,58% 0%,70% 5%,82% 0%,92% 4%,100% 0%,96% 12%,100% 24%,94% 34%,100% 46%,95% 58%,100% 70%,96% 82%,100% 94%,100% 100%,0% 100%)}.shard-2{clip-path:polygon(0% 0%,100% 0%,100% 100%,92% 96%,84% 100%,73% 95%,62% 100%,50% 94%,39% 100%,27% 95%,16% 100%,5% 96%,0% 100%,4% 88%,0% 76%,5% 65%,0% 53%,4% 41%,0% 29%,3% 17%,0% 6%)}.shard-3{clip-path:polygon(4% 0%,20% 5%,38% 0%,56% 6%,74% 0%,90% 5%,100% 0%,96% 18%,100% 36%,93% 52%,100% 68%,95% 84%,100% 100%,82% 94%,64% 100%,46% 95%,28% 100%,10% 94%,0% 100%,5% 82%,0% 64%,6% 48%,0% 32%,4% 16%)}.slide.stub{background:var(--void-950);justify-content:center;align-items:center;display:flex}.stub-inner{text-align:center;max-width:420px;padding:0 28px}.stub-glyph{opacity:.85;width:46px;height:46px;margin:0 auto 20px;display:inline-block}.stub-glyph svg{width:100%;height:100%}.stub-title{font-family:var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-100);margin:0 0 10px;font-size:13px;font-weight:600}.stub-note{font-family:var(--font-body);color:var(--ink-400);margin:0;font-size:13px;line-height:1.6}.stub-note .accent{color:var(--accent)}.dotnav{z-index:80;-webkit-backdrop-filter:blur(12px);background:#0a0e2a8c;border:1px solid #ffffff14;border-radius:999px;align-items:center;gap:14px;padding:8px 14px;display:flex;position:fixed;bottom:clamp(10px,2.4vh,22px);left:50%;transform:translate(-50%)}.dotnav button{cursor:pointer;width:26px;height:26px;color:var(--ink-400);background:#ffffff0d;border:1px solid #ffffff1f;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:background .25s,border-color .25s,transform .25s;display:flex}.dotnav button svg{width:13px;height:13px}.dotnav button:hover{color:var(--ink-100);border-color:#ffffff47}.dotnav button.active{background:var(--accent-dim);border-color:var(--accent);color:var(--accent);transform:scale(1.14)}.dotnav button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes blink{0%,49%{opacity:1}50%,to{opacity:0}}@media (prefers-reduced-motion:reduce){.deck-track{transition:none!important}.cursor,.bloom-drift{animation:none!important}.about-bg,.cursor-trail{transition:none!important}.contact-anchor:hover,.lineup-row:hover,.patch:hover{animation:none!important}.scrap,.stamp-mark{animation:none!important;display:none!important}.plate-modal-overlay,.plate-modal,.article-modal-overlay,.article-modal,.article-carousel{animation:none!important}}@media (width<=760px){.home-content{gap:16px;padding:80px 20px 96px}.cap-grid{grid-template-columns:repeat(2,1fr);row-gap:14px}.dotnav{bottom:14px}.skyline-far{height:22vh}.skyline-near{height:30vh}.plate-grid{grid-template-columns:1fr}.proj-secondary{flex-direction:column;gap:16px}.rev-panel{flex:auto;width:100%}.about-scatter{flex-direction:column;gap:14px;height:auto;display:flex}.about-scatter .frag{position:static;width:100%!important;transform:none!important}.about-scatter .frag-anchor{order:-1}.about-scatter .frag-portrait{max-width:220px;margin:4px auto 0}.contact-anchor{max-width:100%;padding:16px 18px 20px}.contact-anchor-text,.anchor-ghost{font-size:clamp(1.5rem,8.6vw,2rem)}.anchor-ghost{top:16px;left:18px;right:18px}.contact-grid{flex-direction:column}.patch{flex:auto;width:100%;max-width:220px;margin:0 auto}.plate-modal{padding:20px 18px 22px}.plate-modal-header{flex-wrap:wrap;gap:12px}.plate-modal-logo{width:52px;height:52px;font-size:16px}.article-modal{padding:20px 18px 22px}.article-carousel{padding:18px 18px 16px}.carousel-arrow{width:24px;height:24px}.carousel-arrow svg{width:12px;height:12px}}
