/* Parent-facing school exams and location. Scoped to preserve finance screens. */
.parent-exams{padding:60px 0;background:#fff8f8;border-block:1px solid #f5e3e5;margin-top:54px}
.parent-exams .section-heading{align-items:center}
.parent-exams .section-heading h2{font-size:36px;max-width:650px}
.parent-exams .section-heading>p{max-width:340px;font-size:15px}
.parent-exam-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.parent-exam-card{position:relative;display:flex;flex-direction:column;gap:14px;padding:32px;background:#fff;border:1px solid #edd9dd;border-top:4px solid var(--red);border-radius:16px;min-width:0}
.parent-exam-card.middle{border-color:#dce3ee;border-top-color:var(--navy)}
.parent-exam-label{font-size:12px;font-weight:800;letter-spacing:1.1px;color:#b21929;text-transform:uppercase}
.middle .parent-exam-label{color:var(--navy)}
.parent-exam-card h3{font-size:28px;letter-spacing:-.6px;line-height:1.25;max-width:440px}
.parent-exam-card p{font-size:16px;line-height:1.7;color:#536174;max-width:470px}
.parent-grade-tags{display:flex;flex-wrap:wrap;gap:9px;margin:2px 0 6px}
.parent-grade-tags a{padding:8px 14px;border:1px solid #e7d7da;border-radius:7px;background:#fff8f8;font-size:14px;font-weight:700;min-height:42px}
.middle .parent-grade-tags a{background:#f3f6fa;border-color:#dce3ee}
.parent-grade-tags a:hover{border-color:var(--red);color:var(--red)}
.parent-exam-card>.button{align-self:flex-start;margin-top:auto}
.parent-exams-note{margin-top:20px;font-size:14px;color:#536174}
.parent-exams-note a{text-decoration:underline;text-underline-offset:3px;font-weight:700}
.school-exams-page .school-intro{background:#fff7f7;border:1px solid #f1dfe2;border-radius:18px;padding:34px;margin-bottom:26px}
.school-exams-page .school-intro.middle{background:#f3f6fb;border-color:#dce4ee}
.school-series-nav{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}
.school-series-nav a{padding:10px 16px;font-size:14px;font-weight:700;border:1px solid #d6dee8;border-radius:8px;background:white}
.school-series-nav a[aria-current=page]{background:var(--navy);border-color:var(--navy);color:white}
.school-exams-page .school-intro .eyebrow{margin-bottom:12px}
.school-exams-page .page-title{font-size:38px;margin-bottom:14px;max-width:770px;line-height:1.2}
.school-exams-page .school-intro .lead{max-width:850px;margin:0;font-size:17px;line-height:1.75;color:#526174}
.school-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;margin:26px 0 0;padding:24px 0 0;border-top:1px solid #ead8dd;gap:22px}
.school-steps li{display:flex;gap:12px;align-items:flex-start}
.school-step-number{display:grid;place-items:center;width:30px;height:30px;flex:none;border-radius:50%;background:var(--red);color:white;font-weight:800;font-size:14px}
.school-steps strong{display:block;font-size:15px;line-height:1.4;margin:2px 0 5px}
.school-steps small{display:block;font-size:13px;line-height:1.6;color:#536174}
.school-choice-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;margin:32px 0 24px}
.school-choice-bar h2{font-size:24px;letter-spacing:-.4px}
.school-grade-filter{display:flex;flex-wrap:wrap;gap:8px}
.school-grade-filter a{padding:9px 15px;min-height:44px;border:1px solid #d7dfe8;border-radius:8px;font-size:14px;font-weight:700;background:#fff}
.school-grade-filter a[aria-current=page]{background:var(--red);border-color:var(--red);color:#fff}
.school-exam-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start}
.school-exam-grid.filtered{grid-template-columns:minmax(0,640px)}
.school-exam-card{min-width:0;border:1px solid #dce3eb;border-radius:16px;background:white;overflow:hidden}
.school-exam-card-header{background:#f6f8fb;border-bottom:1px solid #e0e6ed;padding:24px;display:flex;gap:16px;align-items:center}
.school-grade-number{display:flex;flex-direction:column;align-items:center;justify-content:center;width:68px;min-height:74px;border-radius:12px;flex:none;background:white;border:1px solid #e2e6ed;color:var(--red);font-size:32px;font-weight:800;line-height:1}
.school-grade-number small{font-size:12px;font-weight:700;color:#546174;margin-top:7px}
.school-exam-card-header h2{font-size:20px;line-height:1.4;letter-spacing:-.3px}
.school-exam-card-body{padding:24px}
.school-exam-facts{display:grid;grid-template-columns:1fr 1fr;gap:18px 12px;margin:0}
.school-exam-facts div{min-width:0}
.school-exam-facts dt{font-size:12px;line-height:1.4;color:#626f80;margin-bottom:6px}
.school-exam-facts dd{margin:0;font-size:16px;line-height:1.4;font-weight:700;overflow-wrap:anywhere}
.school-exam-facts .exam-fee{font-size:22px;color:var(--navy)}
.school-seats{font-size:13px;color:#506176;margin-top:20px;padding:10px 12px;background:#f3f6fa;border-radius:7px}
.school-apply{margin-top:20px;border:0;padding:0}
.school-apply>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:48px;padding:13px 17px;background:var(--red);color:#fff;border-radius:8px;font-size:15px;font-weight:700;cursor:pointer;list-style:none}
.school-apply>summary::-webkit-details-marker{display:none}
.school-apply>summary:after{content:'+';font-size:22px;line-height:1}
.school-apply[open]>summary:after{content:'−'}
.school-apply>summary:focus-visible{outline:3px solid #4389cb;outline-offset:4px}
.school-apply .form-grid{display:grid;grid-template-columns:1fr;gap:17px;margin-top:23px}
.school-apply .field{font-size:14px}
.school-apply .field input{font-size:16px;min-width:0}
.school-apply .full{grid-column:1/-1;min-width:0}
.school-apply .check{font-size:13px;line-height:1.6}
.school-apply .school-consent a{font-size:13px;text-decoration:underline;text-underline-offset:3px;color:#225784}
.school-apply .button{width:100%;font-size:14px;padding-inline:14px}
.school-login-actions{display:grid;gap:11px;margin-top:20px}
.school-login-actions p{font-size:13px;color:#536174;line-height:1.7}
.school-login-actions p a{text-decoration:underline;font-weight:700}
.school-exams-page .school-empty{padding:28px;border:1px dashed #cad3df;border-radius:12px;color:#536174;margin:20px 0}
.school-exams-page .payment-info{padding:18px 22px;background:#f6f8fb;border-radius:0 10px 10px 0;font-size:14px;line-height:1.8;margin-top:30px}
.school-help{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px;margin-top:32px;border-top:1px solid #e2e7ed;padding-top:25px}
.school-help h2{font-size:22px;letter-spacing:-.4px;margin-bottom:7px}
.school-help p{font-size:14px;color:#536174}
.contact-section .contact-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:56px}
.location-poster{display:block;max-width:590px;margin:0 auto;background:white;border:1px solid #dfe5eb;border-radius:16px;overflow:hidden;box-shadow:0 12px 35px #152b480c}
.location-poster img{display:block;width:100%;height:auto}
.location-poster span{display:block;padding:12px 16px;text-align:center;color:#44556c;background:#fff;font-size:13px;font-weight:700}
.contact-section .contact-copy p{max-width:450px}
.contact-section .contact-copy .location-explanation{font-size:15px;color:#536174;line-height:1.8;margin:18px 0}
@media(max-width:1000px){
 .school-exam-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .parent-exam-card{padding:25px}
 .parent-exam-card h3{font-size:25px}
 .school-steps{gap:16px}
 .contact-section .contact-grid{gap:32px}
}
@media(max-width:760px){
 .parent-exams{padding:42px 0;margin-top:35px}
 .parent-exam-options,.school-exam-grid,.school-exam-grid.filtered{grid-template-columns:minmax(0,1fr)}
 .parent-exams .section-heading h2{font-size:29px;line-height:1.2}
 .parent-exams .section-heading>p{max-width:none;margin-top:15px}
 .parent-exam-card{padding:25px;gap:13px}
 .parent-exam-card>.button{width:100%;align-self:stretch}
 .school-exams-page .school-intro{padding:24px}
 .school-exams-page .page-title{font-size:30px;letter-spacing:-.7px}
 .school-steps{grid-template-columns:1fr;gap:17px;padding-top:23px}
 .school-exams-page .school-intro .lead{font-size:15px}
 .school-series-nav{gap:8px}
 .school-series-nav a{flex:1;text-align:center;padding:11px;font-size:13px}
 .school-choice-bar{align-items:flex-start;flex-direction:column}
 .school-grade-filter{gap:7px}
 .school-grade-filter a{padding:9px 12px;font-size:13px}
 .school-exam-card-header{padding:20px}
 .school-exam-card-body{padding:22px}
 .school-help .button{width:100%}
 .contact-section .contact-grid{grid-template-columns:minmax(0,1fr);gap:32px}
 .location-poster{width:100%;max-width:570px}
}
@media(prefers-reduced-motion:reduce){.parent-exam-card .button{transition:none}}

.school-exam-card>.school-exam-poster{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-bottom:1px solid #dce3eb}
