.middle-page{--green:#10772d;--green-bright:#e77a2b;--middle-line:var(--orange)}.middle-page .frame__edge{border-color:var(--middle-line)}.middle-page .frame__brand,.middle-page .frame__chapter{color:var(--ink)}.middle-main{padding:var(--frame-top) var(--frame-side) var(--frame-bottom)}.middle-main p{line-height:1.95}.middle-main h2{font:800 clamp(2.4rem,4.6vw,5rem)/1.2 "Zen Kaku Gothic New","Hiragino Sans",sans-serif;letter-spacing:-.05em;margin:.6rem 0 1.8rem;text-wrap:balance}.middle-main h3{line-height:1.6}.m-kicker{font-size:1rem;font-weight:900;letter-spacing:.13em;color:var(--ink)}.m-hero{position:relative;min-height:calc(100svh - var(--frame-top) - var(--frame-bottom));display:flex;align-items:center;background:var(--paper);color:white;overflow:hidden}.m-hero-photo{position:absolute;inset:0}.m-hero-photo img{width:100%;height:100%;object-fit:cover;object-position:65% center}.m-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgb(23 26 25 / .65),transparent 80%)}.m-hero-copy{position:relative;z-index:1;padding:4rem 6vw;max-width:53rem}.m-hero .m-kicker{color:var(--ink)}.m-hero h1{font:800 clamp(3.4rem,6.7vw,7rem)/1.12 "Zen Kaku Gothic New","Hiragino Sans",sans-serif;letter-spacing:-.06em;margin:1.6rem 0}.m-hero h1 em{font-style:normal;color:var(--ink)}.m-lead{max-width:30rem}.m-button{display:inline-block;background:var(--paper);color:#fff;padding:1rem 1.4rem;font-weight:900;text-decoration:none;margin-top:1rem}.m-index{display:flex;flex-wrap:wrap;gap:1rem 2rem;padding:1.6rem 6vw;border-bottom:1px solid var(--middle-line)}.m-index a{font-size:1rem;font-weight:700;text-decoration:none;color:var(--ink)}.m-section{padding:5.5rem 6vw;scroll-margin-top:var(--frame-top)}.m-section header{max-width:52rem}.m-achievement{background:var(--paper)}.m-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:2.5rem 0}.m-stats p{margin:0;padding:1.7rem 1rem;border-top:3px solid #e77a2b;border-bottom:1px solid var(--middle-line);font:800 clamp(1.4rem,2.4vw,2.6rem)/1.6 "Zen Kaku Gothic New","Hiragino Sans",sans-serif;color:var(--ink)}.m-intro{max-width:48rem}.m-flyer{margin:3rem 0;padding:1.5rem 2rem;background:var(--paper);color:white}.m-flyer h3{font:800 clamp(1.5rem,2.8vw,2.8rem)/1.5 "Zen Kaku Gothic New","Hiragino Sans",sans-serif;margin:.7rem 0}.m-flyer p{margin:.5rem 0}.m-table-title{margin-top:2.5rem}.m-results{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 2rem}.m-results li{padding:1.2rem 0;border-bottom:1px solid var(--middle-line);font-weight:700}.m-text-link{display:inline-block;margin-top:1rem;color:var(--ink);font-weight:700}.m-system-intro{display:grid;grid-template-columns:1.2fr .8fr;gap:4rem;align-items:center}.m-system-intro h3{font:800 2rem/1.5 "Zen Kaku Gothic New","Hiragino Sans",sans-serif}.m-system-intro figure{margin:0;padding:.7rem;background:#fff;transform:rotate(2deg);box-shadow:0 1rem 2rem #17231b1c}.m-system-intro img{width:100%;aspect-ratio:4/5;object-fit:cover}.m-system-intro figcaption{font-size:1rem;padding:.7rem .2rem}.m-benefits{padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.m-benefits li{padding:1rem;background:var(--paper);border-left:3px solid #e77a2b;font-size:1rem;line-height:1.7}.m-methods{margin-top:4rem}.m-method{display:grid;grid-template-columns:5rem minmax(0,1fr);gap:2rem;border-top:1px solid var(--middle-line);padding:2.5rem 0}.m-number{font:500 2.8rem "DM Mono",monospace;color:var(--ink)}.m-method h3{font:800 clamp(1.35rem,2.2vw,2rem)/1.5 "Zen Kaku Gothic New","Hiragino Sans",sans-serif;margin:0 0 1rem}.m-method p{max-width:49rem;margin:.8rem 0}.m-test{background:var(--paper)}.m-test-grid{margin-top:3rem}.m-test-grid .m-method:first-child{border-top:3px solid #e77a2b}.m-voices{background:var(--paper);color:#fff}.m-voices .m-kicker{color:var(--ink)}.m-source{font-size:1rem}.m-voice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.3rem;margin-top:3rem}.m-voice-grid blockquote{margin:0;background:var(--paper);color:var(--ink);padding:1.5rem 2rem}.m-voice-grid blockquote span{color:var(--ink);font:800 3rem/1 "Zen Kaku Gothic New","Hiragino Sans",sans-serif}.m-voice-grid p{margin:0;font:700 1.15rem/1.9 "Zen Kaku Gothic New","Hiragino Sans",sans-serif}.m-question{border-top:1px solid var(--middle-line);padding:2rem 0}.m-question h3{display:flex;align-items:baseline;gap:1rem;font-size:1.2rem}.m-question h3 span{font:500 1rem "DM Mono",monospace;color:var(--ink);flex-shrink:0}.m-question div{margin-left:3rem;max-width:50rem}.m-contact{background:var(--paper)}.m-contact .detail-site-nav{border-color:var(--middle-line);margin-top:3rem}.m-contact address{font-style:normal;line-height:1.8;font-size:1rem}.m-contact>p:last-of-type{font-size:1rem}.middle-main>*{min-width:0}.middle-main a,.middle-main p,.middle-main li{overflow-wrap:anywhere}
@media(max-width:899px){.m-hero-copy{padding:3rem 1.25rem}.m-hero h1{font-size:clamp(3rem,12.8vw,5rem)}.m-hero-copy>p:not(.m-kicker){font-size:1rem}.m-hero-photo img{object-position:70% center}.m-hero:after{background:linear-gradient(90deg,rgb(23 26 25 / .65),transparent 80%)}.m-section{padding:3.5rem 1.25rem}.m-index{padding:1.25rem;gap:.8rem 1rem}.m-index a{font-size:1rem}.m-stats{grid-template-columns:1fr;gap:0}.m-stats p{padding:1.2rem 0;font-size:1.7rem;border-top:0}.m-stats p:first-child{border-top:3px solid #e77a2b}.m-flyer{padding:1.25rem}.m-results{grid-template-columns:1fr}.m-system-intro{grid-template-columns:1fr;gap:1.5rem}.m-system-intro h3{font-size:1.6rem}.m-system-intro figure{max-width:26rem;transform:none}.m-system-intro img{aspect-ratio:4/3}.m-benefits{grid-template-columns:1fr}.m-method{grid-template-columns:2.4rem minmax(0,1fr);gap:.8rem;padding:2rem 0}.m-number{font-size:1.65rem}.m-methods{margin-top:2.5rem}.m-method p{font-size:1rem}.m-voice-grid{grid-template-columns:1fr;gap:1rem}.m-voice-grid blockquote{padding:1.3rem}.m-voice-grid p{font-size:1.05rem}.m-question h3{font-size:1.05rem;gap:.65rem}.m-question div{margin-left:0}.m-question p{font-size:1rem}.middle-page .frame__bottom-nav{right:var(--frame-side);justify-content:flex-start}.m-button{font-size:1rem;max-width:100%}}

/* Orange identifies the middle course through rules and numbers, not large fields. */
.middle-page{--green:#10772d;--green-bright:#2fae55}
.middle-page .frame__brand,.middle-page .frame__chapter{color:var(--ink)}
.m-flyer,.m-voices{background:var(--paper);color:var(--ink);border-top:3px solid var(--orange)}
.m-kicker,.m-voices .m-kicker{color:var(--ink);border-left:3px solid var(--orange);padding-left:1rem}
.m-hero .m-kicker{color:#fff}.m-hero h1 em{color:#fff}
.m-number,.m-question h3 span,.m-voice-grid blockquote span{color:var(--orange)}
.m-button{background:var(--green);padding:1rem 2rem;color:#fff}
.m-stats p{color:var(--ink)}
.m-voice-grid blockquote{background:transparent;border-top:1px solid var(--orange)}
.middle-main p{line-height:1.9}.m-method p,.m-question p{font-size:1rem}

.m-hero:after{background:linear-gradient(90deg,rgb(23 26 25 / .65),transparent 80%)}

.m-hero-copy>p,.m-hero h1{color:#fff}.m-hero .m-kicker,.m-hero h1 em{color:#fff}.m-hero .m-button{background:var(--green);color:#fff}

/* FIX5: let the copy set the height; never clip the lead behind the frame. */
.m-hero{height:auto;max-height:none;overflow:visible;align-items:flex-start}
.m-hero:after{background:linear-gradient(90deg,rgb(23 26 25 / .9),rgb(23 26 25 / .78) 65%,rgb(23 26 25 / 0) 100%)}
.m-hero-copy{width:65%;max-width:none;padding:2rem 4vw}
.m-hero h1{font-size:clamp(3rem,5vw,5rem);line-height:1.2}
@media(max-width:899px){.m-hero-copy{width:90%;padding:2rem 1.25rem}.m-hero h1{font-size:clamp(2rem,9vw,3rem)}.m-hero:after{background:linear-gradient(90deg,rgb(23 26 25 / .9),rgb(23 26 25 / .78) 90%,rgb(23 26 25 / 0) 100%)}}
