/* The dark product presentation is scoped to physical programs, not other services. */
.program-dark{background:#070809;color-scheme:dark}
.program-dark::before{display:none}
.program-dark .site-footer{background:#070809}
.program-surface{--ink:#f7f5ee;--muted:#d4d5d7;--gold:#e6c16e;--gold-light:#f0ce7d;--line:#4a432f;--program-panel:#14161a;--program-info:#191914;background:#070809;color:var(--ink)}
.program-surface :is(h1,h2,h3,h4,.eyebrow,.card-kicker,.price,.btn,label,strong,th){text-shadow:none;-webkit-text-stroke:0}
.program-surface :is(h1,h2,h3){text-transform:none;letter-spacing:0;line-height:1.12}
.program-surface h1{font-size:clamp(44px,6vw,76px);max-width:850px;margin:14px 0 24px;text-wrap:balance}
.program-surface h2{font-size:clamp(32px,4vw,48px)}
.program-surface h3{font:800 23px/1.25 Inter,system-ui,sans-serif}
.program-surface h4{font-size:17px;line-height:1.4;margin:25px 0 10px}
.program-surface p{color:inherit}
.program-surface :is(a,button,select,input,summary):focus-visible{outline:3px solid var(--gold-light);outline-offset:4px}
.program-surface a:not(.btn){text-decoration:underline;text-underline-offset:4px}
.program-surface a:hover{color:var(--gold)}
.program-surface .btn{color:var(--gold);border-color:var(--gold);background:transparent;white-space:normal;min-width:0;text-shadow:none}
.program-surface .btn:hover{color:var(--gold-light);border-color:var(--gold-light);box-shadow:0 0 0 1px var(--gold-light)}
.program-intro{padding:64px 0 42px}
.program-lead{max-width:880px;font-size:clamp(18px,2vw,22px);line-height:1.6}
.program-intro-copy{max-width:880px;color:var(--muted)!important;font-size:17px}
.program-version{font-size:13px;line-height:1.5;color:var(--muted)!important}
.program-info{margin-top:32px;padding:26px 30px;background:var(--program-info);border:1px solid #675937;border-left:4px solid var(--gold);border-radius:12px}
.program-info h2{font:800 21px/1.25 Inter,system-ui,sans-serif;margin:0 0 10px}
.program-info p{margin:0;max-width:1000px}
.program-section{padding:62px 0}
.program-guide{--gold:#e6c16e;background:#14161a;color:#f7f5ee}
.program-guide .section-head{max-width:900px}
.program-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin:28px 0}
.program-guide-grid article{display:flex;flex-direction:column;border-top:1px solid #7c683c;padding-top:22px;min-width:0}
.program-guide-step{color:#e6c16e;font-size:14px;font-weight:800;margin-bottom:12px}
.program-guide-grid h3{font-size:17px;font-weight:600;line-height:1.6;margin:0 0 20px}
.program-guide-grid a{color:#e6c16e;font-weight:700;margin-top:auto;padding:10px 0;min-height:44px}
.program-guide> .shell>p{max-width:1000px;color:#dedee1}
.program-guide .program-age-note{padding-top:22px;border-top:1px solid #44433b}
.program-explanation{font-size:14px}
.program-level-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}
.program-level-card{border:1px solid var(--line);border-radius:20px;padding:28px;display:flex;flex-direction:column;min-width:0;scroll-margin-top:110px}
.program-level-heading{display:flex;align-items:center;gap:16px;min-height:76px}
.program-level-number{font:800 36px/1 Inter,system-ui,sans-serif;color:var(--gold)}
.program-level-heading .card-kicker{font-size:11px;margin:0 0 7px;letter-spacing:.08em}
.program-level-heading h3{margin:0;font-size:24px}
.program-level-description{font-size:15px;line-height:1.7;color:var(--muted)!important}
.program-session-count{font-weight:700;font-size:15px;line-height:1.6}
.program-facts{margin:10px 0 20px;display:grid;gap:0;font-size:14px}
.program-facts>div{padding:13px 0;border-top:1px solid var(--line)}
.program-facts dt{font-weight:800;margin-bottom:4px}
.program-facts dd{margin:0;line-height:1.6;color:var(--muted)}
.program-full-details{margin:0 0 24px;border-block:1px solid var(--line)}
.program-full-details summary{cursor:pointer;padding:16px 0;font-size:14px;font-weight:700;min-height:48px;list-style-position:outside;margin-left:18px}
.program-full-details>div{padding:0 0 12px;font-size:14px}
.program-surface ul{padding-left:20px;line-height:1.65}
.program-surface li+li{margin-top:7px}
.program-level-purchase{margin-top:auto;padding-top:12px}
.program-price{font:800 32px/1.25 Inter,system-ui,sans-serif;margin:16px 0 22px}
.program-price span{display:block;font:400 12px/1.6 Inter,system-ui,sans-serif;margin-top:8px;color:var(--muted)}
.program-level-purchase .btn{width:100%;justify-content:space-between}
.program-assistance{margin-top:28px;padding:24px 0;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;align-items:center;gap:10px 24px;font-size:15px}
.program-assistance p{flex-basis:100%;margin:0}
.program-checkout-section{background:#0e1012;scroll-margin-top:85px}
.program-checkout-section .checkout-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:40px}
.program-selection{min-width:0}
.program-selection>label{display:block;margin-bottom:10px;font-weight:700;color:var(--ink)}
.program-selection select{background:var(--program-panel);color:var(--ink);border-color:#85734c;min-height:54px;font-size:16px}
.program-selection>h3{margin-top:28px;font-size:30px}
.program-requirements{background:var(--program-panel);padding:24px;border:1px solid #675937;border-radius:12px;margin:24px 0}
.program-requirements h4{margin-top:0}
.program-requirements p{font-size:14px;line-height:1.65}
.program-requirements p:last-child{margin-bottom:0}
.program-order{--gold:#e6c16e;--gold-light:#f0ce7d;--muted:#d9d9db;--line:#675937;background:#14161a;color:#f7f5ee;padding:30px;border:1px solid #675937;border-radius:20px;min-width:0}
.program-order h3{font-size:28px}
.program-order-name{font-weight:700}
.program-order .program-version{color:#d9d9db!important}
.program-order .checkout-total strong{color:#e6c16e}
.program-order .btn{color:#e6c16e;border-color:#e6c16e;width:100%}
.program-order .btn:hover{color:#f0ce7d;border-color:#f0ce7d;box-shadow:0 0 0 1px #f0ce7d}
.program-order .btn:disabled{opacity:.65}
.program-order .check span,.program-order :is(.field-help,.privacy-note,.form-note){color:#dedee1}
.program-order .check{align-items:start}
.program-order .check input{margin-top:5px;flex-shrink:0}
.program-order-reminder{padding:16px;border:1px solid #675937;border-radius:10px;font-size:14px}
.program-order input[type=email]{font-size:16px}
.program-order a:hover{color:#f0ce7d}
.program-order :is(a,button,input):focus-visible{outline-color:#f0ce7d}
.program-surface .sample-hero{background:#070809;padding:62px 0 24px}
.program-surface .sample-hero :is(.lead,.sample-intro){color:var(--muted)}
.program-surface .sample-week{background:transparent}
.program-surface .sample-week .card-body::before{display:none}
.program-surface .sample-context{background:var(--program-info);border-color:var(--gold);color:var(--ink)}
.program-surface .sample-context p,.program-surface .sample-note{color:var(--muted)}
.program-surface .sample-days>div{border-color:var(--line)}
.program-surface .sample-days dd span{color:var(--muted)}
.program-surface .sample-preview{background:transparent}
.program-surface .sample-preview figcaption{color:var(--muted)}
.program-surface .guide-callout{background:var(--program-info);border-color:#675937}
.program-surface .guide-callout p{color:var(--muted)}
@media(max-width:1020px){.program-level-card{padding:22px}.program-level-heading{align-items:flex-start;gap:10px}.program-level-number{font-size:27px}.program-level-heading h3{font-size:21px}}
@media(max-width:900px){.program-level-grid{grid-template-columns:1fr}.program-level-heading{min-height:0;align-items:center}.program-level-heading h3{font-size:25px}.program-level-description{max-width:720px}.program-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}.program-level-purchase{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;align-items:end}.program-level-purchase .program-version{grid-column:1/-1}.program-price{margin-bottom:0}.program-level-purchase .btn{align-self:end}.program-checkout-section .checkout-grid{grid-template-columns:1fr}.program-requirements .program-facts{grid-template-columns:1fr}}
@media(max-width:680px){.program-intro{padding:38px 0 30px}.program-section{padding:40px 0}.program-info{padding:21px}.program-guide-grid{grid-template-columns:1fr;gap:16px}.program-guide-grid h3{margin-bottom:4px}.program-guide-grid a{margin-top:0}.program-level-card{padding:23px}.program-level-purchase{display:block}.program-price{margin-bottom:20px}.program-facts{grid-template-columns:1fr}.program-order,.program-requirements{padding:22px}.program-checkout-section .checkout-grid{gap:26px}.program-assistance{display:block}.program-assistance a{display:block;padding-top:12px;overflow-wrap:anywhere}.program-surface .sample-days>div{grid-template-columns:84px minmax(0,1fr)}}
