*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#18221e;background:#fff;line-height:1.62}a{color:inherit}.container{width:min(1160px,calc(100% - 36px));margin:auto}.topbar{background:#0b3328;color:#fff;font-size:.9rem}.topbar .container{display:flex;justify-content:space-between;gap:20px;padding:8px 0;flex-wrap:wrap}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);border-bottom:1px solid #e5ece8}.nav{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:74px}.brand{font-size:1.1rem;font-weight:900;text-decoration:none;display:flex;align-items:center;gap:10px}.brand-mark{width:38px;height:38px;border-radius:10px;background:#13745a;color:#fff;display:grid;place-items:center;font-weight:900}.nav-links{display:flex;align-items:center;gap:22px}.nav-links a{text-decoration:none;font-weight:700;font-size:.95rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#e86f2b;color:#fff!important;text-decoration:none;font-weight:850;border-radius:9px;padding:13px 18px;border:0;cursor:pointer}.btn.secondary{background:#fff;color:#0b3328!important;border:2px solid #0b3328}.btn.small{padding:10px 14px}.hero{background:linear-gradient(90deg,rgba(4,32,25,.92),rgba(4,32,25,.68)),url('https://87d60a4c.san-bernardino-drainage-san-bernardino.pages.dev/assets/uploads/hero.png') center/cover;min-height:650px;display:flex;align-items:center;color:#fff}.hero-inner{max-width:780px;padding:80px 0}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-weight:900;font-size:.78rem;color:#ef9b62}.hero h1,.page-hero h1{font-size:clamp(2.3rem,5vw,4.5rem);line-height:1.03;margin:.25em 0}.hero p{font-size:1.18rem;max-width:720px;color:#eff8f5}.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.trust-row{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:34px}.trust{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);padding:14px;border-radius:10px}.section{padding:72px 0}.section.alt{background:#f4f8f6}.section h2{font-size:clamp(1.8rem,3.5vw,2.8rem);line-height:1.15;margin:0 0 16px;color:#0b3328}.lead{font-size:1.12rem;color:#435149;max-width:800px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px}.card{border:1px solid #dce6e1;border-radius:14px;padding:24px;background:#fff;box-shadow:0 9px 28px rgba(15,59,45,.06)}.card h3{margin:0 0 8px;color:#0b3328}.card a.more{color:#13745a;font-weight:800;text-decoration:none}.price{font-weight:900;color:#e86f2b;margin-top:12px}.split{display:grid;grid-template-columns:1.08fr .92fr;gap:48px;align-items:center}.split img,.feature-image{width:100%;border-radius:16px;display:block;box-shadow:0 14px 38px rgba(17,50,40,.13)}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:30px}.stat{padding:20px;background:#0b3328;color:#fff;border-radius:12px}.stat strong{display:block;font-size:2rem}.steps{counter-reset:step;display:grid;gap:18px;margin-top:28px}.step{position:relative;padding:22px 22px 22px 76px;border-left:4px solid #13745a;background:#fff;border-radius:10px;box-shadow:0 7px 24px rgba(15,59,45,.06)}.step:before{counter-increment:step;content:counter(step);position:absolute;left:20px;top:20px;width:38px;height:38px;border-radius:50%;background:#e86f2b;color:#fff;display:grid;place-items:center;font-weight:900}.area-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.chip{padding:9px 13px;background:#e8f2ee;border-radius:999px;text-decoration:none;font-weight:750;color:#0b3328}.testimonial{padding:24px;border-left:4px solid #e86f2b;background:#fff;border-radius:10px}.faq{max-width:900px}.faq details{border-bottom:1px solid #dce6e1;padding:15px 0}.faq summary{font-weight:850;color:#0b3328;cursor:pointer}.faq p{margin:10px 0 0}.quote-box{background:#0b3328;color:#fff;border-radius:18px;padding:34px}.quote-box h2{color:#fff}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.quote-box input,.quote-box textarea,.quote-box select{width:100%;padding:13px;border-radius:8px;border:0;font:inherit}.quote-box textarea{min-height:110px;grid-column:1/-1}.quote-box button{grid-column:1/-1}.page-hero{background:#0b3328;color:#fff;padding:58px 0}.breadcrumbs{font-size:.9rem;color:#c8ddd5;margin-bottom:10px}.breadcrumbs a{color:#fff}.page-hero p{font-size:1.12rem;max-width:800px;color:#e8f2ee}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:42px}.sidebar{position:sticky;top:100px;align-self:start}.sidebox{border:1px solid #dce6e1;border-radius:14px;padding:22px;margin-bottom:18px}.sidebox ul{padding-left:18px}.article h2{margin-top:42px}.article h3{color:#0b3328}.article img{max-width:100%;border-radius:14px}.checklist{padding:0;list-style:none}.checklist li{padding:7px 0 7px 28px;position:relative}.checklist li:before{content:'✓';position:absolute;left:0;color:#13745a;font-weight:900}.pricing{width:100%;border-collapse:collapse;margin:20px 0}.pricing th,.pricing td{border-bottom:1px solid #dce6e1;padding:13px;text-align:left}.pricing th{background:#f4f8f6}.local-notes{display:grid;grid-template-columns:1fr 1fr;gap:15px}.note{background:#f4f8f6;padding:18px;border-radius:12px}.footer{background:#071f18;color:#dbeae4;padding:52px 0 28px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:38px}.footer h3{color:#fff}.footer a{color:#dbeae4;text-decoration:none;display:block;margin:7px 0}.legal{border-top:1px solid #2c463d;margin-top:30px;padding-top:20px;font-size:.86rem;color:#a9beb6}.mobile-call{display:none;position:fixed;bottom:12px;left:12px;right:12px;z-index:25;background:#e86f2b;color:#fff;text-align:center;padding:14px;border-radius:10px;text-decoration:none;font-weight:900;box-shadow:0 8px 25px rgba(0,0,0,.25)}@media(max-width:900px){.nav-links{display:none}.cards{grid-template-columns:1fr 1fr}.split,.content-grid{grid-template-columns:1fr}.sidebar{position:static}.hero{min-height:590px}.trust-row{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.local-notes{grid-template-columns:1fr}}@media(max-width:620px){.cards,.stat-grid,.form-grid,.footer-grid{grid-template-columns:1fr}.hero-inner{padding:64px 0}.section{padding:54px 0}.mobile-call{display:block}body{padding-bottom:70px}.quote-box textarea{grid-column:auto}.quote-box button{grid-column:auto}}