/* School service: extends the existing CRV header, controls and mobile typography. */
.crv-design body.school-page main>section.school-hero{background:var(--green);padding:38px 0 68px;color:var(--paper)}
.school-page .school-hero .breadcrumbs{color:#d4e0d9;margin-bottom:32px}
.school-page .school-hero .eyebrow{color:var(--gold-light)}
.school-page .school-hero .hero-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:58px;align-items:center}
.school-page .school-hero h1{font:400 clamp(3rem,4.7vw,4.6rem)/1.08 Georgia,'Times New Roman',serif;letter-spacing:-.035em;color:var(--paper);margin:20px 0 26px;max-width:700px}
.school-page .school-hero .hero-copy>p{font-size:1.12rem;line-height:1.75;color:#e2e9e3;max-width:620px;margin:0 0 28px}
.school-page .school-hero .actions{align-items:flex-start;flex-direction:column;gap:15px}
.crv-design body.school-page .school-hero a.button.ui-button{background:var(--paper);border-color:var(--paper);color:var(--green)}
.crv-design body.school-page .school-hero a.button.ui-button:hover{background:var(--gold-light);border-color:var(--gold-light)}
.school-page .school-secondary{display:inline-flex;align-items:center;min-height:44px;color:var(--paper);text-underline-offset:7px;text-decoration-color:var(--gold-light);font-size:1rem;line-height:1.5}
.school-photo{min-width:0;margin:0;border:1px solid var(--gold-light);overflow:hidden}
.school-photo img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center}
.crv-design body.school-page main>section.school-stages{padding:68px 0 50px}
.school-stages h2,.school-coordination h2{font-size:clamp(2.25rem,3.5vw,3.5rem);max-width:1050px;margin:14px 0 32px}
.school-stages-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.school-stage{min-width:0;padding:30px 28px;border:1px solid #a7803b66;background:var(--white);display:flex;flex-direction:column;align-items:flex-start}
.school-stage svg{display:block;width:38px;height:38px;color:var(--green);stroke-width:1.5;margin-bottom:23px}
.school-stage h3{font:400 1.65rem/1.25 Georgia,'Times New Roman',serif;min-height:4.2rem;margin:0 0 13px}
.school-stage p{margin:0;color:var(--muted);line-height:1.75;font-size:1rem}
.school-reference{margin-top:36px;padding-top:30px;border-top:1px solid var(--line)}
.school-reference h3{font:400 clamp(1.6rem,2.3vw,2.1rem)/1.25 Georgia,'Times New Roman',serif;margin:0 0 14px;color:var(--green)}
.school-reference p{max-width:820px;margin:0;color:var(--muted);font-size:1.02rem;line-height:1.75}
.school-reference-logo{width:min(340px,100%);margin:22px 0 0;padding:10px;background:#fff;border:1px solid var(--line)}
.school-reference-logo img{display:block;width:100%;height:auto}
.crv-design body.school-page main>section.school-coordination{padding:0 0 68px}
.school-coordination .wrap{border-top:1px solid var(--gold);padding-top:35px}
.school-coordination h2{margin-bottom:20px}
.coordination-copy{font-size:1.12rem;color:var(--muted);max-width:950px;line-height:1.75;margin:0 0 26px}
.school-benefits{list-style:none;padding:0;margin:0 0 28px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
.school-benefits li{padding:12px 24px;color:var(--green);text-align:center;line-height:1.5;border-right:1px solid var(--gold)}
.school-benefits li:first-child{padding-left:0}.school-benefits li:last-child{border-right:0;padding-right:0}
.school-judicial{margin:0;color:var(--green);border-left:2px solid var(--gold);padding-left:17px;line-height:1.7}
.crv-design body.school-page main>section.school-contact{padding:68px 0}
.school-contact .contact-grid{gap:65px;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
.school-contact h2{margin-top:0}.school-contact .contact-data{padding-top:0}
.school-service-callout{background:var(--paper);border-bottom:1px solid var(--line)}
.crv-design body main>section.school-service-callout{padding:40px 0}
.school-service-callout .wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:center}
.school-service-callout h2{font-size:clamp(1.8rem,3vw,2.5rem);margin:10px 0 12px}
.school-service-callout p{color:var(--muted);max-width:740px;margin:0}
@media(max-width:1000px){.school-page .school-hero .hero-grid{gap:35px}.school-stage{padding:26px 22px}}
@media(max-width:850px){
 .crv-design body.school-page main>section.school-hero{padding:30px 0 50px}
 .school-page .school-hero .hero-grid{grid-template-columns:minmax(0,1fr);gap:32px}
 .school-page .school-hero h1{max-width:690px}.school-page .school-hero .hero-copy>p{max-width:660px}
 .school-photo{max-width:640px;width:100%}.school-photo img{aspect-ratio:16/10;object-position:center 55%}
 .school-stages-grid{grid-template-columns:minmax(0,1fr);gap:16px}.school-stage{padding:28px}
 .school-stage h3{min-height:0;font-size:1.7rem}.school-stage svg{margin-bottom:18px}
 .school-contact .contact-grid{grid-template-columns:minmax(0,1fr);gap:32px}
 .school-benefits li{padding:10px 15px}
 .crv-design body.school-page main>section.school-stages{padding:50px 0 40px}
 .crv-design body.school-page main>section.school-coordination{padding-bottom:50px}
 .school-service-callout .wrap{grid-template-columns:minmax(0,1fr);gap:22px}.school-service-callout .button{justify-self:start}
}
@media(max-width:560px){
 .school-page .school-hero h1{font-size:clamp(2.5rem,10.4vw,3.4rem);overflow-wrap:normal;text-wrap:pretty}
 .school-page .school-hero .hero-copy>p,.coordination-copy{font-size:1.08rem}
 .school-page .school-hero .actions{align-items:stretch}.school-page .school-hero .school-secondary{align-self:flex-start}
 .school-photo img{aspect-ratio:4/3}.school-stages h2,.school-coordination h2{font-size:2.2rem}
 .school-benefits{grid-template-columns:minmax(0,1fr);margin-bottom:24px}
 .school-benefits li,.school-benefits li:first-child,.school-benefits li:last-child{border-right:0;border-bottom:1px solid var(--line);text-align:left;padding:12px 0}
 .school-benefits li:last-child{border-bottom:0}
 .crv-design body.school-page main>section.school-contact{padding:50px 0}
 .school-contact h2{font-size:2.4rem}.school-coordination .wrap{padding-top:28px}
 .school-page .eyebrow{font-size:.68rem;letter-spacing:.1em}
}
