html { scrollbar-gutter:stable; }
.signal-preloader { position:fixed; inset:0; z-index:20000; background:transparent; overflow:hidden; isolation:isolate; pointer-events:none; }
.signal-preloader[hidden] { display:none!important; }
.signal-stage-background { position:absolute; opacity:0; }
body.brand-loading .hero-atmosphere, body.signal-handoff .hero-atmosphere { animation-play-state:paused!important; }
.signal-design-grid { position:absolute; inset:0; opacity:0; background:linear-gradient(90deg,transparent calc(25% - 1px),#7297bc14 25%,transparent calc(25% + 1px),transparent calc(75% - 1px),#7297bc14 75%,transparent calc(75% + 1px)),linear-gradient(0deg,transparent calc(50% - 1px),#7297bc14 50%,transparent calc(50% + 1px)); mask-image:radial-gradient(ellipse,#000,transparent 75%); }
.signal-origin { position:absolute; left:50%; top:50%; width:100px; aspect-ratio:1092.1/940.2; transform:translate(-50%,-50%); }
.signal-origin svg { width:100%; height:100%; overflow:visible; }
.signal-n-trace { stroke:#70b7ff; stroke-width:12; stroke-linejoin:bevel; stroke-linecap:round; stroke-dasharray:1; stroke-dashoffset:1; filter:drop-shadow(0 0 7px #267cff); }
.signal-n-fill { opacity:0; }
.signal-constructed-word { position:absolute; opacity:0; transform-origin:center; will-change:transform,opacity; }
.signal-constructed-word img { width:100%; height:100%; display:block; }
.signal-wire { position:absolute; height:1px; background:linear-gradient(90deg,#418de4,#b0d9ff66,transparent); transform:scaleX(0); transform-origin:left; opacity:0; }
.signal-wire-nav { top:80px; left:4%; width:92%; }
.signal-wire-copy { bottom:80px; left:4%; width:42%; }
body.brand-loading>.nav-shell,body.brand-loading>footer,body.brand-loading .hero-topline,body.brand-loading .hero-bottom,body.brand-loading .hero-mobile-message,body.brand-loading .hero-wordmark { opacity:0!important; visibility:hidden; }
.hero { background:#03070d!important; }
.hero::after { display:none!important; }
.hero-signal-field { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; opacity:1; }
.hero-visual { position:absolute; inset:0; overflow:hidden; pointer-events:none; perspective:1100px; }
body.brand-loading .hero-visual { opacity:0; }
.hero-prism-motion { position:absolute; inset:-8%; background:url('/assets/hero-flowing-glass-generated-v1.jpg') 50% 50%/cover no-repeat; opacity:.72; transform-origin:50% 50%; animation:hero-prism-turn 26s ease-in-out infinite alternate; will-change:transform; mask-image:radial-gradient(ellipse at center,#000 28%,transparent 76%); }
.hero-visual .hero-signal-field { opacity:1; }
@keyframes hero-prism-turn { from { transform:rotateY(-7deg) rotateZ(-1.8deg) scale(1.06); } to { transform:rotateY(7deg) rotateZ(1.8deg) scale(1.1); } }
@media(prefers-reduced-motion:reduce) { .hero .hero-prism-motion { animation:hero-prism-turn 48s ease-in-out infinite alternate!important; } }
.signal-preloader.is-leaving { pointer-events:none; }
body.signal-handoff>.nav-shell,body.signal-handoff>main,body.signal-handoff>footer { visibility:visible; }
.signal-preloader-clone { pointer-events:none!important; }
@media(max-width:600px) { .signal-origin { width:76px; } .signal-wire-nav { top:68px; } .signal-wire-copy { bottom:45px; } }
