/* D216 mockup: extends home.css, shared faculty/FAQ/closing components.
   Program copy and slot rules: programs/TEMPLATE.md. */
main>.hm-hero:first-child{padding:88px 0 64px}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:64px;align-items:start}
.hero-copy{min-width:0}.hero-copy h1{max-width:20ch}
.hero-story{margin-top:24px;display:grid;gap:14px}
.hero-body{font-size:18px;line-height:1.6;color:var(--text)}
.hero-teaching{font-size:15px;line-height:1.55;color:var(--muted)}
.wi-facts{display:grid;grid-template-columns:1.1fr 1fr 1fr 1fr;margin:28px 0 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.wi-facts>div{padding:18px 16px 18px 0;min-width:0}.wi-facts>div+div{padding-left:16px;border-left:1px solid var(--line)}
.wi-facts dt,.lead-kicker,.schedule-label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:var(--orange2)}
.wi-facts dd{margin:9px 0 0;font-size:14px;line-height:1.4}.wi-facts strong{font-weight:600;display:block}.wi-facts dd>span{display:block;margin-top:6px;color:var(--muted)}
.hero-act .btns{gap:12px}.reg-transfer-note{margin-top:18px;max-width:66ch;font-size:14px}.reg-ondemand-note{font-size:14px}
.lead-panel{padding-top:6px}.lead-panel img{width:260px;height:280px;border-radius:140px 140px 120px 120px;object-fit:cover;object-position:center 22%;display:block;margin:22px 0}
.lead-panel h2{font-size:32px;text-wrap:initial}.lead-panel .lead-title{font-size:15px;font-weight:600;line-height:1.45;margin:12px 0 18px}.lead-panel p{font-size:15px;line-height:1.55;margin-top:8px}.lead-panel .lead-kicker{font-size:11px}.lead-link,.text-link{display:inline-block;text-decoration:underline;text-underline-offset:4px;font-weight:650}.lead-link{margin-top:20px}
.section{padding:var(--sy) 0;border-bottom:1px solid var(--line);background:#fff}.section-title{margin-bottom:36px;max-width:820px}.section-title .lead{margin-top:18px}
.curriculum-list{border-top:1px solid var(--line)}.curriculum-row{display:grid;grid-template-columns:64px minmax(0,.85fr) minmax(0,1.15fr);gap:24px;align-items:baseline;padding:26px 0;border-bottom:1px solid var(--line)}.curriculum-row .num{font-family:var(--serif);font-size:32px;color:var(--orange2)}.curriculum-row p{color:var(--muted);font-size:16px;line-height:1.6}
.fband{background:#fff}.fband-head h2{max-width:25ch}.fband-list{margin-top:28px}.fband-lead{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--orange2);font-weight:700;margin-bottom:8px}.fband-hook+.fband-hook{margin-top:5px}
/* Proof band spacing, natural-width stats and typography come from home.css,
   shared with programs/index.html. Keep desktop and mobile rules there. */
.dates-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:64px;align-items:start}.schedule-board{border-top:1px solid var(--line);padding-top:24px}.schedule-date{display:block;font-family:var(--serif);font-size:30px;font-weight:400;margin-top:14px}.schedule-details{display:grid;gap:4px;margin:12px 0 22px;color:var(--muted);font-size:15px}.schedule-price-note,.schedule-board .pay-invoice-note{margin-top:16px;line-height:1.6;font-size:16px;color:var(--text)}.schedule-board .pay-invoice-note{display:block}.schedule-board .pay-invoice-note svg{display:none}.schedule-primary>.btn{margin-top:24px}.schedule-secondary{margin-top:28px;padding-top:28px;border-top:1px solid var(--line)}.schedule-option{display:flex;flex-direction:column;align-items:flex-start;gap:14px}.schedule-option>.btn{order:-1}.schedule-option p,.schedule-footnote{font-size:14px;color:var(--muted)}.schedule-footnote{margin-top:24px}.schedule-footnote a{text-decoration:underline}
.reg-side{padding:36px;background:var(--navy);border-radius:24px;color:#fff}.reg-side h3{color:#fff;font-size:30px}.reg-side>p{color:var(--on-navy);font-size:16px;margin-top:16px;line-height:1.6}.reg-links{display:grid;gap:20px;margin-top:28px}.reg-links a{display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;color:#fff}.reg-links a{border-top:1px solid rgba(255,255,255,.2);padding-top:18px;font-weight:600}.reg-links small{display:block;font-size:13px;font-weight:400;color:var(--on-navy);margin-top:6px}.reg-action{width:100%;justify-content:space-between;gap:12px}.reg-action-note{display:block;margin-top:6px;font-size:13px;color:var(--on-navy)}.approver{border-top:1px solid rgba(255,255,255,.2);margin-top:28px;padding-top:24px}.approver h4{margin:0 0 12px;font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--on-navy-accent)}.approver ul{list-style:none;padding:0;margin:0}.approver li{display:grid;grid-template-columns:62px minmax(0,1fr);gap:12px;margin-top:12px;font-size:14px;color:var(--on-navy)}.approver b{color:#fff}
#alternatives .cant-make{margin-top:0;padding-top:0;border-top:0}#alternatives #cm-title{font-size:var(--h2)}.faq-list summary i{background:#fff}
/* D231: separate the date signup from the offer, with balanced copy and one field row. */
.cm-strip{background:transparent;margin-top:40px;padding:24px 0 0;border-top:1px solid var(--line);gap:20px 28px}
.cm-strip-text{flex:1 1 0;min-width:0;text-wrap:balance}
.cm-strip-text b,.cm-strip-text>span{display:block}
.cm-strip-fields{flex:0 0 auto}
.cm-strip-fields label{flex:0 0 300px}
.od-terms{display:block}
@media(max-width:800px){.cm-strip-text{flex-basis:100%}.cm-strip-fields{flex:1 1 100%;flex-direction:column;align-items:stretch}.cm-strip-fields label{flex:auto}.cm-strip .btn{width:100%}}
.wi-sticky{display:none}
@media(min-width:1024px){.hero-act .reg-transfer-note{max-width:none}}
@media(max-width:1000px){.hero-grid{grid-template-columns:minmax(0,1fr) 240px;gap:32px}.lead-panel img{width:220px;height:240px}.wi-facts{grid-template-columns:1fr 1fr}.wi-facts>div:nth-child(3){border-left:0;padding-left:0}.wi-facts>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.dates-grid{gap:32px}}
@media(max-width:720px){main>.hm-hero:first-child{padding:72px 0 44px}.hero-grid,.dates-grid{grid-template-columns:1fr;gap:40px}.hero-body{font-size:16px}.hero-copy h1{max-width:21ch}.hero-act .btns{display:grid;grid-template-columns:1fr}.btn{white-space:normal;padding:12px 18px}.wi-facts>div{padding:16px 12px 16px 0}.wi-facts>div+div{padding-left:12px}.lead-panel{display:grid;grid-template-columns:96px minmax(0,1fr);column-gap:20px}.lead-panel>*{grid-column:2}.lead-panel img{grid-column:1;grid-row:1/7;width:96px;height:112px;margin:8px 0 0;border-radius:60px}.lead-panel h2{font-size:27px;margin-top:10px}.lead-panel .lead-title{margin:8px 0}.lead-panel p{font-size:14px}.lead-link{margin-top:14px}.curriculum-row{grid-template-columns:36px minmax(0,1fr);gap:8px 16px;padding:22px 0}.curriculum-row .num{grid-row:1/3;font-size:26px}.curriculum-row p{grid-column:2}.reg-side{padding:28px 24px}.wi-sticky{display:flex;position:fixed;left:12px;right:12px;bottom:12px;z-index:70;align-items:center;justify-content:space-between;gap:12px;padding:8px 8px 8px 20px;background:var(--navy);border-radius:999px;transform:translateY(160%)}.wi-sticky.is-on{transform:none}.wi-sticky p{color:#fff;font-size:14px;line-height:1.3}.wi-sticky b,.wi-sticky p>span{display:block}.wi-sticky .btn{padding:12px 20px}.iaml-footer{padding-bottom:88px}}
/* Keep the colleague option aligned with the date and primary action. */
.schedule-secondary.is-single .schedule-option{padding:0;background:transparent;border:0}
