/* Focused additions; preserve the existing visual theme and portal navigation. */
body.public-site .hybrid-main-nav>a.hybrid-nav-link[href$="contact.php"]{font-weight:800}
body.public-site .sidebar .menu-contact .menu-icon-box{display:grid;place-items:center;color:#0a7258;font-size:22px}
@media(min-width:1101px) and (max-width:1450px){
 body.public-site.hybrid-navigation .hybrid-main-nav>a,
 body.public-site.hybrid-navigation .hybrid-main-nav>details>summary{padding-left:8px;padding-right:8px;font-size:12px}
 body.public-site.hybrid-navigation .hybrid-main-nav{gap:0}
}
/* Contact page */
body.public-site .contact-standalone-page{padding-top:32px;padding-bottom:64px}
body.public-site .contact-standalone-page>.container{max-width:1160px}
.contact-page-hero{padding:34px 36px;border-radius:26px;background:linear-gradient(120deg,#eaf8f2,#f4f8ff);border:1px solid #e0eae8;box-shadow:0 12px 30px rgba(18,56,67,.055)}
.contact-page-hero .eyebrow{color:#12745b;font-weight:900;letter-spacing:.12em}
.contact-page-hero h1{margin:8px 0 10px;font-size:clamp(26px,3vw,39px);line-height:1.25;color:#15394a}
.contact-page-hero p{color:#526578;max-width:740px;line-height:1.8;margin:0;font-size:15px}
.contact-page-hero>a{margin-top:18px;display:inline-flex;gap:9px;align-items:center;color:#096f58;font-weight:800;text-decoration:none}
.contact-page-layout{display:grid;grid-template-columns:minmax(0,.97fr) minmax(0,1.03fr);gap:20px;margin-top:22px}
.contact-page-card,.contact-method,.contact-page-empty{border:1px solid #dce7ec;background:white;box-shadow:0 12px 28px rgba(19,52,72,.04);border-radius:22px}
.contact-page-card{padding:27px}
.contact-page-card-heading{display:flex;align-items:center;gap:15px}
.contact-page-card-heading>span{width:54px;height:54px;display:grid;place-items:center;border-radius:15px;font-size:27px;background:#e9f7f1;flex-shrink:0}
.contact-page-card-heading small{display:block;color:#0b7959;font-weight:800;margin-bottom:3px}
.contact-page-card-heading h2{margin:0;font-size:clamp(18px,2vw,23px);color:#17384d;line-height:1.4;overflow-wrap:anywhere}
.contact-page-primary>p{margin:22px 0;color:#526578;line-height:1.8}
.contact-page-address{padding:18px;border-radius:16px;background:#f3f8fb;border:1px solid #e0eaf0}
.contact-page-address strong{color:#163d51}
.contact-page-address p{margin:8px 0 0;color:#516578;line-height:1.7;overflow-wrap:anywhere}
.contact-page-note{margin-top:22px;color:#65778a;font-size:12px;line-height:1.7}
.contact-page-methods{display:grid;grid-template-columns:1fr;gap:12px;align-content:start}
.contact-method{display:flex;gap:14px;align-items:center;min-height:82px;padding:14px 18px;color:inherit;text-decoration:none;transition:box-shadow .2s,transform .2s,border-color .2s}
a.contact-method:hover{border-color:#92d3bd;transform:translateY(-2px);box-shadow:0 16px 26px rgba(19,52,72,.1)}
.contact-method .method-icon{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;border-radius:15px;background:#e7f5ef;color:#0c7858;font-size:24px;font-weight:800}
.contact-method:nth-child(2n) .method-icon{background:#eaf2ff;color:#1d66b9}
.contact-method>span:nth-child(2){min-width:0;flex:1}
.contact-method small{display:block;color:#708195;font-weight:800;font-size:12px}
.contact-method strong{display:block;margin-top:3px;color:#213d54;font-size:15px;line-height:1.5;overflow-wrap:anywhere}
.contact-method>b{color:#0a785a;font-size:22px}
.contact-page-empty{padding:22px;color:#59697b;line-height:1.7}
/* Chips closely follow the familiar subject + age filter reference. */
.sport-facet-panel,.schedule-facet-panel{margin:0 0 18px;padding:18px 19px;border:1px solid #e4ebf3;background:#fff;border-radius:20px;box-shadow:0 5px 16px rgba(25,62,88,.03)}
.facet-heading{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:0 0 12px;color:#516681;font-size:13px;font-weight:850}
.facet-heading:not(:first-child){margin-top:18px}
.facet-heading small{font-size:11px;font-weight:550;color:#76879a}
.sport-facet-buttons{display:flex;flex-wrap:wrap;gap:8px}
.sport-facet-chip{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:8px 14px;border:1px solid #dbe5ee;border-radius:99px;background:#fff;color:#234058;font-family:inherit;font-size:13px;font-weight:750;line-height:1.35;white-space:normal;text-align:center;cursor:pointer;transition:background .16s,border-color .16s,transform .16s}
.sport-facet-chip:hover{border-color:#99c7bd;background:#eef9f6;transform:translateY(-1px)}
.sport-facet-chip:focus-visible{outline:3px solid #7cc7ae;outline-offset:2px}
.sport-facet-chip.is-active,.sport-facet-chip[aria-pressed="true"]{background:#0c7857;border-color:#0c7857;color:#fff;box-shadow:0 5px 13px rgba(12,120,87,.13)}
.sport-facet-chip small{font-size:12px;color:#687d8f;opacity:.85}
.sport-facet-chip.is-active small{color:#e5fff4}
.sport-facet-chip .facet-dot{width:9px;height:9px;flex:0 0 9px;border-radius:50%;background:#dd7545}
.sport-facet-chip:nth-child(4n) .facet-dot{background:#2e79d0}
.sport-facet-chip:nth-child(4n + 1) .facet-dot{background:#8c5acb}
.sport-facet-chip:nth-child(4n + 2) .facet-dot{background:#20a07b}
.sport-facet-chip.is-active .facet-dot{background:white;opacity:.9}
.sport-event-venue{display:block;margin-top:5px;color:#0b735a!important;font-size:12px!important;font-weight:750}
body.public-site [data-sport-group][hidden],body.public-site [data-sport-mode][hidden],body.public-site .sport-filter-empty[hidden]{display:none!important}
/* Admin sport filters and venue row: no global panel changes. */
.admin-sport-list-panel .sport-facet-panel{padding:16px 18px;background:#f8fbff;border-radius:16px}
.admin-sport-list-panel .sport-facet-chip{font-size:12px;min-height:35px;padding:6px 12px}
/* Schedule filters are actual GET links to handle pagination accurately. */
.schedule-facet-panel{margin-top:8px}
.schedule-facet-panel .sport-facet-chip{text-decoration:none}
.schedule-result-meta{font-size:13px;color:#50677a;margin:5px 0 15px}
.schedule-result-meta>a{color:#0a785a;font-weight:850;margin-left:10px;text-decoration:none}
@media(max-width:800px){
 .contact-page-layout{grid-template-columns:1fr}
 .contact-page-hero{padding:25px 22px}
 body.public-site .contact-standalone-page{padding-top:18px;padding-bottom:44px}
 .sport-facet-panel,.schedule-facet-panel{padding:14px 12px;border-radius:17px}
 .sport-facet-buttons{gap:6px}
 .sport-facet-chip{font-size:12px;padding:7px 11px;min-height:35px}
}
@media(max-width:400px){
 .contact-page-hero{padding:23px 16px}.contact-page-card{padding:19px}.contact-method{padding:12px}
 .facet-heading{font-size:12px}.facet-heading small{font-size:10px}.sport-facet-chip{font-size:11px;padding:7px 10px}
}
