.case-motion-story{padding:60px 5vw 85px;scroll-margin-top:100px}.scene-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:34px}.scene-heading h2{font-size:clamp(36px,5.2vw,78px);font-weight:450;letter-spacing:-.06em;line-height:1.04;max-width:850px;margin:18px 0 0}.scene-heading>p{font-size:13px;line-height:1.8;min-width:180px;margin:0}.scene-heading>p span{color:#626571;font-size:11px}.project-scene{--scene-play:paused;--scene-x:0;--scene-y:0;--scene-scroll:0;--scene-progress:0;position:relative}.scene-space{position:relative;aspect-ratio:1.8;background:#121416;color:#f0f1fa;border-radius:22px;overflow:hidden;isolation:isolate;perspective:1200px}.scene-space:before{content:'';position:absolute;width:65%;aspect-ratio:1;border-radius:50%;left:-15%;top:-25%;background:#0016ec;filter:blur(2px);opacity:.55;transform:translate3d(calc(var(--scene-x)*-25px),calc(var(--scene-y)*-20px),0);transition:transform .35s}.scene-motif{position:absolute;width:120%;height:120%;left:-10%;top:-10%;fill:none;stroke:#5969ff;stroke-width:2;opacity:.85;transform:rotate(calc(var(--scene-x)*4deg));transition:transform .4s}.scene-motif g{transform-origin:50% 50%;animation:scene-orbit 20s ease-in-out infinite alternate;animation-play-state:var(--scene-play)}.scene-beacon{fill:#c73326;stroke:#c73326;stroke-width:2}.scene-deck{position:absolute;inset:0;transform-style:preserve-3d;transform:rotateX(calc(var(--scene-y)*-5deg + var(--scene-scroll)*3deg)) rotateY(calc(var(--scene-x)*7deg));transition:transform .4s ease-out}.scene-shot{position:absolute;inset:18% 15% 20%;margin:0;display:flex;align-items:center;justify-content:center;background:#f0f1fa;border:1px solid #ffffff30;border-radius:12px;box-shadow:0 30px 60px #0007;overflow:hidden;transition:transform 1.1s cubic-bezier(.22,.7,.2,1),opacity .8s,filter 1s;will-change:auto}.scene-shot[data-slot=active]{transform:translate3d(0,0,30px) rotate(-2deg);opacity:1;z-index:3;filter:none}.scene-shot[data-slot=next]{transform:translate3d(86%,7%,-150px) rotate(12deg) scale(.7);opacity:.28;z-index:1;filter:brightness(.6)}.scene-shot[data-slot=previous]{transform:translate3d(-86%,-8%,-150px) rotate(-14deg) scale(.7);opacity:.28;z-index:1;filter:brightness(.6)}.project-scene .scene-shot>img,.portfolio-card .portfolio-cover .scene-shot>img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;padding:0;transform:none!important;transition:none;border-radius:0}.project-scene .scene-shot>img[data-image-kind=interface],.portfolio-card .portfolio-cover .scene-shot>img[data-image-kind=interface]{object-fit:contain;padding:2%;background:#f0f1fa}.scene-grain{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#12141655,transparent 25%,transparent 70%,#121416c0)}.scene-overline,.scene-bottom{position:absolute;left:28px;right:28px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:.08em;z-index:5}.scene-overline{top:25px}.scene-overline>span:first-child:before{content:'';display:inline-block;width:5px;height:5px;background:#c73326;border-radius:50%;margin-right:9px}.scene-number{font-variant-numeric:tabular-nums}.scene-bottom{bottom:25px;font-size:12px;letter-spacing:0}.scene-title{position:absolute;left:3%;right:3%;bottom:6%;font-size:clamp(40px,8vw,130px);font-weight:600;line-height:1;letter-spacing:-.065em;color:#ffffff0c;white-space:nowrap;overflow:hidden;pointer-events:none}.scene-meter{height:2px;width:25%;max-width:140px;background:#ffffff25;overflow:hidden}.scene-meter i{display:block;width:100%;height:100%;background:#c73326;transform:scaleX(var(--scene-progress));transform-origin:left}.scene-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:22px}.scene-tabs{display:flex;flex-wrap:wrap;gap:7px}.scene-tabs button,.scene-toggle{border:1px solid #12141622;border-radius:30px;background:transparent;color:#121416;padding:13px 17px;font-size:11px;line-height:1.2}.scene-tabs button span{opacity:.5;margin-right:8px;font-size:9px}.scene-tabs button[aria-pressed=true]{background:#0016ec;color:white;border-color:#0016ec}.scene-toggle{flex-shrink:0}.scene-toggle span{margin-left:7px}.scene-caption{font-size:13px;line-height:1.75;max-width:850px;margin:20px 0 0;min-height:3.5em}.scene-note{font-size:10px;color:#626571;margin-top:12px;line-height:1.6}.scene-toggle:disabled{opacity:.6;cursor:default}.scene-tabs button:focus-visible,.scene-toggle:focus-visible{outline:3px solid #c73326;outline-offset:4px}
/* Each project gets a different movement, stage and graphic vocabulary. */
.scene-liquid .scene-motif{fill:#0016ec;stroke:#91a0ff;stroke-width:1;opacity:.8}.scene-liquid .scene-motif g{animation-name:scene-tide;animation-duration:9s}.scene-liquid .scene-shot[data-slot=active]{transform:translateY(-2%) rotate(2deg)}.scene-liquid .scene-space:before{left:65%;top:-65%;opacity:.5}
.scene-ribbon .scene-motif{stroke-width:28;stroke:#0016ec}.scene-ribbon .scene-shot{inset:14% 26% 17%}.scene-ribbon .scene-shot[data-slot=active]{transform:rotate(3deg)}.scene-ribbon .scene-space:before{left:60%;opacity:.2}
.scene-build .scene-motif g,.scene-blocks .scene-motif g{animation-name:scene-build;animation-duration:8s}.scene-build .scene-motif{fill:#0016ec33;stroke:#7582ff}.scene-build .scene-shot[data-slot=active]{transform:rotateY(-8deg) rotateZ(-2deg)}
.scene-pulse .scene-motif g,.scene-timeline .scene-motif g{animation-name:scene-pulse;animation-duration:5s}.scene-pulse .scene-motif{stroke-width:5;stroke-dasharray:1000 120;animation:scene-flow 12s linear infinite;animation-play-state:var(--scene-play)}
.scene-network .scene-motif g{animation-name:scene-breathe;animation-duration:7s}.scene-network .scene-motif{stroke:#6977ff;fill:#0016ec20}.scene-network .scene-space:before{left:70%;top:30%}
.scene-learn .scene-motif g,.scene-letter .scene-motif g,.scene-calendar .scene-motif g{animation-name:scene-rise;animation-duration:8s}.scene-letter .scene-shot[data-slot=active]{transform:rotate(-4deg)}.scene-calendar .scene-motif{stroke-width:3;fill:#0016ec15}
.scene-route .scene-motif,.scene-journey .scene-motif{stroke-width:7;stroke-dasharray:25 18;animation:scene-flow 12s linear infinite;animation-play-state:var(--scene-play)}.scene-journey .scene-shot[data-slot=active]{transform:rotate(1deg) translateX(1%)}.scene-journey .scene-space:before{left:70%;top:0}
.scene-verify .scene-motif{stroke-width:3;stroke-dasharray:700 150;animation:scene-flow 16s linear infinite;animation-play-state:var(--scene-play)}.scene-portal .scene-motif{fill:#0016ec44;stroke:#7885ff}.scene-portal .scene-motif g{animation-name:scene-breathe}
@keyframes scene-orbit{from{transform:rotate(-12deg) scale(.92)}to{transform:rotate(12deg) scale(1.08)}}@keyframes scene-tide{from{transform:translate(-4%,5%) rotate(-7deg)}to{transform:translate(4%,-5%) rotate(7deg)}}@keyframes scene-build{from{transform:translateY(6%) scale(.94)}to{transform:translateY(-6%) scale(1.03)}}@keyframes scene-pulse{0%,100%{transform:scale(1)}40%{transform:scale(1.12)}65%{transform:scale(.97)}}@keyframes scene-breathe{from{transform:scale(.8) rotate(-5deg)}to{transform:scale(1.12) rotate(5deg)}}@keyframes scene-rise{from{transform:translate(-2%,5%) rotate(-4deg)}to{transform:translate(2%,-5%) rotate(4deg)}}@keyframes scene-flow{to{stroke-dashoffset:-1200}}
.portfolio-cover>.project-scene{position:absolute;inset:0;z-index:3;opacity:0;transition:opacity .45s;pointer-events:none}.portfolio-cover>.project-scene .scene-space{height:100%;aspect-ratio:auto;border-radius:inherit}.portfolio-card.scene-preview .portfolio-cover>.project-scene{opacity:1}.portfolio-card.scene-preview .portfolio-cover>.portfolio-open{opacity:0}.portfolio-card.scene-preview .portfolio-cover:after{display:none}.portfolio-card.is-flight .portfolio-cover>.project-scene{opacity:0!important;transition:none}.portfolio-cover>.project-scene .scene-shot{inset:16% 12% 20%;border-radius:8px}.portfolio-cover>.project-scene.scene-ribbon .scene-shot{inset:15% 23% 20%}.portfolio-cover>.project-scene .scene-overline{left:17px;right:17px;top:16px;font-size:7px}.portfolio-cover>.project-scene .scene-bottom{left:17px;right:17px;bottom:16px;font-size:10px}.portfolio-cover>.project-scene .scene-title{font-size:60px}.portfolio-cover>.project-scene .scene-meter{max-width:65px}
@media(max-width:700px){.case-motion-story{padding:40px 6vw 50px}.scene-heading{display:block;margin-bottom:24px}.scene-heading h2{font-size:38px}.scene-heading>p{font-size:12px;margin-top:17px}.scene-space{aspect-ratio:1.13;border-radius:16px}.scene-shot{inset:22% 8% 25%;border-radius:8px}.scene-ribbon .scene-shot{inset:15% 20% 18%}.scene-motif{width:180%;left:-40%}.scene-overline{left:17px;right:17px;top:20px;font-size:7px}.scene-bottom{left:17px;right:17px;bottom:20px;font-size:11px}.scene-controls{align-items:flex-start;gap:10px}.scene-tabs{gap:6px}.scene-tabs button{padding:11px 12px;font-size:10px}.scene-tabs button span{margin-right:4px}.scene-toggle{padding:11px 13px}.scene-toggle span{display:none}.scene-caption{font-size:12px;min-height:5.25em}.scene-note{font-size:9px}.scene-title{bottom:12%;font-size:55px}}
@media(prefers-reduced-motion:reduce){.project-scene *{animation:none!important;transition:none!important}.scene-deck{transform:none}.portfolio-cover>.project-scene{display:none}.scene-meter{display:none}}

.scene-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.scene-enlarge{border:1px solid #12141622;border-radius:30px;padding:13px 17px;font-size:11px;background:#121416;color:#f0f1fa}.scene-enlarge:hover{background:#0016ec}@media(max-width:700px){.scene-controls{flex-wrap:wrap}.scene-actions{width:100%;justify-content:space-between}.scene-enlarge{font-size:10px;padding:11px 14px}.scene-toggle span{display:inline}}
/* Two bespoke, live 3D worlds. Original screenshots remain available in the viewer. */
.scene-world{position:absolute;inset:0;z-index:2;opacity:0;transition:opacity .5s;touch-action:pan-y}.scene-world canvas{display:block;width:100%;height:100%}.world-ready .scene-world{opacity:1}.world-ready .scene-deck,.world-ready .scene-motif,.world-ready .scene-grain,.world-ready .scene-title{display:none}.project-scene[data-world-kind] .scene-space:before{display:none}.project-scene[data-world-kind] .scene-meter{display:none}.project-scene[data-world-kind] .scene-deck{transform:none!important}.project-scene[data-world-kind] .scene-shot{transition:none}.world-hint{position:absolute;left:28px;top:48px;z-index:5;font-size:9px;color:#b1b6c5;pointer-events:none}.world-ready .scene-overline,.world-ready .scene-bottom{pointer-events:none;text-shadow:0 1px 8px #000}.project-scene[data-world-kind] .scene-space{aspect-ratio:1.8}.portfolio-cover>.project-scene[data-world-kind] .scene-space{aspect-ratio:auto}.portfolio-cover>.project-scene .world-hint{display:none}.project-scene[data-world-unavailable] .world-hint{color:#f0f1fa;background:#121416;padding:6px;border-radius:4px;max-width:80%}.project-scene[data-world-unavailable] .scene-deck{display:block}.project-scene[data-world-unavailable] .scene-shot:not([data-slot=active]){display:none}@media(max-width:700px){.project-scene[data-world-kind] .scene-space{aspect-ratio:1}.world-hint{left:17px;top:42px;font-size:8px}.project-scene[data-world-kind] .scene-bottom{font-size:10px}}@media(prefers-reduced-motion:reduce){.world-ready .scene-world{transition:none}}
