/* Retain the workbench paper, ink, radius and focus tokens. Artwork stays uncropped. */
.case-posters .project-lead,.campaign-subjects,.campaign-poster-grid,.campaign-scene-grid{max-width:1040px;margin-inline:auto}
.campaign-tabs{display:flex;gap:3px;overflow-x:auto;padding:0 0 16px;scrollbar-width:thin}
.campaign-tabs button{flex:0 0 auto;min-height:44px;padding:10px 16px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);font-weight:600;white-space:nowrap}
.campaign-tabs button[aria-selected=true]{color:var(--ink);background:color-mix(in srgb,var(--tint) 45%,transparent);border-bottom-color:var(--accent)}
.campaign-panel>header{margin:12px 0 24px;max-width:750px}
.campaign-panel h3{margin-bottom:10px}
.campaign-panel>header p,.campaign-observation{line-height:1.8;color:var(--copy)}
.campaign-poster-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 20px;align-items:start}
.campaign-poster{min-width:0;margin:0}
.campaign-original{display:flex;justify-content:center;width:100%;height:440px;border:0;padding:0;background:transparent}
.campaign-original img{display:block;width:100%;height:100%;object-fit:contain}
.campaign-poster figcaption{display:flex;align-items:start;justify-content:space-between;gap:8px;margin-top:12px;font-size:13px;line-height:1.6;color:var(--copy)}
.campaign-poster .zoom-action{flex-shrink:0;white-space:nowrap;font-size:12px}
.campaign-observation{margin-top:25px;font-size:14px;max-width:800px}
.campaign-season-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 18px;margin-top:24px}
.campaign-season-grid .campaign-original{height:325px}
.campaign-season-grid figcaption{display:block}
.campaign-season-grid .zoom-action{display:block;margin-top:5px}
.campaign-scene-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.campaign-scene-grid article{min-width:0}
.campaign-scene-grid h3{font-size:20px;margin-bottom:15px}
.campaign-scene-grid p{font-size:14px;line-height:1.8;margin-top:10px}
.campaign-scene-original{max-width:1040px!important;margin-inline:auto!important}
.campaign-scene-original .media-frame{background:transparent}
.case-posters .case-section{margin-top:48px}
@media(max-width:1000px){.campaign-poster figcaption{display:block}.campaign-poster .zoom-action{margin-top:5px}.campaign-original{height:390px}.campaign-season-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.campaign-season-grid .campaign-original{height:390px}}
@media(max-width:767px){.campaign-poster-grid{grid-template-columns:minmax(0,1fr);gap:28px}.campaign-original{height:auto;max-height:none}.campaign-original img{height:auto;max-height:680px;object-fit:contain}.campaign-poster figcaption{display:flex}.campaign-season-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 14px}.campaign-season-grid .campaign-original{height:300px}.campaign-season-grid .campaign-original img{height:100%}.campaign-season-grid figcaption{display:block}.campaign-scene-grid{grid-template-columns:minmax(0,1fr);gap:28px}.campaign-tabs button{padding:10px 13px;font-size:14px}.case-posters .case-section{margin-top:36px}}
@media(max-width:390px){.campaign-season-grid{grid-template-columns:minmax(0,1fr)}.campaign-season-grid .campaign-original{height:auto}.campaign-season-grid .campaign-original img{height:auto}}
