*{box-sizing:border-box}body{margin:0;color:#172b32;font:17px/1.7 system-ui,-apple-system,Segoe UI,sans-serif;background:#f9faf8}a{color:#125b54}a:hover{text-decoration-thickness:2px}.wrap{max-width:1140px;margin:auto;padding:0 24px}.top{background:#fff;color:#172b32;border-bottom:1px solid #d7e2dc;box-shadow:0 3px 14px rgba(18,61,57,.12);position:relative;z-index:2}.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:15px;padding-bottom:15px}.brand{font-weight:850;font-size:1.35rem;color:#123d39;text-decoration:none}.top nav{display:flex;gap:17px;flex-wrap:wrap}.top nav a{color:#173f3b;text-decoration:none;font-size:.92rem}.hero{background:linear-gradient(120deg,#143f3b,#247368);color:white;padding:68px 0}.hero h1{font-size:clamp(2rem,4vw,3.5rem);line-height:1.12;max-width:850px;margin:0 0 20px}.hero p{max-width:740px;font-size:1.15rem}.button{display:inline-block;background:#ffc34d;color:#192c2b;font-weight:800;text-decoration:none;padding:13px 22px;border-radius:7px;margin:9px 12px 9px 0}.button.secondary{background:white}.section{padding:44px 0}.section:nth-of-type(even){background:white}h2{font-size:clamp(1.5rem,2.6vw,2.15rem);line-height:1.3;margin:0 0 18px}h3{font-size:1.25rem;line-height:1.35}p{max-width:850px}li{margin:8px 0}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:18px}.card{border:1px solid #dbe4de;background:white;border-radius:12px;padding:20px}.card p{margin-bottom:0}.callout{background:#e8f2ed;border-left:5px solid #247368;padding:24px;border-radius:8px;margin:26px 0}.crumb{font-size:.9rem;padding:16px 0}.muted{color:#53676b}.foot{background:#123d39;color:white;padding:42px 0 90px}.foot a{color:white}.footlinks{display:flex;gap:16px;flex-wrap:wrap}.sticky{display:none}@media(max-width:700px){.top nav{gap:12px}.hero{padding:44px 0}.sticky{display:block;position:fixed;bottom:0;left:0;right:0;background:#ffc34d;color:#172b32;text-align:center;text-decoration:none;font-weight:850;padding:14px;z-index:10;box-shadow:0 -3px 16px #0003}.wrap{padding:0 18px}}

/* Responsive header: navigation remains between brand and call CTA on desktop. */
.top .wrap{flex-wrap:nowrap}
.top .brand{white-space:nowrap;flex-shrink:0}
.top nav{align-items:center}
.top .header-call{margin:0;white-space:nowrap;flex-shrink:0}
.menu-toggle{display:none}
@media(max-width:1050px){
 .top .wrap{display:flex;align-items:center;gap:10px;padding-top:12px;padding-bottom:12px}
 .top .brand{margin-right:auto;font-size:1.12rem}
 .top .header-call{margin:0;padding:10px 12px;font-size:.85rem;line-height:1.3}
 .menu-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;height:44px;flex-shrink:0;background:white;border:1px solid #9eb6af;border-radius:7px;cursor:pointer;order:3}
 .menu-toggle span{display:block;width:21px;height:2px;background:#123d39;border-radius:2px}
 .menu-toggle:focus-visible,.top nav a:focus-visible{outline:3px solid #247368;outline-offset:3px}
 .top nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;box-shadow:0 10px 18px rgba(18,61,57,.18);border-bottom:1px solid #d7e2dc;padding:10px 18px 16px;flex-direction:column;align-items:stretch;gap:0;z-index:20}
 .top nav.is-open{display:flex}
 .top nav a{display:block;padding:12px 10px;border-bottom:1px solid #e8efeb;font-size:1rem}
 .top nav a:last-child{border-bottom:0}
}
@media(max-width:420px){
 .top .brand{display:none}
 .top .wrap{justify-content:flex-end}
 .top .header-call{margin-right:auto}
}

.city-directory{columns:4;column-gap:2rem;padding-left:1.25rem}.city-directory li{break-inside:avoid;margin-bottom:.3rem}.zip-list{display:flex;flex-wrap:wrap;gap:.45rem}.zip{display:inline-block;padding:.1rem .45rem;border:1px solid #d7e2dc;border-radius:4px;background:#fff}@media(max-width:850px){.city-directory{columns:2}}@media(max-width:480px){.city-directory{columns:1}}


/* Align standalone end-of-page CTA panels with the content column. */
.section > .wrap.callout {
  width: calc(100% - 48px);
  max-width: 1092px;
  margin: 26px auto;
  padding: 24px;
}
@media (max-width: 700px) {
  .section > .wrap.callout {
    width: calc(100% - 36px);
    padding: 20px;
  }
}
