/* ADI /areas-we-serve/ page styles
   Moved out of the document 2026-09-06. Loaded AFTER style.css and pages.css,
   which several rules here deliberately override, so the link must keep that
   position in the head. */
/* ADI areas page: services row + coverage FAQ, added 2026-09-05 */
.areas-service-links{list-style:none;margin:22px 0;padding:0;display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}
.areas-service-links li{margin:0}
.areas-service-links a{display:block;padding:13px 16px;background:#ffffff;
  border:1px solid #dbe2ea;border-radius:9px;color:#1c2475;text-decoration:none;
  font-weight:600;line-height:1.35}
.areas-service-links a:hover,.areas-service-links a:focus{border-color:#2d99ca;
  background:#f2f9fd}
/* ADI areas: postcode checker, accreditation strip, grouped county lists — 2026-09-05 */
.adi-pc{max-width:560px;margin:24px auto 0}
.adi-pc-label{display:block;color:#ffffff;font-weight:600;font-size:15px;margin:0 0 9px;
  text-align:center;text-shadow:0 1px 3px rgba(0,0,0,.45)}
.adi-pc-row{display:flex;gap:9px}
.adi-pc-row input{flex:1 1 auto;min-width:0;padding:14px 16px;border:0;border-radius:9px;
  font-size:16px;font-family:inherit;color:#111827}
.adi-pc-row input:focus-visible{outline:3px solid #2d99ca;outline-offset:2px}
.adi-pc-row button{flex:0 0 auto;padding:14px 24px;border:0;border-radius:9px;
  background:#2d99ca;color:#ffffff;font-weight:700;font-size:16px;font-family:inherit;
  cursor:pointer;line-height:1.2}
.adi-pc-row button:hover,.adi-pc-row button:focus{background:#1d7fae}
.adi-pc-out{margin:11px 0 0;color:#ffffff;font-size:15px;line-height:1.6;min-height:1.4em;
  text-align:center;text-shadow:0 1px 3px rgba(0,0,0,.45)}
.adi-pc-out a{color:#9bdcfb;font-weight:600}
/* the hero curve overlay is position:absolute, z-index:4 and 1458px tall,
   so this strip has to sit above it or it is painted over. */
.adi-pc-eng-head{display:block;margin:15px 0 10px;font-weight:600;font-size:14px}
.adi-pc-eng{display:flex;flex-wrap:wrap;gap:7px;justify-content:center;align-items:center}
/* .adi-pc-out carries a text-shadow so it reads over the hero photo; the chips are
   dark-on-white and the shadow only muddies them. */
/* .adi-pc-out a is (0,1,1) and sets the pale hero link colour; these chips are
   dark-on-white, so the colour has to be restated at (0,2,0) or they wash out. */
.adi-pc-out .areas-eng{font-size:13px;padding:3px 13px 3px 3px;gap:7px;
  box-shadow:0 2px 6px rgba(0,0,0,.25);text-shadow:none;background:#ffffff;
  color:#1c2475;text-decoration:none}
/* :not(.areas-avatar) matters: the initials disc is white-on-navy and this rule
   would otherwise repaint it navy-on-navy. */
.adi-pc-out .areas-eng span:not(.areas-avatar){text-shadow:none;color:#1c2475}
.adi-pc-out .areas-eng:hover,.adi-pc-out .areas-eng:focus{background:#f2f9fd;
  border-color:#2d99ca}
.adi-pc-out .areas-avatar{width:30px;height:30px;min-width:30px}
.adi-pc-out .areas-initials{color:#ffffff;font-size:11px}
.adi-pc-more{color:#9bdcfb;font-weight:600;font-size:13px;text-decoration:underline;
  padding:0 4px}
.adi-nfnf{background:#1c2475;padding:34px 0;position:relative;z-index:5}
.adi-nfnf-title{color:#ffffff;font-size:26px;font-weight:800;margin:0 0 10px;
  text-transform:uppercase;letter-spacing:.02em}
p.adi-nfnf-lead{color:#c9d6e8;font-size:16px;line-height:1.7;margin:0 0 16px;max-width:72ch}
.adi-nfnf-list{list-style:none;margin:0;padding:0;display:grid;
  grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:10px 26px}
.adi-nfnf-list li{color:#ffffff;font-size:15px;line-height:1.6;padding-left:26px;
  position:relative}
.adi-nfnf-list li::before{content:"\2713";position:absolute;left:0;top:0;color:#2d99ca;
  font-weight:700}
p.adi-nfnf-more{margin:18px 0 0;font-size:15px}
.adi-nfnf-more a{color:#9bdcfb;font-weight:600}
.adi-acc-strip{background:#f8fafc;padding:28px 0;border-bottom:1px solid #e7edf3;
  position:relative;z-index:5}
.adi-acc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(232px,1fr));gap:14px}
.adi-acc-card{display:flex;align-items:center;gap:14px;background:#ffffff;
  border:1px solid #e3e9f0;border-radius:10px;padding:14px 16px}
.adi-acc-card img{width:56px;height:56px;object-fit:contain;flex:0 0 auto}
.adi-acc-name{display:block;color:#1c2475;font-weight:700;font-size:14px;line-height:1.32}
.adi-acc-status{display:block;color:#5b6b7f;font-size:13px;margin-top:3px}
p.adi-acc-more{margin:16px 0 0;font-size:14px;color:#5b6b7f;text-align:center}
/* county lists as accordions — added 2026-09-05 */
.areas-acc{border-bottom:1px solid #e3e9f0}
.areas-acc-sum{list-style:none;cursor:pointer;display:flex;align-items:center;gap:10px;
  padding:12px 4px;color:#1c2475;font-weight:700;font-size:14px;text-transform:uppercase;
  letter-spacing:.05em;line-height:1.3}
.areas-acc-sum::-webkit-details-marker{display:none}
.areas-acc-sum:hover{color:#2d99ca}
.areas-acc-sum:focus-visible{outline:3px solid #2d99ca;outline-offset:-3px;border-radius:6px}
.areas-acc-name{flex:1 1 auto;min-width:0}
.areas-acc-n{flex:0 0 auto;color:#5b6b7f;font-weight:600;font-size:13px;letter-spacing:0;
  text-transform:none;background:#eef3f8;border-radius:999px;padding:2px 9px}
.areas-acc-sum::after{content:"\25BE";flex:0 0 auto;font-size:11px;color:#5b6b7f;
  transition:transform .15s ease}
.areas-acc[open] .areas-acc-sum::after{transform:rotate(180deg)}
.areas-acc .areas-list{margin:0 0 12px}
.areas-acc--solo .areas-list{margin:10px 0 12px}
@media (prefers-reduced-motion:reduce){ .areas-acc-sum::after{transition:none} }
.areas-grouped{column-count:1}
.areas-grouped .areas-list{margin:0;column-count:1}
/* a long single word (Northamptonshire) pushed the pin icon onto its own
   line; flex keeps the icon beside the text and wraps the text under itself. */
.areas-grouped .areas-list li > a,
.areas-grouped .areas-list li{display:flex;align-items:flex-start;gap:7px}
.areas-grouped .areas-list li > a > i,
.areas-grouped .areas-list > li > i{flex:0 0 auto;margin-top:.25em}
@media (max-width:520px){
  .adi-pc-row{flex-wrap:wrap}
  .adi-pc-row input,.adi-pc-row button{flex:1 1 100%}
}
.areas-eng-list{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 0}
.areas-eng{display:inline-flex;align-items:center;gap:9px;padding:4px 14px 4px 4px;
  background:#ffffff;border:1px solid #dbe2ea;border-radius:999px;color:#1c2475;
  text-decoration:none;font-size:14px;font-weight:600;line-height:1.1}
.areas-eng:hover,.areas-eng:focus{border-color:#2d99ca;background:#f2f9fd}
.areas-avatar{width:34px;height:34px;min-width:34px;border-radius:50%;object-fit:cover;
  object-position:center 25%;display:block;background:#e8eef4}
.areas-initials{display:flex;align-items:center;justify-content:center;background:#1c2475;
  color:#ffffff;font-size:12px;font-weight:700;letter-spacing:.03em}
.areas-region-grid{display:flex;flex-direction:column;gap:10px;margin:24px 0 4px;
  text-align:left}
.areas-region{background:#f8fafc;border:1px solid #e3e9f0;border-radius:11px}
.areas-region-sum{list-style:none;cursor:pointer;display:flex;align-items:center;
  flex-wrap:wrap;gap:6px 14px;padding:15px 20px}
.areas-region-sum::-webkit-details-marker{display:none}
.areas-region-sum:hover .areas-region-name{color:#2d99ca}
.areas-region-sum:focus-visible{outline:3px solid #2d99ca;outline-offset:-3px;
  border-radius:11px}
.areas-region-name{color:#1c2475;font-weight:700;font-size:18px;line-height:1.3}
span.areas-region-meta{margin-left:auto;color:#5b6b7f;font-size:14px;font-weight:600;
  letter-spacing:.02em;white-space:nowrap}
.areas-region-sum::after{content:"\25BE";flex:0 0 auto;font-size:12px;color:#5b6b7f;
  transition:transform .15s ease}
.areas-region[open] .areas-region-sum::after{transform:rotate(180deg)}
p.areas-region-counties{margin:12px 20px 16px;color:#5b6b7f;font-size:14px;line-height:1.65;
  text-align:left}
.areas-region .areas-eng-list{padding:2px 20px 18px;margin:0}
@media (prefers-reduced-motion:reduce){ .areas-region-sum::after{transition:none} }
@media (max-width:520px){
  .areas-region-name{font-size:17px}
  span.areas-region-meta{margin-left:0;flex-basis:100%;white-space:normal}
}
@media (max-width:700px){
  .areas-region-grid{grid-template-columns:1fr;gap:14px}
  .areas-region{padding:16px}
}
.areas-faq{text-align:left}
.areas-faq h3{color:#1c2475;font-size:19px;line-height:1.35;margin:26px 0 8px;
  text-align:left}
.areas-faq h3:first-of-type{margin-top:6px}
.areas-faq p{margin:0 0 4px;line-height:1.7;text-align:left;max-width:76ch}
@media (max-width:700px){
  .areas-service-links{grid-template-columns:1fr;gap:10px}
  .areas-faq h3{font-size:18px}
}
    
