.project-detail-page{background:var(--paper);color:var(--ink)}
.project-detail-page .site-header.overlay{color:var(--ink);background:linear-gradient(180deg,#f7f3eceb,#f7f3ec9e 70%,transparent)}
.project-detail-page .site-header.overlay.nav-open{background:var(--paper)}
.project-hero{position:relative;min-height:620px;display:flex;align-items:flex-end;isolation:isolate;overflow:hidden;color:var(--white)}
.project-hero-photo{position:absolute;inset:0;width:100%;height:100%;z-index:-2;object-fit:cover;object-position:center 52%}
.project-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(41,37,34,.72),rgba(41,37,34,.32) 42%,rgba(41,37,34,.03) 100%)}
.project-hero-copy{padding:158px 0 70px}
.project-hero .eyebrow:after{background:var(--white)}
.project-hero h1{font-size:76px;margin-bottom:16px}
.project-hero p{font-size:18px;margin-bottom:28px}
.project-hero-link{color:var(--white)}
.project-down{position:absolute;left:6%;bottom:28px;width:34px;height:34px;display:grid;place-items:center;font-size:24px;transition:transform .25s}
.project-down:hover{transform:translateY(5px)}
.project-story{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.18fr);gap:9%;padding:62px 0 58px}
.project-story h2{font-size:52px;max-width:520px}
.project-story-text{font-size:15px;line-height:1.74;color:#332f2b}
.project-wide-photo{height:430px;overflow:hidden}
.project-wide-photo img{height:118%;object-position:center 52%;transform:translateY(var(--parallax-y,0))}
.project-execution{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:8%;align-items:center;padding:60px 0 62px}
.project-execution h2{font-size:48px;margin-bottom:22px}
.project-execution p{max-width:480px;font-size:15px;line-height:1.72;color:#332f2b}
.project-execution figure{height:320px;overflow:hidden}
.project-execution img{height:100%;object-position:center 55%;transition:transform .5s}
.project-execution figure:hover img{transform:scale(1.025)}
.project-carousel-section{background:var(--soft);padding:44px 0 56px}
.project-carousel-heading{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:22px}
.project-carousel-heading .eyebrow{margin:0}
.project-carousel-meta{display:flex;align-items:center;gap:9px;font-size:12px;color:var(--deep)}
.project-carousel{position:relative;width:90%;max-width:1420px;margin:auto}
.project-carousel-viewport{overflow:hidden;cursor:grab}
.project-carousel-viewport.is-dragging{cursor:grabbing}
.project-carousel-track{display:flex;gap:0;transition:transform .58s ease;will-change:transform}
.project-slide{flex:0 0 100%;height:520px;overflow:hidden;background:var(--soft)}
.project-slide img{height:100%;object-fit:cover;object-position:center;transition:opacity .35s,transform .45s,filter .45s}
.project-slide.is-active img{filter:saturate(1.03) contrast(1.02)}
.project-carousel-arrow{position:absolute;top:50%;z-index:2;transform:translateY(-50%);width:42px;height:42px;display:grid;place-items:center;color:var(--ink);font-size:22px;transition:transform .25s,color .25s}
.project-carousel-prev{left:-50px}
.project-carousel-next{right:-50px}
.project-carousel-arrow:hover{color:var(--wine)}
.project-carousel-prev:hover{transform:translate(-4px,-50%)}
.project-carousel-next:hover{transform:translate(4px,-50%)}
.project-carousel-progress{display:none}
.project-thumbs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-top:12px}
.project-thumb{position:relative;height:92px;overflow:hidden;background:var(--line);opacity:.72;transition:opacity .25s,transform .25s}
.project-thumb img{height:100%;object-fit:cover;transition:transform .35s}
.project-thumb:after{content:'';position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--deep);transform:scaleX(0);transform-origin:left;transition:transform .25s}
.project-thumb:hover,.project-thumb.is-active{opacity:1}
.project-thumb:hover img{transform:scale(1.03)}
.project-thumb.is-active:after{transform:scaleX(1)}
.next-project{position:relative;display:block;min-height:330px;isolation:isolate;overflow:hidden;color:var(--white)}
.next-project img{position:absolute;inset:0;width:100%;height:100%;z-index:-2;object-fit:cover;object-position:center 55%;transition:transform .65s}
.next-project:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(41,37,34,.82),rgba(41,37,34,.28) 62%,transparent)}
.next-project-copy{min-height:330px;display:grid;align-content:center;grid-template-columns:auto auto;column-gap:28px}
.next-project .eyebrow{grid-column:1/-1;margin-bottom:18px}
.next-project .eyebrow:after{background:var(--white)}
.next-project strong{font:400 44px/1.1 var(--serif)}
.next-project-arrow{align-self:center;font-size:36px;transition:transform .28s}
.next-project:hover img{transform:scale(1.035)}
.next-project:hover .next-project-arrow{transform:translateX(8px)}
.project-detail-page .site-footer{border-top:1px solid var(--soft);margin:0 3.6%;padding:30px 0 25px}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}
.reveal.is-visible{opacity:1;transform:none}
@media(max-width:1150px){
  .project-hero{min-height:560px}.project-hero h1{font-size:62px}.project-story{gap:6%}.project-story h2{font-size:43px}.project-wide-photo{height:370px}.project-slide{height:440px}.project-carousel{width:88%}.project-thumbs{grid-template-columns:repeat(5,minmax(0,1fr))}.project-thumb{height:78px}
}
@media(max-width:850px){
  .project-detail-page .site-header.overlay{position:absolute;background:linear-gradient(180deg,#f7f3ecef,#f7f3eca8 72%,transparent)}
  .project-detail-page .site-header.overlay.nav-open{position:fixed;background:var(--paper)}
  .project-hero{min-height:610px}.project-hero-copy{padding-top:150px}.project-hero h1{font-size:56px}.project-story,.project-execution{grid-template-columns:1fr;gap:30px}.project-story{padding-top:50px}.project-wide-photo{height:330px}.project-execution{padding-top:48px}.project-execution figure{height:310px}.project-slide{height:390px}.project-carousel-arrow{top:calc(50% - 46px)}.project-carousel-prev{left:-36px}.project-carousel-next{right:-36px}.project-thumbs{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.project-thumb{height:70px}.project-carousel-section{padding-bottom:70px}.next-project strong{font-size:38px}
}
@media(max-width:600px){
  .project-hero{min-height:620px;align-items:flex-end}.project-hero:after{background:linear-gradient(90deg,rgba(41,37,34,.78),rgba(41,37,34,.22))}.project-hero-photo{object-position:58% center}.project-hero-copy{padding:145px 0 58px}.project-hero h1{font-size:50px}.project-hero p{font-size:16px}.project-down{display:none}.project-story{padding:42px 0}.project-story h2,.project-execution h2{font-size:38px}.project-story-text,.project-execution p{font-size:15px}.project-wide-photo{height:305px}.project-execution{padding:44px 0}.project-execution figure{height:285px}.project-carousel-section{padding-top:38px}.project-carousel-heading{align-items:flex-start}.project-carousel-heading .eyebrow{font-size:10px;gap:14px}.project-carousel{width:88%}.project-slide{height:285px}.project-carousel-arrow{top:auto;bottom:-54px}.project-carousel-prev{left:0}.project-carousel-next{right:0}.project-thumbs{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:9px}.project-thumb{height:58px}.next-project{min-height:300px}.next-project-copy{min-height:300px}.next-project strong{font-size:34px}.project-detail-page .site-footer{margin-inline:6%}
}
@media(prefers-reduced-motion:reduce){
  .project-carousel-track,.project-slide img,.project-thumb,.project-thumb img,.project-thumb:after,.project-execution img,.next-project img,.next-project-arrow,.project-down,.reveal{transition:none!important}
  .reveal{opacity:1;transform:none}
  .project-wide-photo img{transform:none!important}
}
