:root{--paper:#f2f0eb;--ink:#1d1d1b;--muted:#74726d;--line:#d4d1c9;--accent:#9c3d2d;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.5}a{color:inherit;text-decoration:none}.site-header{height:82px;padding:0 5.5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-weight:500;letter-spacing:.1em;font-size:13px}.brand-dot{color:var(--accent);font-size:20px}.site-nav{display:flex;gap:34px;color:var(--muted);font-size:13px}.site-nav a:hover,.contact-footer a:hover{color:var(--accent)}.menu-toggle{display:none;border:0;background:none;font:inherit}.menu-icon{color:var(--accent);font-size:20px;vertical-align:-2px}.hero{min-height:calc(100vh - 82px);padding:9vh 9vw 10vh;display:grid;grid-template-columns:1fr minmax(300px,435px);gap:8vw;align-items:center}.eyebrow{margin:0;color:var(--accent);font-size:11px;letter-spacing:.16em;text-transform:uppercase}.hero h1,.section-heading h2,.about-copy h2,.contact-section h2{font:500 clamp(4.5rem,9vw,9.4rem)/.91 var(--serif);letter-spacing:-.06em;margin:35px 0 50px}.hero h1 em,.section-heading h2 em,.about-copy h2 em,.contact-section h2 em{font-weight:500;color:var(--accent)}.hero-bottom{display:flex;align-items:end;gap:50px;color:var(--muted);font-size:13px}.text-link{white-space:nowrap;border-bottom:1px solid var(--ink);padding-bottom:7px;font-size:12px;color:var(--ink)}.text-link span{color:var(--accent);padding-left:12px;font-size:16px}.hero-image{margin:0}.hero-image img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;filter:saturate(.75)}figcaption{display:flex;justify-content:space-between;padding-top:12px;color:var(--muted);font-size:11px;letter-spacing:.08em}.work-section{padding:12vh 9vw 15vh}.section-heading{display:grid;grid-template-columns:1fr 1.25fr 1fr;align-items:end;margin-bottom:75px}.section-heading h2{font-size:clamp(3.3rem,6vw,6rem);margin:0}.section-note{justify-self:end;color:var(--muted);font-size:13px;text-align:right}.gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:62px 22px}.work-card{margin:0;cursor:pointer}.work-card:nth-child(1){grid-column:1 / span 5}.work-card:nth-child(2){grid-column:8 / span 5;margin-top:130px}.work-card:nth-child(3){grid-column:2 / span 4}.work-card:nth-child(4){grid-column:8 / span 4;margin-top:80px}.work-card:nth-child(5){grid-column:1 / span 5;margin-top:60px}.work-card:nth-child(6){grid-column:7 / span 5}.work-card:nth-child(7){grid-column:2 / span 4;margin-top:100px}.work-card:nth-child(8){grid-column:8 / span 4;margin-top:20px}.work-card img{width:100%;display:block;aspect-ratio:4/5;object-fit:cover;filter:saturate(.8);transition:transform .6s cubic-bezier(.2,.7,.2,1),filter .6s}.work-card:nth-child(2) img,.work-card:nth-child(6) img{aspect-ratio:5/6}.work-card:hover img{transform:scale(.98);filter:saturate(1)}.card-meta{display:flex;justify-content:space-between;margin-top:13px;color:var(--muted);font-size:11px;letter-spacing:.04em}.card-title{color:var(--ink);font-size:13px}.about-section{padding:12vh 9vw 14vh;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.5fr 1fr;gap:5vw}.about-copy h2{font-size:clamp(3.5rem,6vw,6.3rem);margin:0 0 38px}.about-copy p{max-width:430px;color:var(--muted);line-height:1.8;margin:0 0 35px}.stats{display:flex;align-items:end;justify-content:space-between;padding-bottom:7px}.stats div{display:flex;flex-direction:column}.stats strong{font:500 38px var(--serif)}.stats span{color:var(--muted);font-size:11px;margin-top:5px}.contact-section{background:var(--ink);color:var(--paper);padding:13vh 9vw 38px}.contact-section h2{font-size:clamp(4rem,8vw,8rem);margin:32px 0 55px}.contact-link{font:500 clamp(1.3rem,2.5vw,2.3rem) var(--serif);border-bottom:1px solid #5b5a54;padding-bottom:10px}.contact-link span{color:#d97965;margin-left:30px}.contact-footer{border-top:1px solid #45443f;margin-top:18vh;padding-top:18px;display:flex;justify-content:space-between;color:#96948c;font-size:11px;letter-spacing:.05em}.lightbox{position:fixed;inset:0;background:rgba(20,20,18,.96);display:none;z-index:20;align-items:center;justify-content:center;padding:5vh 9vw}.lightbox.is-open{display:flex}.lightbox figure{margin:0;max-width:min(75vw,700px);max-height:90vh}.lightbox img{display:block;max-width:100%;max-height:78vh;object-fit:contain}.lightbox figcaption{color:#aaa}.lightbox-close,.lightbox-arrow{position:absolute;border:0;background:none;color:var(--paper);font:32px var(--sans);cursor:pointer}.lightbox-close{top:28px;right:40px;font-size:42px}.lightbox-arrow{top:50%;transform:translateY(-50%);font-size:28px}.lightbox-arrow.prev{left:4vw}.lightbox-arrow.next{right:4vw}.lightbox button:hover{color:#d97965}@media(max-width:800px){.site-header{height:70px;padding:0 7vw}.menu-toggle{display:block;color:var(--muted);font-size:12px;letter-spacing:.08em}.site-nav{display:none;position:absolute;z-index:5;top:70px;left:0;right:0;padding:22px 7vw;background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;gap:16px}.site-nav.is-open{display:flex}.hero{min-height:auto;padding:9vh 7vw 13vh;display:flex;flex-direction:column;gap:8vh;align-items:stretch}.hero h1{font-size:clamp(4.5rem,18vw,7rem);margin:28px 0 35px}.hero-bottom{justify-content:space-between;gap:15px}.hero-image{align-self:center;width:82%}.work-section{padding:10vh 7vw 13vh}.section-heading{display:block;margin-bottom:55px}.section-heading h2{font-size:clamp(3.5rem,13vw,5.5rem);margin:25px 0}.section-note{text-align:left}.gallery{display:block}.work-card,.work-card:nth-child(n){margin:0 0 55px}.work-card:nth-child(even){margin-left:14%;}.work-card img,.work-card:nth-child(2) img,.work-card:nth-child(6) img{aspect-ratio:4/5}.about-section{padding:10vh 7vw 12vh;display:block}.about-label{margin-bottom:55px}.about-copy h2{font-size:clamp(3.7rem,14vw,6rem)}.stats{margin-top:65px}.contact-section{padding:11vh 7vw 28px}.contact-section h2{font-size:clamp(4.3rem,15vw,6.5rem)}.contact-footer{margin-top:16vh;gap:14px;flex-wrap:wrap}.contact-footer span:last-child{width:100%}.lightbox{padding:5vh 15vw}.lightbox-arrow.prev{left:5vw}.lightbox-arrow.next{right:5vw}}
