.program-story{--ps-text:#f6f4ef;--ps-muted:#bdbab1;--ps-panel:#191a1b;--ps-soft:#222325;--ps-line:#ffffff25;--ps-accent:#f2ce32;color:var(--ps-text);padding-top:0}
html[data-theme="light"] .program-story{--ps-text:#22272a;--ps-muted:#606361;--ps-panel:#f2f0e9;--ps-soft:#e9e6dd;--ps-line:#242a2426;--ps-accent:#8c6817}
.program-story .section{max-width:1240px;margin:0 auto;padding:68px 32px}
.program-story p{color:var(--ps-muted)}
.program-story h1,.program-story h2,.program-story h3{color:var(--ps-text);overflow-wrap:anywhere}
.program-story h2{font-size:clamp(25px,3vw,38px);line-height:1.45;letter-spacing:-.5px;margin-bottom:22px;max-width:900px}
.program-story h3{font-size:21px;line-height:1.55;margin-bottom:12px}
.program-story .eyebrow{color:var(--ps-accent);font-size:12px;letter-spacing:1.6px;font-weight:700;margin-bottom:18px}
.program-story .ps-hero{padding-top:30px;padding-bottom:60px}
.program-story .text-link{color:var(--ps-muted);font-size:13px;display:inline-block;margin-bottom:36px}
.ps-hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:52px}
.ps-hero-grid>*{min-width:0}
.program-story .ps-hero h1{font-size:clamp(38px,4.6vw,66px);line-height:1.08;letter-spacing:-2px;margin:0 0 24px}
.program-story .ps-hero h2{font-size:clamp(24px,2.7vw,34px);line-height:1.5;letter-spacing:0;margin-bottom:20px}
.program-story .ps-intro{font-size:17px;line-height:1.9;max-width:620px}
.ps-hero-photo{margin:0;position:relative;align-self:stretch;display:flex;flex-direction:column;justify-content:center}
.ps-hero-photo img{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;object-position:center;border-radius:3px}
.ps-hero-photo figcaption{padding:14px 0 0;font-size:12px;color:var(--ps-muted);line-height:1.7}
.ps-actions{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0 16px;align-items:stretch}
.program-story .ps-actions .btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:13px 22px;font-size:15px;white-space:normal;line-height:1.5;text-align:center;max-width:100%;border-radius:3px;background:#f2ce32;color:#171717;border:1px solid #f2ce32}
.program-story .ps-actions .btn-outline{color:var(--ps-text);background:transparent;border-color:var(--ps-line)}
.program-story .ps-actions .btn:hover{filter:brightness(.95)}
.program-story .ps-note{font-size:12px;line-height:1.8;margin-bottom:0}
.program-story .ps-benefits{border-top:1px solid var(--ps-line)}
.ps-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:32px}
.ps-card{background:var(--ps-panel);padding:30px;min-width:0;border-top:2px solid var(--ps-accent)}
.ps-number{display:block;color:var(--ps-accent);font-size:12px;letter-spacing:1px;margin-bottom:28px}
.program-story .ps-card p{font-size:15px;margin:0;line-height:1.85}
.program-story .ps-fit{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px}
.ps-fit-list article{padding:22px 0;border-bottom:1px solid var(--ps-line)}
.ps-fit-list article:first-child{padding-top:0}
.ps-fit-list p{margin-bottom:0;font-size:15px}
.program-story .ps-start{background:var(--ps-panel);max-width:1176px;padding:44px;margin-top:24px;margin-bottom:18px}
.ps-steps{list-style:none;counter-reset:steps;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;padding:0;margin:32px 0 0}
.ps-steps li{counter-increment:steps;min-width:0}
.ps-steps li:before{content:"0" counter(steps);display:block;color:var(--ps-accent);font-size:24px;line-height:1.4;margin-bottom:16px}
.program-story .ps-steps p{font-size:14px;margin-bottom:0}
.program-story .ps-media{max-width:1240px}
.program-story .program-media-card{background:var(--ps-panel);border-color:var(--ps-line)}
.program-story .program-media-card h3{font-size:17px}
.program-story .ps-faq{border-top:1px solid var(--ps-line);display:grid;grid-template-columns:.8fr 1.2fr;gap:64px}
.ps-faq-list details{padding:22px 0;border-bottom:1px solid var(--ps-line)}
.ps-faq-list details:first-child{padding-top:0}
.ps-faq-list summary{cursor:pointer;font-size:17px;line-height:1.6;font-weight:700;list-style:none;padding-right:30px;position:relative}
.ps-faq-list summary::-webkit-details-marker{display:none}
.ps-faq-list summary:after{content:"+";position:absolute;right:0;top:0;color:var(--ps-accent);font-size:22px;font-weight:400}
.ps-faq-list details[open] summary:after{content:"−"}
.program-story .ps-faq-list p{margin:18px 0 0;font-size:15px;line-height:1.9}
.program-story .ps-cta{background:var(--ps-panel);text-align:center;max-width:1176px;margin:18px auto 70px;padding:52px 36px;border-bottom:3px solid var(--ps-accent)}
.program-story .ps-cta h2{margin-left:auto;margin-right:auto;max-width:800px}
.program-story .ps-cta>p{max-width:720px;margin-left:auto;margin-right:auto}
.ps-cta .ps-actions{justify-content:center}
.program-story [data-edit-text]{overflow-wrap:anywhere}
.program-story [hidden]{display:none!important}
@media(min-width:1600px){.program-story .ps-hero-photo img{max-height:640px}}
@media(max-width:1000px){.ps-hero-grid{gap:30px}.program-story .ps-fit{gap:40px}.ps-card{padding:24px}.program-story .ps-start,.program-story .ps-cta{margin-left:32px;margin-right:32px}.program-story .ps-faq{gap:32px}}
@media(max-width:720px){.program-story .section{padding:42px 22px}.program-story .ps-hero{padding-top:24px}.ps-hero-grid{grid-template-columns:minmax(0,1fr);gap:30px}.ps-hero-photo img{aspect-ratio:3/2}.program-story .ps-hero h1{font-size:42px;letter-spacing:-1px}.program-story .ps-intro{font-size:16px}.ps-cards{grid-template-columns:minmax(0,1fr);gap:14px}.ps-card{padding:24px}.ps-number{margin-bottom:14px}.program-story .ps-fit,.program-story .ps-faq{grid-template-columns:minmax(0,1fr);gap:22px}.program-story .ps-start,.program-story .ps-cta{margin-left:22px;margin-right:22px;padding:30px 24px}.ps-steps{grid-template-columns:minmax(0,1fr);gap:26px}.ps-steps li{border-top:1px solid var(--ps-line);padding-top:20px}.ps-steps li:before{font-size:20px;margin-bottom:10px}.program-story .ps-cta{margin-bottom:40px}.ps-actions{gap:10px}.program-story .ps-actions .btn{flex:1 1 180px}.program-story h3{font-size:20px}}
@media(prefers-reduced-motion:reduce){.program-story *{scroll-behavior:auto}}

.ps-number:before{content:attr(data-number)}
