/* Five scenery choices share the same articulated character and isolated timeline. */
.hero-art.hero-preview{height:auto;overflow:visible;opacity:1;pointer-events:none;--hero-sequence-opacity:1;display:flex;flex-direction:column}
.hero-cinema-stage{position:relative;width:100%;aspect-ratio:1481/1062;order:0}
.hero-preview .journey-illustration{display:block;position:static;width:100%;height:auto;max-width:none;animation:none!important;transform:none!important;opacity:1;filter:none}
.hero-actor{position:absolute;left:28%;top:67%;width:17%;aspect-ratio:1;transform:translate(-50%,-96%);z-index:2;will-change:left,top;isolation:isolate}
.hero-actor .q-mascot{width:100%;height:100%}
.hero-foot-shadow{position:absolute;width:46%;height:10%;left:27%;bottom:0;border-radius:50%;background:#293b286b;filter:blur(3px);z-index:-1}
.hero-actor-label{position:absolute;left:50%;top:102%;transform:translateX(-50%);font-size:10px;font-weight:900;letter-spacing:.1px;background:#fffdf5ed;color:#233b2a;border:1px solid #b7c995;border-radius:20px;padding:3px 10px;white-space:nowrap;box-shadow:0 3px 8px #233b2a16}
.hero-xp-pop{position:absolute;left:50%;top:-18%;transform:translateX(-50%);white-space:nowrap;background:#c6f263;color:#233b2a;font-weight:950;border:2px solid #fff;border-radius:15px;padding:5px 10px;font-size:15px;opacity:0;transition:opacity .3s}
.hero-preview[data-phase="correct"] .hero-xp-pop{opacity:1}
.hero-goal-glow{position:absolute;left:var(--hero-goal-x,59%);top:var(--hero-goal-y,49.5%);width:9%;aspect-ratio:1;transform:translate(-50%,-42%);border:3px solid #dbff9a;border-radius:50%;box-shadow:0 0 26px #9cf758;opacity:0;transition:opacity .5s;z-index:1}
.hero-preview[data-phase="evolved"] .hero-goal-glow{opacity:var(--hero-sequence-opacity)}
.hero-mission-card{position:absolute;right:10%;bottom:65px;width:258px;min-height:155px;background:#fffdf8f5;border:1px solid #cedbbb;border-radius:20px;padding:16px 18px;box-shadow:0 10px 28px #233b2a16;z-index:4;opacity:var(--hero-sequence-opacity)}
.hero-mission-top{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:10px;font-size:9px;font-weight:900;letter-spacing:1.1px;color:#66785a}
.hero-xp-count{color:#385e25;background:#eaf7d1;padding:4px 7px;border-radius:8px;letter-spacing:0;white-space:nowrap}
.hero-mission-title{display:block;color:#233b2a;font-size:17px;line-height:1.2;letter-spacing:-.3px}
.hero-mission-caption{font-size:11px;line-height:1.5;color:#65715f;margin:7px 0 10px;min-height:33px}
.hero-answer{display:flex;gap:8px;align-items:center;font-size:11px;font-weight:800;background:#f1f5e9;padding:8px;border:1px solid #e0e8d4;border-radius:9px;transition:background .3s,border-color .3s}
.hero-answer-icon{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#d8e9b8;color:#355325;flex-shrink:0}
.hero-preview[data-phase="correct"] .hero-answer,.hero-preview[data-phase="evolved"] .hero-answer,.hero-preview[data-phase="travel-next"] .hero-answer{background:#e8f8c6;border-color:#b6d77d}
.hero-mini-progress{height:4px;border-radius:8px;background:#e9eee0;margin-top:11px;overflow:hidden}.hero-mini-progress span{display:block;width:0;height:100%;background:#8bbb40;transition:width .65s}
.hero-preview-note{text-align:center;font-size:10px;color:#66745c;margin:8px 0 0}
.hero-preview-fallback .hero-actor,.hero-preview-fallback .hero-goal-glow{display:none}
.hero-theme-picker{pointer-events:auto;position:relative;z-index:6;width:max-content;max-width:100%;margin:8px auto 0;text-align:center;order:2}
.hero-theme-prompt{display:block;color:#65745d;font-size:10px;font-weight:800;letter-spacing:.7px;margin:0 0 7px}
.hero-theme-options{display:flex;justify-content:center;flex-wrap:wrap;gap:5px;padding:5px;background:#fffdf4ed;border:1px solid #dce5cf;border-radius:18px;box-shadow:0 5px 18px #233b2a08}
.hero-theme-options button{font:inherit;font-size:11px;font-weight:800;color:#49613c;background:transparent;border:1px solid transparent;border-radius:12px;min-height:38px;padding:9px 13px;transition:background .2s,box-shadow .2s;cursor:pointer;touch-action:manipulation}
.hero-theme-options button:hover{background:#edf4e1}
.hero-theme-options button[aria-pressed="true"]{background:#c6f263;color:#233b2a;border-color:#acd64d;box-shadow:0 3px 0 #8fac48}
.hero-theme-options button[data-loading="true"]{box-shadow:inset 0 0 0 1px #7a9b4d}
.hero-theme-status{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.hero-theme-picker[aria-busy="true"] .hero-theme-prompt{opacity:.65}
.hero-vehicle{display:none;position:absolute;left:3%;top:61%;width:94%;height:30%;border-radius:45% 45% 40% 40%;z-index:2;background:linear-gradient(170deg,#ddff8c,#99c73d 50%,#658c28);box-shadow:inset 0 -7px 0 #4d741e,0 4px 5px #233b2a30}
.hero-preview[data-theme="racing"] .hero-vehicle,.hero-preview[data-theme="galaxy"] .hero-vehicle{display:block}
.hero-preview[data-theme="racing"] .hero-actor>.q-mascot,.hero-preview[data-theme="galaxy"] .hero-actor>.q-mascot{transform:translateY(-5%) scale(.77);transform-origin:50% 100%}
.hero-preview[data-theme="racing"] .hero-vehicle:before,.hero-preview[data-theme="racing"] .hero-vehicle:after{content:"";position:absolute;bottom:-9%;left:13%;width:18%;height:53%;background:radial-gradient(ellipse,#9ca5a2 0 23%,#2a3536 26% 65%,#142320 70%);border-radius:45%}
.hero-preview[data-theme="racing"] .hero-vehicle:after{left:auto;right:13%}
.hero-preview[data-theme="racing"] .hero-vehicle i{position:absolute;top:11%;left:43%;width:14%;height:57%;border-radius:3px;background:#fff7dfb0}
.hero-preview[data-theme="galaxy"] .hero-vehicle{height:26%;top:64%;background:linear-gradient(160deg,#f4edff,#b594f3 52%,#7950ad);box-shadow:inset 0 -6px 0 #6c449f,0 6px 15px #b594f36b}
.hero-preview[data-theme="galaxy"] .hero-vehicle:before{content:"";position:absolute;left:20%;top:40%;width:60%;height:60%;border-radius:50%;box-shadow:0 10px 20px #c6f263aa;z-index:-1}
.hero-preview[data-theme="galaxy"] .hero-vehicle:after{content:"";position:absolute;top:-145%;left:17%;width:66%;height:170%;border:2px solid #e6ddffba;border-radius:50% 50% 20% 20%;background:linear-gradient(125deg,#eae2ff22,transparent);z-index:2}
.hero-preview[data-theme="galaxy"] .hero-foot-shadow{opacity:.25}
@media(min-width:681px){.hero-preview .hero-mission-card{bottom:100px}}
.hero-preview .hero-mission-card{order:1}
.hero-preview-note{order:3}
.hero-preview-in-view .whatsapp-float,.hero-preview-in-view .conversion-dock{display:none!important}
@media(min-width:1101px) and (max-width:1239px){.hero-benefit-sticker{right:270px;width:225px;padding:14px;font-size:13px}.hero .hero-copy{max-width:480px}.hero h1{font-size:48px;letter-spacing:-2.4px}.hero .hero-actions{align-items:flex-start;flex-direction:column;gap:20px}}
@media(min-width:1240px) and (max-width:1549px){.hero-benefit-sticker{right:280px}}
@media(min-width:1550px){.hero-benefit-sticker{right:360px}}
@media(max-width:680px){.hero-theme-picker{margin-bottom:6px}.hero-theme-options{gap:2px;padding:4px;max-width:100%}.hero-theme-options button{font-size:10px;min-height:44px;padding:9px 10px}.hero-theme-prompt{font-size:10px}.hero-vehicle{box-shadow:inset 0 -4px 0 #4d741e}.hero-preview[data-theme="galaxy"] .hero-vehicle{box-shadow:inset 0 -4px 0 #6c449f}}
@media(max-width:360px){.hero-theme-picker{width:100%}.hero-theme-options button{flex:0 0 calc((100% - 4px)/3);padding-inline:6px}}
@media(min-width:1101px){.hero-art.hero-preview{top:14px;right:-42px;width:740px}.hero-cinema-stage{margin:0}}
@media(max-width:1100px){.hero-art.hero-preview{position:relative;inset:auto;width:min(680px,100%);margin:0 auto}.hero-mission-card{right:6%;bottom:60px}.hero-preview-note{margin-bottom:10px}}
@media(max-width:680px){.hero-art.hero-preview{width:100%;max-width:580px;margin:0 auto}.hero-mission-card{position:relative;right:auto;bottom:auto;width:calc(100% - 28px);max-width:330px;margin:-17px auto 0;min-height:0;padding:14px 16px}.hero-mission-caption{min-height:17px}.hero-preview-note{font-size:9px;margin:8px 0 12px}.hero-actor{width:20%}.hero-actor-label{font-size:9px;padding:2px 6px}.hero-xp-pop{font-size:11px;padding:4px 7px}.hero-mission-title{font-size:16px}}
@media(prefers-reduced-motion:reduce){.hero-preview *{transition:none!important}}
.motion-off .hero-preview *{transition:none!important}

/* Each universe has its own materials, equipment, feedback and ambient motion. */
.hero-preview{--hero-accent:#6b992e;--hero-soft:#edf7d8;--hero-scene-ink:#29462b}
.hero-preview[data-theme="racing"]{--hero-accent:#d97124;--hero-soft:#fff0dc;--hero-scene-ink:#663514}
.hero-preview[data-theme="galaxy"]{--hero-accent:#9270ed;--hero-soft:#eee7ff;--hero-scene-ink:#4c347f}
.hero-preview[data-theme="climbing"]{--hero-accent:#39879a;--hero-soft:#e4f4f5;--hero-scene-ink:#265661}
.hero-preview[data-theme="territories"]{--hero-accent:#338b74;--hero-soft:#e0f3e9;--hero-scene-ink:#245f4e}
.hero-preview .hero-mission-card{border-top:4px solid var(--hero-accent);min-height:208px}
.hero-preview .hero-mission-label{letter-spacing:.65px;color:var(--hero-scene-ink);line-height:1.4}
.hero-preview .hero-mission-title{min-height:41px}
.hero-preview .hero-mission-caption{min-height:34px}
.hero-preview .hero-answer{min-height:40px}
.hero-preview .hero-answer-icon,.hero-preview .hero-xp-count{background:var(--hero-soft);color:var(--hero-scene-ink)}
.hero-preview .hero-mini-progress span{background:var(--hero-accent)}
.hero-preview .hero-theme-options button[aria-pressed="true"]{background:var(--hero-soft);border-color:var(--hero-accent);color:var(--hero-scene-ink);box-shadow:0 3px 0 var(--hero-accent)}
.hero-preview .hero-actor-label{border-color:var(--hero-accent);color:var(--hero-scene-ink);background:#fffdf5f5}
.hero-preview .hero-goal-glow{border-color:var(--hero-accent);box-shadow:0 0 24px var(--hero-accent)}
.hero-preview[data-theme="galaxy"] .hero-mission-card{background:#241d40f5;border-color:#9170d9;color:#f5efff;box-shadow:0 12px 35px #38255c26}
.hero-preview[data-theme="galaxy"] .hero-mission-title{color:#f5efff}
.hero-preview[data-theme="galaxy"] .hero-mission-caption{color:#d2c5e9}
.hero-preview[data-theme="galaxy"] .hero-mission-label{color:#c3aafa}
.hero-preview[data-theme="galaxy"] .hero-answer{background:#382b53;border-color:#69508c;color:#ede6fa}
.hero-preview[data-theme="galaxy"] .hero-mini-progress{background:#4a3c65}
.hero-vehicle{transform:translateY(var(--hero-ride-rise,0px)) rotate(var(--hero-vehicle-tilt,0deg));transform-origin:50% 75%}
.hero-preview[data-theme="racing"] .hero-vehicle{background:linear-gradient(165deg,#ffe9bc,#ffa746 46%,#d96822);box-shadow:inset 0 -6px 0 #b9561c,0 4px 5px #233b2a30;border-top:3px solid #fff1c3}
.hero-preview[data-theme="racing"] .hero-vehicle i{background:#fff5db;box-shadow:-24px 5px 0 -2px #fff1ba,24px 5px 0 -2px #fff1ba}
.hero-preview[data-theme="racing"] .hero-vehicle b{position:absolute;left:3%;top:-10%;width:94%;height:13%;background:#d86623;box-shadow:0 2px 0 #aa471c;border-radius:5px}
.hero-preview[data-theme="racing"][data-travelling="true"] .hero-foot-shadow{width:60%;left:20%;filter:blur(4px)}
.hero-preview[data-theme="galaxy"] .hero-vehicle b{position:absolute;left:37%;top:80%;width:26%;height:76%;background:linear-gradient(#e8ffb4,#a8e75f99,transparent);clip-path:polygon(15% 0,85% 0,100% 40%,50% 100%,0 40%);z-index:-1;transform-origin:50% 0;animation:hero-thruster .65s ease-in-out infinite alternate;animation-play-state:paused;opacity:.3}
.hero-preview[data-theme="galaxy"][data-travelling="true"] .hero-vehicle b{opacity:1}
.hero-preview[data-theme="galaxy"] .hero-vehicle i{position:absolute;left:16%;top:42%;width:12%;height:14%;border-radius:50%;background:#d7ff9b;box-shadow:23px 0 #d7ff9b,46px 0 #d7ff9b}
.hero-equipment{display:none;position:absolute;z-index:0}
.hero-preview[data-theme="climbing"] .hero-equipment{display:block;left:13%;top:43%;width:23%;height:34%;border:2px solid #396b6c;border-radius:8px;background:linear-gradient(90deg,#2d6870,#74b0ae);box-shadow:inset 0 -5px 0 #2d6870,1px 2px 4px #273b2933}
.hero-preview[data-theme="climbing"] .hero-equipment:before{content:"";position:absolute;left:-30%;top:-12%;width:140%;height:25%;background:#f2b45f;border:2px solid #c88536;border-radius:9px}
.hero-preview[data-theme="climbing"] .hero-equipment:after{content:"";position:absolute;left:-18%;top:40%;width:4%;height:145%;background:#476e72;transform:rotate(14deg);transform-origin:50% 0}
.hero-preview[data-theme="climbing"] .hero-equipment i{position:absolute;left:22%;top:48%;width:62%;height:12%;border-radius:6px;border:2px solid #a7d1c5}
.hero-preview[data-theme="territories"] .hero-equipment{display:block;left:70%;top:42%;width:15%;height:29%;border-radius:4px;background:linear-gradient(90deg,#f9edc5,#d7b97d);border:1px solid #b28b4b;transform:rotate(16deg)}
.hero-preview[data-theme="territories"] .hero-equipment:before,.hero-preview[data-theme="territories"] .hero-equipment:after{content:"";position:absolute;left:-20%;width:140%;height:13%;background:#e7cb8b;border-radius:4px;box-shadow:0 1px 0 #a98245}
.hero-preview[data-theme="territories"] .hero-equipment:before{top:0}.hero-preview[data-theme="territories"] .hero-equipment:after{bottom:0}
.hero-preview[data-theme="territories"] .hero-equipment i{position:absolute;left:25%;top:35%;width:50%;height:30%;border-radius:50%;background:#459981;border:2px solid #fff0bb}
.hero-scenario-effects{position:absolute;inset:0;pointer-events:none;z-index:1}
.hero-scenario-effects>span{display:none;position:absolute}
.hero-scenario-effects i{position:absolute;display:block}
.hero-preview[data-theme="racing"] .hero-start-signal{display:flex;align-items:center;justify-content:space-around;left:19.5%;top:58%;width:7.5%;height:3.3%;padding:2px;border:1px solid #8a7662;border-radius:5px;background:linear-gradient(#414a48,#202a28);box-shadow:0 2px 0 #29362c;transform:rotate(17deg)}
.hero-start-signal i{position:relative;width:20%;aspect-ratio:1;border-radius:50%;background:#a83b2c;box-shadow:inset 1px 1px 2px #ffffff55}
.hero-preview[data-theme="racing"]:not([data-phase="intro"]) .hero-start-signal i{background:#a6dc46;box-shadow:0 0 7px #b8eb61aa}
.hero-preview[data-theme="galaxy"] .hero-orbit{display:block;left:17%;top:30%;width:14%;aspect-ratio:1;animation:hero-orbit 32s linear infinite;animation-play-state:paused}
.hero-orbit i{width:10%;aspect-ratio:1;border-radius:40%;background:linear-gradient(135deg,#c1a8f1,#7762bc);box-shadow:inset -2px -2px 0 #51418155}
.hero-orbit i:nth-child(1){left:0;top:40%}.hero-orbit i:nth-child(2){right:0;top:10%;width:8%}.hero-orbit i:nth-child(3){right:10%;bottom:0;width:13%}
.hero-preview[data-theme="climbing"] .hero-snow{display:block;left:51%;top:12%;width:37%;height:33%;overflow:hidden}
.hero-snow i{width:3px;height:3px;background:#f6fdff;border-radius:50%;box-shadow:0 0 3px #8dc5d799;animation:hero-snow 5s linear infinite;animation-play-state:paused}
.hero-snow i:nth-child(1){left:8%;top:0;animation-delay:-1s}.hero-snow i:nth-child(2){left:23%;top:18%;animation-delay:-3.2s}.hero-snow i:nth-child(3){left:40%;top:8%;animation-delay:-2s}.hero-snow i:nth-child(4){left:60%;top:16%;animation-delay:-4s}.hero-snow i:nth-child(5){left:83%;top:0;animation-delay:-.5s}.hero-snow i:nth-child(6){left:30%;top:30%;animation-delay:-1.8s}.hero-snow i:nth-child(7){left:67%;top:35%;animation-delay:-2.8s}.hero-snow i:nth-child(8){left:93%;top:23%;animation-delay:-3.6s}
.hero-preview[data-theme="climbing"] .hero-summit-flag{display:block;left:70%;top:18%;width:4%;height:7%;border-left:2px solid #8e693b}
.hero-summit-flag i{left:0;top:0;width:100%;height:50%;background:#f99c39;clip-path:polygon(0 0,100% 15%,80% 65%,0 90%);transform-origin:0 50%;animation:hero-flag 2.4s ease-in-out infinite;animation-play-state:paused}
.hero-preview[data-theme="territories"] .hero-region-flags{display:block;inset:0}
.hero-region-flags i{width:3.5%;height:7%;border-left:2px solid #996a37;filter:drop-shadow(0 2px 1px #533d2828);transform-origin:50% 100%;transition:opacity .6s,transform .7s;opacity:.2;transform:scale(.6)}
.hero-region-flags i:after{content:"";position:absolute;top:0;left:0;width:100%;height:48%;background:#41967a;clip-path:polygon(0 0,100% 0,80% 50%,100% 100%,0 100%)}
.hero-region-flags i:nth-child(1){left:31%;top:64%;opacity:1;transform:scale(1)}
.hero-region-flags i:nth-child(2){left:57%;top:40%}.hero-region-flags i:nth-child(2):after{background:#a581da}
.hero-region-flags i:nth-child(3){left:77%;top:21%}.hero-region-flags i:nth-child(3):after{background:#3e977b}
.hero-preview[data-milestone="2"] .hero-region-flags i:nth-child(2),.hero-preview[data-milestone="3"] .hero-region-flags i{opacity:1;transform:scale(1)}
.hero-preview[data-theme="original"] .hero-fireflies{display:block;left:30%;top:46%;width:40%;height:30%}
.hero-fireflies i{width:4px;height:4px;border-radius:50%;background:#d4fa91;box-shadow:0 0 6px #b9ee75;animation:hero-firefly 4s ease-in-out infinite;animation-play-state:paused}
.hero-fireflies i:nth-child(1){left:10%;top:65%}.hero-fireflies i:nth-child(2){left:25%;top:30%;animation-delay:-1s}.hero-fireflies i:nth-child(3){left:52%;top:50%;animation-delay:-2s}.hero-fireflies i:nth-child(4){left:70%;top:0;animation-delay:-3s}.hero-fireflies i:nth-child(5){left:90%;top:30%;animation-delay:-1.6s}
.hero-preview[data-playback="playing"] .hero-scenario-effects *,.hero-preview[data-playback="playing"] .hero-vehicle b{animation-play-state:running}
@keyframes hero-thruster{from{transform:scaleY(.7)}to{transform:scaleY(1.2)}}
@keyframes hero-orbit{to{transform:rotate(360deg)}}
@keyframes hero-snow{from{transform:translate(0,-20px);opacity:0}20%{opacity:.9}80%{opacity:.9}to{transform:translate(10px,90px);opacity:0}}
@keyframes hero-flag{0%,100%{transform:skewY(-4deg) scaleX(1)}50%{transform:skewY(5deg) scaleX(.88)}}
@keyframes hero-firefly{0%,100%{transform:translateY(0);opacity:.2}50%{transform:translateY(-12px);opacity:.8}}
@media(max-width:680px){.hero-preview .hero-mission-card{min-height:218px}.hero-preview .hero-mission-label{font-size:8px}.hero-preview .hero-actor-label{font-size:8px}.hero-snow i{width:2px;height:2px}.hero-region-flags i{border-left-width:1px}}
@media(prefers-reduced-motion:reduce){body:not(.motion-ready) .hero-preview .hero-scenario-effects *,body:not(.motion-ready) .hero-preview .hero-vehicle b{animation:none!important}}
.motion-off .hero-preview .hero-scenario-effects *,.motion-off .hero-preview .hero-vehicle b{animation:none!important}
