/* Landing project previews and production gallery. Detail pages keep projects.css. */
.project-card{display:block;position:relative;width:100%;height:100%;color:inherit;text-decoration:none}
.project-card:focus-visible{outline:3px solid #e6d7c3;outline-offset:-5px}
.project-card figcaption span:nth-child(2){flex:1}
.production{border-bottom:1px solid var(--line);background:var(--surface-production,#e9e5df)}
.production{padding-block:clamp(44px,4.5vw,72px)}
.production .section-intro{display:block;margin-bottom:32px}
.production .eyebrow{margin-bottom:24px}
.production h2{max-width:1000px;font-size:clamp(30px,2.5vw,42px);line-height:1.15;text-wrap:balance}
.production-showcase{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.05fr);gap:clamp(24px,2vw,36px);align-items:start}
.production-showcase>*{min-width:0}
.production-gallery,.production-partner{align-self:start}
.production-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;cursor:grab}
.production-track::-webkit-scrollbar{display:none}
.production-track.is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}
.production-track:focus-visible{outline:2px solid #69452d;outline-offset:4px}
.production-photo{flex:0 0 100%;min-width:0;margin:0;scroll-snap-align:start;scroll-snap-stop:always}
.production-photo img,.production-certificate img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;user-select:none}
.production-photo figcaption{min-height:calc(2.8em + 12px);padding-top:12px;font-size:12px;line-height:1.4;color:var(--muted)}
.production-controls{display:flex;justify-content:center;align-items:center;gap:18px;margin-top:8px}
.production-controls[hidden]{display:none}
.production-controls button{display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid #a08b78;border-radius:50%;background:transparent;color:#49301f;cursor:pointer;font-size:21px;line-height:1}
.production-controls button:disabled{opacity:.3;cursor:default}
.production-controls button:focus-visible{outline:2px solid #69452d;outline-offset:3px}
.production-controls span{min-width:58px;text-align:center;font-size:12px;line-height:1.4;letter-spacing:.08em;color:var(--muted)}
.production-partner{padding:0;background:transparent;border:0}
.production-partner h3{margin:12px 0 0;padding:0;font:400 clamp(18px,1.35vw,22px)/1.35 var(--serif);letter-spacing:-.015em;text-align:left;text-wrap:balance}
.production-certificate{display:block}
.production-certificate:focus-visible{outline:2px solid #69452d;outline-offset:4px}
.production-intro-copy{display:flex;flex-direction:column;gap:16px;padding:0}
.production .section-description{max-width:none;margin:0;font-size:16px;line-height:1.65}
.production .section-description+.section-description{margin:0}
@media(min-width:768px) and (max-width:1365px){
.production-showcase{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.production-intro-copy{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 28px}
.production .section-description:last-of-type{grid-column:1/-1;max-width:75ch}
}
@media(min-width:1024px) and (max-width:1365px){
.production-intro-copy{grid-template-columns:repeat(3,minmax(0,1fr))}
.production .section-description:last-of-type{grid-column:auto}
}
@media(max-width:767px){
.production .section-intro{margin-bottom:26px}
.production .eyebrow{margin-bottom:20px}
.production h2{max-width:24ch;font-size:clamp(27px,6vw,34px);line-height:1.16;text-wrap:initial}
.production h2 br{display:none}
.production h2 em{display:block}
.production-showcase{grid-template-columns:minmax(0,1fr);gap:30px;max-width:560px;margin-inline:auto}
.production-photo figcaption{min-height:0;font-size:12px}
.production-controls{margin-top:14px}
.production-partner h3{font-size:20px}
.production-intro-copy{gap:16px}
.production .section-description{font-size:16px;line-height:1.7}
}
