@font-face{font-family:Inter;src:local('Inter');font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:#f7f5f0;color:#252b29;font:16px/1.65 Inter,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;max-width:100%;height:auto}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #a44135;outline-offset:5px}input:focus,select:focus,textarea:focus{outline:2px solid #9e4034;outline-offset:2px}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:#fff;padding:15px}.skip:focus{top:10px}.shell{width:min(1320px,calc(100% - 96px));margin:auto}.header{position:sticky;top:0;z-index:20;background:#f7f5f0f5;border-bottom:1px solid #dcdcd2;backdrop-filter:blur(15px)}.header-inner{height:96px;display:flex;align-items:center;gap:35px}.brand{display:flex;align-items:center;gap:13px;margin-right:auto;line-height:1.2}.brand img{height:58px;width:43px;object-fit:contain}.brand strong{font-size:17px;letter-spacing:1.2px}.brand small{display:block;font-size:9px;text-transform:uppercase;letter-spacing:2px;margin-top:7px}.nav{display:flex;align-items:center;gap:29px;font-size:13px}.nav a{position:relative;padding:12px 0}.nav a[aria-current=page]:after{content:'';position:absolute;bottom:3px;left:0;width:22px;height:2px;background:#a44135}.header-cta{font-size:12px;padding:13px 19px;background:#a44135;color:#fff;display:flex;gap:28px;align-items:center}.menu-toggle{display:none;border:0;background:none;font-size:24px}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;display:flex;align-items:center;gap:12px;margin:0 0 25px}.eyebrow:before{content:'';width:28px;height:1px;background:currentColor}.hero{position:relative;min-height:640px;height:calc(100svh - 96px);max-height:900px;isolation:isolate;background:#303c30;color:white}.hero>.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 43%;z-index:-2}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#111d19b8 0%,#15201c4d 52%,#15201c00 100%),linear-gradient(0deg,#15201c80,transparent 35%);z-index:-1}.hero-content{padding-top:clamp(70px,10vh,145px)}h1,h2,h3{font-weight:400;line-height:1.1;margin:0;font-family:Georgia,'Times New Roman',serif}h1{font-size:clamp(48px,5.4vw,84px);letter-spacing:-2px}h2{font-size:clamp(36px,4vw,58px);letter-spacing:-1.5px}h3{font-size:30px;letter-spacing:-.6px}.hero h1{max-width:850px}.hero h1 em{color:#e1cdb9;font-weight:400}.hero-copy{font-size:16px;line-height:1.8;max-width:475px;margin:27px 0 30px;color:#eee}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;padding:16px 24px;background:#a44135;color:white;font-size:13px;border:1px solid #a44135;line-height:1.5;transition:background .2s}.button:hover{background:#803328}.button.light{background:#f7f5f0;color:#252b29;border-color:#f7f5f0}.button.outline{background:transparent;color:inherit;border:1px solid #858e86}.button-row{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.text-link{font-size:13px;border-bottom:1px solid currentColor;padding-bottom:6px;display:inline-flex;align-items:center;gap:30px}.hero .text-link{color:white}.hero-bottom{position:absolute;bottom:34px;left:0;right:0;display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.4px;text-transform:uppercase}.hero-bottom span:first-child{display:flex;gap:13px;align-items:center}.hero-bottom i{width:5px;height:5px;background:#bfa88e;border-radius:100%}.trustbar{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid #dcdcd2;padding:25px 0;gap:40px}.trustbar div{display:flex;align-items:center;gap:16px;font-size:12px}.trustbar span{font:24px Georgia;color:#a44135}.section{padding:104px 0}.section-top{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:45px}.section-top h2{max-width:690px}.section-top p{max-width:370px;margin:0;color:#687069}.intro-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:100px;align-items:start}.intro-grid h2{max-width:620px}.intro-grid p{margin:0 0 24px;color:#5c645d}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:65px;border-top:1px solid #d4d7cd}.service{padding:35px 34px 32px 0;border-right:1px solid #d4d7cd;display:flex;flex-direction:column;align-items:start}.service+ .service{padding-left:34px}.service:last-child{border-right:0}.number{font-size:11px;letter-spacing:1px;color:#a44135}.service h3{margin:35px 0 18px}.service p{color:#687069;font-size:14px;max-width:300px;margin:0 0 28px}.service .text-link{margin-top:auto}.project-section{background:#eaece4}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px 30px}.project-card{display:block}.project-card .image-wrap{overflow:hidden;position:relative;background:#ddd}.project-card img{width:100%;height:365px;object-fit:cover;transition:transform .6s}.project-card:hover img{transform:scale(1.035)}.project-card .arrow-badge{position:absolute;bottom:20px;right:20px;background:#f7f5f0;width:45px;height:45px;display:grid;place-items:center;font-size:20px}.project-meta{display:flex;justify-content:space-between;gap:20px;margin-top:20px}.project-meta h3{font-size:28px}.project-meta p{margin:8px 0 0;font-size:11px;letter-spacing:1.2px;text-transform:uppercase;color:#687069}.about-teaser{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.portrait-frame{position:relative;padding:0 60px 0 0}.portrait-frame img{width:100%;height:570px;object-fit:cover}.portrait-label{position:absolute;right:0;bottom:35px;background:#a44135;color:white;padding:25px 35px;min-width:230px}.portrait-label strong{font:27px Georgia;display:block}.portrait-label small{font-size:10px;text-transform:uppercase;letter-spacing:1.3px}.about-copy p{color:#687069;margin:25px 0}.quote{font:27px/1.4 Georgia;color:#383e36!important;border-left:1px solid #a44135;padding-left:23px}.dark{background:#28382f;color:#f7f5f0}.dark .eyebrow{color:#c7b29a}.method-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:35px;margin-top:60px}.method{border-top:1px solid #647267;padding-top:22px}.method .number{color:#c7b29a}.method h3{font-size:26px;margin:24px 0 15px}.method p{font-size:13px;color:#c6cdc6}.location-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.location-grid p{color:#687069}.towns{display:flex;flex-wrap:wrap;gap:10px;align-content:center}.towns span{padding:12px 17px;border:1px solid #ced2c6;font-size:12px}.contact-strip{background:#a44135;color:#fff;padding:70px 0}.contact-strip .shell{display:flex;justify-content:space-between;align-items:center;gap:50px}.contact-strip h2{font-size:48px}.contact-strip p{color:#eddad2;margin:18px 0 0}.footer{padding:55px 0 25px;background:#edece6}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:60px}.footer p,.footer a{font-size:12px;line-height:1.9}.footer .brand{margin-bottom:20px}.footer .brand strong{font-size:15px}.footer h3{font:10px Arial;letter-spacing:2px;text-transform:uppercase;margin:12px 0 22px}.footer-links{display:flex;flex-direction:column;align-items:start}.footer a:hover{text-decoration:underline}.footer-bottom{margin-top:45px;padding-top:22px;border-top:1px solid #d2d4c9;display:flex;justify-content:space-between;gap:20px;color:#687069;font-size:10px}.mobile-call{display:none}.page-intro{padding:62px 0 72px;border-bottom:1px solid #dcdcd2}.breadcrumb{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:10px;color:#687069;margin-bottom:42px}.page-intro .eyebrow{color:#a44135}.page-intro h1{max-width:950px;font-size:clamp(45px,5vw,73px)}.lead{font-size:17px;color:#687069;max-width:690px;line-height:1.8;margin:25px 0 0}.page-intro .button{margin-top:28px}.wide-photo{width:100%;height:500px;object-fit:cover}.content-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:95px}.prose p,.prose li{color:#5c645d}.prose h2{font-size:39px;margin:0 0 25px}.prose h3{font-size:28px;margin:40px 0 18px}.prose ul{padding-left:20px}.prose li{margin:13px 0}.aside{padding:35px;background:#eaece4;align-self:start;position:sticky;top:125px}.aside h3{font-size:30px;margin-bottom:20px}.aside p{font-size:13px;color:#687069}.aside .button{margin-top:15px}.aside ul{padding-left:17px;font-size:13px;line-height:1.8}.full-service-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.full-service{border-top:1px solid #cbd0c5;padding:30px 0;display:block}.full-service h2{font-size:37px;margin:15px 0}.full-service p{color:#687069;max-width:490px}.detail-list{display:grid;grid-template-columns:1fr 1fr;gap:25px 55px;margin-top:35px}.detail-list h3{font-size:26px}.detail-list p{font-size:14px;color:#687069}.faq{max-width:850px;margin:auto}.faq h2{margin-bottom:40px}.faq details{border-top:1px solid #cbd0c5;padding:22px 0}.faq details:last-child{border-bottom:1px solid #cbd0c5}.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:30px;font-size:16px}.faq summary:after{content:'+';font-size:23px;color:#a44135}.faq details[open] summary:after{content:'−'}.faq p{color:#687069;font-size:14px;max-width:750px}.filters{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:35px}.filter{background:none;border:1px solid #cbd0c5;padding:10px 20px;color:#4b574d;font-size:12px}.filter[aria-pressed=true]{background:#28382f;color:#fff;border-color:#28382f}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.photo-button{padding:0;border:0;background:#ddd;position:relative;overflow:hidden}.photo-button img{width:100%;height:285px;object-fit:cover;transition:transform .3s}.photo-button:hover img{transform:scale(1.04)}.photo-button:after{content:'↗';position:absolute;right:12px;bottom:12px;color:white;background:#28382fc9;width:30px;height:30px;display:grid;place-items:center}.gallery-caption{font-size:12px;color:#687069;margin:20px 0 0}.project-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;border-top:1px solid #cbd0c5;border-bottom:1px solid #cbd0c5;padding:25px 0;margin-bottom:55px}.project-facts dt{font-size:10px;text-transform:uppercase;letter-spacing:1.8px;color:#687069}.project-facts dd{margin:8px 0 0;font-size:14px}.contact-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:90px}.contact-info h2{font-size:41px;margin-bottom:28px}.contact-info .phone{display:block;font:33px Georgia;margin:25px 0 10px}.contact-info>a:not(.phone){font-size:14px;text-decoration:underline}.contact-info h3{font:11px Arial;letter-spacing:1.8px;text-transform:uppercase;margin:35px 0 10px}.contact-info p{color:#687069;font-size:14px}.hours{font-size:12px;border-collapse:collapse;width:100%;max-width:380px}.hours td{padding:8px 0;border-bottom:1px solid #d6d9ce}.hours td:last-child{text-align:right}.contact-form{padding:42px;background:#eaece4}.contact-form h2{font-size:35px;margin-bottom:12px}.form-note{font-size:12px;color:#687069;margin:0 0 30px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field.full{grid-column:1/-1}.field label{font-size:11px;font-weight:600;display:block;margin-bottom:8px}.field input,.field select,.field textarea{width:100%;padding:13px 10px;background:#f7f5f0;border:1px solid #c1c8ba;border-radius:0;color:#252b29;font-size:14px}.field textarea{resize:vertical;min-height:125px}.consent{display:flex;align-items:start;gap:10px;font-size:11px;margin:22px 0;color:#596356}.consent input{width:17px;height:17px;accent-color:#a44135;margin:2px 0 0;flex-shrink:0}.consent a{text-decoration:underline}.contact-form button{width:100%}.form-result{margin-top:25px;background:#f7f5f0;padding:20px;font-size:13px}.form-result p{margin:0 0 18px}.form-result .button{margin-bottom:15px}.copy-status{min-height:22px;font-size:12px}.partner-images{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:40px}.partner-images img{width:100%;height:410px;object-fit:contain;background:white}.lightbox{border:0;background:#172019;color:#fff;width:92vw;max-width:1200px;max-height:95svh;padding:22px}.lightbox::backdrop{background:#111d19ed}.lightbox-bar{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:15px;font-size:12px}.lightbox button{background:none;color:#fff;border:1px solid #647267;padding:7px 15px}.lightbox-image{height:min(70svh,750px);width:100%;object-fit:contain}.lightbox-controls{display:flex;justify-content:space-between;margin-top:15px}.empty{padding:35px;font-size:14px}.legal-copy{max-width:800px}.legal-copy h2{font-size:30px;margin:38px 0 16px}.legal-copy p{color:#5c645d}.review-note{border-left:2px solid #a44135;padding:15px 20px;background:#eaece4;font-size:13px;line-height:1.7}.not-found{text-align:center;padding:100px 20px}[hidden]{display:none!important}@media(min-width:1500px){.hero-content{padding-top:14vh}}@media(max-width:1100px){.shell{width:calc(100% - 56px)}.header-inner{gap:20px}.nav{gap:19px}.header-cta{gap:20px}.brand strong{font-size:14px}.brand small{font-size:8px}.intro-grid,.about-teaser,.location-grid,.content-grid,.contact-layout{gap:50px}.portrait-frame{padding-right:30px}.hero h1{font-size:70px}.method-grid{gap:20px}.contact-form{padding:30px}.project-card img{height:300px}}@media(max-width:800px){.shell{width:calc(100% - 40px)}.header-inner{height:78px}.brand img{height:47px;width:35px}.brand strong{font-size:13px}.brand small{font-size:7px;letter-spacing:1.6px}.header-cta{display:none}.menu-toggle{display:block;padding:8px;line-height:1}.nav{display:none;position:absolute;left:0;right:0;top:78px;padding:25px 20px;background:#f7f5f0;border-bottom:1px solid #d4d7cd;box-shadow:0 20px 25px #0001;font-size:16px}.nav.open{display:flex;flex-direction:column;align-items:stretch;gap:4px}.nav a{padding:12px 0}.nav a[aria-current=page]:after{bottom:6px}.hero{min-height:690px;height:calc(100svh - 78px);max-height:850px}.hero>.hero-image{object-position:44% 43%}.hero:after{background:linear-gradient(90deg,#111d19b3,#15201c40),linear-gradient(0deg,#15201ca3,transparent)}.hero-content{padding-top:65px}.hero h1{font-size:clamp(47px,8vw,65px);letter-spacing:-1.6px;max-width:580px}.hero-copy{font-size:14px;max-width:370px}.hero .eyebrow{font-size:9px;letter-spacing:1.8px}.hero-bottom{font-size:8px;letter-spacing:1px;bottom:25px}.hero-bottom span:last-child{display:none}.button-row{gap:22px}.button{font-size:12px;padding:15px 21px;gap:25px}.trustbar{gap:15px;padding:22px 0}.trustbar div{font-size:10px;gap:9px;line-height:1.5}.trustbar span{font-size:20px}.section{padding:70px 0}.intro-grid,.about-teaser,.location-grid,.content-grid,.contact-layout{grid-template-columns:1fr;gap:35px}.intro-grid p{font-size:14px}.services-grid{margin-top:35px}.service{padding:25px 20px 25px 0}.service+.service{padding-left:20px}.service h3{font-size:26px}.service p{font-size:12px}.service .text-link{font-size:11px;gap:15px}.section-top{gap:25px}.section-top p{font-size:13px;max-width:270px}.section-top h2{font-size:40px}.project-grid{gap:35px 20px}.project-card img{height:240px}.project-meta h3{font-size:24px}.project-meta p{font-size:9px}.portrait-frame{max-width:550px}.portrait-frame img{height:520px}.about-copy h2{max-width:500px}.method-grid{grid-template-columns:1fr 1fr;gap:30px}.contact-strip .shell{align-items:start;flex-direction:column;gap:30px}.contact-strip h2{font-size:40px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-grid>div:first-child{grid-column:1/-1}.mobile-call{position:fixed;bottom:16px;right:16px;z-index:15;display:flex;align-items:center;gap:10px;padding:12px 18px;background:#28382f;color:#fff;box-shadow:0 4px 20px #0003;font-size:12px;border:1px solid #71806f}.footer{padding-bottom:75px}.page-intro{padding:30px 0 50px}.breadcrumb{margin-bottom:32px}.page-intro h1{font-size:49px}.lead{font-size:15px}.wide-photo{height:380px}.aside{position:static}.gallery{grid-template-columns:1fr 1fr;gap:12px}.photo-button img{height:240px}.full-service h2{font-size:30px}.detail-list{gap:25px}.contact-info .phone{font-size:29px}.partner-images{gap:12px}.partner-images img{height:300px}}@media(max-width:520px){.hero h1{font-size:48px}.hero{min-height:700px}.hero-content{padding-top:55px}.hero-copy{max-width:315px}.hero .button-row{align-items:start;flex-direction:column;gap:25px}.trustbar{grid-template-columns:1fr;gap:12px;padding:25px 0}.trustbar div{font-size:12px}.trustbar span{width:23px}.section-top{display:block}.section-top p,.section-top .text-link{margin-top:25px}.services-grid{grid-template-columns:1fr}.service,.service+.service{border-right:0;border-bottom:1px solid #d4d7cd;padding:25px 0;display:grid;grid-template-columns:30px 1fr;column-gap:15px}.service .number{grid-column:1;grid-row:1;margin-top:6px}.service h3{grid-column:2;margin:0 0 12px}.service p,.service .text-link{grid-column:2}.service p{font-size:14px;max-width:none;margin-bottom:15px}.service .text-link{font-size:12px;width:max-content}.project-grid{grid-template-columns:1fr;gap:35px}.project-card img{height:270px}.project-meta h3{font-size:28px}.portrait-frame img{height:440px}.portrait-label{padding:20px 25px;min-width:200px;bottom:25px}.portrait-label strong{font-size:24px}.method-grid{grid-template-columns:1fr;gap:20px}.method{display:grid;grid-template-columns:35px 1fr;column-gap:15px;padding-top:20px}.method .number{grid-column:1;grid-row:1;margin-top:5px}.method h3{grid-column:2;margin:0 0 5px}.method p{grid-column:2;margin:10px 0}.footer-grid{gap:30px 20px}.footer-bottom{flex-direction:column;gap:8px}.page-intro h1{font-size:43px;letter-spacing:-1.2px}.full-service-grid,.detail-list{grid-template-columns:1fr}.project-facts{grid-template-columns:1fr;gap:18px}.gallery{gap:9px}.photo-button img{height:170px}.contact-form{padding:25px 20px;margin:0 -20px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.contact-form h2{font-size:31px}.hours{max-width:none}.partner-images{grid-template-columns:1fr}.partner-images img{height:auto;max-height:550px}.hero-bottom{font-size:8px}.lightbox{padding:15px}.lightbox-image{height:65svh}.lightbox-bar{align-items:start}.lightbox-bar span{max-width:70%}.wide-photo{height:280px}h2{font-size:38px}.prose h2{font-size:33px}.contact-strip{padding:55px 0}.contact-strip h2{font-size:36px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

.portrait-frame .portrait-photo{object-position:54% 35%}

.qualifications{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}.qualifications span{display:inline-block;border:1px solid #cbd0c5;color:#7e342b;font-size:11px;letter-spacing:.4px;padding:9px 13px;line-height:1.5}

.field-error{color:#a44135;font-size:12px;margin:5px 0 0}.field-error:empty{display:none}.field[hidden]{display:none}.checkbox-field .consent{margin:6px 0}.checkbox-field input{width:17px;height:17px;flex-shrink:0}.contact-form button:disabled{opacity:.65;cursor:wait}#form-status{font-size:13px;color:#a44135;line-height:1.6}#form-success{outline:none}#form-success:focus{outline:2px solid #a44135;outline-offset:4px}

.checkbox-field label.consent{display:flex;align-items:flex-start;gap:10px}.checkbox-field input[type=checkbox]{padding:0;width:20px;height:20px;min-width:20px;margin:2px 0 0;accent-color:#a44135;cursor:pointer}
