.case-site{overflow-x:clip;background:#090f18;color:#9ed0ff}.case-site::before{content:"";position:absolute;inset:0 0 auto;height:850px;pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 75% 5%,#1c568638,transparent 60%),url('assets/menu-background.webp') center top/cover no-repeat}.case-site::after{content:"";position:fixed;inset:-100px;pointer-events:none;z-index:20;background:url('assets/grain.svg');opacity:.055;animation:grain-shift .6s steps(1) infinite}.case-wrap,.case-header,.case-footer{width:min(1280px,calc(100% - 96px));margin-inline:auto}.case-header{height:140px;display:flex;align-items:center;justify-content:space-between}.case-header .header-projects{font-size:13px;color:#9ed0ff80;letter-spacing:.08em}.case-menu-toggle{display:flex;gap:8px;align-items:center;font:16px Aboreto}.case-menu-toggle img{width:22px}.case-site h1{font-size:clamp(48px,6.5vw,100px);line-height:1.06;letter-spacing:-.075em}.case-site h2{font-size:clamp(30px,3.3vw,52px);line-height:1.1}.case-site h3{font-size:26px}.kicker{font-size:13px;letter-spacing:.08em;color:#9ed0ff90;display:block;margin-bottom:30px}.collection-hero{padding:85px 0 80px}.collection-title{display:flex;justify-content:space-between;align-items:end}.collection-title em{font-style:normal;color:#9ed0ff85}.collection-count{font-size:19px;padding-bottom:10px}.collection-intro{display:flex;justify-content:space-between;align-items:end;margin-top:45px}.collection-intro p,.case-subtitle{font-size:18px;line-height:1.65;color:#8faecc}.collection-intro a{font-size:13px}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px 54px;align-items:start;padding-bottom:100px}.work-card:nth-child(even){margin-top:145px}.work-visual{position:relative;overflow:hidden;border-radius:22px}.case-media{margin:0;min-height:300px;aspect-ratio:16/10;position:relative;overflow:hidden;border:1px solid #9ed0ff26;border-radius:22px;background:radial-gradient(ellipse at 50% 60%,#17476b35,transparent 65%),linear-gradient(135deg,#111f2e,#0b1420)}.case-media::before{content:"";position:absolute;inset:20px;border:1px solid #9ed0ff0d;border-radius:12px}.media-cross{position:absolute;left:50%;top:45%;translate:-50% -50%;font:32px 'Pixelify Sans';color:#9ed0ff3d}.case-media figcaption{position:absolute;left:30px;right:30px;bottom:27px;display:flex;justify-content:space-between;gap:16px;font-size:12px;color:#9ed0ff8c;letter-spacing:.02em}.case-media figcaption span{font:11px ABeeZee;color:#789bbd70}.work-visual .case-media{transition:transform 1s cubic-bezier(.2,.8,.2,1),border-color .5s}.work-open{position:absolute;right:24px;top:24px;display:grid;place-items:center;border:1px solid #9ed0ff45;border-radius:50%;width:44px;height:44px;transition:background .4s,transform .4s}.work-card:hover .case-media{transform:scale(1.025);border-color:#9ed0ff80}.work-card:hover .work-open{background:#9ed0ff;color:#090f18;transform:rotate(45deg)}.work-meta{display:flex;gap:17px;align-items:baseline;margin-top:28px}.work-meta>span{font-size:13px;color:#789bbd}.work-meta h2{font-size:clamp(25px,2.6vw,39px)}.work-card>p{margin:17px 0 18px 32px;color:#8da8c2;line-height:1.6;font-size:14px;max-width:390px}.work-category{margin-left:32px;font-size:12px;color:#9ed0ff80}.case-cta{text-align:center;padding:100px 0 130px;border-top:1px solid #9ed0ff20}.case-cta h2{font-size:clamp(38px,4.8vw,72px)}.case-cta .button{margin-top:38px;height:52px;padding:0 32px;font-size:14px}.case-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #9ed0ff25;padding:32px 0 45px;gap:20px}.case-footer p{font-size:12px;line-height:1.8}.case-footer p span{color:#789bbd}.case-footer>a:last-child{font-size:12px}.case-hero{padding:45px 0 60px}.back-link{font-size:12px;color:#789bbd}.case-heading-meta{display:flex;justify-content:space-between;font-size:13px;margin:65px 0 30px;color:#8faecc}.case-hero h1{max-width:1050px;font-size:clamp(45px,6.4vw,92px)}.case-subtitle{margin-top:28px;max-width:600px}.case-hero-bottom{display:flex;justify-content:space-between;margin-top:60px;font-size:12px;color:#789bbd}.wide-media{width:calc(100% - 48px);max-width:1536px;margin:auto}.wide-media .case-media{aspect-ratio:2/1;min-height:380px}.case-overview{padding:140px 0;display:grid;grid-template-columns:1fr 1fr;gap:100px}.case-copy article+article{margin-top:55px}.case-copy h3{margin-bottom:20px}.case-copy p,.process-step p,.case-result p{font-size:16px;line-height:1.8;color:#91aac3}.case-solution{padding-bottom:130px}.solution-copy{font-size:clamp(19px,2vw,27px);line-height:1.7;color:#91aac3;max-width:960px;margin:35px 0 65px}.solution-gallery{display:grid;grid-template-columns:1.5fr 1fr;gap:30px}.solution-gallery .case-media{height:460px;aspect-ratio:auto}.mobile-media{background:radial-gradient(ellipse at 50% 35%,#235a8030,transparent 70%),#0d1824}.case-process{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding:30px 0 100px;align-items:start}.process-heading{position:sticky;top:90px}.process-progress{display:flex;align-items:center;gap:18px;margin-top:40px;font-size:12px}.process-progress>span:first-child{font-size:24px}.process-progress>div{height:2px;background:#9ed0ff20;width:100px}.process-progress i{height:100%;width:25%;display:block;background:#9ed0ff;transition:width .6s}.process-step{display:flex;gap:25px;padding:15px 0 65px;border-top:1px solid #9ed0ff20;margin-bottom:25px}.process-step>span{font-size:13px;padding-top:7px;color:#789bbd}.process-step h3{margin:0 0 22px}.case-result{border-block:1px solid #9ed0ff25;padding:65px 0;display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;margin-bottom:100px}.case-result strong{display:block;font:clamp(64px,8vw,118px) 'Pixelify Sans';text-shadow:0 0 45px #9ed0ff30}.case-result strong span{font-size:.5em}.case-result>div>.pixel:last-child{font-size:12px}.case-final{padding-bottom:100px}.case-final .case-media{aspect-ratio:2/1}.next-case{display:block;border-block:1px solid #9ed0ff20;padding:80px 0 100px;background:radial-gradient(ellipse at 75% 100%,#17476b30,transparent 70%)}.next-case .case-wrap>div{display:flex;align-items:center;justify-content:space-between;gap:40px}.next-case h2{font-size:clamp(35px,4.5vw,68px);max-width:850px}.next-arrow{font-size:64px;transition:transform .5s}.next-case:hover .next-arrow{transform:translate(10px,-10px)}.next-case p{color:#789bbd;font-size:15px;margin-top:25px}.case-site #case-menu{position:fixed;inset:0;border:0;border-radius:0;margin:0;padding:0;width:100%;height:100dvh;max-width:none;max-height:none;background:#090f18;isolation:isolate}.case-menu-bg{position:absolute;inset:0;background:url('assets/menu-background.webp') center/cover;z-index:-1}.case-menu-top{width:min(1280px,calc(100% - 96px));margin:55px auto;display:flex;justify-content:space-between;align-items:center}.case-menu-close{font:17px Aboreto}.case-menu-links{width:min(1280px,calc(100% - 96px));margin:100px auto;display:flex;flex-direction:column;gap:24px}.case-menu-links a{font:clamp(36px,5vw,70px) Aboreto;color:#9ed0ff65;transition:color .3s,translate .4s}.case-menu-links a:hover{color:#9ed0ff;translate:15px 0}#case-menu[open]{animation:menu-reveal .75s cubic-bezier(.16,1,.3,1)}.case-site.motion-enabled .reveal{opacity:0;transform:translateY(45px);filter:blur(7px);transition:opacity 1s,transform 1.3s cubic-bezier(.16,1,.3,1),filter 1.2s}.case-site.motion-enabled .reveal.visible{opacity:1;transform:none;filter:none}.case-site .skip-link{z-index:50}@keyframes menu-reveal{from{clip-path:inset(0 0 100%)}to{clip-path:inset(0)}}@keyframes grain-shift{25%{translate:30px -20px}50%{translate:-30px 40px}75%{translate:20px 20px}}
@media(max-width:700px){.case-wrap,.case-header,.case-footer,.case-menu-top,.case-menu-links{width:calc(100% - 40px)}.case-header{height:100px}.case-header> a img{width:43px}.header-projects{display:none}.collection-hero{padding:55px 0}.collection-count{display:none}.collection-intro{gap:25px;align-items:start;flex-direction:column}.collection-intro p{font-size:15px}.work-grid{grid-template-columns:1fr;gap:60px}.work-card:nth-child(even){margin-top:0}.case-media{min-height:250px}.case-media figcaption{left:20px;right:20px;bottom:20px;flex-direction:column;font-size:11px}.work-meta h2{font-size:28px}.case-footer{flex-wrap:wrap}.case-footer>a:last-child{width:100%;margin-top:10px}.case-heading-meta{margin-top:45px;font-size:11px;gap:20px}.case-hero{padding-top:25px}.case-hero h1{font-size:44px;overflow-wrap:break-word}.case-subtitle{font-size:17px}.case-hero-bottom{font-size:10px;gap:20px}.wide-media{width:calc(100% - 24px)}.wide-media .case-media{min-height:270px}.case-overview{grid-template-columns:1fr;gap:50px;padding:80px 0}.case-solution{padding-bottom:65px}.solution-gallery{grid-template-columns:1fr;gap:20px}.solution-gallery .case-media{height:300px}.solution-gallery .mobile-media{height:390px}.case-process{grid-template-columns:1fr;gap:45px;padding-bottom:40px}.process-heading{position:static}.case-result{grid-template-columns:1fr;gap:35px;margin-bottom:70px}.case-final{padding-bottom:65px}.next-case{padding:60px 0}.next-arrow{font-size:40px}.case-cta{padding:70px 0}.case-menu-links{margin-top:100px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.case-site::after{animation:none}.case-site.motion-enabled .reveal{opacity:1;transform:none;filter:none;transition:none}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Case studies: split opening, editorial narrative and compact process. */
.case-detail .case-media{width:100%;min-width:0}
.case-detail .case-header{height:120px}
.case-detail .case-hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.25fr);gap:50px;align-items:center;padding:50px 0 90px;min-height:650px}
.case-detail .case-hero-copy{min-width:0;padding:25px 0}
.case-detail .case-heading-meta{font-size:11px;gap:18px;margin:55px 0 28px;line-height:1.5}
.case-detail .case-hero h1{font-size:clamp(42px,4.8vw,73px);line-height:1.12;overflow-wrap:anywhere}
.case-detail .case-subtitle{font-size:17px;max-width:420px;line-height:1.7;margin-top:25px}
.case-detail .case-hero-bottom{padding-top:25px;border-top:1px solid #9ed0ff24;gap:25px;font-size:10px;line-height:1.6;margin-top:50px}
.case-detail .wide-media{width:100%;margin:0}
.case-detail .wide-media .case-media{height:600px;min-height:0;aspect-ratio:auto;border-radius:10px}
.case-detail .case-media{border-radius:10px;background:radial-gradient(ellipse at 65% 30%,#21527b25,transparent 70%),#0c1622}
.case-detail .case-media::before{inset:0;border:0;border-radius:0;background:repeating-linear-gradient(135deg,transparent 0 15px,#9ed0ff08 15px 16px);opacity:.5}
.case-detail .case-media figcaption{font-size:11px;left:24px;right:24px;bottom:24px;flex-wrap:wrap}
.case-detail .case-media figcaption span{font-size:10px}
.case-detail .case-overview{grid-template-columns:.8fr 1.8fr;gap:65px;padding:80px 0 95px;border-top:1px solid #9ed0ff25}
.case-detail .case-copy{display:grid;grid-template-columns:1fr 1fr;gap:40px}
.case-detail .case-copy article+article{margin:0}
.case-detail .case-overview h2{font-size:36px}
.case-detail .case-copy h3{font-size:22px}
.case-detail .case-copy p{font-size:14px;line-height:1.85}
.case-detail .kicker{font-size:11px;line-height:1.6}
.case-detail .case-solution{display:grid;grid-template-columns:.85fr 1.4fr;gap:65px;align-items:center;padding:55px 0 100px}
.case-detail .solution-copy{font-size:17px;line-height:1.85;margin:28px 0 0;max-width:470px}
.case-detail .solution-gallery{position:relative;display:block;padding:0 55px 100px 0}
.case-detail .solution-gallery .case-media:first-child{height:380px}
.case-detail .solution-gallery .mobile-media{position:absolute;right:0;bottom:0;width:200px;height:310px;box-shadow:0 20px 60px #0005;background:#101e2d;border-color:#9ed0ff40}
.case-detail .mobile-media figcaption{left:18px;right:18px;font-size:10px}
.case-detail .case-process{grid-template-columns:.85fr 1.4fr;gap:65px;padding:70px 0 90px;border-top:1px solid #9ed0ff25}
.case-detail .process-heading{top:45px}
.case-detail .process-list{display:grid;grid-template-columns:1fr 1fr;gap:35px}
.case-detail .process-step{display:block;padding:25px 0 15px;margin:0}
.case-detail .process-step>span{display:block;font-size:22px;margin-bottom:23px;color:#9ed0ff88}
.case-detail .process-step h3{font-size:23px;margin-bottom:18px}
.case-detail .process-step p{font-size:14px;line-height:1.8}
.case-detail .case-result{margin-bottom:65px;gap:65px;background:radial-gradient(ellipse at 0 50%,#12385d38,transparent 60%)}
.case-detail .case-final .case-media{aspect-ratio:2.5/1;min-height:300px}
.case-detail .case-final{padding-bottom:75px}
.case-detail .next-case{padding:60px 0 70px}
.case-detail .next-case h2{font-size:clamp(34px,4vw,60px)}
@media(min-width:701px) and (max-width:1000px){.case-detail .case-hero{gap:25px}.case-detail .wide-media .case-media{height:500px}.case-detail .case-copy{grid-template-columns:1fr;gap:30px}.case-detail .case-overview,.case-detail .case-solution,.case-detail .case-process{gap:35px}.case-detail .process-list{gap:22px}.case-detail .solution-gallery{padding-right:30px}.case-detail .solution-gallery .mobile-media{width:155px}}
@media(max-width:700px){.case-detail .case-header{height:95px}.case-detail .case-hero{display:flex;flex-direction:column;align-items:stretch;gap:30px;padding:15px 0 60px;min-height:0}.case-detail .case-hero-copy{padding:0}.case-detail .case-heading-meta{margin-top:35px}.case-detail .case-hero h1{font-size:43px;overflow-wrap:normal}.case-detail .case-hero-bottom{margin-top:30px}.case-detail .wide-media .case-media{height:320px}.case-detail .case-overview{grid-template-columns:1fr;gap:35px;padding:45px 0 55px}.case-detail .case-copy{grid-template-columns:1fr;gap:32px}.case-detail .case-solution{grid-template-columns:1fr;gap:35px;padding:20px 0 65px}.case-detail .solution-copy{font-size:16px}.case-detail .solution-gallery{padding:0 25px 85px 0}.case-detail .solution-gallery .case-media:first-child{height:275px}.case-detail .solution-gallery .mobile-media{width:145px;height:235px}.case-detail .case-process{grid-template-columns:1fr;gap:30px;padding:45px 0 65px}.case-detail .process-heading{position:static}.case-detail .process-list{grid-template-columns:1fr;gap:8px}.case-detail .process-step{display:flex;gap:22px;padding:25px 0}.case-detail .process-step>span{margin:0;font-size:20px}.case-detail .case-final .case-media{min-height:260px}.case-detail .case-result{gap:28px;padding:40px 0}.case-detail .next-case h2{font-size:32px}}

.work-art{margin:0;width:100%;height:100%;overflow:hidden;border-radius:inherit}.work-art img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.16,1,.3,1)}.work-card:hover .work-art img{transform:scale(1.035)}
