
:root{--paper:#eee6d6;--paper2:#f7f2e9;--ink:#261911;--wine:#7c283b;--muted:#756c65;--line:rgba(38,25,17,.18);--serif:'Playfair Display',Georgia,serif;--sans:'Jost',Arial,sans-serif}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{font:inherit}::selection{background:var(--wine);color:#fff}
.shell{width:min(100% - 6vw,1540px);margin-inline:auto}.nav{background:var(--paper);border-bottom:1px solid var(--line);position:relative;z-index:10}.nav-inner{min-height:82px;display:flex;justify-content:space-between;align-items:center;gap:30px}.wordmark{display:inline-flex;align-items:center;width:clamp(196px,20vw,290px);flex:0 0 auto}.wordmark img{width:100%;height:auto}.links{display:flex;gap:clamp(14px,3vw,52px)}.links a{font-size:10px;letter-spacing:.2em;text-transform:uppercase}.links .is-current,.links a:hover{color:var(--wine)}.mobile-toggle{display:none;align-items:center;justify-content:center;background:transparent;border:1px solid var(--line);height:38px;width:42px;font-size:21px}.eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.22em;color:var(--muted)}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);text-wrap:balance}p{text-wrap:pretty}
.work-lead{padding:clamp(45px,6vw,94px) 0 clamp(33px,4vw,63px)}.work-lead h1{font:700 clamp(57px,8.6vw,132px)/1 var(--serif);letter-spacing:-.065em;max-width:11ch}.work-lead .eyebrow{margin-bottom:25px}.work-lead p{font:300 clamp(16px,1.6vw,22px)/1.5 var(--sans);margin-top:26px}
.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-left:1px solid var(--line);border-top:1px solid var(--line)}.portfolio-card{min-width:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:block;background:#eee7dc}.portfolio-photo{aspect-ratio:1.55;overflow:hidden;background:#c5b9aa}.portfolio-photo img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.portfolio-card:hover .portfolio-photo img{transform:scale(1.025)}.portfolio-caption{min-height:118px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:21px 16px}.portfolio-caption h2{font:600 clamp(20px,1.8vw,29px)/1.12 var(--serif);letter-spacing:-.025em}.portfolio-caption span{font:400 10px/1.5 var(--sans);letter-spacing:.09em;text-transform:uppercase;margin-top:5px}.portfolio-card:hover .portfolio-caption h2{color:var(--wine)}.portfolio-card--unpictured .portfolio-photo{display:flex;align-items:center;justify-content:center;background:#b5a799}.portfolio-card--unpictured .portfolio-photo::after{content:'Image selection pending';font:400 10px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:#ede6dd}
.page-project{padding-bottom:60px}.folio-hero{position:relative;margin:0}.folio-hero img{width:100%;height:clamp(350px,38vw,630px);object-fit:cover}.folio-content{padding:clamp(45px,5vw,86px) 0 clamp(80px,8vw,130px)}.folio-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(270px,.7fr);column-gap:clamp(60px,10vw,190px);align-items:start}.folio-kicker{font:500 10px/1.5 var(--sans);text-transform:uppercase;letter-spacing:.18em;color:var(--wine);margin-bottom:23px}.folio-title{font:700 clamp(58px,6.4vw,103px)/1.06 var(--serif);letter-spacing:-.06em;max-width:14ch}.folio-subtitle{font:400 clamp(26px,2.25vw,36px)/1.3 var(--serif);color:var(--wine);margin:5px 0 clamp(36px,4vw,60px);letter-spacing:-.023em}.folio-description{max-width:730px}.folio-description p{font:300 clamp(16px,1.22vw,19px)/1.72 var(--sans);margin-bottom:20px}.folio-info{padding-top:clamp(57px,6.2vw,105px);display:grid;gap:29px}.info-label{margin-bottom:8px;font:500 11px/1.4 var(--sans);text-transform:uppercase;letter-spacing:.16em;color:var(--wine)}.info-text{font:300 clamp(15px,1.12vw,18px)/1.6 var(--sans)}
.project-pager{border-top:1px solid var(--line);padding:24px 0 54px;background:var(--paper)}.pager-grid{display:grid;grid-template-columns:1fr 1fr;gap:0}.pager-item{padding:26px 0;min-width:0}.pager-item+ .pager-item{border-left:1px solid var(--line);text-align:right;padding-left:30px}.pager-item:first-child{padding-right:30px}.pager-label{font:500 10px/1.4 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.pager-name{margin-top:12px;font:600 clamp(24px,2.3vw,36px)/1.17 var(--serif);letter-spacing:-.025em}.pager-item:hover .pager-name{color:var(--wine)}.pager-category{margin-top:8px;font:400 10px/1.4 var(--sans);text-transform:uppercase;letter-spacing:.14em;color:var(--muted)}.back-work{display:inline-block;border-bottom:1px solid var(--ink);font:500 11px/1.5 var(--sans);text-transform:uppercase;letter-spacing:.16em;padding-bottom:7px;margin-top:42px}.back-work:hover{color:var(--wine);border-color:var(--wine)}
.site-footer{background:var(--ink);color:#d7c7b6;padding:33px 0}.footer-grid{display:flex;justify-content:space-between;gap:30px;align-items:center;font:400 10px/1.5 var(--sans);letter-spacing:.14em;text-transform:uppercase}
@media(max-width:850px){.folio-grid{grid-template-columns:1fr}.folio-info{padding-top:45px;margin-top:45px;border-top:1px solid var(--line);grid-template-columns:1fr 1fr}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nav-inner{min-height:73px}.mobile-toggle{display:flex}.links{position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:25px 4vw 30px;border-bottom:1px solid var(--line);display:none;flex-direction:column;gap:22px}.links.is-open{display:flex}.links a{font-size:13px}}
@media(max-width:520px){.shell{width:calc(100% - 34px)}.wordmark{width:185px}.portfolio-grid{grid-template-columns:1fr}.portfolio-caption{min-height:102px}.folio-hero img{height:clamp(310px,83vw,450px)}.folio-title{font-size:clamp(51px,11.5vw,68px)}.folio-subtitle{font-size:clamp(24px,6vw,32px)}.folio-info{gap:23px 16px}.pager-name{font-size:22px}.pager-item+ .pager-item{padding-left:15px}.pager-item:first-child{padding-right:15px}.footer-grid{flex-direction:column;align-items:flex-start}.work-lead h1{font-size:65px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.portfolio-photo img{transition:none}}
