/* SLPK: UI-kit cards, timeline and existing case galleries. */
.single-zg3_portfolio:has(.slpk-case) .zg3-art-h1 { margin-bottom:24px; text-wrap:balance; }
.single-zg3_portfolio:has(.slpk-case) .zg3-art-cover__img { object-position:center 65%; }
.slpk-case .slpk-result { display:grid; grid-template-columns:1fr 1fr; gap:32px; align-items:center; margin:32px 0; padding:32px; border-radius:var(--zg3-r-lg); background:var(--zg3-black); color:var(--zg3-white); }
.zg3-prose .slpk-case .slpk-result__value { display:block; margin:0 0 8px; color:var(--zg3-white); font-size:clamp(38px,6vw,68px); line-height:1; font-weight:800; letter-spacing:-.05em; }
.zg3-prose .slpk-case .slpk-result p { margin:0; color:var(--zg3-white); font-size:15px; line-height:1.65; }
.slpk-case .slpk-result__label { display:block; font-size:14px; opacity:.75; }
.slpk-case .slpk-zones { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:24px 0; }
.slpk-case .slpk-zones .production-card { padding:24px; }
.slpk-case .slpk-zones .wc-icon { margin-bottom:16px; }
.zg3-prose .slpk-case .production-card__sub { color:var(--zg3-black); opacity:.75; }
.slpk-case .slpk-nav { display:flex; flex-wrap:wrap; gap:12px 24px; margin:24px 0 0; }
.zg3-prose .slpk-case .slpk-nav a { font-size:14px; text-underline-offset:4px; }
.slpk-case .wc-gallery__slide { scroll-snap-stop:normal; }
.zg3-prose .slpk-case .wc-gallery__zoom img { aspect-ratio:var(--wc-photo-ratio); height:auto; object-fit:contain; }
.slpk-case .slpk-video { position:relative; aspect-ratio:16/9; min-height:0; margin-top:24px; }
.slpk-case .slpk-video a { position:absolute; inset:0; display:block; color:var(--zg3-white); }
.slpk-case .slpk-video img { height:100%; width:100%; object-fit:cover; margin:0; opacity:.65; }
.zg3-prose .slpk-case .slpk-video__title { position:absolute; left:24px; bottom:24px; right:24px; color:var(--zg3-white); font-size:clamp(20px,3vw,30px); line-height:1.15; font-weight:700; }
.slpk-case .slpk-video__play { top:24px; right:24px; width:56px; height:56px; }
.slpk-case .slpk-video iframe { position:absolute; inset:0; width:100%; height:100%; border:0; }
.zg3-prose .slpk-case .slpk-video-link { font-size:13px; margin-top:12px; }
.slpk-case .timeline { list-style:none; }
.zg3-prose .slpk-case .timeline-item::before { content:none; }
.zg3-prose .slpk-case .timeline-content__title { margin:6px 0; font-size:20px; }
.zg3-prose .slpk-case .timeline-content__desc { margin:0; font-size:15px; color:var(--zg3-black); opacity:.75; }
.slpk-case .timeline-item:last-child { padding-bottom:0; }
.slpk-case .slpk-budget { padding:24px; margin:24px 0; border-radius:var(--zg3-r-lg); background:var(--wc-surface); }
.zg3-prose .slpk-case .slpk-budget__value { display:block; font-size:clamp(28px,4vw,42px); line-height:1.15; letter-spacing:-.04em; margin:0 0 12px; }
.zg3-prose .slpk-case .slpk-budget p { font-size:15px; margin:0; }
.zg3-prose .slpk-case .slpk-note { color:var(--zg3-black); opacity:.7; font-size:14px; }
@media(max-width:760px) {
 .slpk-case .slpk-result { grid-template-columns:1fr; gap:20px; padding:24px; }
 .slpk-case .slpk-zones { grid-template-columns:1fr; }
 .slpk-case .slpk-nav { gap:8px 20px; }
 .slpk-case .slpk-video__play { top:16px; right:16px; width:42px; height:42px; }
 .zg3-prose .slpk-case .slpk-video__title { left:16px; bottom:16px; right:16px; }
 .slpk-case .bento-date-card { min-height:140px; }
 .slpk-case .wc-gallery figcaption { padding-inline:0; }
}
