/* About and location pages share the open composition of the homepage. */
.about-hero,.area-hub-hero,.area-detail-hero{width:min(var(--wide-width),90%);margin-inline:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,5vw,76px);align-items:center;padding-block:var(--space-6)}
.about-hero h1,.area-hub-hero h1,.area-detail-hero h1{color:var(--brand);font-size:clamp(36px,3.8vw,52px);line-height:1.15;letter-spacing:-.03em;margin:0 0 var(--space-3);text-wrap:wrap}
.about-hero-copy>p,.area-hub-copy>p,.area-detail-hero-copy>p{font-size:var(--text-lead);line-height:1.7;max-width:40ch;margin:0 0 var(--space-4)}
.about-hero figure,.area-hub-hero figure,.area-detail-hero figure{margin:0;height:480px;min-width:0}
.about-hero-image,.area-hub-image,.area-detail-image{width:100%;height:100%;object-fit:cover;border-radius:var(--radius-large)}
.area-hub-image{object-position:center}
.about-hero-actions,.area-detail-hero-copy>div{display:flex;flex-wrap:wrap;align-items:center;gap:20px 24px}
.about-secondary,.area-call-link{display:inline-flex;align-items:center;gap:10px;font-size:var(--text-small);font-weight:700;color:var(--brand);padding:10px 0}
.about-secondary:hover,.area-call-link:hover{text-decoration:underline;text-underline-offset:4px}
.about-story{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6);padding-block:var(--section-space)}
.about-story h2{font-size:var(--text-heading);line-height:1.2;color:var(--brand);max-width:none;margin:0}
.about-story p{line-height:1.8;max-width:60ch}
.about-story p:last-child{margin-bottom:0}
.about-credentials{padding-left:20px;color:var(--brand)}
.about-process{width:min(var(--wide-width),94%);margin:0 auto;padding:clamp(28px,5vw,64px);background:var(--surface-stone);border-radius:var(--radius-large)}
.about-process header h2{color:var(--brand);font-size:var(--text-heading);line-height:1.15;max-width:19ch;margin:0 0 var(--space-5)}
.about-process ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4);list-style:none;padding:0;margin:0}
.about-process li{border-top:1px solid var(--line-strong);padding-top:var(--space-3)}
.about-process li>span{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--brand);border-radius:50%;font-size:14px;font-weight:700;line-height:1;color:var(--brand);margin-bottom:var(--space-3);font-variant-numeric:tabular-nums}
.about-process h3{color:var(--brand);font-size:20px;line-height:1.3;margin-bottom:12px}
.about-process li p{font-size:var(--text-small);line-height:1.7;margin:0}
.area-directory{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,8vw,120px);padding-block:var(--section-space)}
.area-region h2{color:var(--brand);font-size:var(--text-heading);margin:0 0 var(--space-4)}
.area-rows{border-top:1px solid var(--line-strong)}
.area-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:74px;padding-block:20px;border-bottom:1px solid var(--line);color:var(--brand);font-size:20px;font-weight:600}
.area-row .icon{transition:transform var(--motion-fast)}
.area-row:hover .icon{transform:translateX(4px)}
.area-row:hover>span{text-decoration:underline;text-underline-offset:5px}
.area-detail-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(40px,7vw,100px);padding-block:var(--section-space)}
.area-detail-layout h2{color:var(--brand);font-size:32px;line-height:1.2;margin:0 0 var(--space-3)}
.area-detail-layout article>p{line-height:1.85;margin-bottom:var(--space-3)}
.area-source a{display:inline-flex;align-items:center;gap:var(--space-1);font-size:12px;text-decoration:underline;text-underline-offset:3px}
.area-community-panel{border-top:1px solid var(--line-strong);padding-top:var(--space-3)}
.area-community-panel h2{font-size:24px}
.area-communities{display:grid;grid-template-columns:1fr 1fr;gap:0 var(--space-3);list-style:none;padding:0;margin:0}
.area-communities li{padding:12px 0;color:var(--brand);font-size:var(--text-small);border-bottom:1px solid var(--line)}
.area-services>.wrap{padding-top:var(--space-3);padding-bottom:var(--section-space)}
.area-services header{display:flex;align-items:end;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4);color:var(--brand)}
.area-services h2{font-size:var(--text-heading);line-height:1.15;margin:0}
.area-services header a{flex:none}
.coverage-close{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);width:min(var(--wide-width),94%);padding:clamp(28px,5vw,64px);margin:0 auto var(--section-space);background:var(--surface-stone);border-radius:var(--radius-large)}
.coverage-close h2{color:var(--brand);font-size:var(--text-heading);line-height:1.15;margin:0 0 var(--space-2)}
.coverage-close p{margin:0;max-width:45ch}
.coverage-close>.button{flex:none}
@media(max-width:960px){.about-hero,.area-hub-hero,.area-detail-hero{gap:var(--space-4)}.about-hero figure,.area-hub-hero figure,.area-detail-hero figure{height:430px}.about-process ol{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:var(--space-5)}.area-communities{grid-template-columns:1fr}}
@media(max-width:720px){
 .about-hero,.area-hub-hero,.area-detail-hero{grid-template-columns:1fr;padding-block:40px 24px;gap:var(--space-4)}
 .about-hero h1,.area-hub-hero h1,.area-detail-hero h1{font-size:clamp(34px,8vw,42px);text-wrap:initial}
 .about-hero h1 br{display:none}
 .about-hero-copy>p,.area-hub-copy>p,.area-detail-hero-copy>p{font-size:var(--text-body)}
 .about-hero figure,.area-hub-hero figure,.area-detail-hero figure{height:auto;aspect-ratio:1.2}
 .about-story,.area-directory,.area-detail-layout{grid-template-columns:1fr;gap:var(--space-4)}
 .area-directory{gap:var(--space-6)}
 .about-story h2{max-width:none}
 .about-process{width:90%}
 .about-process ol{grid-template-columns:1fr;gap:var(--space-3)}
 .about-process li{display:grid;grid-template-columns:44px minmax(0,1fr);gap:var(--space-2)}
 .about-process li>span{margin:0}
 .area-services header,.coverage-close{flex-direction:column;align-items:flex-start}
 .area-services header{gap:var(--space-3)}
 .coverage-close{width:90%}
}
