/* Larger navigation text, with the original colors and clear spacing. */
.nav-wrap nav a{font-size:16px;font-weight:600}.nav-wrap nav{gap:21px}
.layered-scene{position:absolute;inset:0 auto 0 0;width:72%;height:100%;overflow:hidden;pointer-events:none}
.hero-slide:not(.is-active) *{animation-play-state:paused!important}
.nav-wrap .brand-crest{width:64px;height:77px;flex-shrink:0;filter:none;shape-rendering:geometricPrecision}
.nav-wrap .brand-crest path{vector-effect:non-scaling-stroke;stroke-linejoin:miter}
.battle-scene{width:59%;z-index:3}
.battle-vessel{will-change:transform}
.pyramid-temple-float{transform-origin:1060px 475px;animation:pyramid-float 6s ease-in-out infinite alternate;will-change:transform}
.pyramid-material-light{animation:pyramid-surface-light 2.8s ease-in-out infinite alternate}
.pyramid-bow-float{transform-origin:260px 730px;animation:prow-float 5.3s ease-in-out infinite alternate;will-change:transform}
.pyramid-rear-float{transform-origin:1430px 695px;animation:wreck-float 6.1s ease-in-out infinite alternate;will-change:transform}
.pyramid-sky-drift{animation:pyramid-sky-drift 10s ease-in-out infinite alternate}
@keyframes pyramid-float{from{transform:translate(0,-22px) rotate(-.25deg)}to{transform:translate(8px,24px) rotate(.3deg)}}
@keyframes pyramid-surface-light{0%{filter:brightness(.96) saturate(1.04)}60%{filter:brightness(1.13) saturate(1.13)}100%{filter:brightness(1.03) saturate(1.07)}}
@keyframes prow-float{from{transform:translate(-3px,14px) rotate(.45deg)}to{transform:translate(10px,-18px) rotate(-.6deg)}}
@keyframes wreck-float{from{transform:translate(-8px,-16px) rotate(-.45deg)}to{transform:translate(7px,19px) rotate(.5deg)}}
@keyframes pyramid-sky-drift{from{transform:translate(-6px,3px)}to{transform:translate(10px,-8px)}}
.tep-rig{position:absolute;height:99%;width:69%;left:3%;bottom:0;overflow:visible}
.tep-body-motion{transform-origin:570px 700px;animation:tep-breathe 4.8s ease-in-out infinite alternate}
.tep-head-motion{transform-origin:565px 305px;animation:tep-turn 5.3s ease-in-out infinite alternate}
.tep-arm-motion{transform-origin:470px 280px;animation:tep-cast 3.7s ease-in-out infinite alternate}
.tep-fire-motion{transform-origin:355px 325px;animation:tep-fire-lick 1.65s ease-in-out infinite alternate}
@keyframes tep-fire-lick{0%{transform:skewX(-4deg) scale(.96,1.02);opacity:.86}55%{transform:skewX(3deg) scale(1.035,.97);opacity:1}100%{transform:skewX(-1deg) scale(.97,1.07);opacity:.94}}
.tep-aura{animation:tep-aura-pulse 2.8s ease-in-out infinite alternate}
.tep-energy-arcs{transform-origin:550px 700px;animation:tep-energy-orbit 18s linear infinite;opacity:.3}
@keyframes tep-breathe{from{transform:translate(0,7px) rotate(-.35deg)}to{transform:translate(2px,-10px) rotate(.4deg)}}
@keyframes tep-turn{from{transform:rotate(-1.3deg)}to{transform:rotate(1.8deg)}}
@keyframes tep-cast{from{transform:rotate(-3deg)}to{transform:rotate(4deg)}}
@keyframes tep-aura-pulse{from{opacity:.5}to{opacity:.95}}
@keyframes tep-energy-orbit{to{transform:rotate(360deg)}}
@media(max-width:1250px){.nav-wrap .brand-crest{width:52px;height:58px}}
@media(max-width:760px){.nav-wrap .brand-crest{width:45px;height:53px}.battle-scene{width:100%}.tep-rig{width:100%;left:0}}
.astral-cloud-drift{transform-origin:836px 470px;animation:astral-drift 10s ease-in-out infinite alternate}
@keyframes astral-drift{from{transform:translate(-20px,8px) scale(1.02)}to{transform:translate(28px,-18px) scale(1.055)}}
.vessel{transform-box:view-box;will-change:transform}
.empire-vessel{transform-origin:970px 230px;animation:empire-sail 5.8s ease-in-out infinite alternate}
.league-vessel{transform-origin:550px 580px;animation:league-sail 6.6s ease-in-out infinite alternate}
@keyframes empire-sail{from{transform:translate(8px,-7px) rotate(-.6deg)}to{transform:translate(-13px,12px) rotate(.7deg)}}
@keyframes league-sail{from{transform:translate(-5px,9px) rotate(.45deg)}to{transform:translate(10px,-11px) rotate(-.6deg)}}
.vapor{transform-box:fill-box;transform-origin:right center;opacity:0;animation:smoke-billow 4.6s ease-out infinite;animation-delay:var(--delay)}
.green-vapor{animation-duration:5.5s;mix-blend-mode:screen}
@keyframes smoke-billow{0%{transform:translate(0,0) scale(.65);opacity:0}18%{opacity:.85}70%{opacity:.46}100%{transform:translate(-100px,-70px) scale(1.65,1.4);opacity:0}}
.shell-core,.shell-halo{fill:none;stroke-linecap:round;stroke-dasharray:8 110;stroke-dashoffset:9;opacity:0;animation:salvo-flight 3.6s linear infinite;animation-delay:var(--delay)}
.shell-core{stroke:#fff2bc;stroke-width:9;filter:drop-shadow(0 0 5px #fff4b7)}
.shell-halo{stroke:#ff982b;stroke-width:23;filter:blur(6px)}
@keyframes salvo-flight{0%,10%{opacity:0;stroke-dashoffset:9}12%{opacity:1;stroke-dashoffset:9}33%{opacity:1;stroke-dashoffset:-99}35%,100%{opacity:0;stroke-dashoffset:-110}}
.muzzle-light,.impact-light{fill:#ffe9ac;opacity:0;filter:drop-shadow(0 0 13px #ff9600);animation:muzzle-pulse 3.6s linear infinite;animation-delay:var(--delay)}
.impact-light{fill:#ffbf5e;animation-name:impact-pulse}
@keyframes muzzle-pulse{0%,10%,19%,100%{opacity:0}12%{opacity:1}16%{opacity:.4}}
@keyframes impact-pulse{0%,30%,48%,100%{opacity:0}34%{opacity:.85}39%{opacity:.3}}
.gem-breath{mix-blend-mode:screen;animation:gem-pulse 3s ease-in-out infinite alternate}
@keyframes gem-pulse{from{opacity:.28}to{opacity:.95}}
.gem-glint{mix-blend-mode:screen;transform-origin:center;transform-box:fill-box;animation:gem-sparkle 4.5s ease-in-out infinite;opacity:0}
@keyframes gem-sparkle{0%,48%,72%,100%{opacity:0;transform:scale(.25) rotate(0deg)}57%{opacity:.95;transform:scale(1) rotate(8deg)}65%{opacity:.3;transform:scale(.7) rotate(16deg)}}
.tep{background:radial-gradient(ellipse at 27% 45%,#274d34 0%,#142e27 28%,#0a1617 70%)}
.tep-stage{position:absolute;inset:0 auto 0 0;width:72%;height:100%;overflow:hidden}
.tep-figure{position:absolute;height:95%;width:64%;left:6%;bottom:0;object-fit:contain;filter:drop-shadow(0 14px 20px #0008);animation:tep-hover 5s ease-in-out infinite alternate}
.tep-halo{position:absolute;inset:0;background:radial-gradient(ellipse at 34% 35%,#a6d35040,transparent 42%);animation:gem-pulse 3s ease-in-out infinite alternate}
.tep-motes{position:absolute;inset:0;pointer-events:none}
.tep-motes i{position:absolute;left:calc(15% + var(--i)*5%);top:65%;width:4px;height:4px;background:#bfff73;border-radius:50%;box-shadow:0 0 9px #87ff38;animation:float-spark 4s linear infinite;animation-delay:calc(var(--i)*-.47s)}
@keyframes tep-hover{from{transform:translateY(4px)}to{transform:translateY(-8px)}}
@media(min-width:1251px) and (max-width:1480px){.nav-wrap{gap:13px}.nav-wrap nav{gap:14px}.header-actions{gap:7px}.header-actions .login-link,.header-actions .nav-register,.header-actions .nav-download{padding-inline:12px}}
@media(max-width:1250px){.nav-wrap nav{gap:15px}.nav-wrap nav a{font-size:16px}}
@media(max-width:760px){.nav-wrap nav{top:100%}.nav-wrap nav a{font-size:17px;min-height:46px}.layered-scene,.tep-stage{width:100%}.tep-figure{height:100%;width:85%;left:5%}}
@media(prefers-reduced-motion:reduce){.layered-scene *,.tep-stage *{animation:none!important}.vapor,.shell-core,.shell-halo,.muzzle-light,.impact-light,.gem-glint,.tep-motes{display:none}.gem-breath{opacity:.35}}
