/* All rules are limited to the canonical, unpaged Areas We Serve archive. */
body.asf-city-refined { --asf-city-ink:#163b48; --asf-city-muted:#45616b; --asf-city-line:#d8e5e7; --asf-city-rose:#bd176c; --asf-city-teal:#096b76; }
body.asf-city-refined #asf-main-content { background:#fff; color:var(--asf-city-ink); }
body.asf-city-refined #asf-main-content [hidden] { display:none!important; }
body.asf-city-refined #asf-main-content :is(a,button,input,select,summary):focus-visible { outline:3px solid #087682!important; outline-offset:4px; }
body.asf-city-refined #asf-main-content :is(h1,h2,h3,p) { overflow-wrap:break-word; }
body.asf-city-refined #asf-main-content h2 { color:var(--asf-city-ink); font-size:clamp(26px,2.7vw,34px); line-height:1.22; letter-spacing:-.025em; }
body.asf-city-refined .elementor-12205 > .elementor-element-0b14624 { padding:50px 24px 28px; }
body.asf-city-refined .elementor-12205 .elementor-element-0b14624 > .e-con-inner { max-width:1020px; gap:18px; padding:0; }
body.asf-city-refined #asf-main-content .elementor-12205 h1 { font-size:clamp(32px,3.5vw,44px)!important; line-height:1.14!important; color:var(--asf-city-ink)!important; letter-spacing:-.035em; }
body.asf-city-refined .elementor-12205 .elementor-element-2f9f7b9 p { font-size:19px; line-height:1.65; color:var(--asf-city-muted); max-width:760px; margin:0 auto; }
body.asf-city-refined .elementor-12205 .elementor-element-3e427cd { width:calc(100% - 48px); max-width:1160px!important; margin:0 auto 24px; }
body.asf-city-refined .elementor-12205 .elementor-element-3e427cd > .elementor-widget-container { display:grid; grid-template-columns:minmax(300px,.9fr) minmax(0,1.4fr); background:#f1f8f7; border:1px solid var(--asf-city-line); border-radius:20px; overflow:hidden; box-shadow:0 10px 32px #173d4810; }
body.asf-city-refined #asf-main-content .asf-city-map-mobile-intro { display:flex!important; flex-direction:column; justify-content:center; width:auto; min-height:0; max-width:none; padding:28px; margin:0; border:0; border-radius:0; background:transparent; text-align:left; }
body.asf-city-refined #asf-main-content .asf-city-map-mobile-intro h2 { font-size:29px; margin:0 0 12px; }
body.asf-city-refined .asf-city-map-mobile-intro > p { font-size:17px; line-height:1.6; color:var(--asf-city-muted); margin:0 0 18px; }
body.asf-city-refined #asf-main-content :is(.asf-city-map-mobile-intro__eyebrow,.asf-city-crawl-index__eyebrow,.asf-geo-answer__eyebrow,.asf-archive-hub__eyebrow,.asf-city-eyebrow) { color:var(--asf-city-teal); font-size:12px!important; line-height:1.5; font-weight:750; letter-spacing:.08em; text-transform:uppercase; margin:0 0 10px; }
body.asf-city-refined .asf-city-map-picker { display:grid; grid-template-columns:1fr; gap:10px; margin:0 0 18px; }
body.asf-city-refined .asf-city-map-picker label { color:var(--asf-city-ink); font-size:16px; font-weight:700; }
body.asf-city-refined #asf-main-content :is(#asf-city-map-picker-select,#asf-city-search) { width:100%; min-width:0; min-height:50px; height:auto; padding:12px 14px; background:#fff; color:var(--asf-city-ink); border:1px solid #94afb4; border-radius:8px; font-size:17px; line-height:1.4; box-shadow:none; }
body.asf-city-refined #asf-city-map-picker-select { text-overflow:ellipsis; padding-right:28px!important; }
body.asf-city-refined #asf-main-content .asf-city-finder__go { display:flex; justify-content:center; align-items:center; min-height:48px; border:1px solid var(--asf-city-teal); border-radius:8px; background:var(--asf-city-teal); color:white; font-size:17px; font-weight:700; text-decoration:none; padding:10px 16px; }
body.asf-city-refined #asf-main-content .asf-city-finder__go[aria-disabled="true"] { background:#dce8e9; border-color:#c5d7da; color:#526970; cursor:default; }
body.asf-city-refined .asf-city-map-mobile-intro__links { display:flex; flex-wrap:wrap; gap:8px; margin:0; }
body.asf-city-refined #asf-main-content .asf-city-map-mobile-intro__links a { display:inline-flex; align-items:center; min-height:42px; padding:8px 12px; border:1px solid #c8ddde; background:#fff; border-radius:7px; color:var(--asf-city-teal); font-size:15px; font-weight:650; text-decoration:none; }
body.asf-city-refined .asf-city-map-mobile-intro__hint { margin:18px 0 0!important; font-size:15px!important; }
body.asf-city-refined .asf-city-map-mobile-intro__hint a { color:var(--asf-city-teal); font-weight:700; text-underline-offset:4px; }
body.asf-city-refined.asf-map-activated #asf-main-content .jet-map-listing,
body.asf-city-refined #asf-main-content .jet-map-listing { height:100%!important; min-height:420px!important; max-height:560px; width:100%!important; margin:0!important; border:0; }
body.asf-city-refined .jet-map-box { overflow:auto; overscroll-behavior:contain; border-radius:12px; box-sizing:border-box; }
body.asf-city-refined #asf-main-content .jet-map-box .elementor-widget-container { min-height:0!important; }
body.asf-city-refined .jet-map-box .jet-map-close { position:absolute; top:4px; right:4px; width:18px; height:18px; padding:13px; box-sizing:content-box; border-radius:50%; background:#fff; box-shadow:0 1px 5px #163b4833; cursor:pointer; z-index:10; }
body.asf-city-refined .elementor-12205 .elementor-element-4164bc3 { padding:0; }
body.asf-city-refined .elementor-12205 .elementor-element-4164bc3 > .e-con-inner { padding:0; max-width:none; width:100%; }
body.asf-city-refined .elementor-12205 .elementor-element-cf55e60 { width:calc(100% - 48px); max-width:1160px; margin:0 auto 38px; padding:22px 28px; min-height:0; flex-direction:row; justify-content:space-between; align-items:center; gap:20px; background:#f9eef4!important; border-radius:12px; }
body.asf-city-refined #asf-main-content .elementor-element-cf55e60 h2 { color:var(--asf-city-ink); font-size:23px; margin:0; }
body.asf-city-refined .elementor-12205 .elementor-element-cf55e60 > .elementor-element { width:auto; }
body.asf-city-refined #asf-main-content .elementor-element-cf55e60 .elementor-button { background:var(--asf-city-rose); color:white; font-size:16px; border-radius:8px; padding:15px 22px; text-transform:none; }
body.asf-city-refined #asf-main-content :is(.asf-city-crawl-index,.asf-geo-answer,.asf-archive-hub) { padding:44px 24px; background:#fff; border:0; margin:0; }
body.asf-city-refined #asf-main-content :is(.asf-city-crawl-index__inner,.asf-geo-answer__inner,.asf-archive-hub__inner) { max-width:1160px; margin:0 auto; }
body.asf-city-refined #asf-city-directory { scroll-margin-top:160px; border-top:1px solid var(--asf-city-line); padding-top:36px; }
body.asf-city-refined #asf-city-directory h2 { margin:0 0 12px; }
body.asf-city-refined #asf-city-directory p { font-size:17px; line-height:1.65; color:var(--asf-city-muted); }
body.asf-city-refined #asf-city-directory .asf-city-crawl-index__links[aria-label] { display:flex; flex-wrap:wrap; gap:9px; margin:18px 0 26px; }
body.asf-city-refined #asf-city-directory .asf-city-crawl-index__links[aria-label] a { display:inline-flex; align-items:center; min-height:44px; border-radius:8px; padding:9px 14px; background:#eef6f5; border:1px solid #d8e6e5; color:var(--asf-city-teal); font-size:15px; font-weight:650; }
body.asf-city-refined .asf-city-search { max-width:650px; margin-bottom:18px; }
body.asf-city-refined .asf-city-search label { display:block; margin:0 0 8px; color:var(--asf-city-ink); font-size:17px; font-weight:700; }
body.asf-city-refined .asf-city-search__controls { display:flex; gap:10px; }
body.asf-city-refined #asf-city-search-clear { border:1px solid #9db9be; border-radius:8px; padding:10px 18px; background:#fff; color:var(--asf-city-teal); font-size:16px; font-weight:700; }
body.asf-city-refined #asf-city-search-clear:disabled { color:#6c7d81; background:#f2f5f5; border-color:#d5dfe0; }
body.asf-city-refined #asf-city-result-count { margin:8px 0 0; font-size:15px!important; }
body.asf-city-refined #asf-city-results { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:9px; margin:0; }
body.asf-city-refined #asf-city-results a { display:flex; align-items:center; justify-content:space-between; min-height:48px; padding:11px 14px; color:var(--asf-city-ink); background:#fff; border:1px solid var(--asf-city-line); border-radius:8px; font-size:16px; font-weight:600; line-height:1.4; text-decoration:none; }
body.asf-city-refined #asf-city-results a::after { content:'›'; color:var(--asf-city-teal); margin-left:7px; }
body.asf-city-refined #asf-city-results a:hover { background:#eef7f6; border-color:#80b2b7; text-decoration:underline; }
body.asf-city-refined .asf-city-directory-help { max-width:1160px; margin:22px auto 0; }
body.asf-city-refined .asf-city-directory-help a { color:var(--asf-city-rose); font-weight:700; text-underline-offset:3px; }
body.asf-city-refined #asf-main-content .asf-geo-answer { background:#f3f8f7; }
body.asf-city-refined .asf-geo-answer__intro { max-width:850px; font-size:17px!important; line-height:1.7; }
body.asf-city-refined #asf-main-content .asf-geo-answer__grid { display:grid; grid-template-columns:1fr; gap:0; margin:26px 0; border:1px solid var(--asf-city-line); border-radius:12px; overflow:hidden; background:#fff; }
body.asf-city-refined .asf-city-question { background:white; border-bottom:1px solid var(--asf-city-line); }
body.asf-city-refined .asf-city-question:last-child { border-bottom:0; }
body.asf-city-refined .asf-city-question summary { cursor:pointer; padding:21px 24px; display:list-item; list-style:revert; list-style-position:inside; color:var(--asf-city-teal); }
body.asf-city-refined #asf-main-content .asf-city-question h3 { display:inline; font-size:18px; line-height:1.5; color:var(--asf-city-ink); margin:0; }
body.asf-city-refined .asf-city-question__answer { padding:0 24px 20px; max-width:960px; }
body.asf-city-refined #asf-main-content .asf-city-question__answer p { font-size:17px; line-height:1.7; margin:0; overflow-wrap:anywhere; }
body.asf-city-refined .asf-geo-answer__links { gap:10px; }
body.asf-city-refined .asf-geo-answer__links a { min-height:46px; border-radius:8px; background:var(--asf-city-teal); }
body.asf-city-refined .asf-geo-answer__note { font-size:13px!important; line-height:1.6; }
body.asf-city-refined .asf-archive-hub__intro { max-width:870px; font-size:17px!important; }
body.asf-city-refined .asf-city-reading-guide { border:1px solid var(--asf-city-line)!important; border-radius:10px; margin:20px 0; }
body.asf-city-refined .asf-archive-hub__routes { grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:22px 0 34px; }
body.asf-city-refined .asf-archive-hub__route { border:1px solid var(--asf-city-line); border-radius:10px; background:#f4f9f8; padding:18px; }
body.asf-city-refined .asf-archive-hub__route strong { font-size:17px; }
body.asf-city-refined .asf-archive-hub__route span { font-size:15px; }
body.asf-city-refined .asf-archive-hub__grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
body.asf-city-refined .asf-archive-hub__card { border:1px solid var(--asf-city-line); border-radius:12px; box-shadow:none; padding:20px; display:flex; flex-direction:column; }
body.asf-city-refined .asf-archive-hub__card h3 { font-size:18px; line-height:1.4; }
body.asf-city-refined .asf-archive-hub__card p { font-size:15px; line-height:1.65; }
body.asf-city-refined .asf-archive-hub__card > a { margin-top:auto; min-height:44px; display:inline-flex; align-items:center; text-decoration:underline; text-underline-offset:4px; }
body.asf-city-refined .asf-city-final-help { max-width:1160px; margin:4px auto 56px; padding:32px; border-radius:16px; background:#edf7f6; border:1px solid #cfe4e1; display:flex; gap:24px; justify-content:space-between; align-items:center; }
body.asf-city-refined .asf-city-final-help h2 { margin:0 0 10px; }
body.asf-city-refined .asf-city-final-help p { font-size:17px; line-height:1.65; margin:0; max-width:620px; }
body.asf-city-refined .asf-city-actions { display:flex; flex-direction:column; align-items:center; gap:12px; flex-shrink:0; }
body.asf-city-refined .asf-city-button { display:inline-flex; min-height:50px; padding:14px 26px; justify-content:center; border-radius:8px; background:var(--asf-city-rose); color:#fff; font-size:17px; font-weight:700; text-decoration:none; }
body.asf-city-refined .asf-city-phone { color:var(--asf-city-teal); font-size:16px; font-weight:700; min-height:44px; display:inline-flex; align-items:center; text-underline-offset:4px; }
@media(max-width:1199px) {
 body.asf-city-refined #asf-city-results { grid-template-columns:repeat(4,minmax(0,1fr)); }
 body.asf-city-refined .asf-archive-hub__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 body.asf-city-refined .asf-city-final-help { margin-inline:24px; }
}
@media(min-width:768px) and (max-width:980px) {
 body.asf-city-refined .elementor-12205 .elementor-element-3e427cd > .elementor-widget-container { grid-template-columns:minmax(0,1fr); }
 body.asf-city-refined.asf-map-activated #asf-main-content .jet-map-listing, body.asf-city-refined #asf-main-content .jet-map-listing { height:360px!important; min-height:360px!important; max-height:360px; }
 body.asf-city-refined .asf-city-map-picker { grid-template-columns:minmax(0,1fr) auto; }
 body.asf-city-refined .asf-city-map-picker label { grid-column:1/-1; }
}
@media(max-width:767px) {
 body.asf-city-refined .elementor-12205 > .elementor-element-0b14624 { padding:32px 20px 24px; }
 body.asf-city-refined .elementor-12205 .elementor-element-2f9f7b9 p { font-size:18px; }
 body.asf-city-refined .elementor-12205 .elementor-element-3e427cd { width:calc(100% - 32px); margin-bottom:18px; }
 body.asf-city-refined .elementor-12205 .elementor-element-3e427cd > .elementor-widget-container { grid-template-columns:minmax(0,1fr); border-radius:16px; }
 body.asf-city-refined #asf-main-content .asf-city-map-mobile-intro { padding:24px 20px; }
 body.asf-city-refined.asf-map-activated #asf-main-content .jet-map-listing, body.asf-city-refined #asf-main-content .jet-map-listing { height:340px!important; min-height:340px!important; max-height:340px; }
 body.asf-city-refined .elementor-12205 .elementor-element-cf55e60 { width:calc(100% - 32px); padding:22px; flex-direction:column; text-align:center; margin-bottom:22px; gap:16px; }
 body.asf-city-refined #asf-main-content :is(.asf-city-crawl-index,.asf-geo-answer,.asf-archive-hub) { padding:32px 20px; }
 body.asf-city-refined #asf-city-results { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
 body.asf-city-refined #asf-city-results a { padding:11px 12px; font-size:16px; }
 body.asf-city-refined .asf-city-question summary { padding:18px; }
 body.asf-city-refined .asf-city-question__answer { padding:0 18px 20px; }
 body.asf-city-refined .asf-archive-hub__routes { grid-template-columns:1fr; }
 body.asf-city-refined .asf-archive-hub__grid { grid-template-columns:1fr; }
 body.asf-city-refined .asf-archive-hub__card { padding:20px; }
 body.asf-city-refined .asf-city-final-help { margin:0 20px 36px; padding:24px; flex-direction:column; align-items:flex-start; }
 body.asf-city-refined .asf-city-actions { width:100%; align-items:stretch; text-align:center; }
 body.asf-city-refined .asf-city-phone { justify-content:center; }
}

@media(min-width:768px) and (max-width:1279px) {
/* Reserve a separate navigation row on narrower desktop screens. */
body.asf-city-refined header.elementor-location-header .elementor-element-1714abf > .e-con-inner {
  display: grid !important;
  grid-template-columns: minmax(195px, 1fr) auto !important;
  grid-template-areas: "brand actions" "navigation navigation" !important;
  align-items: center !important;
  column-gap: 16px !important;
  row-gap: 6px !important;
  padding-block: 10px !important;
}
body.asf-city-refined header.elementor-location-header .elementor-element-9ae259a {
  grid-area: brand !important;
  --width: 195px !important;
  width: 195px !important;
  min-width: 195px !important;
  max-width: 195px !important;
  justify-self: start !important;
}
body.asf-city-refined header.elementor-location-header .elementor-element-9026236 {
  grid-area: actions !important;
  --width: auto !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  justify-self: end !important;
}
body.asf-city-refined header.elementor-location-header .elementor-element-b9b7786 {
  grid-area: navigation !important;
  --width: 100% !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  justify-self: stretch !important;
}
body.asf-city-refined header.elementor-location-header .elementor-nav-menu--main,
body.asf-city-refined header.elementor-location-header .elementor-nav-menu--main > ul.elementor-nav-menu {
  width: 100% !important;
  max-width: 100% !important;
}
body.asf-city-refined header.elementor-location-header .elementor-nav-menu--main > ul.elementor-nav-menu {
  flex-wrap: wrap !important;
  row-gap: 6px !important;
}
body.asf-city-refined header.elementor-location-header .elementor-nav-menu--main > ul.elementor-nav-menu > li > a.elementor-item {
  min-height: 40px !important;
}

/* Keep the action controls together above the visible navigation row. */
body.asf-city-refined header.elementor-location-header .elementor-element-9026236 {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 12px !important;
}
body.asf-city-refined header.elementor-location-header .elementor-element-9026236 > .elementor-element {
  width: auto !important;
  flex: 0 0 auto !important;
}
body.asf-city-refined header.elementor-location-header .elementor-element-b35a829 {
  display: none !important;
}
body.asf-city-refined header.elementor-location-header .gtranslate_wrapper:has(> .gt_switcher-popup) > .asf-language-fallback {
  display: none !important;
}

body.asf-city-refined header.elementor-location-header .elementor-element-b9b7786,
body.asf-city-refined header.elementor-location-header .elementor-nav-menu--main {
  display: flex !important;
  visibility: visible !important;
}
}

/* A sticky placeholder reserves space; none of its copied controls should paint. */
body.asf-city-refined header.elementor-location-header[data-elementor-id="15"] .elementor-element-1714abf.elementor-sticky__spacer,
body.asf-city-refined header.elementor-location-header[data-elementor-id="15"] .elementor-element-1714abf.elementor-sticky__spacer * {
  visibility: hidden !important;
  pointer-events: none !important;
}
