.pf__hero,.case__hero{margin-top:calc(var(--nav-h) * -1);padding-top:calc(var(--nav-h) + clamp(28px, 5vw, 64px));position:relative;overflow:hidden}.pf__glow{z-index:0;pointer-events:none;background:radial-gradient(circle,#6366f133,#a855f717 38%,#0000 66%);width:min(1200px,130vw);height:min(1000px,120vw);position:absolute;top:12%;left:50%;transform:translate(-50%,-50%)}.pf__hero-in,.case__hero-in{z-index:1;position:relative}.pf__h1{max-width:14ch;margin:0}.pf__sub{margin:var(--s-5) 0 0;max-width:50ch;color:var(--text-2)}.pf__facts{margin:var(--s-7) 0 0;padding-top:var(--s-5);border-top:1px solid var(--border);flex-wrap:wrap;gap:clamp(28px,5vw,64px);display:flex}.pf__facts div{gap:6px;display:grid}.pf__facts dt{color:var(--ash)}.pf__facts dd{color:var(--bone);letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin:0;font-size:clamp(36px,4vw,52px);font-weight:600;line-height:1}.pf__work{padding-top:clamp(24px,4vw,48px)}.pfilter{flex-wrap:wrap;gap:10px;display:flex}.pfilter__b{border:1px solid var(--border-strong);border-radius:var(--r-pill);min-height:44px;color:var(--ash);font:inherit;cursor:pointer;transition:color var(--dur-micro) var(--ease-out), border-color var(--dur-micro) var(--ease-out), background-color var(--dur-micro) var(--ease-out);background:0 0;align-items:center;gap:10px;padding:8px 16px;font-size:14px;display:inline-flex}.pfilter__b:hover{color:var(--bone);border-color:#f2f1ee66}.pfilter__b:focus-visible{outline:2px solid var(--foil-solid);outline-offset:3px}.pfilter__b[aria-pressed=true]{color:var(--bone);border-color:var(--foil-solid);background:#9d8cff1f}.pfilter__n{color:var(--ash);font-variant-numeric:tabular-nums;font-size:12px}.pfilter__b[aria-pressed=true] .pfilter__n{color:var(--foil-solid)}.pfilter__status{margin:var(--s-4) 0 var(--s-6);color:var(--ash)}.pgrid{grid-template-columns:minmax(0,1fr);gap:clamp(44px,6vw,72px) clamp(24px,3.2vw,40px);margin:0;padding:0;list-style:none;display:grid;position:relative}.pgrid>[hidden]{display:none}.pcard__link{color:inherit;border-radius:var(--r-lg);grid-template-columns:minmax(0,1fr);gap:18px;text-decoration:none;display:grid}.pcard__link:focus-visible{outline:2px solid var(--foil-solid);outline-offset:6px}.pcard__link .sframe{transition:border-color var(--dur-base) var(--ease-out)}.pcard__link:hover .sframe{border-color:#9d8cff8c}.pcard__meta{grid-template-columns:auto minmax(0,1fr) auto;align-items:baseline;gap:16px;display:grid}.pcard__n{color:var(--foil-solid);font-variant-numeric:tabular-nums}.pcard__head{gap:4px;display:grid}.pcard__client{color:var(--bone);letter-spacing:-.02em;margin:0;font-size:clamp(21px,2vw,26px);font-weight:600;line-height:1.15}.pcard__sector{color:var(--ash)}.pcard__status{color:var(--ash);white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.pcard__status:before{content:"";border:1px solid var(--ash);border-radius:50%;width:7px;height:7px}.pcard__status.is-live{color:var(--bone)}.pcard__status.is-live:before{border-color:var(--ok);background:var(--ok)}@media (min-width:900px){.pgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}.pf__results{margin-top:var(--s-6);grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr));gap:clamp(16px,2.2vw,24px);padding:0;list-style:none;display:grid}.pres{gap:var(--s-5);border:1px solid var(--border);border-radius:var(--r-lg);background:radial-gradient(120% 90% at 0 0,#a855f714,#0000 62%),#ffffff05;flex-direction:column;padding:clamp(24px,3vw,36px);display:flex}.pres__k{color:var(--foil-solid);margin:0}.pres__figs{gap:var(--s-5);margin:0;display:grid}.pres__figs dt{color:var(--ash)}.pres__figs dd{flex-wrap:wrap;align-items:baseline;gap:10px 14px;margin:6px 0 0;display:flex}.pres__was{color:var(--ash);font-variant-numeric:tabular-nums;font-size:clamp(20px,2vw,26px);font-weight:300}.pres__arrow{width:18px;height:18px;color:var(--ash);align-self:center}.pres__big{color:var(--bone);letter-spacing:-.035em;font-variant-numeric:tabular-nums;font-size:clamp(40px,4.4vw,60px);font-weight:600;line-height:1}.pres__prov{color:var(--ash);margin:0}.pres__more{color:var(--foil-solid);align-items:center;gap:8px;margin-top:auto;text-decoration:none;display:inline-flex}.pres__more:hover{color:var(--bone)}.pres__more .btn__arrow{transition:transform var(--dur-micro) var(--ease-out)}.pres__more:hover .btn__arrow{transform:translate(4px)}.case__label{margin:0 0 var(--s-4);color:var(--foil-solid)}.case__h1{max-width:18ch;margin:0}.case__sub{margin:var(--s-5) 0 0;max-width:48ch;color:var(--text-2)}.case__meta{gap:var(--s-5) clamp(24px, 4vw, 48px);margin:var(--s-7) 0 0;padding-top:var(--s-5);border-top:1px solid var(--border);grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));display:grid}.case__meta div{align-content:start;gap:6px;display:grid}.case__meta dt{color:var(--ash)}.case__meta dd{color:var(--bone);margin:0}.case__visit{color:var(--foil-solid);align-items:center;gap:8px;text-decoration:none;display:inline-flex}.case__visit:hover{color:var(--bone)}.case__visit svg{width:14px;height:14px;transform:rotate(-45deg)}.case__body{gap:var(--s-8);grid-template-columns:minmax(0,1fr);display:grid}.case__stage{align-self:start}.case__copy{gap:clamp(44px,6vw,72px);display:grid}.case__sec h2{margin:0 0 var(--s-4)}.case__sec p{max-width:60ch;color:var(--ash);margin:0}.case__steps,.case__results{gap:var(--s-4);max-width:62ch;margin:0;padding:0;list-style:none;display:grid}.case__steps{counter-reset:step}.case__steps li{padding-top:var(--s-4);border-top:1px solid var(--border);color:var(--ash);counter-increment:step;grid-template-columns:40px minmax(0,1fr);gap:12px;display:grid}.case__steps li:before{content:counter(step, decimal-leading-zero);color:var(--foil-solid);letter-spacing:.08em;font-variant-numeric:tabular-nums;font-size:13px;line-height:1.9}.case__results li{color:var(--bone);grid-template-columns:22px minmax(0,1fr);gap:12px;display:grid}.case__results svg{width:18px;height:18px;color:var(--foil-solid);margin-top:3px}@media (min-width:900px){.case__body{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(40px,5vw,80px)}.case__copy{order:-1;padding-block:4vh 12vh}.case__stage{top:calc(var(--nav-h-stuck) + 24px);position:sticky}.case__stage .sframe:not(.sframe--slides) .sframe__view{aspect-ratio:auto;height:min(calc(100svh - var(--nav-h-stuck) - 24px - 44px - 32px), 820px)}}.case__hero{flex-direction:column;min-height:100svh;padding-bottom:clamp(24px,4vw,48px);display:flex}.case__hero-in{flex-direction:column;flex:1 0 auto;display:flex}.case__h1{max-width:16ch}@media (min-width:900px){.case__h1{font-size:clamp(56px,8.4vw,128px);line-height:.98}.case__h1--long{max-width:22ch;font-size:clamp(48px,6.2vw,92px)}}.case__overview{margin:var(--s-5) 0 var(--s-7);max-width:62ch;color:var(--ash)}.case__foot{align-items:end;gap:var(--s-5) clamp(24px, 4vw, 48px);padding-top:var(--s-5);border-top:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;margin-top:auto;display:grid}.case__hero .case__meta{border:0;grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr));margin:0;padding:0}.case__visit span{overflow-wrap:anywhere}@media (min-width:900px){.case__hero .case__label{padding-top:var(--s-7);margin-top:auto}.case__hero .case__foot{margin-top:var(--s-7)}}.case__cue{color:var(--text-2);white-space:nowrap;align-items:center;gap:11px;margin:0;display:flex}.case__cue i{background:linear-gradient(to bottom, var(--foil-2), transparent);transform-origin:50% 0;width:1px;height:44px;display:block}@media (prefers-reduced-motion:no-preference){.case__cue i{animation:case-cue 2s var(--ease-in-out) infinite}}@keyframes case-cue{0%{opacity:1;transform:scaleY(0)}50%{opacity:1;transform:scaleY(1)}to{opacity:0;transform:translateY(44px)scaleY(1)}}@media (max-width:560px){.case__foot{grid-template-columns:minmax(0,1fr)}.case__cue{display:none}.case__hero .case__meta>div:first-child{grid-column:1/-1}}.case__hero+.band{padding-top:clamp(32px,4vw,56px)}.case__did{margin:var(--s-6) 0 0;flex-wrap:wrap;gap:10px;padding:0;list-style:none;display:flex}.case__did li{border:1px solid var(--border-strong);border-radius:var(--r-pill);color:var(--bone);padding:8px 14px;font-size:14px}.case__svc-h{margin:var(--s-7) 0 var(--s-4);color:var(--ash)}.case__svc{flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none;display:flex}.case__svc-a{border-radius:var(--r-pill);min-height:44px;color:var(--bone);transition:border-color var(--dur-micro) var(--ease-out);border:1px solid #9d8cff73;align-items:center;gap:10px;padding:8px 16px;font-size:14px;text-decoration:none;display:inline-flex}.case__svc-a svg:first-child{color:var(--foil-solid)}.case__svc-a .btn__arrow{width:14px;height:14px;color:var(--ash);transition:transform var(--dur-micro) var(--ease-out)}.case__svc-a:hover{border-color:var(--foil-solid)}.case__svc-a:hover .btn__arrow{transform:translate(3px)}.case__svc-a:focus-visible{outline:2px solid var(--foil-solid);outline-offset:3px}@media (prefers-reduced-motion:reduce){.case__svc-a .btn__arrow{transition:none}}.case__gallery{margin:var(--s-6) 0 0;grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr));gap:clamp(20px,3vw,36px);padding:0;list-style:none;display:grid}.case__quote{max-width:34ch;margin:0}.case__quote blockquote{color:var(--bone);letter-spacing:-.015em;margin:0;font-size:clamp(24px,3vw,38px);font-weight:300;line-height:1.3}.case__quote figcaption{margin-top:var(--s-6);align-items:center;gap:14px;display:flex}.case__quote img{object-fit:cover;border-radius:50%;width:52px;height:52px}.case__quote b{color:var(--bone);font-weight:600;display:block}.case__quote span span{color:var(--ash);font-size:14px}.case__next{gap:var(--s-6);color:inherit;border-radius:var(--r-lg);grid-template-columns:minmax(0,1fr);align-items:center;text-decoration:none;display:grid}.case__next:focus-visible{outline:2px solid var(--foil-solid);outline-offset:8px}.case__next-k{margin:0 0 var(--s-3);color:var(--foil-solid)}.case__next-n{color:var(--bone);align-items:center;gap:.35em;margin:0;display:flex}.case__next-n .btn__arrow{width:.7em;height:.7em;transition:transform var(--dur-base) var(--ease-out)}.case__next:hover .case__next-n .btn__arrow{transform:translate(10px)}.case__next-s{margin:var(--s-3) 0 0;color:var(--ash)}@media (min-width:900px){.case__next{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(40px,5vw,80px)}}@media (prefers-reduced-motion:reduce){.case__next-n .btn__arrow,.pres__more .btn__arrow{transition:none}}
