/* Game-forward visual layer */
.efl-hero{min-height:720px;color:#fff;background:radial-gradient(circle at 68% 18%,rgba(107,65,224,.32),transparent 34%),radial-gradient(circle at 8% 80%,rgba(24,117,255,.2),transparent 28%),linear-gradient(125deg,#071327 0%,#101a3b 48%,#24134b 100%)}
.efl-hero:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.32;background-image:linear-gradient(rgba(107,132,196,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(107,132,196,.1) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,black,transparent 78%)}
.efl-hero__grid{position:relative;z-index:2;grid-template-columns:.82fr 1.18fr;gap:32px}
.efl-hero h1{font-size:clamp(52px,5.4vw,78px);text-shadow:0 8px 35px rgba(0,0,0,.25)}
.efl-hero h1 span{background:linear-gradient(100deg,#46b5ff,#a46cff 50%,#ff9a3d);-webkit-background-clip:text;background-clip:text}
.efl-hero__content>p{color:#b9c7e5;max-width:560px}
.efl-hero .efl-eyebrow{color:#bfaeff;background:rgba(92,69,181,.2);border-color:rgba(170,143,255,.3);box-shadow:inset 0 0 18px rgba(120,86,255,.12)}
.efl-hero .efl-text-link{color:#92c9ff}
.efl-hero .efl-trust-row{color:#aebdd9}
.efl-hero .efl-button{background:linear-gradient(135deg,#356eff,#8a3ffc 62%,#f26d39);box-shadow:0 0 0 1px rgba(255,255,255,.13),0 15px 40px rgba(71,72,243,.42)}
.efl-hero__visual{height:560px;isolation:isolate}
.efl-hero__visual>.efl-float-card,.efl-hero__visual>.efl-stars{display:none}
.efl-game-keyvisual{position:absolute;inset:0;border-radius:34px;overflow:hidden;background:#101b39;box-shadow:0 35px 90px rgba(0,0,0,.42),0 0 0 1px rgba(148,163,255,.22)}
.efl-game-keyvisual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,18,39,.62) 0,transparent 34%,transparent 72%,rgba(8,12,31,.18)),linear-gradient(0deg,rgba(7,13,31,.45),transparent 38%);pointer-events:none}
.efl-hero-slides{position:absolute;inset:0}
.efl-game-keyvisual .efl-hero-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;opacity:0;transform:scale(1.06);transition:opacity .9s ease,transform 5.8s ease;will-change:opacity,transform}
.efl-game-keyvisual .efl-hero-slide.is-active{opacity:1;transform:scale(1.01)}
.efl-game-hud{position:absolute;z-index:3;color:#fff;background:rgba(8,15,38,.78);border:1px solid rgba(142,169,255,.35);backdrop-filter:blur(14px);box-shadow:0 15px 40px rgba(0,0,0,.3);border-radius:14px}
.efl-game-hud small{display:block;color:#8ea9dc;font:600 9px/1.4 "Fredoka",sans-serif;letter-spacing:1.2px}
.efl-game-hud strong{font-size:14px}
.efl-game-hud--missions{left:18px;top:20px;padding:11px 14px}
.efl-game-hud--missions>span{display:flex;gap:5px;margin-top:8px}
.efl-game-hud--missions i{position:relative;width:25px;height:4px;overflow:hidden;border-radius:5px;background:#34405e}
.efl-game-hud--missions i:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#4b8cff,#a36cff);transform:scaleX(0);transform-origin:left}
.efl-game-hud--missions i.is-active:after{animation:efl-hero-progress 5s linear forwards}
@keyframes efl-hero-progress{to{transform:scaleX(1)}}
.efl-game-hud--player{right:18px;bottom:18px;padding:11px 14px;display:flex;align-items:center;gap:9px}
.efl-game-hud--player b{width:9px;height:9px;border-radius:50%;background:#56ef9a;box-shadow:0 0 14px #56ef9a}
.efl-game-xp{position:absolute;z-index:3;right:22px;top:22px;padding:6px 11px;border-radius:10px;color:#271705;background:#ffb43c;font:700 13px "Fredoka",sans-serif;box-shadow:0 0 22px rgba(255,174,48,.42);transform:rotate(4deg)}
.efl-hero__orb{opacity:.16;filter:blur(12px)}
.efl-section-heading .efl-kicker:before{content:"QUEST LOG";display:block;margin:auto auto 5px;color:#7551e8;font:700 10px "Fredoka",sans-serif;letter-spacing:2px}
.efl-step{overflow:hidden;border-color:#dde3f2}
.efl-step:after{content:"";position:absolute;right:-20px;bottom:-25px;width:90px;height:90px;border:1px solid #e5e9f5;border-radius:50%}
.efl-mission{border-left:4px solid #d7deef}
.efl-mission--active{border-left-color:#7c3aed;box-shadow:0 0 0 1px rgba(124,58,237,.12),0 16px 42px rgba(82,52,170,.13)}
@media(max-width:1050px){.efl-hero__grid{grid-template-columns:1fr 1fr}.efl-hero__visual{height:500px}}
@media(max-width:900px){.efl-hero{min-height:auto}.efl-hero__grid{grid-template-columns:1fr}.efl-hero__visual{height:min(68vw,540px)}}
@media(max-width:620px){.efl-hero{padding-top:45px}.efl-hero h1{font-size:48px}.efl-hero__visual{height:420px}.efl-game-keyvisual{border-radius:24px}.efl-game-hud--missions{left:10px;top:10px}.efl-game-hud--player{right:10px;bottom:10px}.efl-game-xp{right:12px;top:12px}}
@media(prefers-reduced-motion:reduce){.efl-game-keyvisual .efl-hero-slide{transition:none}.efl-game-hud--missions i.is-active:after{animation:none;transform:scaleX(1)}}

/* Unity WebGL game 1 */
.efl-game-stage--unity,.efl-game-stage:has(.efl-unity-container){padding:0;aspect-ratio:16/9;background:#0b1326;overflow:hidden}
.efl-unity-container{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;background:#0b1326}
.efl-unity-container canvas{display:block;width:100%;height:100%;background:#0b1326;touch-action:none;-ms-touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}
.efl-unity-container:fullscreen{width:100vw;height:100vh;aspect-ratio:auto}
.efl-unity-container:fullscreen canvas{width:100%;height:100%}
#efl-unity-loading{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:#fff;background:#14213d}
#efl-unity-loading[hidden]{display:none!important;pointer-events:none!important}
#efl-unity-loading>div{width:min(420px,70%);height:12px;overflow:hidden;border-radius:99px;background:rgba(255,255,255,.2)}
#efl-unity-progress{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#20c9c3,#ffd166)}
#efl-unity-message{position:absolute;left:20px;right:20px;top:20px;z-index:4;padding:10px 15px;border-radius:12px;color:#553500;background:#fff4bf;display:none;pointer-events:none}
#efl-unity-message:not(:empty){display:block}
#efl-unity-message.is-error{color:#fff;background:#c62828}
#efl-unity-fullscreen{position:absolute;right:14px;bottom:14px;z-index:3;border:0;border-radius:12px;padding:9px 14px;color:#fff;background:rgba(15,32,63,.82);cursor:pointer}
