/* Original signal-field sequence. Native scroll, CSS perspective, ordinary text. */
body:has(.ps-hero){--signal-orange:#fa6037;--signal-ink:#101112;--signal-paper:#e7e6e1}
body:has(.ps-hero) .hb-header{position:sticky;top:0;background:#e7e6e1;min-height:80px}
.ps-hero{--ps-progress:0;--ps-pan-x:0deg;--ps-pan-y:0deg;--ps-header:80px;background:#0a0c0e;color:#f4f2e9;position:relative;isolation:isolate;overflow:clip}
.ps-pin{position:relative;min-height:800px;overflow:hidden;padding:30px 44px 90px}
.ps-topline,.ps-bottom{position:relative;z-index:4;display:flex;justify-content:space-between;align-items:center;gap:20px;font:10px/1.5 var(--hb-mono);letter-spacing:.09em}
.ps-topline{padding-bottom:20px;border-bottom:1px solid #ffffff2b;color:#c4c6c5}
.ps-topline>span:last-child{display:flex;align-items:center;gap:9px}
.ps-topline i{width:5px;height:5px;background:var(--signal-orange);box-shadow:0 0 15px #fa603799}
.ps-field{position:absolute;inset:0;overflow:hidden;background:radial-gradient(ellipse at 72% 49%,#33241d 0,transparent 48%),linear-gradient(125deg,#080a0c,#171c1f 70%,#080a0c);pointer-events:none}
.ps-field:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0a0c0ef2 0%,#0a0c0ec9 30%,transparent 70%),linear-gradient(0deg,#0a0c0e 0%,transparent 18%,transparent 85%,#0a0c0e70);z-index:2}
.ps-grid{position:absolute;inset:-20%;background-image:linear-gradient(#c2d2d508 1px,transparent 1px),linear-gradient(90deg,#c2d2d508 1px,transparent 1px);background-size:90px 90px;transform:perspective(900px) rotateX(58deg) rotateZ(-18deg) translateY(25%);mask-image:radial-gradient(ellipse,#000,transparent 65%)}
.ps-horizon{position:absolute;top:53%;left:45%;width:65%;height:1px;transform:rotate(-26deg);background:linear-gradient(90deg,transparent,#fa60377a,transparent)}
.ps-star{position:absolute;color:#aaa99e80;font:24px var(--hb-mono);font-weight:100}.ps-star-a{left:49%;top:18%}.ps-star-b{left:94%;top:81%}.ps-star-c{left:67%;top:90%}
.ps-depth{position:absolute;left:43%;top:15%;width:60%;height:77%;perspective:1100px;perspective-origin:50% 50%}
.ps-camera{position:absolute;inset:0;transform-style:preserve-3d;transform:rotateX(-12deg) rotateY(-24deg) rotateZ(-7deg)}
.ps-machine{position:absolute;left:50%;top:50%;width:280px;height:280px;transform:translate(-50%,-50%);transform-style:preserve-3d}
.ps-block{--b:122px;--d:70px;width:var(--b);height:var(--b);position:absolute;transform-style:preserve-3d;filter:drop-shadow(0 15px 22px #0006)}
.ps-block-1{left:0;top:0;transform:translateZ(30px)}.ps-block-2{right:0;top:0;transform:translateZ(-30px)}.ps-block-3{right:0;bottom:0;transform:translateZ(0)}
.ps-face{position:absolute;display:block;backface-visibility:hidden;font-style:normal;border:1px solid #ffb69e66}
.ps-front{inset:0;background:linear-gradient(135deg,#ff916d,#f95b2b 65%,#d33b11);box-shadow:inset 1px 1px 1px #ffd3af, inset -2px -2px 1px #5f180b77;transform:translateZ(calc(var(--d)/2));padding:15px;color:#421604}
.ps-front:after{content:"";position:absolute;inset:9px;border:1px solid #64240840}.ps-front b{position:absolute;bottom:18px;left:15px;font:600 12px var(--hb-mono);letter-spacing:.04em}.ps-front small{font:9px var(--hb-mono);color:#5e2416}
.ps-side{top:0;left:100%;height:100%;width:var(--d);background:linear-gradient(90deg,#a52f13,#f56636);transform-origin:left;transform:translateZ(calc(var(--d)/2)) rotateY(90deg)}
.ps-top{left:0;bottom:100%;width:100%;height:var(--d);background:linear-gradient(0deg,#ff9e73,#ffe2bb);transform-origin:bottom;transform:translateZ(calc(var(--d)/2)) rotateX(90deg)}
.ps-block-3 .ps-front{background:linear-gradient(135deg,#f7f4e7,#d8d6cb);border-color:#ffffff9e}.ps-block-3 .ps-side{background:linear-gradient(90deg,#777c78,#c8cec8)}.ps-block-3 .ps-top{background:linear-gradient(0deg,#d9d8ce,#fffdf2)}.ps-block-3 .ps-front b,.ps-block-3 .ps-front small{color:#363d39}
.ps-orbit{position:absolute;border:1px solid #f9935a55;border-radius:50%;width:540px;height:540px;left:-130px;top:-130px;transform:rotateX(65deg) translateZ(-60px)}
.ps-orbit-b{width:640px;height:640px;left:-180px;top:-180px;border-style:dashed;border-color:#e9e9dd30;transform:rotateY(68deg) rotateZ(25deg)}
.ps-connector{position:absolute;left:0;top:0;inset:-80px;border:1px solid #e4e8e033;transform:translateZ(-100px)}
.ps-pulse{position:absolute;left:130px;top:130px;width:20px;height:20px;background:#ff9970;box-shadow:0 0 20px #fa6037,0 0 80px 20px #fa603733;transform:translateZ(100px) rotate(45deg)}
.ps-gate{position:absolute;left:50%;top:50%;width:480px;height:480px;transform:translate(-50%,-50%) translateZ(calc(-300px - var(--gate)*350px)) rotateZ(calc(var(--gate)*9deg));border:1px solid #efead42c;box-shadow:inset 0 0 55px #f3ac6a06}
.ps-gate i{position:absolute;width:22px;height:22px;border-color:#fd9b71aa;border-style:solid}.ps-gate i:nth-child(1){left:-1px;top:-1px;border-width:2px 0 0 2px}.ps-gate i:nth-child(2){right:-1px;top:-1px;border-width:2px 2px 0 0}.ps-gate i:nth-child(3){right:-1px;bottom:-1px;border-width:0 2px 2px 0}.ps-gate i:nth-child(4){left:-1px;bottom:-1px;border-width:0 0 2px 2px}.ps-gate>span{position:absolute;top:-22px;left:0;font:9px var(--hb-mono);letter-spacing:.12em;color:#b4b9b1}
.ps-wires{position:absolute;inset:8% -6% 8% 40%;width:66%;height:85%;opacity:.13;color:#e9e1c6}
.ps-copy{position:relative;z-index:3;margin-top:clamp(70px,12vh,145px);max-width:780px;pointer-events:none}
.ps-copy>*{pointer-events:auto}.ps-kicker{font:10px/1.4 var(--hb-mono);letter-spacing:.1em;color:#c2c5be;margin-bottom:25px!important}
body.heartbeat .ps-copy h1,body.heartbeat .ps-copy h2{font-size:clamp(58px,6.8vw,108px);line-height:.95;letter-spacing:-.075em;font-weight:500;text-wrap:balance}
.ps-copy h1>span{display:block}.ps-copy h1>span:first-child{max-width:700px}
body.heartbeat .ps-copy em{color:var(--signal-orange)}
.ps-summary{max-width:420px;margin-top:30px!important;font-size:16px;line-height:1.6;color:#c6c9c3;text-wrap:pretty}
.ps-primary{display:flex!important;gap:30px;width:fit-content;min-height:50px;align-items:center;border:1px solid #ffffff4a;padding:10px 18px;margin-top:28px;color:#f6f2e9!important;font:12px/1.3 Arial,sans-serif;background:#161a1ccc}
.ps-primary span{color:var(--signal-orange);font-size:21px}.ps-primary:hover{background:#f4f2e9;color:#151617!important}
.ps-second{margin-top:70px;max-width:680px}.ps-second h2{font-size:clamp(56px,6.5vw,98px)!important}
.ps-constellation{position:absolute;right:0;top:9%;width:55%;height:78%;z-index:2;pointer-events:none}
.ps-node{position:absolute;left:calc(50% + var(--nx));top:calc(50% + var(--ny));display:flex;align-items:center;gap:9px;min-height:44px;padding:8px 12px;transform:translate(-50%,-50%);font:12px var(--hb-mono);background:#0a0c0e77;backdrop-filter:blur(5px);border:1px solid #bbc7bc22;pointer-events:auto;white-space:nowrap;color:#c8cbbf!important}
.ps-node span{font-size:9px;color:#ff9169}.ps-node i{font:16px Arial,sans-serif;opacity:0}.ps-node:hover,.ps-node:focus-visible{border-color:#fa6037;background:#211a15;color:#fff!important}.ps-node:hover i,.ps-node:focus-visible i{opacity:1}
.ps-bottom{margin-top:70px;border-top:1px solid #ffffff2b;padding-top:20px;color:#bec3bc;font-size:10px;letter-spacing:.02em}.ps-bottom>a{display:flex;align-items:center;gap:30px;min-height:44px}.ps-bottom>a:hover{color:#fa6037}.ps-status b{font-weight:400;color:#ff9169}.ps-replay{border:0;background:none;color:#eee;font:11px var(--hb-mono);min-height:44px;cursor:pointer}.ps-replay span{margin-left:12px;color:#fa6037}.ps-scroll{margin-left:auto;display:flex;gap:25px;align-items:center}.ps-scroll i{font:20px Arial,sans-serif}
.ps-meter{height:2px;position:absolute;bottom:0;left:0;right:0;background:#ffffff15}.ps-meter i{display:block;width:100%;height:100%;background:var(--signal-orange);transform-origin:left;transform:scaleX(var(--ps-progress))}
/* Enhanced state: text and links only move after the controller is ready. */
@media(min-width:651px) and (min-height:760px){
 html[data-motion=on] .ps-hero.ps-ready.ps-pin-active{height:260svh;overflow:visible}
 html[data-motion=on] .ps-ready.ps-pin-active .ps-pin{position:sticky;top:var(--ps-header);height:calc(100svh - var(--ps-header) - var(--dn-arcade-dock-height,0px));min-height:0}
 html[data-motion=on] .ps-ready.ps-pin-active .ps-copy{position:absolute;left:44px;top:clamp(95px,16vh,160px);margin:0;max-width:58%;will-change:transform,opacity}
 html[data-motion=on] .ps-ready.ps-pin-active .ps-copy[data-ps-intro]{transform:translateY(calc(var(--ps-intro)*-65px)) scale(calc(1 - var(--ps-intro)*.08));transform-origin:left top;opacity:calc(1 - var(--ps-intro))}
 html[data-motion=on] .ps-ready.ps-pin-active .ps-copy[data-ps-second]{opacity:var(--ps-second);transform:translateY(calc((1 - var(--ps-second))*55px))}
 html[data-motion=on] .ps-ready.ps-pin-active .ps-bottom{position:absolute;bottom:23px;left:44px;right:44px;margin:0}
 html[data-motion=on] .ps-ready.ps-pin-active .ps-camera{transform:translateZ(var(--ps-dolly,0px)) rotateX(calc(-12deg + var(--ps-tilt,0deg) + var(--ps-pan-y))) rotateY(calc(-24deg + var(--ps-turn,0deg) + var(--ps-pan-x))) rotateZ(calc(-7deg + var(--ps-roll,0deg)))}
 html[data-motion=on] .ps-ready.ps-pin-active .ps-machine{transform:translate(-50%,-50%) translateZ(calc(var(--ps-progress)*-190px))}
 html[data-motion=on] .ps-ready.ps-pin-active .ps-block-1{transform:translate3d(calc(var(--ps-spread,0)*-90px),calc(var(--ps-spread,0)*-60px),calc(30px + var(--ps-spread,0)*90px))}
 html[data-motion=on] .ps-ready.ps-pin-active .ps-block-2{transform:translate3d(calc(var(--ps-spread,0)*65px),calc(var(--ps-spread,0)*-30px),-30px)}
 html[data-motion=on] .ps-ready.ps-pin-active .ps-block-3{transform:translate3d(calc(var(--ps-spread,0)*35px),calc(var(--ps-spread,0)*65px),0)}
 html[data-motion=on] .ps-ready.ps-pin-active .ps-constellation{transform:translateY(calc(var(--ps-progress)*-12px));opacity:calc(.7 + var(--ps-second)*.3)}
}
@media(max-width:1100px){.ps-topline>span:last-child{font-size:9px}.ps-depth{left:41%;width:65%}.ps-constellation{width:53%}.ps-node{font-size:10px;gap:5px;padding:6px}.ps-node i{display:none}.ps-copy{max-width:65%}.ps-summary{max-width:340px}.ps-machine{scale:.82}.ps-gate{width:420px;height:420px}.ps-status{display:none}}
@media(min-width:651px) and (max-width:900px){body.heartbeat .ps-copy h1{font-size:70px}body.heartbeat .ps-copy h2{font-size:66px!important}.ps-depth{left:46%;width:66%}.ps-constellation{width:48%;top:14%}.ps-node:nth-child(1),.ps-node:nth-child(7),.ps-node:nth-child(8){display:none}.ps-field:after{background:linear-gradient(90deg,#0a0c0ef2,#0a0c0e9c 40%,transparent 85%)}.ps-ready .ps-copy{max-width:64%!important}.ps-summary{font-size:15px}}
@media(max-width:650px){
 body:has(.ps-hero) .hb-header{min-height:72px}
 .ps-pin{padding:24px 20px 0;min-height:0;display:flex;flex-direction:column}.ps-topline{font-size:9px;padding-bottom:17px}.ps-topline>span:last-child{display:none}.ps-copy{margin-top:43px;max-width:none}.ps-kicker{font-size:9px;margin-bottom:20px!important}
 body.heartbeat .ps-copy h1{font-size:clamp(49px,12.8vw,80px)}.ps-copy h1>span:first-child{max-width:550px}.ps-summary{max-width:340px;font-size:15px;margin-top:24px!important}.ps-primary{margin-top:24px;min-height:50px}
 .ps-depth{left:0;top:400px;width:100%;height:420px;perspective:1000px}.ps-machine{scale:.76}.ps-gate{width:360px;height:360px}.ps-field{background:radial-gradient(ellipse at 65% 45%,#432a1a 0,transparent 55%),#0a0c0e}.ps-field:after{background:linear-gradient(180deg,#0a0c0e 0%,#0a0c0ee0 26%,transparent 44%,#0a0c0e 76%)}.ps-wires{inset:365px -10% auto;width:120%;height:470px}.ps-star{display:none}
 .ps-constellation{position:relative;order:3;top:auto;right:auto;width:100%;height:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:315px;border-top:1px solid #ffffff25;border-left:1px solid #ffffff25}.ps-node{position:relative;left:auto;top:auto;transform:none;font-size:10px;padding:7px 6px;min-height:50px;gap:5px;border-top:0;border-left:0;background:#0c0f11aa;justify-content:center}.ps-node span{font-size:8px}.ps-node i{display:none}
 .ps-second{order:4;margin-top:44px;padding-bottom:42px}.ps-second h2{font-size:clamp(45px,11.2vw,72px)!important}.ps-bottom{order:5;margin-top:0;padding-block:12px 14px;font-size:9px}.ps-scroll{display:none}.ps-bottom .ps-replay{font-size:9px}.ps-meter{display:none}
}
@media(max-width:360px){.ps-node{font-size:9px;gap:3px}.ps-node span{font-size:8px}.ps-constellation{grid-template-columns:repeat(2,1fr)}.ps-depth{top:435px}.ps-constellation{margin-top:340px}}
@media(max-height:759px) and (min-width:651px){.ps-pin{padding-top:25px}.ps-copy{max-width:62%;margin-top:50px}.ps-constellation{top:10%;height:55%}.ps-depth{top:8%;height:60%}.ps-second{margin-top:70px}.ps-bottom{margin-top:35px}.ps-copy h1{font-size:75px!important}}
html[data-motion=off] .ps-hero,html[data-motion=off] .ps-pin{height:auto;position:relative}
@media(prefers-reduced-motion:reduce){.ps-hero,.ps-pin{height:auto!important;position:relative!important}.ps-hero *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.ps-node{left:clamp(60px,calc(50% + var(--nx)),calc(100% - 60px))}
@media(min-width:1101px){.ps-machine{scale:1.22}}
@media(max-width:650px){.ps-node{left:auto}}
html[data-motion=on] .ps-ready .ps-gate{animation:ps-blueprint-in .85s ease-out both;animation-delay:calc(var(--gate)*90ms)}
html[data-motion=on] .ps-ready [data-ps-intro] h1>span{animation:ps-type-in .8s cubic-bezier(.2,.7,.3,1) both}
html[data-motion=on] .ps-ready [data-ps-intro] h1>span:nth-child(2){animation-delay:.12s}
@keyframes ps-blueprint-in{from{opacity:0;filter:blur(3px)}to{opacity:1;filter:blur(0)}}
@keyframes ps-type-in{from{opacity:0;translate:0 24px;filter:blur(4px)}to{opacity:1;translate:0 0;filter:blur(0)}}
/* Keep the focal mark clear of the headline at the annotated tablet width. */
@media(min-width:651px) and (max-width:900px){
 .ps-depth{left:38%;top:28%;height:68%;width:62%}
 .ps-field:after{background:linear-gradient(90deg,#0a0c0ef2 0%,#0a0c0ee8 42%,#0a0c0e99 58%,transparent 88%)}
 html[data-motion=on] .ps-ready .ps-block-1{transform:translateZ(30px)}
 html[data-motion=on] .ps-ready .ps-block-2{transform:translateZ(-30px)}
 html[data-motion=on] .ps-ready .ps-block-3{transform:translateZ(0)}
}
@media(max-width:360px){
 body.heartbeat:has(.ps-hero) .hb-header{gap:6px}
 body.heartbeat:has(.ps-hero) .hb-header>.hb-logo{font-size:17px;gap:6px}
 body.heartbeat:has(.ps-hero) .hb-motion{font:11px/1.2 var(--hb-mono);min-width:76px;padding:8px 6px}
 body.heartbeat:has(.ps-hero) .hb-menu{font-size:12px;min-width:50px}
 body.heartbeat:has(.ps-hero) .hb-menu span{margin-left:3px}
}
