/* TFS 0.95 immersive WebGL scene — real 3D camera dolly, not 2D parallax stripes */
.tfs-nexus .nx3d-journey{position:relative;height:410vh;min-height:2000px;background:#020914;color:#f7faf9;isolation:isolate}
.tfs-nexus .nx3d-sticky{position:sticky;top:0;width:100%;height:100vh;min-height:630px;overflow:hidden;background:radial-gradient(ellipse at 70% 56%,#07304c 0%,#041725 55%,#010812 100%);perspective:1000px}
.tfs-nexus .nx3d-fallback-photo{position:absolute;inset:0;opacity:.36;z-index:0;overflow:hidden}.tfs-nexus .nx3d-fallback-photo img{width:100%;height:100%;object-fit:cover;object-position:67% 48%;filter:saturate(.95) brightness(.7);animation:nx3dFallback 30s ease-in-out infinite alternate}
.tfs-nexus .nx3d-has-webgl .nx3d-fallback-photo{opacity:0;transition:opacity .7s}
.tfs-nexus .nx3d-sky{position:absolute;inset:-20%;z-index:1;pointer-events:none;background:radial-gradient(circle at 73% 25%,#0a7a9b3c 0%,transparent 19%),radial-gradient(circle at 77% 75%,#126ec026,transparent 34%),radial-gradient(circle at 35% 4%,#c2e88a13,transparent 23%),repeating-radial-gradient(circle at 70% 43%,#66bcdb22 0 1px,transparent 2px 52px);transform:translateZ(-200px) scale(1.5);opacity:.7;animation:nx3dSkyDrift 28s ease-in-out infinite alternate}
.tfs-nexus .nx3d-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:2;filter:drop-shadow(0 0 2px #32c4d733)}
.tfs-nexus .nx3d-vignette{position:absolute;inset:0;z-index:3;pointer-events:none;background:linear-gradient(90deg,#010814f5 0%,#010915dd 23%,#020b179b 41%,#030c1b20 67%,transparent 96%),linear-gradient(0deg,#020a15df 0%,transparent 24%,transparent 75%,#02091570 100%)}
.tfs-nexus .nx3d-vignette:after{content:'';position:absolute;inset:0;opacity:.35;background:linear-gradient(0deg,transparent 0%,#0d638308 2%,transparent 3%,transparent 99%);background-size:100% 5px;mix-blend-mode:screen}
.tfs-nexus .nx3d-panel{position:absolute;top:50%;left:max(6%,calc((100% - 1440px)/2));width:min(560px,46vw);padding:12px 0;transform:translate3d(-14px,-44%,90px) rotateY(6deg);transform-origin:left center;opacity:0;pointer-events:none;transition:opacity .65s ease,transform .85s cubic-bezier(.2,.8,.2,1);z-index:6;text-shadow:0 5px 28px #000d}
.tfs-nexus .nx3d-panel.nx3d-active{transform:translate3d(0,-50%,95px) rotateY(0);opacity:1;pointer-events:auto}
.tfs-nexus .nx3d-eyebrow{font-size:.74rem;letter-spacing:.21em;font-weight:800;color:#cfe899;margin:0 0 18px}.tfs-nexus .nx3d-eyebrow span{padding:0 13px;color:#9fe4da}
.tfs-nexus .nx3d-panel h1,.tfs-nexus .nx3d-panel h2{font-size:clamp(3.25rem,5.35vw,6rem);font-weight:850;letter-spacing:-.073em;line-height:1.02;margin:0 0 26px;color:#f9fcff;text-wrap:balance}
.tfs-nexus .nx3d-panel h1 em,.tfs-nexus .nx3d-panel h2 em{color:#d5e978;font-style:normal}
.tfs-nexus .nx3d-panel>p:not(.nx3d-eyebrow){color:#d3e1e5;font-size:clamp(1.04rem,1.3vw,1.23rem);line-height:1.6;max-width:525px;margin:0 0 31px;font-weight:450}
.tfs-nexus .nx3d-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.tfs-nexus .nx3d-action-primary,.tfs-nexus .nx3d-action-ghost{display:inline-flex;gap:25px;align-items:center;justify-content:space-between;padding:14px 23px;border-radius:100px;max-width:100%;font-size:.9rem;font-weight:800;text-decoration:none!important;text-shadow:none;transition:transform .3s,background .3s;line-height:1.3}
.tfs-nexus .nx3d-action-primary{background:linear-gradient(125deg,#e6ce76,#bddf73);color:#16201a!important;box-shadow:0 10px 35px #d2dc6435}.tfs-nexus .nx3d-action-ghost{color:#ecf7f4!important;border:1px solid #a6d9d38c;background:#081e2dbd;backdrop-filter:blur(12px)}.tfs-nexus .nx3d-action-primary:hover,.tfs-nexus .nx3d-action-ghost:hover{transform:translateY(-4px)}
.tfs-nexus .nx3d-readout{position:absolute;z-index:5;top:clamp(95px,13vh,150px);right:5.5%;display:flex;align-items:center;gap:11px;font-size:.62rem;font-weight:780;letter-spacing:.14em;color:#d8f3ed;border-top:1px solid #5dc6d48b;padding-top:12px;text-shadow:0 2px 12px #000}
.tfs-nexus .nx3d-readout b{color:#f5da9f;border:1px solid #79b7b674;border-radius:30px;padding:4px 8px;margin-left:4px}.tfs-nexus .nx3d-status-led{width:7px;height:7px;border-radius:50%;background:#9ee978;box-shadow:0 0 12px 4px #b8ef6d64;animation:nx3dLed 2s ease-in-out infinite}
.tfs-nexus .nx3d-right-hud{position:absolute;right:4%;bottom:15%;z-index:5;padding:20px 26px 22px 23px;border:1px solid #75c9d14f;background:linear-gradient(145deg,#05203894,#02131ac7);backdrop-filter:blur(12px);border-radius:14px;display:grid;gap:11px;font-size:.67rem;letter-spacing:.12em;color:#d7eff1;box-shadow:0 15px 55px #0008;transform:translateZ(34px)}
.tfs-nexus .nx3d-right-hud .nx3d-hud-title{font-size:.56rem;color:#b1d8d5;letter-spacing:.19em;border-bottom:1px solid #75c9d13c;padding-bottom:8px;margin-bottom:2px}.tfs-nexus .nx3d-right-hud span{display:flex;align-items:center;gap:10px}.tfs-nexus .nx3d-right-hud i{display:block;width:5px;height:5px;border-radius:50%;background:#aadd8b;box-shadow:0 0 12px #bfe977}
.tfs-nexus .nx3d-progress{z-index:7;position:absolute;left:3%;top:33%;height:38%;display:flex;align-items:center;gap:16px;pointer-events:none}.tfs-nexus .nx3d-progress-track{height:100%;width:2px;border-radius:6px;background:#b2cbd44d;overflow:hidden;position:relative}.tfs-nexus .nx3d-progress-track i{height:100%;width:100%;background:linear-gradient(180deg,#c7ef78,#48d3ec);display:block;transform-origin:top;box-shadow:0 0 12px #a5ecbf}.tfs-nexus .nx3d-progress small{writing-mode:vertical-rl;font-size:.54rem;letter-spacing:.23em;color:#bbdddc}.tfs-nexus .nx3d-progress b{font-size:1.1rem;color:#c9e579}
.tfs-nexus .nx3d-scroll-count{position:absolute;right:5%;top:20%;z-index:6;font-size:.69rem;color:#d6eeef;letter-spacing:.14em;font-weight:800}
.tfs-nexus .nx3d-screen-note{position:absolute;bottom:33px;left:6%;z-index:7;font-size:.58rem;letter-spacing:.09em;color:#9db5bf;max-width:75%;text-shadow:0 2px 6px #000}
/* Six user-supplied results in spatial cards, with animated numeric counters. */
.tfs-nexus .nx3d-proof-section{position:relative;padding:clamp(110px,12vw,190px) 0;background:radial-gradient(circle at 52% 47%,#10435b 0%,#071827 45%,#030a14 90%);overflow:hidden;isolation:isolate}
.tfs-nexus .nx3d-proof-section:before{content:'';position:absolute;inset:-50% -40%;z-index:-1;background:repeating-radial-gradient(ellipse at center,#1b91ac26 0 1px,transparent 2px 95px);transform:perspective(950px) rotateX(65deg);animation:nx3dSkyDrift 36s linear infinite alternate}
.tfs-nexus .nx3d-proof-kicker{font-size:.72rem;letter-spacing:.2em;font-weight:750;color:#c6e584;margin:0 0 14px}.tfs-nexus .nx3d-proof-section h2{font-size:clamp(3.1rem,6.2vw,6.6rem);letter-spacing:-.068em;line-height:1.05;max-width:1020px;margin:0 0 58px;color:#fcfdfb}.tfs-nexus .nx3d-proof-section h2 em{font-style:normal;color:#c8e67d}
.tfs-nexus .nx3d-proof-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;perspective:1400px}
.tfs-nexus .nx3d-proof-card{position:relative;isolation:isolate;min-height:234px;border:1px solid #5ca3ba80;border-radius:16px;padding:32px;overflow:hidden;display:flex;flex-direction:column;justify-content:end;background:linear-gradient(140deg,#17415a8a,#071828dc);box-shadow:0 24px 80px #0005;transform-style:preserve-3d;transform:translate3d(0,35px,-70px) rotateY(-5deg);opacity:.46;transition:transform .9s cubic-bezier(.15,.8,.21,1),opacity .8s,border-color .4s}
.tfs-nexus .nx3d-proof-card.nx3d-shown{transform:translate3d(0,0,0) rotateY(0);opacity:1}
.tfs-nexus .nx3d-proof-card:nth-child(2),.tfs-nexus .nx3d-proof-card:nth-child(5){background:linear-gradient(150deg,#294b508a,#101b26d9);transform:translate3d(0,35px,-95px) rotateY(4deg)}
.tfs-nexus .nx3d-proof-card.nx3d-shown:nth-child(2),.tfs-nexus .nx3d-proof-card.nx3d-shown:nth-child(5){transform:none}
.tfs-nexus .nx3d-proof-card:hover{border-color:#cbe98b;transform:translate3d(0,-9px,50px) rotateX(3deg)!important}
.tfs-nexus .nx3d-proof-orbit{position:absolute;right:-90px;top:-120px;width:300px;height:300px;border:1px solid #5de1dc77;border-radius:50%;transform:rotateX(62deg);box-shadow:0 0 0 32px #4aa9c610,0 0 0 86px #8dd9d009;animation:nx3dOrbit 16s linear infinite;z-index:-1}
.tfs-nexus .nx3d-proof-number{font-size:clamp(3.0rem,5.5vw,5.6rem);line-height:1.02;font-weight:860;letter-spacing:-.075em;color:#dfed9d;text-shadow:0 0 28px #b5ef7430}
.tfs-nexus .nx3d-proof-label{font-size:1.03rem;line-height:1.45;color:#e3eff0;margin-top:18px;font-weight:580}
@keyframes nx3dSkyDrift{to{transform:translate3d(-35px,9px,-200px) rotate(3deg)}}@keyframes nx3dFallback{to{transform:scale(1.12) translateX(-3%)}}@keyframes nx3dLed{50%{opacity:.5;box-shadow:0 0 3px #b8ef6d30}}@keyframes nx3dOrbit{to{transform:rotateX(62deg) rotateZ(360deg)}}
@media(max-width:1000px){.tfs-nexus .nx3d-panel{left:7%;width:min(530px,70%)}.tfs-nexus .nx3d-right-hud{right:3%;bottom:12%;padding:14px;font-size:.59rem}.tfs-nexus .nx3d-vignette{background:linear-gradient(90deg,#020915ed,#020c1ba7 51%,transparent 93%),linear-gradient(0deg,#020a15d9,transparent 28%)}}
@media(max-width:700px){.tfs-nexus .nx3d-journey{height:330vh;min-height:1800px}.tfs-nexus .nx3d-sticky{min-height:550px}.tfs-nexus .nx3d-panel{top:48%;left:8%;width:85%;transform:translate3d(-8px,-35%,0);text-shadow:0 4px 17px #000}.tfs-nexus .nx3d-panel.nx3d-active{transform:translate3d(0,-50%,0)}.tfs-nexus .nx3d-panel h1,.tfs-nexus .nx3d-panel h2{font-size:clamp(2.65rem,10vw,4.2rem);margin-bottom:16px}.tfs-nexus .nx3d-panel>p:not(.nx3d-eyebrow){font-size:.93rem;max-width:360px}.tfs-nexus .nx3d-eyebrow{font-size:.60rem;letter-spacing:.12em;margin-bottom:13px}.tfs-nexus .nx3d-vignette{background:linear-gradient(90deg,#010814e8,#010914c9 70%,#01091466),linear-gradient(0deg,#020915b8,transparent 45%)}.tfs-nexus .nx3d-readout{top:105px;right:7%;font-size:.48rem;gap:7px}.tfs-nexus .nx3d-readout b{display:none}.tfs-nexus .nx3d-right-hud{display:none}.tfs-nexus .nx3d-screen-note{font-size:.47rem;bottom:27px;max-width:83%;left:8%}.tfs-nexus .nx3d-progress{left:2%;height:29%;top:39%;gap:7px}.tfs-nexus .nx3d-progress small{display:none}.tfs-nexus .nx3d-scroll-count{top:16%;right:7%;font-size:.57rem}.tfs-nexus .nx3d-actions{gap:9px}.tfs-nexus .nx3d-action-primary,.tfs-nexus .nx3d-action-ghost{font-size:.77rem;padding:11px 15px;gap:9px}.tfs-nexus .nx3d-proof-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tfs-nexus .nx3d-proof-card{min-height:166px;padding:20px 14px}.tfs-nexus .nx3d-proof-number{font-size:clamp(2.15rem,7.4vw,3.2rem)}.tfs-nexus .nx3d-proof-label{font-size:.82rem}.tfs-nexus .nx3d-proof-section h2{font-size:clamp(2.6rem,10vw,4.8rem)}}
@media(prefers-reduced-motion:reduce){.tfs-nexus .nx3d-panel{transition:none}.tfs-nexus .nx3d-proof-card{transform:none!important;opacity:1}.tfs-nexus .nx3d-sky,.tfs-nexus .nx3d-proof-orbit{animation:none}.tfs-nexus .nx3d-journey{height:200vh}}
/* WebGL-denied browser fallback: actual CSS3D models, perspective architecture,
   auto-flying surveillance craft and roaming spotlights — never just a flat photo. */
.tfs-nexus .nx3d-css-world{position:absolute;inset:0;z-index:2;overflow:hidden;pointer-events:none;perspective:1050px;transform-style:preserve-3d;opacity:1}
.tfs-nexus .nx3d-has-webgl .nx3d-css-world{opacity:0;visibility:hidden}
.tfs-nexus .nx3d-no-webgl .nx3d-fallback-photo{opacity:.08}
.tfs-nexus .nx3d-css-horizon{position:absolute;inset:0;background:radial-gradient(ellipse at 66% 63%,#1685ac44,transparent 40%),radial-gradient(ellipse at 75% 85%,#1ac4cb20,transparent 52%)}
.tfs-nexus .nx3d-css-floor{position:absolute;width:120%;height:90%;left:22%;top:58%;transform:perspective(700px) rotateX(69deg) scale(1.4) translateY(calc(var(--nx3d-scroll, 0) * -10vh));background:repeating-linear-gradient(90deg,transparent 0 90px,#2cbacf48 91px 92px,transparent 93px 180px),repeating-linear-gradient(0deg,transparent 0 84px,#3598c347 85px 86px,transparent 87px 168px),radial-gradient(ellipse at center,#1d5660,#041529 77%);box-shadow:0 0 180px #0ca8af24;mask-image:linear-gradient(180deg,transparent 0%,black 17%,black 60%,transparent 100%);animation:nx3dFloorMotion 18s linear infinite}
.tfs-nexus .nx3d-css-hq{position:absolute;left:57%;top:34%;width:33%;height:28%;transform-style:preserve-3d;transform:translate3d(calc(var(--nx3d-scroll,0) * -8vw),calc(var(--nx3d-scroll,0) * 3vh),calc(var(--nx3d-scroll,0) * 220px)) rotateX(3deg) rotateY(-24deg);filter:drop-shadow(0 38px 34px #000a)}
.tfs-nexus .nx3d-css-building-face{position:absolute;inset:0;border:2px solid #6ee0e99f;background:repeating-linear-gradient(90deg,transparent 0 10%,#4b9dbd94 10.3% 10.6%,transparent 11% 20%),repeating-linear-gradient(0deg,transparent 0 20%,#6bd2e58a 21% 22%,transparent 22% 40%),radial-gradient(ellipse at 55% 67%,#59788d,#081b33 80%);box-shadow:inset 0 0 80px #40d7e11f,0 0 32px #4de6ef39;transform:translateZ(20px)}
.tfs-nexus .nx3d-css-building-face:before{content:'';position:absolute;inset:10%;background:repeating-linear-gradient(90deg,transparent 0 4%,#adccba54 5% 7%,transparent 8% 17%),repeating-linear-gradient(0deg,#0b28467a 0 12%,#d3ba6a40 13% 14%,transparent 15% 24%);mix-blend-mode:screen}
.tfs-nexus .nx3d-css-building-side{position:absolute;right:-11%;top:2%;width:11%;height:100%;background:repeating-linear-gradient(0deg,#10293f 0 23%,#4e8293 24% 25%);border:2px solid #6ac0d1aa;transform-origin:left;transform:rotateY(78deg) translateZ(8px)}
.tfs-nexus .nx3d-css-building-roof{position:absolute;left:0;top:-16%;width:100%;height:17%;background:linear-gradient(#293e53,#132b49);border:1px solid #7fd8e2bb;transform-origin:bottom;transform:rotateX(80deg)}
.tfs-nexus .nx3d-css-building-entrance{position:absolute;left:35%;width:24%;height:43%;bottom:0;border:2px solid #c7e881bb;background:linear-gradient(90deg,#091d30,#1d495f,#091f39);transform:translateZ(35px);box-shadow:0 0 40px #9fe4a64b}
.tfs-nexus .nx3d-css-building-cap{position:absolute;left:20%;top:-8%;width:23%;height:8%;background:#446a70;border:1px solid #adedea;transform:translateZ(27px)}
.tfs-nexus .nx3d-css-tower{position:absolute;left:71%;top:13%;width:130px;height:66%;transform:translate3d(calc(var(--nx3d-scroll,0)*-20vw),0,calc(var(--nx3d-scroll,0)*130px));transform-style:preserve-3d;filter:drop-shadow(0 20px 17px #000c)}
.tfs-nexus .nx3d-css-pole{position:absolute;left:45%;top:17%;height:89%;width:13px;border:1px solid #b4e4e9;background:linear-gradient(90deg,#2c3a47,#8ba3a5,#172833);box-shadow:0 0 22px #50d9e62b}
.tfs-nexus .nx3d-css-camera{position:absolute;left:8%;top:14%;width:120px;height:47px;background:linear-gradient(155deg,#e7f1f2,#91a4aa 40%,#3c5364 80%);transform:perspective(500px) rotateY(-25deg) rotateZ(-4deg);border-radius:8px 14px 6px 6px;border:1px solid #fff;box-shadow:16px 11px 15px #0008}
.tfs-nexus .nx3d-css-camera:before{content:'';position:absolute;width:40px;height:37px;left:-17px;top:4px;background:radial-gradient(circle at center,#42cce4 0 13%,#07111b 15% 29%,#1b2e38 31% 52%,#8698a2 54% 78%);border-radius:50%;box-shadow:0 0 12px #64d9e9aa}
.tfs-nexus .nx3d-css-camera:after{content:'';position:absolute;width:105px;height:7px;left:-8px;bottom:-13px;background:#7497a2;border-radius:4px;transform:rotateZ(4deg)}
.tfs-nexus .nx3d-css-city-globe{position:absolute;left:43%;top:3%;width:69vw;height:75vw;max-height:970px;border:1px solid #3fe2ed60;border-radius:50%;transform:rotateX(65deg) rotateZ(-12deg);box-shadow:0 0 0 22px #1a9ab20b,0 0 0 80px #0ec7dd0a,0 0 60px #4ddeed43;animation:nx3dGlobeRotate 24s linear infinite}
.tfs-nexus .nx3d-css-city-globe span{position:absolute;border:1px solid #45b5d067;border-radius:50%;inset:8%}
.tfs-nexus .nx3d-css-city-globe span:nth-child(2){inset:22%;border-color:#c3e48488}.tfs-nexus .nx3d-css-city-globe span:nth-child(3){inset:37%;border-color:#6bcce098}.tfs-nexus .nx3d-css-city-globe span:nth-child(4){inset:-12%;border-style:dashed;opacity:.5}
.tfs-nexus .nx3d-css-aircraft{position:absolute;width:100px;height:66px;left:47%;top:16%;z-index:4;transform-style:preserve-3d;transform:translate3d(calc(var(--nx3d-scroll,0) * 18vw),0,180px);animation:nx3dAircraftTraverse 15s ease-in-out infinite alternate;filter:drop-shadow(0 0 19px #3de2e566)}
.tfs-nexus .nx3d-css-aircraft i{position:absolute;display:block;transform-style:preserve-3d}
.tfs-nexus .nx3d-css-wing-x{width:100px;height:12px;background:linear-gradient(90deg,#426581,#d9edf1,#3d7e92);left:0;top:27px;border-radius:5px;transform:rotateX(25deg)}.tfs-nexus .nx3d-css-wing-z{width:16px;height:65px;background:linear-gradient(#47698c,#d4e7e9,#496b8e);left:42px;top:0;border-radius:5px;transform:rotateY(50deg)}
.tfs-nexus .nx3d-css-rotor{width:30px;height:30px;border:3px solid #b7dded8e;border-radius:50%;border-top-color:#c8f279;box-shadow:0 0 12px #b5e87462;animation:nx3dRotorSpin .24s linear infinite}.tfs-nexus .nx3d-css-rotor.r1{left:-7px;top:17px}.tfs-nexus .nx3d-css-rotor.r2{right:-7px;top:17px}.tfs-nexus .nx3d-css-rotor.r3{left:32px;top:-9px}.tfs-nexus .nx3d-css-rotor.r4{left:32px;bottom:-9px}
.tfs-nexus .nx3d-css-nose{left:39px;top:19px;width:24px;height:25px;background:radial-gradient(circle,#55dfeb 0 16%,#071522 18% 52%,#99b2ba 55%);border-radius:50%;box-shadow:0 0 22px #50d5ff}
.tfs-nexus .nx3d-css-spotlight{position:absolute;left:51%;top:23%;width:220px;height:390px;background:linear-gradient(180deg,#b4f0c57d,#84ddb21b 70%,transparent 100%);clip-path:polygon(48% 0%,52% 0%,100% 100%,0% 100%);transform-origin:50% 0%;mix-blend-mode:screen;filter:blur(4px);animation:nx3dSweep 8s ease-in-out infinite alternate;opacity:.68}
.tfs-nexus .nx3d-css-spotlight.tower{left:75%;top:21%;height:250px;width:160px;background:linear-gradient(#8ddfff65,transparent 95%);animation-duration:11s;animation-direction:alternate-reverse}
.tfs-nexus .nx3d-css-vehicle{position:absolute;right:9%;bottom:22%;width:175px;height:64px;background:linear-gradient(90deg,#dcebe9,#a9bcc1);border:3px solid #617f8d;border-radius:26px 25px 11px 11px;transform:perspective(500px) rotateY(-30deg) rotateX(9deg);box-shadow:0 23px 10px #0009,0 0 30px #bce1e441;animation:nx3dVehicleIdle 5s ease-in-out infinite alternate}
.tfs-nexus .nx3d-css-vehicle:before,.tfs-nexus .nx3d-css-vehicle:after{content:'';position:absolute;bottom:-13px;width:34px;height:26px;background:radial-gradient(circle,#748d9a 0 28%,#13212b 30% 72%,#06131a 75%);border-radius:50%}.tfs-nexus .nx3d-css-vehicle:before{left:23px}.tfs-nexus .nx3d-css-vehicle:after{right:21px}.tfs-nexus .nx3d-css-vehicle div{position:absolute;inset:13px 24px auto auto;width:48px;height:20px;background:#294458;border:2px solid #80acbe;border-radius:4px}
.tfs-nexus .nx3d-css-scanner{position:absolute;left:70%;top:66%;width:160px;height:160px;border-radius:50%;border:2px solid #6adeeab3;transform:rotateX(65deg);box-shadow:0 0 0 22px #51a8ca16,0 0 20px #64d5ea}.tfs-nexus .nx3d-css-scanner:before,.tfs-nexus .nx3d-css-scanner:after{content:'';position:absolute;inset:18%;border:1px solid #cce988ae;border-radius:50%}.tfs-nexus .nx3d-css-scanner b{position:absolute;left:50%;top:50%;width:50%;height:2px;background:#c5fa9e;transform-origin:left;animation:nx3dRadarSweep 3s linear infinite;box-shadow:0 0 10px #9be0be}
@keyframes nx3dFloorMotion{to{background-position:15px 180px,-160px 20px}}@keyframes nx3dGlobeRotate{to{transform:rotateX(65deg) rotateZ(348deg)}}@keyframes nx3dRotorSpin{to{transform:rotate(360deg)}}@keyframes nx3dAircraftTraverse{0%{transform:translate3d(-150px,35px,120px) rotate(-10deg)}100%{transform:translate3d(110px,-70px,180px) rotate(9deg)}}@keyframes nx3dSweep{to{transform:rotateZ(-40deg) scaleX(.8)}}@keyframes nx3dVehicleIdle{to{transform:perspective(500px) rotateY(-30deg) rotateX(9deg) translateY(-5px)}}@keyframes nx3dRadarSweep{to{transform:rotate(360deg)}}
@media(max-width:700px){.tfs-nexus .nx3d-css-world{transform:scale(1.25) translateX(5%);transform-origin:center}.tfs-nexus .nx3d-css-hq{left:47%;top:40%;width:55%;height:20%}.tfs-nexus .nx3d-css-aircraft{left:58%;top:19%}.tfs-nexus .nx3d-css-tower{left:82%}.tfs-nexus .nx3d-css-vehicle{right:-3%;bottom:30%;transform:scale(.6)}.tfs-nexus .nx3d-css-spotlight{left:62%}}
@media(prefers-reduced-motion:reduce){.tfs-nexus .nx3d-css-world *{animation:none!important}}
/* Correct sticky-camera containment: the older theme had overflow:hidden on main,
   which silently prevented sticky positioning and created blank scroll chapters. */
.tfs-nexus{overflow:clip!important}
.tfs-nexus .nx3d-panel{left:6%!important}
.tfs-nexus .nx3d-progress{left:1.2%!important}
@media(max-width:700px){.tfs-nexus .nx3d-panel{left:8%!important}.tfs-nexus .nx3d-progress{left:1%!important}}

/* Bottom horizontal journey meter: avoids crossing the large headline. */
.tfs-nexus .nx3d-progress{left:6%!important;top:auto!important;bottom:8%!important;height:auto!important;width:330px;max-width:65%;display:flex;align-items:center;gap:13px}
.tfs-nexus .nx3d-progress-track{height:2px!important;width:140px!important;flex:0 0 140px}
.tfs-nexus .nx3d-progress-track i{transform-origin:left!important}
.tfs-nexus .nx3d-progress small{writing-mode:horizontal-tb!important;letter-spacing:.10em!important;white-space:nowrap}
.tfs-nexus .nx3d-screen-note{bottom:22px!important}
@media(max-width:700px){.tfs-nexus .nx3d-progress{left:8%!important;bottom:11%!important}.tfs-nexus .nx3d-progress-track{width:86px!important;flex-basis:86px}.tfs-nexus .nx3d-progress small{display:inline-block!important;font-size:.43rem!important}}
/* Headings remain sharp and flat while the rendered environment moves in 3D. */
.tfs-nexus .nx3d-panel{transform:translate3d(-12px,-45%,0) rotateY(3deg)!important}
.tfs-nexus .nx3d-panel.nx3d-active{transform:translate3d(0,-50%,0)!important}
