/* Real photographs lead this section. Their original aspect ratio is preserved. */
.case-showcase{position:relative;z-index:1;isolation:isolate;padding-block:var(--section-space);background:#edf4f9;scroll-margin-top:var(--header-height)}
.case-showcase-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:40px}
.case-showcase-heading .eyebrow{color:var(--blue);margin-bottom:20px}
.case-showcase-heading h2{font-size:clamp(32px,4vw,60px);max-width:20ch;line-height:1.14}
.case-showcase-heading>p{max-width:31ch;color:var(--muted);font-size:1rem;line-height:1.75;padding-bottom:4px}
.case-explorer.is-enhanced{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.75fr);align-items:center;gap:clamp(28px,4vw,64px)}
.case-picker-title{font-size:.875rem;font-weight:650;margin-bottom:16px}
.case-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.case-tabs button{padding:5px;border:1px solid #ccdce8;border-radius:14px;background:#ffffff80;text-align:left;min-width:0;transition:background .18s,border-color .18s,box-shadow .18s}
.case-tabs button>img{width:100%;height:auto;aspect-ratio:550/276;object-fit:contain;border-radius:9px}
.case-tabs button>span{display:flex;justify-content:space-between;gap:6px;padding:9px 5px 5px;font-size:.75rem;font-weight:650}
.case-tabs button>span>span{opacity:0}
.case-tabs button[aria-selected=true]{border-color:var(--blue);background:white;box-shadow:0 0 0 1px var(--blue),0 6px 20px #1b456416}
.case-tabs button[aria-selected=true]>span>span{opacity:1}
.case-tabs button:hover{background:#fff;border-color:var(--blue)}
.case-picker-note{font-size:.8125rem;line-height:1.65;color:var(--muted);max-width:32ch;margin-top:20px}
.case-stage{min-width:0}
.case-stage>[data-case-panel]+[data-case-panel]{margin-top:24px}
.case-explorer.is-enhanced .case-stage>[data-case-panel]{margin:0}
.case-stage .case-comparison,.case-gallery .case-comparison{background:#fff;border:1px solid #dce7ef;border-radius:22px;padding:clamp(16px,2vw,28px);box-shadow:0 12px 40px #25476008}
.case-gallery .case-comparison{margin-bottom:28px}
.case-heading{align-items:center;margin-bottom:18px}
.case-heading h2,.case-heading h3{font-weight:650;font-size:1.125rem;letter-spacing:-.02em}
.case-heading>span{font-size:.75rem}
.case-labels{font-size:.6875rem;font-weight:650;letter-spacing:.055em;text-transform:uppercase;margin-bottom:10px}
.case-labels>span{padding:5px 10px;border-radius:6px;background:#eef2f5;color:var(--muted)}
.case-labels>span:last-child{color:var(--blue);background:#e9f3fc}
.case-comparison.is-enhanced .case-pair{border-radius:12px;box-shadow:none}
.case-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px;flex-wrap:wrap}
.case-modes{display:inline-flex;max-width:100%;background:#eff4f8;border:1px solid #e1eaf1;border-radius:999px;padding:3px}
.case-modes button{min-height:44px;min-width:0;padding:10px 16px;border-radius:999px;font-size:.8125rem;font-weight:600;line-height:1.2;transition:background .15s,color .15s}
.case-modes button[aria-pressed=true]{background:#214f7b;color:white;box-shadow:0 2px 6px #18334a15}
.case-zoom{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px 0;font-size:.8125rem;font-weight:600;text-decoration:underline;text-underline-offset:4px}
.case-zoom svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round}
.case-hint{margin-top:10px;text-align:left;font-size:.75rem}
.case-comparison[data-case-view=vorher] .case-divider,.case-comparison[data-case-view=nachher] .case-divider{opacity:0}
.case-comparison[data-case-view=vorher] .case-labels>span:last-child,.case-comparison[data-case-view=nachher] .case-labels>span:first-child{opacity:.4}
.case-showcase-bottom{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-top:30px}
.case-showcase-bottom>p{font-size:.8125rem;line-height:1.7;max-width:64ch;color:var(--muted)}
.case-showcase-bottom .text-link{flex-shrink:0;font-size:.875rem;min-height:44px}
.case-showcase .case-draft-note{max-width:none;margin:24px 0 0;border:0;border-top:1px solid #d1dfe9;padding:16px 0 0;border-radius:0;font-size:.75rem}
.case-viewer-open{overflow:hidden}
.case-viewer{position:fixed;inset:0;margin:auto;padding:0;width:min(1200px,calc(100% - 48px));max-width:none;height:fit-content;max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);border:1px solid #d8e3ec;border-radius:22px;background:#f5f8fb;color:var(--ink);box-shadow:0 30px 120px #0c243c50;overflow:auto}
.case-viewer::backdrop{background:#132d47b8;backdrop-filter:blur(8px)}
.case-viewer-header{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 28px;border-bottom:1px solid var(--line);background:#f5f8fb}
.case-viewer-header .eyebrow{font-size:.625rem;margin-bottom:4px}
.case-viewer-header h2{font-size:1.5rem}
.case-viewer-close{display:flex;align-items:center;gap:14px;min-height:48px;padding:8px 15px;border:1px solid #cfdee9;border-radius:999px;font-size:.875rem;background:white}
.case-viewer-close span{font-size:1.5rem;line-height:1}
.case-viewer-body{padding:28px}
.case-viewer-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.case-viewer-photos .case-photo figcaption{font-size:.875rem;font-weight:650}
.case-viewer-photos .case-photo img{border-radius:12px;width:100%;height:auto;object-fit:contain}
.case-viewer-note{font-size:.8125rem;color:var(--muted);margin-top:22px}
@media(min-width:1500px){.case-explorer{max-width:1280px;margin-inline:auto}}
@media(max-width:1000px){
 .case-showcase-heading{gap:24px;align-items:start}.case-showcase-heading>p{max-width:28ch}
 .case-explorer.is-enhanced{grid-template-columns:minmax(180px,.7fr) minmax(0,1.6fr);gap:24px}
 .case-tabs{gap:10px}.case-tabs button>span{font-size:.6875rem;padding-inline:2px}
 .case-modes{flex:1}.case-modes button{flex:1;padding-inline:12px}.case-zoom{width:100%;padding:4px}.case-toolbar{gap:4px}
 .case-showcase-bottom{align-items:start;flex-direction:column;gap:12px}
}
@media(max-width:760px){
 .case-showcase{padding-block:56px}
 .case-showcase-heading{display:block;margin-bottom:26px}.case-showcase-heading .eyebrow{margin-bottom:14px}
 .case-showcase-heading h2{font-size:clamp(29px,8vw,42px);max-width:22ch}
 .case-showcase-heading>p{max-width:38ch;margin-top:18px;font-size:.9375rem}
 .case-explorer.is-enhanced{display:flex;flex-direction:column;align-items:stretch;gap:24px}
 .case-stage{order:0}.case-picker{order:1}.case-picker-title{font-size:.8125rem;margin-bottom:12px}
 .case-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .case-tabs button{border-radius:10px;padding:3px}.case-tabs button>img{border-radius:6px}
 .case-tabs button>span{font-size:.75rem;padding:10px 6px 6px;justify-content:space-between;white-space:nowrap}.case-tabs button>span>span{display:none}
 .case-picker-note{max-width:none;font-size:.75rem;margin-top:12px}
 .case-stage .case-comparison,.case-gallery .case-comparison{padding:14px;border-radius:18px}
 .case-heading{margin-bottom:14px}.case-heading h2,.case-heading h3{font-size:1rem}.case-heading>span{font-size:.6875rem}
 .case-labels{margin-bottom:8px}.case-labels>span{font-size:.625rem;padding:4px 8px}
 .case-modes{width:100%}.case-modes button{font-size:.75rem;padding-inline:10px}
 .case-toolbar{margin-top:14px}.case-hint{text-align:center;font-size:.6875rem;margin-top:4px}
 .case-showcase-bottom{gap:12px;margin-top:24px}.case-showcase-bottom .text-link{font-size:.8125rem}
 .case-viewer{width:100%;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;border:0;border-radius:0}
 .case-viewer-header{padding:calc(16px + env(safe-area-inset-top)) 20px 16px;gap:12px}.case-viewer-header h2{font-size:1.25rem}
 .case-viewer-close{min-height:44px;padding:8px 12px;font-size:.75rem;gap:8px}
 .case-viewer-body{padding:24px 20px calc(28px + env(safe-area-inset-bottom))}
 .case-viewer-photos{grid-template-columns:minmax(0,1fr);gap:28px}.case-viewer-note{font-size:.75rem}
}
@media(prefers-reduced-motion:reduce){.case-tabs button,.case-modes button{transition:none}}
