/* The supplied Grow portrait joins the taller, edge-to-edge game panels. */
:root{--game-card-height:470px}
.home-game-card{height:var(--game-card-height)}
.home-game-card[data-game="grow-farm-garden"] .home-game-art>img{object-position:50% 10%}

/* Store destinations and inline media are shared by the game microsites. */
.game-store-buttons{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.store-badge{display:inline-flex;align-items:center;gap:12px;min-height:62px;padding:10px 19px;background:#090a0d;border:1px solid #ffffff70;border-radius:8px;color:#fff;text-align:left;line-height:1.2;transition:background .18s,border-color .18s}
.store-badge img{width:27px;height:27px;object-fit:contain;filter:brightness(0) invert(1)}
.store-badge small{display:block;font-size:.65rem;font-weight:400;margin-bottom:4px}
.store-badge strong{display:block;font-size:1.2rem;font-weight:600;letter-spacing:-.02em;white-space:nowrap}
.store-badge:hover{background:#272930;border-color:#fff}
.inline-trailer{min-width:0;width:100%}
.inline-player{position:relative;aspect-ratio:16/9;overflow:hidden;background:#08080b;border:1px solid #ffffff30;border-radius:4px}
.inline-player iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.inline-trailer .video-fallback{color:inherit;opacity:.8;font-size:.75rem}
.game-stores-section .wrap{display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center}
.game-stores-section h2{margin-bottom:0}
.game-stores-section .game-store-buttons{justify-content:center}
.screenshot-slider{width:100%;outline-offset:7px;touch-action:pan-y}
.screenshot-slider:focus-visible{outline:2px solid currentColor}
.shot-stage{position:relative;overflow:hidden;background:#080817;border:1px solid #ffffff2b;border-radius:5px}
.shot-slide{margin:0}
.shot-slide>img{width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;user-select:none;-webkit-user-drag:none}
.shot-slide figcaption{padding:14px 68px;text-align:center;font-size:.8125rem;color:#d5d9f1}
.shot-arrow{position:absolute;top:calc(50% - 26px);transform:translateY(-50%);padding:0;width:48px;height:64px;border:0;border-radius:0;background:#080a195e;color:#fff;font:3.1rem/1 Arial,sans-serif;text-shadow:0 2px 10px #000}
.shot-arrow.previous{left:12px}.shot-arrow.next{right:12px}
.shot-arrow:hover{background:#080a19b3}
.shot-counter{font-size:.75rem;letter-spacing:.15em;text-align:center;margin:14px 0 0;color:#c3c9e4}

/* Rasta Santa: blue Lagos nights, red action and warm Christmas lights. */
.theme-rasta{--ink:#fff;--muted:#c5c9e4;--paper:#090c27;--soft:#101431;--line:#ffffff28;background:#090c27;color:#fff}
.theme-rasta main{background:linear-gradient(#090c2700,#090c27 1050px),url('rasta-night-far.jpg') center top/100% auto no-repeat}
.theme-rasta .rasta-night-hero{min-height:660px;background:#06093b}
.theme-rasta .rasta-night-hero .game-hero-bg{object-position:center 55%}
.theme-rasta .rasta-night-hero:after{background:linear-gradient(90deg,#080a36d9 0%,#080a3670 50%,#080a3615),linear-gradient(0deg,#090c27,transparent 45%)}
.theme-rasta .game-hero-copy{padding:125px 0 70px;width:min(640px,65%)}
.theme-rasta .game-hero-copy p:not(.eyebrow){color:#eef0ff}
.theme-rasta .game-hero-logo{max-height:215px;width:410px}
.theme-rasta .game-subnav{background:#070a24e8;border-color:#ffffff26}
.theme-rasta .rasta-awards{padding-block:35px;border:0}
.theme-rasta .rasta-awards img{filter:brightness(0) invert(1)}
.theme-rasta .rasta-awards figcaption{color:#d9def1}
.theme-rasta .rasta-story{background:linear-gradient(#090c27de,#090c27b3),url('rasta-night-near.png') center bottom/cover no-repeat}
.rasta-story-grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);align-items:center;gap:60px}
.rasta-tale{font-family:var(--display);font-size:clamp(2.5rem,3.7vw,4.5rem);line-height:1.05;letter-spacing:0;font-weight:700;max-width:650px}
.rasta-story-grid p{max-width:550px;color:#d6dbef}
.theme-rasta .rasta-shots{background:linear-gradient(#090c27bd,#090c27f2),url('rasta-night-near.png') center/cover no-repeat}
.theme-rasta .feature-box{background:#121735;border-top:2px solid #f44953;border-radius:0 0 5px 5px}
.theme-rasta .feature-box p{color:#c9cfe9}
.theme-rasta .feature-box .index{color:#ff6972}
.theme-rasta .game-stores-section{border-top:1px solid #ffffff20;background:#080b20}
.theme-rasta .cta-band{background:#141931;border-top:1px solid #ffffff20}
.theme-rasta .cta-band .button{background:var(--red);color:#fff}
.theme-rasta .site-footer{background:#070912}

/* Magic Brawl: a neon spellbook and a big, immediately visible trailer. */
.theme-magic{--ink:#f6f0ff;--muted:#c5b7d5;--paper:#100a18;--soft:#1b1027;--line:#ffffff24;background:#100a18;color:#f6f0ff}
.magic-opening{padding:120px 0 45px;background:radial-gradient(ellipse at 50% 60%,#64358366,transparent 72%),#100a18}
.magic-opening>.wrap{max-width:1280px}
.magic-title-row{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:32px}
.magic-title-row .eyebrow{color:#c5f765;margin-bottom:8px;letter-spacing:.2em}
.magic-title-row h1{font-family:var(--display);font-size:clamp(3rem,6vw,6rem);line-height:.9;letter-spacing:.01em;margin:0}
.magic-opening .inline-player{border-color:#825b9c;border-radius:2px;box-shadow:0 0 80px #9e3bba15}
.theme-magic .game-subnav{background:#180f23;border-color:#ffffff25}
.theme-magic .game-subnav a:hover{color:#d4ff83}
.magic-story .eyebrow{color:#d2ff7c}
.magic-story h2{font-family:var(--display);font-size:clamp(3rem,5vw,5rem);letter-spacing:0}
.magic-modes{display:grid;grid-template-columns:1fr 1fr;gap:45px;margin-top:45px}
.magic-modes article{padding:28px 0 0;border-top:2px solid #b278d1}
.magic-modes article:last-child{border-color:#ccf782}
.magic-modes span{color:#cbb0db;font-size:.75rem;text-transform:uppercase;letter-spacing:.12em}
.magic-modes h3{font-size:clamp(1.5rem,2.3vw,2.25rem);margin:18px 0}
.magic-modes p{color:#c5b7d5;max-width:620px}
.magic-screenshots{background:#1a1026}
.magic-screenshots .meta{color:#c9b5d7}
.magic-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.magic-shot{padding:0;aspect-ratio:16/9;border:1px solid #77558c;background:#100a18;overflow:hidden;border-radius:3px;transition:border-color .2s}
.magic-shot:hover{border-color:#d6ff8e}
.magic-shot img{width:100%;height:100%;object-fit:contain}
.theme-magic .game-stores-section{background:radial-gradient(ellipse at center,#49235c66,transparent 70%);padding-block:80px}
.theme-magic .site-footer{background:#07050a}

/* Captain EcoGen: sunny yellow, leaf green and the game's own Tinu artwork. */
.theme-ecogen{--ink:#183e28;--muted:#50634e;--paper:#f6f8eb;--soft:#e6f0ce;--line:#b8cca1;background:#f6f8eb;color:#183e28}
.eco-hero{padding:125px 0 74px;background:linear-gradient(125deg,#f7fadd,#edf5d1 65%,#e0efb5)}
.eco-hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:55px}
.eco-game-brand{display:flex;align-items:center;gap:12px;font-size:.85rem;font-weight:800;letter-spacing:.02em;margin-bottom:32px}
.eco-game-brand img{width:48px;height:48px;border-radius:22%;object-fit:cover}
.eco-hero .eyebrow{color:#527323;font-size:.7rem}
.eco-hero h1{font-family:var(--display);font-size:clamp(3.5rem,5.3vw,6.2rem);line-height:.95;letter-spacing:0;margin:20px 0 26px}
.eco-hero h1 span{color:#4a751a}
.eco-hero-grid>div>p:not(.eyebrow){font-size:1.0625rem;max-width:570px;color:#4c6242;margin-bottom:26px}
.eco-hero-art{transform:rotate(1.5deg);border-radius:20px;background:#ffdc28;box-shadow:9px 13px 0 #2043281c;overflow:hidden}
.eco-hero-art>img{width:100%;height:auto;aspect-ratio:1024/500;object-fit:contain}
.eco-hero-note{padding:25px 30px 15px;color:#304009}
.eco-hero-note span{font-size:.75rem;font-weight:800;letter-spacing:.1em}
.eco-hero-note p{font-size:clamp(1.4rem,2.2vw,2.15rem);font-weight:800;letter-spacing:-.03em;line-height:1.2;margin:10px 0}
.theme-ecogen .store-badge{background:#183e28;border-color:#183e28}
.theme-ecogen .store-badge:hover{background:#305b21;border-color:#305b21}
.theme-ecogen .game-subnav{background:#183e28;color:#fff;border:0}
.theme-ecogen .game-subnav a:hover{color:#dcf598}
.theme-ecogen .eyebrow{color:#527323}
.theme-ecogen h2{font-family:var(--display);font-size:clamp(2.7rem,4.2vw,4.7rem);line-height:1;letter-spacing:0}
.eco-about-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.eco-about-grid p{color:#50634e;max-width:650px}
.eco-gameplay{background:#e6f0ce}
.eco-modes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px}
.eco-mode{padding-top:22px;border-top:2px solid #72933d}
.eco-mode>span{color:#678135;font-size:.75rem;font-weight:700}
.eco-mode h3{font-size:1.45rem;line-height:1.2;margin:16px 0}
.eco-mode p{font-size:.9375rem;color:#49613a;line-height:1.65}
.eco-game-previews{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px;margin-top:32px}
.eco-game-previews figure{margin:0;min-width:0}
.eco-game-previews img{width:100%;max-height:425px;aspect-ratio:9/16;object-fit:contain;object-position:bottom;border-radius:14px}
.eco-game-previews figcaption{font-size:.8rem;text-align:center;color:#49613a;margin-top:15px}
.eco-mission-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px}
.eco-mission-grid>div>p{max-width:600px;color:#50634e}
.eco-mission-copy{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:32px}
.eco-mission-copy article{border-top:1px solid #b8cca1;padding-top:20px}
.eco-mission-copy h3{font-size:1.2rem;margin:14px 0}
.eco-mission-copy p{font-size:.9rem;color:#50634e}
.eco-coming{font-size:.65rem;text-transform:uppercase;letter-spacing:.1em;color:#617d26;font-weight:800}
.eco-availability{font-size:.75rem;margin-top:24px;line-height:1.6}
.eco-phone-pair{display:grid;grid-template-columns:1fr 1fr;gap:25px;align-items:center;padding:30px;background:#e9efdc;border-radius:24px}
.eco-phone-pair figure{margin:0;min-width:0}
.eco-phone-pair img{width:100%;height:auto;border-radius:13px;border:1px solid #b3c792}
.eco-phone-pair figure:last-child{padding-top:55px}
.eco-phone-pair figcaption{font-size:.75rem;text-align:center;line-height:1.5;margin-top:15px}
.eco-impact{background:#183e28;color:#fff}
.eco-impact-grid{display:grid;grid-template-columns:.75fr 1.25fr;align-items:center;gap:90px;max-width:1120px}
.eco-impact figure{margin:0;text-align:center}
.eco-impact figure img{width:100%;max-width:270px;margin:auto;border:1px solid #7f9d5e;border-radius:15px}
.eco-impact figcaption{font-size:.7rem;margin-top:14px;color:#d6e7bb}
.eco-impact .eyebrow{color:#d4f287}
.eco-impact p{max-width:610px;color:#d6e7ce}
.eco-impact .button{background:#d6f57e;color:#20380a;margin-top:14px}
.eco-impact .button:hover{background:#e6ff9c}
.eco-play{background:#f4da37;padding-block:80px}
.eco-play .eyebrow{margin:0;color:#55700f}
.theme-ecogen .site-footer{background:#0e2519;color:#fff}
.theme-ecogen .media-dialog{color:#fff}

@media(max-width:1000px){
 .home-game-card{height:calc(var(--game-card-height) - 20px)}
 .rasta-story-grid{grid-template-columns:1fr;gap:25px}.rasta-tale{max-width:800px}.rasta-story-grid p{max-width:800px}
 .eco-hero-grid{gap:30px}.eco-hero h1{font-size:clamp(3.4rem,6vw,5.2rem)}
 .eco-about-grid,.eco-mission-grid{gap:35px}.eco-phone-pair{gap:15px;padding:20px}
 .eco-modes{grid-template-columns:1fr 1fr;gap:22px 32px}
 .eco-game-previews{gap:18px}.eco-impact-grid{gap:45px}
}
@media(max-width:700px){
 .home-game-card{height:calc(var(--game-card-height) - 30px)}
 .theme-rasta .rasta-night-hero{min-height:660px}.theme-rasta .game-hero-copy{width:100%;padding:110px 0 55px}.theme-rasta .game-hero-logo{width:330px;max-height:200px}.theme-rasta .rasta-night-hero:after{background:linear-gradient(90deg,#080a36cc,#080a364d),linear-gradient(0deg,#090c27,transparent 50%)}
 .rasta-tale{font-size:2.7rem}.shot-arrow{width:36px;height:50px;font-size:2.6rem}.shot-arrow.previous{left:5px}.shot-arrow.next{right:5px}.shot-slide figcaption{padding:12px 42px;font-size:.75rem}
 .magic-opening{padding:105px 0 30px}.magic-title-row{align-items:flex-start;flex-direction:column;gap:22px;margin-bottom:24px}.magic-title-row h1{font-size:4rem}.magic-modes{grid-template-columns:1fr;gap:20px;margin-top:30px}.magic-gallery{grid-template-columns:1fr 1fr;gap:12px}.magic-screenshots .section-title{align-items:flex-start;flex-direction:column;gap:12px}
 .eco-hero{padding:100px 0 55px}.eco-hero-grid,.eco-about-grid,.eco-mission-grid{grid-template-columns:1fr;gap:32px}.eco-game-brand{margin-bottom:24px}.eco-hero h1{font-size:clamp(3.5rem,10vw,5rem)}.eco-hero-art{transform:none;max-width:650px}.eco-hero-note{padding:20px 25px}.eco-game-previews{grid-template-columns:1fr 1fr;gap:28px 18px}.eco-game-previews img{max-height:370px}.eco-mission-copy{gap:20px}.eco-phone-pair{max-width:570px;padding:25px;gap:22px}.eco-impact-grid{grid-template-columns:1fr;gap:32px}.eco-impact-grid>figure{order:2}.eco-impact figure img{max-width:230px}.eco-play{padding-block:55px}
}
@media(max-width:450px){
 .store-badge{padding:10px 12px;gap:9px;min-height:58px}.store-badge strong{font-size:1.05rem}.store-badge img{width:24px;height:24px}.game-store-buttons{gap:10px}
 .magic-gallery{grid-template-columns:1fr;gap:18px}.magic-title-row h1{font-size:3.6rem}
 .eco-modes{gap:18px}.eco-mode h3{font-size:1.2rem}.eco-mode p{font-size:.85rem}.eco-mission-copy{grid-template-columns:1fr;gap:8px}.eco-phone-pair{padding:18px;gap:14px}
}
@media(prefers-reduced-motion:reduce){.store-badge,.magic-shot{transition:none}}
