*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:#f8f7f1;color:#173b32;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #af6a30;outline-offset:5px}img{display:block;max-width:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.08;letter-spacing:-.04em}h1{font-size:clamp(3rem,5.8vw,5.5rem)}h2{font-size:clamp(2.2rem,3.7vw,3.6rem)}h3{font-weight:500;line-height:1.25;font-size:1.35rem}p{color:#596660}p+p{margin-top:1rem}.wrap{width:min(1280px,calc(100% - 96px));margin-inline:auto}.topbar{background:#173b32;color:#eeeede;font-size:.8rem}.topbar .wrap{display:flex;justify-content:space-between;align-items:center;min-height:36px}.topbar strong{font-weight:500;margin-left:10px}.topbar a{padding:5px 0}header{background:#f8f7f1;position:sticky;top:0;z-index:30;border-bottom:1px solid #dfe2d8}.nav{display:flex;gap:32px;align-items:center;min-height:100px}.brand{display:flex;align-items:center;gap:11px;flex-shrink:0;line-height:1.12;font-family:Georgia,serif;font-weight:bold;font-size:1.65rem;letter-spacing:.015em}.brand small{display:block;font-family:Arial,sans-serif;font-size:.64rem;letter-spacing:.22em;margin-top:6px}.brand-mark{display:flex;position:relative;align-items:center;justify-content:center;width:44px;height:50px;border:1px solid currentColor;border-radius:50% 50% 6px 6px;font-size:2.1rem}.brand-mark>span{font-family:Arial;position:absolute;font-size:16px;right:0;top:0;background:#f8f7f1}nav{display:flex;gap:24px;margin-left:auto;font-size:.9rem}nav a{padding:18px 0}nav a:hover{color:#a35a25}.nav-actions{display:flex;align-items:center;gap:23px}.nav-phone{font-size:.85rem;white-space:nowrap}.button{min-height:52px;display:inline-flex;justify-content:center;align-items:center;gap:22px;border:1px solid #b9c5be;border-radius:4px;padding:13px 23px;font-size:.875rem;font-weight:600;cursor:pointer;line-height:1.4;text-align:center;transition:background .15s,color .15s}.button:hover{background:#dde3d7;color:#15392f}.primary{background:#dfb681;border-color:#dfb681;color:#18392e}.primary:hover{background:#edcda3}.nav .primary{background:#173b32;border-color:#173b32;color:#fff;padding:12px 18px;min-height:46px}.menu-button{display:none}.hero{position:relative;background:#102c24;color:#fff;isolation:isolate;overflow:hidden}.hero-image{position:absolute;z-index:-2;inset:0}.hero-image img{width:100%;height:100%;object-position:70% 48%}.hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(9,30,23,.94) 0%,rgba(9,30,23,.82) 30%,rgba(9,30,23,.3) 65%,rgba(9,30,23,.08)),linear-gradient(0deg,rgba(9,30,23,.65),transparent 45%)}.hero-content{padding-block:90px 120px}.hero-copy{max-width:710px}.eyebrow{font-size:.75rem;letter-spacing:.19em;text-transform:uppercase;font-weight:600;color:#976337;margin-bottom:22px}.hero .eyebrow{color:#e6c59a}.hero-desc{color:#e0e5dd;max-width:510px;font-size:1.12rem;line-height:1.7;margin-top:26px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.hero .outline{color:white;border-color:#90a298;background:rgba(15,43,33,.3)}.hero .outline:hover{background:#f3f3e9;color:#173b32}.hero-note{font-size:.8rem;color:#c7d0c6;margin-top:19px}.hero-caption{position:absolute;bottom:0;left:0;width:100%;padding:22px 48px;border-top:1px solid #ffffff2b;display:flex;justify-content:space-between;align-items:center;font-size:.7rem;letter-spacing:.16em}.hero-caption a{font-size:.85rem;letter-spacing:0}.hero-caption a span{margin-left:40px}.trust{background:#eeefe6;border-bottom:1px solid #dce1d5}.trust .wrap{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-block:25px}.trust span{font-size:.64rem;letter-spacing:.13em;max-width:130px}.trust strong{font-size:.875rem;font-weight:500;display:flex;align-items:center;gap:12px}.trust strong:before{content:'✓';color:#7d8f6e;font-size:17px}.skip{position:absolute;left:10px;top:-100px;z-index:100;background:white;padding:12px}.skip:focus{top:10px}footer{background:#102a23;color:#e4e9dd;padding-top:68px}footer p{color:#b8c6bc;font-size:.875rem;margin-top:20px}.footer-grid{display:grid;grid-template-columns:1.35fr 1.15fr .8fr 1fr;gap:45px;padding-bottom:64px}.footer-grid h2{font-size:1.8rem;margin-bottom:14px}.footer-grid h3{font-size:.75rem;text-transform:uppercase;letter-spacing:.13em;margin-bottom:18px}.footer-grid>div>a:not(.brand){display:block;font-size:.875rem;margin:8px 0}.footer-grid .footer-phone{font-size:1.7rem!important}.footer-bottom{border-top:1px solid #ffffff22;padding-block:23px;display:flex;justify-content:space-between;font-size:.75rem;color:#b8c6bc}.footer-bottom div{display:flex;gap:25px}.footer-grid .brand-mark>span{background:#102a23}.mobile-cta{display:none}
@media(min-width:1500px){.hero-content{padding-block:110px 140px}}@media(max-width:1200px){.nav-phone{display:none}.nav{gap:22px}nav{gap:18px}.wrap{width:calc(100% - 64px)}}@media(max-width:950px){.nav{min-height:84px}nav{display:none;position:absolute;top:84px;left:0;width:100%;padding:20px 32px;background:#f8f7f1;border-bottom:1px solid #ccc}nav.open{display:flex;flex-direction:column;gap:0}.nav-actions{margin-left:auto}.menu-button{display:flex;gap:12px;background:transparent;border:1px solid #adbdb0;border-radius:4px;padding:11px;color:#173b32}.trust .wrap{flex-wrap:wrap;justify-content:center;gap:18px 30px}.trust span{display:none}.footer-grid{grid-template-columns:1fr 1fr}.hero-content{padding-block:70px 110px}}
@media(max-width:600px){body{padding-bottom:78px}.wrap{width:calc(100% - 40px)}.topbar .wrap{justify-content:center;min-height:34px;font-size:.72rem}.topbar .wrap>span{display:none}.nav{min-height:78px;gap:10px}.brand{font-size:1.4rem}.brand-mark{width:37px;height:44px}.brand small{font-size:.56rem}.nav-actions{display:none}.menu-button{margin-left:auto;font-size:.8rem}nav{top:78px}.hero-content{padding-block:48px 94px}.hero:after{background:linear-gradient(90deg,#102c24ed,#102c2480),linear-gradient(0deg,#102c24bd,transparent)}.hero-image img{object-position:62% center}.eyebrow{font-size:.68rem;letter-spacing:.13em;margin-bottom:20px}.hero h1{font-size:3.15rem;letter-spacing:-.045em}.hero-desc{font-size:1rem;max-width:340px;margin-top:22px}.actions{gap:10px;margin-top:25px}.hero .actions .button{width:100%;min-height:50px}.hero-note{font-size:.75rem}.hero-caption{padding:18px 20px}.hero-caption>span{font-size:.6rem;max-width:170px}.hero-caption a span{margin-left:10px}.trust .wrap{display:grid;grid-template-columns:1fr 1fr;gap:13px 14px;padding-block:20px}.trust strong{font-size:.76rem;gap:7px}.footer-grid{grid-template-columns:1fr;gap:32px;padding-bottom:35px}.footer-bottom{flex-direction:column;gap:13px}.mobile-cta{position:fixed;bottom:0;left:0;right:0;background:#f8f7f1;z-index:40;display:grid;grid-template-columns:.8fr 1.2fr;gap:9px;border-top:1px solid #bbc7b9;padding:10px 14px max(10px,env(safe-area-inset-bottom))}.mobile-cta .button{font-size:.8rem;padding:12px 8px;min-height:48px;gap:8px}.mobile-cta .outline{background:#173b32;color:white}.hero{min-height:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.section{padding:88px 0}.section+.section{border-top:1px solid #dce0d4}.section-lead{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-top:24px}.section-lead p{max-width:630px}.section-lead .text-link{flex-shrink:0}.text-link{display:inline-flex;gap:20px;font-size:.875rem;color:#173b32;font-weight:600;padding:12px 0;border-bottom:1px solid #879b87;margin-top:24px}.text-link:hover{color:#a35a25;border-color:#a35a25}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:44px;border-top:1px solid #d4dacd;border-left:1px solid #d4dacd}.service-card{display:flex;flex-direction:column;padding:30px 33px 26px;border-bottom:1px solid #d4dacd;border-right:1px solid #d4dacd;transition:background .15s}.service-card:hover{background:#eef0e4}.index{font-size:.72rem;letter-spacing:.1em;color:#84957c;display:block;margin-bottom:25px}.service-card h3{font-family:Georgia,serif;font-weight:400;font-size:1.6rem}.service-card p{font-size:.93rem;margin-top:15px}.card-link{font-size:.75rem;display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:26px}.card-link>span{font-size:1.2rem}.split{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.jaws-block{padding:88px 0;background:#173b32;color:#f7f4e9}.jaws-photo{position:relative;align-self:stretch;min-height:500px}.jaws-photo>img{position:absolute;width:100%;height:100%;object-position:45% center}.jaws-photo>span{position:absolute;bottom:0;left:0;right:0;font-size:.62rem;letter-spacing:.14em;background:#0a221cd9;padding:15px 22px}.jaws-copy{padding:30px 0}.jaws-copy .eyebrow{color:#dfb681}.jaws-copy p:not(.eyebrow){color:#c8d3c8;margin-top:23px}.jaws-copy .button{margin-top:10px}.check-list{padding:0;list-style:none;margin:26px 0;color:#dfe6d8;font-size:.9rem}.check-list li{border-top:1px solid #ffffff25;padding:13px 0}.check-list li:before{content:'✓';margin-right:12px;color:#dfb681}.comparison{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:40px}.comparison figure,figure{margin:0}.comparison img{aspect-ratio:4/3;width:100%;height:auto}.comparison figcaption{display:flex;align-items:center;gap:18px;font-size:.85rem;border-bottom:1px solid #d2dacd;padding:16px 0}.comparison figcaption span{background:#173b32;color:#f8f7f1;border-radius:2px;letter-spacing:.13em;padding:5px 9px;font-size:.6rem}.comparison figure:last-child figcaption span{background:#dfb681;color:#173b32}.small{font-size:.8rem;color:#6f7a72}.image-note{margin-top:12px}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:45px}.feature-grid article{border-top:1px solid #bbc7b9;padding-top:24px}.feature-grid h3{font-size:1.22rem}.feature-grid p{margin-top:16px;font-size:.95rem}.feature-grid .index{font-family:Georgia,serif;letter-spacing:0;font-size:2rem;font-weight:400;color:#a28057}.review-band{background:#e9eddf;text-align:center;padding:75px 0}.review-band .wrap{max-width:900px}.review-band blockquote{font-family:Georgia,serif;line-height:1.4;font-size:clamp(1.7rem,3vw,2.5rem);margin:0 auto 25px;letter-spacing:-.025em}.review-name{color:#173b32;font-weight:600;font-size:.875rem}.review-name span{font-weight:400;color:#62705f}.review-band .small{font-size:.7rem;max-width:520px;margin:16px auto 0}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:40px}.work-grid img{width:100%;aspect-ratio:1.75;height:auto;transition:filter .2s}.work-card:hover img{filter:brightness(.92)}.work-card .eyebrow{margin:22px 0 12px;font-size:.65rem}.work-card h3{font-family:Georgia,serif;font-size:1.8rem}.work-card .text-link{margin-top:12px}.work-grid figcaption{font-size:.85rem;margin-top:15px}.areas-block{background:#e7ecde}.faq-section .wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:0 90px;align-items:start}.faq-section .eyebrow{grid-column:1}.faq-section h2{grid-column:1}.faq{grid-column:2;grid-row:1/4}.faq details{border-bottom:1px solid #cbd4c6}.faq details:first-child{border-top:1px solid #cbd4c6}.faq summary{cursor:pointer;font-weight:500;display:flex;justify-content:space-between;gap:25px;list-style:none;padding:23px 0}.faq summary::-webkit-details-marker{display:none}.faq summary span{font-weight:400;color:#71836a}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{padding:0 30px 25px 0;font-size:.93rem}.final-cta{background:#dbe3d0;padding:70px 0}.final-cta .wrap{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.final-cta p:not(.eyebrow){max-width:430px}.final-cta .primary{background:#173b32;color:#fff;border-color:#173b32}.final-cta .outline{border-color:#829680}.page-intro{padding:78px 0 60px;background:#edf0e5}.page-intro h1{font-size:clamp(2.7rem,5vw,4.8rem);max-width:950px}.page-intro p:not(.eyebrow){max-width:650px;margin-top:25px;font-size:1.12rem}.breadcrumb{display:flex;gap:12px;align-items:center;font-size:.75rem;padding-top:25px;color:#67775f}.breadcrumb a{text-decoration:underline}.inner-hero .hero-content{padding-block:72px 115px}.inner-hero h1{font-size:clamp(2.8rem,5vw,4.7rem)}.wide-copy{max-width:760px;margin-top:28px}.safety-section{background:#f1e4cd;padding:50px 0}.safety-section h2{font-size:2rem}.emergency-button{background:#dfb681;border-color:#dfb681;color:#173b32}.urgent .hero-content{padding-bottom:110px}.urgent .hero-copy{max-width:790px}.urgent .hero-caption{display:none}.form-section{background:#eef1e7}.form-section .split{align-items:start;gap:90px}.form-intro{margin-top:28px;max-width:390px}.contact-card{margin:32px 0;border-block:1px solid #c8d3c2;padding:26px 0;max-width:380px}.contact-card .button{margin-top:14px;min-width:215px}.contact-card p{font-size:.875rem;margin-top:25px}.form-section .small{max-width:350px}.estimate-form{background:#fff;padding:34px;border:1px solid #dbe0d6;border-radius:6px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}.estimate-form label{display:block;font-size:.82rem;font-weight:600;margin-bottom:18px;color:#173b32}.estimate-form label>span:not(.optional){color:#987145}.optional{font-weight:400;font-size:.73rem;color:#6b756d;margin-left:4px}.estimate-form input,.estimate-form select,.estimate-form textarea{display:block;width:100%;padding:12px 13px;border:1px solid #c2ccbf;border-radius:3px;color:#203f32;background:#fff;margin-top:7px;font-size:.9rem;min-height:48px}.estimate-form input::placeholder,.estimate-form textarea::placeholder{color:#869083}.estimate-form textarea{resize:vertical}.estimate-form input[type=file]{font-size:.75rem;padding:10px;background:#f7f8f3}.estimate-form input[type=file]::file-selector-button{padding:7px 9px;border:1px solid #b6c5ae;background:white;border-radius:3px;margin-right:8px;color:#173b32}.form-disclosure{font-size:.72rem;line-height:1.6;margin-top:15px}.form-disclosure a{text-decoration:underline}.estimate-form button[type=submit]{width:100%;margin-top:20px}.estimate-form button:disabled{opacity:.6;cursor:wait}.form-status:not(:empty){padding:12px;background:#fff0de;color:#71431c;border:1px solid #dcb98a;margin-top:15px;font-size:.875rem}.preview-form-note{font-size:.72rem;margin-top:14px;color:#6c775e;line-height:1.6}.photo-preview:not([hidden]){display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:12px 0;font-size:.8rem}.photo-preview img{width:72px;height:72px}.photo-name{max-width:180px;overflow-wrap:anywhere}.remove-photo{background:white;border:0;text-decoration:underline;color:#795026;cursor:pointer;padding:10px}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.estimate-form [aria-invalid=true]{border:2px solid #ad4629}.project-image{padding-top:45px}.project-image img{width:100%;max-height:610px}.source-link{font-size:.8rem;margin-top:32px}.source-link a{text-decoration:underline}.about-split{grid-template-columns:.8fr 1fr;align-items:center}.about-split>img{width:100%;max-height:560px;object-position:center 25%}.about-split p:not(.eyebrow){margin-top:25px}.area-panel{padding:40px;background:#dfe7d4;border:1px solid #bcccb1}.area-panel h3{font-family:Georgia,serif;font-size:2.7rem;line-height:1.2;letter-spacing:-.02em}.area-panel p{margin-top:20px}.area-panel .button{margin-top:20px}.resource-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:40px}.resource-card{padding:35px;border:1px solid #c8d2c0;display:flex;align-items:start;flex-direction:column}.resource-card:hover{background:#ecf0e2}.resource-card h3{font-size:1.7rem;font-family:Georgia,serif}.resource-card p{margin-top:20px}.resource-card .text-link{margin-top:auto;padding-top:24px}.resource-card .eyebrow{font-size:.65rem}.prose{max-width:780px;margin-top:30px}.prose h3{margin-top:35px;margin-bottom:15px}.media-split{margin-top:40px}.media-split p{margin-top:25px}.landing .nav{justify-content:space-between}.landing .nav-actions{margin-left:auto}.landing .footer-grid{grid-template-columns:1.4fr 1fr}.landing .footer-grid>div:nth-child(n+3){display:none}.urgent-page .mobile-cta{grid-template-columns:1fr}.urgent-page .mobile-cta .primary{display:none}.urgent-page .hero .actions>.primary{background:transparent;color:white}.landing .hero-caption{display:none}
@media(max-width:950px){.section,.jaws-block{padding:65px 0}.split{gap:35px}.jaws-photo{min-height:490px}.section-lead{gap:30px}.service-card{padding:23px}.feature-grid{gap:25px}.faq-section .wrap{gap:0 40px}.final-cta .wrap{gap:40px}.form-section .split{gap:35px}.form-row{grid-template-columns:1fr;gap:0}.estimate-form{padding:25px}.work-card h3{font-size:1.5rem}.page-intro{padding:60px 0}}
@media(max-width:600px){.section,.jaws-block{padding:52px 0}.section-lead{display:block;margin-top:23px}.section h2,.jaws-block h2,.final-cta h2{font-size:2.35rem}.service-grid{grid-template-columns:1fr;margin-top:30px}.service-card{padding:26px}.service-card .index{margin-bottom:14px}.service-card h3{font-size:1.55rem}.service-card p{margin-top:12px}.card-link{padding-top:18px}.split{grid-template-columns:1fr;gap:30px}.jaws-photo{min-height:350px}.jaws-copy{padding:10px 0 0}.jaws-block .split{gap:32px}.comparison{grid-template-columns:1fr;gap:23px;margin-top:30px}.comparison img{aspect-ratio:4/3}.comparison figcaption{padding:12px 0}.feature-grid{grid-template-columns:1fr;gap:28px;margin-top:30px}.feature-grid article{display:grid;grid-template-columns:40px 1fr;gap:0 16px;padding-top:22px}.feature-grid .index{grid-row:1/3;font-size:1.55rem;margin:0}.feature-grid h3{font-size:1.2rem;margin-top:6px}.feature-grid p{margin-top:13px}.review-band{padding:55px 0}.review-band blockquote{font-size:1.9rem}.work-grid{grid-template-columns:1fr;gap:35px;margin-top:30px}.faq-section .wrap{display:block}.faq{margin-top:28px}.faq summary{padding:21px 0;font-size:.95rem}.faq details p{font-size:.9rem}.final-cta{padding:50px 0}.final-cta .wrap{grid-template-columns:1fr;gap:25px}.final-cta .actions .button{width:100%}.page-intro{padding:48px 0}.page-intro h1{font-size:3rem}.page-intro p:not(.eyebrow){font-size:1rem;margin-top:23px}.inner-hero .hero-content{padding-block:48px 98px}.inner-hero h1{font-size:3rem}.urgent .hero-content{padding-bottom:50px}.form-section .split{gap:30px}.form-section{padding-top:45px}.estimate-form{padding:22px 18px}.estimate-form input,.estimate-form textarea,.estimate-form select{font-size:16px}.form-row{grid-template-columns:1fr}.form-section .small{max-width:none}.preview-form-note{font-size:.75rem}.optional{display:inline}.resource-grid{grid-template-columns:1fr;gap:20px}.resource-card{padding:27px}.about-split{grid-template-columns:1fr}.about-split>img{height:430px;max-height:none;object-position:center 20%}.project-image{padding-top:30px}.area-panel{padding:28px}.landing .nav-phone{display:none}.landing .nav-actions{display:block}.landing .nav-actions .button{font-size:.7rem;padding:11px;gap:8px;min-height:42px}.landing .brand{font-size:1.15rem}.landing .brand small{font-size:.48rem}.landing .brand-mark{width:31px;height:37px;font-size:1.7rem}.landing .footer-grid{grid-template-columns:1fr}.landing .hero-content{padding-bottom:50px}}
