/* Brand signal layer: the submitted mark becomes the origin of the sensing field. */
.logo-mark{position:relative;flex:0 0 31px;width:31px;height:31px;overflow:hidden;border:1px solid #7bf0e6b0;border-radius:50%;display:block;background:#fff url("./assets/logo-reference.jpg") 50% 35%/410% auto no-repeat;box-shadow:0 0 0 4px #57e2d311,0 0 28px #5bddd66e}.logo-mark:after{content:"";position:absolute;inset:-40%;background:linear-gradient(110deg,transparent 43%,#fff 50%,transparent 57%);transform:translateX(-100%) rotate(15deg);animation:logo-glint 5.4s ease-in-out infinite}.wordmark i{display:none}.hero-visual{--tilt-x:0deg;--tilt-y:0deg}.signal-engine{position:absolute;inset:-55px -75px -38px -105px;z-index:0;overflow:hidden;pointer-events:none;transform:perspective(780px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y));transition:transform .3s ease}.scan-grid{position:absolute;left:22px;right:5px;bottom:-103px;height:340px;opacity:.32;background:linear-gradient(#51d8d214 1px,transparent 1px),linear-gradient(90deg,#51d8d214 1px,transparent 1px);background-size:25px 25px;mask-image:linear-gradient(to bottom,transparent,#000 31%,transparent 94%);transform:perspective(360px) rotateX(62deg) rotateZ(-12deg);animation:grid-drift 14s linear infinite}.radar-wave{position:absolute;left:52%;top:45%;width:110px;height:110px;border:1px solid #78f6ec8f;border-radius:50%;transform:translate(-50%,-50%) scale(.25);opacity:0;animation:radar-wave 5.6s cubic-bezier(.17,.57,.44,.97) infinite}.radar-wave-two{animation-delay:1.85s;border-color:#81bbff86}.radar-wave-three{animation-delay:3.7s;border-color:#87f1c983}.orbit{position:absolute;left:52%;top:45%;border:1px solid #79e7e83d;border-radius:50%;transform:translate(-50%,-50%) rotate(-25deg);animation:orbit-turn 11s linear infinite}.orbit i{position:absolute;width:7px;height:7px;border-radius:50%;background:#c1fffb;box-shadow:0 0 15px #55eee3}.orbit-one{width:315px;height:127px}.orbit-one i{right:25px;top:2px}.orbit-two{width:420px;height:184px;border-color:#789ffa32;animation-duration:16s;animation-direction:reverse}.orbit-two i{left:38px;bottom:7px;background:#a9c8ff;box-shadow:0 0 15px #87a7ff}.logo-reactor{position:absolute;left:52%;top:45%;width:112px;height:112px;border-radius:50%;transform:translate(-50%,-50%);display:grid;place-items:center;background:radial-gradient(circle,#b7fffab9 0 6%,#2c8997aa 27%,#0b2639b5 58%,transparent 70%);box-shadow:0 0 45px #4ae2d278;animation:reactor-breathe 4.8s ease-in-out infinite}.logo-mark-hero{width:72px;height:72px;flex-basis:72px;background-size:410% auto;box-shadow:0 0 0 5px #51e8dc1f,0 0 26px #54e7db91;z-index:2}.reactor-glow{position:absolute;inset:-16px;border:1px solid #79f4e742;border-radius:50%;animation:reactor-spin 6s linear infinite}.reactor-glow:after{content:"";position:absolute;inset:11px;border:1px dashed #95d6ff80;border-radius:50%}.signal-sweep{position:absolute;left:5%;top:2%;width:66%;height:88%;background:conic-gradient(from 234deg at 72% 50%,transparent 0 25deg,#80fff12a 39deg,transparent 74deg);filter:blur(3px);mix-blend-mode:screen;animation:sweep 5s linear infinite}.phone-frame{z-index:1;transform:perspective(900px) rotateX(calc(var(--tilt-x) * -.45)) rotateY(calc(var(--tilt-y) * .55));transition:transform .3s ease}.floating-note{z-index:2}@keyframes logo-glint{10%,64%{transform:translateX(-100%) rotate(15deg)}30%,100%{transform:translateX(100%) rotate(15deg)}}@keyframes radar-wave{0%{opacity:0;transform:translate(-50%,-50%) scale(.25)}12%{opacity:.78}82%{opacity:0}100%{opacity:0;transform:translate(-50%,-50%) scale(4.8)}}@keyframes orbit-turn{to{transform:translate(-50%,-50%) rotate(335deg)}}@keyframes reactor-breathe{50%{filter:brightness(1.25);transform:translate(-50%,-50%) scale(1.08)}}@keyframes reactor-spin{to{transform:rotate(360deg)}}@keyframes sweep{to{transform:rotate(360deg)}}@keyframes grid-drift{to{background-position:0 150px,150px 0}}@media(max-width:850px){.signal-engine{inset:-40px -52px -35px -70px}}@media(max-width:430px){.logo-mark{width:25px;height:25px;flex-basis:25px}}@media(prefers-reduced-motion:reduce){.logo-mark:after{display:none}}
