.project-media{position:relative;display:block;width:100%;padding:0;border:0;background:#d8d8d2;color:white;text-align:left;overflow:hidden;cursor:zoom-in}
.project-media img,.project-media img:first-child,.project-media img:last-child{width:100%;height:620px;min-height:0;object-fit:cover;transition:transform .45s ease}
.project-media--no-crop img,.project-media--no-crop img:first-child,.project-media--no-crop img:last-child{height:auto;aspect-ratio:auto;object-fit:contain;background:#d8d8d2}
.project-media:hover img,.project-media:focus-visible img{transform:scale(1.012)}
.project-media:focus-visible,.gallery-button:focus-visible,.lightbox button:focus-visible,.lightbox-thumb:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.support-card[data-gallery-card]{cursor:zoom-in}
.support-card[data-gallery-card]::after,.support-card[data-gallery-card] .support-copy{pointer-events:none}
.photo-cue{position:absolute;right:0;bottom:0;padding:13px 17px;background:rgba(7,30,22,.9);font-size:.74rem;letter-spacing:.11em;text-transform:uppercase}
.photo-cue b{font-size:1rem;margin-left:8px;font-weight:400}
.project-story{margin-top:22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.project-story summary{position:relative;padding:16px 34px 16px 0;cursor:pointer;list-style:none;font-size:.76rem;letter-spacing:.13em;text-transform:uppercase;font-weight:700}
.project-story summary::-webkit-details-marker{display:none}
.project-story summary::after{content:'+';position:absolute;right:2px;top:50%;transform:translateY(-50%);font-size:1.15rem;font-weight:400}
.project-story[open] summary::after{content:'−'}
.project-story-copy{padding:2px 0 10px}
.project-story-copy p{margin:0 0 17px}
.project-story[open]+.gallery-button{margin-top:12px}
.gallery-button{width:100%;margin-top:26px;padding:17px 0;border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:transparent;color:var(--ink);text-align:left;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;cursor:pointer}
.gallery-button span{float:right;font-size:1rem;font-weight:400}
.lightbox{position:fixed;z-index:9999;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;border:0;padding:0;background:#08140f;color:white;overflow:hidden}
.lightbox[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto}
.lightbox::backdrop{background:#08140f}
.lightbox-bar{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:16px 24px;border-bottom:1px solid rgba(255,255,255,.16)}
.lightbox-bar>div{display:flex;gap:16px;align-items:baseline;min-width:0}
.lightbox-title{font:400 1.35rem var(--serif)}
.lightbox-count{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:#aeb9b3}
.lightbox-close{position:static!important;padding:0!important;background:none!important;color:white;border:0;font-size:2rem!important;line-height:1;cursor:pointer}
.lightbox-stage{display:grid;grid-template-columns:64px minmax(0,1fr) 64px;align-items:center;min-height:0;padding:14px 10px}
.lightbox-stage figure{display:grid;grid-template-rows:minmax(0,1fr) auto;align-items:center;height:100%;min-height:0;margin:0;text-align:center}
.lightbox-stage img{justify-self:center;align-self:center;max-width:100%;max-height:calc(100dvh - 210px);object-fit:contain}
.lightbox-stage figcaption{min-height:28px;margin-top:8px;color:#d6ddd9;font-size:.86rem}
.lightbox-prev,.lightbox-next{position:static!important;top:auto!important;right:auto!important;width:48px;height:48px;padding:0!important;border:1px solid rgba(255,255,255,.38);border-radius:50%;background:rgba(8,20,15,.55);color:white;font-size:1.25rem!important;cursor:pointer;z-index:2}
.lightbox-prev{justify-self:start}
.lightbox-next{justify-self:end}
.lightbox-stage figure{grid-column:2}
.lightbox-thumbs{display:flex;gap:8px;overflow-x:auto;padding:10px 24px 16px;border-top:1px solid rgba(255,255,255,.12);scrollbar-width:thin}
.lightbox-thumb{position:static!important;top:auto!important;right:auto!important;flex:0 0 76px;width:76px;height:58px;padding:0!important;border:2px solid transparent;background:#111;opacity:.58;cursor:pointer}
.lightbox-thumb[aria-current="true"]{border-color:var(--gold);opacity:1}
.lightbox-thumb img{width:100%;height:100%;object-fit:contain;background:#111}
body.gallery-active{overflow:hidden}
@media(max-width:900px){.project-media img,.project-media img:first-child,.project-media img:last-child{height:auto;aspect-ratio:4/3;object-fit:cover}.project-media--no-crop img,.project-media--no-crop img:first-child,.project-media--no-crop img:last-child{aspect-ratio:auto;object-fit:contain}}
@media(max-width:600px){.photo-cue{padding:11px 13px}.lightbox-bar{padding:13px 15px}.lightbox-title{font-size:1.05rem}.lightbox-stage{grid-template-columns:44px minmax(0,1fr) 44px;padding:8px 2px}.lightbox-prev,.lightbox-next{width:38px;height:38px}.lightbox-stage img{max-height:calc(100dvh - 190px)}.lightbox-stage figcaption{padding:0 8px;font-size:.78rem}.lightbox-thumbs{padding:8px 12px 12px}.lightbox-thumb{flex-basis:62px;width:62px;height:48px}}
