:root{--ink:#20201e;--paper:#f5f2eb;--accent:#b78a54;--white:#fff;--muted:#77736c}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.65}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;line-height:1.05;margin:0 0 .55em}h1{font-size:clamp(3.5rem,8vw,7rem);font-weight:400;letter-spacing:-.055em}h2{font-size:clamp(2.5rem,5vw,4.7rem);font-weight:400;letter-spacing:-.035em}h3{font-size:1.8rem}p{margin:0 0 1.1rem}.site-header{height:90px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;background:rgba(245,242,235,.94);position:sticky;top:0;z-index:10;border-bottom:1px solid #dcd7cd}.brand img{width:115px;height:auto;display:block}.site-header nav{display:flex;gap:2.2rem}.site-header nav a{color:var(--ink);text-decoration:none;font-size:.92rem;text-transform:uppercase;letter-spacing:.08em}.site-header nav a:hover{color:var(--accent)}.menu{display:none;border:0;background:transparent;font:inherit}.hero{min-height:calc(100vh - 90px);display:grid;grid-template-columns:1fr 1.05fr}.hero-copy{padding:8vw 6vw 7vw;display:flex;flex-direction:column;justify-content:center}.hero-copy p{font-size:1.15rem;max-width:580px}.hero-image{background:linear-gradient(90deg,rgba(32,32,30,.12),transparent),url('/assets/images/hero.jpg') center/cover no-repeat}.eyebrow{display:block;text-transform:uppercase;letter-spacing:.16em;color:var(--accent);font-weight:700;font-size:.78rem;margin-bottom:1.4rem}.button{display:inline-block;align-self:flex-start;margin-top:1.2rem;background:var(--ink);color:#fff;text-decoration:none;padding:1rem 1.35rem;text-transform:uppercase;letter-spacing:.08em;font-size:.82rem}.section{padding:8rem 7vw}.story{display:grid;grid-template-columns:.9fr 1fr;gap:9vw}.prose{font-size:1.08rem}.dark{background:#242421;color:#fff}.dark .intro{max-width:850px}.dark .intro p,.lead{font-size:1.15rem;max-width:850px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#55524c;margin-top:5rem}.steps article{background:#242421;padding:2.2rem}.steps b{color:var(--accent);font-weight:400}.projects{margin-top:4rem}.project{display:grid;grid-template-columns:minmax(280px,.8fr) 1.2fr;gap:4vw;align-items:center;padding:2rem 0;border-top:1px solid #ccc5b9}.project:last-child{border-bottom:1px solid #ccc5b9}.project img{width:100%;height:310px;object-fit:cover}.project span{text-transform:uppercase;color:var(--accent);font-size:.75rem;letter-spacing:.12em}.gallery{display:grid;grid-template-columns:1fr 1fr;height:60vh}.gallery img{width:100%;height:100%;object-fit:cover}.contact{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:center}.contact-card{border-left:1px solid #beb7aa;padding-left:3rem}.contact-card a{display:block;color:var(--ink);font-family:Georgia,'Times New Roman',serif;font-size:1.75rem;text-decoration:none;margin-bottom:.5rem}footer{background:#171715;color:#d9d4ca;padding:3rem 6vw;display:grid;grid-template-columns:150px 1fr auto;align-items:center;gap:3rem;font-size:.85rem}footer img{width:120px;filter:brightness(0) invert(1)}footer p{margin:0}@media(max-width:800px){.site-header{height:74px}.menu{display:block}.site-header nav{display:none;position:absolute;top:74px;left:0;right:0;background:var(--paper);padding:1.5rem 6vw;flex-direction:column;border-bottom:1px solid #ccc}.site-header nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-copy{padding:5rem 7vw}.hero-image{min-height:52vh;order:-1}.story,.contact{grid-template-columns:1fr}.steps{grid-template-columns:1fr}.project{grid-template-columns:1fr}.project img{height:260px}.gallery{height:auto;grid-template-columns:1fr}.gallery img{height:45vh}.section{padding:5rem 7vw}footer{grid-template-columns:1fr;gap:1rem}}
