:root{--paper:#f1ece4;--paper-alt:#e9e2d7;--ink:#1a1714;--dark:#171714;--accent:#bda57d;--line:rgba(26,23,20,.17);--muted:rgba(26,23,20,.67);--sans:"Manrope",sans-serif;--serif:"Cormorant Garamond",serif;--ease:cubic-bezier(.2,.8,.2,1);--gutter:clamp(20px,4vw,54px)}
*{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}body.lightbox-open{overflow:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.project-wrap{width:min(1440px,100%);margin:0 auto;padding-inline:var(--gutter)}.skip-link{position:fixed;z-index:100;left:12px;top:12px;padding:12px 16px;background:#fff;transform:translateY(-150%)}.skip-link:focus{transform:none}
.project-header{position:relative;z-index:10;border-bottom:1px solid var(--line);background:rgba(241,236,228,.94);backdrop-filter:blur(14px)}.header-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font:500 25px/1 var(--serif);letter-spacing:.13em}.brand span{display:block;margin-top:6px;font:600 8px/1 var(--sans);letter-spacing:.17em;text-transform:uppercase;color:var(--muted)}.project-header nav{display:flex;align-items:center;gap:26px;font-size:9px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.project-header nav a{transition:opacity .2s}.project-header nav a:hover{opacity:.58}.header-contact{padding:13px 16px;border:1px solid var(--ink)}
.project-intro{padding-top:64px;padding-bottom:48px}.breadcrumbs{display:flex;align-items:center;gap:9px;min-width:0;margin-bottom:58px;color:var(--muted);font-size:9px;font-weight:600;letter-spacing:.15em;text-transform:uppercase}.breadcrumbs span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.breadcrumbs a:hover{text-decoration:underline;text-underline-offset:4px}.eyebrow{margin:0 0 17px;color:#756a5d;font-size:9px;font-weight:600;letter-spacing:.23em;text-transform:uppercase}.eyebrow.light{color:rgba(255,255,255,.57)}h1{max-width:1050px;margin:0;font:500 clamp(56px,9.5vw,144px)/.76 var(--serif);letter-spacing:-.045em;text-transform:uppercase;overflow-wrap:anywhere}.intro-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,.8fr);gap:clamp(36px,8vw,130px);align-items:end;margin-top:58px}.project-description{max-width:760px;margin:0;font:400 clamp(23px,2.2vw,34px)/1.35 var(--serif);letter-spacing:-.012em}.project-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px;margin:0}.project-facts div{border-top:1px solid var(--line);padding-top:12px}.project-facts dt{font-size:8px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:#786c5d}.project-facts dd{margin:7px 0 0;font-size:12px;line-height:1.5}
.project-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(10px,1.5vw,22px);padding-bottom:clamp(76px,10vw,150px)}.gallery-item{position:relative;margin:0;overflow:hidden;background:#d8d0c5;cursor:zoom-in}.gallery-item.wide{grid-column:1/-1}.gallery-item img{width:100%;height:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .8s var(--ease);will-change:transform}.gallery-item.wide img{aspect-ratio:16/10}.gallery-item.portrait img{aspect-ratio:3/4}.gallery-item:hover img{transform:scale(1.012)}.gallery-item button{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:zoom-in}.gallery-item button:focus-visible{outline:3px solid #fff;outline-offset:-8px}.gallery-index{position:absolute;right:14px;bottom:14px;padding:7px 9px;background:rgba(16,16,14,.55);color:#fff;font-size:8px;font-weight:600;letter-spacing:.14em;backdrop-filter:blur(8px);pointer-events:none}
.project-pagination{display:grid;grid-template-columns:1fr 1fr;gap:1px;padding-bottom:clamp(72px,9vw,130px)}.pagination-link{min-height:96px;padding:20px 22px;border:1px solid var(--line);display:flex;flex-direction:column;justify-content:center;transition:background .25s}.pagination-link:hover{background:rgba(255,255,255,.42)}.pagination-link.next{text-align:right}.pagination-link small{font-size:8px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:#756a5d}.pagination-link strong{margin-top:7px;font:500 22px/1.05 var(--serif);text-transform:uppercase}.pagination-placeholder{border:1px solid transparent}
.related-section{padding:clamp(72px,9vw,120px) 0;background:var(--paper-alt)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:34px}.section-heading h2{margin:0;font:500 clamp(42px,6vw,78px)/.9 var(--serif);letter-spacing:-.03em}.text-link{padding-bottom:5px;border-bottom:1px solid currentColor;font-size:9px;font-weight:600;letter-spacing:.15em;text-transform:uppercase}.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.related-card{position:relative;display:block;min-height:390px;overflow:hidden;background:var(--dark);color:#fff}.related-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}.related-card::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,10,9,.8),transparent 65%)}.related-card:hover img{transform:scale(1.025)}.related-copy{position:absolute;z-index:1;left:22px;right:22px;bottom:20px}.related-copy small{font-size:8px;font-weight:600;letter-spacing:.17em;text-transform:uppercase;color:rgba(255,255,255,.7)}.related-copy h3{margin:8px 0 0;font:500 27px/1 var(--serif);text-transform:uppercase}.related-card.portfolio-card{display:flex;align-items:flex-end;background:linear-gradient(135deg,#2f2c27,#151512)}
.project-cta{position:relative;overflow:hidden;padding:clamp(90px,12vw,165px) 0;background:var(--dark);color:#fff}.project-cta::after{content:"LAV";position:absolute;right:-.05em;bottom:-.32em;font:500 clamp(210px,42vw,620px)/1 var(--serif);color:rgba(255,255,255,.025);pointer-events:none}.cta-inner{position:relative;z-index:1}.project-cta h2{max-width:1050px;margin:0;font:500 clamp(51px,8.5vw,120px)/.8 var(--serif);letter-spacing:-.04em;text-transform:uppercase}.project-cta h2 em{color:var(--accent);font-weight:400}.project-cta p:not(.eyebrow){max-width:640px;margin:30px 0 0;color:rgba(255,255,255,.66);font-size:14px;line-height:1.8}.cta-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}.button{min-height:58px;display:inline-flex;align-items:center;justify-content:center;padding:16px 25px;border:1px solid rgba(255,255,255,.72);font-size:9px;font-weight:600;letter-spacing:.17em;text-transform:uppercase;transition:background .25s,color .25s,transform .25s}.button:hover{transform:translateY(-2px)}.button-light{background:#fff;color:var(--ink)}.button-outline:hover{background:#fff;color:var(--ink)}
.project-footer{padding:31px 0;background:#0b0b0a;color:#fff;border-top:1px solid rgba(255,255,255,.12)}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}.footer-inner strong{display:block;font:500 21px var(--serif);letter-spacing:.12em}.footer-inner span{display:block;margin-top:7px;color:rgba(255,255,255,.45);font-size:9px}.footer-links{display:flex;gap:24px;font-size:9px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.lightbox[hidden]{display:none}.lightbox{position:fixed;z-index:90;inset:0;display:grid;grid-template-columns:70px minmax(0,1fr) 70px;align-items:center;background:rgba(8,8,7,.96);color:#fff}.lightbox figure{margin:0;display:grid;place-items:center;min-width:0}.lightbox img{max-width:100%;max-height:88vh;object-fit:contain}.lightbox figcaption{margin-top:12px;max-width:80ch;text-align:center;color:rgba(255,255,255,.62);font-size:10px;line-height:1.5}.lightbox-close,.lightbox-arrow{border:0;background:transparent;color:#fff;cursor:pointer}.lightbox-close{position:absolute;right:18px;top:12px;width:48px;height:48px;font-size:35px;font-weight:300}.lightbox-arrow{height:70px;font-size:27px}.lightbox-arrow:focus-visible,.lightbox-close:focus-visible{outline:2px solid #fff}.lightbox-prev{grid-column:1}.lightbox figure{grid-column:2}.lightbox-next{grid-column:3}
@media(max-width:800px){.project-intro{padding-top:42px}.breadcrumbs{margin-bottom:42px}.intro-grid{grid-template-columns:1fr;margin-top:38px}.project-facts{max-width:520px}.related-grid{grid-template-columns:1fr 1fr}.related-card{min-height:340px}.related-card:last-child:nth-child(odd){grid-column:1/-1}.footer-inner{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.header-inner{min-height:68px}.brand{font-size:21px}.project-header nav>a:first-child{display:none}.header-contact{padding:11px 12px}h1{font-size:clamp(46px,13vw,56px);line-height:.82}.project-intro{padding-bottom:38px}.breadcrumbs{gap:7px;font-size:8px}.project-description{font-size:23px}.project-facts{grid-template-columns:1fr 1fr;gap:17px 15px}.project-gallery{grid-template-columns:1fr;gap:10px}.gallery-item.wide{grid-column:auto}.gallery-item img,.gallery-item.wide img{aspect-ratio:4/3}.project-pagination{grid-template-columns:1fr}.pagination-placeholder{display:none}.pagination-link.next{text-align:left}.section-heading{align-items:flex-start;flex-direction:column}.related-grid{grid-template-columns:1fr}.related-card,.related-card:last-child:nth-child(odd){grid-column:auto;min-height:410px}.project-cta h2{font-size:42px;line-height:.84}.cta-actions{display:grid}.button{width:100%}.footer-links{gap:17px}.lightbox{grid-template-columns:48px minmax(0,1fr) 48px}.lightbox img{max-height:78vh}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.gallery-item img,.related-card img,.button{transition:none}}
