:root{--ink:#161713;--paper:#eeece5;--fog:#d5d2c9;--oak:#a66d3f;--sand:#c5a57b;--white:#faf9f5;--line:rgba(22,23,19,.18);--pad:clamp(1.25rem,4.2vw,5rem);--display:Georgia,'Times New Roman',serif;--body:'Helvetica Neue',Helvetica,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.55}img,video{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:1000;background:var(--white);padding:.8rem 1rem}.skip-link:focus{top:1rem}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.68rem;font-weight:600;margin:0 0 1rem}.eyebrow.dark{color:#66645e}.section-pad{padding:clamp(5rem,10vw,10rem) var(--pad)}
.site-header{position:fixed;z-index:100;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:.7rem var(--pad);color:white;transition:background .3s,color .3s,padding .3s}.site-header.scrolled{background:rgba(238,236,229,.94);backdrop-filter:blur(16px);color:var(--ink);padding-block:.35rem;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center}.brand-logo{display:block;width:clamp(138px,10.5vw,172px);height:auto;background:#afa89a}.site-header.scrolled .brand-logo{width:132px}.main-nav{display:flex;align-items:center;gap:clamp(1.3rem,2.8vw,3rem);font-size:.72rem;text-transform:uppercase;letter-spacing:.13em}.main-nav a{position:relative}.main-nav a:not(.nav-cta)::after{content:'';position:absolute;left:0;bottom:-.4rem;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .25s}.main-nav a:hover::after,.main-nav a:focus-visible::after{transform:scaleX(1);transform-origin:left}.nav-cta{border:1px solid currentColor;padding:.8rem 1.1rem}.menu-toggle{display:none;background:none;border:0;color:inherit;padding:.5rem}.menu-toggle span:not(.sr-only){display:block;width:24px;height:1px;background:currentColor;margin:5px}
.hero{position:relative;min-height:100svh;background:#171812;color:white;overflow:hidden}.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,9,7,.78) 0%,rgba(8,9,7,.26) 60%,rgba(8,9,7,.16)),linear-gradient(0deg,rgba(8,9,7,.6),transparent 48%)}.hero-copy{position:absolute;left:var(--pad);top:50%;transform:translateY(-43%);max-width:850px}.hero h1{font-family:var(--display);font-weight:400;font-size:clamp(4rem,10vw,9.5rem);line-height:.78;letter-spacing:-.065em;margin:.15em 0 .3em}.hero h1 em,.projects h2 em{font-weight:400;color:var(--sand)}.hero-lead{max-width:520px;font-size:clamp(1rem,1.5vw,1.3rem);color:rgba(255,255,255,.83)}.hero-actions{display:flex;align-items:center;gap:2rem;margin-top:2.5rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:.8rem;border:1px solid transparent;padding:1rem 1.35rem;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:600;cursor:pointer;transition:background .2s,color .2s,border .2s}.button-light{background:var(--white);color:var(--ink)}.button-light:hover{background:var(--sand)}.button-dark{background:var(--ink);color:white}.button-dark:hover{background:var(--oak)}.button-outline{border-color:var(--ink)}.text-link{font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;border-bottom:1px solid;padding-bottom:.35rem}.text-link-light{color:white}.hero-index{position:absolute;right:var(--pad);bottom:2.2rem;display:flex;gap:2rem;font-size:.62rem;text-transform:uppercase;letter-spacing:.18em}.scroll-cue{position:absolute;left:var(--pad);bottom:2rem;display:flex;align-items:center;gap:1rem;text-transform:uppercase;font-size:.62rem;letter-spacing:.18em}.scroll-cue i{display:block;width:4.5rem;height:1px;background:white}
.manifesto{display:grid;grid-template-columns:minmax(140px,1fr) 4fr;border-bottom:1px solid var(--line)}.section-label{text-transform:uppercase;font-size:.65rem;letter-spacing:.17em;color:#6d6b65}.manifesto-copy{display:grid;grid-template-columns:2.7fr 1fr;gap:clamp(2rem,7vw,8rem)}.display-line{font-family:var(--display);font-size:clamp(2.1rem,4.5vw,5.1rem);line-height:1.03;letter-spacing:-.04em;margin:0}.manifesto-note{align-self:end;font-size:.95rem}.manifesto-note .text-link{display:inline-block;margin-top:1rem}
.services{background:var(--fog)}.section-head{display:grid;grid-template-columns:2fr 1fr;gap:3rem;margin-bottom:5rem}.section-head h2,.projects h2,.about h2,.request h2{font-family:var(--display);font-size:clamp(3rem,6vw,6.5rem);font-weight:400;line-height:.9;letter-spacing:-.055em;margin:0}.section-head>p{align-self:end;max-width:430px}.service-list{border-top:1px solid var(--line)}.service-list article{display:grid;grid-template-columns:80px 1.2fr 2fr 30px;align-items:center;gap:1rem;padding:2rem 0;border-bottom:1px solid var(--line);transition:padding .25s,background .25s}.service-list article:hover{padding-inline:1rem;background:rgba(255,255,255,.28)}.service-list span{font-size:.72rem;color:#77746c}.service-list h3{font-family:var(--display);font-size:clamp(1.7rem,2.5vw,2.8rem);font-weight:400;margin:0}.service-list p{max-width:500px;margin:0}.service-list i{font-style:normal;font-size:1.3rem}
.projects{background:var(--ink);color:white;padding-bottom:var(--pad)}.projects-intro{padding-bottom:5rem}.projects h2{max-width:900px}.project-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(.7rem,1.5vw,1.5rem);padding:0 var(--pad)}.project-card{grid-column:span 4;margin:0;position:relative;overflow:hidden;min-height:430px;background:#222}.project-card.project-wide{grid-column:span 8}.project-card.project-tall{min-height:650px}.project-card img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .4s}.project-card:hover img{transform:scale(1.035);filter:brightness(.75)}.project-card figcaption{position:absolute;inset:auto 1.4rem 1.3rem;display:flex;align-items:end;justify-content:space-between;z-index:2;text-shadow:0 1px 15px #000}.project-card figcaption span{font-size:.63rem;text-transform:uppercase;letter-spacing:.16em}.project-card figcaption strong{font-family:var(--display);font-size:1.4rem;font-weight:400}.project-card::after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.55))}
.scroll-story{position:relative;height:380vh;background:#111;color:white}.story-sticky{position:sticky;top:0;height:100svh;overflow:hidden}.story-video,.story-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.story-video{opacity:0}.story-video.ready{opacity:1}.story-poster{transition:opacity .25s}.story-video.ready+.story-shade{}.story-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,10,8,.72),rgba(10,10,8,.05) 65%),linear-gradient(0deg,rgba(10,10,8,.45),transparent 50%)}.story-top{position:absolute;top:clamp(5rem,9vw,8rem);left:var(--pad);right:var(--pad);display:flex;justify-content:space-between}.story-copy{position:absolute;left:var(--pad);bottom:clamp(4rem,9vw,8rem);max-width:650px}.story-copy h2{font-family:var(--display);font-size:clamp(3.6rem,7.5vw,8rem);font-weight:400;line-height:.87;letter-spacing:-.06em;margin:.12em 0 .25em}.story-copy>p:last-child{font-size:1.05rem;max-width:420px}.story-kicker{text-transform:uppercase;letter-spacing:.18em;font-size:.7rem}.story-track{position:absolute;bottom:0;left:0;right:0;height:4px;background:rgba(255,255,255,.2)}.story-track i{display:block;width:0;height:100%;background:var(--sand)}
.about{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,9vw,10rem)}.about-visual{position:relative;min-height:750px}.about-visual img{width:100%;height:100%;object-fit:cover}.about-visual span{position:absolute;left:0;bottom:0;background:var(--oak);color:white;padding:1.2rem 1.5rem;text-transform:uppercase;letter-spacing:.12em;font-size:.68rem}.about-copy{padding-top:3rem}.about-copy h2{font-size:clamp(2.6rem,4.6vw,5rem);margin-bottom:2.5rem}.about-copy>p{max-width:650px;font-size:1.05rem}.about-values{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:2.5rem}.about-values span{border:1px solid var(--line);padding:.6rem .85rem;font-size:.7rem;text-transform:uppercase;letter-spacing:.14em}
.showroom{position:relative;min-height:78vh;color:white;display:flex;align-items:stretch}.showroom>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.showroom::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,10,8,.72),rgba(10,10,8,.05))}.showroom-panel{position:relative;z-index:1;background:rgba(22,23,19,.86);backdrop-filter:blur(8px);width:min(580px,48%);padding:clamp(3rem,7vw,7rem) var(--pad);display:flex;flex-direction:column;justify-content:center}.showroom-panel h2{font-family:var(--display);font-size:clamp(2.5rem,4vw,4.5rem);font-weight:400;line-height:.95;margin:.2rem 0 2rem}.showroom-panel .button{align-self:flex-start;margin-top:1.5rem}
.request{display:grid;grid-template-columns:1fr 1.2fr;gap:clamp(4rem,9vw,10rem);background:var(--white)}.request-intro{position:sticky;top:8rem;align-self:start}.request-intro h2{font-size:clamp(3rem,5vw,5.8rem);margin-bottom:2rem}.request-intro>p{max-width:480px}.contact-direct{display:flex;flex-direction:column;margin-top:2rem;font-family:var(--display);font-size:1.4rem}.contact-hours{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--line);font-family:var(--body)}.contact-hours span{display:block;text-transform:uppercase;letter-spacing:.13em;font-size:.63rem;color:#6b6963}.contact-hours p{margin:.45rem 0 0;font-size:.86rem;line-height:1.55}.request-form{display:grid;grid-template-columns:1fr 1fr;gap:1.3rem 1.5rem}.field{display:flex;flex-direction:column}.field-full,.consent,.request-form>.button,.form-note,.request-result{grid-column:1/-1}.field label{font-size:.68rem;text-transform:uppercase;letter-spacing:.13em;margin-bottom:.45rem}.field input,.field select,.field textarea{width:100%;border:0;border-bottom:1px solid #8d8b84;background:transparent;padding:.75rem .1rem;color:var(--ink);border-radius:0}.field textarea{border:1px solid #8d8b84;padding:1rem;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--oak);outline-offset:3px}.consent{display:flex;align-items:flex-start;gap:.7rem;font-size:.78rem}.consent input{margin-top:.25rem}.request-form>.button{justify-self:start;margin-top:.5rem}.form-note{font-size:.73rem;color:#6b6963}.request-result{border-top:1px solid var(--line);padding-top:1.5rem}.request-result>p{font-family:var(--display);font-size:1.7rem}.request-result>div{display:flex;gap:.8rem;flex-wrap:wrap}
.footer{background:var(--ink);color:white;padding:5rem var(--pad) 2rem;display:grid;grid-template-columns:2fr 1fr 1fr;gap:3rem}.footer>div{display:flex;flex-direction:column;align-items:flex-start}.footer p{color:#aaa99f}.footer a{margin:.2rem 0}.footer-brand{margin-bottom:1rem!important}.footer-brand .brand-logo{width:190px}.footer-label{text-transform:uppercase;letter-spacing:.15em;font-size:.66rem}.footer-end{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.2);padding-top:1.5rem;margin-top:3rem;flex-direction:row!important;justify-content:space-between;font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:#aaa99f}.footer-end a:hover,.footer-end a:focus-visible{color:white}
@media(max-width:900px){.site-header{padding-block:.7rem}.menu-toggle{display:block;z-index:2}.main-nav{position:fixed;inset:0;background:var(--paper);color:var(--ink);display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:var(--pad);font-family:var(--display);font-size:2rem;text-transform:none;transform:translateX(100%);transition:transform .35s}.main-nav.open{transform:translateX(0)}.nav-cta{font-family:var(--body);font-size:.8rem;text-transform:uppercase;margin-top:1rem}.site-header.menu-open{color:var(--ink)}.site-header.menu-open .brand{z-index:3;position:relative}.hero-copy{top:53%}.hero h1{font-size:clamp(4rem,18vw,7rem)}.hero-index{display:none}.manifesto{grid-template-columns:1fr;gap:2rem}.manifesto-copy{grid-template-columns:1fr;gap:2rem}.manifesto-note{max-width:500px}.section-head{grid-template-columns:1fr}.service-list article{grid-template-columns:50px 1fr 30px}.service-list article p{grid-column:2/3}.project-card,.project-card.project-wide{grid-column:span 6}.about{grid-template-columns:1fr}.about-visual{min-height:600px}.request{grid-template-columns:1fr}.request-intro{position:static}.footer{grid-template-columns:1.5fr 1fr 1fr}}
@media(max-width:600px){.hero-actions{align-items:flex-start;flex-direction:column;gap:1.4rem}.hero-lead{max-width:90%}.section-pad{padding-block:5rem}.service-list article{grid-template-columns:35px 1fr 24px;padding:1.5rem 0}.project-grid{display:block}.project-card,.project-card.project-tall{min-height:58vh;margin-bottom:.8rem}.project-card.project-tall{min-height:72vh}.story-shade{background:linear-gradient(0deg,rgba(10,10,8,.8),transparent 70%)}.story-copy{right:var(--pad)}.story-copy h2{font-size:clamp(3.4rem,16vw,5.5rem)}.about-visual{min-height:470px}.showroom{min-height:100svh}.showroom-panel{width:100%;align-self:flex-end;padding-block:3rem;background:linear-gradient(0deg,rgba(22,23,19,.96),rgba(22,23,19,.72),transparent)}.request-form{grid-template-columns:1fr}.field{grid-column:1/-1}.footer{grid-template-columns:1fr 1fr}.footer>div:first-child{grid-column:1/-1}.footer-end{grid-column:1/-1}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}.hero-video{display:none}.scroll-story{height:auto}.story-sticky{position:relative;height:100svh}.story-video{display:none}.story-poster{content:url('assets/images/scroll-after.jpg')}}
@supports not (backdrop-filter:blur(1px)){.site-header.scrolled{background:var(--paper)}.showroom-panel{background:rgba(22,23,19,.94)}}
