/* C3: stage-aware records, retained source galleries and native dialog. */
.c-tpl-caselist main.wrap{max-width:1240px;padding:calc(var(--c-hdr) + 64px) 24px 100px;margin:auto;background:var(--c-paper);color:var(--c-ink)}
.c-tpl-caselist{background:var(--c-paper)!important}
.c-tpl-caselist .index-top h1{font:300 clamp(36px,5vw,62px)/1.4 var(--c-serif);color:var(--c-ink)}
.c-tpl-caselist .index-top .intro{color:var(--c-ink-2)}
.c-tpl-caselist .case-grid-library,.c-tpl-case .related-case-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.c-tpl-caselist .case-card,.c-tpl-case .case-card{display:flex;flex-direction:column;border:0;border-radius:0;box-shadow:none;background:transparent;border-top:1px solid var(--c-pline);padding:0;min-width:0;color:var(--c-ink)}
.c-tpl-caselist .card-photo,.c-tpl-case .card-photo{order:-1;margin:0 0 20px;border:0;border-radius:0;aspect-ratio:16/10;background:var(--c-navy);overflow:hidden}
.c-tpl-caselist .card-photo img,.c-tpl-case .card-photo img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s}
.c-tpl-caselist .case-card:hover img,.c-tpl-case .case-card:hover img{transform:scale(1.025)}
.c-tpl-caselist .case-card h3,.c-tpl-case .case-card h3{font:400 21px/1.6 var(--c-serif);margin:12px 0;color:var(--c-ink)}
.c-tpl-caselist .card-meta,.c-tpl-case .card-meta{font-size:11px;color:var(--c-gold-ink)}
.c-tpl-caselist .card-summary,.c-tpl-case .card-summary{font:400 14px/1.85 var(--c-sans);color:var(--c-ink-2);margin-bottom:20px}
.c-tpl-caselist .category,.c-tpl-case .category{background:none;border:0;padding:0;border-radius:0;color:var(--c-gold-ink)}
.c-tpl-caselist .toolbar{position:sticky;top:var(--c-hdr);z-index:20;background:var(--c-paper);border-block:1px solid var(--c-pline);padding:16px 0}
.c-tpl-caselist .tabs{max-width:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:8px}
.c-tpl-caselist .tabs button{flex-shrink:0;border-radius:0;color:var(--c-ink);border-color:var(--c-pline)}
.c-tpl-caselist .tabs button.active{background:var(--c-navy);color:var(--c-iv)}
.c-tpl-case .c-case-hero .c-wrap{max-width:1240px;margin:0 auto;padding-inline:40px}
.c-tpl-case .c-case-hero .c-art-h1{max-width:960px;color:var(--c-iv);font:300 clamp(32px,4vw,56px)/1.45 var(--c-serif)}
.c-tpl-case .c-case-body>.c-wrap{max-width:1240px;margin:auto;padding-inline:40px}
.c-tpl-case .c-case-record{max-width:680px;min-width:0}
.c-tpl-case .c-stage,.c-tpl-case .c-pn{position:static;inset:auto;width:auto;height:auto;min-height:0;max-width:none;margin:0;padding:0;border-radius:0;box-shadow:none;backdrop-filter:none;display:block}
.c-tpl-case .c-stage .c-wrap{max-width:1240px;margin:auto;padding:0 24px;list-style:none}
.c-tpl-case .c-stage a{color:inherit;text-decoration:none;font-size:12px}
.c-tpl-case .c-pn{display:grid;grid-template-columns:1fr 1fr;margin-top:48px;border-block:1px solid var(--c-pline)}
.c-tpl-case .c-pn b{display:block;font:400 18px/1.7 var(--c-serif);color:var(--c-ink);margin-top:12px}
.c-tpl-case .c-pn small{color:var(--c-gold-ink)}
.c-tpl-case .detail-intro{max-width:none;margin:0 0 48px}
.c-tpl-case .detail-intro p{font:400 17.5px/1.95 var(--c-sans);color:var(--c-ink-2);margin-bottom:1em}
.c-tpl-case :is(.photo-section,.evidence-section,.case-privacy,.case-reading-notes){margin:48px 0}
.c-tpl-case :is(.section-heading h2,.related-section h2,.case-privacy h2,.case-reading-notes h2){font:400 26px/1.6 var(--c-serif);color:var(--c-ink)}
.c-tpl-case .photo{background:transparent;border:0;box-shadow:none;border-radius:0}
.c-tpl-case .gallery-button{border:0;border-radius:0;background:var(--c-paper-2);padding:0}
.c-tpl-case .gallery img{width:100%;height:auto;max-height:700px;object-fit:contain}
.c-tpl-case figcaption,.c-tpl-case .gallery-hint{font:400 12px/1.8 var(--c-sans);color:var(--c-ink-3)}
.c-tpl-case .c-facts{margin:0;font:400 13px/1.8 var(--c-sans)}
.c-tpl-case .c-facts .language-switch{display:flex;gap:10px;flex-wrap:wrap;position:static;border:0;background:none;padding:0}
.c-tpl-case .case-privacy{border-top:1px solid var(--c-pline);padding-top:28px;color:var(--c-ink-2)}
.c-tpl-case .related-section{margin-top:80px;border-top:1px solid var(--c-pline);padding-top:48px}
.c-tpl-case .lightbox{z-index:1000}
.c-tpl-case [hidden],.c-tpl-caselist [hidden]{display:none!important}
@media(max-width:1100px){.c-tpl-case .c-case-grid{grid-template-columns:minmax(0,680px);justify-content:center}.c-tpl-case .c-facts{position:static}.c-tpl-caselist .case-grid-library,.c-tpl-case .related-case-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.c-tpl-caselist .case-grid-library,.c-tpl-case .related-case-grid{grid-template-columns:1fr}.c-tpl-case .c-stage ol{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.c-tpl-case .c-stage li{flex:0 0 135px;scroll-snap-align:center}.c-tpl-case .c-case-body{padding:48px 0}.c-tpl-case .c-case-body>.c-wrap,.c-tpl-case .c-case-hero .c-wrap{padding-inline:20px}.c-tpl-case .c-case-hero{min-height:620px;max-height:800px}.c-tpl-case .c-case-hero h1{font-size:30px!important}.c-tpl-case .c-pn{gap:20px}.c-tpl-case .c-pn a+a{padding-left:12px}.c-tpl-case .c-pn b{font-size:16px}.c-tpl-caselist main.wrap{padding-inline:20px}.c-tpl-caselist .toolbar{position:static}}
.c:not(.c-tpl-home)>.c-hdr{background:var(--c-night);border-bottom:1px solid var(--c-line)}
.c-tpl-caselist .index-top>.language-switch{display:none}
.stage-scene-label{position:absolute;left:12px;bottom:12px;padding:5px 8px;background:rgba(6,10,19,.8);font-size:10px;letter-spacing:.06em;color:var(--c-iv);z-index:2}
