/* Scoped to individual ICB pages. Values match the live street-map shell. */
body.icb-refined{margin:0;background:#f2f4f8;color:#233653;font:15px/1.5 Arial,Helvetica,sans-serif}
.icb-refined *{box-sizing:border-box}
.icbr-page{max-width:1200px;width:calc(100% - 40px);margin:0 auto;padding:0 0 30px}
.icbr-page a{color:#365882;text-underline-offset:3px}
.icbr-page a:hover{color:#213b61;text-decoration-thickness:2px}
.icbr-page a:focus-visible,.icbr-page summary:focus-visible{outline:3px solid #ca8d23;outline-offset:3px}
.icbr-page h1,.icbr-page h2,.icbr-page p{margin:0}
.icbr-page h2{font-size:22px;line-height:1.25;margin:0 0 10px;font-weight:700;color:#365882}
.icbr-page p+p{margin-top:10px}
.icbr-breadcrumb{display:flex;flex-wrap:wrap;gap:8px;color:#526176;font-size:12px;line-height:18px;padding:11px 0 9px}
.icbr-breadcrumb a{text-decoration:none}
.icbr-breadcrumb a:hover{text-decoration:underline}
.icbr-intro{padding:3px 0 16px}
.icbr-eyebrow{font-size:11px;line-height:1.5;color:#365882;font-weight:700;letter-spacing:1.3px;text-transform:uppercase;margin-bottom:6px!important}
.icbr-intro h1{font-size:32px;line-height:1.16;letter-spacing:-.6px;margin:0 0 7px}
.icbr-intro>p:last-child{max-width:1000px;color:#43526a}
.icbr-change{background:#fff8e3;border-left:3px solid #d3a32f;padding:10px 15px;margin:0 0 16px!important;font-size:14px}
.icbr-hero{display:grid;grid-template-columns:minmax(0,1fr) 365px;gap:20px;align-items:start}
.icbr-map{min-width:0;margin:0}
.icbr-map-tab{background:#365882;color:white;padding:7px 11px;font-size:12px;font-weight:bold;display:flex;justify-content:space-between;border-radius:4px 4px 0 0}
.icbr-map-tab span{font-weight:normal}
.icbr-map>a{display:block;border:1px solid #526e92;border-top:0;background:#edf5fa;line-height:0}
.icbr-map img{display:block;width:100%;height:auto}
.icbr-map figcaption{font-size:12px;color:#526176;line-height:1.5;margin-top:7px}
.icbr-card{background:#fff;border:1px solid #c8d3e3;border-top:3px solid #4b608b;border-radius:7px;padding:15px;margin-bottom:16px}
.icbr-side .icbr-card{margin-bottom:14px}
.icbr-download h2{font-size:25px;line-height:1.2}
.icbr-download>p:not(.icbr-eyebrow){margin:12px 0}
.icbr-button{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;background:#365882;color:#fff!important;font-size:16px;line-height:1.25;font-weight:bold;text-decoration:none;border-radius:6px;border:1px solid #365882}
.icbr-download .icbr-button{margin:18px 0 10px}
.icbr-button:hover{background:#29476e;text-decoration:none}
.icbr-small{font-size:12px;line-height:1.5;color:#526176}
.icbr-download-more{border-top:1px solid #dce3ec;margin-top:15px;padding-top:12px;font-size:14px}
.icbr-download-more p{margin:5px 0 9px}
.icbr-download-more>a{font-weight:bold}
.icbr-out{width:12px;height:12px;margin-left:5px;vertical-align:-1px;flex-shrink:0}
.icbr-side .icbr-buy{background:#267447;border-color:#267447;margin:10px 0 0;padding:12px 13px;font-size:16px}
.icbr-side .icbr-buy:hover{background:#1d6039;border-color:#1d6039;color:white}
.icbr-buy .icbr-out{width:15px;height:15px;margin:0}
.icbr-map-directory{padding:16px 18px}
.icbr-directory-heading{display:flex;align-items:baseline;justify-content:space-between;gap:8px 16px;margin-bottom:12px}
.icbr-directory-heading h2{margin:0}
.icbr-directory-heading>span{font-size:12px;color:#526176;white-space:nowrap}
.icbr-map-choices{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:0;padding:0}
.icbr-map-choices li{min-width:0;display:flex}
.icbr-map-choice{position:relative;display:flex;align-items:center;width:100%;min-height:44px;padding:9px 28px 9px 11px;border:1px solid #d0dbea;border-radius:4px;background:#f3f6fa;font-size:14px;font-weight:600;line-height:1.4;text-decoration:none;color:#365882}
.icbr-map-choice .icbr-out{position:absolute;right:10px;top:12px;margin:0;width:11px;height:11px;color:#617894}
a.icbr-map-choice:hover{background:#e7eef7;border-color:#839bb9;text-decoration:underline;text-decoration-thickness:1px}
.icbr-map-current{background:#e7edf6;border-color:#9aacc5;flex-wrap:wrap;gap:3px 8px;padding-right:11px}
.icbr-map-current small{font-size:10px;letter-spacing:.4px;text-transform:uppercase;font-weight:700;color:#526176}
.icbr-former-maps{border-top:1px solid #dce3ec;margin-top:13px;padding-top:10px}
.icbr-former-maps summary{font-size:13px;font-weight:600;cursor:pointer;color:#365882}
.icbr-former-maps summary>span{margin-left:7px;font-size:12px;font-weight:400;color:#526176}
.icbr-former-maps .icbr-map-choices{margin-top:10px}
@media(max-width:1100px){.icbr-map-choices{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.icbr-map-choices{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.icbr-map-directory{padding:14px 12px}.icbr-directory-heading{display:block}.icbr-directory-heading>span{display:block;margin-top:4px}.icbr-map-choices{grid-template-columns:1fr;gap:6px}}
.icbr-key h2{font-size:18px;margin-bottom:3px}
.icbr-key ul{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:5px}
.icbr-key li{display:grid;grid-template-columns:12px 48px minmax(0,1fr);gap:8px;align-items:baseline;font-size:12px;padding:5px 0;border-bottom:1px solid #e3e9f0}
.icbr-key li:last-child{border:0}
.icbr-key i{width:12px;height:12px;display:inline-block;border:1px solid #aab9c5;align-self:start;margin-top:3px}
.icbr-key strong{font-size:13px}
.icbr-about{margin-top:20px;padding:16px 18px}
.icbr-facts{display:grid;grid-template-columns:repeat(4,1fr);margin:15px -18px -16px;border-top:1px solid #dce3ec}
.icbr-facts>div{padding:10px 18px;border-right:1px solid #dce3ec}
.icbr-facts>div:last-child{border:0}
.icbr-facts dt{font-size:12px;color:#526176}
.icbr-facts dd{font-size:22px;font-weight:bold;margin:2px 0 0;color:#365882}
.icbr-related{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.icbr-related .icbr-card{padding:16px 18px}
.icbr-related h2{font-size:21px}
.icbr-related p{font-size:14px;color:#526176}
.icbr-places{list-style:none;margin:14px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.icbr-places li{padding:7px 0;border-bottom:1px solid #e4e9f0;font-size:14px}
.icbr-place-link{font-weight:600}
.icbr-postcodes{width:100%;border-collapse:collapse;margin-top:14px;font-size:13px;text-align:left}
.icbr-postcodes th,.icbr-postcodes td{padding:9px 5px;border-bottom:1px solid #e4e9f0;vertical-align:top}
.icbr-postcodes thead{font-size:11px;color:#526176;background:#f1f4f8}
.icbr-postcodes thead th{font-weight:normal}
.icbr-postcodes tbody th{font-weight:600}
.icbr-postcodes td a{white-space:nowrap}
.icbr-hospitals p{max-width:950px;color:#526176;font-size:14px}
.icbr-hospitals details{margin-top:12px;border:1px solid #d4dfea;border-radius:4px;background:#f8f9fb}
.icbr-hospitals summary{padding:11px 13px;font-size:14px;font-weight:bold;cursor:pointer}
.icbr-hospitals summary span{margin-left:8px;color:#526176;font-size:12px}
.icbr-hospital-list{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:0 24px;margin:0;padding:0 14px 12px;max-height:350px;overflow:auto}
.icbr-hospital-list li{display:flex;justify-content:space-between;gap:10px;padding:7px 0;font-size:13px;border-top:1px solid #e1e7ef}
.icbr-hospital-list small{white-space:nowrap;font-size:12px;color:#526176}
.icbr-colour{display:grid;grid-template-columns:35% minmax(0,1fr);align-items:center;gap:25px;background:#354666;border-radius:7px;padding:18px;margin:0 0 16px;color:white}
.icbr-colour-demo{min-width:0;position:relative;background:white;border-radius:5px;overflow:hidden}
.icbr-colour-demo img{display:block;width:100%;height:auto;aspect-ratio:1}
.icbr-colour-demo button{position:absolute;right:9px;bottom:9px;border:1px solid #bfcadc;border-radius:4px;background:#fff;padding:7px 10px;color:#29476e;font:12px/1.2 Arial,sans-serif;cursor:pointer;box-shadow:0 1px 4px #223b5326}
.icbr-colour-demo button:hover{background:#edf2f8}
.icbr-colour-demo button:focus-visible{outline:3px solid #e6bc4c;outline-offset:2px}
.icbr-colour-copy{padding:0 10px 0 0}
.icbr-colour-copy .icbr-button{margin-top:20px;width:fit-content;max-width:100%}
.icbr-colour h2{color:white;font-size:23px}
.icbr-colour p{max-width:720px}
.icbr-colour .icbr-eyebrow{color:#edc35e}
.icbr-gold{background:#e6bc4c;border-color:#d2a838;color:#253a57!important;font-size:15px;white-space:nowrap}
.icbr-gold:hover{background:#f1ca62}
.icbr-sources{font-size:12px;color:#526176;border-top-width:1px}
.icbr-sources summary{font-size:14px;cursor:pointer;font-weight:bold}
.icbr-sources p{margin-top:12px}
.icbr-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1000px){.icbr-hero{grid-template-columns:minmax(0,1fr) 320px;gap:16px}.icbr-download h2{font-size:23px}.icbr-related{grid-template-columns:1fr}.icbr-colour{gap:18px}.icbr-colour .icbr-button{width:fit-content}}
@media(max-width:760px){.icbr-page{width:calc(100% - 24px)}.icbr-intro h1{font-size:27px}.icbr-hero{grid-template-columns:1fr}.icbr-side{display:grid;grid-template-columns:1fr 1fr;gap:12px}.icbr-download h2{font-size:22px}.icbr-about{margin-top:4px}.icbr-facts{grid-template-columns:1fr 1fr}.icbr-facts>div:nth-child(2){border-right:0}.icbr-facts>div:nth-child(-n+2){border-bottom:1px solid #dce3ec}.icbr-hospital-list{grid-template-columns:1fr}.icbr-places{gap:0 12px}}
@media(max-width:520px){.icbr-side{display:block}.icbr-intro h1{font-size:27px}.icbr-related .icbr-card{padding:15px 12px}.icbr-places li{font-size:13px}.icbr-postcodes{font-size:12px}.icbr-postcodes th,.icbr-postcodes td{padding:8px 3px}.icbr-out{width:10px;height:10px;margin-left:3px}.icbr-colour{padding:18px}.icbr-gold{font-size:14px;white-space:normal}.icbr-breadcrumb{font-size:11px}.icbr-key ul{display:grid;grid-template-columns:1fr 1fr;column-gap:15px}.icbr-key li{grid-template-columns:12px 40px;gap:3px 6px}.icbr-key li span{grid-column:2}.icbr-facts>div{padding:10px 14px}.icbr-facts dd{font-size:20px}}
@media(max-width:640px){.icbr-colour{grid-template-columns:1fr}.icbr-colour-demo{width:100%;max-width:390px;margin:auto}.icbr-colour-copy{padding:0}}
@media(prefers-reduced-motion:reduce){.icbr-colour-demo button{display:none}}

.icbr-map>a[data-map-preview]{cursor:zoom-in}
.icbr-merger h2{font-size:20px;color:#624b15;margin-bottom:8px}
.icbr-merger ul{list-style:none;padding:0;margin:12px 0;display:flex;flex-wrap:wrap;gap:10px}
.icbr-merger li{background:white;border:1px solid #dfcd99;border-radius:5px;padding:9px 12px}
.icbr-merger li>a{font-weight:bold}
.icbr-merger li>span{display:block;font-size:11px;color:#665c47;margin-top:2px}
.icbr-map-modal{padding:0;border:1px solid #b8c7da;border-radius:7px;width:calc(100vw - 32px);max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px);color:#233653;background:white;box-shadow:0 12px 70px #14223b66;overflow:hidden}
.icbr-map-modal::backdrop{background:#17283dbd}
.icbr-modal-head{display:flex;gap:12px;align-items:center;justify-content:space-between;height:42px;padding:5px 10px;background:#354666;color:white}
.icbr-modal-head h2{min-width:0;margin:0;font-size:17px;line-height:22px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.icbr-modal-close{flex-shrink:0;display:flex;gap:8px;align-items:center;justify-content:center;height:32px;border:0;color:white;background:transparent;border-radius:4px;padding:4px 7px;cursor:pointer;font:14px Arial,sans-serif}
.icbr-modal-close:hover{background:#ffffff20}
.icbr-modal-close span{font-size:23px;line-height:1}
.icbr-modal-stage{position:relative;line-height:0}
.icbr-modal-toolbar{position:absolute;top:10px;right:10px;z-index:1;display:flex;align-items:center;gap:3px;padding:4px;border:1px solid #b8c7da;border-radius:5px;background:#fffffff5;box-shadow:0 2px 8px #253a5726;font:12px/1 Arial,sans-serif}
.icbr-modal-toolbar button{border:0;background:transparent;border-radius:3px;padding:6px 8px;font:inherit;color:#29476e;cursor:pointer;min-width:32px;min-height:32px}
.icbr-modal-toolbar button:hover:not(:disabled){background:#e8eef6}
.icbr-modal-toolbar button[data-map-zoom="in"],.icbr-modal-toolbar button[data-map-zoom="out"]{font-size:20px}
.icbr-modal-toolbar button:disabled{opacity:.45;cursor:default}
.icbr-modal-toolbar output{min-width:38px;text-align:center}
.icbr-modal-viewport{overflow:auto;background:#edf5fa;overscroll-behavior:contain;line-height:0}
.icbr-modal-viewport img{display:block;width:100%;max-width:none;height:auto;margin:0}
.icbr-map-modal button:focus-visible{outline:3px solid #e6bc4c;outline-offset:2px}
@media(max-width:600px){.icbr-modal-head{gap:8px}.icbr-modal-head h2{font-size:16px}.icbr-modal-toolbar{top:7px;right:7px}.icbr-modal-close{padding:4px}}
