/* Shared rhythm and reserved media geometry for the four project stories. */
.project-detail{--detail-body:14px;--detail-gap:clamp(48px,5vw,72px);--detail-surface:#f0f2ec}
.project-detail main{max-width:1400px}
.project-detail :is(.project-section,.design-section){padding:var(--detail-gap) 0 0}
.project-detail :is(.project-section__head,.design-section>.section-head){grid-template-columns:92px minmax(0,1fr);gap:28px;align-items:baseline;padding-bottom:18px;border-bottom:1px solid var(--line)}
.project-detail :is(.project-section h2,.design-section h2,.section-head h2){font-family:var(--sans);font-size:clamp(23px,2.4vw,32px);font-weight:500;line-height:1.4;letter-spacing:0}
.project-detail :is(.feature h3,.architecture-card h3,.postproduction-step__copy h3,.film-body h3){font-family:var(--sans);font-size:18px;line-height:1.5;font-weight:600;letter-spacing:0}
.project-detail :is(.project-summary,.design-summary,.project-section__lead,.feature p,.architecture-card p,.project-note,.postproduction-step__copy p,.output-note,.film-body p,.case-copy p,.facts dd,.detail p){font-size:var(--detail-body);line-height:1.85;color:#626b59}
.project-detail :is(.project-kicker,.design-kicker,.project-section__num,.section-num,.eyebrow){font-size:11px;line-height:1.6;color:#808976;letter-spacing:.08em}
.project-detail :is(.feature-list,.architecture-grid,.workflow-grid,.output-grid,.film-grid){gap:24px;margin-top:28px}
.project-detail :is(.feature,.architecture-card){padding-top:18px}
.project-detail :is(.screenshot-grid,.design-grid){gap:20px;margin-top:24px;align-items:start}
.project-detail :is(.screenshot-grid figure,.workflow-grid figure,.postproduction-step figure,.output-grid figure,.demo-frame,.project-cover,.design-grid figure,.photo-grid figure,.shot,.film-card){border:1px solid #dce1d6;border-radius:12px;overflow:hidden;background:#f6f7f3;box-shadow:none}
.project-detail main img[width][height]{display:block;width:100%;height:auto;aspect-ratio:var(--media-ratio);background:var(--detail-surface);color:#68705f}
.project-detail main :is(.screenshot-preview,.shot){background:var(--detail-surface)}
.project-detail main .shot-grid img{aspect-ratio:3/4;object-fit:cover}
.project-detail main video{display:block;width:100%;height:auto;aspect-ratio:var(--media-ratio,16/9);object-fit:contain;background:var(--detail-surface);max-height:none}
.project-detail .film-cover{height:auto;aspect-ratio:auto;background:var(--detail-surface)}
.project-detail main figcaption{margin:0;padding:11px 14px;font-family:var(--sans);font-size:12px;line-height:1.65;letter-spacing:0;color:#69735e;background:#f6f7f3;overflow-wrap:anywhere}
.project-detail .caption .status{font-size:11px;border-radius:4px}
.project-detail .project-toc{margin-top:0;margin-bottom:0}
.project-detail .design-subtitle{margin:32px 0 12px;font-size:14px;font-weight:500;letter-spacing:.04em;color:#4e5945}
.project-detail .case{padding:40px 0 48px}
.project-detail .case-heading{margin-bottom:24px}
.project-detail .case-heading h3{font-size:clamp(21px,2vw,27px)}
.project-detail .facts{gap:18px}
.project-detail .facts dt{font-size:12px;margin-bottom:5px;color:#7c8571}
.project-detail .detail summary{font-size:13px;color:#4e5945}
.project-detail .shot img{border-radius:0}
.project-detail .film-card:hover{transform:none;border-color:#b6c2a7}
.project-detail .film-body{padding:20px}
.project-detail .design-grid img,.project-detail .photo-grid img{border-radius:0}
.project-detail .project-at-a-glance{padding:clamp(24px,3.5vw,44px)}
.project-detail .project-at-a-glance h2{font-size:20px}
.project-detail .project-at-a-glance li{font-size:14px;line-height:1.85}
@media(max-width:760px){
 .project-detail{--detail-gap:44px}
 .project-detail :is(.project-section__head,.design-section>.section-head){grid-template-columns:1fr;gap:8px}
 .project-detail :is(.feature-list,.architecture-grid,.workflow-grid,.output-grid,.film-grid,.screenshot-grid,.design-grid){gap:18px}
 .project-detail main figcaption{font-size:12px;padding:10px 12px}
 .project-detail .case{padding:30px 0 38px}
 .project-detail .project-at-a-glance li{font-size:14px}
}
