:root{--cream:#f4f0e8;--paper:#fbf9f4;--ink:#191a16;--olive:#25291e;--olive2:#3d4230;--tan:#8b7655;--muted:#6e6a60;--rule:#d9d1c3;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.55}a{color:inherit;text-decoration:none}img{display:block;width:100%;object-fit:cover}.site-header{height:78px;background:var(--cream);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,5vw,76px);gap:28px;position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(30,30,25,.08)}.wordmark{display:flex;flex-direction:column;align-items:center;min-width:max-content;line-height:1}.wordmark span{font:400 clamp(19px,2.25vw,28px) var(--serif);letter-spacing:.12em;white-space:nowrap}.wordmark small{font-size:9px;letter-spacing:.34em;margin-top:7px}.main-nav{display:flex;align-items:center;gap:clamp(18px,3vw,44px);font-size:13px}.main-nav a,.site-footer nav a{transition:opacity .2s}.main-nav a:hover,.site-footer nav a:hover{opacity:.65}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;background:var(--tan);color:#fff;padding:14px 22px;font-size:13px;min-height:44px;transition:background .2s,transform .2s}.button:hover{background:#6f5c43;transform:translateY(-1px)}.button span{font-size:17px;line-height:1}.button-small{padding:12px 18px;min-height:40px}.button-dark{background:var(--olive)}.button-dark:hover{background:#444936}.menu-toggle{display:none;border:0;background:none;font-size:24px;color:var(--ink)}.hero{position:relative;min-height:570px;display:flex;align-items:center;overflow:hidden;background:var(--olive);color:#fff}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-position:center 45%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(25,28,20,.96) 0%,rgba(25,28,20,.9) 28%,rgba(25,28,20,.48) 49%,rgba(25,28,20,.04) 76%)}.hero-content{position:relative;z-index:1;width:min(520px,48%);padding:64px 0 54px clamp(28px,6.5vw,100px)}.eyebrow{font-size:10px;letter-spacing:.18em;margin:0 0 15px;text-transform:uppercase}.hero h1,.section-intro h2,.craft h2,.contact h2{font-family:var(--serif);font-weight:400;letter-spacing:-.035em;line-height:1.04;margin:0}.hero h1{font-size:clamp(42px,5vw,68px)}.hero-copy{max-width:365px;color:#e9e6df;margin:20px 0 23px}.hero-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap}.text-link{font-size:13px}.text-link span{margin-left:8px}.light-link{color:#fff}.hero-contact{display:grid;gap:7px;margin-top:24px;font-size:13px}.hero-contact a{display:flex;align-items:center;gap:12px;width:max-content}.hero-contact a span{font-size:21px;width:22px}.values{display:grid;grid-template-columns:repeat(4,1fr);background:var(--cream);padding:32px clamp(18px,5vw,70px)}.values article{text-align:center;padding:0 18px;border-right:1px solid #d3cbbb}.values article:last-child{border:0}.line-icon{display:block;font-size:30px;line-height:1.1;margin-bottom:9px}.values h2{font-size:11px;letter-spacing:.13em;font-weight:500;text-transform:uppercase;margin:0 0 5px}.values p{font-size:12px;color:#5f5b52;margin:0}.section-pad{padding:58px clamp(24px,5vw,74px)}.work{display:grid;grid-template-columns:minmax(190px,.8fr) 2.4fr;gap:32px;align-items:start}.dark-eyebrow{color:#5b574d}.section-intro h2,.contact h2{font-size:clamp(34px,4vw,48px)}.section-intro>p:not(.eyebrow){max-width:260px;color:#565249;font-size:14px;margin:15px 0 24px}.project-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.project-card img{height:clamp(155px,19vw,255px);object-position:center}.project-card h3{font-size:13px;font-weight:500;margin:10px 0 4px;display:flex;justify-content:space-between;gap:6px}.project-card h3 span{font-size:16px}.project-card p{font-size:11px;color:#6d685e;margin:0}.craft{display:grid;grid-template-columns:minmax(270px,.8fr) 1.6fr;background:var(--olive);color:white}.craft-copy{padding:50px clamp(28px,6.5vw,95px)}.craft h2{font-size:clamp(38px,4.2vw,54px)}.craft-copy>p:not(.eyebrow){color:#e4e1d8;max-width:350px;font-size:14px;margin:17px 0 24px}.button-muted{background:#77745d}.button-muted:hover{background:#8c886c}.craft-images{display:grid;grid-template-columns:1fr 1fr;min-height:330px}.craft-images img{height:100%;min-height:330px;max-height:460px}.contact{display:grid;grid-template-columns:1fr 1.15fr;gap:36px;align-items:center;background:var(--cream)}.contact-intro{padding-right:24px}.contact h2{margin-bottom:13px}.contact-intro>p:not(.eyebrow){max-width:400px;color:#5e594f;margin:0 0 20px}.contact-details{border-left:1px solid var(--rule);padding:20px 0 20px 30px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}.contact-item{display:flex;align-items:flex-start;gap:12px;min-width:0}.contact-icon{font-size:24px;line-height:1.2}.contact-item strong,.contact-item small{display:block;overflow-wrap:anywhere}.contact-item strong{font-size:12px;font-weight:500}.contact-item small{font-size:11px;color:#6e695f;margin-top:3px}.site-footer{background:var(--olive);color:white;padding:28px clamp(24px,5vw,74px);display:flex;align-items:center;justify-content:space-between;gap:25px}.footer-wordmark span{font-size:22px}.footer-wordmark small{font-size:8px}.site-footer nav{display:flex;gap:clamp(12px,2.5vw,32px);font-size:12px}.footer-email{font-size:12px;border-bottom:1px solid #898b7c;padding-bottom:4px;white-space:nowrap}
@media(min-width:1500px){.hero{min-height:650px}.hero-content{padding-left:max(100px,calc((100vw - 1380px)/2))}.section-pad{padding-left:max(74px,calc((100vw - 1380px)/2));padding-right:max(74px,calc((100vw - 1380px)/2))}}
@media(max-width:900px){.site-header{gap:15px;padding-inline:22px}.main-nav{gap:15px;font-size:12px}.header-cta{padding:10px 12px}.wordmark span{font-size:20px}.hero{min-height:525px}.hero-content{width:55%;padding-left:5vw}.work{grid-template-columns:1fr;gap:24px}.section-intro{max-width:550px}.section-intro>p:not(.eyebrow){max-width:420px}.project-card img{height:clamp(180px,28vw,250px)}.craft-copy{padding:40px 30px}.contact{grid-template-columns:1fr;gap:25px}.contact-details{border-left:0;border-top:1px solid var(--rule);padding:25px 0 0}.site-footer{flex-wrap:wrap}.site-footer nav{order:3;width:100%;justify-content:center}}
@media(max-width:620px){html{scroll-padding-top:72px}.site-header{height:70px;padding-inline:16px}.wordmark span{font-size:17px;letter-spacing:.09em}.wordmark small{font-size:7px;letter-spacing:.27em}.menu-toggle{display:block;margin-left:auto}.main-nav{display:none;position:absolute;top:69px;left:0;right:0;background:var(--cream);padding:18px 22px 22px;flex-direction:column;align-items:flex-start;gap:16px;border-top:1px solid var(--rule);box-shadow:0 12px 20px #00000010}.main-nav.open{display:flex}.header-cta{font-size:11px;padding:10px 11px;min-height:36px}.hero{min-height:690px;align-items:flex-end}.hero-image{object-position:58% center}.hero-shade{background:linear-gradient(0deg,rgba(25,28,20,.98) 0%,rgba(25,28,20,.85) 42%,rgba(25,28,20,.25) 100%)}.hero-content{width:100%;padding:230px 24px 32px}.hero h1{font-size:48px}.hero-copy{font-size:14px;max-width:330px}.hero-actions{gap:18px}.hero-contact{margin-top:22px}.values{grid-template-columns:repeat(2,1fr);padding:22px 12px;row-gap:22px}.values article{padding:0 7px}.values article:nth-child(2){border-right:0}.values article:nth-child(3){border-right:1px solid #d3cbbb}.values p{font-size:11px}.section-pad{padding:40px 20px}.section-intro h2,.contact h2{font-size:38px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 12px}.project-card img{height:clamp(175px,53vw,260px)}.project-card h3{font-size:12px}.craft{grid-template-columns:1fr}.craft-copy{padding:38px 24px}.craft-images{min-height:240px}.craft-images img{min-height:240px;max-height:320px}.contact-details{grid-template-columns:1fr;gap:18px}.site-footer{padding:26px 20px;justify-content:center}.site-footer nav{gap:14px;flex-wrap:wrap;font-size:11px}.footer-email{display:none}.footer-wordmark{width:100%;margin-bottom:3px}.desktop-break{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
