/* The existing Zibbles wordmark, forest atmosphere and Sproutleap artwork. */
:root{--green:#2d5424;--gold:#d5b65d;--lime:#a5eb35;--heading-font:'Bahnschrift SemiCondensed','Arial Narrow','Segoe UI',Arial,sans-serif}
body{background:linear-gradient(#03060585,#030605f2),url('../assets/zibbles-clean-bg.png') center top / cover fixed,#030605}
.site-header{background:linear-gradient(115deg,#162610f5,#060d09f5);border:1px solid #d5b65d77;border-top:0;color:#f4f2df;max-width:1260px;padding:23px 40px}
.brand{gap:22px}.zibbles-logo{display:block;flex-shrink:0}.zibbles-logo img{display:block;width:153px;height:auto}.arcade-home{display:block;border-left:1px solid #d5b65d77;padding-left:22px}.arcade-home b{font:700 21px/1.2 var(--heading-font);letter-spacing:.1px}.arcade-home small{display:block;font-size:10px;font-weight:400;color:#c8d6b5;margin-top:4px;letter-spacing:.3px}
.site-header nav [aria-current]{color:var(--lime);text-decoration-color:var(--gold)}.site-header .back-site{border-color:#d5b65d66;color:#dce9ce}.site-header nav a:hover{color:var(--lime)}
main{background:#f7f6ec;border-inline:1px solid #a9b28744;box-shadow:0 15px 70px #0007}.hero{margin-inline:-40px;padding:62px 40px 56px;background:radial-gradient(ellipse at 70% 65%,#416d2733,transparent 60%),linear-gradient(90deg,#08120fed,#11251382),url('../assets/zibbles-clean-bg.png') center 20% / cover;border-bottom:1px solid var(--gold);color:#f4f2df}.hero h1{font-family:var(--heading-font);font-size:clamp(46px,4.8vw,66px);font-weight:750;letter-spacing:-1.5px;line-height:1.06}.hero h1 em{color:var(--lime);font-family:var(--heading-font);font-style:normal;font-weight:750;letter-spacing:-1.5px}.hero .eyebrow{color:var(--gold)}.hero .eyebrow>span{background:var(--lime)}.hero-copy>p:not(.eyebrow){color:#d7d9c7}.hero-meta{color:#c4d4b1}.hero-art::before{background:radial-gradient(circle,#78bd3633,#1d38140a 68%);border:1px solid #c3e67540}.hero-art .orbit{border-color:#c1d78055}.hero .floating-star{color:#e3ca79;filter:drop-shadow(0 0 15px #a5eb3577)}.floating-note{background:#f6f0d8;border-color:#a79155;color:#2c4725;box-shadow:0 10px 28px #0004}.hero-sticker{background:linear-gradient(145deg,#f1d788,#c8a64a);color:#283a20;box-shadow:3px 4px 0 #82702b66;border:1px solid #efdfa4;bottom:0}.hero-sticker>span{color:#edd07c;filter:drop-shadow(0 0 8px #29472b)}
.zibble-companion{width:320px;height:320px;background:url('../trail/sproutleap-animated.png') 0 0 / 400% 200% no-repeat;position:absolute;left:14%;top:-10px;filter:drop-shadow(0 18px 24px #0007);animation:companion-breathe 4s ease-in-out infinite}.hero-art .note-a{left:0;top:8px}.hero-art .note-b{right:-3px;bottom:100px}.hero-art .hero-sticker{right:10px}
.primary{border-color:#a5bd7480;background:linear-gradient(#58932d,#244d20);box-shadow:inset 0 0 0 1px #c8ec7e25,0 3px 9px #18391415}.primary:hover:not(:disabled){background:linear-gradient(#65a536,#2a5822)}.hero .primary{border-color:var(--gold);box-shadow:0 0 22px #6dc62324}.filters button[aria-pressed=true]{background:#234b21}.level-picker button[aria-pressed=true]{border-color:#77964b;background:#e7efda;box-shadow:0 0 0 1px #77964b}.progress-strip{margin-top:30px;border-color:#bdcda6;background:#e9efdd}.progress-avatar{background:#d9e7c5 url('../trail/sproutleap-animated.png') 0 0 / 400% 200%;border:1px solid #9eb878}.game-card{border-color:#bdad7890;box-shadow:0 4px 14px #454c2007}.game-card:hover{border-color:#92b954;box-shadow:0 10px 24px #465c2b17}.card-copy h3,.game-heading h1,.intro-copy h1,.journey h1,.section-heading h2{font-family:var(--heading-font)}.card-art{border-bottom:1px solid #b9b07655}.game-board{border-color:#bba97780}.session-hud{border-color:#b7c59f}.game-sidebar{border:1px solid #c1cdac;background:#e8efdb}.mini-art{position:relative;min-height:160px;background:radial-gradient(circle,#c9e4a5,#e4edcf);border:1px solid #b2c88f;overflow:hidden}.guide-companion{width:145px;height:145px;background:url('../trail/sproutleap-animated.png') 0 0 / 400% 200% no-repeat;filter:drop-shadow(0 8px 7px #35562630)}.guide-game-symbol{position:absolute;right:5px;bottom:4px;width:55px;height:46px;border-radius:50%;background:#fff9dfdd;border:1px solid #bba46e}.mini-art .guide-game-symbol .game-art{width:55px;height:46px}.game-sidebar .eyebrow{font-size:8px;letter-spacing:1px}.intro-art{border:1px solid #bda55b88}.intro-art::after{content:'ZIBBLES LEARNING ARCADE';position:absolute;bottom:22px;color:var(--accent);font-size:9px;letter-spacing:2px;font-weight:700}.note-companion{display:block;width:75px;height:75px;flex-shrink:0;background:url('../trail/sproutleap-animated.png') 0 0 / 400% 200% no-repeat}.learning-note{padding-top:30px}.badge.earned{border-color:#a6bc7c;box-shadow:0 5px 15px #5578310a}.result-medal.gold{border-color:#b9993f;background:#f0d27c}
footer{background:linear-gradient(100deg,#12200f,#070e08);border:1px solid #d5b65d77;color:#c4cbb8;align-items:center}.footer-logo img{display:block;width:105px;height:auto}footer a:hover{color:var(--lime)}
@keyframes companion-breathe{50%{transform:translateY(-5px)}}
.character-card{display:block;object-fit:contain;height:auto;max-width:100%}.sprite-character{background:url('../trail/sproutleap-animated.png') 0 0 / 400% 200% no-repeat;filter:drop-shadow(0 10px 10px #3f582329)}.card-character{position:relative;z-index:1;width:auto;height:145px;max-width:120px;margin-top:-8px;filter:drop-shadow(0 6px 6px #253b272b)}.sprite-character.card-character{width:160px;height:160px;max-width:none;margin-top:-5px}.card-game-symbol{position:absolute;top:38px;right:16px;background:#fff9e1c9;border:1px solid #beaf7b77;border-radius:50%;width:57px;height:48px;display:grid;place-items:center}.card-art .card-game-symbol .game-art{width:57px;height:48px;top:0}.companion-name{position:absolute;bottom:13px;left:15px;font-size:9px;font-weight:650;color:var(--accent);z-index:1}.intro-character{position:relative;z-index:1;height:310px;width:auto;max-width:230px;filter:drop-shadow(0 14px 13px #2735252e)}.sprite-character.intro-character{width:300px;height:300px;max-width:none}.intro-art p{max-width:100%;font-size:27px;margin-top:25px}.intro-art p small{display:block;font:12px/1.6 'Segoe UI',Arial,sans-serif;margin-top:10px}.quest-description{padding:14px 17px;background:#e9eedc;border-left:3px solid #9baf62;border-radius:0 8px 8px 0;font-size:13px;line-height:1.75;color:#516845}.quest-description strong{display:block;font-size:9px;letter-spacing:1.4px;text-transform:uppercase;color:#385329}.guide-character{height:148px;width:auto;max-width:112px;position:relative;z-index:1;padding:5px}.sprite-character.guide-character{width:145px;height:145px;max-width:none;padding:0}.guide-game-symbol{z-index:2}.companion-reward{display:flex;align-items:center;gap:26px;border:1px solid #afc696;border-radius:14px;background:#eaf0dd;padding:21px 25px;margin:27px 0;text-align:left}.reward-character{height:125px;width:auto;max-width:100px;flex-shrink:0}.sprite-character.reward-character{width:130px;height:130px;max-width:none}.companion-reward .eyebrow{font-size:8px;margin-bottom:10px}.companion-reward h2{font-size:21px;line-height:1.3;letter-spacing:-.5px;margin:0 0 10px}.companion-reward p:not(.eyebrow){font-size:12px;margin:0}.crew-description{font-size:13px}.crew-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:14px}.crew-card{padding:12px 10px;text-align:center;border:1px dashed #c1c9af;background:#edf0e4;border-radius:12px;min-width:0}.crew-card img{display:block;width:100%;height:auto;aspect-ratio:2/3;object-fit:contain;border-radius:4px;filter:grayscale(.8);opacity:.6;margin-bottom:15px}.crew-card h3{font-size:14px;letter-spacing:0;overflow-wrap:anywhere;margin-bottom:6px}.crew-card p{font-size:10px;margin-bottom:12px}.crew-card>span{display:block;font-size:8px;color:var(--muted);margin-bottom:10px}.crew-card a{font-size:10px;font-weight:650}.crew-card.welcomed{border:1px solid #93ad6a;background:#e8efdb}.crew-card.welcomed img{filter:none;opacity:1}.crew-card.welcomed>span{color:var(--green)}.crew-card a:hover{text-decoration:underline}
@media(max-width:1050px){.crew-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.card-game-symbol{right:12px;width:46px;height:43px}.card-art .card-game-symbol .game-art{width:46px;height:43px}}
@media(max-width:850px){.intro-character{height:255px;max-width:175px}.sprite-character.intro-character{height:220px;width:220px}.guide-character{height:145px;max-width:105px}.sprite-character.guide-character{width:125px;height:125px}}
@media(max-width:650px){.card-character{height:119px;max-width:82px;margin-top:-7px}.sprite-character.card-character{width:132px;height:132px}.card-game-symbol{top:36px;right:8px;width:38px;height:33px}.card-art .card-game-symbol .game-art{width:38px;height:33px}.companion-name{left:10px;bottom:9px;font-size:8px}.intro-character{display:block;margin:15px auto 0;height:200px;max-width:140px}.sprite-character.intro-character{width:200px;height:200px}.intro-art p{font-size:22px;margin-top:15px}.intro-art p small{font-size:11px;margin-top:6px}.guide-character{height:146px;width:auto;max-width:95px;padding:5px}.sprite-character.guide-character{width:104px;height:104px;max-width:none}.companion-reward{padding:18px;gap:17px}.reward-character{height:102px;max-width:70px}.sprite-character.reward-character{width:85px;height:85px}.companion-reward h2{font-size:17px}.companion-reward p:not(.eyebrow){font-size:10px}.crew-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.crew-card{padding:14px}.crew-card img{max-height:220px}.crew-card h3{font-size:16px}.crew-card p{font-size:11px}.crew-card>span{font-size:9px}.crew-card a{font-size:11px}.quest-description{font-size:12px;padding:12px 15px}.discovery-scene p>span{font-size:6.5px;letter-spacing:.5px}.discovery-scene p>b{font-size:7px}.orbit-scene .discovery-scene p{flex-wrap:wrap}}
@media(max-width:380px){.card-character{height:138px;max-width:104px}.sprite-character.card-character{width:158px;height:158px}.card-game-symbol{top:39px;right:24px;width:52px;height:45px}.card-art .card-game-symbol .game-art{width:52px;height:45px}.companion-name{left:15px;bottom:10px;font-size:9px}.guide-character{height:125px;max-width:76px}.sprite-character.guide-character{width:82px;height:82px}.companion-reward{padding:16px 13px;gap:13px}.companion-reward h2{font-size:16px}.crew-card{padding:10px}.crew-card h3{font-size:15px}}
@media(max-width:1050px){.brand{gap:16px}.arcade-home{padding-left:16px}.zibbles-logo img{width:130px}.arcade-home b{font-size:19px}.site-header nav{gap:21px}.zibble-companion{left:8%}}
@media(max-width:850px){.site-header{padding:21px 25px}.site-header nav{gap:17px}.hero{margin-inline:-25px;padding:45px 25px 40px}.hero h1{font-size:46px}.hero-art{margin-left:-48px}.zibble-companion{left:10%}.guide-companion{width:128px;height:128px}.mini-art{min-height:155px}.brand{gap:13px}.arcade-home{padding-left:13px}.arcade-home small{font-size:9px}.zibbles-logo img{width:115px}footer{font-size:11px}}
@media(max-width:650px){.site-header{padding:17px 18px;flex-wrap:wrap;gap:16px}.brand{width:100%;justify-content:space-between;gap:18px}.zibbles-logo img{width:142px}.arcade-home{padding-left:18px;border-left:1px solid #d5b65d66;text-align:left;flex:1}.arcade-home b{font-size:20px}.arcade-home small{font-size:9px}.site-header nav{width:100%;justify-content:space-between;gap:20px;font-size:11px}.site-header .back-site{display:inline-block;font-size:10px;border:0;padding:0}.back-site span{margin-left:5px}.hero{margin-inline:-18px;padding:35px 18px 32px;overflow:hidden}.hero h1{font-size:49px}.hero h1 em{font-size:43px}.hero .eyebrow{font-size:9px;letter-spacing:1.8px}.hero-art{height:275px;width:100%;max-width:430px;transform:scale(.88);margin:14px 0 -10px}.zibble-companion{left:6%;width:290px;height:290px;top:-4px}.hero-art::before{top:0;left:14%;width:275px;height:275px}.hero-art .note-a{left:0;top:10px;padding:9px 19px;font-size:31px}.hero-art .note-b{right:-9px;bottom:84px;padding:10px 12px;font-size:15px}.hero-art .hero-sticker{right:0;bottom:0;padding:14px 17px;font-size:13px}.hero-art .floating-star{top:-9px;right:16px;font-size:42px}.progress-strip{margin-top:24px}.mini-art{min-height:180px}.guide-companion{width:104px;height:104px}.mini-art .guide-game-symbol{width:43px;height:38px;right:3px;bottom:6px}.mini-art .guide-game-symbol .game-art{width:43px;height:38px}.intro-art::after{bottom:8px;font-size:7px}.intro-art p{margin-bottom:25px}.note-companion{width:65px;height:65px}.learning-note{gap:13px}footer span:last-child{font-size:9px}.footer-logo img{width:90px}footer{gap:13px}}
@media(max-width:380px){.zibbles-logo img{width:118px}.arcade-home{padding-left:15px}.arcade-home b{font-size:17px}.arcade-home small{font-size:8px;letter-spacing:0}.site-header nav{font-size:10px;gap:10px}.site-header .back-site{font-size:9px}.hero h1{font-size:45px}.hero h1 em{font-size:36px}.hero-art{width:340px;max-width:none;transform:scale(.79);transform-origin:left;margin:12px 0 -38px}.zibble-companion{left:8%;width:280px;height:280px}.hero-art .note-b{right:5px}.hero-art .hero-sticker{right:9px}.guide-companion{width:82px;height:82px}.game-sidebar .eyebrow{font-size:7px;letter-spacing:.7px}.note-companion{width:55px;height:55px}}
@media(prefers-reduced-motion:reduce){.zibble-companion{animation:none}}
