
/* V4 intentionally simple. The hero is a non-project illustrative placeholder. */
:root{--paper:#fff;--ink:#162c23;--deep:#19392d;--blue:#0b5878;--soft:#f5f5f5;--gray:#eceeee}
html{scroll-behavior:smooth}body{font-family:Arial,Helvetica,sans-serif;background:#fff;color:#182923;line-height:1.6;font-size:16px}
h1,h2,h3{font-family:Arial,Helvetica,sans-serif;letter-spacing:-.025em;line-height:1.22}p{line-height:1.65}
.container{width:min(1110px,calc(100% - 44px));margin:0 auto}
.clean-header{height:96px;background:#fff;border-bottom:1px solid #e7e7e7;position:relative;z-index:20;box-shadow:none}
.clean-header-inner{display:flex;align-items:center;justify-content:space-between;height:100%;gap:30px}
.clean-header-left{display:flex;flex-direction:column;gap:0}
.clean-brand{font-weight:750;letter-spacing:.11em;text-transform:uppercase;font-size:11px;color:#596d62}
.clean-phone-button{display:inline-flex;gap:10px;align-items:center;justify-content:center;flex-direction:column;text-align:center;border:2px solid #0a5c7b;background:#fff;color:var(--blue);padding:11px 18px;cursor:pointer;font:inherit;border-radius:2px;min-width:218px;text-decoration:none;line-height:1.13;box-shadow:none}
.clean-phone-main{font-size:22px;font-weight:850;letter-spacing:.02em}
.clean-phone-sub{font-size:13px;font-weight:650}
.clean-phone-button:disabled{cursor:not-allowed;opacity:1}
.clean-header-phone .clean-phone-button{border:0;padding:0;align-items:flex-start;background:transparent;color:#09384c;min-width:0;text-align:left;gap:2px}
.clean-header-phone .clean-phone-main{font-size:30px;letter-spacing:-.04em}
.clean-header-phone .clean-phone-sub{font-size:12px;color:#52717a}
.clean-header-phone .clean-phone-button:not(:disabled) .clean-phone-sub{font-size:25px;color:#09384c}
.clean-nav{display:flex;align-items:center;gap:35px}
.clean-nav a{text-transform:uppercase;color:#586e75;letter-spacing:.08em;text-decoration:none;font-size:12px;font-weight:750}
.clean-nav a:hover,.clean-nav a:focus{text-decoration:underline;color:#0e5d7f}
.clean-mobile-nav{display:none}
.clean-hero{min-height:390px;background:linear-gradient(90deg,rgba(18,35,27,.68),rgba(18,35,27,.58)),url('/assets/hero-landscape.svg') center 58%/cover no-repeat;display:flex;justify-content:center;align-items:center;color:#fff;text-align:center}
.clean-hero-inner{padding:54px 0 52px;display:flex;flex-direction:column;align-items:center}
.clean-hero h1{font-family:Arial,Helvetica,sans-serif;font-size:clamp(35px,4.4vw,54px);font-weight:850;letter-spacing:-.025em;margin:0 0 16px;color:#fff}
.clean-hero-desc{font-size:15px;font-weight:750;letter-spacing:.075em;margin:0 0 28px;line-height:1.5;color:#fafafa}
.clean-hero .clean-phone-button{background:#fff;border:2px solid #fff;color:#0b5675;min-width:244px;padding:12px 22px;gap:2px}
.clean-hero .clean-phone-main{font-size:25px}
.clean-hero-quote-link{margin-top:14px;color:#fff;font-size:13px;font-weight:650;text-underline-offset:4px;text-decoration:underline}
.clean-intro{background:#f3f3f3;padding:44px 0 55px}
.clean-intro-grid{display:grid;grid-template-columns:1.04fr .88fr;gap:65px;align-items:start}
.clean-intro-copy{padding-top:8px}.clean-intro-copy h2{font-size:clamp(25px,3vw,34px);margin:0 0 22px;line-height:1.25;color:#111}
.clean-intro-sub{color:#333;font-size:16px;margin-bottom:18px}
.clean-intro-copy ol{padding-left:22px;margin:20px 0 0}
.clean-intro-copy li{margin:0 0 14px;padding-left:2px;color:#303030;line-height:1.57;font-size:15px}
.clean-intro-copy li strong{color:#0d6080}
.clean-small-referral{font-size:12px;color:#687175;margin-top:17px;border-top:1px solid #d8d8d8;padding-top:12px}
.clean-quote-box{background:transparent;padding:0;box-shadow:none;border:0;border-radius:0}
.clean-quote-heading h2{font-size:28px;font-weight:850;color:#0a5a7d;margin:0 0 6px;line-height:1.2}
.clean-quote-heading p{font-size:14px;line-height:1.5;color:#4f5960;margin:0 0 20px}
.clean-quote-box .field{margin-bottom:13px;gap:4px}.clean-quote-box .field label{font-size:13px;color:#181818;font-weight:750}
.clean-quote-box .field input,.clean-quote-box .field select,.clean-quote-box .field textarea{background:#fff;border:1px solid #aeb8b8;border-radius:0;padding:10px;min-height:43px;font-size:14px}
.clean-quote-box .field textarea{min-height:78px}
.clean-quote-box .consent{font-size:11px;color:#596068;line-height:1.5}
.clean-quote-box .btn{background:#0b5878;color:#fff;box-shadow:none;border-radius:2px;font-size:15px;min-height:48px;display:flex}
.clean-quote-box .quote-foot{font-size:11px;line-height:1.45;color:#6b7073}
.section{padding:55px 0}.section.soft{background:#f8f8f8}
.section-intro{margin-bottom:25px}.section-intro h2{font-size:30px;line-height:1.24}.section-intro p{font-size:16px}
.kicker{font-size:11px;letter-spacing:.08em;margin-bottom:8px;color:#2b7059}.kicker:before{display:none}
.service-grid{gap:0;grid-template-columns:1fr 1fr}.service-tile{display:block;border:0;border-bottom:1px solid #dedede;border-radius:0;box-shadow:none;padding:21px 30px 19px 0;min-height:0}.service-tile h3{font-size:20px;margin:0 0 7px}.service-tile p{font-size:14px}.tile-number{display:none}
.steps{gap:0}.step{border:0;border-right:1px solid #ddd;border-radius:0;padding:22px}.step:last-child{border-right:0}.step h3{font-size:19px}
.areas{border-radius:0;background:#ecefed;padding:25px}.area-chips span{border-radius:2px;font-size:12px}
.faq{border-bottom:1px solid #ddd}.faq summary{font-weight:750}
.clean-subhero{padding:70px 0;background:linear-gradient(90deg,rgba(20,43,33,.78),rgba(20,43,33,.70)),url('/assets/hero-landscape.svg') center/cover;color:#fff}
.clean-subhero h1{color:#fff;font-size:clamp(33px,4vw,48px);max-width:900px;margin:0 0 12px}
.clean-subhero p{color:#f0f5f2;max-width:790px;margin:0 0 20px}
.clean-subhero .clean-phone-button{display:inline-flex;min-width:180px;background:#fff;color:#0b5878;border-color:#fff}
.clean-secondary-link{display:inline-block;margin-left:22px;color:#fff;font-weight:700;font-size:14px;text-underline-offset:4px}
.clean-bottom-cta{background:#173a2b;color:#fff;padding:35px 0}
.clean-bottom-cta .container{display:flex;align-items:center;justify-content:space-between;gap:25px}
.clean-bottom-cta h2{color:#fff;font-size:26px;margin-bottom:7px}.clean-bottom-cta p{color:#dfe8e2;font-size:14px;margin:0}
.clean-bottom-cta .container>div:last-child{display:flex;align-items:center;gap:10px}
.clean-bottom-cta .clean-phone-button{background:#fff;color:#095373;border-color:#fff;padding:10px 15px;min-width:155px}
.clean-bottom-cta .clean-phone-main{font-size:18px}
.clean-bottom-cta .clean-phone-sub{font-size:10px}
.clean-cta-quote{color:white;font-size:13px;white-space:nowrap;text-underline-offset:4px}
.clean-footer{background:#fff;color:#4a5d52;border-top:1px solid #e0e5e0;padding:30px 0 20px}
.clean-footer-inner{display:flex;justify-content:space-between;align-items:start;gap:40px}.clean-footer-inner strong{font-size:15px;color:#1b3f31}
.clean-footer-inner p{font-size:12px;margin-top:5px}.clean-footer-inner nav{display:flex;gap:10px 20px;justify-content:flex-end;flex-wrap:wrap;max-width:600px}.clean-footer-inner a{font-size:12px;text-decoration:none;color:#516a5a}
.clean-footer-disclosure{font-size:11px;border-top:1px solid #eee;padding-top:15px;margin-top:20px;color:#68746c}
@media(max-width:900px){.clean-intro-grid{gap:30px}.clean-nav{gap:16px}.clean-nav a{font-size:11px}}
@media(max-width:680px){
body{padding-bottom:65px}
.container{width:min(100% - 30px,1100px)}
.clean-header{height:77px}.clean-header-phone .clean-phone-main{font-size:23px}.clean-header-phone .clean-phone-sub{font-size:10px}.clean-brand{font-size:9px}
.clean-nav{display:none}.clean-mobile-nav{display:block;position:relative}.clean-mobile-nav summary{cursor:pointer;list-style:none;font-size:13px;color:#174a39;font-weight:750;padding:9px 11px;background:#f1f3f1}.clean-mobile-nav summary::-webkit-details-marker{display:none}
.clean-mobile-nav nav{position:absolute;right:0;top:44px;width:180px;display:flex;flex-direction:column;gap:0;background:white;box-shadow:0 9px 30px #0002;border:1px solid #eee;z-index:50}.clean-mobile-nav nav a{padding:11px 14px;text-decoration:none;font-size:13px;border-bottom:1px solid #eee}
.clean-hero{min-height:290px}.clean-hero-inner{padding:42px 0}.clean-hero h1{font-size:35px;margin-bottom:14px}.clean-hero-desc{font-size:12px;letter-spacing:.02em;line-height:1.6;margin-bottom:23px}
.clean-hero .clean-phone-button{min-width:220px}.clean-intro{padding:32px 0}.clean-intro-grid{grid-template-columns:1fr;gap:27px}
.clean-intro-copy h2{font-size:27px;margin-bottom:14px}.clean-intro-copy li{font-size:14px}.clean-quote-box{padding-top:22px;border-top:1px solid #d7dad7}
.form-row{grid-template-columns:1fr 1fr}.section{padding:40px 0}.service-grid{grid-template-columns:1fr}.service-tile{padding:15px 0}.steps{grid-template-columns:1fr}.step{border-right:0;border-bottom:1px solid #ddd;padding:16px 0}
.clean-subhero{padding:45px 0}.clean-subhero h1{font-size:32px}.clean-secondary-link{display:block;margin:13px 0 0}
.clean-bottom-cta .container{flex-direction:column;align-items:start}.clean-bottom-cta h2{font-size:24px}
.clean-footer-inner{flex-direction:column;gap:14px}.clean-footer-inner nav{justify-content:flex-start}
body::after{content:'';position:fixed;bottom:0;left:0;right:0;height:0;pointer-events:none}
/* Persistent mobile action is intentionally a single call button, not two competing CTAs. */
.clean-header-phone{display:block}
}
@media(max-width:390px){.form-row{grid-template-columns:1fr}.clean-header-inner{gap:10px}.clean-header-phone .clean-phone-main{font-size:21px}}
