
:root{--bg:#071018;--ink:#f7fbfa;--muted:#b8c9c8;--gold:#e0ad22;--cyan:#21e3d8;--pink:#ff2e93;--lime:#46ff6a;--card:#061014;--card2:#0b1d20;--line:rgba(224,173,34,.3);--danger:#ff5b70;--success:#46ff9a;--shadow:0 28px 80px rgba(0,0,0,.42)}
*{box-sizing:border-box}body{margin:0;font-family:'DM Sans',sans-serif;background:radial-gradient(circle at 80% 5%,rgba(33,227,216,.10),transparent 28%),radial-gradient(circle at 10% 30%,rgba(255,46,147,.08),transparent 24%),linear-gradient(180deg,#02080d,#071018 55%,#051315);color:var(--ink);min-height:100vh}button{font:inherit}.app-shell{max-width:1180px;margin:0 auto;padding:24px}.topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}.brand{display:flex;gap:12px;align-items:center}.brand-mark{width:50px;height:50px;border:2px solid #fff;border-radius:15px;background:linear-gradient(135deg,var(--gold),#ffd84d 50%,var(--cyan));color:#050505;display:grid;place-items:center;font-weight:1000;box-shadow:6px 6px 0 #000;transform:rotate(-3deg)}.brand-name{font-weight:1000;font-size:20px}.brand-subtitle{font-size:12px;color:var(--cyan);font-weight:800;text-transform:uppercase;letter-spacing:.08em}.stats{display:flex;gap:10px}.stat{background:rgba(6,16,20,.85);border:1px solid var(--line);border-radius:16px;padding:9px 13px;display:grid;grid-template-columns:auto auto;gap:0 6px;align-items:center;box-shadow:0 10px 30px rgba(0,0,0,.18)}.stat strong{font-size:15px}.stat small{grid-column:2;color:var(--muted);font-size:10px;text-transform:uppercase}.screen{display:none}.screen.active{display:block;animation:screenIn .35s cubic-bezier(.2,.8,.2,1)}@keyframes screenIn{from{opacity:0;transform:translateY(10px) scale(.99)}to{opacity:1;transform:none}}
.hero-card{display:grid;grid-template-columns:1.15fr .85fr;min-height:480px;overflow:hidden;border:1px solid rgba(224,173,34,.38);border-radius:32px;background:linear-gradient(135deg,#061016,#071b1d 56%,#10100d);box-shadow:var(--shadow)}.hero-copy{padding:64px}.eyebrow{display:inline-block;color:var(--cyan);font-size:12px;font-weight:1000;letter-spacing:.13em;text-transform:uppercase}.hero-copy h1,.section-heading h2,.lesson-content h2,.complete-card h2{font-family:'Space Grotesk',sans-serif;text-transform:uppercase;letter-spacing:-.045em}.hero-copy h1{font-size:clamp(46px,6vw,82px);line-height:.9;margin:18px 0;color:#fff}.hero-copy h1::first-line{color:var(--gold)}.hero-copy p{color:#dce6e8;font-size:18px;line-height:1.7;max-width:650px}.hero-actions,.completion-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{border:0;border-radius:999px;padding:14px 22px;font-weight:1000;cursor:pointer;transition:.2s ease;text-transform:uppercase;letter-spacing:.03em}.btn:hover{transform:translateY(-3px)}.btn.primary{background:linear-gradient(135deg,var(--gold),#ffd34d 52%,var(--cyan));color:#061014;box-shadow:0 12px 30px rgba(224,173,34,.2)}.btn.ghost{background:rgba(255,255,255,.055);color:#fff;border:1px solid rgba(255,255,255,.2)}.btn.full{width:100%;margin-top:16px}.hero-visual{position:relative;min-height:430px;background:radial-gradient(circle at 70% 22%,#ffd34d 0 8%,transparent 8.5%),linear-gradient(180deg,#00a9b4 0 38%,#e0ad22 38% 55%,#143d2c 55%);overflow:hidden}.sun{position:absolute;width:120px;height:120px;border-radius:50%;background:#ffd34d;right:70px;top:55px;box-shadow:0 0 70px rgba(255,211,77,.55)}.mountain{position:absolute;bottom:42%;width:0;height:0;border-left:170px solid transparent;border-right:170px solid transparent;border-bottom:210px solid #122b31}.m1{left:-60px}.m2{right:-120px;border-bottom-color:#0c2227}.jeep{position:absolute;bottom:52px;left:48%;font-size:62px;animation:drive 3s ease-in-out infinite}@keyframes drive{50%{transform:translateX(24px) rotate(-2deg)}}
.journey-section{padding:58px 0}.section-heading{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:28px}.section-heading h2{font-size:clamp(34px,4vw,62px);line-height:.95;margin:8px 0}.progress-wrap{min-width:260px;color:var(--muted);font-size:13px}.progress-bar,.lesson-progress{height:10px;background:#13272a;border-radius:999px;overflow:hidden;margin-top:9px}.progress-bar div,.lesson-progress div{height:100%;background:linear-gradient(90deg,var(--pink),var(--gold),var(--cyan),var(--lime));transition:.5s ease}.map-path{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.chapter-card{position:relative;min-height:220px;padding:24px;border:1px solid rgba(224,173,34,.26);border-radius:24px;background:linear-gradient(160deg,rgba(255,255,255,.065),rgba(255,255,255,.025));cursor:pointer;transition:.25s ease;overflow:hidden}.chapter-card:before{content:'';position:absolute;inset:auto -30px -45px auto;width:130px;height:130px;border-radius:50%;background:var(--cyan);opacity:.08}.chapter-card:hover{transform:translateY(-8px) rotate(-1deg);border-color:var(--gold);box-shadow:10px 10px 0 #000}.chapter-card.active{border:2px solid var(--gold);box-shadow:0 0 0 5px rgba(224,173,34,.08)}.chapter-card.locked{opacity:.38;cursor:not-allowed;filter:grayscale(.6)}.chapter-num{font-size:11px;font-weight:1000;color:var(--cyan)}.chapter-status{position:absolute;right:18px;top:18px}.chapter-emoji{font-size:46px;margin:25px 0 12px}.chapter-card h3{margin:0 0 6px;font-size:19px}.chapter-card p{margin:0;color:var(--muted);font-size:13px}
.lesson-top{display:grid;grid-template-columns:48px 1fr 70px;gap:16px;align-items:center;margin-bottom:24px}.icon-btn{width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:#07191b;color:#fff;cursor:pointer}.lesson-hearts{text-align:right;font-weight:900}.lesson-card{position:relative;display:grid;grid-template-columns:.75fr 1.25fr;max-width:980px;margin:0 auto;border:1px solid rgba(224,173,34,.34);border-radius:30px;background:linear-gradient(135deg,#061014,#0a1d20);overflow:hidden;box-shadow:var(--shadow)}.combo-pill{position:absolute;right:20px;top:20px;z-index:5;background:#050505;border:2px solid var(--gold);color:var(--gold);border-radius:999px;padding:8px 12px;font-size:12px;font-weight:1000;box-shadow:5px 5px 0 #000}.combo-pill.pop{animation:pop .35s}@keyframes pop{50%{transform:scale(1.2) rotate(-4deg)}}.scene{min-height:560px;display:grid;place-items:center;font-size:130px;background:radial-gradient(circle,var(--gold) 0 14%,transparent 14.5%),linear-gradient(145deg,#00a5af,#0c3c42 55%,#071018)}.lesson-content{padding:54px}.lesson-content h2{font-size:46px;margin:8px 0 12px;color:var(--gold)}.lesson-content>p{color:#d8e3e3;line-height:1.6}.dialogue-box{margin:20px 0;padding:20px;border-left:4px solid var(--cyan);border-radius:0 16px 16px 0;background:rgba(33,227,216,.07);font-size:21px;font-weight:800}.answers{display:grid;gap:10px}.answer{width:100%;text-align:left;padding:15px 17px;border:1px solid rgba(255,255,255,.15);border-radius:15px;background:#0b2023;color:#fff;font-weight:750;cursor:pointer;transition:.16s}.answer:hover:not(:disabled){transform:translateX(7px);border-color:var(--cyan);background:#102a2e}.answer.correct{border-color:var(--lime);background:rgba(70,255,106,.12)}.answer.wrong{border-color:var(--danger);background:rgba(255,91,112,.12)}.feedback{margin-top:14px;padding:14px 16px;border-radius:14px;font-weight:750;animation:feedbackIn .25s ease}.feedback.good{background:rgba(70,255,154,.1);color:#baffd5;border:1px solid rgba(70,255,154,.25)}.feedback.bad{background:rgba(255,91,112,.1);color:#ffc4cc;border:1px solid rgba(255,91,112,.25)}@keyframes feedbackIn{from{transform:scale(.97);opacity:0}.hidden{display:none!important}}
.complete-card{position:relative;max-width:760px;margin:50px auto;text-align:center;padding:64px 50px;border:1px solid rgba(224,173,34,.5);border-radius:34px;background:radial-gradient(circle at top,rgba(224,173,34,.15),transparent 35%),linear-gradient(180deg,#08191b,#061014);box-shadow:var(--shadow);overflow:hidden}.complete-card.celebrate .badge{animation:trophy .65s cubic-bezier(.2,1.6,.4,1)}@keyframes trophy{from{transform:scale(.3) rotate(-18deg);opacity:0}to{transform:none;opacity:1}}.badge{font-size:78px}.complete-card h2{font-size:clamp(42px,6vw,72px);line-height:.92;margin:14px 0;color:var(--gold)}.complete-card>p{color:var(--muted);font-size:17px}.reward-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:30px 0}.reward-grid>div{padding:20px 12px;border:1px solid rgba(255,255,255,.13);border-radius:18px;background:rgba(255,255,255,.04)}.reward-grid span,.reward-grid strong,.reward-grid small{display:block}.reward-grid span{font-size:27px}.reward-grid strong{margin:7px 0;color:#fff}.reward-grid small{color:var(--muted)}.completion-actions{justify-content:center}.next-stop{min-width:280px}.next-hint{font-size:12px!important;color:var(--cyan)!important;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.celebration-burst i{position:absolute;width:10px;height:28px;background:var(--gold);left:50%;top:28%;opacity:0}.celebrate .celebration-burst i{animation:burst .8s ease-out}.celebration-burst i:nth-child(2){background:var(--cyan);transform:rotate(60deg)}.celebration-burst i:nth-child(3){background:var(--pink);transform:rotate(120deg)}.celebration-burst i:nth-child(4){background:var(--lime);transform:rotate(180deg)}.celebration-burst i:nth-child(5){background:var(--cyan);transform:rotate(240deg)}.celebration-burst i:nth-child(6){background:var(--pink);transform:rotate(300deg)}@keyframes burst{0%{opacity:1;translate:0 0}100%{opacity:0;translate:calc(cos(var(--a,45deg))*180px) -160px}}
@media(max-width:850px){.hero-card,.lesson-card{grid-template-columns:1fr}.hero-copy{padding:38px}.hero-visual{min-height:300px}.map-path{grid-template-columns:1fr 1fr}.scene{min-height:250px}.lesson-content{padding:34px}.section-heading{display:block}.progress-wrap{margin-top:18px}.stats .stat small{display:none}}@media(max-width:560px){.app-shell{padding:14px}.topbar{align-items:flex-start}.brand-subtitle{display:none}.stats{gap:5px}.stat{padding:8px}.map-path{grid-template-columns:1fr}.hero-copy h1{font-size:44px}.reward-grid{grid-template-columns:1fr}.lesson-content h2{font-size:36px}.complete-card{padding:46px 22px}.completion-actions{display:grid}.next-stop{min-width:0}}


/* --- V3 immersive Tanzania hero --- */
.immersive-hero{
  position:relative;
  display:block;
  min-height:650px;
  isolation:isolate;
  background:#061014;
  border-color:rgba(33,227,216,.32);
}
.hero-slides,.hero-slide,.hero-shade{position:absolute;inset:0}
.hero-slides{z-index:-3}
.hero-slide{
  opacity:0;
  background-position:center;
  background-size:cover;
  transform:scale(1.04);
  transition:opacity .9s ease,transform 6s ease;
}
.hero-slide.active{opacity:1;transform:scale(1)}
.hero-shade{
  z-index:-2;
  background:
    linear-gradient(90deg,rgba(2,8,13,.97) 0%,rgba(2,8,13,.86) 30%,rgba(2,8,13,.30) 64%,rgba(2,8,13,.12) 100%),
    linear-gradient(0deg,rgba(2,8,13,.75) 0%,transparent 48%);
}
.immersive-hero .hero-copy{
  position:relative;
  z-index:2;
  max-width:660px;
  padding:70px 64px 150px;
}
.immersive-hero .hero-copy h1{
  margin:12px 0 18px;
  font-size:clamp(62px,8vw,112px);
  line-height:.78;
  color:#fff;
  text-shadow:0 8px 28px rgba(0,0,0,.45);
}
.immersive-hero .hero-copy h1 span{color:var(--gold)}
.immersive-hero .hero-copy p{
  max-width:600px;
  font-size:19px;
  line-height:1.55;
  text-shadow:0 2px 12px #000;
}
.hero-stats{
  display:flex;
  width:max-content;
  max-width:100%;
  margin:24px 0 0;
  padding:14px 8px;
  border:1px solid rgba(255,255,255,.17);
  border-radius:18px;
  background:rgba(3,12,16,.72);
  backdrop-filter:blur(14px);
  box-shadow:0 18px 45px rgba(0,0,0,.25);
}
.hero-stats>div{
  min-width:115px;
  padding:0 18px;
  border-right:1px solid rgba(255,255,255,.12);
}
.hero-stats>div:last-child{border-right:0}
.hero-stats strong,.hero-stats span{display:block}
.hero-stats strong{font-size:22px;color:#fff}
.hero-stats span{margin-top:3px;color:var(--muted);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.hero-cta{font-size:16px;padding:17px 28px}
.hero-location{
  position:absolute;
  z-index:3;
  right:28px;
  bottom:34px;
  display:flex;
  gap:12px;
  align-items:center;
  width:min(330px,calc(100% - 56px));
  padding:16px 18px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:18px;
  background:rgba(2,9,13,.78);
  backdrop-filter:blur(14px);
  box-shadow:0 18px 50px rgba(0,0,0,.35);
}
.location-pin{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:rgba(33,227,216,.12);color:var(--cyan);font-size:25px}
.hero-location small,.hero-location strong,.hero-location span{display:block}
.hero-location small{font-size:9px;letter-spacing:.12em;color:var(--muted);font-weight:900}
.hero-location strong{margin:2px 0;color:#fff;font-size:15px}
.hero-location span{color:var(--cyan);font-size:12px}
.hero-arrow{
  position:absolute;
  z-index:4;
  top:50%;
  width:46px;height:46px;
  border:1px solid rgba(255,255,255,.25);
  border-radius:50%;
  background:rgba(2,8,13,.58);
  color:#fff;
  font-size:30px;
  cursor:pointer;
  backdrop-filter:blur(10px);
  transition:.2s;
}
.hero-arrow:hover{transform:scale(1.08);border-color:var(--cyan)}
.hero-arrow.prev{left:18px}.hero-arrow.next{right:18px}
.hero-dots{
  position:absolute;
  z-index:4;
  left:50%;
  bottom:24px;
  display:flex;
  gap:7px;
  transform:translateX(-50%);
}
.hero-dots button{
  width:8px;height:8px;padding:0;border:0;border-radius:99px;
  background:rgba(255,255,255,.55);cursor:pointer;transition:.25s;
}
.hero-dots button.active{width:28px;background:var(--cyan)}
.destination-strip{
  position:relative;
  margin-top:14px;
  padding:14px 18px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.10);
  border-radius:18px;
  background:rgba(6,16,20,.72);
}
.destination-kicker{
  margin-bottom:8px;
  color:var(--gold);
  font-size:10px;
  font-weight:1000;
  letter-spacing:.12em;
}
.destination-marquee{
  display:flex;
  width:max-content;
  gap:10px;
  animation:destinationScroll 34s linear infinite;
}
.destination-marquee span{
  padding:8px 12px;
  border:1px solid rgba(33,227,216,.2);
  border-radius:999px;
  background:rgba(33,227,216,.06);
  color:#dffdfb;
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
}
@keyframes destinationScroll{to{transform:translateX(-48%)}}

/* Chapter cards now feel like destination tiles rather than plain quizzes */
.chapter-card:nth-child(1){background:linear-gradient(180deg,rgba(3,11,15,.22),rgba(3,11,15,.94)),url('assets/kilimanjaro-wildlife.jpg') center/cover}
.chapter-card:nth-child(2){background:linear-gradient(180deg,rgba(3,11,15,.35),rgba(3,11,15,.96)),url('assets/tanzania-safari.jpg') center/cover}
.chapter-card:nth-child(3){background:linear-gradient(180deg,rgba(3,11,15,.32),rgba(3,11,15,.96)),url('assets/serengeti-kilimanjaro.jpg') center/cover}
.chapter-card:nth-child(4){background:linear-gradient(180deg,rgba(3,11,15,.45),rgba(3,11,15,.96)),url('assets/tanzania-safari.jpg') 70% center/cover}
.chapter-card:nth-child(5){background:linear-gradient(180deg,rgba(3,11,15,.40),rgba(3,11,15,.96)),url('assets/kilimanjaro-wildlife.jpg') 80% center/cover}
.chapter-card{min-height:270px;display:flex;flex-direction:column;justify-content:flex-end}
.chapter-card .chapter-num{position:absolute;left:18px;top:18px;padding:7px 9px;border-radius:99px;background:#061014;border:1px solid rgba(33,227,216,.4)}
.chapter-card .chapter-emoji{margin:0 0 12px;font-size:34px}

@media(max-width:850px){
  .immersive-hero{min-height:680px}
  .immersive-hero .hero-copy{padding:54px 34px 190px}
  .hero-stats{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .hero-stats>div{border-right:0;padding:9px 14px}
  .hero-location{left:24px;right:auto;bottom:64px}
  .hero-dots{bottom:24px}
}
@media(max-width:560px){
  .immersive-hero{min-height:730px;border-radius:24px}
  .immersive-hero .hero-copy{padding:42px 22px 210px}
  .immersive-hero .hero-copy h1{font-size:58px}
  .immersive-hero .hero-copy p{font-size:16px}
  .hero-arrow{display:none}
  .hero-location{left:16px;bottom:70px;width:calc(100% - 32px)}
  .hero-stats>div{min-width:0}
}

/* V4 destination-linked showcase */
.destination-strip{padding:18px;overflow:hidden}
.destination-strip-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:13px}
.destination-strip-head p{margin:4px 0 0;color:var(--muted);font-size:12px}
.destination-controls{display:flex;gap:8px}
.destination-controls button{
  width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.05);color:#fff;font-size:24px;cursor:pointer;transition:.2s
}
.destination-controls button:hover{border-color:var(--cyan);color:var(--cyan);transform:translateY(-1px)}
.destination-viewport{overflow-x:auto;scrollbar-width:none;scroll-behavior:smooth;padding-bottom:2px}
.destination-viewport::-webkit-scrollbar{display:none}
.destination-marquee{display:flex;width:max-content;gap:12px;animation:none!important;transform:none!important}
.destination-card{
  position:relative;width:190px;height:122px;overflow:hidden;flex:0 0 auto;padding:0;border:1px solid rgba(255,255,255,.12);
  border-radius:17px;background:#071218;color:#fff;cursor:pointer;text-align:left;box-shadow:0 10px 24px rgba(0,0,0,.18);transition:.24s
}
.destination-card::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05) 25%,rgba(1,7,10,.92) 100%);z-index:1}
.destination-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:.35s}
.destination-card .destination-copy{position:absolute;z-index:2;left:13px;right:12px;bottom:11px}
.destination-card strong,.destination-card span{display:block}
.destination-card strong{font-size:13px;line-height:1.15}
.destination-card span{margin-top:3px;color:#70efe7;font-size:10px}
.destination-card .destination-number{position:absolute;z-index:3;top:10px;left:10px;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:rgba(3,12,17,.78);border:1px solid rgba(33,227,216,.6);color:#fff;font-size:10px;font-weight:900}
.destination-card:hover{transform:translateY(-4px);border-color:rgba(33,227,216,.55)}
.destination-card:hover img{transform:scale(1.06)}
.destination-card.active{border-color:var(--cyan);box-shadow:0 0 0 2px rgba(33,227,216,.12),0 14px 36px rgba(0,0,0,.3)}
.destination-card.active::after{content:"NOW EXPLORING";position:absolute;z-index:4;top:10px;right:10px;padding:5px 7px;border-radius:99px;background:var(--cyan);color:#031014;font-size:8px;font-weight:1000;letter-spacing:.05em}
@media(max-width:700px){
  .destination-strip-head{align-items:flex-start}.destination-strip-head p{display:none}.destination-card{width:158px;height:108px}
}

/* V5 destination imagery + game modes */
.destination-marquee{display:flex;gap:14px;width:max-content;animation:destinationMarquee 32s linear infinite;padding:4px 2px 12px}
.destination-viewport:hover .destination-marquee{animation-play-state:paused}
@keyframes destinationMarquee{0%{transform:translateX(0)}50%{transform:translateX(-24%)}100%{transform:translateX(0)}}
.destination-card{flex:0 0 220px;height:145px}.destination-card img{width:100%;height:100%;object-fit:cover}.destination-card.active{transform:translateY(-4px) scale(1.02)}
.games-section{margin:28px 0 34px}.section-heading.compact{margin-bottom:16px}.section-heading.compact p{max-width:760px;color:var(--muted);margin-top:6px}
.game-mode-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.game-mode-card{position:relative;min-height:190px;padding:22px;text-align:left;border-radius:24px;border:1px solid rgba(255,255,255,.1);background:linear-gradient(145deg,rgba(13,38,42,.96),rgba(4,17,24,.98));color:#fff;overflow:hidden;cursor:pointer;transition:.25s ease}
.game-mode-card:before{content:"";position:absolute;inset:auto -35px -55px auto;width:150px;height:150px;border-radius:50%;background:currentColor;opacity:.08}.game-mode-card:hover{transform:translateY(-5px);border-color:rgba(40,226,220,.5)}
.game-mode-card.story{color:#57df7d}.game-mode-card.word{color:#ffad32}.game-mode-card.match{color:#9d76ff}.game-mode-card.sentence{color:#2ccfe9}.game-mode-card.quiz{color:#ff6c5b}.game-mode-card.speed{color:#e959c5}
.game-mode-icon{display:block;font-size:42px;margin-bottom:18px}.game-mode-card strong{display:block;font-size:1.25rem;color:#fff;margin-bottom:8px}.game-mode-card span:not(.game-mode-icon){display:block;color:#c5d1d4;line-height:1.45}.game-mode-card b{display:inline-block;margin-top:18px;font-size:.86rem;letter-spacing:.08em}
.mini-game-shell{max-width:980px;margin:28px auto;padding:24px}.mini-game-top{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;margin-bottom:18px}.mini-game-top h2{font-size:clamp(1.8rem,4vw,3rem);margin:4px 0 0}
.mini-game-score{display:flex;gap:8px;align-items:center;background:#071c22;border:1px solid #17434a;padding:12px 18px;border-radius:18px;font-size:1.25rem}
.mini-game-board{min-height:460px;border:1px solid #173d43;background:radial-gradient(circle at top right,rgba(30,205,198,.11),transparent 35%),#06171d;border-radius:30px;padding:clamp(24px,5vw,54px)}.mini-game-board h3{font-size:clamp(1.45rem,3vw,2.35rem);max-width:780px;line-height:1.25;margin:26px 0}
.game-round-meta{display:flex;justify-content:space-between;color:#29ded4;font-weight:800;letter-spacing:.1em}.mini-choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.mini-choice,.match-chip,.word-chip{border:1px solid #275057;background:#0a2329;color:#fff;border-radius:18px;padding:18px;font-weight:800;font-size:1rem;cursor:pointer;transition:.2s}.mini-choice:hover,.match-chip:hover,.word-chip:hover{border-color:#2de2d8;transform:translateY(-2px)}
.mini-choice.correct,.match-chip.solved{background:#123b2a;border-color:#46d27a}.mini-choice.wrong{background:#421f27;border-color:#ff6b76}
.mini-game-feedback{margin:15px 0;padding:16px 20px;border-radius:16px;font-weight:800}.mini-game-feedback.good{background:#103829;color:#69e998}.mini-game-feedback.bad{background:#3d2027;color:#ff9098}
.mini-game-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:16px}.match-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.match-grid>div{display:grid;gap:12px}.match-chip.selected{outline:3px solid #22ddd3}
.sentence-drop{min-height:90px;border:2px dashed #2b5a61;border-radius:20px;padding:16px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:18px;color:#80999d}.sentence-drop span{background:#11333a;color:#fff;padding:10px 14px;border-radius:12px}.word-bank{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}
@media(max-width:800px){.game-mode-grid{grid-template-columns:1fr 1fr}.mini-choice-grid,.match-grid{grid-template-columns:1fr}}
@media(max-width:540px){.game-mode-grid{grid-template-columns:1fr}.destination-card{flex-basis:185px}}


/* V6 integrated experience */
.games-shortcut{border-color:rgba(44,226,218,.45)!important}
.play-mode-selector{
  display:flex;gap:10px;flex-wrap:wrap;margin:0 0 18px;
}
.play-mode{
  display:grid;grid-template-columns:auto auto;grid-template-rows:auto auto;column-gap:10px;
  align-items:center;text-align:left;border:1px solid #21444a;background:#071a20;color:#fff;
  border-radius:16px;padding:11px 16px;cursor:pointer;transition:.2s ease;
}
.play-mode span{grid-row:1/3;font-size:25px}.play-mode strong{font-size:.95rem}.play-mode small{color:#8ea7ab}
.play-mode.active{border-color:#2de2d8;box-shadow:0 0 0 2px rgba(45,226,216,.12);background:#0b282e}
.engagement-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 30px}
.engagement-card{display:flex;gap:14px;align-items:center;padding:16px 18px;border-radius:20px;background:#071a20;border:1px solid #173c42}
.engagement-icon{font-size:30px}.engagement-card div{display:grid;gap:2px}.engagement-card small{color:#29ded4;font-weight:800;letter-spacing:.08em}.engagement-card strong{font-size:.95rem}.engagement-card div span{color:#849fa4;font-size:.84rem}
.scene{position:relative;min-height:620px;overflow:hidden}
.scene-context{position:absolute;left:18px;bottom:18px;right:18px;background:rgba(2,14,19,.78);backdrop-filter:blur(9px);border:1px solid rgba(255,255,255,.12);padding:12px 15px;border-radius:14px;color:#fff;font-weight:800;font-size:.86rem;letter-spacing:.02em;text-shadow:none}
.mini-game-visual{height:180px;border-radius:20px;background-size:cover;background-position:center;position:relative;margin:-22px -22px 24px;overflow:hidden}
.mini-game-visual span{position:absolute;left:16px;bottom:14px;background:rgba(3,15,20,.78);border:1px solid rgba(255,255,255,.13);padding:8px 12px;border-radius:999px;font-weight:800;font-size:.78rem}
body[data-play-mode="explorer"] .mini-game-board{border-color:rgba(87,223,125,.45)}
body[data-play-mode="explorer"] .mini-choice,body[data-play-mode="explorer"] .match-chip,body[data-play-mode="explorer"] .word-chip{font-size:1.08rem;padding:20px}
body[data-play-mode="challenge"] .mini-game-board{border-color:rgba(255,173,50,.45);box-shadow:inset 0 0 60px rgba(255,107,32,.04)}
body[data-play-mode="challenge"] .mini-game-score{border-color:#ad7520}
@media(max-width:900px){.engagement-strip{grid-template-columns:1fr}.scene{min-height:420px}}


/* V6 HQ IMAGE FIX — preserve image proportions; never stretch */
.hero-media,
.destination-card,
.scene,
.chapter-image,
.mini-game-visual {
  overflow: hidden;
}

.hero-media img,
.destination-card img,
.chapter-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  aspect-ratio: auto !important;
  transform: none !important;
}

.destination-card img {
  display: block;
  object-position: center 42% !important;
}

.scene,
.mini-game-visual {
  background-size: cover !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
}

/* Prevent card dimensions from forcing source-image distortion */
.destination-card {
  aspect-ratio: 16 / 10;
  height: auto !important;
  min-height: 135px;
}

@media (max-width: 700px) {
  .destination-card {
    aspect-ratio: 4 / 3;
    min-height: 150px;
  }
}


/* V6 HQ2 — real-source image rendering */
.hero-slide {
  background-size: cover !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  image-rendering: auto;
  filter: none !important;
}

.hero-slide.active {
  transform: scale(1.015) !important;
}

.destination-card img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  filter: none !important;
  image-rendering: auto;
}

.destination-card {
  overflow: hidden !important;
}

/* Destination-specific framing so panoramic photos stay visually useful */
.destination-card[data-index="1"] img {
  object-position: center 45% !important;
}
.destination-card[data-index="2"] img {
  object-position: center 50% !important;
}
.destination-card[data-index="4"] img {
  object-position: center 45% !important;
}


/* WordPress theme integration polish */
.sl-game-page{background:radial-gradient(circle at top right,rgba(33,227,216,.10),transparent 32%),#071018;padding:22px 0 70px;}
.sl-game-page .app-shell{max-width:1240px;}
.sl-game-instructions{display:grid;grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr);gap:22px;align-items:stretch;margin:0 0 28px;padding:28px;border:1px solid rgba(33,227,216,.22);border-radius:28px;background:linear-gradient(135deg,rgba(255,255,255,.07),rgba(255,255,255,.025));box-shadow:0 22px 70px rgba(0,0,0,.28)}
.sl-game-instructions h2{margin:8px 0 10px;font-family:'Space Grotesk',sans-serif;font-size:clamp(28px,3.5vw,48px);line-height:.98;color:#fff;letter-spacing:-.04em}
.sl-game-instructions p{margin:0;color:#dce6e8;line-height:1.65;font-weight:650}
.sl-game-how-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.sl-game-how-grid article{display:flex;gap:12px;align-items:flex-start;padding:16px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(255,255,255,.04)}
.sl-game-how-grid strong{flex:0 0 34px;width:34px;height:34px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(135deg,var(--gold),var(--cyan));color:#061014;font-weight:1000}
.sl-game-how-grid span{color:#f7fbfa;font-weight:800;line-height:1.4}
.sl-game-page .topbar{border:1px solid rgba(224,173,34,.22);border-radius:24px;padding:16px;background:rgba(6,16,20,.72)}
.sl-game-page .hero-card,.sl-game-page .lesson-card,.sl-game-page .complete-card,.sl-game-page .mini-game-shell{border-color:rgba(33,227,216,.28)}
@media(max-width:900px){.sl-game-instructions{grid-template-columns:1fr}.sl-game-how-grid{grid-template-columns:1fr}.sl-game-page .topbar{align-items:flex-start;flex-direction:column}.sl-game-page .stats{width:100%;flex-wrap:wrap}.sl-game-page .stat{flex:1}}


/* v7.5.3 learner-facing game polish */
.topbar{justify-content:flex-end}.topbar .brand{display:none!important}.immersive-hero .hero-copy h1{font-size:clamp(42px,7vw,92px);line-height:.86;max-width:720px}.immersive-hero .hero-copy h1 .nowrap{white-space:nowrap;display:inline-block}.hero-copy h1::first-line{color:var(--gold)}.hero-actions .btn{text-align:center}.hero-actions .games-shortcut{width:auto}.btn{letter-spacing:.015em}.eyebrow{letter-spacing:.11em}@media(max-width:850px){.topbar{justify-content:center}.stats{width:100%;justify-content:center}.immersive-hero .hero-copy h1{font-size:clamp(42px,13vw,74px);line-height:.88}.hero-actions{display:grid;grid-template-columns:1fr 1fr}.hero-actions .games-shortcut{grid-column:1/-1;width:100%}}@media(max-width:560px){.immersive-hero .hero-copy h1{font-size:clamp(38px,13vw,58px)}.hero-actions{grid-template-columns:1fr}.hero-actions .btn{width:100%}}
