/* Scoped to the school homepage; content remains editable in WordPress. */
body.home .sss-home { width:100%; max-width:1600px !important; margin-inline:auto; color:#163348; font-size:20px; line-height:1.65; }
.sss-home *, .sss-home *::before, .sss-home *::after { box-sizing:border-box; }
.sss-home h1,.sss-home h2,.sss-home p { margin:0 0 18px; }
.sss-home h1 { font-size:clamp(36px,4vw,62px); line-height:1.08; font-weight:700; letter-spacing:-.03em; }
.sss-home h2 { font-size:clamp(28px,3vw,36px); line-height:1.2; font-weight:650; }
.sss-home a { color:#12516e; text-underline-offset:4px; }
.sss-home a:focus-visible { outline:3px solid #c56f10; outline-offset:5px; }
.sss-home .sss-home-eyebrow { font-size:16px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.sss-home-hero { display:grid; grid-template-columns:1.15fr 1fr; background:#e9f2f6; border-radius:18px; overflow:hidden; }
.sss-home-hero > img { display:block; width:100%; height:100%; min-height:420px; object-fit:cover; object-position:50% 50%; }
.sss-home-intro { padding:44px 36px; align-self:center; }
.sss-home .sss-home-button { display:inline-block; background:#145773; color:white; padding:13px 22px; border-radius:7px; text-decoration:none; font-weight:650; font-size:18px; }
.sss-home .sss-home-button:hover { background:#0c3c52; }
.sss-home-announcement { margin-top:30px; padding:28px 32px; background:#f7f9fa; border-left:4px solid #3782a0; border-radius:0 12px 12px 0; }
.sss-home-announcement p:last-child { margin-bottom:0; }
.sss-home-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-top:30px; }
.sss-home-card { border:1px solid #dbe5e9; border-radius:14px; padding:32px; }
.sss-home-card ul { padding-left:24px; margin-bottom:0; }
.sss-home-leaders { background:#e9f2f6; border-color:#e9f2f6; }
.sss-home-leaders > p:last-child { margin:18px 0 0; }
.sss-home-feature { display:grid; grid-template-columns:1fr 1fr; gap:32px; align-items:center; margin-top:40px; }
.sss-home-feature img { display:block; width:100%; height:300px; object-fit:cover; object-position:65% 65%; border-radius:14px; }
@media(max-width:700px) {
 .sss-home-hero,.sss-home-grid,.sss-home-feature { grid-template-columns:1fr; }
 .sss-home-hero > img { height:240px; min-height:0; object-position:50% 65%; }
 .sss-home-intro,.sss-home-card,.sss-home-announcement { padding:24px; }
 .sss-home-feature { gap:22px; }
 .sss-home-feature img { height:240px; }
}
.sss-home-private { margin-top:30px; }

.sss-home-association { margin-top:48px; padding-top:28px; border-top:1px solid #dbe5e9; text-align:center; }
.sss-home-association img { display:inline-block; width:280px; max-width:100%; height:auto; }
