/* Three typefaces, with one consistent role for each. Preview only. */
:root{--font-body:"Noto Sans JP",sans-serif;--font-heading:"Shippori Mincho",serif;--font-display:"Cormorant",serif;--ink:#293f4b;--blue:#245e79;--gold:#967036;--line:#dce7e9}
body,button,input,select,textarea{font-family:var(--font-body)}
.lp-wrapper p,.lp-wrapper li,.lp-wrapper summary{line-break:strict;word-break:normal;overflow-wrap:normal}
.voice-body p,.canva-curriculum li p,.travel-first p,.readable-faq details>p{letter-spacing:0;text-align:left;font-kerning:normal}
.editorial-section h2,.editorial-section h3,.canva-curriculum h2,.canva-curriculum h3,.voice-readable h3,.refined-plan h2,.readable-faq h2,.voice-slider h2{font-family:var(--font-heading);font-weight:600;letter-spacing:.015em}
.section-eyebrow,.lesson-number,.strength-number,.heading-number{font-family:var(--font-display)}
.figma-section,.editorial-section,.canva-curriculum{scroll-margin-top:70px}

/* Keep the approved sky and portrait; emphasize words rather than decorations. */
#top .hero-message{top:21%}
#top .hero-message h2{font-family:var(--font-heading);font-size:7.9cqw;font-weight:600;line-height:1.48;letter-spacing:.015em;color:#293f4b;margin-bottom:4.5cqw}
#top .hero-line{display:block;color:inherit;white-space:nowrap}
#top .hero-message .hero-journey{font-size:1.24em;font-weight:700;color:#235976;letter-spacing:.025em}
#top .hero-message h2 em{font-size:1.24em;letter-spacing:.07em;color:#967036;font-weight:700;font-style:normal}
#top .hero-message .hero-particle{font-size:.93em;color:#293f4b;margin-left:.08em}
#top .hero-question{font-size:.95em;letter-spacing:.005em}
#top .hero-message p{font-weight:500;letter-spacing:.02em}

/* Text flows in normal layout so punctuation and photographs cannot collide. */
.editorial-section{padding:48px 26px;color:var(--ink)}
.editorial-heading{text-align:center;margin-bottom:28px}
.editorial-heading .section-eyebrow{font:600 13px/1.4 var(--font-display);letter-spacing:.18em;color:#7d6d50;margin:0 0 12px}
.editorial-heading h2{font:600 clamp(24px,6.5vw,30px)/1.65 var(--font-heading);margin:0;color:var(--ink)}
.editorial-heading h2 em{font-style:normal;color:var(--blue)}
.method-section .editorial-heading h2{font-size:clamp(21px,5.8vw,27px);letter-spacing:0}
.method-section{background:linear-gradient(180deg,#fff 0%,#f1f7f9 100%)}
.method-photos{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 28px}
.method-photos img{display:block;width:100%;height:auto;border:4px solid #fff;box-shadow:0 5px 16px #25485a10}
.method-copy p{font:400 15px/2 var(--font-body);margin:0 0 22px}
.method-copy strong{font-weight:700;color:var(--blue)}
.method-questions{list-style:none;margin:25px 0;padding:4px 20px;background:#fff;border:1px solid var(--line);border-radius:8px}
.method-questions li{display:flex;align-items:center;gap:18px;padding:15px 0}
.method-questions li+li{border-top:1px solid #e8eef0}
.method-questions span{font:500 25px/1 var(--font-display);color:var(--gold)}
.method-questions p{font:500 15px/1.7 var(--font-body);margin:0}
.method-copy .method-conclusion{font:600 22px/1.85 var(--font-heading);margin:30px 0 0;text-align:center}

.strengths-section{background:#f1f7f9;padding-top:48px;padding-bottom:40px}
.editorial-heading .school-label{font:500 12px/1.8 var(--font-body);color:#526d7a;margin:0 0 4px}
.editorial-heading .heading-number{color:var(--blue);font-size:1.6em;line-height:1;vertical-align:-.02em;margin-right:.025em;font-weight:500}
.editorial-heading .section-intro{font:400 14px/1.9 var(--font-body);margin:18px 0 0;color:#526571}
.strength-list{display:grid;gap:24px}
.strength-card{overflow:hidden;border:1px solid var(--line);border-radius:10px;background:#fff}
.strength-card header{display:flex;align-items:center;gap:14px;padding:21px 20px 18px}
.strength-card .strength-number{font:500 30px/1 var(--font-display);color:var(--gold);flex:0 0 auto}
.strength-card h3{font:600 20px/1.6 var(--font-heading);color:var(--blue);margin:0}
.strength-card img{display:block;width:calc(100% - 32px);height:auto;margin:0 16px;border-radius:3px}
.strength-card>p{font:400 15px/1.95 var(--font-body);padding:21px 20px 24px;margin:0;letter-spacing:0}
.strengths-closing{font:600 19px/1.9 var(--font-heading);color:var(--blue);text-align:center;margin:32px 0 0}

.canva-curriculum{background:#fff;padding:44px 26px}
.canva-curriculum header>p{font:600 13px/1.4 var(--font-display);color:#7d6d50;letter-spacing:.16em}
.canva-curriculum h2{font-size:24px;line-height:1.65;color:var(--ink)}
.canva-curriculum h3{font-size:18px;color:var(--blue);line-height:1.65}
.canva-curriculum li p,.travel-first p{font-size:15px;line-height:1.95}
.canva-curriculum li{gap:16px;padding:24px 0}
.canva-curriculum li>div{min-width:0}
.lesson-number{flex:0 0 28px;color:var(--gold)}
.canva-curriculum .lesson-category{font-size:11px;font-weight:500;letter-spacing:.07em;color:#607684;margin-bottom:7px}
.travel-first{border-radius:8px;background:#faf6ee;padding:22px}
@media(max-width:360px){.editorial-section,.canva-curriculum{padding-left:20px;padding-right:20px}.strength-card header{padding-left:16px;padding-right:16px;gap:10px}.strength-card h3{font-size:18px}.method-questions{padding-left:14px;padding-right:14px}.method-questions li{gap:12px}.method-questions p{font-size:14px}.canva-curriculum h2{font-size:22px}}
