@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800;900&family=Rajdhani:wght@500;600;700&display=swap');
:root{--bg:#070b09;--panel:#101810;--green:#8afc35;--green2:#43bd23;--red:#fa343b;--text:#f3f5ee;--muted:#aab5a5;--line:#3d5941}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Rajdhani,Arial,sans-serif;font-size:17px;overflow-x:hidden}body.intro-active{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #fff;outline-offset:4px}h1,h2,h3,p{margin-top:0}h1,h2,h3,.wordmark,.eyebrow,.mission-kicker,.primary,.case-button,.micro-tag{font-family:'Barlow Condensed',Impact,'Arial Narrow',sans-serif}h2{font-size:clamp(40px,5.2vw,77px);line-height:.94;letter-spacing:.012em;margin:0 0 26px;font-weight:900}h2 em{font-style:normal;color:var(--green)}.led{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--green);box-shadow:0 0 14px var(--green);margin-right:8px}.led.red{background:var(--red);box-shadow:0 0 12px var(--red);animation:alert .9s steps(1) infinite}.section-wrap{width:min(1280px,92%);margin-inline:auto}.section-title{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:30px}.mission-kicker,.eyebrow{font-weight:800;letter-spacing:.18em;color:var(--green);font-size:14px;margin-bottom:18px}.micro-tag{font-size:13px;letter-spacing:.12em;color:var(--muted)}.topbar{height:74px;position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:28px;justify-content:space-between;padding:0 max(4%,calc((100vw - 1400px)/2));background:rgba(5,10,7,.96);border-bottom:1px solid rgba(128,255,70,.36);backdrop-filter:blur(12px)}.wordmark{font-size:31px;letter-spacing:.04em;font-weight:900;white-space:nowrap}.wordmark span:last-child{color:var(--green)}.mark-led{font-family:Arial;font-size:22px;color:var(--green);margin-right:7px;text-shadow:0 0 12px var(--green)}.topbar nav{display:flex;gap:26px;align-items:center}.topbar nav a{font-size:15px;font-weight:700;letter-spacing:.07em;transition:color .2s}.topbar nav a:hover{color:var(--green)}.x-btn{display:inline-flex;border:1px solid var(--green2);border-radius:4px;color:var(--green);padding:10px 17px;white-space:nowrap;font-size:15px;font-weight:800}.x-btn:hover{background:#284a23}.mobile-menu,.mobile-nav{display:none}.hero{max-width:1800px;margin:0 auto;background:#080e0a}.hero-art{width:100%;aspect-ratio:1448/553;background:url('assets/approved-banner-v7.webp') center / contain no-repeat}.hero-bottom{background:linear-gradient(90deg,#101b12,#0b120d);display:flex;justify-content:space-between;align-items:center;padding:14px max(4%,calc((100vw - 1280px)/2));color:#bdebb2;font-size:14px;letter-spacing:.12em;font-weight:800;border-top:1px solid #335835;border-bottom:1px solid #335835}.down-link{color:var(--green);font-size:13px}.mission{padding-top:105px;padding-bottom:110px}.mission-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.lead{font-size:clamp(20px,2vw,28px);line-height:1.3;color:#c6d6c4;max-width:620px}.lead strong{color:var(--green)}.primary{display:inline-flex;align-items:center;justify-content:center;gap:20px;border:1px solid #a6ff64;background:linear-gradient(120deg,#3f7c1b,#94ef23);color:#071207;font-weight:900;letter-spacing:.07em;padding:16px 28px;font-size:19px;box-shadow:0 0 22px #82ff4730;text-shadow:none;transition:transform .2s,box-shadow .2s}.primary:hover{transform:translateY(-3px);box-shadow:0 0 30px #7aff4e66}.primary.mini{font-size:17px;padding:13px 21px}.brief-panel{border:1px solid #598146;background:linear-gradient(130deg,#162519,#0c120e);padding:28px 31px;box-shadow:0 0 40px #67fb2311;position:relative}.brief-panel:before,.brief-panel:after{position:absolute;content:'';width:28px;height:28px;border-color:var(--green);border-style:solid}.brief-panel:before{top:-2px;left:-2px;border-width:3px 0 0 3px}.brief-panel:after{right:-2px;bottom:-2px;border-width:0 3px 3px 0}.brief-row{display:flex;gap:16px;justify-content:space-between;border-bottom:1px solid #35533d;padding:16px 0}.brief-row span{color:var(--muted);font-size:14px;letter-spacing:.06em}.brief-row strong{text-align:right;font-size:16px;letter-spacing:.03em}.brief-row strong.glowgreen{color:var(--green)}.brief-panel small{color:#98a997;display:block;margin-top:16px}.intel{padding-bottom:130px}.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.case{border:1px solid #4d6852;background:#121a13;transition:transform .25s,box-shadow .25s}.case:hover{transform:translateY(-5px);box-shadow:0 20px 40px #0008}.case-visual{height:250px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.case-visual:before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 32px,#9df86d17 33px 34px),repeating-linear-gradient(90deg,transparent 0 32px,#9df86d17 33px 34px)}.case-visual span{font-size:110px;filter:drop-shadow(0 0 28px #a4ff6b5e);z-index:1}.case-visual small{position:absolute;left:14px;bottom:12px;z-index:2;color:#d3f4cf;font-weight:800;letter-spacing:.08em}.case-visual.doge{background:radial-gradient(circle at center,#435b1e,#111b0e 75%)}.case-visual.frog{background:radial-gradient(circle at center,#17694d,#081812 75%)}.case-visual.cat{background:radial-gradient(circle at center,#515356,#151719 75%)}.case-body{padding:26px}.case-mark{color:var(--green);font-size:13px;font-weight:800;letter-spacing:.09em}.case-body h3{font-size:31px;font-weight:900;line-height:1;letter-spacing:.02em;margin:12px 0}.case-body p{color:#bac7b8;min-height:66px;line-height:1.35}.case-button{color:var(--green);background:none;border:0;border-top:1px solid #385340;padding:16px 0 0;text-align:left;display:block;width:100%;font-size:16px;letter-spacing:.08em;font-weight:800}.case-button:hover{color:#fff}.lab-section{padding:80px 0;background:linear-gradient(90deg,#0b190d,#070c09);border-top:1px solid #29482e;border-bottom:1px solid #29482e}.lab-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:65px;align-items:center}.lab-image{aspect-ratio:1.25;background:url('assets/approved-laboratory-v7.webp') 26% center / cover no-repeat;position:relative;border:1px solid #5b9a47;box-shadow:0 0 60px #62ff2520}.lab-image:after{content:'';position:absolute;inset:0;background:linear-gradient(to top,#061008b0,transparent 60%)}.lab-stamp{position:absolute;left:20px;bottom:18px;z-index:1;color:#beff8e;font-weight:800;letter-spacing:.08em;font-size:13px}.lab-copy p{font-size:22px;line-height:1.35;color:#bcccb9}.lab-copy blockquote{margin:30px 0;padding:22px;border-left:3px solid var(--green);background:#1a2b1b;color:var(--green);font-weight:800;letter-spacing:.06em;font-size:20px}.lab-copy .lab-fine{font-size:15px;color:#869b86}.transmission{padding:120px 0}.transmission-inner{text-align:center;position:relative;background:radial-gradient(ellipse at center,#19371a 0%,#0b150e 60%,#090c09 100%);padding:80px 15px;border:1px solid #487b34;overflow:hidden}.transmission-inner:before,.transmission-inner:after{content:'';position:absolute;border:1px solid #64ed4440;border-radius:50%;pointer-events:none}.transmission-inner:before{width:600px;height:600px;left:-360px;top:-350px}.transmission-inner:after{width:500px;height:500px;right:-330px;bottom:-350px}.transmission-inner h2{max-width:1000px;margin:0 auto 20px}.transmission-inner p{font-size:22px;color:#c5d6bf}.transmission-inner .primary{margin-top:10px}.replay{display:block;margin:22px auto 0;background:none;color:#adcf9f;border:0;text-decoration:underline;font-size:16px;font-weight:700}.replay:hover{color:var(--green)}footer{display:flex;gap:25px;align-items:center;justify-content:space-between;padding:28px 4%;border-top:1px solid #385440;background:#070a08;color:#a8b5a3;font-size:14px;font-weight:700}footer .wordmark{color:#fff;font-size:22px}footer a:hover{color:var(--green)}.modal[hidden]{display:none}.modal{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:20px}.modal-scrim{position:absolute;inset:0;background:#010402e8}.modal-card{position:relative;max-width:560px;width:100%;padding:45px;background:#111b14;border:1px solid var(--green);box-shadow:0 0 65px #3cae2555}.modal-card h2{font-size:45px}.modal-card p{font-size:23px;line-height:1.3;color:#c5d4c2}.modal-stamp{border:2px solid var(--red);color:var(--red);transform:rotate(-4deg);display:inline-block;font-weight:900;padding:8px 15px;letter-spacing:.1em}.modal-close{position:absolute;right:15px;top:13px;background:none;border:0;color:#fff;font-size:25px}
/* Full-screen cinematic entry */
.intro{position:fixed;inset:0;z-index:100;background:#040805;display:flex;flex-direction:column;justify-content:center;align-items:center;isolation:isolate;overflow:hidden}.intro[hidden]{display:none}.intro-sky{position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 70% 15%,#203e30,#050b09 58%,#010402);overflow:hidden}.intro-sky:after{content:'';position:absolute;inset:0;background-image:radial-gradient(#ffffff6a 1px,transparent 2px);background-size:91px 97px;opacity:.35}.intro-moon{position:absolute;right:11%;top:8%;width:85px;height:85px;border-radius:50%;background:radial-gradient(circle at 33% 24%,#dae8dc,#87988d 55%,#2b3b35);box-shadow:0 0 30px #ccdacc55}.intro-horizon{position:absolute;bottom:0;left:-10%;width:120%;height:38%;background:linear-gradient(transparent 0 25%,#0a110c 75%),repeating-linear-gradient(165deg,transparent 0 45px,#1a2a1c 46px 50px);clip-path:polygon(0 38%,9% 23%,16% 43%,28% 18%,40% 40%,55% 26%,71% 34%,82% 13%,100% 48%,100% 100%,0 100%)}.ufo{position:absolute;right:15%;top:12%;width:210px;height:100px;animation:float 5s ease-in-out infinite}.ufo-top{width:100px;height:55px;border-radius:65px 65px 10px 10px;background:linear-gradient(#667d70,#14281b);margin:auto;box-shadow:inset 0 10px #9eb5ab}.ufo-base{width:210px;height:40px;background:linear-gradient(#71997e,#172d21);border:3px solid #83ff60;border-radius:50%;margin-top:-5px;box-shadow:0 0 30px #78fb4a}.ufo-beam{position:absolute;top:83px;left:65px;width:80px;height:200px;background:linear-gradient(#a7ff5977,#70ff2500);clip-path:polygon(46% 0,54% 0,100% 100%,0 100%);opacity:.65}.intro-upper{position:absolute;left:5%;right:5%;top:3%;display:flex;justify-content:space-between;align-items:center;z-index:5}.intro-upper .eyebrow{margin:0;color:#ffe5e6}.skip{background:#101c12e8;border:1px solid #719e65;color:#e7ffdc;padding:10px 17px;font-size:15px;letter-spacing:.08em;font-weight:800}.skip:hover{background:#345b2b}.vault{width:min(800px,82vw);height:min(40vh,350px);position:relative;margin-top:10px}.vault-housing{position:absolute;inset:0;border:16px solid #3c4b3e;border-radius:110px 110px 7px 7px;overflow:hidden;box-shadow:0 0 0 7px #111913,0 0 0 12px #080e08,0 0 65px #58e93644;background:#0b2010}.vault-housing:before{content:'';position:absolute;z-index:8;inset:0 0 auto;height:15px;background:repeating-linear-gradient(90deg,#dec500 0 24px,#181818 24px 48px);opacity:.55}.vault-inside{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 30%,#397b30,#061708 70%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;box-shadow:inset 0 0 60px #050905}.lab-lights{position:absolute;top:25px;left:15%;right:15%;height:9px;background:#a5ff70;box-shadow:0 0 35px 15px #8aff4970}.lab-title{font-weight:900;color:#b5ff8e;letter-spacing:.15em;font-size:clamp(11px,1.7vw,19px)}.lab-aliens{display:flex;gap:30px;font-size:clamp(55px,8vw,95px);filter:drop-shadow(0 0 20px #5dff55)}.lab-screens{display:flex;gap:18px}.lab-screens span{display:grid;place-items:center;width:63px;height:47px;background:#08190a;border:2px solid #78f54d;box-shadow:0 0 18px #7aff4755;font-size:28px}.lab-sub{font-size:12px;letter-spacing:.2em;color:#b6f2a2}.vault-door{position:absolute;z-index:4;top:0;bottom:0;width:50.5%;background:linear-gradient(100deg,#47574c,#1a241c 27%,#596b61 50%,#151d18 75%,#3c4a40);border:5px solid #859c8c;box-shadow:inset 0 0 40px #010b04,0 0 10px #000;transition:transform 2.6s cubic-bezier(.42,.03,.16,1)}.door-left{left:0;border-right:7px solid #95b99b}.door-right{right:0;border-left:7px solid #95b99b}.steel-ribs{position:absolute;inset:10px;background:repeating-linear-gradient(90deg,transparent 0 80px,#030a0533 80px 88px,transparent 88px 94px),repeating-linear-gradient(0deg,transparent 0 74px,#d2e4cd20 75px 79px,transparent 80px 86px)}.door-id{position:absolute;top:36%;left:25%;color:#c3d6c5;font-weight:900;font-size:32px;letter-spacing:.1em;text-shadow:1px 1px #000}.hazard{position:absolute;bottom:15px;left:17%;font-size:47px;color:var(--red);letter-spacing:-.12em}.vault-lock{z-index:6;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border:12px solid #687c70;box-shadow:0 0 0 6px #1e2a21,0 0 0 9px #91b098,0 0 30px #000;width:145px;height:145px;border-radius:50%;background:repeating-conic-gradient(#19231c 0deg 30deg,#526556 30deg 60deg);display:grid;place-items:center;transition:opacity .3s}.vault-lock-core{display:grid;place-items:center;width:90px;height:90px;border-radius:50%;background:#0d190f;border:5px solid var(--red);color:var(--red);font:900 47px 'Barlow Condensed';text-shadow:0 0 13px var(--red)}.scanner{position:absolute;z-index:7;top:-30%;left:0;width:100%;height:26%;background:linear-gradient(transparent,#95ff624d,#9dff79,transparent);filter:blur(4px);opacity:0;pointer-events:none}.entry-console{text-align:center;z-index:10;margin-top:32px;padding:0 15px;transition:opacity .3s}.console-status{font-weight:800;color:#ff7676;letter-spacing:.14em;font-size:14px}.entry-console h1{font-size:clamp(70px,11vw,155px);font-weight:900;letter-spacing:.015em;line-height:.9;margin:10px 0;color:#f3f5f0;text-shadow:0 6px 0 #363a37,0 0 40px #ffffff12}.entry-console h1 span{color:var(--green);text-shadow:0 5px 0 #345628,0 0 22px #76ff38}.entry-console p{letter-spacing:.18em;font-size:clamp(15px,2vw,24px);font-weight:900;color:#d4f1cc;margin:12px auto 22px}.entry-console .primary{min-width:min(360px,90vw)}.entry-note{font-size:12px;letter-spacing:.18em;color:#9bac92;margin-top:15px}.intro-progress{position:absolute;bottom:0;left:0;width:100%;height:4px;background:#18241c}.intro-progress i{display:block;height:100%;width:0;background:var(--green);box-shadow:0 0 12px var(--green);transition:width 2s}.intro.scanning .scanner{opacity:1;animation:scan 1.65s ease-in-out forwards}.intro.scanning .vault-lock-core{color:var(--green);border-color:var(--green);text-shadow:0 0 12px var(--green)}.intro.scanning .intro-progress i{width:100%}.intro.open .door-left{transform:translateX(-103%)}.intro.open .door-right{transform:translateX(103%)}.intro.open .vault-lock{opacity:0;pointer-events:none}.intro.open .entry-console{opacity:0;pointer-events:none}.intro.done{opacity:0;pointer-events:none;transition:opacity .5s}@keyframes alert{50%{opacity:.18}}@keyframes scan{0%{transform:translateY(-120%)}100%{transform:translateY(490%)}}@keyframes float{50%{transform:translateY(-16px)}}
@media(max-width:960px){.topbar nav{gap:12px}.topbar nav a{font-size:12px}.x-btn{font-size:12px;padding:8px}.mission-grid,.lab-grid{gap:35px}.case-visual{height:190px}.case-visual span{font-size:85px}.case-body h3{font-size:26px}.hero-bottom{font-size:11px}}
@media(max-width:700px){.topbar{height:65px;padding:0 4%}.topbar nav,.topbar .x-btn{display:none}.mobile-menu{display:block;background:none;border:1px solid #608d56;color:var(--green);font-size:24px;padding:3px 13px}.mobile-nav{position:fixed;top:65px;left:0;right:0;z-index:21;background:#0a150c;border-bottom:1px solid var(--green);padding:16px 7%;flex-direction:column;gap:15px}.mobile-nav.active{display:flex}.mobile-nav a{font-weight:800;color:#d4f0cd}.hero-art{aspect-ratio:1448/553;background-size:cover;background-position:50% center;min-height:250px}.hero-bottom{padding:12px 4%;gap:12px}.down-link{font-size:11px;text-align:right}.mission{padding:65px 0}.mission-grid,.lab-grid{grid-template-columns:1fr}.lead{font-size:21px}.brief-panel{padding:18px}.brief-row{gap:6px}.brief-row strong{font-size:14px}.intel{padding-bottom:75px}.section-title{display:block}.micro-tag{display:block}.case-grid{grid-template-columns:1fr}.case-visual{height:220px}.lab-section{padding:60px 0}.lab-image{aspect-ratio:1.4}.lab-copy h2{margin-top:15px}.transmission{padding:65px 0}.transmission-inner{padding:55px 12px}.transmission-inner p{font-size:18px}footer{display:grid;grid-template-columns:1fr 1fr;gap:16px;font-size:12px}.vault{width:92vw;height:31vh;max-height:280px}.vault-housing{border-width:9px;border-radius:65px 65px 5px 5px}.door-id{font-size:19px}.vault-lock{width:90px;height:90px;border-width:7px}.vault-lock-core{width:54px;height:54px;font-size:29px}.lab-aliens{gap:5px}.lab-screens span{width:42px;height:32px;font-size:20px}.intro-upper{top:2%}.intro-upper .eyebrow{font-size:11px;letter-spacing:.07em}.skip{padding:8px 10px;font-size:12px}.entry-console{margin-top:26px}.entry-console h1{font-size:75px}.entry-console p{font-size:13px;letter-spacing:.09em}.entry-note{font-size:10px;letter-spacing:.07em}.ufo{transform:scale(.7);transform-origin:top right;right:5%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.led.red{opacity:1}}

/* V2: security entrance requires deliberate visitor action; no skip control. */

/* V3: approved fluorescent-green surveillance portraits; existing layout unchanged */
.case-visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;position:relative;z-index:1;filter:saturate(1.04)}
.case-visual:before{z-index:2;pointer-events:none;opacity:.18}
.case-visual small{z-index:3;background:rgba(4,18,7,.78);border:1px solid rgba(122,255,72,.3);padding:5px 8px;text-shadow:0 1px 5px #000}
@media (max-width:700px){.case-visual img{object-position:center 47%}}


/* V4: moving perimeter security lights and illuminated specimen screens */
.intro-sky{isolation:isolate}
.security-beacons{position:absolute;inset:0;z-index:2;pointer-events:none}
.beacon{position:absolute;top:19%;height:15px;width:15px;border-radius:50%;background:#ff242d;border:2px solid #ffc4c4;box-shadow:0 0 9px 4px #ff2020,0 0 35px 16px #ff16168a,0 0 90px 42px #ff161625;animation:m51Beacon 1.25s steps(1,end) infinite}
.beacon:after{content:"";position:absolute;inset:-19px;border-radius:50%;border:1px solid #ff434352;animation:m51BeaconHalo 1.25s ease-out infinite}
.beacon-left{left:20%}.beacon-right{right:19%;animation-delay:.63s}.beacon-right:after{animation-delay:.63s}
@keyframes m51Beacon{0%,49%{opacity:1;filter:brightness(1.45)}50%,100%{opacity:.15;filter:brightness(.5)}}
@keyframes m51BeaconHalo{0%{transform:scale(.6);opacity:.8}55%,100%{transform:scale(1.55);opacity:0}}
.floodlight-unit{position:absolute;left:6%;top:28%;width:35px;height:24px;z-index:2;transform-origin:50% 5%;animation:m51FloodSweep 8s ease-in-out infinite alternate;pointer-events:none}
.floodlight-head{position:absolute;left:0;top:0;width:34px;height:18px;border:2px solid #b8d8b8;border-radius:8px;background:linear-gradient(90deg,#1a2a1d,#d5e7d2);box-shadow:0 0 12px #fff9}
.floodlight-beam{position:absolute;left:-76px;top:13px;width:190px;height:60vh;max-height:600px;clip-path:polygon(47% 0,53% 0,100% 100%,0 100%);background:linear-gradient(to bottom,#eaffc955,#d8ff981d 48%,transparent);filter:blur(6px);opacity:.72;transform-origin:50% 0;z-index:-1}
@keyframes m51FloodSweep{from{transform:rotate(-24deg)}to{transform:rotate(26deg)}}
.lab-flood{position:absolute;top:27px;left:35%;width:30%;height:95%;pointer-events:none;background:linear-gradient(180deg,#b0ff8744,transparent 92%);clip-path:polygon(44% 0,56% 0,100% 100%,0 100%);filter:blur(9px);animation:m51LabSweep 6s ease-in-out infinite alternate;transform-origin:50% 0}
@keyframes m51LabSweep{from{transform:rotate(-18deg);opacity:.36}to{transform:rotate(18deg);opacity:.78}}
.lab-lights{animation:m51CeilingFlicker 2.8s steps(1,end) infinite}
@keyframes m51CeilingFlicker{0%,12%,16%,95%,100%{opacity:1;filter:brightness(1)}13%,96%{opacity:.35;filter:brightness(.65)}}
.vault-inside .lab-title,.vault-inside .lab-aliens,.vault-inside .lab-screens,.vault-inside .lab-sub{position:relative;z-index:2}
.vault-inside .lab-title{margin-top:17px}
.vault-inside .lab-aliens{gap:clamp(10px,3vw,27px);font-size:clamp(46px,6vw,82px);line-height:1}
.vault-inside .lab-screens{gap:clamp(6px,1.4vw,15px)}
.vault-inside .lab-screens .specimen-screen{width:clamp(53px,7vw,84px);height:clamp(42px,6vw,62px);padding:2px;border:2px solid #8cff4f;border-radius:3px;background:#071809;box-shadow:0 0 15px #87ff6b66;overflow:hidden;display:block}
.vault-inside .lab-screens .specimen-screen img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(1.08) contrast(1.1)}
.vault-inside .lab-sub{font-size:clamp(9px,1vw,12px)}
@media(max-width:700px){.beacon{top:21%;width:11px;height:11px}.beacon-left{left:12%}.beacon-right{right:12%}.floodlight-unit{left:4%;top:32%;transform:scale(.65);transform-origin:top left}.vault-inside{gap:7px}.vault-inside .lab-title{font-size:10px;letter-spacing:.07em;margin-top:8px}.vault-inside .lab-aliens{font-size:clamp(38px,9vw,60px);gap:9px}.vault-inside .lab-screens .specimen-screen{width:clamp(45px,14vw,68px);height:clamp(37px,11vw,50px)}.lab-lights{top:14px;height:5px}}
@media(prefers-reduced-motion:reduce){.beacon{opacity:1!important}.lab-lights{opacity:1!important}.floodlight-unit{transform:rotate(0)!important}.lab-flood{transform:none!important;opacity:.4!important}}


/* V5: animate the embedded perimeter lights on the APPROVED landing hero artwork.
   These effects sit above the unmodified raster banner and are noninteractive. */
.hero-art{position:relative;isolation:isolate;overflow:hidden}
.hero-security-fx{position:absolute;inset:0;z-index:2;overflow:hidden;pointer-events:none}
.hero-warning{position:absolute;display:block;width:clamp(5px,.58vw,12px);aspect-ratio:1;border-radius:50%;background:#fff0ee;border:1px solid #fff9b9;box-shadow:0 0 3px 2px #fff,0 0 10px 5px #f20d19,0 0 26px 13px #ff1728d9,0 0 59px 28px #ff122a57;animation:m51HeroRedFlash 5.2s ease-in-out infinite;transform:translate(-50%,-50%)}
.hero-warning:after{content:"";position:absolute;inset:-180%;border-radius:50%;border:1px solid #ff2b4b;animation:m51HeroHalo 5.2s ease-out infinite}
/* Positions are percentages of the approved 1448:553 banner. */
.hero-warning-a{left:23.1%;top:4.9%}
.hero-warning-b{left:35.7%;top:6.5%;animation-delay:-2.6s}
.hero-warning-c{left:52.2%;top:16.7%;animation-delay:-1.3s}
.hero-warning-d{left:96.5%;top:57.5%;animation-delay:-2.6s}
.hero-warning-e{left:50.9%;top:60%;animation-delay:-3.9s}
.hero-warning-f{left:61.6%;top:85.2%;animation-delay:-1.3s}
.hero-warning-b:after,.hero-warning-d:after{animation-delay:-2.6s}
.hero-warning-c:after,.hero-warning-f:after{animation-delay:-1.3s}
@keyframes m51HeroRedFlash{0%,13%,40%,100%{opacity:.12;filter:brightness(.65)}19%,25%{opacity:.92;filter:brightness(1.18)}31%{opacity:.2;filter:brightness(.7)}}
@keyframes m51HeroHalo{0%,12%,40%,100%{opacity:0;transform:scale(.65)}19%{opacity:.45;transform:scale(1)}35%{opacity:0;transform:scale(1.7)}}
.hero-spotlight{position:absolute;width:5px;height:6px;transform-origin:50% 0;animation:m51HeroSearchlight 7.5s ease-in-out infinite alternate;opacity:.7}
.hero-spotlight i{position:absolute;left:-6.5vw;top:0;width:13vw;max-width:240px;height:22vw;max-height:320px;background:linear-gradient(to bottom,#eafff4b0,#cdf9e92a 35%,#d8f9ef06 80%,transparent);clip-path:polygon(48% 0,52% 0,100% 100%,0 100%);filter:blur(6px);transform-origin:top center}
.hero-spotlight-left{left:53.5%;top:72%;animation-duration:6.8s}
.hero-spotlight-right{left:91.8%;top:73%;animation-duration:9.2s;animation-delay:-3.1s}
@keyframes m51HeroSearchlight{from{transform:rotate(-28deg)}to{transform:rotate(27deg)}}
@media(max-width:700px){.hero-warning{width:5px}.hero-warning-c,.hero-warning-d,.hero-warning-e,.hero-warning-f{display:none}.hero-spotlight i{width:100px;left:-50px;height:130px}}
@media(prefers-reduced-motion:reduce){.hero-warning{animation:none!important;opacity:.85!important}.hero-warning:after{animation:none!important;display:none}.hero-spotlight{animation:none!important;transform:rotate(0)!important}}

/* V7: Two slow authorization beacons next to the manual scan button. */
.v7-scan-controls{display:flex;justify-content:center;align-items:center;gap:clamp(12px,2vw,24px);margin:0 auto;width:max-content;max-width:100%}
.v7-scan-controls .primary{min-width:0;max-width:calc(100vw - 115px)}
.v7-scan-beacon{position:relative;display:block;flex:none;width:15px;height:15px;border-radius:50%;background:#a6ff71;border:2px solid #daffc6;box-shadow:0 0 7px 3px #80ff44a8,0 0 22px 9px #5dff425b;animation:v7AuthorizationPulse 4.4s ease-in-out infinite}
.v7-scan-beacon:after{content:"";position:absolute;inset:-8px;border:1px solid #7aff4660;border-radius:50%;animation:v7AuthorizationHalo 4.4s ease-in-out infinite}
.v7-scan-beacon-right,.v7-scan-beacon-right:after{animation-delay:-2.2s}
@keyframes v7AuthorizationPulse{0%,100%{opacity:.30;filter:brightness(.7);box-shadow:0 0 3px #78f64c55}25%,49%{opacity:1;filter:brightness(1.3);box-shadow:0 0 8px 3px #8cff63b0,0 0 24px 10px #66fa4261}75%{opacity:.42;filter:brightness(.8)}}
@keyframes v7AuthorizationHalo{0%,100%{opacity:.15;transform:scale(.75)}40%{opacity:.8;transform:scale(1.12)}70%{opacity:.1;transform:scale(1.42)}}
@media(max-width:700px){.v7-scan-controls{gap:12px}.v7-scan-beacon{width:12px;height:12px}.v7-scan-controls .primary{padding:13px 12px;font-size:clamp(13px,4vw,17px);gap:5px;max-width:calc(100vw - 78px)}}
@media(prefers-reduced-motion:reduce){.v7-scan-beacon,.v7-scan-beacon:after{animation:none!important;opacity:1!important}}
