:root{--ink:#171918;--paper:#f2f0ea;--muted:#677067;--line:rgba(23,25,24,.18);--accent:#7f8d77;--dark:#171918}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif}header{height:88px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:5;background:rgba(242,240,234,.94);backdrop-filter:blur(12px)}.brand{display:flex;align-items:center;color:var(--ink);text-decoration:none}.brand img{width:116px;height:38px;object-fit:contain;object-position:left center}nav{display:flex;gap:1.7rem;align-items:center}nav a{color:var(--ink);text-decoration:none;font-size:.73rem;letter-spacing:.08em;white-space:nowrap}nav a:not(.nav-contact):after{content:"";display:block;width:0;height:1px;background:currentColor;transition:width .28s ease;margin-top:5px}nav a:hover:after,nav a.active:not(.nav-contact):after{width:100%}.nav-contact,.button{border:1px solid currentColor;padding:.8rem 1.1rem}.hero{height:min(740px,calc(100vh - 88px));min-height:590px;position:relative;overflow:hidden;background:#333}.hero>img{width:100%;height:100%;object-fit:cover;filter:saturate(.62) brightness(.78);animation:hero-breathe 18s ease-in-out infinite alternate}@keyframes hero-breathe{to{transform:scale(1.045)}}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,16,15,.88),rgba(14,16,15,.34) 52%,rgba(14,16,15,.04))}.hero-copy{position:absolute;left:10vw;bottom:12%;color:white;max-width:650px}.eyebrow{font:.69rem 'DM Mono','Courier New',monospace;letter-spacing:.17em;text-transform:uppercase}.hero h1,.page h1{font-weight:500;line-height:1.02;letter-spacing:-.055em}.hero h1{font-size:clamp(3.2rem,7vw,6.7rem);margin:.9rem 0 1.3rem}.intro{max-width:470px;font-size:1.05rem;line-height:1.7}.button{display:inline-block;margin-top:1.2rem;color:white;text-decoration:none;font-size:.75rem;letter-spacing:.08em;transition:background .25s,color .25s,transform .25s}.button:hover{background:white;color:var(--ink);transform:translateY(-2px)}.hero-index{position:absolute;right:5vw;bottom:28px;color:white;font:.65rem 'DM Mono','Courier New',monospace;letter-spacing:.15em}.statement{padding:10rem 14vw 8rem;max-width:1100px}.statement h2{font-size:clamp(2.25rem,4.7vw,4.4rem);font-weight:500;line-height:1.1;letter-spacing:-.05em;margin:1rem 0 2rem}.statement>p:not(.eyebrow){max-width:600px;line-height:1.8}.text-link{display:inline-block;margin-top:2rem;color:var(--ink);font-size:.78rem;text-decoration:none;border-bottom:1px solid;padding-bottom:5px}.three{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--line);margin:0 5vw}.three article{padding:3rem 2.5rem 4.5rem;border-right:1px solid var(--line)}.three article:last-child{border:0}.three p,.project-meta,.review-source{font:.7rem 'DM Mono','Courier New',monospace;color:#70756f;letter-spacing:.05em}.three h3{font-size:1.45rem;font-weight:500}.three span{line-height:1.7;font-size:.92rem;display:block;max-width:250px}.quote{background:var(--ink);color:var(--paper);padding:9rem 14vw}.quote p{font-size:clamp(1.8rem,3.4vw,3.35rem);line-height:1.25;letter-spacing:-.04em;max-width:960px;margin:0 0 2rem}.quote span{font:.7rem 'DM Mono','Courier New',monospace;letter-spacing:.1em;color:#c5c7bf}.reviews{padding:8rem 5vw;background:#e7e5df}.reviews-top{display:flex;align-items:end;justify-content:space-between;gap:2rem;max-width:1200px;margin:0 auto 2rem}.reviews h2{font-size:clamp(2rem,4vw,3.7rem);font-weight:500;letter-spacing:-.05em;margin:.7rem 0 0}.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:1200px;margin:auto}.review{background:var(--paper);padding:2rem;min-height:238px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid transparent;transition:transform .25s,border-color .25s}.review:hover{transform:translateY(-5px);border-color:var(--line)}.review p{font-size:1.18rem;line-height:1.45;margin:0}.review-source{margin-top:2rem}.page{max-width:1400px;padding:8rem 10vw 9rem}.page h1{font-size:clamp(3.5rem,8vw,7.7rem);margin:1.1rem 0 2rem}.lead{font-size:1.2rem;line-height:1.7;max-width:690px}.service-list{margin-top:7rem;border-top:1px solid var(--line)}.service-list article{display:grid;grid-template-columns:10% 35% 1fr;gap:2rem;border-bottom:1px solid var(--line);padding:2.6rem 0}.service-list article>p:first-child{font:.7rem 'DM Mono','Courier New',monospace;color:#70756f}.service-list h2{font-size:1.8rem;font-weight:500;margin:0}.service-list article>p:last-child,.two-col div p{line-height:1.8;margin:0 0 1.2rem}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:7rem;margin:7rem 0}.two-col .lead{font-size:1.55rem}.page .quote{margin:0 -10vw}.projects{display:grid;grid-template-columns:1.15fr .85fr;gap:16px;margin-top:5rem}.project-card{background:#e4e2db;overflow:hidden;position:relative;display:flex;flex-direction:column}.project-card.featured{grid-row:span 2}.project-image{width:100%;height:310px;object-fit:cover;display:block;filter:saturate(.78);transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .4s}.project-card.featured .project-image{height:510px}.project-card:hover .project-image{transform:scale(1.035);filter:saturate(1)}.project-content{padding:1.6rem 1.7rem 1.8rem}.project-card h2{font-size:clamp(1.5rem,2.4vw,2.25rem);letter-spacing:-.045em;font-weight:500;margin:.45rem 0 .7rem}.project-card p{line-height:1.65;margin:0;max-width:620px}.project-tags{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1.15rem}.project-tags span{border:1px solid var(--line);padding:.35rem .55rem;font:.63rem 'DM Mono','Courier New',monospace;letter-spacing:.05em}.project-note{display:block;margin-top:.8rem;color:var(--muted);font-size:.8rem}.project-intro{max-width:780px}.contact{min-height:calc(100vh - 158px)}.contact-details{display:flex;gap:3rem;margin:4rem 0 2rem;padding-top:2rem;border-top:1px solid var(--line)}.contact-details a{font-size:1.25rem;color:var(--ink)}.quote-form{margin-top:4rem;max-width:980px;padding:2.2rem;background:#e4e2db;border:1px solid var(--line)}.quote-form h2{font-size:2rem;font-weight:500;letter-spacing:-.04em;margin:0 0 .5rem}.quote-form>p{line-height:1.65;margin:0 0 2rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem}.field{display:flex;flex-direction:column;gap:.45rem}.field.full{grid-column:1/-1}.field label{font-size:.74rem;letter-spacing:.06em}.field input,.field select,.field textarea{border:1px solid rgba(23,25,24,.3);border-radius:0;background:var(--paper);padding:.85rem;font:inherit;color:var(--ink);width:100%}.field textarea{min-height:145px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--accent);outline-offset:2px}.upload-note{font-size:.78rem;color:var(--muted);line-height:1.5}.consent{display:flex;gap:.7rem;align-items:start;font-size:.8rem;line-height:1.5;margin:1.4rem 0}.consent input{margin-top:.25rem}.submit{appearance:none;background:var(--ink);color:var(--paper);border:1px solid var(--ink);padding:1rem 1.2rem;font-size:.75rem;letter-spacing:.08em;cursor:pointer;transition:transform .2s,background .2s}.submit:hover{transform:translateY(-2px);background:#3b403b}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.in-view{opacity:1;transform:none}footer{padding:2rem 5vw;display:flex;align-items:center;justify-content:space-between;background:var(--dark);color:var(--paper);font:.68rem 'DM Mono','Courier New',monospace;letter-spacing:.1em}footer img{width:92px;height:28px;object-fit:contain;object-position:left center}footer a{color:inherit}@media(max-width:720px){header{height:76px;padding:0 5vw}.brand img{width:94px}nav{gap:.75rem}nav a{display:none}.nav-contact{display:inline-block!important;font-size:.68rem;padding:.62rem .72rem}.hero{min-height:590px;height:calc(100svh - 76px)}.hero-copy{left:7vw;right:7vw;bottom:13%}.hero-index{right:7vw}.statement{padding:6.5rem 7vw}.three{grid-template-columns:1fr;margin:0 7vw}.three article{border-right:0;border-bottom:1px solid var(--line);padding:2.2rem 0}.three article:last-child{border:0}.quote{padding:5rem 7vw}.reviews{padding:5rem 7vw}.reviews-top{display:block}.reviews-grid{grid-template-columns:1fr}.page{padding:5.5rem 7vw 6rem}.service-list{margin-top:4rem}.service-list article{grid-template-columns:1fr;gap:.4rem;padding:2rem 0}.two-col{grid-template-columns:1fr;gap:2rem;margin:4rem 0}.projects{grid-template-columns:1fr;margin-top:3rem}.project-card.featured{grid-row:auto}.project-image,.project-card.featured .project-image{height:275px}.contact-details{flex-direction:column;gap:1rem}.quote-form{padding:1.35rem;margin-top:3rem}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}footer{padding:1.5rem 7vw;gap:1rem;flex-wrap:wrap}footer span:nth-child(2){display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero>img{animation:none}.reveal{opacity:1;transform:none;transition:none}.project-image,.review,.button,.submit{transition:none}}
