/* finesse · register=product · map-led school workbench · density=7 */
.community-page-shell:has(.school-finder-fullscreen) .community-site-header{position:sticky;z-index:50;top:0}.community-page-shell:has(.school-finder-fullscreen) .community-site-footer{display:none}.school-finder-fullscreen{--sd-bg:#f2efe9;--sd-surface:#fffdf8;--sd-ink:#252a28;--sd-copy:#666c67;--sd-border:#d9d5cb;--sd-accent:#3f6b57;height:calc(100dvh - 70px);min-height:700px;padding:8px 10px 10px;background:var(--sd-bg);color:var(--sd-ink)}
.school-programme-mode{display:flex;align-items:center;gap:5px;height:52px;margin:0 0 8px;padding:5px 7px;border:1px solid var(--sd-border);border-radius:14px;background:var(--sd-surface)}.school-programme-mode>div{display:grid;gap:1px;min-width:172px;padding:0 10px}.school-programme-mode strong{font-size:13px}.school-programme-mode span{color:var(--sd-copy);font-size:10px}.school-programme-mode button{min-height:38px;padding:0 16px;border:0;border-radius:9px;background:transparent;color:#5b615d;font-size:12px;font-weight:700;cursor:pointer}.school-programme-mode button.active{background:var(--sd-accent);color:var(--sd-surface)}
.school-directory-shell{display:grid;grid-template-columns:360px minmax(0,1fr);gap:8px;height:calc(100% - 60px);min-height:0}.school-directory-list{display:flex;min-height:0;flex-direction:column;overflow:hidden;border:1px solid var(--sd-border);border-radius:18px;background:var(--sd-surface)}.school-filter-panel{padding:17px 17px 13px}.school-filter-heading{display:flex;align-items:center;justify-content:space-between}.school-filter-heading>span{display:flex;align-items:center;gap:7px;color:var(--sd-accent);font-size:11px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.school-filter-heading>button{border:0;background:transparent;color:var(--sd-accent);font-size:10px;cursor:pointer}.school-search{display:flex;align-items:center;gap:8px;margin-top:12px;padding:0 11px;border:1px solid var(--sd-border);border-radius:10px;background:#f7f5f0;color:#767b76}.school-search input{width:100%;height:38px;border:0;outline:0;background:transparent;color:var(--sd-ink);font:inherit;font-size:12px}.school-filter-panel fieldset{min-width:0;margin:13px 0 0;padding:0;border:0}.school-filter-panel legend{margin-bottom:7px;color:#575e59;font-size:10px;font-weight:800}.school-filter-chips{display:flex;flex-wrap:wrap;gap:5px}.school-filter-chips button{display:flex;align-items:center;gap:4px;min-height:29px;padding:0 9px;border:1px solid #dfdcd3;border-radius:8px;background:#f7f5f0;color:#606661;font-size:10px;cursor:pointer}.school-filter-chips button.active{border-color:#aac0b1;background:#e6eee8;color:#315f4b;font-weight:800}.school-filter-chips.compact button{padding-inline:8px}.school-grade-filter{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.school-grade-filter button{min-height:27px;padding:0;border:1px solid #dfdcd3;border-radius:7px;background:#f7f5f0;color:#666c67;font-size:10px;cursor:pointer}.school-grade-filter button.active{border-color:var(--sd-accent);background:var(--sd-accent);color:#fff}.school-special-filter select{width:100%;height:36px;padding:0 10px;border:1px solid var(--sd-border);border-radius:9px;background:#f7f5f0;color:var(--sd-ink);font-size:11px}.school-directory-count{padding:9px 17px;border-block:1px solid #e3dfd7;color:var(--sd-copy);font-size:10px}.school-directory-count strong{color:var(--sd-ink);font-size:12px}.school-directory-count span{margin:0 5px}.school-directory-cards{display:grid;min-height:0;overflow:auto}.school-directory-cards article{display:grid;grid-template-columns:27px minmax(0,1fr) 28px;gap:10px;padding:13px 15px;border-bottom:1px solid #e7e3dc;cursor:pointer;transition:background .14s ease}.school-directory-cards article:hover,.school-directory-cards article.selected{background:#edf3ee}.school-directory-cards article:focus-within{outline:2px solid var(--sd-accent);outline-offset:-2px}.school-card-level{display:grid;place-items:center;width:27px;height:27px;border:3px solid var(--sd-surface);border-radius:50%;color:#fff;box-shadow:0 1px 6px rgba(36,42,39,.18)}.school-directory-cards small{color:var(--sd-copy);font-size:9px}.school-directory-cards h2{margin:3px 0 4px;font-size:14px;line-height:1.18}.school-directory-cards p{display:flex;align-items:flex-start;gap:4px;margin:0;color:var(--sd-copy);font-size:9px;line-height:1.35}.school-directory-cards p svg{flex:0 0 auto}.school-card-select{display:grid;place-items:center;width:28px;height:28px;border:1px solid #d6ddd7;border-radius:8px;color:var(--sd-accent)}
.school-directory-map{position:relative;min-width:0;overflow:hidden;border:1px solid var(--sd-border);border-radius:18px;background:#e9e8e2;box-shadow:0 10px 30px rgba(47,54,49,.07)}.school-directory-map-canvas{position:absolute;inset:0}.school-directory-legend{position:absolute;z-index:5;left:14px;bottom:14px;display:flex;flex-wrap:wrap;gap:9px;padding:8px 10px;border:1px solid rgba(217,213,203,.9);border-radius:10px;background:rgba(255,253,248,.94);color:#5f655f;font-size:9px}.school-directory-legend span{display:flex;align-items:center;gap:5px}.school-directory-legend i{width:9px;height:9px;border:2px solid rgba(255,255,255,.85);border-radius:50%;box-shadow:0 0 0 1px rgba(45,51,47,.16)}.school-directory-legend .mixed{background:conic-gradient(#d59a3a 0 33%,#3f7d6a 33% 66%,#c65345 66%)}.school-profile-loading{position:absolute;z-index:7;right:15px;top:15px;display:flex;align-items:center;gap:9px;padding:12px 14px;border:1px solid var(--sd-border);border-radius:11px;background:var(--sd-surface);color:var(--sd-copy);font-size:11px}.school-profile-loading>span{width:15px;height:15px;border:2px solid #cad5cc;border-top-color:var(--sd-accent);border-radius:50%;animation:school-spin .7s linear infinite}
.school-map-profile{position:absolute;z-index:7;right:14px;top:14px;width:min(360px,calc(100% - 28px));max-height:calc(100% - 28px);overflow:auto;padding:18px;border:1px solid rgba(210,207,198,.96);border-radius:17px;background:rgba(255,253,248,.98);box-shadow:0 22px 60px rgba(33,42,36,.2);transform-origin:82% 36%;animation:school-profile-enter .36s cubic-bezier(.2,.8,.2,1) both}.school-map-profile.expanded{width:min(720px,calc(100% - 28px));padding:23px;animation:school-profile-expand .44s cubic-bezier(.18,.82,.2,1) both}.school-map-profile>header{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.school-map-profile header small{color:var(--sd-accent);font-size:9px;font-weight:800;letter-spacing:.06em;text-transform:capitalize}.school-map-profile h2{margin:5px 0 0;font-size:24px;line-height:1.04;letter-spacing:-.035em}.school-map-profile.expanded h2{font-size:34px}.school-profile-header-actions{display:flex;gap:5px}.school-profile-header-actions button{display:grid;place-items:center;width:33px;height:33px;border:1px solid var(--sd-border);border-radius:9px;background:#f7f5f0;color:#505752;cursor:pointer}.school-profile-address{display:flex;align-items:flex-start;gap:6px;margin:13px 0 0;color:var(--sd-copy);font-size:10px;line-height:1.4}.school-profile-address svg{flex:0 0 auto}.school-profile-zone-summary{display:flex;flex-wrap:wrap;gap:6px;margin-top:13px}.school-profile-zone-summary span{display:flex;align-items:center;gap:6px;padding:7px 8px;border-radius:8px;background:#eef1ed;color:#5e665f;font-size:9px}.school-profile-zone-summary i{width:8px;height:8px;border-radius:50%;background:#777d78}.school-profile-zone-summary i.attendance{background:#3f6b57}.school-profile-zone-summary i.walk{background:#c65345}.school-profile-zone-summary i.citywide{border:1px dashed #727872;background:transparent}.school-profile-score{display:grid;grid-template-columns:1fr auto;align-items:end;margin-top:13px;padding:12px;border-radius:11px;background:#eef2ed}.school-profile-score>span{color:#657069;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.school-profile-score strong{grid-row:1 / 3;grid-column:2;color:#315f4b;font-size:27px}.school-profile-score strong small{font-size:11px}.school-profile-score em{margin-top:3px;color:#626963;font-size:9px;font-style:normal}.school-profile-expand{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:40px;margin-top:13px;padding:0 11px;border:0;border-radius:9px;background:var(--sd-accent);color:#fff;font-size:11px;font-weight:750;cursor:pointer}
.school-profile-expanded-content{margin-top:18px}.school-profile-essential-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.school-profile-essential-grid>div{display:grid;grid-template-columns:18px minmax(0,1fr);gap:2px 8px;padding:11px;border:1px solid #e0ddd5;border-radius:10px;background:#faf8f3}.school-profile-essential-grid svg{grid-row:1 / 3;color:var(--sd-accent)}.school-profile-essential-grid span{color:var(--sd-copy);font-size:9px;text-transform:uppercase;letter-spacing:.06em}.school-profile-essential-grid strong{font-size:11px;line-height:1.35;white-space:pre-line;overflow-wrap:anywhere}.school-profile-essential-grid a{color:inherit;text-decoration:none}.school-profile-expanded-section{margin-top:15px;padding-top:15px;border-top:1px solid #e1ddd5}.school-profile-expanded-section>header{display:flex;align-items:center;gap:7px;color:var(--sd-accent)}.school-profile-expanded-section h3{margin:0;font-size:13px}.school-profile-programmes{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.school-profile-programmes span{padding:6px 8px;border-radius:7px;background:#eef1ed;color:#515a54;font-size:9px}.school-profile-programmes em{color:var(--sd-copy);font-size:10px}.school-profile-evidence>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:9px}.school-profile-evidence article{display:grid;gap:3px;padding:11px;border-radius:9px;background:#eef2ed}.school-profile-evidence article>span{color:var(--sd-copy);font-size:9px}.school-profile-evidence article>strong{color:#315f4b;font-size:23px}.school-profile-evidence article>strong small{font-size:10px}.school-profile-evidence article>em{color:var(--sd-copy);font-size:8px;font-style:normal;line-height:1.35}.school-profile-expanded-content>footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:15px}.school-profile-expanded-content>footer>a:first-child{display:flex;align-items:center;gap:6px;min-height:36px;padding:0 10px;border-radius:8px;background:#e8f0ea;color:#315f4b;font-size:10px;font-weight:750;text-decoration:none}.school-profile-seo-link{color:#68706a;font-size:9px;text-decoration:underline;text-underline-offset:2px}
@keyframes school-profile-enter{from{opacity:0;transform:translate(24px,-8px) scale(.84);clip-path:inset(35% 0 45% 78% round 17px)}to{opacity:1;transform:none;clip-path:inset(0 round 17px)}}@keyframes school-profile-expand{from{opacity:.7;transform:translate(16px,-4px) scale(.72);clip-path:inset(10% 0 65% 48% round 17px)}to{opacity:1;transform:none;clip-path:inset(0 round 17px)}}@keyframes school-spin{to{transform:rotate(360deg)}}
@media(max-width:1000px){.school-finder-fullscreen{height:auto;min-height:0}.school-programme-mode{overflow-x:auto}.school-directory-shell{grid-template-columns:1fr;height:auto}.school-directory-list{max-height:650px}.school-directory-map{height:72vh;min-height:520px}.school-map-profile{top:auto;right:10px;bottom:10px;width:min(370px,calc(100% - 20px))}.school-map-profile.expanded{top:10px;width:calc(100% - 20px)}}
@media(max-width:620px){.school-finder-fullscreen{padding:6px}.school-directory-shell{gap:6px}.school-programme-mode>div{min-width:125px}.school-programme-mode button{padding-inline:10px}.school-filter-panel{padding:14px}.school-map-profile,.school-map-profile.expanded{left:7px;right:7px;width:auto}.school-profile-essential-grid,.school-profile-evidence>div{grid-template-columns:1fr}.school-profile-expanded-content>footer{align-items:stretch;flex-direction:column}.school-directory-legend{left:7px;bottom:7px}}
@media(prefers-reduced-motion:reduce){.school-map-profile,.school-profile-loading>span,.school-directory-cards article{animation:none!important;transition:none!important}}
/* Wide map workbench: two-column school results, explicit selection, coordinate popup. */
@media(min-width:1001px){.school-directory-shell{grid-template-columns:560px minmax(0,1fr)}.school-directory-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
.school-directory-cards{align-content:start;gap:7px;padding:8px}.school-directory-cards article{min-width:0;padding:12px;border:1px solid #e3dfd7;border-radius:11px;background:#fffdf8;transition:background .14s ease,border-color .14s ease,box-shadow .14s ease}.school-directory-cards article:hover{border-color:#bdcbbf;background:#f4f7f3}.school-directory-cards article.selected{border-color:#3f6b57;background:#eaf2ec;box-shadow:0 0 0 2px #3f6b57 inset}.school-map-profile.compact{width:min(310px,calc(100% - 20px));padding:15px}.school-map-profile.compact::before{content:"";position:absolute;left:-7px;top:86px;width:13px;height:13px;border-left:1px solid var(--sd-border);border-bottom:1px solid var(--sd-border);background:var(--sd-surface);transform:rotate(45deg)}
@media(min-width:1001px) and (max-width:1380px){.school-directory-shell{grid-template-columns:470px minmax(0,1fr)}.school-directory-cards{grid-template-columns:1fr}}
.school-card-select{grid-column:2 / -1;display:flex;align-items:center;justify-content:space-between;width:100%;min-height:31px;margin-top:2px;padding:0 8px;border:1px solid #d3ddd5;border-radius:8px;background:#f0f4f0;color:#315f4b;font-size:9px;font-weight:800;cursor:pointer}.school-directory-cards article.selected .school-card-select{border-color:#86a28e;background:#3f6b57;color:#fff}.school-map-profile.compact{left:auto!important;right:14px!important;top:14px!important}.school-map-profile.compact::before{display:none}.school-map-profile.expanded{inset:12px;width:auto;max-height:none;padding:26px;transform-origin:calc(100% - 170px) 120px}.school-map-profile.expanded h2{font-size:40px}.school-profile-expanded-content{max-width:none}.school-profile-chart-section{margin-top:20px;padding-top:18px;border-top:1px solid #e1ddd5}.school-profile-chart-section .school-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:0}.school-profile-chart-section .school-results-heading{grid-column:1 / -1}.school-profile-chart-section .school-chart-card{min-width:0;padding:18px;border-radius:14px;box-shadow:none}.school-profile-chart-section .school-chart-card h2{font-size:19px}.school-profile-chart-section .school-results-heading h2{font-size:28px}.school-profile-chart-section .school-results-heading p{font-size:11px}.school-profile-chart-section .school-chart-data{font-size:10px}.school-profile-chart-section .school-chart-data summary{padding:8px 0}.school-map-profile.expanded::-webkit-scrollbar{width:9px}.school-map-profile.expanded::-webkit-scrollbar-thumb{border:2px solid #fffdf8;border-radius:999px;background:#bcc7bf}
@media(max-width:1000px){.school-map-profile.expanded{inset:8px}.school-profile-chart-section .school-chart-grid{grid-template-columns:1fr}}
.school-filter-topline{display:grid;grid-template-columns:minmax(0,1fr) 158px;gap:7px;align-items:end}.school-filter-topline .school-search{margin-top:12px}.school-sort{display:grid;gap:4px}.school-sort>span{color:#676d68;font-size:9px;font-weight:800}.school-sort select{width:100%;height:40px;padding:0 8px;border:1px solid var(--sd-border);border-radius:10px;background:#f7f5f0;color:var(--sd-ink);font-size:10px}.school-filter-chips .system-cbe{background:#edf5ef}.school-filter-chips .system-separate{background:#f8eeee}.school-filter-chips .system-charter{background:#f8f3e7}.school-filter-chips .system-private{background:#f2eef7}.school-filter-chips .system-all{background:#f3f2ee}.school-filter-chips .system-cbe.active{border-color:#668c73;background:#3f6b57;color:#fff}.school-filter-chips .system-separate.active{border-color:#a9625c;background:#9d514a;color:#fff}.school-filter-chips .system-charter.active{border-color:#9b773d;background:#8b6b36;color:#fff}.school-filter-chips .system-private.active{border-color:#75608d;background:#6d587f;color:#fff}.school-filter-chips .system-all.active{border-color:#72766f;background:#60645f;color:#fff}.level-filters button i{display:inline-block;width:9px;height:9px;flex:0 0 auto;border:2px solid rgba(255,255,255,.8);border-radius:50%;box-shadow:0 0 0 1px rgba(39,47,42,.16)}.school-directory-cards article.school-system-cbe{background:#fcfefc}.school-directory-cards article.school-system-separate{background:#fffafa}.school-directory-cards article.school-system-charter{background:#fffdf7}.school-directory-cards article.school-system-private{background:#fdfbff}.school-card-kickers{display:flex;align-items:center;justify-content:space-between;gap:5px}.school-card-kickers>small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.school-card-kickers>span{flex:0 0 auto;padding:3px 5px;border-radius:5px;background:#eceee9;color:#59615b;font-size:8px;font-weight:800}.school-system-cbe .school-card-kickers>span{background:#e3eee6;color:#315f4b}.school-system-separate .school-card-kickers>span{background:#f3e3e1;color:#8d4540}.school-system-charter .school-card-kickers>span{background:#f2e8cf;color:#795c2d}.school-system-private .school-card-kickers>span{background:#ebe4f1;color:#624f76}.school-card-rating{display:grid;grid-template-columns:auto auto 1fr;align-items:baseline;gap:3px 6px;margin-top:8px;padding:7px 8px;border-radius:8px;background:rgba(235,239,234,.76)}.school-card-rating strong{font-size:12px;color:#315f4b}.school-card-rating b{font-size:9px;color:#555d57}.school-card-rating span{grid-column:1 / -1;color:#737873;font-size:8px;line-height:1.25}.school-directory-cards article.selected{border-color:#3f6b57!important;background:#eaf2ec!important;box-shadow:0 0 0 2px #3f6b57 inset!important}
@media(max-width:620px){.school-filter-topline{grid-template-columns:1fr}.school-sort{margin-top:3px}}
.school-directory-shell{height:100%}.school-map-programme-tabs{position:absolute;z-index:6;left:14px;top:14px;display:flex;max-width:calc(100% - 360px);gap:5px;padding:5px;border:1px solid rgba(217,213,203,.94);border-radius:11px;background:rgba(255,253,248,.96);box-shadow:0 8px 22px rgba(47,54,49,.12);overflow-x:auto}.school-map-programme-tabs button{min-height:32px;padding:0 10px;border:0;border-radius:7px;background:transparent;color:#5d635e;font-size:10px;font-weight:700;white-space:nowrap;cursor:pointer}.school-map-programme-tabs button.active{background:#3f6b57;color:#fff}.school-directory-map.profile-expanded .school-map-programme-tabs{opacity:0;pointer-events:none}
@media(max-width:1000px){.school-map-programme-tabs{right:10px;max-width:none}.school-map-profile.compact{top:60px!important}}
/* Card hierarchy: decision data first; address belongs in the selected-school profile. */
.school-filter-heading>span{font-size:13px}.school-filter-heading>button{font-size:11px}.school-filter-panel legend{font-size:11px}.school-filter-chips button{min-height:32px;font-size:11px}.school-grade-filter button{min-height:30px;font-size:11px}.school-special-filter select,.school-sort select{font-size:11px}
/* Spacious school finder and full-height detail workspace. */
@media(min-width:1001px){.school-directory-shell{grid-template-columns:680px minmax(0,1fr)}.school-directory-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.school-filter-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 14px}.school-filter-heading,.school-filter-topline,.school-filter-panel fieldset:first-of-type,.school-special-filter{grid-column:1 / -1}.school-filter-topline{grid-template-columns:minmax(0,1fr) 190px}}
.school-directory-cards article{grid-template-columns:30px minmax(0,1fr);align-content:start;min-height:190px;gap:9px 10px;padding:14px}.school-card-level{width:30px;height:30px}.school-card-kickers{align-items:flex-start;min-height:20px}.school-card-kickers>small{white-space:normal;line-height:1.25}.school-directory-cards h2{min-height:34px;margin:5px 0;font-size:15px}.school-directory-cards p{min-height:28px;font-size:9px}.school-card-rating{grid-template-columns:auto auto;align-items:baseline;margin-top:10px;padding:9px}.school-card-rating strong{font-size:15px}.school-card-rating b{margin-left:auto;font-size:10px}.school-card-rating span{grid-column:1 / -1;margin-top:2px;font-size:8px;line-height:1.35}.school-card-select{grid-column:1 / -1;align-self:end;min-height:34px;margin-top:auto;font-size:10px}.school-map-profile.compact{width:min(420px,calc(100% - 28px));padding:20px}.school-map-profile.compact h2{font-size:29px}.school-map-profile.compact .school-profile-score strong{font-size:24px}.school-map-profile.expanded{inset:10px!important;width:auto!important;height:auto;max-height:none!important;padding:28px}.school-map-profile.expanded h2{font-size:44px}.school-profile-communities>header>span{margin-left:auto;color:#6a706b;font-size:10px}.school-profile-communities>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:10px}.school-profile-communities a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 8px;padding:10px;border:1px solid #e0ddd5;border-radius:9px;background:#faf8f3;color:#343a36;text-decoration:none}.school-profile-communities a strong{font-size:10px}.school-profile-communities a small{grid-column:1;color:#6c726d;font-size:8px;text-transform:capitalize}.school-profile-communities a svg{grid-row:1 / 3;grid-column:2;color:#3f6b57}.school-map-programme-tabs{max-width:calc(100% - 460px)}
@media(min-width:1001px) and (max-width:1450px){.school-directory-shell{grid-template-columns:600px minmax(0,1fr)}.school-directory-cards article{min-height:200px}.school-map-profile.compact{width:min(380px,calc(100% - 28px))}.school-map-programme-tabs{max-width:calc(100% - 420px)}}
@media(max-width:1000px){.school-profile-communities>div{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.school-filter-panel{display:block}.school-profile-communities>div{grid-template-columns:1fr}.school-map-profile.expanded h2{font-size:31px}}
/* Final school-card hierarchy override. */
.school-directory-cards article{min-height:174px}.school-directory-cards article>div:nth-child(2){display:flex;min-width:0;height:100%;flex-direction:column}.school-card-kickers{align-items:flex-start;min-height:26px;gap:8px}.school-card-kickers>small{color:#555d57;font-size:10px;font-weight:700;line-height:1.3;white-space:normal}.school-card-kickers>span{padding:4px 6px;font-size:9px}.school-directory-cards h2{min-height:42px;margin:5px 0 7px;font-size:19px;line-height:1.08;letter-spacing:-.025em}.school-directory-cards p{display:none!important}.school-card-rating{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;margin-top:auto;padding:10px 11px}.school-card-rating strong{font-size:20px;line-height:1;color:#315f4b}.school-card-rating b{margin-left:auto;font-size:12px}.school-card-rating span{grid-column:1 / -1;margin-top:5px;font-size:9px;line-height:1.3}.school-card-select{min-height:36px;margin-top:7px;font-size:11px}
@media(max-width:1450px) and (min-width:1001px){.school-directory-cards h2{font-size:18px}.school-card-rating strong{font-size:18px}}
/* Keep filters compact and use the same teardrop school-pin language as the map. */
.level-filters .filter-school-pin{position:relative;display:inline-block;width:10px;height:10px;flex:0 0 auto;transform:rotate(-45deg);border:2px solid rgba(255,255,255,.9);border-radius:50% 50% 50% 0;box-shadow:0 0 0 1px rgba(39,47,42,.16)}
.level-filters .filter-school-pin::after{position:absolute;inset:2px;content:"";border-radius:50%;background:#fffdf8}
.school-directory-legend .legend-school-pin{width:9px;height:9px;transform:rotate(-45deg);border:1px solid #fffdf8;border-radius:50% 50% 50% 0;box-shadow:0 0 0 1px rgba(39,47,42,.14)}.school-directory-legend .legend-school-pin.mixed{background:conic-gradient(#D8A63B 0 33%,#4B9B8D 33% 66%,#C65345 66%)}
.school-map-programme-tabs button{border:1px solid #d9d5cb;background:#f8f6f1;box-shadow:0 1px 2px rgba(47,54,49,.06)}.school-map-programme-tabs button:hover{border-color:#91a99a;background:#eef3ef;color:#315f4b}.school-map-programme-tabs button:focus-visible{outline:2px solid #315f4b;outline-offset:2px}.school-map-programme-tabs button.active{border-color:#3f6b57;background:#3f6b57;color:#fff;box-shadow:0 2px 5px rgba(47,74,61,.2)}
.school-map-profile.expanded{left:50%!important;right:auto!important;width:min(1180px,calc(100% - 32px))!important;transform:translateX(-50%);transform-origin:center top}.school-map-profile.expanded .school-profile-expanded-content{max-width:1120px;margin-inline:auto}
@media(max-width:1000px){.school-map-profile.expanded{left:8px!important;right:8px!important;width:auto!important;transform:none}}

/* School filtering hierarchy: system in sidebar, level on map, grade disclosed on demand. */
.school-filter-topline{display:block}.school-filter-topline .school-search{width:100%}.school-more-filters{grid-column:1/-1;margin-top:12px;border:1px solid #d5e0e4;border-radius:10px;background:#f5f8f9}.school-more-filters>summary{min-height:42px;padding:11px 12px;color:#4f6f7d;font-size:15px;font-weight:800;cursor:pointer}.school-more-filters .school-grade-filter{padding:0 10px 11px}.school-directory-count{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px}.school-directory-count>label{display:flex;align-items:center;gap:7px;color:#65747b;font-size:14px}.school-directory-count select{min-height:36px;padding:0 28px 0 9px;border:1px solid #c8d8df;border-radius:8px;background:#f7fafb;color:#314852;font-size:14px;font-weight:750}.school-map-level-filter{position:absolute;z-index:6;left:16px;top:16px;display:grid;width:190px;padding:8px;border:1px solid #c9dce3;border-radius:13px;background:rgba(253,254,254,.97);box-shadow:0 14px 36px rgba(36,52,60,.13)}.school-map-level-filter>small{padding:5px 7px 8px;color:#4f88a4;font-size:14px;font-weight:850;letter-spacing:.08em}.school-map-level-filter button{display:flex;align-items:center;gap:8px;min-height:40px;padding:0 9px;border:0;border-radius:8px;background:transparent;color:#49616c;font-size:15px;font-weight:750;text-align:left;cursor:pointer}.school-map-level-filter button:hover{background:#edf5f8}.school-map-level-filter button.active{background:#3f6b57;color:#fff}.school-map-level-filter .filter-school-pin{width:10px;height:10px}@media(min-width:1001px){.school-filter-panel{grid-template-columns:minmax(0,1.25fr) minmax(190px,.75fr)}.school-filter-heading,.school-filter-topline,.school-more-filters{grid-column:1/-1}}@media(max-width:620px){.school-directory-count{align-items:flex-start;flex-direction:column}.school-map-level-filter{left:8px;top:8px;width:175px}.school-map-level-filter button{min-height:38px}}
@media(min-width:1001px){.school-filter-panel{grid-template-columns:minmax(0,1.25fr) minmax(190px,.75fr)}.school-filter-heading,.school-filter-topline,.school-level-filter,.school-grade-filter-group{grid-column:1 / -1}.school-filter-panel fieldset.school-system-filter{grid-column:1}.school-filter-panel fieldset.school-special-filter{grid-column:2}.level-filters{flex-wrap:nowrap}.level-filters button{flex:1 1 auto;justify-content:center;padding-inline:7px;white-space:nowrap}}
/* Visual acceptance repair: keep actions inside cards and surface real programmes. */
.school-directory-cards article{min-height:218px;grid-template-rows:minmax(0,1fr) auto;overflow:hidden}.school-directory-cards article>div:nth-child(2){height:auto!important}.school-card-kickers{min-height:30px}.school-card-kickers>small{font-size:12px;line-height:1.3}.school-card-kickers>span{font-size:10px}.school-directory-cards h2{min-height:44px;font-size:20px}.school-card-programmes{display:flex;flex-wrap:wrap;gap:5px;min-height:26px;margin:2px 0 8px}.school-card-programmes span{max-width:100%;padding:5px 7px;border-radius:7px;background:#e7eee8;color:#315f4b;font-size:9px;font-weight:750;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.school-card-rating{margin-top:auto}.school-card-select{position:static;align-self:stretch;width:100%;margin-top:10px;visibility:visible;opacity:1;overflow:visible}.school-directory-cards article.selected .school-card-select{box-shadow:none}
@media(max-width:1450px) and (min-width:1001px){.school-directory-cards article{min-height:212px}.school-card-kickers>small{font-size:11px}.school-directory-cards h2{font-size:19px}}
/* Rated and unrated cards use different information structures. */
.school-score-method{grid-column:1 / -1;margin-top:11px;padding:9px 10px;border:1px solid #e1ddd5;border-radius:9px;background:#f8f6f1}.school-score-method summary{color:#405d4e;font-size:10px;font-weight:800;cursor:pointer}.school-score-method p{margin:7px 0 0;color:#666d68;font-size:9px;line-height:1.45}.school-directory-cards article{grid-template-rows:auto auto!important;min-height:0;overflow:hidden}.school-directory-cards article>div:nth-child(2){height:auto!important}.school-card-rating{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 12px;margin-top:10px}.school-card-rating>div{display:grid;gap:3px}.school-card-rating>div>small{color:#6d736e;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.school-card-rating>div>strong{color:#315f4b;font-size:20px;line-height:1}.school-card-rank{text-align:right}.school-card-rank b{color:#4e5751;font-size:13px}.school-card-rating>span{grid-column:1 / -1}.school-directory-cards article.unrated .school-card-rating{display:block;margin-top:9px;padding:9px 0 2px;border-top:1px solid #e0e4df;border-radius:0;background:transparent}.school-directory-cards article.unrated .school-card-rating>strong{display:block;color:#4f5a53;font-size:14px;line-height:1.2}.school-directory-cards article.unrated .school-card-rating>span{display:block;margin-top:4px;color:#777d78;font-size:9px}.school-card-select{grid-row:2;grid-column:1 / -1;margin-top:11px!important}
.school-directory-cards{grid-auto-rows:max-content}.school-directory-cards article{grid-template-rows:minmax(max-content,1fr) auto!important}
/* Two explicit sort actions; performance is available only within one comparable school level. */
.school-sort>div{display:grid;grid-template-columns:1fr 1fr;gap:4px}.school-sort button{min-height:40px;padding:0 8px;border:1px solid var(--sd-border);border-radius:9px;background:#f7f5f0;color:#59615b;font-size:10px;font-weight:750;cursor:pointer}.school-sort button.active{border-color:#3f6b57;background:#3f6b57;color:#fff}.school-sort button:disabled{border-style:dashed;background:#f2f0eb;color:#aaa;cursor:not-allowed}.school-sort button:focus-visible{outline:2px solid #315f4b;outline-offset:2px}
.school-grade-filter button:disabled{border-style:dashed;background:#efede8;color:#b7b4ad;cursor:not-allowed}
/* One school per row: identity, comparable result and action share one scan line. */
.school-directory-cards{grid-template-columns:1fr!important}.school-directory-cards article{grid-template-columns:34px minmax(0,1fr) minmax(170px,205px) 112px!important;grid-template-rows:auto!important;align-items:center;min-height:116px!important;gap:12px;padding:13px 14px}.school-directory-cards article>.school-card-level{align-self:start}.school-directory-cards article>.school-card-body{display:block!important;height:auto!important}.school-card-body .school-card-kickers{min-height:0}.school-card-body h2{min-height:0;margin:6px 0;font-size:18px}.school-card-body .school-card-programmes{min-height:0;margin:6px 0 0}.school-directory-cards article>.school-card-rating{grid-column:3;grid-row:1;margin:0;padding:10px}.school-directory-cards article>.school-card-select{grid-column:4;grid-row:1;align-self:center;min-height:40px;margin:0!important}.school-profile-expand{text-decoration:none}
@media(max-width:620px){.school-directory-cards article{grid-template-columns:34px minmax(0,1fr)!important;align-items:start}.school-directory-cards article>.school-card-rating{grid-column:1 / -1;grid-row:auto}.school-directory-cards article>.school-card-select{grid-column:1 / -1;grid-row:auto}.school-filter-topline{grid-template-columns:1fr}.school-sort{margin-top:4px}}
/* Final directory row: one surface and one rhythm, without a nested metric card. */
.school-filter-panel.programme-unavailable .school-system-filter{grid-column:1 / -1}.school-directory-cards article{min-height:104px!important;padding:14px 16px;border-color:#dedbd3;background:#fffdf8}.school-directory-cards article>.school-card-level{align-self:center}.school-card-body h2{margin:5px 0 0;font-size:18px;line-height:1.12}.school-card-body .school-card-programmes{margin-top:8px}.school-directory-cards article>.school-card-rating{align-self:stretch;align-content:center;gap:4px 14px;padding:0 14px;border-left:1px solid #dedbd3;border-radius:0;background:transparent}.school-card-rating>div>small{font-size:9px}.school-card-rating>div>strong{font-size:19px}.school-card-rating>div>strong>small,.school-card-rank b>small{font-size:10px}.school-card-rank b{font-size:16px}.school-directory-cards article.unrated>.school-card-rating{display:grid;margin:0;padding:0 14px;border-top:0;border-left:1px solid #dedbd3}.school-directory-cards article.unrated>.school-card-rating>strong{font-size:14px}.school-directory-cards article>.school-card-select{border-color:#cbd8ce;background:#eef3ef}.school-directory-cards article>.school-card-select:hover{border-color:#789783;background:#e2ece5}.school-sort button{background:#fffdf8}.school-sort button:not(.active):hover{border-color:#91a99a;background:#eef3ef;color:#315f4b}
@media(max-width:620px){.school-directory-cards article>.school-card-rating,.school-directory-cards article.unrated>.school-card-rating{padding:11px 0 0;border-top:1px solid #dedbd3;border-left:0}.school-directory-cards article>.school-card-select{margin-top:4px!important}}
/* Spatial continuity: the map detail grows from the actual triggering control. */
.school-map-profile{animation:none!important}.school-map-profile.expanded{inset:12px!important;width:auto!important;height:auto!important;max-height:none!important;animation:none!important;will-change:transform,opacity}.school-map-profile.expanded .school-profile-expanded-content{max-width:1120px;margin-inline:auto}
.school-map-profile.compact.spatial-origin{left:calc(var(--profile-origin-x) - 210px)!important;right:auto!important;top:calc(var(--profile-origin-y) - 100px)!important}
.school-card-kickers>small{white-space:nowrap!important}
/* V1-derived persistent detail actions with a content-width workspace. */
.school-map-profile.expanded{left:50%!important;right:auto!important;width:min(1180px,calc(100% - 24px))!important;translate:-50% 0}.school-profile-sticky-actions{position:absolute;z-index:12;top:18px;right:18px;display:flex;align-items:center;justify-content:flex-end;gap:5px}.school-map-profile.compact>header{padding-right:38px}.school-map-profile.expanded .school-profile-sticky-actions{position:sticky;top:-16px;width:max-content;margin:-12px -12px 14px auto;padding:6px;border:1px solid rgba(217,213,203,.96);border-radius:12px;background:rgba(255,253,248,.97);box-shadow:0 7px 20px rgba(47,54,49,.1)}.school-profile-sticky-actions>button,.school-profile-action-menu>button{display:flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:0 10px;border:1px solid transparent;border-radius:8px;background:transparent;color:#56605a;font-size:13px;font-weight:750;cursor:pointer}.school-profile-sticky-actions>button:hover,.school-profile-action-menu>button:hover,.school-profile-sticky-actions button.active{border-color:#cbd8ce;background:#eaf1eb;color:#315f4b}.school-profile-sticky-actions button:focus-visible,.school-profile-sticky-actions a:focus-visible{outline:2px solid #315f4b;outline-offset:2px}.school-profile-action-menu{position:relative}.school-share-menu,.school-compare-menu{position:absolute;z-index:15;right:0;top:calc(100% + 8px);width:340px;padding:15px;border:1px solid #d9d5cb;border-radius:14px;background:#fffdf8;box-shadow:0 18px 48px rgba(33,42,36,.2);color:#303833}.school-share-menu>header,.school-compare-menu>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.school-share-menu>header strong,.school-compare-menu>header strong{font-size:16px}.school-share-menu>header button,.school-compare-menu>header button,.school-compare-menu article>button{display:grid;place-items:center;width:30px;height:30px;border:0;border-radius:7px;background:#f1f2ed;color:#59615b;cursor:pointer}.school-share-link{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;padding:9px;border:1px solid #dedbd3;border-radius:9px;background:#f7f5f0}.school-share-link>span{overflow:hidden;color:#646b66;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.school-share-link button{display:flex;align-items:center;gap:5px;min-height:32px;padding:0 8px;border:0;border-radius:7px;background:#e3ece5;color:#315f4b;font-size:12px;font-weight:800;cursor:pointer}.school-share-qr{display:grid;place-items:center;gap:7px;padding:15px}.school-share-qr img{width:184px;height:184px;border-radius:8px}.school-share-qr span{color:#676e69;font-size:12px}.school-share-menu>a{display:flex;align-items:center;justify-content:center;gap:7px;min-height:40px;border-radius:9px;background:#3f6b57;color:#fff;font-size:14px;font-weight:800;text-decoration:none}.school-compare-menu{width:390px}.school-compare-toggle{width:100%;min-height:40px;border:0;border-radius:9px;background:#3f6b57;color:#fff;font-size:14px;font-weight:800;cursor:pointer}.school-compare-toggle:disabled{background:#dadbd6;color:#8b8e89;cursor:not-allowed}.school-compare-menu>div{display:grid;gap:6px;margin-top:10px}.school-compare-menu article{display:grid;grid-template-columns:minmax(0,1fr) auto 30px;align-items:center;gap:8px;padding:9px;border:1px solid #e0ddd5;border-radius:9px}.school-compare-menu article div{display:grid;gap:2px}.school-compare-menu article strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.school-compare-menu article small,.school-compare-menu article>span,.school-compare-menu>p{color:#69706b;font-size:12px}.school-compare-menu article>span{white-space:nowrap}.school-compare-menu>p{margin:12px 0 2px;line-height:1.4}
@media(max-width:760px){.school-map-profile.expanded{left:7px!important;right:7px!important;width:auto!important;translate:none}.school-map-profile.expanded .school-profile-sticky-actions{top:-20px;max-width:100%;overflow-x:auto}.school-profile-sticky-actions>button,.school-profile-action-menu>button{padding-inline:8px}.school-profile-sticky-actions button{font-size:12px}.school-share-menu,.school-compare-menu{position:fixed;left:14px;right:14px;top:82px;width:auto}}
/* The embedded map workspace and SEO route share SchoolDetailView; only the outer shell differs. */
.school-detail-view.embedded{width:100%;max-width:1120px;margin:0 auto;padding:0 0 40px}.school-map-profile.expanded .school-detail-view .school-results-heading h2{font-size:clamp(28px,3vw,42px)}.school-map-profile.expanded .school-detail-view .school-chart-card h2{font-size:24px}.school-map-profile.expanded .school-detail-view .attendance-program-header h2{font-size:30px}.school-map-profile.expanded .school-detail-view .school-communities-module h2{font-size:30px}.school-map-profile.expanded .school-detail-view .school-static-hero h1{font-size:clamp(48px,3.35vw,58px)}
@media(max-width:1100px){.school-detail-view.embedded .school-overview{grid-template-columns:1fr}.school-detail-view.embedded .school-map-frame .school-map-shell{aspect-ratio:1}}
.school-map-profile.expanded{width:min(1338px,calc(100% - 24px))!important}.school-detail-view.embedded{max-width:1280px}
.school-card-quick-actions{position:absolute;top:13px;right:140px;display:flex;align-items:center;gap:4px;margin:0}.school-card-quick-actions button{display:grid;place-items:center;width:30px;height:30px;border:1px solid #d2ddd4;border-radius:7px;background:#f4f7f3;color:#66806f;cursor:pointer}.school-card-quick-actions button:hover{border-color:#719984;background:#e7f0e9;color:#315f4b}.school-card-quick-actions button.active{border-color:#8caf95;background:#dcecdf;color:#315f4b}.school-card-quick-actions button.saved{border-color:#d69ba2;background:#f8e6e8;color:#b54e5a}.school-directory-cards article{position:relative}.school-map-profile.compact .school-profile-sticky-actions{top:14px;right:14px}.school-map-profile.compact .school-profile-sticky-actions>button,.school-map-profile.compact .school-profile-action-menu>button{width:32px;min-width:32px;padding:0;font-size:0}.school-map-profile.compact .school-profile-sticky-actions>button svg,.school-map-profile.compact .school-profile-action-menu>button svg{margin:0}
.school-compact-actions{position:absolute;top:15px;right:48px;display:flex;gap:4px}.school-compact-actions button{display:grid;place-items:center;width:32px;height:32px;border:1px solid #d2ddd4;border-radius:8px;background:#f4f7f3;color:#66806f;cursor:pointer}.school-compact-actions button:hover,.school-compact-actions button.active{border-color:#8caf95;background:#e4efe6;color:#315f4b}.school-compact-actions button.saved{border-color:#d69ba2;background:#f8e6e8;color:#b54e5a}.school-map-profile.compact>header{padding-right:142px}
.community-account-links{display:flex;align-items:center;gap:8px;margin-left:auto}.community-account-links a{padding:8px 10px;border:1px solid #d9e0d9;border-radius:8px;color:#486052;font-size:12px;font-weight:750;text-decoration:none}.community-account-links a:hover{background:#eef3ee;color:#315f4b}
.school-worklist-page{max-width:1280px;margin:0 auto;padding:56px 28px 90px}.school-worklist-header{display:flex;align-items:end;justify-content:space-between;gap:30px;padding-bottom:30px;border-bottom:1px solid #dfe4dd}.school-worklist-header h1{margin:8px 0 10px;font-size:clamp(42px,5vw,68px);line-height:1;letter-spacing:-.045em}.school-worklist-header p{max-width:620px;margin:0;color:#69736d;font-size:16px;line-height:1.5}.school-worklist-kicker{color:#3f6b57;font-size:12px;font-weight:850;letter-spacing:.12em}.school-worklist-count{display:grid;place-items:center;min-width:90px;min-height:64px;border-radius:14px;background:#eaf1eb;color:#315f4b;font-size:20px;font-weight:850}.school-worklist-empty{display:grid;place-items:center;gap:9px;min-height:380px;color:#69736d;text-align:center}.school-worklist-empty h2{margin:8px 0 0;color:#303833;font-size:24px}.school-worklist-empty p{margin:0;font-size:15px}.school-worklist-empty a{display:flex;align-items:center;gap:5px;color:#315f4b;font-size:14px;font-weight:800;text-decoration:none}.school-compare-table{margin-top:30px;border:1px solid #d9e0d9;border-radius:16px;overflow:auto;background:#fffdf8}.school-compare-table-head,.school-compare-table-row{display:grid;grid-template-columns:190px repeat(var(--compare-count, 4),minmax(190px,1fr));min-width:760px}.school-compare-table-head{background:#edf3ee}.school-compare-table-head>*,.school-compare-table-row>*{padding:18px;border-bottom:1px solid #e0e5df}.school-compare-table-head strong{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;color:#315f4b;font-size:16px}.school-compare-table-head button{display:grid;place-items:center;width:26px;height:26px;border:0;border-radius:6px;background:#dce7de;color:#53675b;cursor:pointer}.school-compare-table-row>span{color:#69736d;font-size:13px;font-weight:800}.school-compare-table-row>div{color:#303833;font-size:14px;line-height:1.4}.school-compare-table-row:nth-child(even){background:#fbfaf6}.school-saved-grid{display:grid;gap:12px;margin-top:30px}.school-saved-grid article{display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:16px;padding:18px 20px;border:1px solid #d9e0d9;border-radius:14px;background:#fffdf8}.school-saved-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#e4f0e6;color:#3f6b57}.school-saved-grid article>div:nth-child(2){display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:4px 14px}.school-saved-grid article>div:nth-child(2)>span{grid-column:1/-1;color:#69736d;font-size:12px;font-weight:750}.school-saved-grid h2{margin:0;font-size:21px}.school-saved-grid strong{color:#315f4b;font-size:20px}.school-saved-grid small{color:#59635d;font-size:13px}.school-saved-grid article>div:last-child{display:flex;align-items:center;gap:8px}.school-saved-grid article a,.school-saved-grid article button{display:flex;align-items:center;gap:5px;min-height:36px;padding:0 10px;border:1px solid #cbd8ce;border-radius:8px;background:#eef3ef;color:#315f4b;font-size:12px;font-weight:800;text-decoration:none;cursor:pointer}.school-saved-grid article button{background:transparent;color:#69736d}
@media(max-width:800px){.community-account-links{display:none}.school-worklist-page{padding:38px 16px 70px}.school-worklist-header{align-items:flex-start;flex-direction:column}.school-saved-grid article{grid-template-columns:38px minmax(0,1fr);align-items:start}.school-saved-grid article>div:last-child{grid-column:2;flex-wrap:wrap}.school-saved-grid h2{font-size:18px}}
.school-map-profile.compact{width:min(460px,calc(100% - 28px));padding:22px}.school-map-profile.compact>header{padding-right:142px}.school-map-profile.compact h2{font-size:34px;line-height:1.04}.school-map-profile.compact header small{font-size:14px}.school-map-profile.compact .school-profile-address{margin-top:16px;font-size:14px}.school-map-profile.compact .school-profile-zone-summary{gap:8px;margin-top:15px}.school-map-profile.compact .school-profile-zone-summary span{padding:9px 11px;font-size:13px}.school-map-profile.compact .school-profile-score{position:relative;grid-template-columns:76px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:96px;margin-top:16px;padding:15px 16px;border-radius:14px}.school-map-profile.compact .school-profile-score::before{content:"";width:64px;height:64px;border-radius:50%;background:conic-gradient(#3f6b57 0 62%,#dbe6dd 62% 100%);mask:radial-gradient(circle at center,transparent 0 23px,#000 24px);-webkit-mask:radial-gradient(circle at center,transparent 0 23px,#000 24px);grid-column:1;grid-row:1 / span 2}.school-map-profile.compact .school-profile-score>span{grid-column:2;grid-row:1;font-size:14px}.school-map-profile.compact .school-profile-score>strong{grid-column:3;grid-row:1 / span 2;font-size:32px}.school-map-profile.compact .school-profile-score>strong small{font-size:14px}.school-map-profile.compact .school-profile-score>em{grid-column:2;grid-row:2;margin-top:2px;font-size:13px}.school-map-profile.compact .school-profile-expand{min-height:50px;margin-top:15px;padding-inline:14px;font-size:16px}.school-map-profile.compact .school-compact-actions{top:15px;right:48px}.school-map-profile.compact .school-compact-actions button{width:36px;height:36px}@media(max-width:620px){.school-map-profile.compact{width:calc(100% - 28px);padding:20px}.school-map-profile.compact h2{font-size:30px}.school-map-profile.compact .school-profile-score{grid-template-columns:64px minmax(0,1fr) auto}.school-map-profile.compact .school-profile-score>strong{font-size:28px}}
.school-directory-cards article .school-card-quick-actions{top:13px;right:15px;z-index:4}.school-directory-cards article>.school-card-select{position:relative;top:6px}
.school-directory-cards article>.school-card-select{top:15px}
.school-directory-cards article>.school-card-select{top:28px}
.school-map-profile.compact .school-profile-basics{display:grid;gap:0;margin-top:18px;border-top:1px solid #e1ddd5}.school-map-profile.compact .school-profile-basics section{padding:15px 0;border-bottom:1px solid #e1ddd5}.school-map-profile.compact .school-profile-basics section:last-child{border-bottom:0;padding-bottom:2px}.school-map-profile.compact .school-profile-basics header{display:block;margin:0 0 11px;color:#315f4b;font-size:15px;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.school-profile-basic-row,.school-profile-basic-pair{display:grid;gap:5px}.school-profile-basic-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}.school-profile-basic-row span,.school-profile-basic-pair span{display:block;color:#597264;font-size:13px;font-weight:800}.school-profile-basic-row strong,.school-profile-basic-pair strong{display:block;color:#303833;font-size:15px;line-height:1.35;overflow-wrap:anywhere}.school-profile-basic-links{display:grid;gap:7px;align-content:start}.school-profile-basic-links a{display:block;padding:9px 10px;border:1px solid #cbd8ce;border-radius:9px;background:#eef3ef;color:#315f4b;font-size:14px;font-weight:800;text-decoration:none}.school-profile-programme-list{display:flex;flex-wrap:wrap;gap:8px}.school-profile-programme-list span{display:grid;gap:4px;min-width:130px;padding:10px 12px;border:1px solid #d9e1da;border-radius:10px;background:#f1f4ef}.school-profile-programme-list strong{color:#303833;font-size:15px}.school-profile-programme-list small{color:#66736b;font-size:13px}@media(max-width:620px){.school-profile-basic-pair{grid-template-columns:1fr}.school-map-profile.compact .school-profile-basic-row strong,.school-map-profile.compact .school-profile-basic-pair strong{font-size:14px}}
.school-map-profile.compact.spatial-origin{left:auto!important;right:14px!important;top:14px!important}
.school-map-profile.compact{width:min(620px,calc(100% - 28px))}.school-map-profile.compact .school-profile-basic-pair{grid-template-columns:minmax(150px,.72fr) minmax(280px,1.28fr);gap:20px}.school-map-profile.compact .school-profile-basic-pair>div:nth-child(2) strong{white-space:nowrap;font-size:14px;letter-spacing:-.02em}.school-map-profile.compact .school-profile-basic-row strong{white-space:nowrap}.school-map-profile.compact .school-profile-programme-list{gap:10px}.school-map-profile.compact .school-profile-programme-list span{min-width:150px}@media(max-width:760px){.school-map-profile.compact{width:calc(100% - 28px)}.school-map-profile.compact .school-profile-basic-pair{grid-template-columns:1fr;gap:12px}.school-map-profile.compact .school-profile-basic-pair>div:nth-child(2) strong{white-space:normal;overflow-wrap:anywhere}}
.school-map-profile.compact .school-profile-basics section:nth-child(2) .school-profile-basic-pair{grid-template-columns:1fr;gap:12px}.school-map-profile.compact .school-profile-basics section:nth-child(2) .school-profile-basic-pair>div:first-child strong{white-space:nowrap}.school-map-profile.compact .school-profile-basics section:nth-child(2) .school-profile-basic-links{grid-template-columns:repeat(2,minmax(0,1fr))}.school-map-profile.compact .school-profile-basics section:nth-child(2) .school-profile-basic-links a{white-space:nowrap}@media(max-width:760px){.school-map-profile.compact .school-profile-basics section:nth-child(2) .school-profile-basic-pair>div:first-child strong{white-space:normal}.school-map-profile.compact .school-profile-basics section:nth-child(2) .school-profile-basic-links{grid-template-columns:1fr}}
.school-map-profile.compact .school-profile-address{color:var(--sd-copy);text-decoration:none}.school-map-profile.compact .school-profile-address svg:last-child{margin-left:auto;color:var(--sd-accent)}.school-map-profile.compact .school-profile-basics section>header{display:flex;align-items:center;gap:8px}.school-map-profile.compact .school-profile-basic-pair>div{display:grid;grid-template-columns:18px minmax(0,1fr);gap:4px 8px;align-items:start}.school-map-profile.compact .school-profile-basic-pair>div>svg{grid-row:1 / span 2;color:var(--sd-accent)}.school-map-profile.compact .school-profile-basic-pair>div>span,.school-map-profile.compact .school-profile-basic-pair>div>strong{grid-column:2}.school-map-profile.compact .school-profile-basic-pair>div>strong a{color:inherit;text-decoration:none}.school-map-profile.compact .school-profile-basic-links{grid-template-columns:18px repeat(2,minmax(0,1fr));align-items:start}.school-map-profile.compact .school-profile-basic-links>svg{grid-row:1 / span 2;color:var(--sd-accent)}.school-map-profile.compact .school-profile-basic-links>a{grid-column:auto}.school-map-profile.compact .school-profile-programme-list span{position:relative}.school-map-profile.compact .school-profile-programme-list span:before{content:"";display:block;width:7px;height:7px;margin-bottom:2px;border-radius:50%;background:var(--sd-accent)}
.school-map-profile.compact{width:min(560px,calc(100% - 28px))}.school-map-profile.compact .school-profile-basic-links{display:flex;grid-template-columns:none;align-items:center;gap:8px}.school-map-profile.compact .school-profile-basic-links>svg{flex:0 0 auto;margin-right:2px}.school-map-profile.compact .school-profile-basic-links>a{flex:1;min-width:0}.school-map-profile.compact .school-profile-score::before{background:conic-gradient(var(--score-color,#c65345) 0 var(--score,0%),#dbe6dd var(--score,0%) 100%)}
.school-map-profile.compact .school-profile-basics section:nth-child(2) .school-profile-basic-links{display:flex!important;grid-template-columns:none;align-items:center;gap:8px}.school-map-profile.compact .school-profile-basics section:nth-child(2) .school-profile-basic-links>svg{flex:0 0 auto}.school-map-profile.compact .school-profile-basics section:nth-child(2) .school-profile-basic-links>a{flex:1;min-width:0}
.school-map-profile{transition:width .62s cubic-bezier(.16,1,.3,1),max-height .62s cubic-bezier(.16,1,.3,1),top .62s cubic-bezier(.16,1,.3,1),left .62s cubic-bezier(.16,1,.3,1),right .62s cubic-bezier(.16,1,.3,1),padding .62s cubic-bezier(.16,1,.3,1),translate .62s cubic-bezier(.16,1,.3,1)}@media(prefers-reduced-motion:reduce){.school-map-profile{transition:none!important}}
.school-map-profile.compact{width:min(520px,calc(100% - 28px))}
.school-directory-map{isolation:isolate}.school-directory-map-canvas{contain:strict;transform:translateZ(0);backface-visibility:hidden}
.school-map-profile{transition:none!important;background:#fffdf8!important}.school-map-profile.expanded{left:12px!important;right:12px!important;width:auto!important;translate:none!important}
.school-profile-expanded-stage.preloaded{position:fixed;z-index:-1;left:-200vw;top:0;width:1280px;opacity:0;pointer-events:none}.school-profile-expanded-stage.active{position:static;width:100%;opacity:1;pointer-events:auto}
.school-map-profile.compact .school-profile-expanded-stage.preloaded{position:fixed!important;inset:auto auto auto -10000px!important;width:1280px!important;height:900px!important;max-height:900px!important;overflow:hidden!important;visibility:hidden!important;opacity:0!important;clip-path:inset(100%)!important;pointer-events:none!important;transform:none!important}.school-map-profile.expanded .school-profile-expanded-stage.active{position:static!important;inset:auto!important;width:100%!important;height:auto!important;max-height:none!important;overflow:visible!important;visibility:visible!important;opacity:1!important;clip-path:none!important;pointer-events:auto!important;transform:none!important}
.school-routing-inline{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px}.school-routing-inline>span{color:#69736d;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.school-routing-inline>div{display:flex;gap:4px}.school-routing-inline button{min-height:27px;padding:0 8px;border:1px solid #cbd8ce;border-radius:7px;background:#fffdf8;color:#52645a;font-size:10px;font-weight:750;cursor:pointer}.school-routing-inline button:hover{border-color:#3f6b57;background:#eef4ef;color:#315f4b}.school-routing-inline button.active{border-color:#3f6b57;background:#3f6b57;color:#fffdf8}
.shared-social-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0 0 10px}.shared-social-links a{display:flex;align-items:center;justify-content:center;min-height:36px;padding:0 6px;border:1px solid #d6dfd8;border-radius:8px;background:#f3f6f2;color:#3f6250;font-size:10px;font-weight:750;text-decoration:none}.shared-social-links a:hover{border-color:#759482;background:#e7f0e9}.shared-system-share{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;min-height:38px;margin-top:7px;border:1px solid #cbd8ce;border-radius:8px;background:#eef3ef;color:#315f4b;font-size:11px;font-weight:800;cursor:pointer}.community-card-actions .shared-share-panel>a{display:flex;align-items:center;justify-content:center;gap:7px;min-height:40px;border-radius:9px;background:#4f88a4;color:#fff;font-size:12px;font-weight:800;text-decoration:none}@media(max-width:620px){.shared-social-links{grid-template-columns:repeat(2,minmax(0,1fr))}.community-card-actions .shared-share-panel{position:fixed;left:12px;right:12px;top:82px;width:auto}}
.shared-share-overlay{position:fixed;z-index:1000;inset:0;display:grid;place-items:center;padding:20px;background:rgba(31,42,47,.42);backdrop-filter:blur(3px)}.shared-share-overlay .shared-share-panel{position:relative!important;inset:auto!important;right:auto!important;top:auto!important;left:auto!important;width:min(430px,calc(100vw - 32px))!important;max-height:calc(100dvh - 40px);margin:0!important;overflow:auto;box-shadow:0 26px 80px rgba(24,35,40,.3)}.shared-share-overlay .shared-share-panel>a{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;border-radius:9px;background:#4f88a4;color:#fff;font-size:16px;font-weight:800;text-decoration:none}@media(max-width:620px){.shared-share-overlay{padding:12px}.shared-share-overlay .shared-share-panel{width:calc(100vw - 24px)!important;max-height:calc(100dvh - 24px)}}
.school-filter-panel fieldset.school-system-filter{grid-column:1/-1!important}.school-system-filter .school-filter-chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:3px}.school-system-filter .school-filter-chips button{flex:0 0 auto;min-height:40px;padding-inline:12px;font-size:15px}.school-filter-panel fieldset.school-special-filter{grid-column:1/-1!important}.school-special-filter select{min-height:42px;font-size:15px}
