/* 截图版精选案例：仅作用于首页案例轮播。 */
.case-showcase{padding:105px 0 78px;background:#eee0cb;color:var(--ink);overflow:hidden}
.case-showcase .section-kicker{border-color:rgba(18,17,15,.22)}
.case-showcase-intro{display:grid;grid-template-columns:1fr;align-items:end;margin:58px 0 45px}
.case-showcase-intro h2{width:100%;margin:0;text-align:right;font:800 clamp(48px,4.45vw,84px)/.98 var(--display);letter-spacing:-.07em;white-space:nowrap}
.case-showcase-intro p{max-width:330px;margin:0 0 8px;font-size:14px;line-height:1.9}
.case-showcase-stage{position:relative}
.case-showcase-viewport{overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--pad);overscroll-behavior-x:contain;scrollbar-width:none;cursor:grab;touch-action:pan-y pinch-zoom;will-change:scroll-position}
.case-showcase-viewport::-webkit-scrollbar{display:none}
.case-showcase-viewport.is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}
.case-showcase-track{display:flex;width:max-content;gap:clamp(14px,1.55vw,26px);padding:0 var(--pad)}
.case-showcase-card{display:block;flex:none;width:calc((100vw - (var(--pad) * 2) - clamp(42px,4.65vw,78px))/4);min-width:255px;color:inherit;scroll-snap-align:start;scroll-snap-stop:normal}
.case-showcase-image{position:relative;aspect-ratio:3/4;overflow:hidden;background:#dfd2bf;contain:paint}
.case-showcase-image img{width:100%;height:100%;object-fit:cover;transition:transform .75s var(--ease),filter .45s ease;pointer-events:none;user-select:none;-webkit-user-drag:none}
.case-showcase-card.is-live:hover img{transform:scale(1.035);filter:saturate(.88)}
.case-showcase-viewport.is-dragging .case-showcase-image img{transition:none;transform:none}
.case-showcase-card.is-live:focus-visible{outline:2px solid var(--clay);outline-offset:5px}
.case-showcase-card.is-placeholder .case-showcase-image img{filter:saturate(.25) contrast(.88);opacity:.76}
.case-showcase-image b{position:absolute;inset:auto 14px 12px auto;color:rgba(244,240,232,.92);font:800 clamp(60px,7vw,118px)/.8 var(--display);letter-spacing:-.09em;text-shadow:0 2px 18px rgba(0,0,0,.25)}
.case-showcase-meta{display:flex;justify-content:space-between;gap:18px;align-items:baseline;margin-top:12px;padding-top:12px;border-top:1px solid rgba(18,17,15,.25)}
.case-showcase-meta strong{font-size:14px}.case-showcase-meta strong span{display:none}
.case-showcase-meta small{font-size:10px;white-space:nowrap;opacity:.7}
.case-showcase-card.is-placeholder .case-showcase-meta strong span{display:inline;margin-right:8px;font:500 9px var(--mono);opacity:.62}
.case-showcase-arrow{position:absolute;z-index:4;top:50%;width:48px;height:48px;border:1px solid rgba(18,17,15,.24);background:rgba(238,224,203,.9);backdrop-filter:blur(8px);transform:translateY(-50%);font:400 20px/1 var(--mono);transition:background .25s,color .25s,opacity .25s}
.case-showcase-prev{left:clamp(8px,1.25vw,22px)}.case-showcase-next{right:clamp(8px,1.25vw,22px)}
.case-showcase-arrow:hover:not(:disabled){background:var(--ink);color:var(--bone)}
.case-showcase-arrow:disabled{opacity:.2;cursor:default}
.case-showcase-controls{display:flex;justify-content:flex-start;padding-top:18px}
.case-showcase-controls>a{padding:11px 0;border-bottom:1px solid currentColor;font-size:12px}
.case-showcase-controls>a:hover{color:var(--clay)}
@media(max-width:900px){.case-showcase{padding:82px 0 68px}.case-showcase-intro{grid-template-columns:1fr;margin:44px 0 35px}.case-showcase-intro h2{white-space:normal}.case-showcase-intro p{margin:0}.case-showcase-card{width:70vw;max-width:420px}.case-showcase-controls{padding-top:14px}}
@media(max-width:520px){.case-showcase{height:auto;min-height:0;padding:74px 0 42px}.case-showcase-intro{margin:32px 0 28px}.case-showcase-intro h2{font-size:12.8vw;line-height:1.03}.case-showcase-intro p{margin-top:20px;font-size:12px}.case-showcase-track{gap:12px}.case-showcase-card{width:calc(100vw - 44px);min-width:0}.case-showcase-image{aspect-ratio:4/5}.case-showcase-meta{margin-top:9px;padding-top:9px}.case-showcase-meta strong{font-size:13px}.case-showcase-arrow{width:42px;height:42px}.case-showcase-prev{left:6px}.case-showcase-next{right:6px}.case-showcase-controls{padding-top:12px}.case-showcase-controls>a{font-size:11px}}
@media(prefers-reduced-motion:reduce){.case-showcase-viewport{scroll-behavior:auto}.case-showcase-image img{transition:none}}
