/* Project carousel shared by portfolio and company pages. */
.case-slider{--case-text:#f1f6fa;--case-muted:#a4b7c6;--case-blue:#139bfd;--case-line:#1d3546;margin-top:28px;color:var(--case-text);font-family:Poppins,Arial,sans-serif}.case-slider *{box-sizing:border-box}.case-slider a{color:inherit;text-decoration:none}.case-slider-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.case-slider-bar>p{font-size:13px!important;line-height:1.8!important;color:var(--case-muted);margin:0!important}.case-slider-controls{display:flex;gap:10px;flex-shrink:0}.case-slider-controls button{height:46px;width:46px;border-radius:50%;border:1px solid #31526b;background:#071b29;color:#d7e9f5;font:20px Arial;display:grid;place-items:center;cursor:pointer}.case-slider-controls button:disabled{opacity:.35;cursor:default}.case-slider-controls button:hover:not(:disabled){border-color:var(--case-blue);color:#59c8ff}.case-track{display:flex!important;gap:22px;overflow-x:auto!important;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#29506c transparent;padding:5px 2px 20px;align-items:stretch;scroll-padding-inline:2px;direction:ltr}.case-slide{flex:0 0 100%;min-width:0;border:1px solid var(--case-line);border-radius:14px;background:#06151f;overflow:hidden;display:flex;flex-direction:column;scroll-snap-align:start;transition:transform .2s,border-color .2s}.case-slide:hover{transform:translateY(-3px);border-color:#2886b8}.case-slide-image{display:block;position:relative;overflow:hidden;aspect-ratio:16/10;background:#071d2b}.case-slide-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.case-image-label{position:absolute;left:12px;bottom:12px;padding:4px 7px;border:1px solid #37546b;border-radius:4px;background:#021019e8;color:#a9d6f1;font-size:8px;line-height:1.5;letter-spacing:1px}.case-slide-body{padding:23px;display:flex;flex-direction:column;flex:1}.case-kicker{font-size:9px!important;color:#5cbeff!important;letter-spacing:1px;line-height:1.7!important;margin:0 0 12px!important}.case-slide h3{font-family:Montserrat,Arial,sans-serif;font-size:21px!important;font-weight:600;line-height:1.35!important;letter-spacing:-.025em!important;margin:0 0 13px!important}.case-slide h3 a:hover{color:#6ccfff}.case-slide-body>p:not(.case-kicker){font-size:14px!important;line-height:1.8!important;color:var(--case-muted);margin:0 0 24px!important}.case-read{display:flex!important;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding-top:16px;border-top:1px solid var(--case-line);margin-top:auto!important;color:#78ccff!important;font-size:12px!important;line-height:1.6!important;font-weight:500}.case-read span{font-size:18px}.case-slider-bottom{display:flex;justify-content:space-between;gap:15px;margin-top:9px;font-size:10px;color:#829db0;line-height:1.8}.case-slider a:focus-visible,.case-slider button:focus-visible,.case-track:focus-visible{outline:2px solid #43d9ed;outline-offset:4px}.case-work-heading h2{font-size:34px}.case-work-heading>p:not(.eyebrow){font-size:14px;max-width:740px;line-height:1.9}.case-work-section{padding-bottom:30px}
/* Case pages use the approved site colors and font families. */
.case-page{font-size:14px;line-height:1.9}.case-page .wrap{max-width:1180px}.case-header{position:relative!important;background:#020e17;border-bottom:1px solid #193044}.case-header>.wrap{min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:25px}.case-person-brand{display:flex;align-items:center;gap:24px}.case-person-brand img{width:179px;height:30px;object-fit:contain}.case-person-brand>span{font-size:9px;letter-spacing:1.8px;color:#5c849e;border-left:1px solid #29485e;padding-left:24px}.case-header nav{display:flex;gap:24px;font-size:12px;line-height:1.6}.case-header nav a{padding:13px 0}.case-header nav a:last-child{color:#63c3ff}.case-breadcrumb{display:flex;gap:13px;align-items:center;font-size:11px!important;color:#7399b2;margin-bottom:45px;flex-wrap:wrap}.case-breadcrumb a{color:#9ac9e8}.case-hero{padding-top:35px;padding-bottom:40px}.case-page .eyebrow{font-size:10px;letter-spacing:1.7px;line-height:1.7;margin-bottom:15px}.case-hero h1{font-size:clamp(38px,5.2vw,68px);line-height:1.1;letter-spacing:-.045em;margin-bottom:20px;overflow-wrap:anywhere}.case-hero h1 span{background:none;-webkit-text-fill-color:#139bfd;color:#139bfd}.case-tagline{font-family:Montserrat,Arial,sans-serif;color:#d5e6f2;font-size:24px!important;line-height:1.4;margin:0 0 18px;letter-spacing:-.025em}.case-lead{font-size:15px!important;line-height:1.9;max-width:760px;margin-bottom:0}.case-hero-actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap;margin-top:28px}.case-page .button{font-size:12px;line-height:1.5;min-height:46px;padding:13px 22px}.case-text-link{font-size:13px;line-height:1.7;color:#7bceff;display:inline-flex;align-items:center;gap:20px;min-height:44px}.case-facts{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:30px;border-top:1px solid #1c3547;padding-top:25px;margin-top:44px}.case-facts>div{min-width:0}.case-facts small{display:block;font-size:9px;letter-spacing:1.2px;color:#6b91ad;margin-bottom:8px}.case-facts strong{font-size:12px;font-weight:500;line-height:1.8;color:#c3d7e5;display:block}.case-visual{margin-top:0;margin-bottom:0}.case-browser-bar{border:1px solid #294a63;border-radius:14px 14px 0 0;background:#0a2030;display:flex;justify-content:space-between;align-items:center;gap:15px;padding:14px 24px;font-size:10px;color:#7199b4}.case-browser-bar>span:first-child{font-size:9px;letter-spacing:4px;color:#2c719e}.case-browser-bar small{font-size:8px;letter-spacing:1px}.case-visual>img{width:100%;height:auto;aspect-ratio:16/8.5;object-fit:contain;background:#061722;border:1px solid #223e52;border-top:0;border-radius:0 0 14px 14px}.case-visual figcaption{font-size:11px;color:#718fa4;margin-top:12px;text-align:center;line-height:1.8}.case-content{display:grid;grid-template-columns:230px minmax(0,1fr);gap:75px;padding-top:75px;padding-bottom:30px;align-items:start}.case-index{position:sticky;top:35px;border-top:1px solid #244253;padding-top:22px}.case-index>a{display:block;font-size:11px;line-height:1.8;min-height:42px;padding:9px 0;color:#8faec4}.case-index>a:hover{color:#6ccfff}.case-story{min-width:0}.case-story>section{padding-bottom:50px;margin-bottom:40px;border-bottom:1px solid #1b3345;scroll-margin-top:30px}.case-story h2{font-size:29px;margin-bottom:23px;line-height:1.25;letter-spacing:-.035em}.case-story p{font-size:14px;line-height:1.95;margin-bottom:18px;color:#a2b9ca}.case-role{font-weight:500;color:#dfedf7!important}.case-build-item{display:flex;gap:22px;margin-top:27px}.case-build-item>span{font-size:11px;color:#479acc;flex-shrink:0;margin-top:3px}.case-build-item h3{font-size:19px;line-height:1.4;margin-bottom:11px;letter-spacing:-.025em}.case-build-item p{font-size:14px;line-height:1.95;margin:0}.case-stack{margin:0}.case-stack>div{display:grid;grid-template-columns:160px 1fr;gap:24px;padding:20px 0;border-top:1px solid #1a3447;font-size:13px}.case-stack dt{font-weight:500;color:#c4daeb;line-height:1.8}.case-stack dd{margin:0;color:#9ab5c8;line-height:1.95}.case-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px;margin-bottom:25px}.case-results article{border:1px solid #224358;border-radius:10px;padding:22px;background:#071c2a}.case-results strong{font-family:Montserrat,Arial,sans-serif;font-size:26px;letter-spacing:-.04em;font-weight:600;color:#78cfff;line-height:1.3;display:block;margin-bottom:12px;overflow-wrap:anywhere}.case-results p{font-size:12px;line-height:1.85;margin:0}.case-editorial{padding:20px;border:1px solid #36546a;border-radius:10px;background:#0a2030;font-size:12px}.case-editorial summary{cursor:pointer;min-height:32px;font-weight:500;line-height:1.8;color:#c7deed}.case-editorial ul{padding-left:18px;margin:20px 0}.case-editorial li,.case-editorial p{font-size:12px;line-height:1.9;color:#91b0c5;margin-bottom:12px}.case-editorial p{margin:0}.case-next{border-top:1px solid #203c50;border-bottom:1px solid #203c50;margin-top:45px;padding-block:38px;display:flex;justify-content:space-between;align-items:center;gap:30px}.case-next h2{font-size:28px;margin-bottom:12px}.case-next p:not(.eyebrow){font-size:13px;max-width:650px;margin:0;line-height:1.9}.case-enquiry{padding-block:65px;display:flex;justify-content:space-between;gap:40px;align-items:center}.case-enquiry h2{font-size:33px;margin-bottom:16px}.case-enquiry p:not(.eyebrow){font-size:14px;max-width:650px;line-height:1.9;margin:0}
@media(max-width:1000px){.case-slide{flex-basis:100%}.case-content{gap:40px;grid-template-columns:190px minmax(0,1fr)}.case-person-brand>span{display:none}.case-facts{gap:20px}.case-stack>div{grid-template-columns:120px 1fr;gap:15px}.case-header nav{gap:15px}}
@media(max-width:767px){.case-slider-bar{align-items:start;gap:15px}.case-slider-bar>p{font-size:12px!important;max-width:240px}.case-slide{flex-basis:100%}.case-slider-controls button{width:44px;height:44px}.case-track{gap:16px}.case-slide-body{padding:22px}.case-slide h3{font-size:20px!important}.case-slide-body>p:not(.case-kicker){font-size:14px!important}.case-slider-bottom{font-size:10px;flex-wrap:wrap;gap:5px}.case-slider-bottom>span:last-child{font-size:9px}.case-work-heading h2{font-size:29px}.case-page .wrap{width:calc(100% - 36px)}.case-header>.wrap{min-height:100px;flex-wrap:wrap;gap:8px;padding-block:18px}.case-person-brand img{width:150px;height:auto}.case-header nav{gap:22px;font-size:11px;flex-wrap:wrap;width:100%}.case-header nav a{padding:6px 0;min-height:34px}.case-hero{padding-top:25px;padding-bottom:30px}.case-breadcrumb{font-size:10px!important;gap:10px;margin-bottom:30px}.case-hero h1{font-size:40px}.case-tagline{font-size:21px!important}.case-lead{font-size:14px!important}.case-facts{grid-template-columns:1fr;gap:18px;margin-top:30px;padding-top:22px}.case-facts>div{display:grid;grid-template-columns:120px 1fr;gap:18px}.case-facts small{font-size:8px;margin:3px 0}.case-facts strong{font-size:12px}.case-hero-actions{gap:12px 22px}.case-browser-bar{padding:12px;font-size:9px;gap:8px}.case-browser-bar small{font-size:7px}.case-visual>img{aspect-ratio:16/11}.case-visual figcaption{font-size:10px;text-align:left}.case-content{display:block;padding-top:35px}.case-index{position:static;display:flex;gap:12px;overflow-x:auto;padding-top:15px;padding-bottom:12px;margin-bottom:30px;scrollbar-width:thin}.case-index .eyebrow{display:none}.case-index>a{white-space:nowrap;min-height:44px;padding:11px 10px;font-size:11px;background:#0a2131;border-radius:6px}.case-story h2{font-size:25px}.case-story>section{padding-bottom:30px;margin-bottom:30px}.case-story p,.case-build-item p{font-size:14px;line-height:1.9}.case-build-item{gap:14px}.case-build-item h3{font-size:18px}.case-stack>div{display:block;padding-block:17px}.case-stack dt{font-size:13px;margin-bottom:8px}.case-stack dd{font-size:13px}.case-results{grid-template-columns:1fr;gap:12px}.case-results article{display:grid;grid-template-columns:100px 1fr;gap:20px;padding:20px;align-items:start}.case-results strong{font-size:23px;margin:0}.case-results p{font-size:12px;margin:0}.case-next,.case-enquiry{flex-direction:column;align-items:start;gap:23px}.case-next{margin-top:30px;padding-block:30px}.case-enquiry{padding-block:40px}.case-enquiry h2{font-size:29px}.case-enquiry .button,.case-next .button{width:100%}.case-page .button{font-size:12px;min-height:48px}.case-editorial summary{font-size:12px;min-height:44px}.case-page .eyebrow{font-size:9px}.case-page .case-content{width:calc(100% - 36px)}}
@media(max-width:380px){.case-slide{flex-basis:100%}.case-slider-bar{flex-direction:column}.case-slider-bar>p{max-width:none}.case-slider-controls{align-self:flex-end}.case-slide-body{padding:19px}.case-hero h1{font-size:35px}.case-facts>div{grid-template-columns:100px 1fr;gap:12px}.case-results article{grid-template-columns:82px 1fr;gap:12px}.case-header nav{gap:15px;font-size:10px}}
@media(prefers-reduced-motion:reduce){.case-track{scroll-behavior:auto}.case-slide{transition:none}}

/* One project per slide, at every viewport width. */
.case-slider .case-track { padding-inline: 0; }
.case-slider .case-slide {
  flex: 0 0 100%;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
  align-items: stretch;
  scroll-snap-stop: always;
}
.case-slider .case-slide-image { aspect-ratio: 16 / 10; min-height: 100%; }
.case-slider .case-slide-body { padding: 32px; min-width: 0; }
@media (max-width: 767px) {
  .case-slider .case-slide { display: flex; flex-direction: column; }
  .case-slider .case-slide-image { aspect-ratio: 16 / 10; min-height: 0; }
  .case-slider .case-slide-body { padding: 22px; }
}
