@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Fraunces:opsz,wght@9..144,600;9..144,700&family=Manrope:wght@400;600;700&display=swap";:root{--forest:#173f35;--forest-dark:#0e2d26;--moss:#477361;--rain:#74a88f;--sun:#f4c35b;--clay:#bf5f3f;--paper:#f5f0e4;--paper-2:#ebe4d5;--white:#fffdf7;--ink:#172520;--muted:#5c665f;--line:#c9c4b5;--shadow:0 24px 60px #1b322921}*{box-sizing:border-box}html{background:var(--paper);color:var(--ink);scroll-behavior:smooth;font-family:Manrope,sans-serif;line-height:1.65;overflow-x:hidden}body{margin:0;overflow-x:hidden}body:before{content:"";opacity:.35;pointer-events:none;z-index:-1;background-image:radial-gradient(#173f3514 .7px,#0000 .7px);background-size:9px 9px;position:fixed;inset:0}a{color:inherit}.container{max-width:1160px;margin:0 auto;padding:0 24px}.site-header{backdrop-filter:blur(14px);z-index:30;background:#f5f0e4ed;border-bottom:1px solid #173f352e;position:sticky;top:0}.header-inner{grid-template-columns:auto 1fr auto;align-items:center;gap:24px;min-height:82px;display:grid}.brand{align-items:center;gap:12px;text-decoration:none;display:flex}.brand-mark{background:var(--forest);border-radius:50%;justify-content:center;align-items:center;gap:3px;width:44px;height:44px;display:flex;position:relative;overflow:hidden}.brand-mark i{background:var(--sun);border-radius:999px 999px 60% 60%;width:4px;height:22px;transform:rotate(14deg)}.brand strong,.brand small{display:block}.brand strong{font-family:Fraunces,serif;font-size:1.08rem;line-height:1.05}.brand small{color:var(--muted);letter-spacing:.03em;text-transform:uppercase;margin-top:3px;font-family:DM Mono,monospace;font-size:.62rem}nav{justify-content:center;gap:18px;display:flex}nav a{color:var(--muted);text-transform:uppercase;font-family:DM Mono,monospace;font-size:.72rem;font-weight:500;text-decoration:none}nav a:hover,nav a:focus-visible{color:var(--clay)}.header-cta{background:var(--clay);color:var(--white);text-align:center;text-transform:uppercase;border-radius:999px;padding:10px 17px;font-family:DM Mono,monospace;font-size:.69rem;text-decoration:none;display:grid}.header-cta strong{color:var(--sun);font-size:.82rem}.header-cta-muted{white-space:nowrap;display:block}.hero{padding:74px 0 60px;position:relative}.hero:after{content:"";z-index:-1;border:1px solid #173f351f;border-radius:50%;width:620px;height:620px;position:absolute;top:-170px;right:-340px}.hero-grid{grid-template-columns:1.13fr .87fr;align-items:center;gap:64px;display:grid}.hero-copy{animation:.7s both rise}.eyebrow{color:var(--clay);letter-spacing:.05em;text-transform:uppercase;font-family:DM Mono,monospace;font-size:.76rem;font-weight:500}h1,h2,h3{text-wrap:balance;margin:0;font-family:Fraunces,serif;line-height:1.04}h1{letter-spacing:-.045em;margin-top:16px;font-size:clamp(3.15rem,6.1vw,5.8rem)}h2{letter-spacing:-.035em;font-size:clamp(2.15rem,4.1vw,3.65rem)}h3{font-size:1.4rem}p{color:var(--muted);margin:0}.lead{color:#405047;max-width:700px;margin-top:24px;font-size:1.18rem}.hero-actions{flex-wrap:wrap;align-items:center;gap:20px;margin-top:30px;display:flex}.button{background:var(--forest);color:var(--white);cursor:pointer;text-transform:uppercase;border:0;border-radius:999px;justify-content:center;min-height:50px;padding:15px 22px;font-family:DM Mono,monospace;font-size:.78rem;font-weight:500;text-decoration:none;transition:transform .18s,box-shadow .18s;display:inline-flex}.button:hover,.button:focus-visible{transform:translateY(-3px);box-shadow:0 10px #173f352e}[data-lead-type=phone]{background:var(--clay)}[data-lead-type=phone]:hover,[data-lead-type=phone]:focus-visible{box-shadow:0 10px #bf5f3f2e}.text-link{text-transform:uppercase;font-family:DM Mono,monospace;font-size:.78rem;font-weight:500;text-decoration:none}.text-link span{color:var(--clay);margin-left:7px}.hero-image{background:var(--forest);box-shadow:var(--shadow);border-radius:28px 28px 8px;margin:0;animation:.7s .12s both rise;position:relative;overflow:hidden;transform:rotate(1deg)}.hero-image:after{content:"";pointer-events:none;background:linear-gradient(#0000 52%,#0e2d26c7 100%);position:absolute;inset:0}.hero-image img{aspect-ratio:4/3;object-fit:cover;object-position:var(--hero-image-position,center);width:100%;height:auto;display:block}.hero-image figcaption{color:var(--white);letter-spacing:.04em;text-transform:uppercase;z-index:1;justify-content:space-between;align-items:end;padding:18px 20px;font-family:DM Mono,monospace;font-size:.64rem;display:flex;position:absolute;bottom:0;left:0;right:0}.hero-image figcaption strong{color:var(--sun);font-size:inherit;text-align:right;font-weight:500}.section{padding:72px 0}.section-tight{padding:42px 0}.section-forest{background:var(--forest);color:var(--white)}.section-forest p{color:#c9d9d1}.section-forest .city-facts li{color:#d4dfd9;border-color:#fff3}.section-heading{grid-template-columns:.85fr 1.15fr;gap:24px;margin-bottom:34px;display:grid}.direct-answer{border-bottom:1px solid var(--line);border-top:1px solid var(--line);grid-template-columns:.42fr 1.58fr;gap:40px;padding:32px 0;display:grid}.direct-answer p{color:var(--ink);font-family:Fraunces,serif;font-size:clamp(1.45rem,2.5vw,2.15rem);line-height:1.28}.signal-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.signal-card{background:var(--white);border:1px solid var(--line);border-radius:6px 24px 6px 6px;gap:12px;padding:24px;text-decoration:none;transition:border .2s,transform .2s;display:grid}.signal-card:hover{border-color:var(--clay);transform:translateY(-4px)}.signal-card span{color:var(--clay);text-transform:uppercase;font-family:DM Mono,monospace;font-size:.69rem}.signal-card strong{font-family:Fraunces,serif;font-size:1.45rem;line-height:1.1}.signal-card i{color:var(--clay);font-style:normal}.service-choice-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.service-choice{background:var(--white);border:1px solid var(--line);border-radius:7px 26px 7px 7px;gap:12px;min-height:270px;padding:28px;text-decoration:none;transition:border-color .2s,transform .2s;display:grid}.service-choice:hover,.service-choice:focus-visible{border-color:var(--clay);transform:translateY(-4px)}.service-choice>span{color:var(--clay);letter-spacing:.025em;text-transform:uppercase;font-family:DM Mono,monospace;font-size:.68rem}.service-choice h2,.service-choice h3{font-size:clamp(1.8rem,3vw,2.55rem)}.service-choice strong{color:var(--forest);text-transform:uppercase;align-self:end;font-family:DM Mono,monospace;font-size:.7rem}.service-choice-primary{background:var(--forest);border-color:var(--forest);color:var(--white)}.service-choice-primary p{color:#c9d9d1}.service-choice-primary strong{color:var(--sun)}.installation-lane{background:var(--paper-2);border-bottom:1px solid var(--line);border-top:1px solid var(--line)}.installation-lane-grid{grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);align-items:start;gap:48px;display:grid}.installation-links{border-top:1px solid var(--line);margin-top:30px;display:grid}.installation-links a{border-bottom:1px solid var(--line);grid-template-columns:.7fr 1.3fr;align-items:baseline;gap:16px;padding:17px 0;text-decoration:none;display:grid}.installation-links a:hover strong,.installation-links a:focus-visible strong{color:var(--clay)}.installation-links strong{font-family:Fraunces,serif;font-size:1.12rem}.installation-links span{color:var(--muted);font-size:.84rem}.installation-lane .service-cta{grid-template-columns:1fr}.content-stack{gap:20px;display:grid}.content-panel{background:var(--white);border:1px solid var(--line);border-radius:8px;grid-template-columns:.9fr 1.1fr;gap:28px;padding:34px;display:grid}.content-panel p{margin-top:15px}.check-list{margin:0;padding:0;list-style:none}.check-list li{border-top:1px solid var(--line);color:var(--muted);padding:12px 0 12px 28px;position:relative}.check-list li:before{color:var(--moss);content:"◆";font-size:.65rem;position:absolute;top:15px;left:3px}.gutter-explainer{background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px 34px 8px 8px;grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);align-items:start;gap:0;margin:0;display:grid;overflow:hidden}.gutter-explainer-visual{background:var(--forest-dark);align-self:start;position:relative;overflow:hidden}.gutter-explainer-visual>img{aspect-ratio:3/2;object-fit:cover;width:100%;height:auto;display:block}.gutter-explainer-visual:after{content:"";pointer-events:none;background:linear-gradient(#0000 68%,#0e2d26c7 100%);position:absolute;inset:0}.gutter-explainer-visual figcaption{color:var(--white);letter-spacing:.03em;text-transform:uppercase;z-index:2;padding:16px 20px;font-family:DM Mono,monospace;font-size:.62rem;position:absolute;bottom:0;left:0;right:0}.gutter-explainer-markers{pointer-events:none;z-index:2;position:absolute;inset:0}.gutter-explainer-markers span{background:var(--clay);border:2px solid var(--white);color:var(--white);height:28px;left:var(--marker-left);top:var(--marker-top);border-radius:50%;justify-content:center;align-items:center;width:28px;font-family:DM Mono,monospace;font-size:.67rem;font-weight:500;display:flex;position:absolute;transform:translate(-50%,-50%);box-shadow:0 5px 18px #0e2d264d}.gutter-explainer-copy{padding:32px}.gutter-explainer-copy h2{margin-top:9px;font-size:clamp(2rem,3.6vw,3rem)}.gutter-explainer-copy>p{margin-top:13px}.gutter-explainer-legend{counter-reset:gutter-legend;margin:25px 0 0;padding:0;list-style:none}.gutter-explainer-legend li{border-top:1px solid var(--line);counter-increment:gutter-legend;padding:12px 0 12px 38px;position:relative}.gutter-explainer-legend li:before{background:var(--forest);color:var(--white);content:counter(gutter-legend);border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-family:DM Mono,monospace;font-size:.61rem;display:flex;position:absolute;top:13px;left:0}.gutter-explainer-legend li>div{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.gutter-explainer-legend strong{font-family:Fraunces,serif;font-size:1.05rem;line-height:1.18}.gutter-explainer-legend p{margin-top:4px;font-size:.82rem;line-height:1.45}.problem-tag{border:1px solid var(--line);color:var(--muted);letter-spacing:.02em;text-transform:uppercase;border-radius:999px;padding:3px 7px;font-family:DM Mono,monospace;font-size:.56rem}.problem-tag-usually-cleaning{color:var(--forest);background:#4773611a;border-color:#47736159}.problem-tag-may-need-repair{color:#8b3f28;background:#bf5f3f1a;border-color:#bf5f3f59}.problem-tag-check-drainage{color:#72510f;background:#f4c35b2e;border-color:#a87a1959}.related-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.related-grid a{background:var(--paper-2);border-radius:6px 22px 6px 6px;gap:10px;min-height:220px;padding:24px;text-decoration:none;display:grid}.related-grid span{color:var(--clay);text-transform:uppercase;font-family:DM Mono,monospace;font-size:.68rem}.related-grid strong{font-family:Fraunces,serif;font-size:1.35rem;line-height:1.1}.related-grid i{color:var(--clay);align-self:end;font-size:1.3rem;font-style:normal}.planner{background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px 36px 8px 8px;gap:26px;padding:38px;display:grid}.planner-heading p{margin-top:14px}.planner-form{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.planner-form label{gap:8px;display:grid}.planner-form label span{text-transform:uppercase;font-family:DM Mono,monospace;font-size:.7rem}.planner-form select{appearance:none;background:var(--paper);border:1px solid var(--line);color:var(--ink);font:inherit;border-radius:5px;min-height:50px;padding:10px 14px}.planner-form .button{align-self:end}.planner-result{background:var(--forest);color:var(--white);border-radius:6px 22px 6px 6px;padding:24px}.planner-result strong,.planner-result span{display:block}.planner-result strong{margin:7px 0;font-family:Fraunces,serif;font-size:1.65rem}.planner-result p{color:#c9d9d1}.result-label{color:var(--sun);text-transform:uppercase;font-family:DM Mono,monospace;font-size:.7rem}.service-cta{background:var(--forest);box-shadow:var(--shadow);color:var(--white);border-radius:8px 30px 8px 8px;grid-template-columns:1fr auto;align-items:center;gap:28px;padding:32px;display:grid}.service-cta h2{margin-top:8px}.service-cta p{color:#c9d9d1;max-width:720px;margin-top:10px}.service-cta .eyebrow{color:var(--sun)}.mobile-service-bar{background:var(--white);border-top:2px solid var(--forest);z-index:40;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(82px,1.1fr);align-items:stretch;width:100%;min-height:58px;display:none;position:fixed;bottom:0;left:0;right:0}.mobile-service-bar a{border-right:1px solid var(--line);text-align:center;text-transform:uppercase;justify-content:center;align-items:center;padding:8px 4px;font-family:DM Mono,monospace;font-size:.66rem;text-decoration:none;display:flex}.mobile-service-bar a.is-active{background:var(--paper-2);box-shadow:inset 0 4px 0 var(--clay)}.mobile-service-bar .mobile-call{background:var(--clay);color:var(--white);border-right:0;font-weight:500}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line);padding:0}.faq-list summary{cursor:pointer;justify-content:space-between;gap:20px;padding:22px 0;font-family:Fraunces,serif;font-size:1.3rem;list-style:none;display:flex}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:var(--clay);flex:none;font-family:DM Mono,monospace}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{max-width:780px;padding:0 0 22px}.source-list{gap:12px;display:grid}.source-list a{color:var(--white);border-bottom:1px solid #fff3;padding:14px 0;text-decoration:none}.source-list a span{color:var(--sun);text-transform:uppercase;font-family:DM Mono,monospace;font-size:.68rem;display:block}.breadcrumbs{color:var(--muted);text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:8px;padding-top:18px;font-family:DM Mono,monospace;font-size:.68rem;display:flex}.breadcrumbs a{color:var(--moss)}.last-reviewed{border-top:1px solid var(--line);text-transform:uppercase;margin-top:32px;padding:18px 0 34px;font-family:DM Mono,monospace;font-size:.67rem}.area-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.area-card{background:var(--white);border:1px solid var(--line);border-radius:7px 28px 7px 7px;gap:14px;min-height:310px;padding:30px;text-decoration:none;transition:border .2s,transform .2s;display:grid}.area-card:hover{border-color:var(--clay);transform:translateY(-4px)}.area-card>span{color:var(--clay);text-transform:uppercase;font-family:DM Mono,monospace;font-size:.7rem}.area-card h2{font-size:2.6rem}.area-card strong{color:var(--forest);text-transform:uppercase;align-self:end;font-family:DM Mono,monospace;font-size:.72rem}.area-link-row{border-bottom:1px solid var(--line);border-top:1px solid var(--line);grid-template-columns:repeat(5,1fr);display:grid}.area-link-row a{border-right:1px solid var(--line);text-transform:uppercase;justify-content:space-between;align-items:center;padding:16px;font-family:DM Mono,monospace;font-size:.73rem;text-decoration:none;display:flex}.area-link-row a:last-child{border-right:0}.area-link-row span{color:var(--clay)}.contact-card{background:var(--forest);color:var(--white);border-radius:8px 36px 8px 8px;padding:38px}.contact-card p{color:#c9d9d1;margin-top:16px}.contact-card .button{margin-top:24px}.legal{max-width:780px}.legal h2{margin:38px 0 12px;font-size:2rem}.legal p+p{margin-top:16px}footer{background:var(--forest-dark);color:var(--white);padding:54px 0 24px}.footer-grid{grid-template-columns:1.8fr repeat(3,1fr);gap:38px;display:grid}.footer-grid>div{align-content:start;gap:9px;display:grid}.footer-grid p{color:#aebfb6;max-width:430px;margin-top:12px}.footer-grid strong{color:var(--sun);text-transform:uppercase;margin-bottom:6px;font-family:DM Mono,monospace;font-size:.7rem}.footer-grid a{color:#d4dfd9;font-size:.84rem;text-decoration:none}.brand-footer{font-family:Fraunces,serif;font-size:1.55rem}.footer-note{color:#8fa398;text-transform:uppercase;border-top:1px solid #ffffff1f;margin-top:38px;padding-top:20px;font-family:DM Mono,monospace;font-size:.65rem}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.hero-copy,.hero-image{animation:none}}@media (width<=980px){.header-inner{grid-template-columns:auto 1fr}.header-inner nav{display:none}.header-cta{justify-self:end}.hero-grid,.section-heading,.content-panel,.installation-lane-grid,.gutter-explainer{grid-template-columns:1fr}.gutter-explainer-visual>img{aspect-ratio:3/2;height:auto;min-height:0}.service-cta{grid-template-columns:1fr}.hero-grid{gap:42px}.signal-grid,.related-grid,.service-choice-grid,.footer-grid{grid-template-columns:repeat(2,1fr)}.area-link-row{grid-template-columns:repeat(3,1fr)}}@media (width<=650px){.container{padding:0 18px}.site-header .brand small{display:none}.site-header .brand strong{max-width:145px;font-size:.9rem}.header-cta{padding:9px 11px;font-size:.61rem}.hero{padding:48px 0 38px}h1{font-size:clamp(2.75rem,14vw,4rem)}.hero-image{border-radius:18px 18px 5px;transform:none}.hero-image figcaption{padding:14px 16px}.direct-answer,.signal-grid,.related-grid,.service-choice-grid,.planner-form,.footer-grid,.area-grid{grid-template-columns:1fr}.direct-answer{gap:14px}.section{padding:52px 0}.content-panel,.planner,.contact-card,.gutter-explainer-copy{padding:25px}.gutter-explainer-visual figcaption{padding:13px 15px}.gutter-explainer-markers span{width:24px;height:24px;font-size:.6rem}.related-grid a,.service-choice{min-height:0}.installation-links a{grid-template-columns:1fr;gap:5px}.area-link-row{grid-template-columns:1fr}.area-link-row a{border-bottom:1px solid var(--line);border-right:0}.area-link-row a:last-child{border-bottom:0}.mobile-service-bar{display:grid}body:has(.mobile-service-bar){padding-bottom:58px}}
