.program-wrap{width:min(1100px,calc(100% - 40px));margin-inline:auto}.program-hero{padding:clamp(64px,9vw,120px) 0;background:#16392e;color:#fff}.program-hero h1{max-width:780px;font-size:clamp(2.4rem,5vw,4.8rem);line-height:1.07}.program-hero p{max-width:760px;line-height:1.65}.jump-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.jump-links a{color:#fff;border:1px solid #a6beb2;border-radius:999px;padding:10px 16px;text-decoration:none}.program-section{padding:clamp(64px,7vw,100px) 0}.program-section.tinted,.program-policy{background:#f5f7f1}.program-section h2,.program-policy h2{font-size:clamp(2.1rem,4vw,3.6rem);margin:8px 0 18px}.program-section p,.program-policy p{max-width:850px;line-height:1.7}.program-lead{font-size:1.22rem}.pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:35px 0 24px}.pricing-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.pricing-grid article{padding:28px;border:1px solid #cfdcd1;border-radius:18px;background:#fff;display:flex;flex-direction:column;gap:9px}.pricing-grid h3{font-size:1.4rem;margin:0}.pricing-grid p{margin:0}.pricing-grid strong{font-size:2rem;color:#16392e}.pricing-grid small{font-size:.92rem;line-height:1.5;color:#4b5c54}.availability-note{border-left:4px solid #bd8751;padding:12px 16px;background:#fff9ee;color:#3a423b}.program-policy{padding:64px 0}.program-policy p{max-width:900px}@media(max-width:800px){.pricing-grid,.pricing-grid.two{grid-template-columns:1fr}.program-wrap{width:min(100% - 32px,700px)}.program-hero{padding:64px 0}.pricing-grid article{padding:22px}}

.account-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:32px}.account-grid[hidden],.account-grid form[hidden]{display:none}.account-grid form{max-width:460px;display:grid;align-content:start;gap:12px}.account-grid input{font:inherit;padding:12px;border:1px solid #7d9185;border-radius:6px}.text-button{border:0;background:none;padding:4px 0;color:inherit;text-decoration:underline;text-align:left;cursor:pointer;font:inherit}#purchase{display:grid;gap:20px}#purchase[hidden]{display:none}#account-status{padding:14px 0}main{overflow-wrap:normal}.program-section{scroll-margin-top:100px}

[hidden]{display:none!important}

main>.program-section:first-child,main>.program-hero:first-child{padding-top:140px}

/* Shared launch pages and aligned package cards. */
.program-wrap{width:min(var(--page-max,1120px),calc(100% - 40px))}.program-hero{padding:clamp(52px,7vw,84px) 0}.program-hero h1{font-size:clamp(2.375rem,4vw,2.75rem)}.program-section{padding:clamp(48px,6vw,72px) 0}.program-section h2,.program-policy h2{font-size:var(--section-h2,clamp(1.75rem,2.8vw,2.125rem))}
.pricing-grid{align-items:stretch}.pricing-grid.two{max-width:760px;margin-inline:auto}.pricing-grid article{height:100%;min-width:0}.pricing-grid h3{min-height:3.15em;display:flex;align-items:flex-start}.pricing-grid article>p:first-of-type{min-height:3em}.pricing-grid article>strong{min-height:1.5em}.pricing-grid article>small{min-height:4.5em}.pricing-grid article>.button{margin-top:auto;width:100%;white-space:normal;text-align:center}
.account-shell{display:grid;gap:28px}.progress-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;list-style:none;padding:0;margin:0 0 28px;counter-reset:step}.progress-steps li{padding:12px;border-bottom:3px solid #ccd7d0;color:#61706a;font-weight:700}.progress-steps li::before{counter-increment:step;content:counter(step) ". ";}.progress-steps .current{color:#173c32;border-color:#173c32}.account-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:32px;align-items:start}.auth-panel,.selection-card,.lesson-empty,.dashboard-section{border:1px solid #cfdcd1;border-radius:16px;background:#fff;padding:clamp(20px,3vw,30px)}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:5px;background:#edf2ef;border-radius:10px;margin-bottom:22px}.auth-tabs button{min-height:44px;border:0;border-radius:7px;background:transparent;color:#173c32;font-weight:750}.auth-tabs button[aria-selected=true]{background:#fff;box-shadow:0 2px 8px rgba(23,60,50,.12)}.account-grid{display:block}.account-grid form{max-width:none}.selection-card dl{display:grid;grid-template-columns:1fr auto;gap:10px;margin:20px 0}.selection-card dt{color:#61706a}.selection-card dd{font-weight:750;text-align:right}.selection-card .package-price{font-size:1.75rem;color:#173c32}.form-actions,.empty-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.inline-link{text-decoration:underline;text-underline-offset:3px}.lesson-empty{max-width:720px}.lesson-dashboard-grid{display:grid;gap:24px}.dashboard-section{margin-top:24px}.dashboard-section h2{margin-top:0}.site-footer{margin-top:auto}
@media(max-width:800px){.account-layout{grid-template-columns:1fr}.selection-card{order:2}.pricing-grid h3,.pricing-grid article>p:first-of-type,.pricing-grid article>strong,.pricing-grid article>small{min-height:0}.progress-steps li{font-size:.82rem;padding-inline:6px}.program-section{padding:42px 0}.account-layout .button,.empty-actions .button{width:100%}}
.pricing-grid article>h3{order:1}.pricing-grid article>p:first-of-type{order:2}.pricing-grid article>strong{order:3}.pricing-grid article>small{order:4}.pricing-grid article>.button{order:5}

/* Centre only reading columns; package grids keep the full layout width. */
.program-hero .program-wrap>p,.program-section .program-wrap>p:not(.section-kicker):not(.availability-note),.program-policy .program-wrap>p{max-width:68ch;margin-left:auto;margin-right:auto;text-align:left}.program-hero .program-wrap>h1,.program-section .program-wrap>h2,.program-policy .program-wrap>h2,.program-wrap>.section-kicker{max-width:68ch;margin-left:auto;margin-right:auto;text-align:left}.program-section .program-wrap>.text-link{display:block;max-width:68ch;margin-left:auto;margin-right:auto}.program-section p,.program-policy p{overflow-wrap:normal;word-break:normal;hyphens:none;text-wrap:pretty}
.program-section .program-wrap>.availability-note{max-width:68ch;margin-left:auto;margin-right:auto;text-align:left}

/* English and Korean share one Glocalish teaching system. */
.teaching-system{padding:clamp(48px,6vw,72px) 0;background:#edf2ef}.teaching-system h2{max-width:760px;font-size:var(--section-h2,clamp(1.75rem,2.8vw,2.125rem));margin:8px 0 24px}.system-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.system-grid article{padding:24px;border-top:3px solid #d7aa4a;background:#fff}.system-grid h3{margin:0 0 10px}.system-grid p{margin:0;line-height:1.65;color:#53635c}@media(max-width:800px){.system-grid{grid-template-columns:1fr}}
.booking-picker{margin:18px 0 20px;padding:clamp(16px,3vw,24px);border:1px solid #cfdcd1;border-radius:14px;background:#f8faf8}.booking-timezone{margin:0 0 14px;color:#52645c;font-size:.9rem;font-weight:700}.calendar-toolbar{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:10px}.calendar-toolbar h3{margin:0;text-align:center;font-size:1.08rem}.calendar-nav{width:44px;height:44px;padding:0;border:1px solid #b9c9c0;border-radius:50%;background:#fff;color:#173c32;font-size:1.45rem}.calendar-weekdays,.booking-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.calendar-weekdays{margin:18px 0 8px;color:#61706a;font-size:.72rem;font-weight:750;text-align:center}.booking-calendar button,.calendar-spacer{aspect-ratio:1;min-width:0}.booking-calendar button{padding:0;border:1px solid #cbd8d1;border-radius:9px;background:#fff;color:#173c32}.booking-calendar button:disabled{border-color:transparent;background:transparent;color:#a3afa9}.booking-calendar button:not(:disabled):hover,.booking-calendar button:focus-visible{border-color:#173c32;outline:2px solid #e0a45d;outline-offset:2px}.booking-calendar button.selected{background:#173c32;color:#fff;border-color:#173c32}.time-picker{margin-top:22px;border-top:1px solid #d8e2dc;padding-top:18px}.time-picker h3{margin:0 0 12px;font-size:1rem}.booking-times{display:flex;flex-wrap:wrap;gap:9px}.booking-times p{margin:0;color:#61706a}.time-chip{min-height:44px;padding:9px 14px;border:1px solid #9eb4a8;border-radius:999px;background:#fff;color:#173c32;font-weight:750}.time-chip[aria-pressed=true]{background:#173c32;color:#fff;border-color:#173c32}@media(max-width:480px){.booking-picker{padding:14px 10px}.calendar-weekdays,.booking-calendar{gap:3px}.booking-calendar button{border-radius:7px;font-size:.88rem}}

/* Programme-page editorial refinements. */
.programme-meta{text-align:center!important}
.teaching-system .philosophy-title{max-width:none;font-size:clamp(.72rem,2.3vw,1.5rem)!important;letter-spacing:-.035em;white-space:nowrap}
