:root{--ink:#183b37;--deep:#173832;--sage:#dce5d9;--cream:#f8f5ed;--paper:#fffdf8;--terra:#b76c4f;--muted:#5f706b;--line:#d8dfd6}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;line-height:1.5}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #dd9a68;outline-offset:3px}.container{width:min(1180px,calc(100% - 64px));margin:auto}.skip-link{position:absolute;top:-100px;left:16px;padding:12px;background:white;z-index:100}.skip-link:focus{top:12px}.preview-bar{min-height:35px;padding:8px 16px;text-align:center;background:#e9eee6;color:#34524b;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.preview-dot{display:inline-block;width:6px;height:6px;margin-right:8px;border-radius:50%;background:#8caa87;vertical-align:2px}.preview-sep{padding:0 8px;color:#94a9a0}.site-header{height:86px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:11px}.brand-mark{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:var(--ink);color:#f9f4e8}.brand-mark svg{width:27px}.brand-words{display:flex;flex-direction:column;line-height:1}.brand-words strong{font-family:Manrope,sans-serif;font-size:23px;letter-spacing:-.065em;font-weight:800}.brand-words small{margin-top:6px;letter-spacing:.21em;font-size:8px;font-weight:800}.site-header nav{display:flex;gap:36px;align-items:center;font-size:13px;font-weight:700}.site-header nav>a:not(.nav-cta):hover,.text-link:hover,.site-footer a:hover{text-decoration:underline;text-underline-offset:5px}.nav-cta{border:1px solid var(--ink);border-radius:100px;padding:12px 17px}.nav-cta span{margin-left:11px}.nav-cta:hover{background:var(--ink);color:white}.hero{overflow:hidden;border-top:1px solid #e4e9df}.hero-grid{min-height:624px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px}.hero-copy{padding:42px 0 64px;max-width:570px}.eyebrow{margin:0 0 25px;color:#9b6d57;font-size:11px;font-weight:800;letter-spacing:.17em}.rule{display:inline-block;vertical-align:middle;width:29px;height:1px;margin-right:12px;background:currentColor}.hero h1,.section-heading h2,.estimate-copy h2{font-family:Manrope,sans-serif;font-weight:800;letter-spacing:-.067em;line-height:1.07}.hero h1{font-size:clamp(52px,5.35vw,79px);margin:0 0 24px;max-width:560px}.hero h1 em,.section-heading h2 em,.estimate-copy h2 em{font-style:normal;color:var(--terra)}.hero-intro{max-width:490px;margin:0;color:#5a6c65;font-size:17px;line-height:1.75}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:26px;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;border:0;border-radius:100px;padding:17px 22px;font-size:13px;font-weight:800;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--ink);color:white;min-width:190px}.button-primary:hover{background:#275b51}.text-link{font-size:13px;font-weight:800}.text-link span{margin-left:8px}.location-line{display:flex;align-items:center;gap:8px;margin:48px 0 0;color:#718079;font-size:12px}.location-icon{font-size:18px}.hero-art{position:relative;height:550px;align-self:end;isolation:isolate}.art-arch{position:absolute;inset:2% 0 0 0;border-radius:280px 280px 0 0;background:#dfe9da;z-index:-2}.sun-disc{position:absolute;top:13%;right:10%;width:78px;height:78px;border-radius:50%;background:#f0c793;z-index:-1}.house-art{position:absolute;width:105%;left:-5%;bottom:0;filter:drop-shadow(0 19px 0 rgba(25,59,55,.04))}.art-caption{position:absolute;right:-12px;bottom:38px;display:flex;align-items:center;gap:11px;padding:14px 18px;background:var(--paper);box-shadow:0 15px 35px #17383224;border-radius:12px;transform:rotate(-4deg);font-size:12px;font-weight:800;line-height:1.3}.caption-star{font-size:25px;color:var(--terra)}.section-pad{padding:104px 0}.services-section{background:#fffcf5}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:34px}.section-heading .eyebrow{margin-bottom:14px}.section-heading h2{margin:0;max-width:720px;font-size:clamp(38px,4vw,56px)}.section-heading>p{max-width:260px;margin:0 0 5px;color:var(--muted);font-size:14px;line-height:1.75}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.service-card{min-height:382px;padding:28px 29px;background:#f6f5ec;border:1px solid #ebeee4;border-radius:15px}.service-card:nth-child(2){background:#eef1e8}.service-card:nth-child(3){background:#f4ede4}.service-icon{display:grid;place-items:center;width:48px;height:48px;margin-bottom:32px;border:1px solid #b8c9bc;border-radius:50%;font-size:25px}.card-index,.small-label{font-size:10px;letter-spacing:.16em;font-weight:800;color:#9c715d}.service-card h3{margin:11px 0 9px;font-family:Manrope,sans-serif;font-size:21px;letter-spacing:-.04em}.service-card>p:not(.card-index){margin:0;color:var(--muted);font-size:13px;line-height:1.6}.service-card ul{margin:23px 0 0;padding:17px 0 0;border-top:1px solid #d7dfd3;list-style:none}.service-card li{position:relative;padding:5px 0 5px 16px;font-size:13px;font-weight:700}.service-card li:before{content:'+';position:absolute;left:0;color:var(--terra)}.work-strip{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:15px;align-items:stretch;margin-top:70px;scroll-margin-top:24px}.work-intro{padding:26px 18px 24px 0}.work-intro h3{margin:18px 0 8px;font:800 30px/1.2 Manrope,sans-serif;letter-spacing:-.055em}.work-intro p{max-width:210px;margin:0;color:var(--muted);font-size:13px;line-height:1.7}.photo-placeholder{height:225px;padding:17px;display:flex;flex-direction:column;justify-content:space-between;border-radius:12px;color:#446158;background-color:#dce5d9;background-image:linear-gradient(140deg,transparent 45%,#c6d7c7 45% 53%,transparent 53%),repeating-linear-gradient(90deg,transparent 0 44px,#cbdacc 44px 45px);overflow:hidden}.photo-two{background-color:#eadbc9;background-image:linear-gradient(32deg,transparent 55%,#d8c2a9 55% 57%,transparent 57%),repeating-linear-gradient(0deg,transparent 0 36px,#decbb7 36px 37px);color:#725c4b}.photo-placeholder>span{display:flex;justify-content:space-between;font-size:11px;font-weight:800}.photo-cross{font-size:19px}.photo-placeholder strong{display:block;font:800 22px Manrope,sans-serif;letter-spacing:-.04em}.estimate-section{background:var(--deep);color:#fffdf5}.estimate-grid{display:grid;grid-template-columns:.82fr 1.18fr;align-items:start;gap:90px}.estimate-copy{padding-top:45px}.eyebrow.light{color:#dec3a7}.estimate-copy h2{max-width:450px;margin:0 0 22px;font-size:clamp(42px,4.2vw,61px)}.estimate-copy h2 em{color:#e2b899}.estimate-copy>p:not(.eyebrow){max-width:410px;color:#d0ddd3;font-size:15px;line-height:1.8}.estimate-note{display:flex;gap:15px;max-width:390px;margin-top:62px;padding-top:23px;border-top:1px solid #59736a}.estimate-note>span{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:50%;background:#335a50;font-size:17px}.estimate-note p{margin:0;color:#bcd0c4;font-size:12px;line-height:1.6}.estimate-note strong{color:white}.form-card{border-radius:16px;background:#fffdf8;color:var(--ink);padding:28px 30px 29px;box-shadow:0 22px 50px #081d172e}.form-topline{display:flex;justify-content:space-between;margin-bottom:28px;padding-bottom:18px;border-bottom:1px solid #e5e9df;font-size:10px;letter-spacing:.14em;font-weight:800;color:#9c715d}fieldset{border:0;padding:0;margin:0}legend,.full-label,.field-grid label{font-size:14px;font-weight:800}legend{padding:0}.required{color:#b56b4f}.optional{color:#99a49d;font-size:11px;font-weight:500}.field-hint{margin:3px 0 12px;color:#82918a;font-size:11px}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.choice{position:relative;min-height:43px;display:flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid #dce3d9;border-radius:8px;background:#fff;font-size:11px;font-weight:700;cursor:pointer;transition:background .15s,border-color .15s}.choice:hover{border-color:#77a08e}.choice:has(input:checked){border-color:#34755f;background:#edf4eb}.choice input{appearance:none;flex:none;width:16px;height:16px;margin:0;border:1.5px solid #99aca2;border-radius:4px}.choice input:checked{border-color:#397861;background:#397861}.choice input:checked:after{content:'✓';display:block;color:#fff;font-size:11px;line-height:14px;text-align:center}.choice input:focus-visible{outline:2px solid #dd9a68;outline-offset:2px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.field-grid label,.full-label{display:flex;flex-direction:column;gap:7px}.full-label{margin-top:20px}.field-grid input,.field-grid select,.full-label textarea{width:100%;min-height:44px;padding:10px 12px;border:1px solid #dce3d9;border-radius:8px;background:#fff;color:var(--ink);font-size:12px;font-weight:500}.full-label textarea{min-height:102px;resize:vertical}.field-grid input::placeholder,.full-label textarea::placeholder{color:#a1aca5}.field-grid select{appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15' height='15' viewBox='0 0 16 16'%3E%3Cpath d='m3 6 5 5 5-5' fill='none' stroke='%23587066' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right 12px center}.field-error{display:block;margin:6px 0 0;color:#a84031;font-size:11px;font-weight:700}.field-error[hidden],#result[hidden],#estimate-form[hidden]{display:none}.button-form{width:100%;margin-top:24px;background:var(--terra);color:white}.button-form:hover{background:#9f573f}.form-fineprint{margin:11px 0 0;text-align:center;color:#8c9b93;font-size:10px}.result-heading{display:flex;gap:13px;align-items:center}.result-check{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:#dcead9;color:#28664e;font-weight:800}.result-heading h3{margin:0;font:800 20px Manrope,sans-serif;letter-spacing:-.04em}.result-heading p{margin:2px 0 0;color:var(--muted);font-size:12px}.result-panel textarea{width:100%;margin-top:22px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#f7f8f3;color:var(--ink);font-size:12px;line-height:1.6;resize:vertical}.result-actions{display:flex;align-items:center;gap:16px}.result-actions .button{width:auto;min-width:190px}.edit-button{margin-top:24px;border:0;background:transparent;color:var(--ink);text-decoration:underline;text-underline-offset:4px;font-size:12px;font-weight:800}.copy-status{font-size:12px;color:#2f7659}.site-footer{padding:66px 0 25px;background:#112d29;color:#f7f5e9}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.footer-brand{font:800 30px Manrope,sans-serif;letter-spacing:-.07em}.footer-dot{color:#deaa87}.footer-grid p{max-width:250px;margin:13px 0 0;color:#aebfb5;font-size:12px;line-height:1.8}.footer-title{color:#b8d0bc;font-size:10px;font-weight:800;letter-spacing:.16em}.footer-grid a{display:inline-block;margin-top:13px;font-size:12px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:68px;padding-top:18px;border-top:1px solid #39534c;color:#91aaa0;font-size:11px}@media(max-width:900px){.hero-grid{gap:20px}.hero-art{height:470px}.estimate-grid{gap:35px}.service-card{padding:24px 20px}.section-heading{align-items:start}}@media(max-width:700px){.container{width:min(100% - 36px,520px)}.preview-bar{font-size:9px;line-height:1.4}.site-header{height:70px}.brand-mark{width:40px;height:40px}.brand-words strong{font-size:19px}.site-header nav{gap:0}.site-header nav>a:not(.nav-cta){display:none}.nav-cta{padding:10px 12px;font-size:11px}.nav-cta span{margin-left:4px}.hero-grid{display:flex;flex-direction:column;gap:0}.hero-copy{padding:56px 0 38px}.hero h1{font-size:clamp(50px,12vw,70px)}.hero-intro{font-size:15px}.hero-actions{gap:18px}.location-line{margin-top:34px}.hero-art{height:370px;align-self:stretch}.art-arch{inset:0 3% 0}.house-art{width:100%;left:0}.art-caption{right:0;bottom:18px;font-size:10px}.section-pad{padding:70px 0}.section-heading{display:block}.section-heading h2{font-size:40px}.section-heading>p{max-width:100%;margin-top:17px}.services-grid,.work-strip,.estimate-grid,.footer-grid{grid-template-columns:1fr}.service-card{min-height:0}.service-icon{margin-bottom:21px}.work-strip{grid-template-columns:1fr 1fr;gap:10px;margin-top:45px}.work-intro{grid-column:1/-1;padding:0 0 7px}.photo-placeholder{height:160px}.photo-placeholder strong{font-size:15px}.estimate-copy{padding:0}.estimate-copy h2{font-size:45px}.estimate-note{margin-top:28px}.estimate-grid{gap:34px}.form-card{padding:23px 18px}.choice-grid{gap:7px}.choice{min-height:48px;font-size:10px;padding:7px}.footer-grid{gap:28px}.footer-bottom{margin-top:48px;flex-direction:column;gap:5px}}@media(max-width:390px){.brand-mark{display:none}.nav-cta{font-size:10px}.hero-art{height:310px}.choice-grid{grid-template-columns:1fr}.field-grid{grid-template-columns:1fr}.photo-placeholder{height:135px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
/* Individual service cards and illustrative stock gallery */
.service-tile{position:relative;min-height:214px;padding:27px 28px;border:1px solid #e3e9dd;border-radius:14px;background:#f6f5ec}
.service-tile:nth-child(3n+2){background:#eef1e8}
.service-tile:nth-child(3n){background:#f4ede4}
.service-tile:last-child{grid-column:span 2;background:#e7eee4}
.service-number{position:absolute;right:25px;top:23px;color:#a9b8a8;font:800 22px Manrope,sans-serif;letter-spacing:-.05em}
.service-tile .card-index{margin:0 45px 29px 0}
.service-tile h3{max-width:310px;margin:0 0 9px;font:800 20px/1.25 Manrope,sans-serif;letter-spacing:-.045em}
.service-tile>p:last-child{max-width:340px;margin:0;color:var(--muted);font-size:13px;line-height:1.65}
.work-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.work-intro{grid-column:1/-1;padding:0 0 4px}
.work-intro h3{margin:9px 0 5px}
.work-intro p{max-width:580px}
.work-photo{position:relative;height:225px;margin:0;border-radius:12px;overflow:hidden;background:#dce5d9}
.work-photo img{display:block;width:100%;height:100%;object-fit:cover}
.work-photo figcaption{position:absolute;left:12px;bottom:12px;padding:8px 12px;border-radius:5px;background:#fffdf8;color:var(--ink);font-size:12px;font-weight:800;box-shadow:0 3px 14px #0002}
@media(max-width:700px){.service-tile{min-height:0;padding:24px}.service-tile:last-child{grid-column:span 1}.work-strip{grid-template-columns:1fr;gap:12px}.work-intro{grid-column:auto}.work-photo{height:220px}}
/* Old English wordmark; body text stays readable. */
.brand-words strong,.footer-brand{font-family:'UnifrakturCook',Georgia,serif;font-weight:700;letter-spacing:0}
.brand-words strong{font-size:29px}
.footer-brand{font-size:38px}
@media(max-width:700px){.brand-words strong{font-size:25px}}
/* Service and example cards */
.service-tile{min-height:205px;padding:26px 28px;background:#f6f5ec;border:1px solid #ebeee4;border-radius:15px}
.service-tile:nth-child(3n+2){background:#eef1e8}
.service-tile:nth-child(3n){background:#f4ede4}
.service-number{display:block;margin-bottom:18px;color:#9c715d;font:800 12px Manrope,sans-serif}
.service-tile h3{margin:10px 0;font:800 21px/1.25 Manrope,sans-serif;letter-spacing:-.04em}
.service-tile>p:last-child{margin:0;color:var(--muted);font-size:15px;line-height:1.6}
.work-photo{position:relative;min-height:230px;margin:0;overflow:hidden;border-radius:12px;background:#dce5d9}
.work-photo img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}
.work-photo figcaption{position:absolute;left:12px;bottom:12px;padding:6px 10px;border-radius:6px;background:#fffdf8;color:var(--ink);font-size:13px;font-weight:800}
.result-actions{flex-wrap:wrap}
.estimate-note a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){.service-tile{min-height:0}.work-photo{min-height:170px}}
