:root{--red:#c51d2b;--red-dark:#a5101d;--red-light:#fff4f4;--ink:#171a20;--muted:#60646d;--line:#e6e7e9;--soft:#f7f8fa;--white:#fff;--radius:12px;--max:1184px}
*{box-sizing:border-box}html{scroll-padding-top:110px}body{margin:0;background:var(--white);color:var(--ink);font-family:"Plus Jakarta Sans",Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.17;letter-spacing:-.035em}h2{font-size:clamp(1.8rem,3vw,2.65rem);font-weight:700}h3{font-size:1.25rem;letter-spacing:-.02em}p{color:var(--muted)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--red);outline-offset:5px}a:hover{text-decoration:none}.container{width:min(var(--max),calc(100% - 80px));margin-inline:auto}.section{padding-block:96px}.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.13em;line-height:1.5;color:var(--red);margin-bottom:19px}.short-line{display:inline-block;width:22px;height:2px;background:var(--red);margin-right:9px;vertical-align:middle}.button{min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:14px 22px;border:1px solid var(--red);border-radius:7px;background:var(--red);color:white;font-size:.9375rem;font-weight:700;line-height:1.4;cursor:pointer}.button:hover{background:var(--red-dark);border-color:var(--red-dark)}.button span[aria-hidden]{font-size:1.15rem;font-weight:400}.button-small{min-height:43px;padding:11px 17px;font-size:.875rem}.button-outline{background:white;border-color:#d5d7db;color:var(--ink)}.button-outline:hover{background:var(--red-light);border-color:var(--red);color:var(--red)}.button-white{background:var(--white);border-color:var(--white);color:var(--red);flex-shrink:0}.button-white:hover{background:#fff0f1;border-color:#fff0f1}.text-link{font-size:.9375rem;font-weight:700;display:inline-flex;gap:17px;align-items:center;line-height:1.5}.text-link:hover{color:var(--red)}.text-link span[aria-hidden]{font-weight:400;font-size:1.25rem}.skip-link{position:absolute;top:-100px;left:20px;background:var(--ink);color:white;padding:12px;z-index:20}.skip-link:focus{top:10px}.topbar{border-bottom:1px solid var(--line);background:var(--soft);font-size:.75rem;line-height:1.5}.topbar-inner{min-height:35px;display:flex;align-items:center;justify-content:space-between;color:#626772}.topbar-divider{margin:0 10px;color:#b4b7be}.topbar a{display:flex;gap:14px}.site-header{position:sticky;top:0;z-index:10;background:var(--white);border-bottom:1px solid var(--line)}.header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:35px}.brand{display:inline-flex;align-items:center;gap:11px;flex-shrink:0}.brand-mark{color:var(--red);font-weight:900;font-size:2.6rem;letter-spacing:-.08em;line-height:1}.brand-mark>span{color:var(--ink)}.brand-name{font-size:1.12rem;font-weight:800;line-height:1.12;letter-spacing:.035em}.brand-name>span{display:block;font-size:.75rem;font-weight:600;letter-spacing:.38em;margin-top:5px;color:var(--muted)}.main-nav{display:flex;align-items:center;gap:28px;font-size:.875rem;font-weight:600}.main-nav>a:not(.button):hover{color:var(--red)}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.03fr 1fr;gap:54px;align-items:center;padding-block:64px 66px}.hero .eyebrow{margin-bottom:22px}.hero h1{font-size:clamp(2.6rem,4.15vw,3.75rem);font-weight:700;line-height:1.09;letter-spacing:-.05em;max-width:580px}.hero h1>span{color:var(--red)}.hero-lead{font-size:1.08rem;color:#282d35;font-weight:600;margin-top:24px;max-width:460px}.hero-description{font-size:.97rem;margin-top:13px;max-width:485px;line-height:1.75}.hero-actions{display:flex;align-items:center;gap:24px;margin-top:28px;flex-wrap:wrap}.hero-checks{display:flex;flex-wrap:wrap;gap:20px;font-size:.8125rem;color:#636772;margin-top:23px}.hero-checks b{color:var(--red);margin-right:6px}.hero-visual{position:relative;align-self:stretch;min-height:550px;margin-bottom:14px;background:#e9e9e9;border-radius:9px 9px 55px 9px}.hero-visual>img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center;border-radius:9px 9px 55px 9px}.image-label{position:absolute;left:24px;top:24px;display:flex;gap:9px;align-items:center;background:var(--white);padding:8px 12px;color:#25282d;border-radius:3px;font-size:.75rem;font-weight:700;letter-spacing:.08em}.label-line{height:11px;width:3px;background:var(--red)}.hero-visual figcaption{position:absolute;bottom:-14px;left:-24px;right:27px;display:flex;gap:15px;align-items:center;padding:20px 23px;background:var(--white);border:1px solid var(--line);box-shadow:0 12px 38px #1018280c;border-radius:8px;z-index:1}.caption-icon{background:var(--red-light);color:var(--red);border-radius:50%;width:42px;height:42px;display:grid;place-items:center;flex-shrink:0;font-weight:800;font-size:1.15rem}.hero-visual figcaption strong{font-size:.875rem;display:block;letter-spacing:-.015em}.hero-visual figcaption span>span{display:block;font-size:.75rem;color:var(--muted);margin-top:2px}.photo-corner{position:absolute;bottom:-8px;right:-9px;width:62px;height:62px;border-right:3px solid var(--red);border-bottom:3px solid var(--red);border-radius:0 0 35px 0}.facts-strip{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:26px 0}.facts-strip>div{padding:0 27px;border-right:1px solid var(--line)}.facts-strip>div:first-child{padding-left:0}.facts-strip>div:last-child{border-right:0}.facts-strip strong{display:block;font-size:1.18rem;letter-spacing:-.025em;line-height:1.5}.facts-strip span{display:block;font-size:.8125rem;color:var(--muted);margin-top:3px}.section-intro{max-width:690px}.problem-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:42px}.number-label{font-size:.75rem;color:var(--red);font-weight:600;letter-spacing:.06em}.problem-grid h3{margin-top:15px;font-size:1.125rem;line-height:1.4}.problem-grid p{font-size:.9375rem;margin-top:12px;line-height:1.8}.problem-close{margin-top:37px;padding-top:22px;border-top:1px solid var(--line);font-size:.9375rem}.problem-close strong{color:var(--ink)}.program-section{background:var(--soft);border-block:1px solid #eef0f2}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:45px;margin-bottom:38px}.section-heading>p{max-width:345px;font-size:.9375rem}.program-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.program-card{background:var(--white);border:1px solid #dfe1e5;border-radius:var(--radius);padding:32px;display:flex;flex-direction:column;position:relative}.sio-card{border-top:3px solid var(--red);padding-top:30px}.program-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.pill{display:inline-block;color:#4d535f;background:#f1f2f5;padding:6px 10px;border-radius:4px;font-size:.75rem;font-weight:700;letter-spacing:.06em}.pill-red{background:var(--red-light);color:var(--red)}.program-index{color:#c0c4cc;font-size:1rem;font-weight:600}.program-card h3{font-size:2rem;line-height:1.17;letter-spacing:-.035em}.program-description{font-size:.9375rem;margin-top:16px;min-height:74px}.program-meta{display:flex;flex-wrap:wrap;gap:12px 20px;font-size:.8125rem;padding-block:18px;border-block:1px solid var(--line);margin-top:18px;color:var(--muted)}.program-meta strong{color:var(--ink)}.check-list{margin:22px 0 23px;padding:0;list-style:none;font-size:.9375rem;display:grid;gap:11px}.check-list li{position:relative;padding-left:24px;color:#454b56;line-height:1.6}.check-list li:before{content:"✓";position:absolute;left:0;color:var(--red);font-weight:700}.program-result{padding:16px 18px;background:var(--soft);border-radius:6px;margin-top:auto;margin-bottom:23px}.program-result>span{color:#737985;font-size:.75rem;letter-spacing:.08em;font-weight:700}.program-result p{font-size:.875rem;color:#3f444e;margin-top:5px;line-height:1.6}.program-note{font-size:.75rem;line-height:1.6;margin-top:13px}.program-help{display:flex;align-items:center;justify-content:space-between;gap:35px;padding-top:25px;font-size:.875rem;color:var(--muted)}.program-help>span{max-width:710px}.program-help strong{color:var(--ink)}.program-help .text-link{flex-shrink:0}.curriculum-section{display:grid;grid-template-columns:.92fr 1.08fr;gap:70px;align-items:center}.curriculum-visual{position:relative;aspect-ratio:4/4.8;border-radius:10px;overflow:hidden;background:#e9e9e9}.curriculum-visual>img{width:100%;height:100%;object-fit:cover}.curriculum-caption{position:absolute;bottom:25px;left:25px;right:25px;padding:22px;background:var(--white);border-radius:7px}.curriculum-caption>span{display:block;font-size:.75rem;color:var(--red);letter-spacing:.1em;font-weight:700}.curriculum-caption strong{font-size:1.5rem;letter-spacing:-.025em}.curriculum-content h2{font-size:2.15rem}.curriculum-content>p:not(.eyebrow):not(.fine-print){font-size:.9375rem;margin-top:19px}.curriculum-list{margin-top:24px;border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:13px;position:relative;padding:20px 35px 20px 0;font-weight:600;line-height:1.5;font-size:.9375rem}summary::-webkit-details-marker{display:none}summary:hover{color:var(--red)}.detail-number{font-size:.75rem;color:var(--red);font-weight:700;flex-shrink:0}.plus{position:absolute;width:12px;height:12px;right:3px;top:25px}.plus:before,.plus:after{content:"";display:block;position:absolute;background:var(--muted);left:0;top:5px;width:12px;height:1.5px}.plus:after{transform:rotate(90deg)}details[open]>summary .plus:after{display:none}.details-content{padding:0 25px 20px 0;font-size:.9375rem;line-height:1.8}.curriculum-list .details-content{padding-left:30px;font-size:.875rem}.fine-print{font-size:.75rem;line-height:1.7;margin-top:17px}.regulation-section{background:var(--red-light);border-block:1px solid #f5e6e8}.regulation-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}.regulation-grid>div:first-child>p:not(.eyebrow){margin-top:23px;font-size:.9375rem;max-width:445px}.source-link{font-size:.8125rem;color:var(--red);font-weight:600;display:block;margin-top:25px;line-height:1.7;text-decoration:underline;text-underline-offset:4px}.regulation-points{display:grid;gap:27px}.regulation-points article{border-bottom:1px solid #efd8db;padding-bottom:26px}.regulation-points article:last-child{border-bottom:0;padding-bottom:0}.regulation-label{color:#a45c62;font-size:.75rem;font-weight:700;letter-spacing:.08em}.regulation-points h3{font-size:1.15rem;margin-top:9px}.regulation-points p{font-size:.9375rem;margin-top:10px;line-height:1.75}.steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;list-style:none;margin:47px 0 0;padding:0}.steps-grid li{border-top:1px solid var(--line);padding-top:23px}.step-number{color:var(--red);font-size:.875rem;font-weight:700;display:grid;place-items:center;width:39px;height:39px;border:1px solid #efcfd3;border-radius:50%;margin-bottom:21px}.steps-grid h3{font-size:1.02rem}.steps-grid p{margin-top:12px;font-size:.875rem;line-height:1.8}.about-section{background:var(--soft);border-block:1px solid #eef0f2}.about-grid{display:grid;grid-template-columns:1.08fr 1fr;gap:65px;align-items:center}.about-copy h2{font-size:2.2rem}.about-copy>p:not(.eyebrow){font-size:.9375rem;margin-top:21px;line-height:1.8}.about-principles{display:flex;gap:10px 20px;flex-wrap:wrap;font-size:.8125rem;margin-top:21px;color:#555d68}.about-principles b{color:var(--red);margin-right:5px}.about-copy>.text-link{margin-top:23px}.about-visual img{width:100%;aspect-ratio:1.15;object-fit:cover;border-radius:9px}.about-visual figcaption{font-size:.75rem;margin-top:12px;color:var(--muted)}.location-section{display:grid;grid-template-columns:1.15fr 1fr;gap:80px;align-items:center}.location-section h2{font-size:2.1rem}.location-section>div:first-child>p:not(.eyebrow){font-size:.9375rem;margin-top:20px;max-width:530px}.location-card{border:1px solid var(--line);border-radius:10px;padding:29px;display:flex;gap:20px;align-items:flex-start}.location-pin{color:var(--red);display:block;flex-shrink:0;width:40px;height:40px;padding:8px;background:var(--red-light);border-radius:6px}.location-pin svg{width:24px;height:24px}.location-card .eyebrow{font-size:.75rem;margin-bottom:10px;display:block}.location-card h3{font-size:1.3rem}.location-card address{font-style:normal;color:var(--muted);font-size:.875rem;line-height:1.9;margin-top:12px}.location-card .text-link{margin-top:19px;font-size:.875rem;color:var(--red)}.faq-section{background:var(--soft);border-block:1px solid #eef0f2}.faq-grid{display:grid;grid-template-columns:.74fr 1.3fr;gap:100px}.faq-intro>p:not(.eyebrow){font-size:.9375rem;margin-top:23px;max-width:285px}.faq-intro>.text-link{color:var(--red);margin-top:21px}.faq-list{border-top:1px solid #dce0e5}.faq-list summary{font-size:1rem;padding-block:22px;font-weight:600}.faq-list .plus{top:29px}.faq-list .details-content{font-size:.9375rem;padding-bottom:25px}.closing-section{margin-block:75px;display:flex;justify-content:space-between;align-items:center;gap:42px;background:var(--red);color:white;padding:46px 48px;border-radius:12px}.closing-section .eyebrow{font-size:.75rem;letter-spacing:.1em;color:#ffe4e6;margin-bottom:15px}.closing-section h2{font-size:2.05rem;line-height:1.2}.closing-section p:not(.eyebrow){color:#ffe4e6;font-size:.9375rem;margin-top:16px}.site-footer{border-top:1px solid var(--line)}.footer-main{display:grid;grid-template-columns:1.9fr 1fr 1fr 1fr;gap:36px;padding-block:53px 44px}.footer-main h2{font-size:.875rem;letter-spacing:0;font-weight:700;margin-bottom:17px}.footer-main>div:not(.footer-brand)>a{display:block;font-size:.8125rem;color:var(--muted);margin-top:10px}.footer-main>div:not(.footer-brand)>a:hover{color:var(--red)}.footer-main p{font-size:.8125rem;line-height:1.85;margin-top:16px}.footer-bottom{display:flex;justify-content:space-between;gap:30px;padding-block:22px;border-top:1px solid var(--line);font-size:.75rem;color:#747983}.mobile-cta{display:none}
@media(min-width:1500px){.hero{padding-block:76px}.hero-visual{min-height:550px}}
@media(max-width:1100px){.container{width:calc(100% - 56px)}.main-nav{gap:19px}.hero{gap:35px}.hero h1{font-size:3rem}.hero-visual{min-height:570px}.hero-actions{gap:20px}.hero-actions .button{font-size:.875rem;padding-inline:17px}.hero-visual figcaption{left:-16px;right:15px;padding:18px}.hero-visual figcaption strong{font-size:.8125rem}.facts-strip>div{padding-inline:17px}.facts-strip span{font-size:.75rem}.curriculum-section{gap:42px}.curriculum-content h2{font-size:1.9rem}.regulation-grid{gap:65px}.faq-grid{gap:60px}.about-grid{gap:40px}.about-copy h2{font-size:2rem}.location-section{gap:40px}.closing-section{padding:40px 32px;gap:24px}.closing-section h2{font-size:1.75rem}.footer-main{gap:26px}.topbar-inner{font-size:.75rem}}
@media(max-width:850px){.topbar{display:none}.header-inner{min-height:76px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;border:1px solid var(--line);width:43px;height:43px;background:var(--white);border-radius:6px;padding:11px;cursor:pointer}.menu-toggle span{height:2px;width:19px;background:var(--ink)}.main-nav{display:none;position:absolute;top:76px;left:0;right:0;background:var(--white);padding:14px 28px 22px;border-bottom:1px solid var(--line);box-shadow:0 10px 20px #1018280a;align-items:stretch;gap:0}.main-nav.is-open{display:flex;flex-direction:column}.main-nav>a:not(.button){padding:12px 0;border-bottom:1px solid var(--line);font-size:1rem}.main-nav .button{margin-top:17px}.hero{gap:25px;padding-block:43px 50px}.hero h1{font-size:2.5rem}.hero .eyebrow{font-size:.75rem}.hero-lead{font-size:1rem}.hero-description{font-size:.9375rem}.hero-visual{min-height:550px}.hero-visual figcaption{padding:13px;left:-8px;right:8px;gap:10px}.caption-icon{width:32px;height:32px;font-size:1rem}.hero-visual figcaption strong{font-size:.75rem}.hero-visual figcaption span>span{font-size:.75rem}.image-label{font-size:.75rem;padding:7px 9px;top:15px;left:15px}.hero-checks{gap:7px 15px;font-size:.75rem}.hero-actions{gap:15px}.facts-strip{grid-template-columns:repeat(2,1fr);row-gap:22px}.facts-strip>div{padding-left:22px}.facts-strip>div:nth-child(odd){padding-left:0}.facts-strip>div:nth-child(even){border-right:0}.facts-strip span{font-size:.8125rem}.section{padding-block:70px}.problem-grid{gap:25px}.problem-grid h3{font-size:1.0625rem}.problem-grid p{font-size:.875rem}.section-heading>p{max-width:290px}.program-card{padding:25px}.sio-card{padding-top:23px}.program-card h3{font-size:1.7rem}.program-description{min-height:100px}.check-list{font-size:.875rem}.program-meta{min-height:91px;align-content:center;gap:6px 15px}.program-result{min-height:123px}.program-help{align-items:flex-start}.program-help>.text-link{max-width:145px;flex-shrink:0;gap:10px}.curriculum-section{grid-template-columns:.8fr 1fr;gap:32px}.curriculum-visual{aspect-ratio:auto;align-self:stretch;min-height:500px}.curriculum-visual img{position:absolute;inset:0;object-position:center}.curriculum-content h2{font-size:1.7rem}.curriculum-caption{left:15px;right:15px;padding:17px;bottom:17px}.curriculum-caption strong{font-size:1.25rem}.regulation-grid{gap:38px}.steps-grid{gap:21px}.steps-grid h3{line-height:1.4}.about-grid{grid-template-columns:1fr;gap:30px}.about-copy h2{font-size:2.1rem}.about-visual img{aspect-ratio:2}.about-copy>p:not(.eyebrow){max-width:680px}.location-section{gap:30px;grid-template-columns:1fr 1fr}.location-section h2{font-size:1.75rem}.location-card{padding:22px;gap:12px}.location-pin{display:none}.faq-grid{grid-template-columns:.75fr 1.25fr;gap:40px}.faq-intro .eyebrow{font-size:.75rem}.closing-section{flex-direction:column;align-items:flex-start;padding:35px}.closing-section h2{font-size:2rem}.footer-main{grid-template-columns:1.5fr 1fr 1fr;gap:28px}.footer-main>div:last-child{grid-column:2/4}.footer-brand{grid-row:1/3}.footer-bottom{font-size:.75rem}}
@media(max-width:640px){html{scroll-padding-top:84px}.container{width:calc(100% - 40px)}body{padding-bottom:76px}.header-inner{min-height:69px}.brand-mark{font-size:2.25rem}.brand-name{font-size:1rem}.brand-name>span{font-size:.75rem}.main-nav{top:69px;padding-inline:20px}.hero{grid-template-columns:1fr;gap:27px;padding-block:33px 40px}.hero .eyebrow{font-size:.75rem;letter-spacing:.1em;margin-bottom:16px}.hero h1{font-size:clamp(2.35rem,8.9vw,3.4rem);line-height:1.1;max-width:500px;letter-spacing:-.045em}.hero-lead{font-size:1rem;max-width:440px;margin-top:18px}.hero-description{font-size:1rem;line-height:1.7;margin-top:11px}.hero-actions{margin-top:22px;gap:15px;justify-content:space-between}.hero-actions .button{font-size:.875rem;padding-inline:15px;gap:13px;min-height:49px}.hero-actions .text-link{font-size:.8125rem;gap:8px}.hero-checks{margin-top:16px;font-size:.75rem;gap:15px}.hero-visual{min-height:0;height:335px;margin-bottom:12px;margin-right:5px}.hero-visual>img{object-position:center 42%;border-radius:8px 8px 40px 8px}.hero-visual figcaption{bottom:-12px;left:12px;right:12px;padding:14px;gap:11px}.hero-visual figcaption strong{font-size:.8125rem}.hero-visual figcaption span>span{font-size:.75rem}.caption-icon{height:36px;width:36px}.image-label{left:17px;top:17px;font-size:.75rem}.photo-corner{width:45px;height:45px;bottom:-6px;right:-7px}.facts-strip{padding-block:23px;row-gap:21px}.facts-strip>div{padding-inline:15px}.facts-strip strong{font-size:1.0625rem}.facts-strip span{font-size:.75rem;max-width:170px;line-height:1.65}.section{padding-block:54px}.eyebrow{font-size:.75rem;letter-spacing:.1em;margin-bottom:15px}h2{font-size:1.9rem;line-height:1.2;letter-spacing:-.035em}.problem-grid{grid-template-columns:1fr;gap:0;margin-top:28px}.problem-grid article{padding-block:22px;border-bottom:1px solid var(--line)}.problem-grid article:first-child{padding-top:0}.problem-grid article:last-child{border:0;padding-bottom:0}.problem-grid h3{font-size:1.13rem;margin-top:10px}.problem-grid p{font-size:1rem;margin-top:10px;line-height:1.75}.number-label{font-size:.75rem}.problem-close{font-size:.9375rem;margin-top:26px;padding-top:20px;line-height:1.8}.section-heading{display:block;margin-bottom:27px}.section-heading>p{font-size:1rem;margin-top:18px;max-width:none}.program-grid{grid-template-columns:1fr;gap:20px}.program-card{padding:25px}.sio-card{padding-top:23px}.program-card h3{font-size:1.9rem}.program-description{min-height:0;font-size:1rem;line-height:1.7;margin-top:15px}.program-card-top{margin-bottom:16px}.pill{font-size:.75rem}.program-meta{min-height:0;font-size:.8125rem;padding-block:17px;margin-top:21px;gap:10px 18px}.check-list{font-size:1rem;gap:11px;margin-block:21px}.program-result{min-height:0;margin-bottom:21px;padding:16px}.program-result p{font-size:.9375rem}.program-card .button{font-size:.9375rem}.program-note{font-size:.75rem;line-height:1.7}.program-help{flex-direction:column;gap:14px;font-size:.9375rem;line-height:1.75}.program-help>.text-link{max-width:none;font-size:.9375rem}.curriculum-section{display:flex;flex-direction:column-reverse;gap:25px}.curriculum-content h2{font-size:1.9rem}.curriculum-content>p:not(.eyebrow):not(.fine-print){font-size:1rem}.curriculum-list{margin-top:22px}.curriculum-list summary{font-size:.9375rem;padding-block:19px;gap:10px}.curriculum-list .details-content{font-size:1rem;padding-left:26px}.fine-print{font-size:.75rem}.curriculum-visual{min-height:0;height:350px;aspect-ratio:auto;width:100%;align-self:auto}.curriculum-visual img{object-position:center 40%}.curriculum-caption{max-width:275px;left:18px;bottom:18px}.curriculum-caption strong{font-size:1.5rem}.regulation-grid{grid-template-columns:1fr;gap:30px}.regulation-grid h2 br:nth-of-type(2){display:none}.regulation-grid>div:first-child>p:not(.eyebrow){font-size:1rem;margin-top:18px}.source-link{font-size:.875rem}.regulation-points{gap:23px}.regulation-points h3{font-size:1.18rem}.regulation-points p{font-size:1rem}.regulation-label{font-size:.75rem}.steps-grid{grid-template-columns:1fr 1fr;gap:25px 20px;margin-top:32px}.steps-grid li{padding-top:18px}.step-number{margin-bottom:17px;font-size:.8125rem}.steps-grid h3{font-size:1.0625rem}.steps-grid p{font-size:1rem;line-height:1.7;margin-top:10px}.about-copy h2{font-size:1.9rem}.about-copy>p:not(.eyebrow){font-size:1rem;margin-top:19px}.about-principles{font-size:.8125rem;gap:10px 15px}.about-visual img{aspect-ratio:1.4;object-position:center}.about-visual figcaption{font-size:.75rem}.location-section{grid-template-columns:1fr;gap:25px}.location-section h2{font-size:1.9rem}.location-section>div:first-child>p:not(.eyebrow){font-size:1rem;margin-top:18px}.location-card{padding:24px;gap:17px}.location-pin{display:block}.location-card address{font-size:.9375rem}.location-card .text-link{font-size:.875rem}.faq-grid{grid-template-columns:1fr;gap:27px}.faq-intro h2 br{display:none}.faq-intro h2 br:after{content:" "}.faq-intro h2{max-width:320px}.faq-intro>p:not(.eyebrow){max-width:none;margin-top:18px;font-size:1rem}.faq-intro>.text-link{margin-top:15px}.faq-list summary{font-size:1rem;line-height:1.6;padding-block:20px;font-weight:600}.faq-list .details-content{font-size:1rem;line-height:1.8;padding-right:12px}.closing-section{padding:29px 25px;gap:25px;margin-block:45px;border-radius:9px}.closing-section .eyebrow{font-size:.75rem;line-height:1.7}.closing-section h2{font-size:1.7rem;line-height:1.25}.closing-section p:not(.eyebrow){font-size:1rem}.closing-section .button{width:100%;font-size:.875rem}.footer-main{grid-template-columns:1fr 1fr;padding-block:38px 28px;gap:28px 23px}.footer-brand{grid-column:1/3;grid-row:auto}.footer-main>div:last-child{grid-column:1/3}.footer-main>div:not(.footer-brand)>a{font-size:.875rem}.footer-main h2{font-size:.875rem;margin-bottom:15px}.footer-main p{font-size:.8125rem}.footer-bottom{display:block;font-size:.75rem;padding-block:19px}.footer-bottom>span{display:block}.footer-bottom>span+span{margin-top:7px}.mobile-cta{position:fixed;z-index:12;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:66px;padding:15px 22px calc(15px + env(safe-area-inset-bottom));background:var(--red);color:white;border-top:1px solid #a6101b;font-size:.9375rem;font-weight:700;box-shadow:0 -3px 20px #171a2010}.mobile-cta>span:last-child{font-size:1.35rem;font-weight:400}}
@media(max-width:370px){.container{width:calc(100% - 32px)}.hero-actions{flex-direction:column;align-items:stretch;gap:14px}.hero-actions>.text-link{justify-content:center}.hero h1{font-size:2.3rem}.hero-checks{font-size:.75rem;gap:11px}.hero-visual{height:285px}.hero-visual figcaption{padding:11px}.hero-visual figcaption strong{font-size:.75rem}.hero-visual figcaption span>span{font-size:.75rem}.facts-strip span{font-size:.75rem}.program-card{padding:21px}.program-card h3{font-size:1.8rem}.program-meta{gap:7px 12px}.location-card{padding:20px}.location-pin{display:none}.steps-grid{grid-template-columns:1fr}.faq-intro h2{font-size:1.8rem}.closing-section{padding:27px 21px}.closing-section h2{font-size:1.6rem}.mobile-cta{font-size:.875rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
@media print{.topbar,.site-header,.hero-actions,.mobile-cta,.menu-toggle,.closing-section,.site-footer{display:none}.container{width:100%}.section{padding-block:25px}.hero{padding-block:15px}.hero h1{font-size:30pt}.hero-visual{min-height:320px}.program-card{break-inside:avoid}details{break-inside:avoid}.details-content{display:block!important}body{padding:0;font-size:11pt}.faq-grid{grid-template-columns:1fr}a{color:inherit}}

/* Main reading copy stays at least 16px; metadata remains secondary. */
.hero-description,.program-description,.problem-grid p,.section-heading>p,.curriculum-content>p:not(.eyebrow):not(.fine-print),.curriculum-list .details-content,.regulation-points p,.regulation-grid>div:first-child>p:not(.eyebrow),.steps-grid p,.about-copy>p:not(.eyebrow),.location-section>div:first-child>p:not(.eyebrow),.faq-intro>p:not(.eyebrow),.faq-list .details-content,.check-list{font-size:1rem}
.hero-copy,.curriculum-content,.about-copy,.faq-intro,.program-card{min-width:0}
/* Keep the full group photo visible. */
.about-visual img{height:auto;aspect-ratio:2560/1441;object-fit:contain}
@media(max-width:640px){.hero .eyebrow{font-size:.75rem}.hero-checks,.facts-strip span,.hero-visual figcaption span>span{font-size:.75rem}.hero-visual>img{object-position:center}.brand-name>span{letter-spacing:.2em}}
@media(min-width:641px) and (max-width:850px){.hero-visual{min-height:635px}}
