:root{--ink:#263e60;--ink2:#263e60;--soft:#fff;--royal:#263e60;--gold-deep:#dfb852}
body:not(.swim-theme) .eyebrow,body:not(.swim-theme) .tag,body:not(.swim-theme) .card-number{color:var(--gold);background:var(--ink);display:table;padding:5px 10px;border-radius:3px;max-width:100%}
body:not(.swim-theme) nav#navigation>a[aria-current]{color:var(--gold);background:var(--ink);padding:5px 8px;border-radius:3px}
body:not(.swim-theme) .text-link:hover,body:not(.swim-theme) .resources>a:hover span,body:not(.swim-theme) .education-banner strong{color:var(--gold);background:var(--ink)}
.announcement a,.image-note span,.eyebrow.light,.dark-section .eyebrow,.haf-panel .tag,.region-jump a,.hp-brand-panel a,footer a:hover{color:#fff}
.haf-seasons .next{color:#171b1d}
.footer-logo{display:block;max-width:250px;width:100%;background:transparent;margin-bottom:20px}
.footer-logo img{display:block;width:100%;height:auto}
.school-scorecard{background:#fff}
.scorecard-note{margin-top:16px}
.scorecard-content{max-width:850px}
.home-action-grid,.training-grid{grid-template-columns:1fr 1fr}
.home-action-grid .action-photos{grid-column:auto;grid-template-columns:1fr}
@media(max-width:700px){.home-action-grid,.training-grid{grid-template-columns:1fr}}
body{color:#222c34}
h1,h2,h3{color:var(--ink)}
.football-hero h1,.football-preview h2,.dark-section h2,.dark-section h3,footer h2{color:#fff}
footer{background:var(--ink)}
.announcement,.football-preview,.football-hero,.dark-section,.education-callout{background:var(--ink)}
.haf-panel{background:var(--ink2);border-color:var(--gold)}
.image-note{background:var(--ink)}
.image-caption,.editorial-photo figcaption{background:var(--ink)}
.button.dark:hover,.nav-contact:hover{background:var(--royal);color:#fff}
.cta .button.gold:hover{background:#edcb78;color:var(--ink)}
.reel{background:var(--ink)}
body:not(.swim-theme) .photo-service .text-link,body:not(.swim-theme) .service-card .text-link{color:var(--royal)}
body:not(.swim-theme) .photo-service:hover .text-link,body:not(.swim-theme) .service-card .text-link:hover{color:var(--ink)}
nav#navigation>a:not(.nav-contact):after{background:var(--royal)}
.school-paths a{background:var(--soft)}
.school-paths a{border:1px solid var(--line);border-left:4px solid var(--gold)}
.school-paths a:hover{background:#f5f5f5}
.button.outline:hover{background:#f5f5f5}
.button.dark:hover,.nav-contact:hover{text-decoration:underline;text-underline-offset:4px}
.button.outline-light:hover{background:var(--ink2)}
.quick-contact a:focus-visible{box-shadow:0 0 0 6px var(--ink)}
.swim-theme{--royal:#144390}
.mobile-events{display:none}
@media(max-width:700px){
 .all-sfk-home .announcement,.all-sfk-home .whats-on{display:none}
 .mobile-events{display:block;padding:35px 0;background:var(--soft);overflow:hidden}
 .mobile-events h2{font-size:1.9rem;max-width:20ch;margin-bottom:24px}
 .mobile-events .eyebrow{margin-bottom:10px}
 .mobile-event-track{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 20px 12px;scroll-padding-inline:20px;scrollbar-width:thin;overscroll-behavior-x:contain}
 .mobile-event-card{flex:0 0 86%;min-width:0;background:#fff;border:1px solid #d8e0e8;border-top:4px solid #dfb852;border-radius:14px;padding:24px;scroll-snap-align:start;display:flex;flex-direction:column}
 .mobile-event-card h3{font-size:1.65rem;margin:8px 0 16px}
 .mobile-event-card p{font-size:1rem;margin-bottom:24px}
 .mobile-event-card .button{margin-top:auto;align-self:flex-start}
 .event-dots{display:flex;justify-content:center;gap:0;margin-top:4px}
 .event-dots button{width:44px;height:44px;border:0;background:transparent;display:grid;place-items:center}
 .event-dots button:after{content:'';display:block;width:8px;height:8px;border-radius:50%;background:#a5b3c1}
 .event-dots button[aria-current=true]:after{background:var(--royal);width:22px;border-radius:5px}
}
