@charset "UTF-8";
.hero-banner{background:linear-gradient(135deg,rgba(var(--primary-rgb),.93) 0%,rgba(10,40,100,.9) 100%),url("/cleaning3.webp") center/cover no-repeat;color:#fff;padding:90px 20px;text-align:center}
.hero-inner{max-width:900px;margin:0 auto}
.eyebrow-pill{display:inline-block;background:rgba(var(--accent-rgb),.2);color:var(--accent);border:1px solid rgba(var(--accent-rgb),.5);padding:7px 20px;border-radius:50px;font-size:.9rem;font-weight:700;margin-bottom:20px;letter-spacing:.3px}
.hero-banner h1{font-size:3rem;font-weight:900;margin:0 0 20px;line-height:1.1}
.city-name{color:var(--accent)}
.hero-sub{font-size:1.1rem;line-height:1.7;opacity:.92;max-width:780px;margin:0 auto 25px}
.hero-badges{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:28px}
.badge{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.35);color:#fff;padding:6px 16px;border-radius:30px;font-size:.85rem;font-weight:600}
.cta-button{display:inline-flex;align-items:center;gap:8px;padding:16px 36px;border-radius:50px;text-decoration:none;font-weight:800;font-size:1.05rem;transition:all .3s;background:linear-gradient(135deg,var(--accent),var(--accent-dark));color:var(--accent-ink);box-shadow:0 6px 20px rgba(var(--accent-rgb),.35);margin:6px}
.cta-button:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(var(--accent-rgb),.45)}
/* .section-inner a is (0,1,1) and beats .cta-button at (0,1,0), so the
   button inside a content section was taking the link colour and rendering
   brand blue on the green fill. */
.section-inner .cta-button{color:var(--accent-ink)}
.section-inner .cta-button.cta-secondary{color:var(--primary)}
.cta-secondary{background:#fff;color:var(--primary);box-shadow:none}
.cta-secondary:hover{background:#f0f4ff}
.trust-bar{background:var(--surface);border-bottom:2px solid var(--border);padding:35px 20px}
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;max-width:900px;margin:0 auto;text-align:center}
.trust-stat{padding:10px}
.trust-number{display:block;font-size:2.2rem;font-weight:900;color:var(--primary);line-height:1}
.trust-label{display:block;font-size:.85rem;color:var(--muted);margin-top:4px}
.content-section{padding:70px 20px;background:#fff}
.content-section-alt{background:var(--surface)}
.section-inner{max-width:960px;margin:0 auto}
.section-inner h2{font-size:2rem;color:var(--primary);font-weight:900;margin-bottom:20px}
.section-inner p{font-size:1rem;line-height:1.8;color:var(--text);margin-bottom:16px}
.section-inner a{color:var(--primary);font-weight:600}
.checklist-card{background:#f0f4ff;border:1px solid #c7d7f5;border-radius:12px;padding:28px 32px;margin:28px 0}
.checklist-card h3{font-size:1.15rem;color:var(--primary);font-weight:800;margin-bottom:16px}
.checklist-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 30px}
.checklist-grid ul{list-style:none;padding:0;margin:0}
.checklist-grid li{padding:6px 0;color:var(--text);font-size:.95rem}
.neighbourhood-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-top:30px}
.neighbourhood-card{background:#fff;border:1px solid var(--border);border-left:4px solid var(--primary);border-radius:8px;padding:24px}
.neighbourhood-card h3{font-size:1.05rem;font-weight:800;color:var(--primary);margin-bottom:10px}
.neighbourhood-card p{font-size:.9rem;line-height:1.7;color:var(--muted);margin:0}
.pro-tip-box{background:#fffbe6;border:1px solid #f5d76e;border-left:4px solid #e6a800;border-radius:8px;padding:20px 24px;margin:24px 0;font-size:.95rem;line-height:1.7;color:var(--text)}
.services-section{padding:70px 20px;background:#fff}
.services-section h2,.pricing-section h2,.testimonial-section h2,.faq-section h2,.related-section h2,.cta-section h2{font-size:2rem;color:var(--primary);font-weight:900;margin-bottom:16px;text-align:center}
.services-section>.section-inner>p,.pricing-section>.section-inner>p{text-align:center;color:var(--muted);margin-bottom:36px}
.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px}
.service-card{background:var(--surface);border:1px solid var(--border);border-top:4px solid var(--primary);border-radius:10px;padding:24px;transition:all .3s}
.service-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,.09)}
.service-icon{font-size:2.2rem;margin-bottom:12px}
.service-card h3{font-size:1.05rem;font-weight:800;color:#1a1a2e;margin-bottom:10px}
.service-card p{font-size:.9rem;line-height:1.6;color:var(--muted);margin:0}
.testimonial-section{padding:60px 20px;background:#fff}
.testimonial-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:32px;max-width:780px;margin:0 auto;font-size:1.05rem;line-height:1.8;color:var(--text);font-style:italic}
.testimonial-card cite{display:block;margin-top:20px;font-style:normal;font-weight:700;color:var(--primary);font-size:.9rem}
.faq-section{padding:70px 20px;background:var(--surface)}
.faq-section .section-inner{max-width:860px}
.faq-item{background:#fff;border:1px solid var(--border);border-radius:10px;padding:22px 26px;margin-bottom:16px}
.faq-item h3{font-size:1rem;font-weight:800;color:var(--primary);margin:0 0 10px}
.faq-item p{font-size:.95rem;line-height:1.7;color:var(--muted);margin:0}
.related-section{padding:70px 20px;background:#fff}
.related-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-top:30px}
.related-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:20px}
.related-card h3{font-size:1rem;font-weight:800;margin-bottom:8px}
.related-card h3 a{color:var(--primary);text-decoration:none}
.related-card h3 a:hover{text-decoration:underline}
.related-card p{font-size:.88rem;line-height:1.6;color:var(--muted);margin:0}
.cta-section{padding:70px 20px;background:linear-gradient(135deg,var(--primary),#1e3a8a);color:#fff;text-align:center}
.cta-section h2{color:#fff}
.cta-section p{font-size:1rem;opacity:.92;max-width:700px;margin:0 auto 28px;line-height:1.7}
@media(max-width:768px){
.hero-banner h1{font-size:2rem}
.trust-grid{grid-template-columns:repeat(2,1fr)}
.checklist-grid{grid-template-columns:1fr}
.pricing-table th:nth-child(4),.pricing-table td:nth-child(4){display:none}
}
/* mobile hero */@media(max-width:768px){.hero-banner{background-image:linear-gradient(135deg,rgba(var(--primary-rgb),.93) 0%,rgba(10,40,100,.9) 100%),url('/cleaning3-m.webp')}}
