/* Mechanical navigation / quiet entrance */
header{position:fixed;left:0;right:0;top:0;height:100px;padding:0 2%;gap:14px;transition:opacity .5s,transform .6s;background:#101525ed}
body.entrance-closed header{opacity:0;transform:translateY(-100%);pointer-events:none;visibility:hidden}
header .brand{background:none;box-shadow:none;border-radius:0;width:180px;height:70px;overflow:visible}
header .brand img{position:static;width:100%;height:100%;object-fit:contain;mix-blend-mode:normal}
header nav{gap:7px;padding:7px;border-radius:7px;background:linear-gradient(160deg,#40485a,#191e2e 48%,#2b3140);box-shadow:inset 0 1px #c8d2e555,0 8px 24px #0007}
header nav a{--neon:#b8ff35;width:110px;height:58px;padding:0}
header nav a:nth-child(2){--neon:#60e4ff}header nav a:nth-child(3){--neon:#c39aff}header nav a:nth-child(4){--neon:#ffc87e}header nav a:nth-child(5){--neon:#ff8ec9}
.nav-front,.nav-back{border-radius:4px;border:1px solid #a9b6cc50;border-bottom:2px solid var(--neon);box-shadow:inset 0 1px #dae9ff35,0 3px 10px #0005;overflow:hidden}
.nav-front:after,.nav-back:after{content:'';position:absolute;left:18%;right:18%;bottom:3px;height:2px;background:var(--neon);box-shadow:0 0 7px 2px var(--neon)}
.nav-front>span{font-size:18px;letter-spacing:.01em}.nav-back>span{font-size:15px}.nav-back{background:linear-gradient(#343b50,#1d2333);color:#f4f6ff}.nav-back b{color:var(--neon)}
header nav a small{font-size:7px!important}.nav-actions .text-btn,.nav-actions .pill.small{--neon:#b8ff35;position:relative;min-height:62px;padding:12px 17px;font-size:18px;border-radius:5px;border:1px solid #9eacc34d;border-bottom:2px solid var(--neon);color:#edf1fa;background:linear-gradient(150deg,#424b5f,#202637 65%);box-shadow:inset 0 1px #dae9ff44,0 5px 14px #0005;white-space:nowrap}
.nav-actions .text-btn{--neon:#a7b9ff}.nav-actions .text-btn:after,.nav-actions .pill.small:after{content:'';position:absolute;bottom:3px;left:20%;right:20%;height:2px;background:var(--neon);box-shadow:0 0 8px var(--neon)}
.hero-sticky{top:0;height:100svh;min-height:0}.hero-copy,.hero-bottom,.scene-switch,.hall-floor,.gate-specks,.sun-beams{transition:opacity .35s}
.entrance-title{position:absolute;z-index:6;left:7%;top:40%;font-size:clamp(24px,3.2vw,50px);font-weight:400;letter-spacing:.04em;line-height:1.55;opacity:clamp(0,calc(1 - var(--journey,0)*9),1);pointer-events:none}
.entrance-title strong{display:block;font:700 clamp(65px,8vw,125px)/1 Arial,sans-serif;letter-spacing:-.055em;margin-bottom:18px}
.hero-copy{opacity:0;pointer-events:none!important;visibility:hidden}.hero .hero-bottom,.hero .scene-switch{opacity:clamp(0,calc((var(--journey,0) - .15)*8),1)}
body.entrance-closed .hero-bottom,body.entrance-closed .scene-switch{visibility:hidden;pointer-events:none}
.hall-floor,.gate-specks,.sun-beams{display:none}.gate-access-label{display:none}
.hero-shade{opacity:clamp(0,calc(var(--journey,0)*2),1)}
/* Reference sequence: expanding dark disc, hairline and nucleus, rising typography. */
.chapter-motion{height:260svh;min-height:0;display:block;overflow:visible;background:#eceef4!important;isolation:isolate}
.knowledge-stage{position:sticky;top:0;height:100svh;overflow:hidden;display:block;background:#eceef4;color:#eceef4}
.knowledge-disc{position:absolute;left:50%;top:50%;width:150vmax;height:150vmax;border-radius:50%;background:#101525;transform:translate(-50%,-50%) scale(var(--disc-scale,.04));will-change:transform}
.knowledge-rule{position:absolute;top:44%;left:0;width:100%;height:1px;background:#b8c0d15e;transform:scaleX(var(--rule-scale,0));opacity:var(--rule-alpha,0)}
.knowledge-node{position:absolute;width:55px;height:55px;left:50%;top:44%;border:1px solid #e9ecfa90;border-radius:50%;transform:translate(-50%,-50%);opacity:var(--rule-alpha,0);background:#101525}.knowledge-node:after{content:'';position:absolute;inset:23px;border-radius:50%;background:#fff;box-shadow:0 0 14px #ffffff55}
.knowledge-note{position:absolute;top:58%;width:100%;text-align:center;padding:0 24px;font-size:15px!important;letter-spacing:.06em!important;color:#eceef4!important;opacity:var(--note-alpha,0);transform:translateY(calc(var(--note-shift,0)*1px))}
.knowledge-type{position:absolute;top:100%;left:5%;width:90%;text-align:center;transform:translateY(calc(var(--type-shift,0)*1vh));will-change:transform}
.chapter-motion .knowledge-type h2{font-size:clamp(52px,7.8vw,120px);line-height:1.15;letter-spacing:-.045em;color:#eceef4;font-weight:400}.knowledge-type h2 span{display:block}.knowledge-type p{font:11px Arial;letter-spacing:.3em;color:#b8ff35}.knowledge-corner{position:absolute;right:5%;bottom:5%;font:10px monospace;letter-spacing:.14em;color:#cbd0dc;opacity:var(--rule-alpha,0)}
@media(max-width:1300px) and (min-width:1051px){header .brand{width:145px}header nav a{width:99px}.nav-front>span{font-size:17px}.nav-actions .text-btn,.nav-actions .pill.small{font-size:16px;padding:12px}.nav-actions{gap:7px}}
@media(max-width:1050px){header{height:82px}header nav a{width:100%;height:56px}header nav{top:82px}.nav-front>span{font-size:19px}header .brand{width:155px}.nav-actions .text-btn,.nav-actions .pill.small{font-size:16px;min-height:52px}.hero-sticky{top:0;height:100svh}}
@media(max-width:760px){header{height:78px;padding:0 3%}header .brand{width:110px;height:54px}header nav{top:78px}.nav-actions .text-btn,.nav-actions .pill.small{font-size:13px;padding:10px 8px;min-height:46px}.nav-actions .text-btn:before{display:none}.nav-actions{gap:6px}.academy-gate{top:49%;width:min(108vw,570px)}.entrance-title{left:0;top:10%;width:100%;text-align:center;font-size:20px}.entrance-title strong{font-size:48px;margin-bottom:8px}.knowledge-type{left:4%;width:92%}.chapter-motion .knowledge-type h2{font-size:clamp(40px,10vw,70px)}.knowledge-note{font-size:12px!important}.knowledge-node{width:40px;height:40px}.knowledge-node:after{inset:17px}}
@media(prefers-reduced-motion:reduce){header{transition:none}.entrance-title{display:none}.chapter-motion{height:100svh}.knowledge-disc{transform:translate(-50%,-50%) scale(1)}.knowledge-rule,.knowledge-node{opacity:1}.knowledge-type{top:55%;transform:none}.knowledge-note{display:none}}
.chapter-motion .knowledge-stage{width:100%;max-width:none;justify-self:stretch;}
/* Exact original artwork, display only the bilingual wordmark. */
.entrance-title{width:34vw;max-width:530px;aspect-ratio:920/440;overflow:hidden;top:42%;mix-blend-mode:screen;isolation:auto}
.entrance-title img{position:absolute;max-width:none;width:166.9565%;height:auto;left:-59.7826%;top:-59.0909%;filter:invert(1);pointer-events:none}
@media(max-width:760px){.entrance-title{width:64%;max-width:310px;left:18%;top:8%;}}
/* Lamp centers measured against the 1254-square frame artwork. */
.gate-status-lamp{left:50%;top:7.3%;width:5.1%;aspect-ratio:1;transform:translate(-50%,-50%);border:2px solid #30362f;background:radial-gradient(ellipse at 35% 22%,#ffb2a080,transparent 35%),radial-gradient(circle at 50% 58%,#ff3727 0%,#cf1e19 48%,#4d090d 85%);box-shadow:inset 0 0 0 2px #831b19,inset -4px -7px 9px #220106b0,0 0 8px #ee242a70;overflow:hidden}
.gate-status-lamp:before{content:'';position:absolute;left:13%;right:13%;top:7%;height:35%;border-radius:50%;background:linear-gradient(165deg,#ffffffd9,#fff2 65%,transparent);transform:rotate(-15deg);filter:blur(.4px)}
.gate-status-lamp:after{content:'';position:absolute;inset:7%;border-radius:50%;border-top:1px solid #fff8;border-bottom:1px solid #ffbbb580;box-shadow:inset 2px 0 4px #fff2}
.gate-powered .gate-status-lamp{background:radial-gradient(ellipse at 35% 22%,#ffffce88,transparent 35%),radial-gradient(circle at 50% 58%,#caff4a,#85ba19 48%,#263c08 85%);box-shadow:inset 0 0 0 2px #668219,inset -4px -7px 9px #142203b0,0 0 14px #b8ff3570}
.gate-panel-lamps{position:absolute;z-index:6;left:14.35%;top:40.2%;width:3.45%;height:2.2%;display:flex;flex-direction:column;justify-content:space-between;background:#252b21;padding:2px;border-radius:3px;box-shadow:0 0 0 2px #4b5142}
.gate-panel-lamps i{display:block;height:24%;border-radius:2px;background:linear-gradient(#ffb8ac,#ff4333 40%,#971315);box-shadow:0 0 4px #ee322955,inset 0 1px #ffffff77}
.gate-powered .gate-panel-lamps i{background:linear-gradient(#e4ff9b,#b8ff35 40%,#6a9216);box-shadow:0 0 5px #b8ff3555,inset 0 1px #ffffff77}
.entrance-title{clip-path:polygon(12% 0,100% 0,100% 100%,0 100%,0 75%,5% 55%,12% 40%)}
.knowledge-rule,.knowledge-node{top:calc(44% + var(--node-rise,0)*1vh)}
.entrance-title{clip-path:polygon(12% 0,100% 0,100% 100%,0 100%,0 58%,6% 38%,12% 35%)}
.entrance-title{width:40vw;max-width:700px;left:3%;top:42%;aspect-ratio:2145/733;clip-path:none;overflow:visible;mix-blend-mode:normal}
.entrance-title img{position:static;width:100%;height:auto;filter:none;max-width:100%}
@media(max-width:760px){.entrance-title{width:94%;max-width:none;left:3%;top:9%;}}
.footer-word{display:block;width:min(100%,360px);align-self:center}.footer-word img{display:block;width:100%;height:auto}
@media(min-width:1051px) and (max-width:1499px){.academy-gate{width:min(60vw,94svh)}}
