@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--cream:#f6f3ec;--paper:#fbfaf7;--ivory:#ece7dd;--ink:#292821;--muted:#69675f;--line:#d7d1c7;--brass:#9b7952;--brass-dark:#7a5b39;--dark:#262a27;--serif:'Libre Caslon Display',Georgia,'Times New Roman',serif;--sans:'DM Sans',Arial,sans-serif;--container:1230px}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.8;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}::selection{background:#cfb99b;color:#1b1b1b}.skip-link{position:absolute;z-index:1000;top:-60px;left:20px;background:#fff;padding:12px}.skip-link:focus{top:10px}.site-header{height:96px;position:relative;z-index:100;display:flex;align-items:center;background:rgba(250,248,243,.98);border-bottom:1px solid rgba(60,56,48,.13)}.site-header.is-stuck{position:sticky;top:0;box-shadow:0 7px 28px #2221}.shell{max-width:var(--container);margin:auto;padding:0 30px}.header-inner{width:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;flex:0 0 auto}.brand img{width:238px;height:auto;mix-blend-mode:multiply}.main-nav{display:flex;align-items:center;gap:25px}.main-nav a:not(.btn){font-weight:600;font-size:11px;letter-spacing:.105em;text-transform:uppercase;transition:color .2s}.main-nav a:hover,.main-nav a.active{color:var(--brass-dark)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:47px;padding:12px 23px;border:1px solid transparent;background:var(--ink);color:#fff;font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;line-height:1.4;transition:background .25s,transform .25s,border-color .25s}.btn:hover{background:var(--brass-dark);transform:translateY(-2px)}.btn-outline{background:transparent;border-color:currentColor;color:inherit}.btn-outline:hover{background:var(--ink);border-color:var(--ink);color:#fff}.btn-light{background:var(--cream);color:var(--ink)}.btn-light:hover{color:#fff}.nav-toggle{display:none;border:1px solid var(--line);background:transparent;width:45px;height:42px;align-items:center;justify-content:center;font-size:23px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--brass-dark)}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.05;letter-spacing:-.025em}h1{font-size:clamp(58px,7.3vw,105px)}h2{font-size:clamp(42px,5vw,69px)}h3{font-size:clamp(29px,3.1vw,43px)}p{color:var(--muted)}.lead{font-size:17px;max-width:610px;line-height:1.8}.hero{position:relative;min-height:680px;height:min(80vh,830px);display:flex;align-items:center;overflow:hidden;background:#45443f;color:#fff}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,22,18,.70),rgba(20,22,18,.26) 60%,rgba(20,22,18,.14)),url('../images/brown-hero.webp') center 56%/cover no-repeat;transform:scale(1.025)}.hero .shell{position:relative;width:100%}.hero-content{max-width:720px;padding:65px 0}.hero .eyebrow{color:#dfcdb9}.hero h1{margin:22px 0 24px;font-size:clamp(60px,7.6vw,108px)}.hero p{max-width:535px;color:#eeeae1;font-size:17px;line-height:1.8}.hero-actions{display:flex;gap:15px;flex-wrap:wrap;margin-top:33px}.hero .btn-outline:hover{background:#fff;color:var(--ink);border-color:#fff}.hero-caption{position:absolute;bottom:24px;right:40px;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:#fff9}.ribbon{background:#eee9df;border-bottom:1px solid var(--line);padding:23px 0;text-align:center;text-transform:uppercase;font-size:10px;letter-spacing:.23em;font-weight:700;color:#686156}.ribbon span{padding:0 20px;color:#b29778}.section{padding:116px 0}.section-muted{background:var(--cream)}.section-dark{background:var(--dark);color:var(--cream)}.section-dark p{color:#c6c7c1}.section-intro{max-width:770px;margin:0 auto 48px;text-align:center}.section-intro h2{margin:16px 0 16px}.section-intro p{margin-left:auto;margin-right:auto}.split{display:grid;grid-template-columns:1.03fr .97fr;gap:min(9vw,110px);align-items:center}.split.reverse{grid-template-columns:.95fr 1.05fr}.split.reverse .split-copy{order:1}.split.reverse .split-photo{order:2}.split-photo{height:610px;object-fit:cover;width:100%}.split-photo.short{height:525px}.split-copy h2{margin:13px 0 25px}.split-copy p{max-width:510px}.text-link{display:inline-flex;align-items:center;gap:13px;color:var(--brass-dark);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;border-bottom:1px solid var(--brass);padding-bottom:7px;transition:gap .2s}.text-link:hover{gap:20px}.services-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px}.service-card{background:#fff;overflow:hidden}.service-card img{height:370px;width:100%;object-fit:cover}.service-card-copy{padding:35px 37px 39px}.service-card h3{margin:8px 0 15px}.service-card p{max-width:440px}.grid-head{display:flex;justify-content:space-between;align-items:end;gap:22px;margin-bottom:38px}.grid-head h2{margin:10px 0 0}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.project-card{display:block}.project-thumb{height:360px;width:100%;object-fit:cover;transition:transform .5s}.project-frame{overflow:hidden;background:var(--ivory)}.project-card:hover .project-thumb{transform:scale(1.035)}.project-card h3{font-size:29px;margin:18px 0 5px}.project-card .smallcaps,.smallcaps{font-size:10px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--brass-dark)}.dark-feature{display:grid;grid-template-columns:1fr 1fr;min-height:565px}.dark-feature img{height:100%;width:100%;object-fit:cover}.dark-feature-copy{padding:90px min(8vw,118px);align-self:center}.dark-feature h2{margin:17px 0 25px}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:29px;margin-top:65px}.process-item{border-top:1px solid var(--line);padding-top:25px}.process-num{font-family:var(--serif);font-size:42px;line-height:1;color:var(--brass);margin-bottom:30px}.process-item h3{font-size:28px;margin:0 0 12px}.process-item p{font-size:14px}.contact-grid{display:grid;grid-template-columns:.76fr 1.24fr;gap:min(8vw,105px)}.contact-form{background:#fff;padding:38px;border:1px solid #e9e5df}.fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:18px}.field.full{grid-column:1/-1}.field label{font-size:10px;text-transform:uppercase;letter-spacing:.13em;font-weight:700;color:#514d46}.field input,.field select,.field textarea{border:1px solid #d5d1c8;background:#fcfbf8;color:#343229;width:100%;border-radius:0;padding:12px 13px;outline-offset:3px;font-size:14px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--brass)}.field textarea{min-height:120px;resize:vertical}.consent{display:flex;align-items:flex-start;gap:11px;margin:6px 0 19px;font-size:12px;color:var(--muted);line-height:1.6}.consent input{margin-top:3px;accent-color:#826a4b}.contact-form .btn{width:100%}.form-note{font-size:11px;margin:15px 0 0}.form-error{color:#9b3131}.hide-field{position:absolute!important;left:-9999px!important;opacity:0!important}.site-footer{background:#20231f;padding:70px 0 30px;color:#f4f0e8}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px}.footer-brand{font-family:var(--serif);font-size:38px;line-height:1.15}.footer-brand span{display:block;font-family:var(--sans);font-size:10px;letter-spacing:.24em;text-transform:uppercase;margin-top:7px}.site-footer p{color:#b9bab4;font-size:13px;max-width:360px}.site-footer h4{font-size:11px;letter-spacing:.2em;text-transform:uppercase;margin:6px 0 20px}.footer-links{display:flex;flex-direction:column;gap:8px;font-size:13px;color:#d2d1cc}.footer-links a:hover{color:#e6c9a8}.footer-bottom{border-top:1px solid #ffffff23;margin-top:60px;padding-top:24px;display:flex;gap:25px;justify-content:space-between;flex-wrap:wrap;font-size:11px;color:#a2a39e}.page-hero{min-height:430px;display:flex;align-items:center;position:relative;color:#fff;background:#393c37;overflow:hidden}.page-hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#1e231daa,#1e231d44),var(--page-img,url('../images/brown-hero.webp')) center/cover}.page-hero .shell{position:relative;width:100%;padding-top:68px;padding-bottom:68px}.page-hero h1{font-size:clamp(55px,7.4vw,93px);max-width:750px;margin:15px 0}.page-hero p{color:#f6f2e8;max-width:600px;font-size:16px}.narrow{max-width:780px;margin-left:auto;margin-right:auto}.quote-line{border-left:2px solid var(--brass);padding-left:30px;font-family:var(--serif);font-size:clamp(31px,3vw,47px);line-height:1.25;color:var(--ink)}.filter-row{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 40px}.filter-btn{background:transparent;border:1px solid var(--line);padding:9px 17px;text-transform:uppercase;letter-spacing:.13em;font-size:11px;color:var(--ink)}.filter-btn[aria-pressed=true],.filter-btn:hover{background:var(--ink);color:#fff;border-color:var(--ink)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery-item{cursor:pointer;position:relative;overflow:hidden;border:0;padding:0;background:#ddd;min-height:300px;text-align:left}.gallery-item img{width:100%;height:100%;min-height:300px;max-height:450px;object-fit:cover;transition:transform .4s}.gallery-item:hover img{transform:scale(1.045)}.gallery-item:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#16181288)}.gallery-item span{position:absolute;z-index:2;bottom:18px;left:20px;color:#fff;letter-spacing:.12em;font-weight:600;font-size:11px;text-transform:uppercase}.gallery-item[hidden]{display:none!important}.lightbox{position:fixed;z-index:500;inset:0;background:#10120fee;display:none;align-items:center;justify-content:center;padding:50px 60px}.lightbox.open{display:flex}.lightbox img{width:auto;max-width:100%;max-height:86vh;object-fit:contain}.lightbox button{position:absolute;right:23px;top:12px;border:0;background:none;color:#fff;font-size:35px}.lightbox-caption{color:#eee;position:absolute;bottom:17px;left:0;right:0;text-align:center;font-size:12px;letter-spacing:.12em}.simple-list{padding-left:20px;color:var(--muted)}.simple-list li{margin:10px 0}.privacy-copy h2{font-size:35px;margin-top:40px}.privacy-copy p{line-height:1.85}.thankyou{min-height:60vh;display:flex;align-items:center;text-align:center}.thankyou h1{font-size:70px}.cab-brand img{width:240px;height:auto;mix-blend-mode:multiply}.cab-hero{position:relative;height:min(76vh,770px);min-height:620px;display:flex;align-items:center;background:#32332e;color:#fff}.cab-hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#1e211bb5,#1e211b24),url('../images/brown-range.webp') center/cover}.cab-hero .shell{z-index:1;width:100%}.cab-hero h1{max-width:760px}.cab-hero .eyebrow{color:#e6d8c5}.detail-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.detail-strip img{width:100%;height:400px;object-fit:cover}.feature-lines{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.feature-lines article{padding:30px;border:1px solid var(--line)}.feature-lines article h3{margin-top:0;font-size:31px}.decor-rule{height:1px;width:70px;background:var(--brass);margin:28px 0}.fade-up{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s ease}.fade-up.visible{opacity:1;transform:none}
@media(max-width:1100px){.main-nav{gap:15px}.main-nav a:not(.btn){font-size:10px}.brand img{width:205px}.shell{padding:0 25px}.project-card h3{font-size:25px}.dark-feature-copy{padding:65px 50px}}
@media(max-width:850px){.site-header{height:80px}.nav-toggle{display:flex}.main-nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--paper);padding:28px 30px;box-shadow:0 19px 25px #0002;align-items:stretch;flex-direction:column;gap:18px}.main-nav.open{display:flex}.main-nav a:not(.btn){font-size:12px}.hero{min-height:630px;height:75vh}.split,.split.reverse,.dark-feature,.contact-grid{grid-template-columns:1fr;gap:45px}.split.reverse .split-photo,.split.reverse .split-copy{order:initial}.split-photo,.split-photo.short{height:470px}.dark-feature img{height:410px}.dark-feature-copy{padding:55px 30px 70px}.services-grid{gap:18px}.service-card img{height:290px}.service-card-copy{padding:25px}.project-grid,.gallery-grid{grid-template-columns:repeat(2,1fr)}.process-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1.5fr 1fr}.footer-grid>div:last-child{grid-column:1/-1}.detail-strip img{height:290px}}
@media(max-width:600px){.shell{padding:0 21px}.brand img{width:190px}.hero{min-height:620px;height:80vh}.hero h1{font-size:clamp(58px,12vw,78px)}.hero-content{padding-top:30px}.hero-caption{right:20px}.hero .btn{width:100%}.ribbon{font-size:9px;line-height:2.2;padding:13px 0}.ribbon span{padding:0 7px}.section{padding:73px 0}.split-photo,.split-photo.short{height:375px}.grid-head{align-items:start;flex-direction:column}.services-grid,.project-grid,.gallery-grid,.detail-strip,.feature-lines{grid-template-columns:1fr}.service-card img{height:270px}.project-thumb{height:340px}.project-card h3{font-size:29px}.process-grid{gap:24px}.contact-form{padding:22px}.fields{grid-template-columns:1fr;gap:0}.page-hero{min-height:345px}.footer-grid{grid-template-columns:1fr;gap:30px}.footer-grid>div:last-child{grid-column:auto}.footer-bottom{margin-top:40px}.lightbox{padding:40px 10px}.cab-hero{min-height:590px}.detail-strip img{height:340px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.fade-up{transition:none;opacity:1;transform:none}.project-thumb,.gallery-item img,.btn{transition:none}}
