.school-profile [hidden]{display:none!important}
.school-profile .sp-hero .sh-hero-heading{top:25%;width:43%}
.school-profile .sp-hero .sh-hero-heading h1{font-size:clamp(18px,4.2vw,64px);line-height:1.12;overflow-wrap:anywhere}
.school-profile .sp-hero .sh-hero-heading h1>span{font-size:.43em;line-height:1.5;margin-top:14px;max-width:360px}
.school-profile .sh-intro{align-items:center}
.school-profile .sh-intro-copy{max-width:850px}
.school-profile .sh-intro-copy>p{font-size:16px;line-height:1.8}
.school-profile .sh-intro .sh-actions{max-width:260px;flex-direction:column;flex:none}
.school-profile .sh-intro .button{width:100%}
.sp-brand-mark{display:flex;align-items:center;justify-content:center;width:56px;height:56px;flex:none}
.sp-brand-mark img,.sp-brand-mark .art{width:52px!important;height:52px!important;object-fit:contain}
.sp-goals{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:22px}
.sp-goals button{appearance:none;min-height:44px;border:1px solid var(--border);border-radius:13px;padding:11px 16px;background:var(--surface);font:inherit;font-size:13px;font-weight:650;color:var(--text);cursor:pointer}
.sp-goals button[aria-pressed=true]{background:#ffd28c;color:#402614;border-color:#e8b86d}
.sp-goals button:focus-visible,.sp-stepper button:focus-visible,.school-profile input:focus-visible,.sp-direction-link:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
.sp-programs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start}
.sp-program{min-width:0;padding:24px;border:1px solid var(--border);border-radius:24px;background:var(--surface)}
.sp-program-heading{display:flex;align-items:center;gap:15px}
.sp-program-heading .art{width:54px;height:54px;object-fit:contain;flex:none}
.sp-program h3{font-size:23px;line-height:1.3;margin:0;color:var(--text);overflow-wrap:anywhere}
.sp-program>p{font-size:15px;line-height:1.8;color:var(--muted);margin:18px 0}
.sp-points{list-style:none;padding:0;margin:0 0 20px;display:grid;gap:10px}
.sp-points li{display:flex;align-items:center;gap:10px;color:var(--text);font-size:13px;line-height:1.65}
.sp-points .art{width:30px;height:30px;flex:none;object-fit:contain}
.sp-program-actions>.button{width:100%;font-size:12px}
.sp-direction-link{display:flex;align-items:center;justify-content:center;text-align:center;min-height:44px;border:1px solid #d5b981;border-radius:12px;background:#ffe6b8;color:#402614;font-size:12px;font-weight:650;margin-top:9px;padding:8px 12px;text-decoration:none}
.sp-direction-link:is(:visited,:hover){color:#402614;background:#ffdda1}
.sp-programs.is-one{grid-template-columns:1fr;max-width:1000px;margin:auto}
.sp-programs.is-one .sp-program{display:grid;grid-template-columns:1fr 1fr;column-gap:30px}
.sp-programs.is-one .sp-program-heading,.sp-programs.is-one .sp-program>p{grid-column:1}
.sp-programs.is-one .sp-points{grid-column:2;grid-row:1/3;align-content:center;margin:0}
.sp-programs.is-one .sp-program-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:start}
.sp-programs.is-one .sp-direction-link{margin:0;min-height:48px}
.sp-programs.is-one .sh-card-details{grid-column:1/-1}
.school-profile .sp-planner{max-width:1100px}
.sp-planner-panel{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:0;border:1px solid var(--border);border-radius:26px;overflow:hidden;background:var(--surface)}
.sp-plan-form{padding:26px;border-right:1px solid var(--border)}
.sp-plan-form fieldset{padding:0;margin:0;border:0;min-width:0}
.sp-plan-form legend{padding:0;font-size:20px;font-weight:700;color:var(--text);margin-bottom:22px}
.sp-plan-inputs{display:grid;grid-template-columns:1fr 1fr;gap:18px 14px}
.sp-plan-field label{display:block;color:var(--text);font-size:12px;font-weight:650;line-height:1.5;margin-bottom:9px}
.sp-stepper{display:grid;grid-template-columns:40px minmax(0,1fr) 40px;border:1px solid var(--border);border-radius:12px;overflow:clip;background:var(--bg)}
.sp-stepper input,.sp-price-field input{min-width:0;width:100%;font:inherit;font-size:15px;color:var(--text);background:var(--bg);border:0;border-radius:0;padding:13px 8px;appearance:textfield}
.sp-stepper input{text-align:center}
.sp-stepper button{appearance:none;border:0;background:var(--surface2);color:var(--text);font:inherit;font-size:17px;font-weight:650;min-height:46px;cursor:pointer}
.sp-stepper button:focus-visible{outline-offset:-4px}
.sp-price-field{margin-top:21px}
.sp-price-field input{border:1px solid var(--border);border-radius:12px;padding:14px}
.sp-price-field input::placeholder{color:var(--muted);opacity:1;font-size:12px}
.sp-price-field p,.sp-plan-caption{font-size:12px;line-height:1.7;color:var(--muted);margin:9px 0 0}
.sp-plan-form .sh-actions{margin-top:20px;gap:10px}
.school-profile input[aria-invalid=true]{border-color:#bd684a;outline:2px solid #bd684a;outline-offset:-2px}
.sp-plan-error{padding:12px;border:1px solid #bd684a;border-radius:12px;background:var(--surface2);color:var(--text);font-size:13px;line-height:1.7;margin:16px 0 0}
.sp-plan-result{padding:26px;background:var(--surface2)}
.sp-plan-result h3{display:flex;align-items:center;gap:12px;font-size:20px;line-height:1.4;color:var(--text);margin:0}
.sp-plan-result h3>.art{width:38px;height:38px;object-fit:contain;flex:none}
.sp-plan-total{display:flex;align-items:center;gap:16px;margin:20px 0;padding-bottom:17px;border-bottom:1px solid var(--border)}
.sp-plan-total>strong{font-size:48px;font-weight:650;line-height:1.1;letter-spacing:-.04em;color:var(--text)}
.sp-plan-total>span{font-size:14px;line-height:1.65;color:var(--text);max-width:155px}
.sp-plan-stats{display:grid;gap:15px}
.sp-plan-stats>div{display:flex;align-items:center;gap:12px}
.sp-plan-stats .art{width:32px;height:32px;object-fit:contain;flex:none}
.sp-plan-stats p{margin:0;display:grid;gap:4px}
.sp-plan-stats strong{font-size:19px;color:var(--text)}
.sp-plan-stats span{font-size:12px;line-height:1.6;color:var(--muted)}
.sp-plan-cost{display:flex;align-items:center;gap:12px;padding:15px;border:1px solid var(--border);border-radius:15px;background:var(--surface);margin-top:23px}
.sp-plan-cost .art{width:36px;height:36px;object-fit:contain;flex:none}
.sp-plan-cost strong{font-size:16px;line-height:1.5;color:var(--text);overflow-wrap:anywhere}
.sp-plan-cost p{font-size:12px;color:var(--muted);line-height:1.7;margin:5px 0 0}
.school-profile .learning-check .course-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.school-profile .course-check-reset{margin-top:20px;background:#ffe6b8;color:#402614}
.sp-final-actions{display:flex;align-items:center;justify-content:center;gap:14px;margin:40px auto 0}
.school-profile>.sh-sources{margin-top:24px}
@media(max-width:1100px){.sp-programs{grid-template-columns:1fr}.sp-programs:not(.is-one){max-width:800px;margin:auto}.school-profile .sh-intro{align-items:flex-start}.school-profile .sh-intro .sh-actions{max-width:240px}.school-profile .sh-intro-copy>p{font-size:15px}}
@media(max-width:800px){.sp-planner-panel{grid-template-columns:1fr}.sp-plan-form{border-right:0;border-bottom:1px solid var(--border)}.school-profile .sh-intro{flex-direction:column}.school-profile .sh-intro .sh-actions{max-width:none;width:100%;flex-direction:row}.school-profile .sh-intro .button{width:auto;flex:1}.school-profile .learning-check .course-check-grid{grid-template-columns:1fr}.sp-programs.is-one .sp-program{display:block}.sp-programs.is-one .sp-points{margin:0 0 20px}.sp-programs.is-one .sp-program-actions{display:block}.sp-programs.is-one .sp-direction-link{margin-top:9px}}
@media(max-width:500px){.school-profile .sp-hero .sh-hero-heading{top:22%;left:5%;width:43%}.school-profile .sp-hero .sh-hero-heading h1{font-size:clamp(17px,5vw,24px)}.school-profile .sp-hero .sh-hero-heading h1>span{font-size:.52em;line-height:1.45;margin-top:7px}.school-profile .sh-intro-copy{gap:12px}.school-profile .sh-intro-copy>p{font-size:14px;line-height:1.8}.sp-brand-mark{width:38px;height:42px}.sp-brand-mark img,.sp-brand-mark .art{width:36px!important;height:36px!important}.school-profile .sh-intro .sh-actions{flex-direction:column}.school-profile .sh-intro .button{width:100%}.sp-program{padding:20px}.sp-program-heading{gap:12px}.sp-program-heading .art{width:44px;height:44px}.sp-program h3{font-size:21px}.sp-program>p{font-size:14px}.sp-goals button{font-size:12px;flex:1 1 43%;padding:10px}.sp-plan-form,.sp-plan-result{padding:21px 18px}.sp-plan-inputs{gap:17px 10px}.sp-plan-field label{font-size:12px}.sp-stepper{grid-template-columns:32px minmax(0,1fr) 32px}.sp-stepper input{font-size:14px;padding:13px 2px}.sp-plan-form .sh-actions{flex-direction:column}.sp-plan-form .button{width:100%}.sp-plan-total>strong{font-size:42px}.sp-final-actions{flex-direction:column}.sp-final-actions>.button{width:100%}}

.sp-plan-inputs .sp-plan-field{display:flex;flex-direction:column}.sp-plan-inputs .sp-stepper{margin-top:auto}.sp-plan-form .button-outline{background:#ffe6b8;border-color:#d5b981;color:#402614}

.school-profile .sh-actions{display:flex}

@media(max-width:500px){.school-profile .sh-intro-copy{display:block;text-align:left}.school-profile .sh-intro-copy>p{text-align:left}.school-profile .sp-brand-mark{float:left;margin:3px 12px 6px 0}}

.school-profile>.sh-sources{width:fit-content;max-width:100%;padding:12px 18px;border-radius:16px;align-items:center}.school-profile>.sh-sources>.art{width:28px;height:28px}
