/* DEVLOG / Motion Edition: additional visual language, non-invasive to data layers. */
:root { --motion-cyan:#05c7ff; --motion-purple:#a168ff; --motion-white:#eaf4ff; }
body { overflow-x:clip; }
body::after {content:"";position:fixed;inset:0;pointer-events:none;z-index:1;background:radial-gradient(420px circle at var(--cursor-x,50%) var(--cursor-y,50%),rgba(38,96,255,.052),transparent 75%);mix-blend-mode:screen;}
.ambient-canvas{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:.78;}
.site{position:relative;z-index:2}
.topbar{z-index:8;isolation:isolate;}
.topbar::after{content:"";position:absolute;left:0;bottom:-1px;width:30%;height:1px;background:linear-gradient(90deg,transparent,#16d6ff,rgba(160,91,255,.8),transparent);animation:header-sweep 13s ease-in-out infinite alternate;pointer-events:none}
.identity{gap:13px;transition:filter .4s ease;}.identity:hover{filter:brightness(1.24)}
.brand-emblem{width:65px;height:65px;flex:0 0 65px;position:relative;display:grid;place-items:center;isolation:isolate;}
.brand-emblem img{width:49px;height:49px;object-fit:contain;position:relative;z-index:2;transition:transform .6s cubic-bezier(.15,.9,.22,1.1),filter .5s;}
.identity:hover .brand-emblem img{transform:scale(1.12) rotate(-5deg);filter:drop-shadow(0 0 18px #6ba6ffb5)}
.brand-emblem::before{content:"";position:absolute;inset:6px;border:1px solid #2998f735;border-radius:50%;animation:brand-breathe 4.7s ease-in-out infinite;}
.brand-arc{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 10deg,transparent 0deg,transparent 43deg,#5af1ff 48deg,transparent 57deg,transparent 170deg,#b56eff 179deg,transparent 187deg,transparent 300deg,rgba(95,206,255,.7) 308deg,transparent 318deg);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 2.5px),#000 calc(100% - 2px));mask:radial-gradient(farthest-side,transparent calc(100% - 2.5px),#000 calc(100% - 2px));animation:brand-scan 5.6s linear infinite;filter:drop-shadow(0 0 10px #1cbbff);}
.brand-satellite{position:absolute;width:6px;height:2px;border-radius:5px;background:#66ecff;top:0;left:calc(50% - 3px);box-shadow:0 0 7px 2px #05c7ff;animation:brand-orbit 5.6s linear infinite;transform-origin:3px 32.5px;}
.nav-links a{position:relative;transition:color .3s,transform .3s,text-shadow .3s;}
.nav-links a::after{content:"";height:1px;position:absolute;left:0;bottom:-9px;width:100%;background:linear-gradient(90deg,#05c7ff,#995cff);transform:scaleX(0);transform-origin:left;transition:transform .42s cubic-bezier(.2,.8,.2,1);box-shadow:0 0 12px #59caff;}
.nav-links a:hover,.nav-links a.nav-current{color:#d6f7ff;text-shadow:0 0 13px #459fff88;transform:translateY(-2px)}
.nav-links a:hover::after,.nav-links a.nav-current::after{transform:scaleX(1)}
.status-beacon{animation:beacon 2.4s ease-in-out infinite, beacon-shift 9s linear infinite;}
.hero-copy-area{animation:hero-enter .9s both;}
.hero h1{filter:drop-shadow(0 15px 35px rgba(0,0,0,.1));}
.hero .gradient-text{background-size:240% 240%;animation:gradient-drift 8s ease-in-out infinite alternate;}
.hero h1 .period{display:inline-block;animation:cursor-blink 1.3s steps(2,end) infinite;}
.hero-sub{animation:hero-enter 1s .2s both;}
.eyebrow-line,.lit-line{position:relative;overflow:visible}
.eyebrow-line::after,.lit-line::after{content:"";position:absolute;inset:-3px;background:#4bddff;border-radius:50%;width:5px;height:5px;box-shadow:0 0 10px #08c8ff;animation:line-shuttle 2.6s ease-in-out infinite alternate;}
.search-form{position:relative;isolation:isolate;animation:hero-enter .95s .32s both;transition:box-shadow .4s,border-color .35s,transform .35s;}
.search-form:focus-within{transform:translateY(-3px);box-shadow:0 0 0 1px #34cbff77,0 14px 70px #0667ff33,0 0 70px #984dff19;}
.search-form::after{content:"";position:absolute;inset:-1px;z-index:-1;border-radius:inherit;background:linear-gradient(110deg,transparent 20%,rgba(92,238,255,.22) 36%,rgba(166,93,255,.26) 50%,transparent 66%);background-size:300% 100%;animation:search-outline 8s linear infinite;pointer-events:none;}
.search-icon svg{transition:transform .35s,stroke .35s;}
.search-form:focus-within .search-icon svg{transform:rotate(-12deg) scale(1.15);stroke:#62e2ff;}
.search-form .submit-btn{position:relative;overflow:hidden;transition:transform .25s,filter .25s,box-shadow .3s;}
.submit-btn::before,.primary-link::before,.method-cta::before{content:"";position:absolute;inset:-35% auto -35% -65%;width:30%;transform:skewX(-24deg);background:linear-gradient(90deg,transparent,#ffffff77,transparent);animation:button-sheen 6.7s ease-in-out infinite;pointer-events:none;}
.submit-btn:hover,.primary-link:hover,.method-cta:hover{filter:brightness(1.15);box-shadow:0 0 29px #386dff55;transform:translateY(-2px);}
.submit-btn span{display:inline-block;transition:transform .3s}.submit-btn:hover span{transform:translate(3px,-3px) rotate(9deg)}
.paste-btn:hover{color:#e7fbff;text-shadow:0 0 15px #05c7ff;}
.search-foot{animation:hero-enter .8s .45s both;}
.search-foot .dot{animation:indicator-glow 3s ease-in-out infinite;}
.search-foot span:nth-child(2) .dot{animation-delay:.7s}.search-foot span:nth-child(3) .dot{animation-delay:1.4s}
.hero-art{animation:hero-enter 1.15s .25s both;}
.hero-art::after{content:"";position:absolute;inset:10%;border-radius:50%;border:1px dashed rgba(99,171,255,.12);animation:brand-scan 65s linear infinite;pointer-events:none}
.hero-core{animation:float 6.7s ease-in-out infinite,core-hue 10s ease-in-out infinite alternate}
.hero-core img{filter:drop-shadow(0 0 18px #5ccfff40)}
.hero-reticle{position:absolute;inset:23%;border:1px solid #1b8df233;border-radius:50%;animation:reticle-spin 19s linear infinite;z-index:1;pointer-events:none}
.hero-reticle:after,.hero-reticle:before{content:"";position:absolute;left:50%;top:-4px;width:28px;height:7px;border-radius:100%;background:#5de5ff;box-shadow:0 0 12px #1ff3ff,0 0 35px #00aaff}
.hero-reticle:after{left:auto;top:auto;right:20%;bottom:-2px;width:8px;height:8px;background:#ab65ff;box-shadow:0 0 15px #a768ff}
.hero-laser{position:absolute;width:80%;height:1px;top:50%;left:10%;z-index:4;transform:rotate(-16deg);background:linear-gradient(90deg,transparent,rgba(0,199,255,.16),rgba(156,89,255,.65),transparent);filter:drop-shadow(0 0 7px #a465ff);animation:laser-sweep 9s ease-in-out infinite;pointer-events:none;}
.hero-spark-field{position:absolute;inset:12%;z-index:0;border-radius:50%;background-image:radial-gradient(#7ccfffcc 1px,transparent 2px),radial-gradient(#a687ff99 1px,transparent 2px);background-size:79px 91px,127px 139px;background-position:13px 27px,27px 17px;opacity:.3;animation:star-drift 20s linear infinite;mask-image:radial-gradient(circle,#000 12%,transparent 78%)}
.hero-afterline{display:flex;align-items:center;gap:14px;padding:14px 20px;margin:0 auto 35px;width:100%;border-top:1px solid #273c5a;border-bottom:1px solid #273c5a;color:#8ba2c8;font:10px var(--mono);letter-spacing:.07em;position:relative;overflow:hidden;animation:hero-enter .7s .7s both;}
.hero-afterline::before{content:"";position:absolute;left:-25%;top:0;width:18%;height:1px;background:linear-gradient(90deg,transparent,#6becff,transparent);animation:header-sweep 11s ease-in-out infinite alternate}
.hero-afterline i{height:1px;background:linear-gradient(90deg,#143857,#527ad1,#8f6be9);flex:1;max-width:160px;position:relative}
.hero-afterline i:after{content:"";position:absolute;right:-2px;top:-2px;width:5px;height:5px;background:#63d6ff;box-shadow:0 0 10px #31ccff;border-radius:50%;animation:indicator-glow 2.6s infinite}
.hero-afterline b{margin-left:auto;color:#ba91ff;font-size:18px;font-weight:400;animation:brand-breathe 3s infinite}
/* Real result elements stage in gracefully; no layout jank during API calls. */
.results{animation:result-materialize .7s cubic-bezier(.16,.8,.24,1) both;}
.result-header h2 .gradient-text,.history-heading .gradient-text{background-size:250% 100%;animation:gradient-drift 8s ease-in-out infinite alternate}
.glass-card{isolation:isolate;--pointer-x:50%;--pointer-y:20%;transition:border-color .35s,transform .45s cubic-bezier(.18,.72,.28,1),box-shadow .35s;}
.glass-card::after{content:"";position:absolute;inset:0;border-radius:inherit;z-index:0;pointer-events:none;background:radial-gradient(380px circle at var(--pointer-x) var(--pointer-y),rgba(46,137,255,.11),transparent 65%);opacity:0;transition:opacity .35s;}
.glass-card:hover::after{opacity:1}
.glass-card > * {position:relative;z-index:1;}
.glass-card:hover{transform:translateY(-4px);box-shadow:0 28px 86px #0009,0 0 34px #2861cc14;}
.card-led{animation:indicator-glow 2.5s ease-in-out infinite}
.card-topline{transition:color .3s}.glass-card:hover .card-topline{color:#d7e5ff}
.dev-avatar-wrap{transition:filter .4s,transform .5s;}
.dev-avatar-wrap::after{content:"";position:absolute;inset:-7px;border:1px solid #4be6ff6b;border-radius:inherit;pointer-events:none;opacity:.45;animation:avatar-frame 5s ease-in-out infinite}
.profile-card:hover .dev-avatar-wrap{transform:scale(1.035);filter:drop-shadow(0 0 17px #5b9bff66)}
.dev-avatar-wrap img,.coin-identity img,.history-row img{object-fit:cover;aspect-ratio:1;}
.coin-identity img{transition:transform .5s,filter .5s;}.coin-card:hover .coin-identity img{transform:scale(1.06) rotate(2deg);filter:drop-shadow(0 0 12px #3083ff60)}
.profile-metrics strong,.coin-metrics strong{display:inline-block;animation:metric-reveal .6s cubic-bezier(.2,.75,.2,1) both;}
.profile-actions a,.coin-actions a,.tiny-icon,.history-link,.new-search{position:relative;overflow:hidden;transition:transform .26s,box-shadow .3s,background .3s,border-color .3s}
.profile-actions a:hover,.coin-actions a:hover,.tiny-icon:hover,.history-link:hover,.new-search:hover{transform:translateY(-2px);box-shadow:0 6px 23px #3a6dff29}
.history-row{overflow:hidden;animation:history-pop .68s cubic-bezier(.16,.85,.3,1) both;transition:background .3s,transform .3s,border-color .3s}
.history-row::before{content:"";position:absolute;inset:0 auto 0 0;width:2px;background:linear-gradient(#00d9ff,#a46bff);transform:scaleY(0);transition:transform .25s;transform-origin:bottom;box-shadow:0 0 14px #2ccfff;}
.history-row:hover::before{transform:scaleY(1)}
.history-row:hover{transform:translateX(6px);background:#182b4a70;}
.history-row:hover img{transform:scale(1.06);box-shadow:0 0 20px #1563e055}
.history-row img{transition:transform .45s,box-shadow .35s}
.history-link{border-radius:10px}.history-link:hover{background:linear-gradient(135deg,#154c87,#663bad)}
.history-count{animation:indicator-glow 5s infinite}
.trace-visual{background:radial-gradient(ellipse at 15% 50%,#145da42a,transparent 57%),radial-gradient(ellipse at 85% 20%,#58277c1b,transparent 55%),linear-gradient(160deg,#080f20,#0b1224);}
.trace-visual::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(transparent 97%,#76b0ff0d 100%),linear-gradient(90deg,transparent 97%,#76b0ff0b 100%);background-size:28px 28px;mask-image:radial-gradient(ellipse at center,#0003,transparent 90%)}
.trace-sweep{position:absolute;inset:-10% 0 auto;height:44%;pointer-events:none;z-index:2;background:linear-gradient(180deg,transparent,rgba(4,195,255,.055),transparent);animation:trace-down 10s ease-in-out infinite}
.trace-visual svg{position:relative;z-index:1;overflow:visible}
.trace-visual .trace-edge{stroke-dasharray:1 9;stroke-linecap:round;animation:trace-flow 8s linear infinite;stroke-width:1.7;stroke-opacity:.8}
.trace-visual .trace-coin-node{animation:node-breathe 2.9s ease-in-out infinite;transform-origin:center;transform-box:fill-box}
.trace-visual .trace-small{font-family:Manrope,sans-serif;font-size:12px;font-weight:700;fill:#e2edff;}
.trace-node-card{cursor:pointer;outline:none;transition:filter .3s;}
.trace-node-card:hover,.trace-node-card:focus-visible{filter:brightness(1.35) drop-shadow(0 0 10px #24afff)}
.trace-node-card .node-back{transition:stroke .25s,fill .25s;}
.trace-node-card:hover .node-back{stroke:#64e3ff;fill:#18315a}
.trace-origin-pulse{animation:node-breathe 4s ease-in-out infinite;transform-box:fill-box;transform-origin:center}
.trace-particle{fill:#bfffff;filter:drop-shadow(0 0 3px #13cfff)}
.trace-visual .trace-edge-reveal{stroke-dasharray:var(--trace-length,500);stroke-dashoffset:var(--trace-length,500);animation:trace-write 1.4s cubic-bezier(.2,.8,.3,1) forwards;}
.trace-node-card{opacity:0;animation:history-pop .45s forwards;animation-delay:var(--node-delay,0ms)}
.closing{position:relative;overflow:hidden;}
.closing::before{content:"";position:absolute;inset:-80% auto -80% -25%;width:40%;transform:rotate(19deg);background:linear-gradient(90deg,transparent,#2178f511,transparent);animation:closing-shine 13s ease-in-out infinite;pointer-events:none}
.closing h2 span{background:linear-gradient(100deg,#39d6ff,#8b6aff,#e9b6ff,#39d6ff);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:gradient-drift 8s infinite alternate}
.footer-mark:hover{color:#79eaff;text-shadow:0 0 25px #29a7ff;}
/* Scan choreography: instrument panel with functional phases, no invented records. */
.scan-backdrop{background:rgba(2,4,13,.86);backdrop-filter:blur(22px);}
.scan-backdrop:not([hidden]){animation:overlay-in .35s both}
.scan-modal{width:min(700px,100%);padding:23px clamp(20px,4vw,36px) 34px;border-color:#367ab16b;border-radius:23px;background:linear-gradient(145deg,#111b34f8,#070d1cf8 70%);box-shadow:0 55px 165px #000d,0 0 140px #1359e826,0 0 35px #6630b928;animation:scan-modal-enter .46s cubic-bezier(.2,.85,.28,1) both;}
.scan-modal::after{content:"";position:absolute;pointer-events:none;inset:0;border-radius:inherit;background:radial-gradient(480px circle at 50% 25%,#247cff16,transparent 65%);}
.scan-modal>*{position:relative;z-index:2}
.scan-top{letter-spacing:.13em}
.scan-visual{width:100%;height:250px;position:relative;overflow:hidden;isolation:isolate;display:grid;place-items:center;margin:9px 0 0;background:radial-gradient(ellipse at center,#14336c35,transparent 64%);mask-image:linear-gradient(90deg,transparent 0,#000 10%,#000 90%,transparent 100%)}
.scan-matrix{position:absolute;inset:0;background:linear-gradient(#43a6ff13 1px,transparent 1px),linear-gradient(90deg,#43a6ff10 1px,transparent 1px);background-size:25px 25px;mask-image:radial-gradient(ellipse,#0005,transparent 75%);animation:matrix-pan 16s linear infinite;}
.scan-symbol{height:154px;width:154px;z-index:3;position:relative;}
.scan-symbol img{width:102px;height:102px;object-fit:contain;animation:scan-breathe 3s ease-in-out infinite;filter:drop-shadow(0 0 23px #4f91ff74)}
.scan-halo{width:139px;height:139px;box-shadow:0 0 0 8px #0b9fff08,0 0 45px #1886ff2c;}
.scan-halo::before{content:"";position:absolute;inset:-10px;border-radius:50%;background:conic-gradient(transparent 0 50%,#0cdfff 54%,transparent 58% 82%,#a669ff 86%,transparent 91%);mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 calc(100% - 1.5px));animation:brand-scan 3.3s linear infinite;}
.scan-radar-ring{position:absolute;border:1px dashed #336db952;border-radius:50%;width:200px;height:200px;animation:brand-scan 19s linear infinite;}
.scan-radar-two{width:235px;height:235px;border-color:#9a66ec25;animation-direction:reverse;animation-duration:24s}
.scan-orbit-trace{position:absolute;left:50%;top:50%;width:5px;height:5px;background:#ae6aff;border-radius:100%;box-shadow:0 0 11px 4px #874bff8a;animation:loader-orbit 3.3s linear infinite;z-index:5}
.scan-network{position:absolute;inset:0;width:100%;height:100%;z-index:1;overflow:visible;}
.scan-network-line{fill:none;stroke:url(#scan-rail);stroke-width:1.4;stroke-opacity:.55;stroke-dasharray:8 10;animation:trace-flow 5s linear infinite}
.scan-network-secondary{stroke-opacity:.28;animation-direction:reverse}
.scan-network-dot{fill:#70deff;filter:drop-shadow(0 0 5px #20bbff);animation:indicator-glow 2.1s infinite}
.scan-id-label{position:absolute;bottom:20px;font:10px var(--mono);letter-spacing:.18em;color:#92bce0;z-index:3;}.scan-id-start{left:10%}.scan-id-end{right:8%}
.scan-modal #scan-headline{font-size:clamp(22px,3vw,30px);margin-top:5px;letter-spacing:-.055em;animation:metric-reveal .5s both}
.scan-steps{position:relative}.scan-step{transition:border-color .35s,background .35s,box-shadow .35s,color .35s,transform .35s;}
.scan-step.is-active{transform:translateY(-4px);background:linear-gradient(145deg,#0b2841,#1b1e51);box-shadow:0 0 26px #05c7ff24,inset 0 0 13px #05c7ff11;animation:step-focus 2.5s ease-in-out infinite;}
.scan-step.done{background:#0e2c3e;border-color:#24dfcb70}
.scan-meter{height:4px;background:#162a47;position:relative;overflow:visible;}
.scan-meter span{position:relative;box-shadow:0 0 18px #25b5ffb3;transition:width .7s cubic-bezier(.2,.85,.2,1)}
.scan-meter span::after{content:"";position:absolute;right:-3px;top:-3px;width:10px;height:10px;background:#d8b8ff;border-radius:100%;box-shadow:0 0 15px 3px #b36cff;animation:indicator-glow 1s infinite}
.scan-backdrop[data-phase="2"] .scan-network-dot:nth-last-child(2),.scan-backdrop[data-phase="3"] .scan-network-dot{fill:#e7b4ff;filter:drop-shadow(0 0 8px #ac7bff)}
.scan-backdrop[data-phase="3"] .scan-network-line{stroke-opacity:.9;stroke-width:2}
/* One-off method page: separate URL, shared brand. */
.method-page{padding:0 0 100px;max-width:1280px;margin:auto}
.method-hero{min-height:500px;display:flex;flex-direction:column;justify-content:center;position:relative;align-items:flex-start;padding:90px 0 70px;}
.method-hero::after{content:"";position:absolute;right:5%;top:13%;width:360px;aspect-ratio:1;border-radius:50%;background:conic-gradient(from 40deg,transparent,#0a9bff25,transparent,#8e52ff26,transparent);mask:radial-gradient(farthest-side,transparent 55%,#000 57% 58%,transparent 61%);animation:brand-scan 18s linear infinite;pointer-events:none}
.method-hero h1{font-size:clamp(54px,8vw,112px);letter-spacing:-.09em;line-height:1;margin:30px 0 23px;max-width:970px}
.method-hero p{max-width:640px;font-size:16px;line-height:1.8;color:#9fb2d3;margin:0 0 38px}
.method-cta{position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:37px;padding:18px 23px;border:1px solid #45d0ff8a;border-radius:12px;color:#dffaff;font:11px var(--mono);letter-spacing:.08em;background:linear-gradient(115deg,#102b51,#1b1450);box-shadow:0 4px 30px #0557ef24;transition:transform .3s,box-shadow .3s,filter .3s}
.method-cta span{font-size:17px}
.method-sequence{border-top:1px solid #34476c}
.method-step{display:grid;grid-template-columns:140px 1fr 140px;align-items:center;gap:4%;min-height:255px;border-bottom:1px solid #243551;position:relative;overflow:hidden;transition:background .4s}
.method-step:hover{background:linear-gradient(90deg,#0a183100,#11245169,#0b0f2100)}
.method-figure{height:105px;width:105px;position:relative;display:grid;place-items:center;border-radius:50%;border:1px solid #25538c;font:29px var(--mono);color:#a9e9ff;box-shadow:inset 0 0 22px #124e7e3a,0 0 20px #2f68ac22}
.method-orbit{position:absolute;inset:-13px;border-radius:50%;border-top:2px solid #4adcff;border-right:1px solid #9d6aff;animation:brand-scan 11s linear infinite;}
.method-desc h2{margin:16px 0;font-size:clamp(28px,4vw,45px);letter-spacing:-.06em}
.method-desc p{max-width:670px;line-height:1.8;color:#a0b2cf;font-size:14px}
.method-glyph{font-size:75px;text-align:center;color:#559cda65;text-shadow:0 0 42px #4774f559;transition:transform .4s,color .4s}.method-step:hover .method-glyph{transform:rotate(18deg) scale(1.15);color:#62d6f5}
.method-limits{padding:45px;max-width:100%;margin:75px 0 55px;}
.method-limits h2{font-size:clamp(30px,5vw,50px);letter-spacing:-.06em;margin:20px 0}.method-limits p{font-size:14px;line-height:1.9;max-width:930px;color:#acbfdc}
.method-facts{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.method-facts span{padding:12px 16px;border:1px solid #2d517f;border-radius:8px;color:#93c9ec;font:10px var(--mono)}
.method-last{margin-top:80px;display:flex;gap:24px;align-items:center;justify-content:space-between;flex-wrap:wrap}.method-last>span{color:#7594c5;font:10px var(--mono);letter-spacing:.15em}.method-last h2{font-size:clamp(32px,5vw,57px);letter-spacing:-.06em}
.motion-ready .motion-reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .85s cubic-bezier(.16,.88,.22,1)}
.motion-ready .motion-reveal.in-view{opacity:1;transform:none}
@keyframes header-sweep{0%{transform:translateX(-40%)}100%{transform:translateX(360%)}}
@keyframes brand-scan{to{transform:rotate(360deg)}}
@keyframes brand-orbit{to{transform:rotate(360deg)}}
@keyframes brand-breathe{50%{opacity:.5;box-shadow:0 0 28px #448dff33}}
@keyframes beacon-shift{50%{filter:hue-rotate(35deg)}}
@keyframes hero-enter{from{opacity:0;transform:translateY(26px);filter:blur(8px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
@keyframes gradient-drift{0%{background-position:0 40%}100%{background-position:100% 60%}}
@keyframes cursor-blink{50%{opacity:.13}}
@keyframes line-shuttle{to{transform:translateX(15px)}}
@keyframes search-outline{0%,20%{background-position:150% 50%}60%,100%{background-position:-100% 50%}}
@keyframes button-sheen{0%,38%{left:-60%}54%,100%{left:135%}}
@keyframes indicator-glow{50%{opacity:.5;filter:brightness(1.55)}}
@keyframes reticle-spin{to{transform:rotate(-360deg)}}
@keyframes laser-sweep{0%,100%{opacity:0;transform:rotate(-15deg) translateY(-45px)}30%,72%{opacity:1}55%{transform:rotate(-15deg) translateY(45px)}}
@keyframes star-drift{to{background-position:92px 118px,154px 156px}}
@keyframes core-hue{50%{filter:drop-shadow(0 0 38px #854bff70)}}
@keyframes result-materialize{from{opacity:0;transform:translateY(20px);filter:blur(6px)}to{opacity:1;transform:none;filter:none}}
@keyframes avatar-frame{50%{opacity:.9;box-shadow:0 0 24px #06cbff50}}
@keyframes metric-reveal{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes history-pop{from{opacity:0;transform:translateX(-12px) scale(.985)}to{opacity:1;transform:none}}
@keyframes trace-down{0%,100%{transform:translateY(-100%)}55%{transform:translateY(400%)}}
@keyframes trace-flow{to{stroke-dashoffset:-220}}
@keyframes trace-write{to{stroke-dashoffset:0}}
@keyframes node-breathe{50%{opacity:.65;filter:drop-shadow(0 0 9px #76d9ff)}}
@keyframes closing-shine{0%,20%{left:-40%}80%,100%{left:130%}}
@keyframes overlay-in{from{opacity:0}to{opacity:1}}
@keyframes scan-modal-enter{from{opacity:0;transform:translateY(25px) scale(.965);filter:blur(10px)}to{opacity:1;transform:none;filter:blur(0)}}
@keyframes matrix-pan{to{background-position:25px 25px,25px 25px}}
@keyframes loader-orbit{from{transform:rotate(0) translateX(108px) rotate(0)}to{transform:rotate(360deg) translateX(108px) rotate(-360deg)}}
@keyframes step-focus{50%{box-shadow:0 0 32px #05c7ff45}}
@media(max-width:840px){.hero-afterline{justify-content:space-between;padding:15px 12px;gap:6px;flex-wrap:wrap;font-size:8px}.hero-afterline b{display:none}.brand-emblem{width:58px;height:58px;flex-basis:58px}.brand-satellite{transform-origin:3px 29px}.method-step{grid-template-columns:94px 1fr;gap:12px;padding:35px 0}.method-figure{width:75px;height:75px;font-size:19px}.method-glyph{display:none}.method-hero{min-height:410px}.scan-visual{height:223px}.scan-symbol{height:140px}.scan-steps{margin-top:15px}}
@media(max-width:540px){.brand-emblem{width:50px;height:50px;flex-basis:50px}.brand-emblem img{width:41px;height:41px}.brand-satellite{transform-origin:3px 25px}.hero-afterline{font-size:7px;letter-spacing:0}.hero-afterline i{max-width:20px}.scan-visual{height:195px}.scan-symbol{height:122px;width:122px}.scan-symbol img{width:85px;height:85px}.scan-halo{height:118px;width:118px}.scan-radar-ring{height:157px;width:157px}.scan-radar-two{height:183px;width:183px}.scan-id-label{font-size:8px}.scan-id-start{left:6%}.scan-id-end{right:4%}.scan-modal #scan-headline{font-size:23px}.method-hero h1{font-size:clamp(48px,12vw,69px)}.method-hero p{font-size:14px}.method-step{grid-template-columns:60px 1fr}.method-figure{width:55px;height:55px;font-size:15px}.method-step .method-orbit{inset:-7px}.method-desc h2{font-size:27px}.method-limits{padding:25px 18px}.method-last{align-items:flex-start;flex-direction:column}.ambient-canvas{opacity:.45}}
@media(prefers-reduced-motion:reduce){.motion-ready .motion-reveal{opacity:1!important;transform:none!important;transition:none!important}.brand-arc,.brand-satellite,.scan-network-line,.scan-orbit-trace,.scan-radar-ring,.scan-halo::before,.hero-reticle,.hero-afterline::before,.hero-laser,.hero-spark-field,.scan-meter span::after,.scan-matrix,.search-form::after,.submit-btn::before,.method-cta::before,.glass-card::after,.trace-sweep{animation:none!important}.scan-backdrop:not([hidden]){animation:none!important}}
/* Navigation stays usable on touch screens; How It Works must not disappear. */
@media(max-width:840px){
 .topbar{height:auto;min-height:79px;flex-wrap:wrap;column-gap:10px;row-gap:0;padding:8px 0 12px;}
 .topbar .nav-links{display:flex;order:3;width:100%;border-top:1px solid #2b3d5a;justify-content:space-between;gap:8px;padding:15px 0 3px;}
 .topbar .nav-links a{font-size:9px;white-space:nowrap;}
 .topbar .status{margin-left:auto;}
}
/* Scroll-reveals start readable while offscreen; animation enhances rather than hides content. */
.motion-ready .motion-reveal:not(.in-view){opacity:.82;transform:translateY(15px)}
