/* Case study only: shared Imagine components stay in styles.css. */
.case-study-page .case-hero{padding-top:55px;padding-bottom:60px}
.case-study-page figure{margin:0;min-width:0}
.case-study-page figure img{display:block;width:100%;height:auto}
.case-study-page figcaption{font-size:13px;line-height:1.65;color:var(--muted);padding:14px 4px 0}
.case-back{display:inline-block;color:var(--blue);font-size:14px;font-weight:700;margin-bottom:40px}
.case-intro{display:grid;grid-template-columns:1.5fr 1fr;gap:50px;align-items:end}
.case-intro h1{font-size:clamp(38px,5.4vw,66px);letter-spacing:-2.5px;line-height:1.04;margin:17px 0 22px;color:var(--navy)}
.case-deck{font-size:clamp(20px,2.3vw,28px);line-height:1.4;color:var(--navy2);max-width:29ch}
.case-summary,.case-study-page main p{line-height:1.8}
.case-summary{font-size:17px;color:var(--muted);margin-bottom:8px}
.case-facts{display:grid;grid-template-columns:1fr 1.2fr 1.3fr;gap:24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:25px 0;margin:35px 0 40px}
.case-facts dt{font-size:11px;text-transform:uppercase;letter-spacing:1.5px;font-weight:800;color:var(--blue);margin-bottom:8px}
.case-facts dd{margin:0;font-size:14px;font-weight:600;line-height:1.6}
.case-hero-image{padding:22px;background:linear-gradient(135deg,#e6f5ff,#f5fafc);border:1px solid var(--line);border-radius:26px}
.case-hero-image img{max-width:1000px;margin:auto;border-radius:14px;box-shadow:var(--shadow)}
.case-two-col{display:grid;grid-template-columns:1fr 1.1fr;gap:65px;align-items:start}
.case-study-page h2{font-size:clamp(30px,3.8vw,46px);line-height:1.13;letter-spacing:-1.4px;margin:15px 0 24px}
.case-study-page h3{font-size:23px;line-height:1.3;letter-spacing:-.6px;margin:16px 0}
.case-study-page main p{color:var(--muted);font-size:17px;margin:0 0 18px}
.case-study-page .case-deck{font-size:clamp(20px,2.3vw,28px);color:var(--navy2);line-height:1.4}
.case-overview,.case-result{background:#f0f7fc}
.case-compare-grid,.case-build-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.case-panel{padding:34px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;min-width:0}
.case-state{display:inline-block;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:1.4px;color:var(--blue);border-bottom:2px solid var(--cyan);padding-bottom:7px}
.case-before img{max-width:320px;margin:25px auto 0;border-radius:14px}
.case-panel ul{padding-left:22px;margin:24px 0;color:var(--muted);line-height:1.8}
.case-panel li+li{margin-top:12px}
.case-after{background:linear-gradient(145deg,#edf8ff,#fff)}
.case-after .btn{margin-top:16px}
.case-wide-image{padding-top:30px}
.case-wide-image img,.case-feature img{border-radius:20px;border:1px solid var(--line)}
.case-feature{margin:70px 0;align-items:center;gap:40px}
.case-mobile{background:var(--navy);color:#fff}
.case-mobile-grid{display:grid;grid-template-columns:320px 1fr;gap:90px;align-items:center;max-width:1000px}
.case-mobile figure{max-width:282px;justify-self:center}
.case-mobile figure img{border:7px solid #214467;border-radius:25px;background:#fff}
.case-study-page .case-mobile p,.case-study-page .case-mobile figcaption{color:#c4d5e5}
.case-mobile .section-label{color:#79dfff}
.case-mobile-note{margin-top:30px;padding-top:24px;border-top:1px solid #3e5870;font-size:15px;line-height:1.6}
.case-result-copy{max-width:760px}
.case-transform{margin-top:36px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.case-transform>div{padding:25px;background:#fff;border:1px solid var(--line);border-radius:18px}
.case-transform dt{font-size:14px;color:var(--muted);line-height:1.5}
.case-transform dd{margin:15px 0 0;color:var(--navy);font-size:19px;font-weight:750;line-height:1.4}
.case-transform dd::before{content:'→';display:block;color:var(--blue);margin-bottom:12px}
.case-closing{padding:60px;border-radius:30px;background:linear-gradient(120deg,var(--navy),var(--navy2));color:#fff}
.case-closing .section-label{color:#79dfff}
.case-study-page .case-closing p{color:#c4d5e5;max-width:730px}
.case-closing .btn{margin-top:12px;white-space:normal;text-align:center;min-height:48px}
.case-study-page :target{scroll-margin-top:120px}
.case-study-page a:focus-visible,.case-study-page button:focus-visible{outline:3px solid #008db5;outline-offset:4px}
.case-mobile a:focus-visible,.case-closing a:focus-visible{outline-color:#79dfff}
@media(max-width:980px){.case-intro{grid-template-columns:1fr;gap:12px}.case-summary{max-width:65ch}.case-two-col{gap:30px}.case-mobile-grid{gap:35px;grid-template-columns:280px 1fr}.case-panel{padding:25px}.case-transform{grid-template-columns:1fr}.case-study-page .main-nav.open{display:flex}}
@media(max-width:680px){.case-study-page .case-hero{padding-top:32px}.case-back{margin-bottom:28px}.case-intro h1{letter-spacing:-1.5px}.case-facts,.case-two-col,.case-compare-grid,.case-build-grid,.case-mobile-grid{grid-template-columns:1fr}.case-facts{gap:18px}.case-hero-image{padding:10px;border-radius:18px}.case-mobile-grid{gap:40px}.case-mobile figure{width:min(100%,282px)}.case-closing{padding:32px 23px}.case-panel{padding:25px 22px}.case-study-page h3{font-size:22px}.case-feature{margin:45px 0}.case-study-page figcaption{font-size:13px}.case-study-page .btn{max-width:100%;white-space:normal}}
@media(prefers-reduced-motion:reduce){.case-study-page{scroll-behavior:auto}.case-study-page *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

.case-after figure{margin:25px 0}.case-after figure img{border-radius:14px}
