@font-face{font-family:Arial;src:local(Arial)}
:root{--ink:#112e31;--muted:#506466;--paper:#f6f8f7;--line:#d7e1df;--lime:#ddf294;--teal:#195b60;--white:#fff;--max:1320px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.6}a{color:inherit;text-underline-offset:5px}button,input,textarea,select{font:inherit}button,a,input,textarea,select{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #2c8188;outline-offset:5px}img{display:block;width:100%;object-fit:cover}button{cursor:pointer}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.08;letter-spacing:-.045em;font-weight:500}h1{font-size:clamp(3rem,5.9vw,5.5rem)}h2{font-size:clamp(2.4rem,4vw,3.8rem)}h3{font-size:1.65rem}p{color:var(--muted)}.wrap{width:min(calc(100% - 96px),var(--max));margin:auto}.eyebrow{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;display:block;margin-bottom:24px;color:var(--teal)}.skip{position:fixed;top:-100px;left:12px;z-index:100;background:white;padding:12px}.skip:focus{top:12px}.topline{background:var(--ink);color:#eaf5f0;font-size:.78rem;padding:9px 0}.topline .wrap{display:flex;justify-content:space-between;gap:20px}.topline a{text-decoration:none}header{background:rgba(246,248,247,.98);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30}.header-inner{display:flex;align-items:center;justify-content:space-between;height:96px;gap:24px}.brand{text-decoration:none;display:block;min-width:150px;line-height:1}.brand strong{font-size:2.9rem;letter-spacing:.02em;font-weight:400;display:block}.brand small{font-size:.63rem;letter-spacing:.14em;display:block;margin-top:6px}nav{display:flex;align-items:center;gap:28px}nav>a{font-size:.88rem;text-decoration:none}nav>a:not(.btn):hover,nav>a[aria-current=page]{text-decoration:underline}.btn{display:inline-flex;align-items:center;justify-content:center;padding:15px 25px;min-height:52px;background:var(--ink);color:white;border:1px solid var(--ink);text-decoration:none;font-size:.87rem;font-weight:700;letter-spacing:.01em;transition:background .2s,transform .2s}.btn:hover{background:#256268;border-color:#256268;transform:translateY(-2px)}.btn.lime{background:var(--lime);border-color:var(--lime);color:var(--ink)}.btn.lime:hover{background:#eaf9be}.btn.outline{background:transparent;color:var(--ink);border-color:#9daead}.btn.outline:hover{background:#e8efec}.nav-toggle{display:none;background:none;border:1px solid var(--line);padding:8px 15px}.hero{padding:68px 0 52px}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center}.hero-copy{padding:6px 0 24px}.hero h1 em{font-style:normal;color:var(--teal)}.hero-copy>p{font-size:1.08rem;max-width:480px;margin:25px 0 31px}.actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.text-link{font-size:.9rem;font-weight:600}.hero-visual{position:relative;padding-bottom:42px}.hero-visual img{height:565px;border-radius:0 80px 0 0;object-position:54% center}.photo-note{position:absolute;bottom:0;right:0;left:12%;padding:23px 26px;background:var(--lime);display:flex;align-items:center;gap:22px}.photo-note b{font-size:2rem;font-weight:400;line-height:1}.photo-note span{font-size:.83rem;line-height:1.5}.proof-strip{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:20px;border-top:1px solid var(--line);margin-top:38px;padding-top:25px;font-size:.83rem}.proof-strip span{display:block;color:var(--muted);font-size:.8rem}.proof-strip strong{font-weight:600}.section{padding:100px 0}.white{background:white}.section-intro{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:48px}.section-intro h2{max-width:670px}.section-intro p{max-width:330px;font-size:.95rem}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{text-decoration:none;background:var(--paper);display:flex;flex-direction:column;transition:transform .2s}.service-card:hover{transform:translateY(-5px)}.card-image{overflow:hidden;position:relative}.card-image img{height:258px;transition:transform .5s}.service-card:hover img{transform:scale(1.025)}.card-number{position:absolute;top:16px;left:16px;background:var(--paper);padding:4px 12px;font-size:.78rem}.card-body{padding:30px 28px;flex:1;display:flex;flex-direction:column}.card-body .eyebrow{margin-bottom:15px;font-size:.7rem}.card-body h3{margin-bottom:16px}.card-body p{font-size:.91rem;margin-bottom:30px}.card-body .card-link{margin-top:auto;font-size:.85rem;text-decoration:underline;text-underline-offset:6px;font-weight:700}.statement{background:var(--ink);color:white}.statement .eyebrow{color:var(--lime)}.statement p{color:#c7d6d3}.statement-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:110px}.statement h2{max-width:600px}.statement .intro-p{max-width:440px;margin-top:30px}.principle{padding:23px 0;border-top:1px solid #476063;display:grid;grid-template-columns:40px 1fr;gap:18px}.principle>span{font-size:.8rem;color:var(--lime)}.principle h3{font-size:1.4rem;letter-spacing:-.025em;margin-bottom:10px}.principle p{font-size:.93rem}.residential{display:grid;grid-template-columns:1.05fr 1fr;gap:80px;align-items:center}.residential img{height:530px;border-radius:70px 0 0 0}.residential h2{max-width:450px}.residential p{margin:25px 0}.service-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:30px}.service-tags a{border:1px solid var(--line);padding:8px 12px;font-size:.8rem;text-decoration:none}.service-tags a:hover{background:var(--lime);border-color:var(--lime)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;counter-reset:step}.step{border-top:1px solid var(--line);padding-top:22px}.step>span{font-size:.8rem;color:var(--teal)}.step h3{margin:35px 0 16px;font-size:1.6rem}.step p{font-size:.94rem}.area-section{padding:70px 0;border-top:1px solid var(--line)}.area-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.area-grid h2{font-size:2.5rem;margin-bottom:20px}.area-list{display:flex;flex-wrap:wrap;gap:10px 25px;list-style:none;padding:0;margin:10px 0 20px}.area-list li{border-bottom:1px solid var(--line);padding-bottom:8px;font-size:.95rem}.cta{padding:70px 0;background:var(--lime)}.cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:40px}.cta h2{max-width:720px}.cta p{margin-top:16px;color:#36524a}.footer{background:var(--ink);color:white;padding:65px 0 24px}.footer .brand{margin-bottom:24px}.footer p{color:#bacdca;font-size:.86rem;max-width:290px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.1fr;gap:50px}.footer h3{font-size:.8rem;letter-spacing:.09em;text-transform:uppercase;margin:10px 0 24px;color:var(--lime)}.footer ul{list-style:none;padding:0;margin:0}.footer li{margin:10px 0;font-size:.85rem}.footer a{text-decoration:none}.footer a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid #385356;margin-top:55px;padding-top:23px;font-size:.76rem;color:#b9ccca;display:flex;justify-content:space-between;gap:25px}.page-hero{padding:54px 0 70px}.breadcrumb{font-size:.8rem;margin-bottom:42px;color:var(--muted)}.page-hero .hero-grid{gap:80px}.page-hero h1{font-size:clamp(2.7rem,4.7vw,4.6rem)}.page-hero img{height:440px;border-radius:0 70px 0 0}.page-hero p{margin:25px 0 30px;max-width:540px}.two-col{display:grid;grid-template-columns:1fr 1.3fr;gap:100px}.two-col h2{max-width:400px}.scope-list{list-style:none;padding:0;margin:0}.scope-list li{padding:22px 0;border-bottom:1px solid var(--line)}.scope-list li:first-child{padding-top:0}.scope-list h3{font-size:1.3rem;margin-bottom:10px}.scope-list p{font-size:.96rem}.faq-list{margin-top:35px}.faq-list details{border-bottom:1px solid var(--line);padding:22px 0}.faq-list summary{font-size:1.12rem;cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:20px}.faq-list summary::after{content:'+';font-size:1.4rem;font-weight:400}.faq-list details[open] summary::after{content:'−'}.faq-list details p{padding:16px 35px 0 0;max-width:740px;font-size:.98rem}.related{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;padding:80px 0}.contact-grid h1{font-size:4.5rem}.contact-grid .lead{margin:28px 0 38px}.contact-detail{border-top:1px solid var(--line);padding:22px 0}.contact-detail small{display:block;color:var(--muted);font-size:.8rem;margin-bottom:5px}.contact-detail a{font-size:1.1rem;overflow-wrap:anywhere}.quote-form{padding:38px;background:white;border:1px solid var(--line)}.quote-form h2{font-size:2rem;margin-bottom:25px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.field label{font-size:.85rem;font-weight:600}.field input,.field select,.field textarea{width:100%;min-width:0;border:1px solid #a2b6b3;background:var(--paper);padding:12px 13px;border-radius:0;color:var(--ink)}.field textarea{min-height:135px;resize:vertical}.form-note{font-size:.8rem;line-height:1.5;margin:15px 0 0}.quote-result{margin-top:20px;padding:20px;border:1px solid var(--line);background:var(--paper)}.quote-result textarea{width:100%;height:180px;background:white;border:1px solid var(--line);padding:12px;font-size:.9rem}.quote-result p{margin-bottom:15px}.quote-result a,.quote-result button{margin:5px 8px 5px 0}.legal{max-width:800px;padding:70px 0 100px}.legal h1{font-size:3.6rem;margin-bottom:30px}.legal h2{font-size:1.7rem;margin:32px 0 15px}.legal p{margin:16px 0}.quiet{font-size:.85rem}.contact-aside{font-size:.85rem;margin-top:24px}body.menu-open{overflow:hidden}
@media(min-width:1550px){.hero{padding-top:90px;padding-bottom:70px}}
@media(max-width:1100px){.wrap{width:calc(100% - 56px)}nav{gap:18px}.hero-grid{gap:30px}.hero-visual img{height:520px}.hero h1{font-size:4rem}.statement-grid,.residential,.two-col{gap:50px}.footer-grid{gap:28px}.contact-grid{gap:40px}.card-body{padding:24px}.page-hero .hero-grid{gap:35px}}
@media(max-width:850px){.header-inner{height:80px}.brand strong{font-size:2.3rem}.brand small{font-size:.55rem}.nav-toggle{display:block}nav{display:none;position:absolute;top:80px;left:0;right:0;background:var(--paper);padding:30px 28px;border-bottom:1px solid var(--line);max-height:calc(100vh - 80px);overflow:auto}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}nav>a{font-size:1.1rem;padding:14px 0}nav .btn{margin-top:15px;padding:14px}.hero-grid{grid-template-columns:1fr 1fr;gap:25px}.hero h1{font-size:3.4rem}.hero-visual img{height:470px}.photo-note{left:0;padding:18px}.photo-note b{font-size:1.5rem}.hero-copy>p{font-size:1rem}.proof-strip{gap:14px}.services-grid{gap:14px}.card-image img{height:200px}.card-body{padding:22px 18px}.card-body h3{font-size:1.4rem}.section{padding:75px 0}.section-intro{gap:35px}.section-intro p{max-width:250px}.statement-grid{grid-template-columns:1fr;gap:45px}.principles{display:grid;grid-template-columns:1fr 1fr;gap:25px}.principle{grid-template-columns:25px 1fr}.residential{gap:35px}.residential img{height:460px}.footer-grid{grid-template-columns:1fr 1fr;gap:40px}.two-col{gap:45px;grid-template-columns:.8fr 1fr}.contact-grid{grid-template-columns:1fr;gap:35px}.contact-grid h1{font-size:4rem}.contact-detail{display:inline-block;vertical-align:top;margin-right:25px}.topline .wrap span{font-size:.7rem}.page-hero img{height:390px}}
@media(max-width:600px){.wrap{width:calc(100% - 40px)}.topline .wrap{gap:10px}.topline .wrap span{max-width:200px;line-height:1.5}.topline a{font-size:.7rem;white-space:nowrap;align-self:center}.hero{padding:40px 0 32px}.hero-grid,.page-hero .hero-grid{grid-template-columns:1fr;gap:30px}.hero h1{font-size:clamp(2.8rem,12vw,4rem);max-width:440px}.hero-copy{padding:0}.hero-copy>p{margin:22px 0 26px;max-width:420px}.eyebrow{font-size:.72rem;margin-bottom:20px}.hero-visual img{height:340px;border-radius:0 55px 0 0}.hero-visual{padding-bottom:33px}.photo-note{left:14%;padding:15px 19px;gap:18px}.photo-note span{font-size:.76rem}.proof-strip{grid-template-columns:1fr;gap:14px;margin-top:30px;padding-top:20px}.proof-strip div{display:flex;justify-content:space-between;gap:16px}.proof-strip span{max-width:50%;text-align:right}.section{padding:60px 0}h2{font-size:2.55rem}.section-intro{display:block;margin-bottom:30px}.section-intro p{max-width:none;margin-top:22px}.services-grid{grid-template-columns:1fr;gap:24px}.card-image img{height:260px}.card-body{padding:27px}.card-body h3{font-size:1.8rem}.card-body p{font-size:1rem;margin-bottom:23px}.principles{grid-template-columns:1fr;gap:0}.statement-grid{gap:35px}.statement .intro-p{margin-top:23px}.residential{grid-template-columns:1fr;gap:35px}.residential img{height:350px;border-radius:50px 0 0 0}.steps{grid-template-columns:1fr;gap:30px}.step h3{margin:22px 0 12px}.area-grid{grid-template-columns:1fr;gap:25px}.area-section{padding:55px 0}.cta .wrap{display:block}.cta .btn{margin-top:28px}.cta{padding:55px 0}.footer-grid{gap:32px 20px}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid>div:last-child{grid-column:1/-1}.footer{padding-top:45px}.footer-bottom{display:block;margin-top:35px}.footer-bottom span{display:block;margin-top:14px}.page-hero{padding:32px 0 45px}.breadcrumb{margin-bottom:30px}.page-hero h1{font-size:3.2rem}.page-hero img{height:300px}.two-col{grid-template-columns:1fr;gap:35px}.two-col h2{max-width:none}.faq-list{margin-top:0}.contact-grid{padding:45px 0}.contact-grid h1{font-size:3.5rem}.quote-form{padding:25px 20px}.field-grid{grid-template-columns:1fr;gap:0}.contact-detail{display:block;margin-right:0}.actions{gap:17px}.btn{padding:14px 20px;font-size:.85rem}.legal h1{font-size:2.7rem}.legal{padding-top:45px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
