.proj-hero{min-height:70vh}.proj-hero .hero__media img{opacity:.88}.proj-hero__title{font-size:clamp(2.2rem,6vw,4.6rem);font-weight:800;line-height:1.02;letter-spacing:-.03em;text-transform:uppercase;overflow-wrap:break-word;hyphens:manual;margin-bottom:clamp(1.4rem,4vh,3rem);max-width:18ch}.proj-hero__meta{font-size:.9rem;letter-spacing:.05em;color:var(--sand);font-weight:600;text-transform:uppercase}.proj{max-width:78rem;margin:0 auto;padding:clamp(3rem,6vw,5rem) var(--pad-x) clamp(4rem,8vw,7rem)}.proj__back{display:inline-block;font-size:.85rem;color:var(--olive);font-weight:600;margin-bottom:2rem}.proj__layout{display:grid;grid-template-columns:minmax(0,1fr) 19rem;gap:clamp(2.5rem,5vw,4.5rem);align-items:start;margin-bottom:clamp(2.5rem,5vw,4rem)}.proj__main{max-width:46rem}.proj__lead{font-size:clamp(1.3rem,2.6vw,1.9rem);font-weight:300;line-height:1.35;letter-spacing:-.01em;color:var(--brown)}.proj__quote{margin:clamp(2rem,4vw,3rem) 0;padding-left:1.2rem;border-left:3px solid var(--olive);font-style:italic;font-size:1.2rem;color:var(--brown)}.proj__details{margin-top:1.6rem;font-size:1.08rem;line-height:1.7;color:var(--brown-soft);white-space:pre-line}.proj__facts{position:sticky;top:6rem;background:var(--white);border-radius:8px;padding:1.5rem 1.6rem;box-shadow:0 1px 3px #00000014}.proj__facts-title{font-size:.74rem;text-transform:uppercase;letter-spacing:.18em;color:var(--olive);margin:0 0 1.1rem;font-weight:600}.proj__factlist{display:grid;grid-template-columns:auto 1fr;gap:.55rem 1rem;margin:0 0 1.5rem}.proj__factlist dt{font-size:.82rem;color:var(--brown-soft)}.proj__factlist dd{font-size:.9rem;font-weight:600;color:var(--brown);margin:0;text-align:right}.proj__facts-cta{display:flex;width:100%;justify-content:center;text-align:center}.proj__galsection{margin-top:clamp(2.5rem,5vw,4rem)}@media(max-width:820px){.proj__layout{grid-template-columns:1fr;gap:2rem}.proj__facts{position:static}}.proj__galtitle{font-size:clamp(1.4rem,3vw,2rem);font-weight:700;letter-spacing:-.02em;margin-bottom:1.4rem}.proj__gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(.8rem,1.6vw,1.4rem)}.proj__galitem{border:none;padding:0;cursor:zoom-in;border-radius:6px;overflow:hidden;background:var(--sand-deep);aspect-ratio:4 / 3;-webkit-appearance:none}.proj__galitem img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s cubic-bezier(.16,1,.3,1)}.proj__galitem:hover img{transform:scale(1.05)}.proj__galitem:first-child:nth-last-child(odd){grid-column:1 / -1;aspect-ratio:16 / 9}.proj__foot{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:clamp(3rem,6vw,4.5rem);padding-top:2rem;border-top:1px solid var(--hairline)}@media(max-width:640px){.proj__gallery{grid-template-columns:1fr}}.lightbox{position:fixed;inset:0;z-index:300;display:none;align-items:center;justify-content:center}.lightbox.is-open{display:flex}.lightbox__backdrop{position:absolute;inset:0;background:#0f0b08eb;backdrop-filter:blur(4px);cursor:zoom-out}.lightbox__img{position:relative;z-index:1;max-width:92vw;max-height:88vh;object-fit:contain;border-radius:4px;box-shadow:0 20px 60px #00000080}.lightbox__close{position:absolute;top:1.2rem;right:1.2rem;z-index:2;width:2.8rem;height:2.8rem;border:none;border-radius:50%;background:#f5f5f5eb;color:var(--brown);display:flex;align-items:center;justify-content:center;cursor:pointer}.lightbox__close svg{width:1.3rem;height:1.3rem}.lightbox__nav{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:3rem;height:3rem;border:none;border-radius:50%;background:#f5f5f5e6;color:var(--brown);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s}.lightbox__nav:hover{background:#fff}.lightbox__nav svg{width:1.4rem;height:1.4rem}.lightbox__nav--prev{left:1.2rem}.lightbox__nav--next{right:1.2rem}.lightbox__counter{position:absolute;bottom:1.2rem;left:50%;transform:translate(-50%);z-index:2;background:#0f0b0899;color:var(--sand);font-size:.8rem;padding:.25rem .7rem;border-radius:3px;letter-spacing:.05em}@media(max-width:640px){.lightbox__nav{width:2.5rem;height:2.5rem}.lightbox__nav--prev{left:.5rem}.lightbox__nav--next{right:.5rem}}
