html.intro-active{overflow:hidden}.site-intro{position:fixed;z-index:9999;inset:0;display:grid;place-items:center;overflow:hidden;background:#020713;color:#fff;animation:intro-exit .7s ease 3.4s forwards}
.intro-seen .site-intro,.site-intro.is-hidden{display:none}
.intro-grid{position:absolute;inset:-25%;opacity:.38;background-image:linear-gradient(rgba(52,163,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(52,163,255,.12) 1px,transparent 1px);background-size:68px 68px;transform:perspective(700px) rotateX(62deg) translateY(28%);animation:grid-rise 3.6s ease-out both}
.site-intro:before{content:'';position:absolute;width:65vmin;height:65vmin;border-radius:50%;background:radial-gradient(circle,rgba(0,130,255,.25),rgba(0,80,220,.06) 38%,transparent 68%);filter:blur(8px);animation:energy-pulse 1.8s ease-in-out infinite}
.intro-scan{position:absolute;left:0;right:0;top:-5%;height:2px;background:linear-gradient(90deg,transparent,#55d8ff,transparent);box-shadow:0 0 26px #0b8dff;animation:intro-scan 2.4s ease-in-out .25s both}
.intro-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;text-align:center;padding:24px;animation:content-arrive .8s cubic-bezier(.2,.75,.25,1) both}
.intro-content img{width:clamp(150px,24vw,270px);aspect-ratio:1.08/1;object-fit:cover;border-radius:18px;filter:drop-shadow(0 0 36px rgba(28,150,255,.55));animation:shield-lock 2.6s cubic-bezier(.2,.75,.25,1) both}
.intro-content>p{margin:22px 0 7px;font-size:clamp(1.05rem,2.4vw,1.55rem);font-weight:800;letter-spacing:.12em}.intro-content>p b{color:#5dd6ff}.intro-content h1{margin:0;font-size:clamp(2rem,5vw,4.5rem);line-height:1.05;letter-spacing:-.045em}.intro-content>span{margin-top:12px;color:#b8c8de;font-size:clamp(.9rem,1.5vw,1.08rem);letter-spacing:.03em}
.intro-status{margin-top:27px;color:#8fa9c8;font-size:.72rem;font-weight:800;letter-spacing:.16em}.intro-status i{display:inline-block;width:8px;height:8px;margin-right:9px;border-radius:50%;background:#42e69b;box-shadow:0 0 0 7px rgba(66,230,155,.1),0 0 18px #42e69b;animation:status-blink 1s ease-in-out infinite}
.intro-skip{position:absolute;z-index:4;right:22px;top:20px;padding:10px 14px;border:1px solid rgba(150,199,255,.3);border-radius:6px;background:rgba(4,17,35,.6);color:#dbe9fa;font:700 .75rem Manrope,system-ui;cursor:pointer}.intro-skip:hover,.intro-skip:focus-visible{border-color:#5dd6ff;color:#fff;outline:none}
@keyframes content-arrive{from{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes shield-lock{0%{opacity:0;transform:scale(.55) rotate(-4deg);filter:blur(10px)}40%{opacity:1;transform:scale(1.05) rotate(0);filter:blur(0) drop-shadow(0 0 45px rgba(28,150,255,.7))}100%{transform:scale(1);filter:drop-shadow(0 0 36px rgba(28,150,255,.55))}}@keyframes energy-pulse{50%{transform:scale(1.12);opacity:.75}}@keyframes status-blink{50%{opacity:.35}}@keyframes intro-scan{from{top:-5%;opacity:0}15%{opacity:1}to{top:105%;opacity:0}}@keyframes grid-rise{from{opacity:0;transform:perspective(700px) rotateX(62deg) translateY(42%)}to{opacity:.38;transform:perspective(700px) rotateX(62deg) translateY(28%)}}@keyframes intro-exit{to{opacity:0;visibility:hidden;pointer-events:none}}
@media(prefers-reduced-motion:reduce){.site-intro{animation:intro-exit .25s linear .9s forwards}.intro-grid,.intro-scan,.intro-content,.intro-content img,.intro-status i,.site-intro:before{animation:none}}
@media(max-width:560px){.intro-content img{width:180px}.intro-content h1{font-size:2.25rem}.intro-content>p{font-size:.95rem}.intro-skip{right:14px;top:14px}}
