:root{--bg:#ffffff;--fg:#1c2430;--muted:#5c6875;--line:#e2e6ea;--accent:#1a5b6e;--max:64rem;--radius:10px}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--bg);color:var(--fg);font:16px/1.6 system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:var(--accent)}.container{max-width:var(--max);margin:0 auto;padding:0 1.25rem}.site-footer,.site-header{border-bottom:1px solid var(--line)}.site-footer{border-bottom:none;border-top:1px solid var(--line);margin-top:3rem;color:var(--muted);font-size:.875rem}.site-footer .container,.site-header .container{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;padding-top:1rem;padding-bottom:1rem}.site-header nav{margin-left:auto;display:flex;gap:1.25rem;flex-wrap:wrap}.brand{font-weight:700;text-decoration:none;color:var(--fg)}main.container{padding-top:2rem;padding-bottom:2rem}h1{line-height:1.2}.lede{font-size:1.15rem;color:var(--muted);max-width:42rem}.legend{display:grid;grid-gap:.5rem;gap:.5rem;padding:0;list-style:none}.legend li{display:flex;align-items:center;gap:.75rem}.swatch{width:1.75rem;height:1.75rem;border-radius:50%;display:inline-grid;place-items:center;color:#fff;font-size:.9rem;flex:0 0 auto}.swatch.hollow{background:#fff!important;border:3px solid}.notice{background:#f6f8f9;border:1px solid var(--line);border-radius:var(--radius);padding:1rem 1.25rem}.disclaimer{border-left:4px solid var(--accent);padding:.5rem 0 .5rem 1rem}.disclaimer,.muted{color:var(--muted)}.small{font-size:.875rem}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));grid-gap:.75rem 1.5rem;gap:.75rem 1.5rem;margin:1.5rem 0;padding:1rem 1.25rem;background:#f6f8f9;border:1px solid var(--line);border-radius:var(--radius)}.facts>div{min-width:0}.facts dt{font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.facts dd{margin:0;font-weight:600}.signal-line{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;font-size:1.1rem}.safeguarding-flag{background:#fdf0ee;border:1px solid #e5b6ae;border-radius:var(--radius);padding:.75rem 1rem}.data-table,.grade-strip{border-collapse:collapse;width:100%;max-width:40rem;margin:1rem 0}.data-table td,.data-table th,.grade-strip td,.grade-strip th{text-align:left;padding:.5rem .75rem;border-bottom:1px solid var(--line)}.data-table th[scope=row],.grade-strip th[scope=row]{font-weight:500}.data-table thead th{font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.nearby-list{list-style:none;padding:0;display:grid;grid-gap:.6rem;gap:.6rem}.nearby-list li{display:flex;align-items:center;gap:.75rem;min-width:0}.signal-cell{display:inline-flex;align-items:center;gap:.5rem}.hub-table{max-width:none}.profile-head{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.profile-head h1{margin-bottom:.25rem;min-width:0}.shortlist-btn{font:inherit;padding:.45rem .9rem;border:1px solid var(--accent);border-radius:999px;background:#fff;color:var(--accent);cursor:pointer;min-height:44px}.shortlist-btn[aria-pressed=true]{background:var(--accent);color:#fff}.shortlist-btn.small{min-height:34px;padding:.25rem .7rem;margin-left:auto}.name-search{position:relative;max-width:28rem;margin-top:1.25rem}.name-search input{width:100%;font:inherit;padding:.65rem .9rem}.name-search input,.name-search-results{border:1px solid var(--line);border-radius:10px}.name-search-results{list-style:none;margin:.4rem 0 0;padding:.4rem;background:#fff;display:grid;grid-gap:.15rem;gap:.15rem}.name-search-results a{display:block;padding:.45rem .6rem;border-radius:8px;text-decoration:none}.name-search-results a:focus-visible,.name-search-results a:hover{background:#f0f4f5}.name-search-results li.muted{padding:.45rem .6rem}.home-title{margin-bottom:.3rem}.area-links{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}.area-links a{display:inline-block;padding:.4rem .85rem;border:1px solid var(--line);border-radius:999px;text-decoration:none}.area-links a:focus-visible,.area-links a:hover{border-color:var(--accent);background:#fff}.explorer-find{display:grid;grid-gap:.6rem;gap:.6rem;margin:1rem 0 .4rem}.explorer-find .name-search{min-width:0}.explorer-find button,.explorer-find input{font:inherit;min-height:46px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:.5rem .8rem}.explorer-find .postcode-form{display:flex;gap:.4rem;min-width:0}.explorer-find .postcode-form input{flex:1 1 auto;min-width:0}.explorer-find .postcode-form button{flex:0 0 auto;background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600;cursor:pointer}.locate-btn{font-weight:600;cursor:pointer;color:var(--accent);border-color:var(--accent)!important}.locate-btn:before{content:"◎";margin-right:.45rem}.locate-btn[disabled]{opacity:.6;cursor:progress}@media (min-width:700px){.explorer-find{grid-template-columns:auto minmax(13rem,1fr) minmax(13rem,1.2fr);align-items:start}}.explorer-controls{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;margin:1rem 0}.explorer-controls button,.explorer-controls input[type=text],.explorer-controls select{font:inherit;padding:.45rem .7rem;border:1px solid var(--line);border-radius:8px;background:#fff;min-height:44px}.explorer-controls button[type=submit],.view-toggle button[aria-pressed=true]{background:var(--accent);color:#fff;border-color:var(--accent)}.explorer-controls .check{display:inline-flex;align-items:center;gap:.35rem}.view-toggle{display:inline-flex;gap:0;margin-left:auto}.view-toggle button:first-child{border-radius:8px 0 0 8px}.view-toggle button:last-child{border-radius:0 8px 8px 0}.explorer-panes{display:grid;grid-gap:1rem;gap:1rem;min-height:30rem}.explorer-map{min-height:30rem;max-height:34rem;border:1px solid var(--line);border-radius:var(--radius)}.explorer-list{overflow-y:auto;max-height:34rem;min-width:0}.explorer-panes.view-list .explorer-map,.explorer-panes.view-map .explorer-list{display:none}@media (min-width:900px){.explorer-panes{grid-template-columns:3fr 2fr;align-items:start}.explorer-panes.view-list .explorer-map,.explorer-panes.view-map .explorer-list{display:block}.view-toggle{display:none}}