:root{--bg:#050505;--ink:#f3f1ee;--dim:#f3f1ee8c;--red:#de3b21;--glass:#1414168c;--line:#ffffff29;--mono:"JetBrains Mono", ui-monospace, monospace;--sans:"Space Grotesk", system-ui, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);height:100%;color:var(--ink);overflow:hidden}body{font-family:var(--mono);letter-spacing:.04em;-webkit-font-smoothing:antialiased;font-size:13px}button{font:inherit;color:inherit;cursor:pointer;letter-spacing:inherit;background:0 0;border:0}a{color:inherit}#gl{touch-action:none;cursor:grab;width:100%;height:100%;display:block;position:fixed;inset:0}#gl.dragging{cursor:grabbing}#gl.hovering{cursor:pointer}#loader{z-index:50;background:var(--bg);place-items:center;transition:opacity .9s,visibility .9s;display:grid;position:fixed;inset:0}#loader.done{opacity:0;visibility:hidden}.loader-ring{width:120px;height:120px;clip-path:inset(var(--clip,100%) 0 0 0);background:repeating-linear-gradient(115deg,#de3b218c 0 1px,#0000 1px 7px);border-radius:50%;transition:clip-path .2s linear;position:absolute;-webkit-mask:radial-gradient(circle,#000 58%,#0000 60%);mask:radial-gradient(circle,#000 58%,#0000 60%)}#loader-count{color:var(--ink);font-size:12px;position:relative}.top{z-index:10;pointer-events:none;justify-content:space-between;align-items:flex-start;padding:28px 36px;display:flex;position:fixed;top:0;left:0;right:0}.top>*{pointer-events:auto}.logo img{opacity:.95;width:150px;height:auto;display:block}.pill{background:var(--glass);border:1px solid var(--line);-webkit-backdrop-filter:blur(14px);text-transform:uppercase;border-radius:999px;align-items:center;gap:18px;padding:12px 26px;font-size:12px;display:flex}.pill button{opacity:.85;transition:opacity .2s,color .2s}.pill button:hover{opacity:1;color:var(--red)}.pill-line{background:linear-gradient(90deg, transparent, var(--red), transparent);width:44px;height:1px}.pager{text-transform:uppercase;align-items:center;gap:8px;font-size:11px;display:flex;position:absolute;top:88px;right:36px}.pager button{border:1px solid var(--line);background:var(--glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:6px;padding:6px 9px}.pager button:hover{border-color:var(--red);color:var(--red)}.pager-label{white-space:nowrap;width:190px;color:var(--dim);text-align:center;overflow:hidden}#pager-text{transition:opacity .3s,transform .3s;display:inline-block}#pager-text.swap{opacity:0;transform:translateY(6px)}.side{z-index:10;text-transform:uppercase;position:fixed;bottom:64px;left:36px}.side-title{margin-bottom:18px;font-size:12px}.side ul{gap:12px;margin-bottom:26px;list-style:none;display:grid}.side li button{color:var(--dim);text-transform:uppercase;text-align:left;font-size:12px;transition:color .2s,transform .2s}.side li button:before{content:"-> "}.side li button:hover{color:var(--ink);transform:translate(4px)}.side li button.active{color:var(--red)}.cta-ghost{text-transform:uppercase;color:var(--dim);border:1px solid #de3b2180;border-radius:999px;padding:12px 22px;font-size:11px;transition:all .25s}.cta-ghost:hover{color:var(--ink);border-color:var(--red);background:#de3b211f}.progress{z-index:10;background:var(--line);border-radius:2px;width:2px;height:160px;position:fixed;top:50%;right:36px;transform:translateY(-50%)}#progress-bar{background:var(--red);border-radius:2px;width:100%;height:0%;position:absolute;top:0;left:0}.hint{z-index:10;color:var(--dim);text-transform:uppercase;font-size:10px;transition:opacity .8s;position:fixed;bottom:26px;left:50%;transform:translate(-50%)}.hint.gone{opacity:0}.foot{z-index:10;color:var(--dim);text-transform:uppercase;font-size:10px;position:fixed;bottom:26px;right:36px}.panel{--cut:26px;z-index:30;-webkit-backdrop-filter:blur(20px)saturate(1.3);width:min(780px,100% - 32px);max-height:calc(100% - 110px);clip-path:polygon(var(--cut) 0, 100% 0, 100% calc(100% - var(--cut)), calc(100% - var(--cut)) 100%, 0 100%, 0 var(--cut));opacity:0;visibility:hidden;background:linear-gradient(#de3b2112,#0000 30%),radial-gradient(120% 80% at 100% 0,#de3b211f,#0000 55%),linear-gradient(160deg,#0e0e12d1,#040406e6);flex-direction:column;transition:visibility 0s .5s;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.panel-scroll{z-index:1;scrollbar-width:thin;scrollbar-color:var(--red) transparent;margin:64px 0 56px;padding:0 60px;position:relative;overflow-y:auto;-webkit-mask:linear-gradient(#0000,#000 14px calc(100% - 14px),#0000);mask:linear-gradient(#0000,#000 14px calc(100% - 14px),#0000)}.panel-scroll>:first-child{margin-top:14px}.panel-scroll>:last-child{margin-bottom:14px}.panel:before{content:"";pointer-events:none;border:1px solid #de3b2166;position:absolute;inset:0}.panel.open{visibility:visible;transition:none;animation:.7s cubic-bezier(.2,.9,.2,1) forwards panel-in}@keyframes panel-in{0%{opacity:0;clip-path:polygon(50% 49.6%,50% 49.6%,50% 50.4%,50% 50.4%,50% 50.4%,50% 49.6%);filter:brightness(3)}30%{opacity:1;clip-path:polygon(0 49.6%,100% 49.6%,100% 50.4%,100% 50.4%,0 50.4%,0 49.6%);filter:brightness(2.5)}to{opacity:1;clip-path:polygon(var(--cut) 0, 100% 0, 100% calc(100% - var(--cut)), calc(100% - var(--cut)) 100%, 0 100%, 0 var(--cut));filter:none}}.hud{pointer-events:none;color:#f3f1ee73;text-transform:uppercase;letter-spacing:.12em;font-size:10px;position:absolute;inset:0}.hud .d{width:calc(var(--cut) * 1.4143);background:var(--red);height:1px;box-shadow:0 0 8px var(--red);position:absolute}.hud .d1{transform-origin:0 0;transform:translateY(var(--cut)) rotate(-45deg);top:0;left:0}.hud .d2{transform-origin:100% 100%;transform:translateY(calc(var(--cut) * -1)) rotate(-45deg);bottom:0;right:0}.hud .c{border:0 solid var(--red);width:18px;height:18px;position:absolute}.hud .tl{top:12px;left:calc(var(--cut) + 10px);border-top-width:2px;width:60px;height:0}.hud .tr{border-top-width:2px;border-right-width:2px;top:12px;right:12px}.hud .bl{border-bottom-width:2px;border-left-width:2px;bottom:12px;left:12px}.hud .br{bottom:12px;right:calc(var(--cut) + 10px);border-bottom-width:2px;width:60px;height:0}.hud-top,.hud-bottom{align-items:center;gap:14px;display:flex;position:absolute;left:60px;right:60px}.hud-top{top:26px}.hud-top .hud-clock{color:var(--red);margin-left:auto;margin-right:70px}.hud-bottom{justify-content:space-between;bottom:24px}.hud .dot{background:var(--red);width:6px;height:6px;box-shadow:0 0 10px var(--red);border-radius:50%;animation:1.4s steps(2,end) infinite blink}@keyframes blink{50%{opacity:.2}}.hud .bars{gap:3px;display:flex}.hud .bars b{background:#de3b2140;width:4px;height:10px;animation:2.4s ease-in-out infinite bar}.hud .bars b:nth-child(odd){animation-delay:-.6s}.hud .bars b:nth-child(3n){animation-delay:-1.3s}@keyframes bar{50%{background:var(--red)}}.hud .grid{z-index:-1;opacity:.35;background-image:linear-gradient(#ffffff09 1px,#0000 1px),linear-gradient(90deg,#ffffff09 1px,#0000 1px);background-size:28px 28px;position:absolute;inset:0;-webkit-mask:radial-gradient(90% 90% at 70% 20%,#000,#0000);mask:radial-gradient(90% 90% at 70% 20%,#000,#0000)}.hud .sweep{background:linear-gradient(#0000,#de3b2114 70%,#ff785a59 100%);border-bottom:1px solid #ff785a80;height:120px;animation:4.5s linear infinite sweep;position:absolute;top:-120px;left:0;right:0}@keyframes sweep{0%{transform:translateY(0)}to{transform:translateY(1200px)}}.panel:after{content:"";pointer-events:none;background:repeating-linear-gradient(0deg,#ffffff06 0 1px,#0000 1px 3px);position:absolute;inset:0}.panel .close{z-index:2;color:var(--dim);border:1px solid var(--line);clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px);background:#0000004d;align-items:center;gap:8px;padding:6px 10px;font-size:12px;transition:color .2s,border-color .2s,background .2s;display:flex;position:absolute;top:18px;right:46px}.panel .close span{letter-spacing:.15em;font-size:9px}.panel .close:hover,.panel .close:focus-visible{color:#fff;border-color:var(--red);background:#de3b2133;outline:none}.kicker,.panel .kicker{font-family:var(--mono);color:var(--red);letter-spacing:.18em;margin-bottom:18px;font-size:12px;font-weight:500;line-height:1.4}.panel h2{font-family:var(--sans);letter-spacing:-.01em;text-shadow:0 0 30px #de3b2140;margin-bottom:30px;font-size:clamp(30px,4.4vw,50px);font-weight:700;line-height:1.04}.panel p{font-family:var(--sans);letter-spacing:0;color:#f3f1eedb;margin-bottom:14px;font-size:17px;font-weight:300;line-height:1.6}#detail-body p{opacity:0;animation:line-in .6s var(--d,.3s) cubic-bezier(.2, .8, .2, 1) forwards;padding-left:22px;position:relative}#detail-body p:before{content:"";background:var(--red);width:10px;height:1px;position:absolute;top:.72em;left:0}@keyframes line-in{0%{opacity:0;filter:blur(4px);transform:translate(-14px)}to{opacity:1;filter:none;transform:none}}.cta{color:#fff;text-transform:uppercase;letter-spacing:.14em;clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);background:linear-gradient(90deg,#de3b21f2,#de3b21bf);align-items:center;gap:16px;margin-top:22px;padding:16px 22px 16px 26px;font-size:12px;transition:filter .2s,transform .2s;display:inline-flex;position:relative;overflow:hidden}.cta:after{content:"";background:linear-gradient(100deg,#0000,#ffffff73,#0000);width:40%;position:absolute;top:0;bottom:0;left:-60%;transform:skew(-20deg)}.cta:hover:after{animation:.7s shine}@keyframes shine{to{left:130%}}.cta-arrow{border-left:1px solid #ffffff59;padding-left:14px;transition:transform .2s;display:inline-block}.cta:hover{filter:drop-shadow(0 0 18px #de3b2199)}.cta:hover .cta-arrow{transform:translate(4px)}.cta:focus-visible{outline-offset:3px;outline:1px solid #fff}.contact-grid{grid-template-columns:1fr 1.4fr;gap:40px;display:grid}.contact-grid h3{text-transform:uppercase;letter-spacing:.18em;color:var(--red);margin:0 0 6px;font-size:10px;font-weight:500}.contact-grid h3:before{content:"▸ "}.contact-grid p{margin-bottom:20px;font-size:15px}.contact-grid a{border-bottom:1px solid var(--line);text-decoration:none}.contact-grid a:hover{border-color:var(--red)}#contact-form{gap:14px;display:grid}#contact-form .form-lead{margin:0;font-size:14px}#contact-form label{text-transform:uppercase;letter-spacing:.16em;color:var(--dim);gap:6px;font-size:10px;display:grid}#contact-form input,#contact-form textarea{font:15px var(--sans);color:var(--ink);border:0;border-bottom:1px solid var(--line);resize:vertical;background:#de3b210a;border-left:2px solid #0000;padding:11px 12px;transition:border-color .2s,background .2s}#contact-form input:focus,#contact-form textarea:focus{border-bottom-color:var(--red);border-left-color:var(--red);background:#de3b2117;outline:none}#contact-form .cta{justify-self:start;margin-top:4px}#contact-form .cta:disabled{opacity:.6;cursor:progress}#contact-form .hp{opacity:0;width:1px;height:1px;position:absolute;left:-9999px}.panel .form-status{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;min-height:1.4em;margin:0;font-size:12px}.form-status.pending{color:var(--dim);animation:1s steps(2,end) infinite blink}.form-status.ok{color:#7fe0a8}.form-status.err{color:var(--red)}#fallback{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}body.no-webgl{overflow:auto}body.no-webgl #gl,body.no-webgl .pager,body.no-webgl .progress,body.no-webgl .hint{display:none}body.no-webgl #fallback{clip:auto;white-space:normal;width:auto;max-width:760px;height:auto;font-family:var(--sans);padding:140px 36px 200px;position:static}body.no-webgl #fallback h2{margin:48px 0 12px;font-size:34px}body.no-webgl #fallback p{margin-bottom:10px;font-size:17px;line-height:1.6}@media (width<=760px){.top{padding:18px 16px}.logo img{width:112px}.pill{gap:10px;padding:10px 16px;font-size:11px}.pill-line{width:20px}.pager{top:70px;right:16px}.pager-label{width:140px}.side{bottom:54px;left:16px;right:16px}.side-title,.side ul{display:none}.cta-ghost{width:100%;padding:14px}.progress{height:110px;right:10px}.foot{bottom:20px;left:16px;right:auto}.hint{display:none}.panel{--cut:18px;max-height:calc(100% - 40px)}.panel-scroll{margin:56px 0 48px;padding:0 22px}.hud-top,.hud-bottom{left:22px;right:22px}.hud-bottom span:first-child{display:none}.panel .close{right:30px}.contact-grid{grid-template-columns:1fr;gap:10px}}@media (prefers-reduced-motion:reduce){.panel,#pager-text,.side li button{transition:none}.panel.open,#detail-body p,.hud .sweep,.hud .bars b,.hud .dot{opacity:1;animation:none}}
