/* Each chapter has a finite viewport budget. Overflow remains accessible on
   short screens and at enlarged text sizes; it never enlarges the chapter. */
:root{--chapter-top:110px;--chapter-bottom:28px}
main>section,main>.section,main>.free-tool,main>.join-section{height:100svh;min-height:0;max-height:100svh;padding-top:var(--chapter-top);padding-bottom:var(--chapter-bottom);overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:#a9b1b4 transparent;scroll-snap-align:start;scroll-snap-stop:always;align-content:center}
main>.cinema-hero{padding-top:108px;padding-bottom:20px;overflow-y:auto}
main>.section h2,.membership h2{font-size:clamp(28px,3vw,42px);line-height:1.3}
main .section-heading,.membership .section-heading{margin-bottom:22px;gap:24px}
main .section-heading .eyebrow{margin-bottom:12px}
main .section-heading>p{font-size:12px;line-height:1.7;margin:0}
main>.membership{display:block;padding:var(--chapter-top) 0 var(--chapter-bottom)}
.membership>.section{padding:0}
.chapter-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}
.chapter-tabs button{border:1px solid #18262f15;background:transparent;border-radius:99px;padding:10px 20px;font-size:13px;color:#68767d;cursor:pointer;transition:background .2s,color .2s}
.chapter-tabs button[aria-selected=true]{background:#182c38;border-color:#182c38;color:white}
.chapter-tabs button:focus-visible{outline:2px solid #ec5535;outline-offset:3px}
.focus-panels{display:block}
.focus-card{background:#f6f5f0;border:1px solid var(--line);border-radius:20px;padding:clamp(22px,3vw,40px);min-height:260px;display:grid;grid-template-columns:1fr 1fr;column-gap:60px;align-content:center}
.focus-card[hidden],.faq-list details[hidden]{display:none!important}
.focus-card .card-top,.focus-card>.eyebrow{grid-column:1/-1;margin-bottom:12px}
.focus-card h3{font-size:clamp(24px,2.8vw,36px);line-height:1.4;margin:0;grid-column:1;grid-row:2/4}
.focus-card>p,.focus-card>ol{font-size:14px;line-height:1.9;color:#68767d;grid-column:2;margin:0 0 14px;max-width:600px}
.focus-card .growth-principles{grid-column:2;font-size:13px;gap:4px;margin:0 0 12px}.growth-principles span{padding-top:6px}
.focus-card .card-bottom,.focus-card>.text-link{grid-column:1/-1;margin-top:12px;justify-self:stretch;font-size:11px;line-height:1.7}
.focus-card>.text-link{justify-self:start}
main .scope-note{margin:14px 0 0;font-size:10px;line-height:1.7}
#paths{display:flex;flex-direction:column;justify-content:center}
#paths .section-heading{flex:none}
#paths .path-tabs{flex:none}
#paths .path-tabs button{padding:12px 0}
#paths .path-panel{min-height:0;padding:26px 34px;gap:42px;flex:none}
#paths .path-panel h3{font-size:26px;line-height:1.4;margin:0 0 10px}
#paths .path-panel .eyebrow{margin-bottom:10px}
#paths .path-panel p{font-size:12px;line-height:1.75;margin:8px 0}
#paths .path-right{padding-left:30px}
#paths .path-big{font-size:56px;line-height:1.1}
#paths .path-right ul{line-height:2;margin:10px 0;font-size:12px}
#paths .institution{padding:16px 0;gap:16px;flex:none}
#paths .institution h3{font-size:14px;margin-bottom:5px}
#paths .institution p{font-size:11px}
#community{display:flex;flex-direction:column;justify-content:center}
#community .community-grid{display:block}
#join .join-grid{gap:65px;align-items:center}
#join h2{font-size:clamp(30px,3.6vw,45px);line-height:1.35}
#join .eyebrow{margin-bottom:16px}
#join .join-steps{margin-top:22px}
#join .join-steps li{margin-bottom:16px}
#join .price-card{padding:26px 32px}
#join .price{font-size:64px;margin-top:18px}
#join .price-rule{margin:16px 0}
#join .price-card .button{margin:12px 0}
#questions{align-items:center;gap:50px}
#questions summary{padding:15px 0;line-height:1.6;font-size:13px}
#questions details p{font-size:12px;line-height:1.85;margin-bottom:16px}
.faq-pagination{display:flex;align-items:center;justify-content:space-between;margin-top:22px;font-size:12px;color:#66757d}
.faq-pagination button{border:1px solid var(--line);background:none;padding:9px 15px;border-radius:99px;font-size:12px}
.faq-pagination button:disabled{opacity:.35;cursor:default}
main>#closing{height:calc(100svh - 140px);min-height:0;max-height:none;padding-top:100px;padding-bottom:30px}
@media(min-width:761px) and (max-height:760px){:root{--chapter-top:100px;--chapter-bottom:20px}main .section-heading{margin-bottom:16px}main>.section h2,.membership h2{font-size:29px}#paths .section-heading h2 br{display:none}#paths .path-panel{padding:20px 28px}#paths .path-panel h3{font-size:23px}#paths .institution{padding:12px 0}.focus-card{padding:22px;min-height:220px}.cinema-copy h1{font-size:48px}.cinema-copy .community-badge{margin-bottom:14px}.cinema-description{margin-top:12px}.hero-bottom{margin-top:18px}.direction-bar{padding:15px 12px}.slogan-english{margin-top:10px}.hero-cta{margin-top:15px}}
@media(max-width:760px){:root{--chapter-top:94px;--chapter-bottom:24px}main>.section,main>.free-tool{align-content:start}main>.cinema-hero{padding-top:95px}main .section-heading{display:block;margin-bottom:17px}main>.section h2,.membership h2{font-size:29px;line-height:1.35}main .section-heading>p{margin-top:12px;font-size:11px}main .section-heading h2 br{display:none}.chapter-tabs{gap:6px;margin-bottom:13px}.chapter-tabs button{font-size:11px;padding:8px 11px}.focus-card{display:block;padding:22px;min-height:0}.focus-card h3{font-size:25px;line-height:1.4;margin:12px 0}.focus-card>p,.focus-card>ol{font-size:12px;line-height:1.8;margin:10px 0}.focus-card .card-top{margin-bottom:8px}.focus-card .growth-principles{font-size:12px}.focus-card .card-bottom{margin-top:14px;padding-top:12px}.focus-card>.eyebrow{margin-bottom:10px}.focus-card>.text-link{margin-top:4px}#community,#paths{display:block}#paths .path-tabs button{font-size:10px}#paths .path-panel{display:grid;grid-template-columns:1fr;padding:20px;gap:12px}#paths .path-panel h3{font-size:22px}#paths .path-panel h3 br{display:none}#paths .path-panel p{font-size:11px;line-height:1.7}#paths .path-panel .eyebrow{font-size:8px;margin-bottom:8px}#paths .path-right{padding:10px 0 0;display:grid;grid-template-columns:auto 1fr;column-gap:20px}.path-right .path-big{font-size:36px!important;align-self:center}#paths .path-right ul{font-size:10px;margin:0;line-height:1.9}#paths .path-right>p{grid-column:1/-1;font-size:9px}#paths .path-panel .text-link{font-size:11px;padding:6px 0}#paths .institution{padding:12px 0;gap:10px}#paths .institution-mark{display:none}#paths .institution .text-link{margin:0;font-size:10px}#paths .institution>div{flex-basis:65%}#paths .institution h3{font-size:12px}#paths .institution p{font-size:9px}#join{display:block}#join .join-grid{grid-template-columns:1fr;gap:16px}#join h2{font-size:28px}#join h2 br{display:none}#join .join-grid>div>p{font-size:11px;margin:10px 0}#join .join-steps{display:none}#join .price-card{padding:22px}#join .price{font-size:56px;margin-top:12px}#join .price-card ul{font-size:11px;line-height:2}#join .price-rule{margin:12px 0}#join .price-card .button{padding:12px 16px}#questions{display:block}#questions>.faq-list{margin-top:18px}#questions h2 br{display:none}#questions .eyebrow{margin-bottom:12px}#questions summary{padding:12px 0;font-size:12px}#questions details p{font-size:11px}.faq-pagination{margin-top:15px}.vision{gap:24px}.vision .large-copy{font-size:23px}.vision .vision-copy>p:not(.large-copy){font-size:12px}.vision .beliefs{margin-top:20px}#free-tool{display:flex;flex-direction:column;justify-content:center;gap:20px}#free-tool .free-tool-mark{align-self:flex-start}#free-tool .button{align-self:flex-start}}
.join-process>summary{font-size:12px;padding:8px 0;color:#e9dfcc}.join-process[open] .join-steps{display:block!important}.join-process .join-steps{margin:12px 0!important}.join-process .join-steps li{margin-bottom:10px!important}
@media(min-width:761px){.join-process:not([open]) .join-steps{display:block}.join-process:not([open])>summary{display:none}}
.join-process:not([open])>summary{display:flex}.join-process .join-steps{display:block}
@media(min-width:761px) and (max-height:820px){.cinema-copy h1{font-size:48px}.cinema-copy .community-badge{margin-bottom:14px}.cinema-description{margin-top:12px;font-size:13px}.hero-bottom{margin-top:18px}.direction-bar{padding:15px 12px}.slogan-english{margin-top:10px;font-size:23px}.hero-cta{margin-top:15px}.hero-explore{margin-top:12px}}
