.case{background:var(--color-paper);color:var(--color-ink)}.case h1,.case h2{font-family:var(--font-display), var(--font-sans)}.case-accent{color:var(--color-blue)}.case .catalog-hero{border-radius:0}.catalog-hero--light h1 .case-hero-industry{letter-spacing:0;color:var(--color-muted);margin-top:8px;font-size:15px;font-weight:600;line-height:1.4;display:block}.case-hero-tech{border-top:1px solid var(--color-line);align-items:center;gap:12px;margin-top:32px;padding-top:22px;display:flex}.case-hero-client-logo{place-items:start;min-height:64px;margin-top:32px;display:grid}.case-hero-client-logo img{object-fit:contain;width:auto;max-width:220px;height:auto;max-height:64px}.case-hero-tech span{color:var(--color-muted);font-size:13px;font-weight:600}.case-hero-tech img{object-fit:contain;width:auto;max-width:120px;height:auto;max-height:32px}.case-study{background:var(--color-fog);padding:76px 0;position:relative}.case-study .site-wrap{z-index:1;position:relative}.case-study-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;display:grid}.case-study-grid>div{padding:0 48px}.case-study-grid>div:first-child{border-right:1px solid var(--color-line);padding-left:0}.case-study-grid>div:last-child{padding-right:0}.case-study-grid h3{color:var(--color-navy);letter-spacing:-.02em;margin:0 0 14px;font-size:clamp(22px,2.4vw,28px);font-weight:800;line-height:1.2}.case-study-grid p{max-width:46ch;color:var(--color-muted);margin:0;font-size:18px;line-height:1.6}@media (max-width:900px){.case-study{padding:56px 0}.case-study-grid{grid-template-columns:minmax(0,1fr);gap:32px}.case-study-grid>div{padding:0}.case-study-grid>div:first-child{border-right:0;border-bottom:1px solid var(--color-line);padding-bottom:32px}.case-study-grid p{max-width:none;font-size:16.5px}}.case-scope{background:var(--color-paper);padding:76px 0;position:relative}.case-scope .site-wrap{z-index:1;position:relative}.case-scope-grid{grid-template-columns:minmax(0,1fr) minmax(0,560px);align-items:center;gap:56px;display:grid}.case-scope-copy h2{letter-spacing:-.025em;color:var(--color-navy);margin:0 0 22px;font-size:clamp(26px,2.9vw,34px);font-weight:800;line-height:1.16}.case-scope-checks{gap:14px;margin:0;padding:0;list-style:none;display:grid}.case-scope-checks li{color:var(--color-ink);align-items:flex-start;gap:12px;font-size:15px;line-height:1.5;display:flex}.case-scope-checks svg{color:var(--color-blue);margin-top:2px}.case-scope-media{aspect-ratio:4/3;position:relative;overflow:hidden}.case-scope-media img{object-fit:cover}@media (max-width:900px){.case-scope{padding:56px 0}.case-scope-grid{grid-template-columns:minmax(0,1fr);gap:28px}}.case-gallery{background:var(--color-fog);padding:76px 0}.case-gallery-head{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:32px;display:flex}.case-gallery-head h2{letter-spacing:-.025em;color:var(--color-ink);margin:0;font-size:clamp(24px,2.7vw,32px);font-weight:800;line-height:1.16}.case-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.case-gallery-grid li{aspect-ratio:4/3;background:#fff;position:relative;overflow:hidden}.case-gallery-grid button{cursor:zoom-in;background:0 0;border:0;width:100%;height:100%;padding:0;display:block;position:absolute;inset:0}.case-gallery-grid img{object-fit:cover;transition:transform .22s}.case-gallery-grid button:hover img{transform:scale(1.04)}.case-gallery-controls{align-items:center;gap:16px;display:flex}.case-gallery-nav{border:1px solid var(--color-line);width:32px;height:32px;color:var(--color-navy);cursor:pointer;background:#fff;border-radius:999px;place-items:center;padding:0;transition:color .16s;display:grid}.case-gallery-nav:hover{color:var(--color-orange)}.case-gallery-prev .icon-sm{transform:scaleX(-1)}.case-gallery-carousel{overflow:hidden}.case-gallery-track{grid-auto-columns:calc(33.3333% - 13.3333px);grid-auto-flow:column;gap:20px;display:grid}.case-gallery-track ul{list-style:none;display:contents}.case-gallery-track li{aspect-ratio:4/3;padding:0 2px;position:relative}.case-gallery-track button{cursor:zoom-in;-webkit-user-drag:none;background:#fff;border:0;padding:0;display:block;position:absolute;inset:0 2px}.case-gallery-track img{object-fit:cover;-webkit-user-drag:none}.case-gallery-dialog{background:var(--color-ink);border:0;width:min(1100px,100% - 32px);max-width:none;height:min(760px,100dvh - 32px);max-height:none;margin:auto;padding:0;position:fixed;inset:0;overflow:hidden;box-shadow:0 28px 48px #00081861}.case-gallery-dialog:focus{outline:none}.case-gallery-dialog:focus-visible{outline:2px solid var(--color-blue);outline-offset:3px}.case-gallery-dialog::backdrop{background:#02101fc7}.case-gallery-dialog-media{width:100%;height:100%;position:relative}.case-gallery-dialog-media img{object-fit:contain}.case-gallery-dialog-close{z-index:1;color:#fff;cursor:pointer;background:#ffffff1f;border:1px solid #ffffff3d;border-radius:999px;place-items:center;width:36px;height:36px;padding:0;transition:background .16s;display:grid;position:absolute;top:16px;right:16px}.case-gallery-dialog-close:hover{background:#ffffff38}.case-gallery-dialog-nav{z-index:1;color:#fff;cursor:pointer;background:#ffffff1f;border:1px solid #ffffff3d;border-radius:999px;place-items:center;width:40px;height:40px;margin-top:-20px;padding:0;transition:background .16s;display:grid;position:absolute;top:50%}.case-gallery-dialog-nav:hover{background:#ffffff38}.case-gallery-dialog-prev{left:16px}.case-gallery-dialog-prev .icon-sm{transform:scaleX(-1)}.case-gallery-dialog-next{right:16px}.case-gallery-dialog-count{z-index:1;color:#fff;font-variant-numeric:tabular-nums;background:#ffffff1f;padding:4px 10px;font-size:13px;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}@media (prefers-reduced-motion:no-preference){.case-gallery-dialog[open]{animation:.28s cubic-bezier(.16,1,.3,1) consult-in}.case-gallery-dialog[open]::backdrop{animation:.22s ease-out consult-backdrop}}@media (max-width:1100px){.case-gallery-track{grid-auto-columns:calc(50% - 10px)}.case-gallery-nav{width:40px;height:40px}}@media (max-width:900px){.case-gallery{padding:56px 0}.case-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.case-gallery-grid{grid-template-columns:minmax(0,1fr)}.case-gallery-track{grid-auto-columns:100%}.case-gallery-dialog{width:calc(100% - 20px);height:min(560px,100dvh - 20px)}}.case-outcome{background:var(--color-navy);color:var(--color-paper);text-align:center;padding:84px 0;position:relative}.case-outcome-inner{max-width:720px;margin-inline:auto}.case-outcome-kicker{color:#fff9;letter-spacing:.04em;margin-bottom:20px;font-size:13px;font-weight:700;display:block}.case-outcome-inner p{font-family:var(--font-display), var(--font-sans);letter-spacing:-.02em;margin:0;font-size:clamp(26px,3.4vw,38px);font-weight:800;line-height:1.28}@media (max-width:900px){.case-outcome{padding:56px 0}}.case-related{background:var(--color-paper);padding:76px 0;position:relative}.case-related:before{content:"";pointer-events:none;background:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 22' preserveAspectRatio='none'><path d='M0 0H1440V19C1320 21 1280 22 1210 21C1080 20 1020 16 930 11C760 4 660 0 560 0C380 0 180 5 0 4Z' fill='%2304182e'/></svg>") 0 0/100% 100% no-repeat;height:22px;position:absolute;inset:0 0 auto}.case-related h2{letter-spacing:-.025em;color:var(--color-ink);margin:0 0 32px;font-size:clamp(24px,2.7vw,32px);font-weight:800;line-height:1.16}.case-related-grid{background:var(--color-line);border:1px solid var(--color-line);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0;padding:0;list-style:none;display:grid}.case-related-grid a{background:var(--color-paper);height:100%;color:inherit;flex-direction:column;align-items:flex-start;gap:10px;padding:26px 24px;text-decoration:none;transition:background .16s;display:flex}.case-related-grid a:hover{background:var(--color-fog)}.case-related-grid strong{font-family:var(--font-display), var(--font-sans);letter-spacing:-.01em;color:var(--color-ink);font-size:16px;font-weight:800}.case-related-grid span{color:var(--color-muted);font-size:14px;line-height:1.55}@media (max-width:900px){.case-related{padding:56px 0}.case-related-grid{grid-template-columns:minmax(0,1fr)}}
