:root{--navy:#092f4c;--teal:#00858b;--aqua:#11b9bc;--pale:#ecf7f7;--ink:#365365}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--navy);background:#fff;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #d59019;outline-offset:6px}.wrap{width:min(1240px,88%);margin:auto}.skip{position:absolute;left:20px;top:-70px;background:white;padding:10px;z-index:10}.skip:focus{top:10px}.topbar{padding:10px 6%;background:var(--navy);color:white;font-size:13px;letter-spacing:.03em;display:flex;justify-content:space-between}.topbar span{opacity:.85}.header{height:126px;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{width:236px;display:block}.header nav{display:flex;gap:32px;font-size:14px;font-weight:600}.header nav a:hover,.text-link:hover,.email:hover{color:var(--teal)}.phone{border:1px solid #bed2d9;padding:12px 18px;border-radius:4px;font-weight:700;font-size:14px}.phone span{margin-left:16px;color:var(--teal)}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:610px;background:var(--pale)}.hero-content{padding:77px 6vw 65px;align-self:center}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.17em;color:var(--teal);margin:0 0 22px}h1{font-size:clamp(44px,4.7vw,72px);line-height:1.05;letter-spacing:-.055em;margin:0 0 28px;font-weight:800}h1 em{font-style:normal;color:var(--teal)}.intro{max-width:440px;color:var(--ink);font-size:18px;line-height:1.75}.actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:32px}.button{display:inline-flex;align-items:center;gap:30px;background:var(--navy);color:white;padding:16px 22px;border-radius:4px;font-size:14px;font-weight:700;transition:background .2s}.button:hover{background:var(--teal)}.text-link{font-size:14px;font-weight:700;border-bottom:1px solid #829aa5;padding-bottom:3px}.hero-note{font-size:12px;margin-top:45px;color:var(--ink);display:flex;gap:12px;align-items:center}.line{width:30px;height:2px;background:var(--teal)}.hero-photo{position:relative;min-height:550px;overflow:hidden}.hero-photo img{width:100%;height:100%;object-fit:cover;position:absolute;object-position:60% center}.photo-label{position:absolute;bottom:32px;right:30px;background:#fffef6f0;padding:18px 24px;border-left:4px solid var(--aqua);font-weight:800;letter-spacing:.06em}.photo-label span{display:block;font-size:10px;letter-spacing:.27em;color:var(--teal)}.services{padding-top:100px;padding-bottom:100px}.section-head{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:80px;margin-bottom:45px}h2{font-size:clamp(34px,3.2vw,48px);letter-spacing:-.04em;line-height:1.12;margin:0}.section-head>p{max-width:470px;margin:0;color:var(--ink);line-height:1.8}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #cddde0}.service-grid article{padding:32px 32px 0 0}.service-grid article+article{padding-left:32px;border-left:1px solid #cddde0}.number{color:var(--teal);font-size:13px;font-weight:700;letter-spacing:.08em}h3{font-size:23px;letter-spacing:-.025em;margin:22px 0 10px}.service-grid p{color:var(--ink);margin:0;line-height:1.8}.area{background:var(--navy);color:#fff;padding:76px 0}.area-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px}.area .eyebrow{color:#6ce0dc}.area-copy{margin-top:0;font-size:20px;color:#d8e8ef;line-height:1.8}.area-copy strong{color:white}.towns{display:flex;flex-wrap:wrap;gap:9px}.towns span{border:1px solid #537185;border-radius:3px;padding:6px 12px;font-size:14px}.small{font-size:13px;color:#b8d0dc;margin:24px 0 0}.contact{text-align:center;padding:95px 0}.contact>p:not(.eyebrow){color:var(--ink);line-height:1.8}.big-phone{font-size:clamp(30px,4vw,48px);font-weight:700;letter-spacing:-.03em;display:block;margin:25px 0 5px}.big-phone span{color:var(--teal);font-size:.75em}.email{display:inline-block;color:var(--teal);font-size:18px;overflow-wrap:anywhere;max-width:100%;border-bottom:1px solid #a0cdce}footer{border-top:1px solid #d8e5e7;padding:28px 0}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:13px}.footer-inner strong{font-size:15px;letter-spacing:.04em}.footer-inner strong span{display:block;font-size:10px;color:var(--teal);letter-spacing:.2em}.footer-inner p{color:var(--ink)}.footer-inner>a{font-weight:600}@media(min-width:1600px){.hero-content{padding-left:max(6vw,calc((100vw - 1240px)/2))}}@media(max-width:1000px){.header nav{gap:20px}.logo{width:200px}.hero-content{padding:50px 6vw}.hero{grid-template-columns:1.05fr 1fr}.hero-photo{min-height:550px}.section-head,.area-inner{gap:40px}.phone span{display:none}.actions{gap:18px}}@media(max-width:720px){.topbar{font-size:12px;justify-content:center}.topbar span{display:none}.header{height:auto;min-height:100px;flex-wrap:wrap;gap:8px;padding-top:14px;padding-bottom:15px}.logo{width:170px}.phone{font-size:12px;padding:10px}.header nav{order:3;width:100%;justify-content:center;padding-top:10px;gap:30px}.hero{grid-template-columns:1fr}.hero-content{padding:50px 6%}.hero-photo{min-height:340px}.hero-note{margin-top:30px}h1{font-size:54px}.intro{font-size:17px}.photo-label{bottom:20px;right:20px;font-size:13px}.services{padding:60px 0}.section-head,.area-inner{grid-template-columns:1fr;gap:25px}.service-grid{grid-template-columns:1fr}.service-grid article,.service-grid article+article{padding:25px 0;border-left:0;border-bottom:1px solid #cddde0}h3{margin-top:10px}.area{padding:55px 0}.contact{padding:60px 0}.email{font-size:16px}.footer-inner{flex-direction:column;text-align:center;gap:12px}.footer-inner p{margin:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.drainage{background:#f0f7f8;padding:85px 0}.drainage-compare{display:grid;grid-template-columns:1fr 1fr;gap:25px}.flow-panel{background:#fff;border:1px solid #cfdee2;border-top:5px solid var(--teal);padding:30px}.flow-label{font-weight:700;font-size:13px;letter-spacing:.13em;color:var(--teal);margin:0}.flow-panel>h3{font-size:26px;margin:10px 0 27px}.clogged-flow{border-top-color:#ac591f}.clogged-flow .flow-label{color:#92471b}.flow-steps{list-style:none;padding:0;margin:0;display:grid;gap:24px}.flow-steps li{display:flex;gap:16px}.flow-steps li>span{width:32px;height:32px;flex-shrink:0;display:grid;place-items:center;border-radius:50%;background:#e3f4f2;color:var(--teal);font-weight:700}.clogged-flow .flow-steps li>span{background:#fcf0e6;color:#92471b}.flow-steps strong{font-size:17px}.flow-steps p{margin:5px 0 0;color:var(--ink);font-size:16px;line-height:1.65}.risk-heading{margin:45px 0 22px;font-size:26px}.risk-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.risk-grid article{border-top:1px solid #bdced5;padding-top:22px}.risk-tag{font-size:12px;letter-spacing:.1em;font-weight:700;color:var(--teal)}.risk-grid h3{font-size:22px;margin:10px 0}.risk-grid p{margin:0;color:var(--ink);line-height:1.75}.drainage-bottom{margin-top:35px;border-top:1px solid #bdced5;padding-top:25px;display:flex;align-items:center;gap:40px}.drainage-bottom p{margin:0;flex:1;color:var(--ink)}.drainage-bottom strong{color:var(--navy)}.drainage-bottom a{flex-shrink:0}.drainage-source{font-size:12px;color:var(--ink);margin:25px 0 0}.drainage-source a{text-decoration:underline;text-underline-offset:3px}.header nav{gap:22px}@media(max-width:1000px){.header nav{gap:12px;font-size:13px}.logo{width:175px}.phone{padding:10px}.drainage-bottom{align-items:flex-start;flex-direction:column;gap:20px}}@media(max-width:720px){.drainage{padding:55px 0}.drainage-compare,.risk-grid{grid-template-columns:1fr}.flow-panel{padding:25px}.header nav{flex-wrap:wrap;gap:10px 20px}.risk-heading{font-size:24px}.flow-panel>h3{font-size:24px}} 
.review-invite{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-top:65px;padding-bottom:55px;border-bottom:1px solid #d8e5e7}.review-invite h2{font-size:36px}.review-invite .eyebrow{margin-bottom:12px}.review-invite p:not(.eyebrow){color:var(--ink);margin-bottom:0}.reviews-hero{background:var(--pale);padding:65px 0}.reviews-hero h1{font-size:clamp(42px,4.6vw,66px)}.reviews-hero p:not(.eyebrow){color:var(--ink);font-size:18px;max-width:600px}.reviews-hero .button{margin-top:14px}.review-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;padding-top:70px;padding-bottom:80px}.review-empty h2{font-size:36px}.review-empty>p:not(.eyebrow){color:var(--ink);font-size:18px}.review-note{border-top:2px solid var(--teal);margin-top:40px;padding-top:10px}.review-note p{color:var(--ink)}.review-form-panel{background:#f3f8f9;border:1px solid #d7e4e7;border-radius:6px;padding:32px}.review-form-panel h2{font-size:32px}.form-intro{color:var(--ink);margin-bottom:25px}.review-form-panel form>label:not(.consent){display:block;font-weight:700;margin:19px 0 7px}.review-form-panel label>span:not(.rating-options span){font-weight:400}.review-form-panel input:not([type=radio]):not([type=checkbox]),.review-form-panel textarea{width:100%;font:inherit;background:white;color:var(--navy);border:1px solid #9bb4c0;border-radius:3px;padding:12px;min-width:0}.review-form-panel textarea{resize:vertical}.review-form-panel fieldset{margin:24px 0 12px;padding:0;border:0;min-width:0}.review-form-panel legend{font-weight:700;margin-bottom:9px}.rating-options{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.rating-options label{display:flex;align-items:center;justify-content:center;gap:5px;background:white;border:1px solid #9bb4c0;border-radius:3px;padding:12px 5px;cursor:pointer}.rating-options label:has(input:checked){background:var(--navy);color:white;border-color:var(--navy)}.rating-options input{accent-color:var(--teal);margin:0}.rating-key{font-size:14px;color:var(--ink);margin:8px 0}.consent{display:flex;align-items:flex-start;gap:10px;margin:22px 0;font-size:14px;line-height:1.7}.consent input{margin-top:6px;accent-color:var(--teal)}.consent em{font-style:normal}.review-form-panel button{border:0;cursor:pointer;font-family:inherit;font-size:16px}.review-form-panel :is(input,textarea,button):focus-visible{outline:3px solid #d59019;outline-offset:3px}.email-explanation{font-size:14px;color:var(--ink);overflow-wrap:anywhere}.email-explanation a{text-decoration:underline}#review-status{border-left:3px solid var(--teal);padding:10px 14px;background:#e0f2f1;font-size:15px}.header nav a[aria-current=page]{color:var(--teal);text-decoration:underline;text-underline-offset:5px}@media(max-width:1100px){.header{flex-wrap:wrap;height:auto;padding-top:15px;padding-bottom:15px}.header nav{order:3;width:100%;justify-content:center;flex-wrap:wrap;gap:12px 24px}.review-layout{gap:30px}}@media(max-width:720px){.review-invite{align-items:flex-start;flex-direction:column}.review-layout{grid-template-columns:1fr;padding-top:45px;padding-bottom:50px;gap:35px}.review-form-panel{padding:24px 18px}.reviews-hero{padding:45px 0}.rating-options{gap:4px}.rating-options label{font-size:14px;gap:3px}.header nav{gap:10px 17px}}
