/* Preserve Lato for Latin text; use native fonts for Japanese and Korean glyphs. */
html[lang="ja"] body{font-family:Lato,"Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic",Meiryo,sans-serif}
html[lang="ko"] body{font-family:Lato,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;word-break:keep-all;overflow-wrap:anywhere}
body{line-height:1.8}
h1,h2,h3{letter-spacing:0;line-height:1.4}
.hero-campaign h1{font-size:46px;letter-spacing:0;line-height:1.3}
.hero-campaign h1 .hero-prelude{font-size:20px;line-height:1.65;margin-bottom:20px}
.hero-campaign h1 .headline-ribbon{padding:7px 16px 10px;white-space:nowrap}
.hero-campaign .lead{font-size:17px;line-height:1.85;max-width:470px}
.hero-campaign .hero-eyebrow{letter-spacing:1px;font-size:11px}
.hero-campaign .hero-note{font-size:13px}
.hero-campaign .watch-link{font-size:13px}
h2{font-size:38px;line-height:1.5}
.video-intro-copy h2{font-size:32px;line-height:1.5}
.intro,.video-intro-copy .intro{line-height:1.85}
.header-inner nav{gap:26px;font-size:14px}
.eyebrow,.chapter-label{letter-spacing:.8px;line-height:1.7}
.benefit h3{font-size:23px;line-height:1.5}
.benefit p,.steps p,.teacher-description{line-height:1.85}
.goal-panel h3{font-size:28px;line-height:1.5}
.practice-note .practice-prompt{font-size:23px;line-height:1.7;letter-spacing:0}
.teacher-heading h3{line-height:1.25}
.classroom h2{font-size:36px;line-height:1.5}
.classroom-points h3{line-height:1.5}
.classroom-points p{line-height:1.8}
.steps h3{font-size:23px;line-height:1.5}
.faq-grid .text-link{max-width:100%}
.help-card h3{font-size:24px;line-height:1.5}
@media(max-width:1200px){.hero-campaign h1{font-size:40px}.hero-campaign .hero-copy{max-width:55%}.hero-campaign h1 .hero-prelude{font-size:18px}.header-inner{gap:22px}.header-inner nav{gap:18px;font-size:13px}}
@media(max-width:950px) and (min-width:851px){.hero-campaign h1{font-size:34px}.hero-campaign .lead{font-size:16px;max-width:350px}.hero-campaign .hero-eyebrow{font-size:10px}}
@media(max-width:850px){.hero-campaign .hero-copy{max-width:650px}.hero-campaign h1{font-size:44px}.hero-campaign h1 .hero-prelude{font-size:21px}.hero-campaign .lead{max-width:600px}.hero-campaign .cta-row{display:flex}.hero-campaign .watch-link{margin-top:20px}.benefit h3{font-size:20px}.goal-panel h3{font-size:26px}.video-intro-copy h2{font-size:31px}}
@media(max-width:600px){
 .hero-campaign h1{font-size:clamp(24px,7.7vw,42px)}
 .hero-campaign h1 .hero-prelude{font-size:17px;line-height:1.7;letter-spacing:0}
 .hero-campaign h1 .headline-ribbon{padding:7px 10px 9px;margin-left:4px}
 .hero-campaign .hero-eyebrow{font-size:9px;letter-spacing:.5px}
 .hero-campaign .lead{font-size:16px;line-height:1.85}
 .hero-campaign .hero-note{font-size:12px}
 .hero-media figcaption{font-size:10px;right:12px;padding:9px 10px}
 h2,.classroom h2{font-size:28px;line-height:1.5;letter-spacing:0}
 .video-intro-copy h2{font-size:27px;line-height:1.5;letter-spacing:0}
 .benefit h3{font-size:22px}.goal-panel h3{font-size:24px}
 .practice-note .practice-prompt{font-size:21px}
 .goal-tabs button{font-size:13px}.steps h3{font-size:22px}
 .help-card h3{font-size:22px}.mobile-help{font-size:11px}
 .mobile-action{gap:10px;padding-inline:16px}.mobile-action .button{padding-inline:14px}
 .header-cta{font-size:12px;padding-inline:11px}.menu-toggle{font-size:12px;padding-inline:3px}
 .header-inner nav{font-size:14px;gap:0}
}
@media(max-width:360px){.hero-campaign h1{font-size:25px}.hero-campaign h1 .hero-prelude{font-size:16px}.hero-campaign .button-dark{font-size:13px;padding-inline:16px}.hero-campaign .watch-link{font-size:12px}.hero-campaign .hero-eyebrow{font-size:8px}}
