/* Classroom typography: enlarge text itself while keeping the layout responsive. */
:root{font-size:18px}
.sidebar{width:248px;padding-top:28px;overflow-y:auto}
.page-shell{margin-left:248px}
.brand{margin-bottom:35px}
.brand-sub{font-size:10px;letter-spacing:1.2px;line-height:1.6}
.sidebar-label{font-size:12px;letter-spacing:1px;line-height:1.6}
.nav-item{font-size:17px;gap:11px;padding:15px 13px}
.nav-item .icon{width:21px;height:21px}
.sidebar-grow{min-height:24px}
.sidebar-note{padding:18px 15px;margin-bottom:20px}
.sidebar-note strong{font-size:16px}
.sidebar-note p{font-size:14px;line-height:1.75}
.teacher-link{font-size:15px;white-space:normal;line-height:1.5}
.sidebar-bottom strong{font-size:15px}
.sidebar-bottom small{font-size:13px;line-height:1.5}
.avatar{width:38px;height:38px;font-size:17px;flex-shrink:0}
.topbar{height:auto;min-height:92px;padding-top:16px;padding-bottom:16px;gap:16px}
.breadcrumb{font-size:14px;line-height:1.6;flex-wrap:wrap;gap:8px}
.top-actions{flex-shrink:0}
.grade-switch button{font-size:16px;padding:10px 16px}
.icon-button{width:38px;height:38px}
.icon-button .icon{width:22px;height:22px}
.intro{margin-bottom:30px;align-items:center}
.intro h1{font-size:32px;line-height:1.4;margin-bottom:9px}
.intro p{font-size:18px;line-height:1.6}
.eyebrow,.intro .eyebrow,.section-heading .eyebrow{font-size:12px;letter-spacing:1.1px;line-height:1.6}
.quiet-button,.intro>.quiet-button{font-size:15px;padding:12px 16px;line-height:1.5}
.quiet-button .icon{width:18px;height:18px}
.hero{min-height:420px}
.hero-copy{padding:36px 0 32px 34px;width:57%}
.hero-tag{font-size:12px;line-height:1.7;letter-spacing:.8px;max-width:390px}
.hero h2{font-size:clamp(46px,4.1vw,64px);line-height:1.09;margin:20px 0}
.hero p{font-size:18px;line-height:1.75;margin-bottom:24px}
.primary-button,.hero-cta{font-size:16px;padding:14px 20px;line-height:1.4}
.hero-caption{font-size:14px;gap:11px;flex-wrap:wrap;line-height:1.6;margin-top:19px}
.hero-scene{min-height:390px;min-width:245px}
.mascot{top:38px}
.orbit-one{top:55px}
.orbit-two{top:33px}
.chip-code{top:72px}
.chip-number{top:83px}
.scene-label{font-size:12px;bottom:30px;padding:10px 13px}
.journey-strip{padding:22px;gap:16px;flex-wrap:wrap}
.journey-title{min-width:230px}
.journey-title strong{font-size:16px;line-height:1.5}
.journey-title>span{font-size:14px;line-height:1.6;display:block}
.journey-progress{min-width:170px}
.journey-progress>div{font-size:13px}
.journey-progress strong{font-size:18px}
.journey-progress small{font-size:13px}
.xp-pill{font-size:14px;line-height:1.5}
.section-heading h2{font-size:29px;line-height:1.4}
.section-heading>p{font-size:15px;line-height:1.6;max-width:330px}
.count-pill{font-size:13px;padding:6px 10px}
.filter-row{gap:7px;margin-bottom:24px}
.filter-button{font-size:15px;padding:11px 13px;line-height:1.5}
.filter-button .icon{height:18px;width:18px}
.mission-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.card-top{padding:16px 17px 0;min-height:62px;flex-wrap:wrap;align-content:center;gap:8px}
.week-label{font-size:25px}
.week-label>span{font-size:12px;letter-spacing:.5px}
.card-state{font-size:12px;line-height:1.5}
.card-state .icon{width:19px;height:19px}
.card-visual{height:112px}
.category-label{font-size:12px;letter-spacing:1px;line-height:1.6}
.card-content{padding:19px 17px}
.card-content h3{font-size:21px;line-height:1.4;margin:10px 0}
.card-content p{font-size:16px;line-height:1.7}
.card-footer{font-size:14px;padding:14px 17px;flex-wrap:wrap;gap:9px;line-height:1.5}
.card-footer .icon{width:16px;height:16px}
.wonder-card{padding:25px;gap:20px}
.wonder-card .eyebrow{font-size:12px}
.wonder-card h3{font-size:21px;line-height:1.5}
.wonder-card p{font-size:16px;line-height:1.6}
.site-footer{font-size:12px;line-height:1.6}
.lesson-top .text-button,.text-button{font-size:15px;line-height:1.5}
.lesson-position{font-size:13px}
.lesson-heading{gap:20px;padding:28px}
.lesson-heading .eyebrow{font-size:12px;line-height:1.6}
.lesson-heading h1{font-size:32px;line-height:1.3;margin-bottom:10px}
.lesson-heading p{font-size:17px;line-height:1.7}
.timer-button{font-size:15px;padding:12px 14px;line-height:1.5}
.timer-button .icon{width:20px;height:20px}
.lesson-layout{grid-template-columns:minmax(0,1fr) 290px;gap:22px}
.level-bar{padding:17px;flex-wrap:wrap}
.level-tabs{flex-wrap:wrap;gap:5px}
.level-tabs button{font-size:15px;line-height:1.5;padding:10px}
.level-tabs button>span{font-size:13px;width:23px;height:23px}
.level-status{font-size:13px}
#game-host{padding:24px}
.goal-card .eyebrow{font-size:12px}
.goal-card h3{font-size:21px;line-height:1.55}
.goal-card p{font-size:16px;line-height:1.7}
.hint-card summary{font-size:16px;line-height:1.5}
.hint-card p{font-size:16px;line-height:1.7}
.reflection-card .eyebrow{font-size:12px}
.reflection-card h3{font-size:18px;line-height:1.6}
.reflection-card textarea{font-size:17px;line-height:1.7;min-height:125px}
.reflection-card small{font-size:14px;line-height:1.6}
.teacher-small{font-size:14px;line-height:1.6}
.teacher-small .icon{width:18px;height:18px}
.discovery-result strong{font-size:18px;line-height:1.5}
.discovery-result p{font-size:15px;line-height:1.6}
.discovery-result .text-button{font-size:15px}
.workshop-card h2{font-size:29px}
.workshop-card>p{font-size:18px;line-height:1.7}
.workshop-links .quiet-button{font-size:16px;line-height:1.6}
.badge-card{padding:27px 20px}
.badge-card h2{font-size:21px;line-height:1.5}
.badge-card p{font-size:16px;line-height:1.7}
.badge-note{font-size:16px;line-height:1.7}
.dialog-top h2{font-size:29px;line-height:1.4}
.dialog-lead{font-size:17px;line-height:1.6}
.teacher-timing strong{font-size:18px;line-height:1.6}
.teacher-timing p,.teacher-week p{font-size:17px;line-height:1.8}
.teacher-timing small{font-size:15px;line-height:1.7}
.teacher-week summary{font-size:17px;line-height:1.6}
.teacher-week h3{font-size:23px;line-height:1.5}
.help-content p{font-size:18px;line-height:1.8}
#toast{font-size:16px;line-height:1.6;left:calc(50% + 124px)}
@media(min-width:1650px){.mission-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1400px){.lesson-layout{grid-template-columns:minmax(0,1fr)}.lesson-aside{grid-template-columns:1fr 1fr}.goal-card{grid-row:span 2}.reflection-card,.teacher-small{grid-column:1 / -1}.level-status{display:block}}
@media(max-width:1250px){.sidebar{width:240px;padding-left:15px;padding-right:15px}.page-shell{margin-left:240px}.hero h2{font-size:48px}.hero-copy{padding-left:28px}.hero-tag{font-size:11px;max-width:330px}.hero-scene{min-width:230px}.hero p{font-size:17px}.journey-progress{margin-left:0}.xp-pill{border:0}#toast{left:calc(50% + 120px)}}
@media(max-width:1100px){.mission-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar{padding-left:25px;padding-right:25px}.breadcrumb{font-size:13px}.hero-copy{width:56%}.hero h2{font-size:44px}.hero p br{display:none}.hero-scene{min-width:215px}.hero-caption{font-size:13px}.scene-label{font-size:11px}.section-heading{align-items:flex-start}.section-heading>p{max-width:230px}.intro{flex-wrap:wrap}.intro h1{font-size:29px}}
@media(max-width:900px){.breadcrumb{display:none}.topbar{justify-content:flex-end}.hero{flex-direction:column}.hero-copy{width:100%;padding:30px 28px 0}.hero-tag{max-width:none}.hero h2{font-size:51px}.hero p{font-size:18px;max-width:520px}.hero-scene{min-height:290px;width:100%;max-width:360px;align-self:center}.mascot{width:320px;height:285px;top:-3px}.orbit-one{width:240px;height:240px;top:8px}.orbit-two{width:280px;height:280px;top:-10px}.chip-code{top:35px;left:7%}.chip-number{top:42px;right:8%}.chip-binary{left:9%;bottom:51px}.scene-label{bottom:18px}.intro>div{min-width:0}.journey-title{min-width:180px}}
@media(max-width:780px){.sidebar{position:relative;width:100%;padding:18px 22px 0;overflow:visible}.page-shell{margin-left:0}.brand{margin-bottom:20px}.brand-sub{font-size:10px}.nav-item{font-size:16px;padding:13px 12px}.main-nav{justify-content:space-between;gap:5px}.topbar{min-height:80px;padding:15px 22px}.breadcrumb{display:flex;font-size:13px}.hero{flex-direction:row}.hero-copy{width:57%;padding:32px 0 30px 28px}.hero h2{font-size:44px}.hero p{font-size:17px}.hero-scene{width:auto;min-height:360px;min-width:215px;max-width:none;align-self:auto}.mascot{width:285px;height:300px;top:30px}.orbit-one{width:230px;height:230px;top:45px}.orbit-two{width:265px;height:265px;top:28px}.chip-code{left:0;top:59px}.chip-number{right:0;top:64px}.scene-label{bottom:30px}.hero-tag{max-width:300px}#toast{left:50%}.section-heading>p{display:none}}
@media(max-width:600px){.mission-grid{grid-template-columns:1fr}.card-top{min-height:60px}.card-visual{height:105px}.card-content h3{font-size:23px}.card-content p{font-size:17px}.card-content{padding:20px}.card-footer{font-size:15px;padding:15px 20px}.card-state{font-size:13px}.card-mini-spark{right:35%}.card-mini-dot{left:35%}.hero{flex-direction:column}.hero-copy{width:100%;padding:28px 25px 0}.hero h2{font-size:49px}.hero p{font-size:18px}.hero-tag{font-size:11px;max-width:none}.hero-scene{width:100%;min-height:280px;max-width:350px;align-self:center}.mascot{top:-9px;width:305px;height:280px}.orbit-one{top:7px;width:230px;height:230px}.orbit-two{top:-10px;width:270px;height:270px}.chip-code{top:28px;left:9%}.chip-number{top:34px;right:8%}.chip-binary{bottom:48px;left:9%}.scene-label{bottom:15px}.hero-caption{font-size:14px}.hero-cta{font-size:17px}.breadcrumb{display:none}.topbar{justify-content:center;min-height:80px}.top-actions{width:100%;gap:8px}.grade-switch{margin-right:auto}.grade-switch button{font-size:16px;padding:10px 18px}.nav-item{font-size:14px;padding:13px 9px;gap:6px}.nav-item .icon{width:18px;height:18px}.intro{display:block}.intro>div{min-width:0}.intro h1{font-size:28px}.intro p{font-size:17px}.intro>.quiet-button{margin-top:16px;font-size:15px}.intro .eyebrow{font-size:12px}.section-heading h2{font-size:28px;gap:9px}.section-heading .eyebrow{font-size:11px}.filter-button{font-size:14px;padding:10px 11px}.filter-button .icon{width:17px;height:17px}.journey-title{min-width:0}.journey-title strong{font-size:16px}.journey-title>span{font-size:14px}.journey-progress{min-width:160px}.xp-pill{font-size:14px}.wonder-card{padding:21px 18px;align-items:flex-start}.wonder-card .eyebrow{font-size:11px}.wonder-card h3{font-size:20px}.wonder-card p{font-size:16px}.wonder-icon{margin-top:8px}.site-footer{font-size:12px}.lesson-heading{padding:21px 18px;gap:15px}.lesson-heading h1{font-size:28px}.lesson-heading p{font-size:17px}.lesson-heading .eyebrow{font-size:11px}.lesson-symbol{width:48px;height:48px}.timer-button{font-size:15px;margin-left:0}.lesson-heading>div:nth-child(2){flex-basis:calc(100% - 65px)}.level-bar{padding:13px 10px}.level-tabs{gap:4px;width:100%;justify-content:space-between}.level-tabs button{font-size:14px;padding:9px 5px;gap:5px}.level-tabs button>span{font-size:12px;height:21px;width:21px}.level-status{font-size:13px}.lesson-aside{grid-template-columns:1fr}.goal-card{grid-row:auto}.reflection-card,.teacher-small{grid-column:auto}.goal-card h3{font-size:21px}.goal-card p{font-size:16px}.reflection-card textarea{font-size:17px}.discovery-result .text-button{font-size:15px}.badge-grid{grid-template-columns:1fr}.badge-card h2{font-size:23px}.badge-card p{font-size:17px}.badge-card .category-label{font-size:12px}.badge-note{font-size:16px}.teacher-timing p,.teacher-week p{font-size:17px}.help-content p{font-size:17px}.dialog-top h2{font-size:26px}#game-host{padding:17px}}
