@font-face{font-family:DM;src:url('fonts/manrope-variable.ttf') format('truetype');font-display:swap}@font-face{font-family:Cardo;src:url('fonts/cormorant-infant-variable.ttf') format('truetype');font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#ebe9e3;color:#1c2824;font:16px/1.55 DM,Arial,sans-serif;overflow-x:hidden}img{width:100%;height:100%;object-fit:cover;display:block}a{color:inherit}.skip{position:fixed;left:1rem;top:-5rem;z-index:99;min-height:44px;padding:.65rem 1rem;background:#fff;color:#111}.skip:focus{top:1rem}header{position:absolute;inset:0 0 auto;z-index:10;height:84px;display:flex;justify-content:space-between;align-items:center;padding:0 clamp(1.25rem,5vw,5rem);border-bottom:1px solid #ffffff55;color:#fff}.brand{text-transform:uppercase;letter-spacing:.12em;text-decoration:none;font-weight:700}.brand span{font-weight:400;margin-left:.5rem}nav{display:flex;gap:2rem}nav a{text-decoration:none;text-transform:uppercase;font-size:.72rem;letter-spacing:.14em}.menu,.drawer{display:none}.hero{min-height:100svh;background:#1b2925;color:#fff;position:relative;display:grid;place-items:center;text-align:center;overflow:hidden}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(#10201dc7,#10201d82)}.hero figure{position:absolute;inset:0;margin:0}.hero-copy{position:relative;z-index:2;max-width:min(90%,950px);padding-top:6rem}.kicker{text-transform:uppercase;letter-spacing:.16em;font-size:.7rem}.hero h1{font:400 clamp(3.4rem,8.2vw,8rem)/.92 Cardo,Georgia,serif;margin:1.2rem auto;max-width:11ch}.hero-copy>p:last-of-type{max-width:600px;margin:0 auto}.button,.contact button{display:inline-flex;margin-top:2rem;padding:1rem 1.4rem;background:#d8b98b;color:#17241f;text-decoration:none;border:0;text-transform:uppercase;letter-spacing:.12em;font-size:.7rem}.about,.projects,.process{padding:clamp(5rem,10vw,10rem) max(5vw,calc((100vw - 1180px)/2))}.number{display:flex;gap:1rem;align-items:baseline;text-transform:uppercase;letter-spacing:.12em;font-size:.7rem}.number b{font:400 3rem Cardo}.about-head{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.7fr);gap:8vw;margin:3rem 0 7rem}.about h2,.projects h2,.process h2,.contact h2{font:400 clamp(2.8rem,5vw,5.5rem)/.95 Cardo;margin:0}.about-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:9vw}.about article:nth-child(2){padding-top:12rem}.about article img{height:clamp(320px,45vw,620px);margin:2rem 0 1rem}.about small,.project-grid span{text-transform:uppercase;letter-spacing:.12em;font-size:.65rem}.projects{background:#14211d;color:#f5f1e8}.projects-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4rem}.right{align-self:start}.lead{max-width:430px;margin:3rem 0 6rem}.project-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw 5vw}.project-grid figure{margin:0}.project-grid .p2{margin-top:10rem}.project-grid .p3{width:76%;justify-self:end}.project-grid .p4{margin-top:8rem}.project-grid img{height:clamp(300px,42vw,620px)}figcaption{display:flex;justify-content:space-between;margin-top:1rem;font:400 1.3rem Cardo}.process{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:8vw;background:#d9d2c5}.process>img{min-height:750px}.process ol{list-style:none;padding:0;margin:4rem 0 0}.process li{display:grid;grid-template-columns:3rem 1fr;gap:1rem;border-top:1px solid #1c282444;padding:1.5rem 0}.process h3{font:400 1.7rem Cardo;margin:0}.process li p{margin:.3rem 0}.contact{padding:clamp(6rem,11vw,11rem) 5vw;background:#0e1916 url('images/project-1.jpg') center/cover;color:#fff}.contact>div{max-width:620px;padding:clamp(2rem,6vw,5rem);background:#14211de8}.contact button{opacity:.75}footer{display:flex;justify-content:space-between;gap:2rem;background:#0e1916;color:#ffffff99;padding:2rem 5vw;font-size:.7rem}.drawer{position:fixed;inset:0;z-index:50;background:#14211d;color:#fff;padding:6rem 2rem;flex-direction:column;gap:2rem}.drawer:not([hidden]){display:flex}.drawer a{font:400 2.5rem Cardo}.close{position:absolute;right:1rem;top:1rem;min-width:48px;min-height:48px}.sr{position:absolute;width:1px;height:1px;overflow:hidden}
@media(max-width:760px){header nav{display:none}.menu{display:flex;width:48px;height:48px;background:transparent;border:0;flex-direction:column;justify-content:center;gap:6px}.menu span{width:24px;height:1px;background:#fff}.hero h1{font-size:clamp(3rem,15vw,4.3rem)}.about-head,.about-grid,.projects-head,.project-grid,.process{grid-template-columns:minmax(0,1fr)}.about article:nth-child(2),.project-grid .p2,.project-grid .p4{padding-top:0;margin-top:2rem}.project-grid .p3{width:100%}.process>img{min-height:420px}.projects-head{gap:2rem}.lead{margin-bottom:3rem}footer{flex-direction:column}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.hero-copy{padding-bottom:8rem}.hero h1{font-family:DM,Arial,sans-serif;font-weight:500;font-size:clamp(3.1rem,6.6vw,6.8rem);line-height:.94;letter-spacing:-.055em;max-width:12ch}.hero-stats{position:absolute;z-index:3;left:50%;bottom:2.5rem;transform:translateX(-50%);width:min(86%,780px);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3rem}.hero-stats div{display:grid;gap:.25rem}.hero-stats b{font:500 2rem DM,Arial,sans-serif}.hero-stats span{font-size:.68rem;color:#ffffffb8}.hero .button{background:#f4f0e7}
@media(max-width:760px){.hero h1{font-size:clamp(2.8rem,13vw,4.1rem)}.hero-copy{padding-bottom:9rem}.hero-stats{gap:.7rem;width:90%}.hero-stats b{font-size:1.4rem}}

/* Luzen source fidelity: inset translucent navigation and separate contact pill. */
header{inset:1rem 5% auto;height:64px;border:1px solid #ffffff2e;border-radius:.9rem;background:#3a332aa8;backdrop-filter:blur(14px);padding:0 1rem 0 1.35rem}
header nav{position:absolute;left:50%;transform:translateX(-50%)}
.header-cta{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 1.25rem;border-radius:.7rem;background:#f7f3eb;color:#17241f;text-decoration:none;text-transform:uppercase;letter-spacing:.12em;font-size:.68rem}
.hero h1{max-width:18ch;font-size:clamp(3.1rem,5.7vw,6rem)}
@media(max-width:760px){header{inset:.75rem 1rem auto}.header-cta,header nav{display:none}.hero h1{max-width:12ch;font-size:clamp(2.8rem,13vw,4.1rem)}}

/* Brand fidelity: official client logo */
.client-logo{display:block;width:auto;max-width:min(240px,42vw);height:clamp(34px,4vw,54px);object-fit:contain;object-position:left center}footer .client-logo{height:clamp(30px,3vw,44px);max-width:min(220px,48vw)}
header .client-logo{width:min(280px,30vw);height:auto;max-width:none;filter:invert(1) grayscale(1) brightness(2)}
