/* Homepage additions use the original Overpass typography and section width. */
.elementor-icon-list-items .fw-home-address { align-items:flex-start; }
.fw-home-address .elementor-icon-list-text { line-height:1.5; }
.fw-home-address .elementor-icon-list-text strong { display:block; font-weight:700; }
.fw-home-address .elementor-icon-list-icon { padding-top:5px; }
.fw-home-services,.fw-home-areas { color:#60676b; font:400 18px/1.5 Overpass,sans-serif; }
.fw-home-services { background:#f5f6f7; }
.fw-home-areas { background:#fff; }
.fw-home-inner { width:min(1140px,calc(100% - 48px)); margin:0 auto; padding:72px 0; }
.fw-home-services h2,.fw-home-areas h2,.fw-home-services h3 { font-family:Overpass,sans-serif; font-weight:700; color:#1f1f1f; letter-spacing:0; }
.fw-home-services h2,.fw-home-areas h2 { font-size:clamp(32px,3.35vw,48px); line-height:1.2; margin:0 0 20px; }
.fw-home-services h3 { font-size:24px; line-height:1.3; margin:0 0 12px; }
.fw-home-services p,.fw-home-areas p { margin:0; }
.fw-home-services .fw-home-eyebrow,.fw-home-areas .fw-home-eyebrow { color:#b34d2d; font-size:15px; font-weight:600; letter-spacing:1.6px; line-height:1.5; margin:0 0 12px; }
.fw-home-section-heading { max-width:800px; margin-bottom:36px; }
.fw-home-service-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:36px 42px; }
.fw-home-service-group { min-width:0; padding-top:24px; border-top:1px solid #d4dde2; }
.fw-home-service-group > p { font-size:17px; line-height:1.55; min-height:53px; margin-bottom:14px; }
.fw-home-services ul,.fw-home-areas ul { padding:0; margin:0; list-style:none; }
.fw-home-services li,.fw-home-areas li { margin:0; }
.fw-home-services a,.fw-home-areas a { color:#1d5073; text-decoration:none; font-weight:500; font-size:17px; line-height:1.45; }
.fw-home-services a:hover,.fw-home-areas a:hover { color:#13334d; text-decoration:underline; text-underline-offset:4px; }
.fw-home-services a:focus-visible,.fw-home-areas a:focus-visible { outline:2px solid #1d5073; outline-offset:4px; }
.fw-home-services li a { display:flex; justify-content:space-between; align-items:baseline; gap:14px; padding:8px 0; }
.fw-home-services li a span:first-child { min-width:0; overflow-wrap:break-word; hyphens:auto; }
.fw-home-services li a span:last-child { flex:none; }
.fw-home-area-layout { display:grid; grid-template-columns:.9fr 1.1fr; gap:72px; align-items:start; padding-block:64px; }
.fw-home-area-intro p:last-child { max-width:420px; }
.fw-home-district-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 28px; }
.fw-home-district-links a { display:block; padding:11px 0; border-bottom:1px solid #dce3e7; overflow-wrap:break-word; hyphens:auto; }
.fw-home-area-actions { display:flex; flex-wrap:wrap; gap:12px 26px; margin-top:22px; }
.fw-home-area-actions a { display:inline-flex; gap:10px; padding:6px 0; }
@media(max-width:1024px) {
 .fw-home-service-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px; }
 .fw-home-area-layout { gap:36px; }
}
@media(max-width:767px) {
 .fw-home-inner { width:calc(100% - 36px); padding-block:44px; }
 .fw-home-section-heading { margin-bottom:28px; }
 .fw-home-service-grid,.fw-home-area-layout { grid-template-columns:1fr; gap:28px; }
 .fw-home-service-group { padding-top:22px; }
 .fw-home-service-group > p { min-height:0; }
 .fw-home-district-links { gap:0 20px; }
 .fw-home-services h3 { font-size:23px; }
 .fw-home-areas nav { min-width:0; }
 .fw-home-services li a { min-height:44px; align-items:center; }
 .fw-home-area-actions { flex-direction:column; gap:8px; }
 .fw-home-area-actions a { min-height:44px; align-items:center; }
}
@media(max-width:359px) {
 .fw-home-district-links { grid-template-columns:1fr; }
}
/* The original contact section overlapped the counter band with a negative margin. */
.fw-home-areas + .elementor-section { margin-top:0 !important; padding-top:64px !important; }
@media(max-width:767px) {
 .fw-home-areas + .elementor-section { padding-top:48px !important; }
}
