/* Photo-led case carousel, with neighbouring stories visible at the edges. */
.workshop-heading{margin-bottom:42px}
.workshop-heading-row{display:flex;align-items:center;justify-content:space-between;gap:36px;margin-top:18px}
.workshop-heading h2{margin:0;font-weight:400;letter-spacing:-.045em;line-height:1.15}
.workshop-heading p{font-size:16px;line-height:1.75;color:var(--muted);margin:0;max-width:290px}
.case-gallery{position:relative;isolation:isolate}
.case-gallery:before{content:'';position:absolute;inset:-90px 0 0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 28% 48%,#f9c80e14,transparent 52%),radial-gradient(ellipse at 68% 46%,#3900b532,transparent 62%)}
.case-rail{--case-width:min(1192px,82vw);display:flex;gap:28px;width:100vw;position:relative;left:50%;transform:translateX(-50%);padding:14px calc((100vw - var(--case-width))/2) 20px;box-sizing:border-box;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;scroll-padding-inline:calc((100vw - var(--case-width))/2)}
.case-rail::-webkit-scrollbar{display:none}
.case-rail:focus-visible{outline:2px solid #b68aef;outline-offset:-3px}
.case-slide{flex:0 0 var(--case-width);min-width:0;display:grid;grid-template-columns:42% minmax(0,1fr);gap:32px;min-height:440px;padding:24px;box-sizing:border-box;border-radius:24px;background:radial-gradient(ellipse at 10% 100%,#53412b36,transparent 65%),radial-gradient(ellipse at 66% 60%,#49336c32,transparent 75%),#131019;scroll-snap-align:center;scroll-snap-stop:always}
.case-photo{overflow:hidden;border-radius:17px;min-height:0;aspect-ratio:1.12}
.case-photo img{display:block;width:100%;height:100%;object-fit:cover}
.case-slide-goodup .case-photo img{object-position:55% center}
.case-slide-ing .case-photo img{object-position:31% center}
.case-slide-kpn .case-photo img{object-position:53% center}
.case-slide-rituals .case-photo img{object-position:58% center}
.case-story{display:flex;flex-direction:column;justify-content:space-between;min-width:0;padding:12px 10px 8px 0;gap:40px}
.case-story h3{font-size:clamp(27px,2.6vw,38px);font-weight:400;letter-spacing:-.035em;line-height:1.25;margin:0 0 20px;max-width:470px}
.case-story p{font-size:18px;line-height:1.75;color:var(--muted);margin:0;max-width:455px}
.case-story-footer{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:24px}
.case-client{display:flex;flex-direction:column;gap:15px}
.case-logo{width:108px;height:48px;object-fit:contain;object-position:left center;display:block}
.case-logo-goodup{width:120px;filter:brightness(0) invert(1)}
.case-logo-rituals{width:128px;height:32px}
.case-client>span{font-size:14px;line-height:1.6;color:var(--muted)}
.case-link{display:inline-flex;align-items:center;gap:12px;color:#f2d37e;font-size:14px;line-height:1.6}
.case-link:hover{color:#fff}
.case-link:focus-visible{outline:2px solid #f9c80e;outline-offset:7px;border-radius:2px}
.case-controls{display:flex;align-items:center;justify-content:center;gap:22px;margin-top:8px}
.case-controls[hidden]{display:none}
.case-arrow{height:46px;width:46px;display:grid;place-items:center;border:1px solid #d6cbe078;border-radius:50%;background:#ffffff04;color:#ece2f6;cursor:pointer;transition:background .18s,border-color .18s}
.case-arrow svg{height:20px;width:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.case-arrow:hover{background:#3900b53a;border-color:#f9c80e;color:#f9c80e}
.case-arrow:focus-visible{outline:2px solid #f9c80e;outline-offset:4px}
.case-counter{font-size:12px;letter-spacing:.06em;color:#c4bbd2;min-width:56px;text-align:center;font-variant-numeric:tabular-nums}
.case-counter-name{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.workshop-beyond{display:flex;align-items:center;justify-content:space-between;gap:36px;margin-top:48px;padding:26px 30px;background:linear-gradient(110deg,#24133480,#130d1b60);border-radius:12px}
.workshop-beyond p{font-size:16px;line-height:1.75;color:var(--muted);margin:0;max-width:720px}
.workshop-beyond strong{font-weight:400;color:#f5efff}
.workshop-beyond a{font-size:14px;white-space:nowrap;color:#f2d37e}
@media(max-width:1050px){.case-slide{gap:24px;padding:20px;min-height:420px}.case-photo{aspect-ratio:auto}.case-story{padding:8px 0;gap:30px}.case-story h3{font-size:30px}.case-story p{font-size:16px}}
@media(max-width:760px){.workshop-heading{margin-bottom:24px}.workshop-heading-row{display:block;margin-top:14px}.workshop-heading p{margin-top:18px;max-width:none}.case-rail{--case-width:calc(100vw - 40px);gap:14px;padding-top:8px}.case-slide{display:flex;flex-direction:column;gap:24px;padding:16px;border-radius:20px;min-height:0}.case-photo{aspect-ratio:1.5;flex:none;border-radius:13px}.case-story{flex:1;padding:0 4px 6px;gap:32px}.case-story h3{font-size:27px;margin-bottom:14px}.case-story p{font-size:16px}.case-story-footer{gap:22px;align-items:flex-end}.case-client{gap:10px}.case-logo{height:38px;width:94px}.case-logo-rituals{height:28px;width:112px}.case-client>span{font-size:14px}.case-controls{margin-top:4px;gap:20px}.workshop-beyond{display:block;padding:24px;margin-top:36px}.workshop-beyond a{display:inline-block;margin-top:14px}}
@media(prefers-reduced-motion:reduce){.case-arrow{transition:none}}
