@charset "UTF-8";
:root{--paper:#f4f0e7;--paper-light:#fbf9f4;--ink:#1e2923;--forest:#263c31;--olive:#637452;--clay:#a25637;--line:#d8d0c3;--muted:#696e66;--white:#fffdfa;--serif:Georgia,"Times New Roman",serif;--sans:Arial,Helvetica,sans-serif;--shadow:0 18px 45px rgba(28,39,32,.12);--max:1380px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:7rem}body{margin:0;background:var(--paper-light);color:var(--ink);font:16px/1.65 var(--sans);-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit}button,input,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--clay);outline-offset:3px}.skip-link{position:absolute;left:1rem;top:-5rem;background:var(--ink);color:white;padding:.75rem 1rem;z-index:100}.skip-link:focus{top:1rem}.site-header{background:var(--paper-light);border-bottom:1px solid var(--line);position:relative;z-index:10}.header-inner{max-width:var(--max);margin:auto;padding:.8rem clamp(1rem,4vw,3rem);min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;min-width:220px}.brand-mark{width:40px;height:44px;border:1px solid var(--olive);position:relative;display:inline-block;flex:none}.brand-mark:before,.brand-mark:after{content:"";position:absolute;inset:5px 7px;border:1px solid var(--clay)}.brand-mark:after{inset:10px 13px;border-color:var(--olive)}.brand-name{font:600 1rem/1.1 var(--serif);letter-spacing:.015em}.brand-name small{display:block;font:600 .58rem/1.5 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--olive)}.desktop-nav{display:flex;gap:clamp(.8rem,2vw,1.8rem);align-items:center}.desktop-nav a,.mobile-nav a{font-size:.82rem;letter-spacing:.04em;text-decoration:none}.desktop-nav a:hover,.mobile-nav a:hover,.text-link:hover{color:var(--clay)}.header-actions{display:flex;align-items:center;gap:1rem}.header-phone{font-size:.82rem;text-decoration:none;white-space:nowrap}.header-cta,.button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:.8rem 1.2rem;background:var(--forest);color:var(--white);text-decoration:none;border:1px solid var(--forest);font-weight:700;font-size:.82rem;letter-spacing:.04em;transition:background .18s ease,transform .18s ease}.header-cta:hover,.button:hover{background:var(--olive);border-color:var(--olive);transform:translateY(-1px)}.button--light{background:transparent;color:var(--forest);border-color:var(--forest)}.button--light:hover{color:white}.mobile-nav{display:none}.mobile-nav summary{list-style:none;cursor:pointer;border:1px solid var(--line);padding:.55rem .8rem}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav nav{position:absolute;right:1rem;top:calc(100% - 1px);background:var(--paper-light);border:1px solid var(--line);padding:1rem;box-shadow:var(--shadow);display:grid;gap:.8rem;min-width:210px}.container{width:min(var(--max),calc(100% - 2.5rem));margin-inline:auto}.eyebrow{font-size:.68rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--olive);margin:0 0 1rem}.display-title,h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.08;letter-spacing:-.025em}h1{font-size:clamp(2.7rem,5vw,5.2rem);margin:.15rem 0 1.2rem}h2{font-size:clamp(2rem,3.4vw,3.7rem);margin:.2rem 0 1.2rem}h3{font-size:1.55rem;margin:.2rem 0 .7rem}p{margin:.7rem 0 1rem}.lede{font-size:1.08rem;line-height:1.65;max-width:58ch;color:#3d4840}.coverage-line{border-left:2px solid var(--clay);padding:.15rem 0 .15rem 1rem;font-size:.9rem;font-weight:700;margin:1.25rem 0}.hero{max-width:var(--max);margin:0 auto;padding:clamp(2rem,4vw,4.2rem) clamp(1.25rem,4vw,3.5rem) 3rem;display:grid;grid-template-columns:minmax(250px,1.03fr) minmax(260px,1.02fr) minmax(275px,.83fr);gap:clamp(1.2rem,2.25vw,2rem);align-items:center}.hero-copy{padding:1rem 0}.hero-copy h1{font-size:clamp(2.65rem,4.25vw,4.35rem);max-width:11ch}.hero-visual{height:clamp(390px,43vw,590px);margin:0;position:relative;overflow:hidden;background:#ddd3c5}.hero-visual img{width:100%;height:100%;object-fit:cover;object-position:58% center}.hero-visual figcaption{position:absolute;bottom:1rem;left:1rem;padding:.4rem .65rem;background:rgba(251,249,244,.9);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase}.hero-form-card{background:var(--forest);color:var(--white);padding:1.45rem;box-shadow:var(--shadow);position:relative}.hero-form-card:before{content:"";position:absolute;inset:.5rem;border:1px solid rgba(255,255,255,.18);pointer-events:none}.hero-form-card>*{position:relative}.hero-form-card h2{font-size:1.7rem;margin:.25rem 0 .4rem}.hero-form-card .form-intro{font-size:.82rem;color:#e4e5dc;margin:.25rem 0 .8rem}.hero-form-card .eyebrow{color:#d3bc91;margin-bottom:.35rem}.hero-phone-note{font-size:.76rem;text-align:center;color:#f2eee4;margin:.65rem 0 0}.hero-phone-note a{color:white;font-weight:700}.lead-form{display:grid;gap:.58rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.field{display:grid;gap:.2rem}.field label{font-size:.72rem;font-weight:700;letter-spacing:.03em}.field input,.field textarea{width:100%;border:1px solid #c9c2b5;background:var(--white);color:var(--ink);padding:.68rem .72rem;border-radius:0;min-height:43px}.field textarea{min-height:68px;resize:vertical}.field input::placeholder,.field textarea::placeholder{color:#777}.lead-form .button{background:var(--clay);border-color:var(--clay);width:100%;min-height:45px}.lead-form .button:hover{background:#a65e40}.form-note{font-size:.66rem;line-height:1.45;color:#e4e5dc;margin:0}.form-success{display:none;background:var(--white);color:var(--forest);padding:1rem;margin-top:.8rem;font-size:.9rem}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem;margin-top:1.35rem}.phone-inline{font-weight:700;color:var(--forest);text-decoration-thickness:1px;text-underline-offset:4px}.section{padding:clamp(3.5rem,7vw,7rem) 0}.section--paper{background:var(--paper)}.section--forest{background:var(--forest);color:var(--white)}.section--forest .eyebrow{color:#d3bc91}.section-heading{max-width:730px;margin-bottom:2.4rem}.section-heading p{max-width:62ch;color:var(--muted)}.section--forest .section-heading p{color:#e2e3dd}.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(2rem,6vw,6rem)}.split--reverse> :first-child{order:2}.split-photo{margin:0;position:relative}.split-photo img{width:100%;aspect-ratio:1.18/1;object-fit:cover}.split-photo figcaption{font-size:.68rem;color:var(--muted);margin-top:.55rem}.pullquote{font:italic 1.35rem/1.45 var(--serif);border-left:2px solid var(--clay);padding:.25rem 0 .25rem 1.15rem;margin:1.5rem 0}.service-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 2.5rem;border-top:1px solid var(--line)}.service-item{padding:1.25rem 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:3rem 1fr;gap:1rem}.service-number{font:1rem var(--serif);color:var(--clay);padding-top:.2rem}.service-item p{font-size:.9rem;color:var(--muted);margin:.35rem 0}.text-link{font-size:.84rem;font-weight:700;text-decoration-thickness:1px;text-underline-offset:4px}.material-strip{display:grid;grid-template-columns:1.1fr .9fr;background:var(--paper);margin-top:3rem}.material-strip img{height:100%;min-height:300px;object-fit:cover}.material-strip-copy{padding:clamp(2rem,4vw,4rem);align-self:center}.process-steps{counter-reset:step;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.25);margin-top:2rem}.process-step{counter-increment:step;padding:1.4rem 1.5rem 0 0}.process-step:before{content:"0" counter(step);display:block;color:#d3bc91;font:1.1rem var(--serif);margin-bottom:1.1rem}.process-step p{color:#e2e3dd;font-size:.9rem}.image-band{position:relative;min-height:340px;display:grid;align-items:end;overflow:hidden;background:var(--forest);color:white}.image-band img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.image-band:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,31,25,.78),rgba(20,31,25,.08))}.image-band-copy{position:relative;z-index:1;max-width:660px;padding:clamp(2rem,5vw,4rem)}.image-band-copy p{color:#f4f0e7;max-width:55ch}.map-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2rem,5vw,5rem);align-items:center}.map-frame{border:0;width:100%;height:390px;background:#e2ded4}.map-caption{font-size:.75rem;color:var(--muted)}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line);padding:1.2rem 0}.faq-list summary{font:1.25rem/1.3 var(--serif);cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:1rem}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";font:1.25rem var(--sans);color:var(--clay)}.faq-list details[open] summary:after{content:"−"}.faq-answer{max-width:75ch;color:#535d55;padding:.5rem 2rem 0 0}.page-hero{padding:clamp(3rem,7vw,6rem) 0 clamp(2rem,4vw,3.5rem);background:var(--paper)}.page-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2rem,5vw,5rem);align-items:center}.page-hero h1{max-width:13ch}.page-hero-photo{margin:0}.page-hero-photo img{width:100%;aspect-ratio:1.42/1;object-fit:cover}.page-hero-photo figcaption{font-size:.68rem;color:var(--muted);margin-top:.55rem}.page-hero--plain{background:var(--forest);color:white}.page-hero--plain .eyebrow{color:#d3bc91}.page-hero--plain .page-hero-grid{display:block;max-width:var(--max)}.page-hero--plain h1{max-width:14ch}.page-hero--plain p{max-width:62ch;color:#e3e4de}.content-section{padding:clamp(2.5rem,5vw,5rem) 0}.prose{max-width:780px}.prose h2{margin-top:2.8rem}.prose h3{margin-top:1.6rem}.prose p,.prose li{max-width:72ch}.prose li{margin:.45rem 0}.prose a{text-underline-offset:3px}.prose ul{padding-left:1.2rem}.approach-steps{counter-reset:guide;display:grid;gap:0;border-top:1px solid var(--line)}.approach-step{counter-increment:guide;display:grid;grid-template-columns:5rem 1fr;gap:1rem;padding:1.5rem 0;border-bottom:1px solid var(--line)}.approach-step:before{content:"0" counter(guide);font:1.25rem var(--serif);color:var(--clay)}.estimate-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(2rem,6vw,6rem);align-items:start}.estimate-form-card{background:var(--paper);padding:clamp(1.4rem,3vw,2.4rem);border:1px solid var(--line)}.estimate-form-card .lead-form{gap:1rem}.estimate-form-card .field label{font-size:.8rem}.estimate-form-card .field input,.estimate-form-card .field textarea{min-height:48px}.estimate-form-card .field textarea{min-height:120px}.estimate-form-card .form-note{color:var(--muted)}.estimate-form-card .button{background:var(--forest);border-color:var(--forest)}.estimate-form-card .hero-phone-note{color:var(--muted)}.estimate-form-card .hero-phone-note a{color:var(--forest)}.contact-details{display:grid;gap:1rem;margin:1.5rem 0}.contact-details a{font-weight:700;text-decoration-thickness:1px;text-underline-offset:3px}.legal-note{border-left:2px solid var(--clay);padding:.7rem 1rem;background:var(--paper);font-size:.83rem}.site-footer{background:#1b2721;color:#f4f0e7;padding:3.2rem 0 1.2rem}.footer-main{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:3rem;padding-bottom:2rem}.site-footer .brand{color:white}.site-footer p,.site-footer a{color:#e1e2db}.footer-links{display:grid;align-content:start;gap:.55rem}.footer-links a{font-size:.8rem;text-decoration:none}.footer-title{font:1.15rem var(--serif);margin:0 0 .8rem}.footer-bottom{border-top:1px solid rgba(255,255,255,.2);padding-top:1rem;display:flex;justify-content:space-between;gap:1rem;font-size:.72rem;color:#c5c9c2}.floating-cta{position:fixed;right:max(1rem,env(safe-area-inset-right));bottom:max(1rem,env(safe-area-inset-bottom));z-index:50;background:var(--clay);color:white;padding:.9rem 1.15rem;box-shadow:0 8px 24px rgba(25,35,28,.28);font-size:.8rem;font-weight:700;letter-spacing:.035em;text-decoration:none;border:1px solid rgba(255,255,255,.35);transition:transform .18s ease,background .18s ease}.floating-cta:hover{background:#9e563c;transform:translateY(-2px)}.screen-reader-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.error-message{color:#83281f!important;margin-top:5px;font-size:14px}.hero-form-card .error-message{color:#ffd1c4!important}.material-note{background:var(--paper);border:1px solid var(--line);padding:clamp(1.5rem,3vw,3rem);align-self:center;position:relative}.material-note:before{content:"";position:absolute;inset:.55rem;border:1px solid #d8d0c3;pointer-events:none}.material-note>*{position:relative}.guide-hero-layout{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:clamp(2rem,6vw,6rem)}.guide-hero-layout h1{max-width:12ch}.swatch-board{display:grid;grid-template-columns:1fr 1fr;gap:.65rem;padding:1rem;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.04);transform:rotate(1.2deg)}.swatch-chip{display:block;min-height:150px;border:1px solid rgba(255,255,255,.4)}.swatch-chip:first-child{grid-row:span 2;min-height:305px}.swatch-chip--linen{background-color:#d4c8b6;background-image:repeating-linear-gradient(0deg,rgba(87,74,59,.14) 0 1px,transparent 1px 6px),repeating-linear-gradient(90deg,rgba(255,255,255,.22) 0 1px,transparent 1px 7px)}.swatch-chip--botanical{background-color:#8c9276;background-image:radial-gradient(ellipse at 28% 35%,rgba(244,240,231,.42) 0 12%,transparent 13%),radial-gradient(ellipse at 72% 69%,rgba(41,60,48,.62) 0 18%,transparent 19%)}.swatch-chip--stripe{background-color:#dccdb9;background-image:repeating-linear-gradient(135deg,#dccdb9 0 16px,#9f775e 16px 18px,#ede6da 18px 31px)}.honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
@media(max-width:1100px){.desktop-nav{gap:.9rem}.header-phone{display:none}.hero{grid-template-columns:minmax(240px,1fr) minmax(260px,1fr)}.hero-form-card{grid-column:1/-1;max-width:760px;width:100%;justify-self:center;display:grid;grid-template-columns:.75fr 1.25fr;column-gap:1.2rem;align-items:start}.hero-form-card:before{inset:.5rem}.hero-form-card .lead-form{grid-column:2;grid-row:1/5}.hero-phone-note{grid-column:1;grid-row:5}.hero-visual{height:510px}.hero-copy h1{font-size:clamp(2.5rem,5vw,4rem)}}
@media(max-width:760px){.guide-hero-layout{grid-template-columns:1fr}.swatch-board{max-width:500px}.swatch-chip:first-child{min-height:235px}.swatch-chip{min-height:115px}.header-inner{min-height:70px;padding:.65rem 1rem}.desktop-nav,.header-actions .header-cta{display:none}.mobile-nav{display:block}.header-actions{margin-left:auto}.brand{min-width:0}.container{width:min(100% - 2rem,var(--max))}.hero{grid-template-columns:1fr;gap:1.3rem;padding:2rem 1rem 2.7rem}.hero-copy{padding:.3rem 0}.hero-copy h1{font-size:clamp(2.7rem,13vw,4.2rem);max-width:11ch}.hero-copy .lede{font-size:1rem}.hero-form-card{grid-column:auto;display:block;padding:1.3rem}.hero-form-card .lead-form{display:grid}.hero-form-card .hero-phone-note{grid-column:auto}.hero-visual{height:auto;aspect-ratio:1.12/1;max-height:500px;order:3}.split,.page-hero-grid,.map-layout,.estimate-layout{grid-template-columns:1fr}.split--reverse> :first-child{order:initial}.section{padding:3.5rem 0}.section-heading{margin-bottom:1.7rem}.service-list{grid-template-columns:1fr}.material-strip{grid-template-columns:1fr}.material-strip img{min-height:230px;max-height:380px}.process-steps{grid-template-columns:1fr}.process-step{border-bottom:1px solid rgba(255,255,255,.2);padding:1.25rem 0}.process-step:before{margin-bottom:.45rem}.page-hero{padding:3rem 0 2rem}.page-hero h1{font-size:clamp(2.8rem,12vw,4.4rem)}.page-hero-photo img{aspect-ratio:1.2/1}.map-frame{height:320px}.footer-main{grid-template-columns:1fr 1fr;gap:2rem}.footer-main> :first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:.3rem}.floating-cta{right:1rem;bottom:max(1rem,env(safe-area-inset-bottom));padding:.83rem 1rem}.form-row{grid-template-columns:1fr 1fr}}
@media(max-width:430px){.form-row{grid-template-columns:1fr}.hero-form-card{padding:1.1rem}.hero-actions{align-items:flex-start;flex-direction:column}.footer-main{grid-template-columns:1fr}.footer-main> :first-child{grid-column:auto}.brand-name{font-size:.92rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Keep internal-page headings visible in the first screen alongside the illustration. */
.page-hero-grid{align-items:start}
/* The form itself is the active CTA when it enters the viewport; avoid covering fields. */
.floating-cta--hidden{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(.35rem)}
@media(max-width:760px){
  .guide-hero-layout{grid-template-columns:1fr}
  .swatch-board{max-width:500px}
  .swatch-chip:first-child{min-height:235px}
  .swatch-chip{min-height:115px}
  .floating-cta{padding:.65rem .8rem;font-size:.72rem;min-height:44px}
}

@media(min-width:761px){.page-hero-grid--image-left>figure{grid-column:1;grid-row:1}.page-hero-grid--image-left>div{grid-column:2;grid-row:1}}
.floating-cta{bottom:max(.35rem,env(safe-area-inset-bottom))}
