@charset "UTF-8";
.hero-banner{position:relative;background-size:cover;background-position:center;padding:80px 20px;min-height:420px;display:flex;align-items:center;}
.hero-banner::before{content:'';position:absolute;inset:0;background:rgba(0,0,0,.52);}
.hero-inner{position:relative;z-index:1;max-width:860px;margin:0 auto;text-align:center;color:#fff;}
.eyebrow-pill{display:inline-block;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:6px 18px;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;margin-bottom:18px;}
.hero-inner h1{font-size:clamp(1.9rem,4vw,2.8rem);font-weight:700;margin:0 0 16px;}
.hero-sub{font-size:1.05rem;line-height:1.65;margin:0 0 24px;opacity:.92;}
.hero-badges{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:28px;}
.badge{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.3);border-radius:4px;padding:5px 13px;font-size:.78rem;font-weight:600;}
.cta-button{display:inline-block;background:#e8a020;color:var(--ink);font-weight:700;padding:13px 28px;border-radius:5px;text-decoration:none;margin:4px;}
.cta-secondary{background:transparent;border:2px solid #fff;color:#fff;}/* transparent on the dark band, so it keeps white text while the filled   .cta-button next to it takes ink on its amber */
.trust-bar{background:#1a2332;padding:28px 20px;}
.trust-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:32px;max-width:800px;margin:0 auto;text-align:center;}
.trust-number{display:block;font-size:2rem;font-weight:800;color:#e8a020;}
.trust-label{font-size:.82rem;color:#ccd6e0;letter-spacing:.04em;text-transform:uppercase;}
.content-section{padding:60px 20px;}
.content-section-alt{background:var(--surface);}
.section-inner{max-width:980px;margin:0 auto;}
.section-inner h2{font-size:clamp(1.35rem,2.5vw,1.75rem);margin-bottom:18px;}
.section-inner h3{font-size:1.1rem;margin:18px 0 8px;}
.checklist-card{background:#eef4fb;border-left:4px solid #2a6bb5;border-radius:6px;padding:24px 28px;margin-top:28px;}
.checklist-card h3{margin-top:0;color:#1a2332;}
.checklist-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:4px 24px;}
.checklist-grid ul{list-style:none;margin:8px 0 0;padding:0;}
.checklist-grid li{padding:4px 0;font-size:.92rem;}
.neighbourhood-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:24px;}
.neighbourhood-card{background:#fff;border:1px solid #dde4ee;border-radius:8px;padding:22px;}
.neighbourhood-card h3{margin-top:0;font-size:1rem;color:#1a2332;}
.services-section{padding:60px 20px;background:#fff;}
.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:22px;margin-top:24px;}
.service-card{background:var(--surface);border-radius:8px;padding:24px;}
.service-icon{font-size:1.8rem;margin-bottom:10px;}
.service-card h3{margin:0 0 10px;font-size:1rem;}
.pro-tip-box{background:#fff8e6;border-left:4px solid #e8a020;border-radius:6px;padding:18px 22px;margin-top:28px;font-size:.92rem;}
.testimonial-section{padding:50px 20px;background:#1a2332;}
.testimonial-card{max-width:720px;margin:0 auto;text-align:center;color:#fff;border:none;}
.testimonial-card p{font-size:1.08rem;font-style:italic;line-height:1.7;margin-bottom:14px;}
.testimonial-card cite{font-style:normal;font-size:.85rem;opacity:.75;}
.faq-section{padding:60px 20px;}
.faq-item{border-bottom:1px solid #dde4ee;padding:18px 0;}
.faq-item h3{margin:0 0 8px;font-size:1rem;}
.faq-item p{margin:0;font-size:.92rem;line-height:1.65;}
.related-section{padding:60px 20px;background:var(--surface);}
.related-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin-top:20px;}
.related-card{background:#fff;border:1px solid #dde4ee;border-radius:8px;padding:20px;}
.related-card h3{margin:0 0 8px;font-size:.98rem;}
.related-card h3 a{color:#2a6bb5;text-decoration:none;}
.related-card p{margin:0;font-size:.86rem;color:var(--muted);}
.cta-section{padding:60px 20px;background:#1a2332;}
.cta-box{text-align:center;color:#fff;}
.cta-box h2{font-size:clamp(1.3rem,2.5vw,1.8rem);margin-bottom:14px;}
.cta-box p{max-width:620px;margin:0 auto 24px;opacity:.9;line-height:1.65;}
.city-name{color:#e8a020;}
