.case-studies-page{--case-blue:#1268b3;--case-navy:#101c2c;--case-ink:#172230;--case-muted:#617080;--case-warm:#f5f3ee;--case-line:#dfe3e6;color:var(--case-ink);background:#fff}.case-studies-page *{box-sizing:border-box}.case-studies-container{width:min(1180px,100% - 40px);margin-inline:auto}.case-studies-hero{background:var(--case-navy);color:#fff;padding:clamp(76px,10vw,136px) 0}.case-studies-hero__grid{grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);align-items:center;gap:clamp(32px,6vw,76px);display:grid}.case-studies-eyebrow{color:#6db0e6;letter-spacing:.13em;text-transform:uppercase;margin:0 0 12px;font-size:.75rem;font-weight:800}.case-studies-hero h1{letter-spacing:-.055em;max-width:800px;margin:0;font-size:clamp(2.65rem,6vw,5.2rem);line-height:.98}.case-studies-hero__lead{color:#d5dee6;max-width:660px;margin:25px 0 0;font-size:1.05rem;line-height:1.7}.case-studies-hero__image{background:#d9d6d0;border-radius:12px;min-height:380px;margin:0;position:relative;overflow:hidden}.case-studies-hero__image img{object-fit:cover}.case-studies-breadcrumb{color:#bfcedd;flex-wrap:wrap;gap:8px;margin:0 0 26px;font-size:.82rem;display:flex}.case-studies-breadcrumb a{color:#fff}.case-studies-breadcrumb span{color:#89a3b9}.case-studies-section{padding:clamp(64px,8vw,104px) 0}.case-studies-section--warm{background:var(--case-warm)}.case-studies-heading{max-width:760px;margin-bottom:36px}.case-studies-heading h2,.case-study-body h2,.case-study-outcome h2{color:var(--case-ink);letter-spacing:-.04em;margin:0;font-size:clamp(2rem,4vw,3.15rem);line-height:1.08}.case-studies-heading p{color:var(--case-muted);margin:14px 0 0;line-height:1.7}.case-studies-grid{gap:22px;display:grid}.case-studies-grid--cards{grid-template-columns:repeat(2,minmax(0,1fr))}.case-study-card{border:1px solid var(--case-line);background:#fff;border-radius:12px;grid-template-columns:minmax(180px,.72fr) minmax(0,1.28fr);display:grid;overflow:hidden}.case-study-card__image{background:#e5e2dc;min-height:310px;position:relative}.case-study-card__image img{object-fit:cover}.case-study-card__body{padding:clamp(24px,3vw,38px)}.case-study-label{color:var(--case-blue);letter-spacing:.1em;text-transform:uppercase;margin:0 0 10px;font-size:.73rem;font-weight:800}.case-study-card h2{letter-spacing:-.03em;margin:0;font-size:clamp(1.55rem,2.5vw,2.25rem);line-height:1.12}.case-study-card p:not(.case-study-label){color:var(--case-muted);margin:15px 0;line-height:1.65}.case-study-button{background:var(--case-blue);border-radius:7px;justify-content:center;align-items:center;min-height:46px;padding:11px 17px;font-size:.86rem;font-weight:800;text-decoration:none;display:inline-flex;color:#fff!important}.case-study-body{max-width:850px}.case-study-body>p{color:var(--case-muted);font-size:1.08rem;line-height:1.75}.case-study-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.case-study-detail-card{border:1px solid var(--case-line);background:#fff;border-radius:10px;padding:26px}.case-study-detail-card h3{margin:0 0 14px;font-size:1.1rem}.case-study-detail-card ul{color:var(--case-muted);gap:9px;margin:0;padding-left:18px;line-height:1.55;display:grid}.case-study-gallery{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.case-study-gallery figure{border:1px solid var(--case-line);background:#fff;border-radius:10px;margin:0;overflow:hidden}.case-study-gallery__image{aspect-ratio:4/5;background:#e5e2dc;position:relative}.case-study-gallery__image img{object-fit:cover}.case-study-gallery figcaption{color:var(--case-ink);padding:12px;font-size:.82rem;font-weight:700;line-height:1.45}.case-study-before-after{gap:18px;display:grid}.case-study-before-after article{grid-template-columns:1fr 1fr;gap:12px;display:grid}.case-study-before-after figure{border:1px solid var(--case-line);background:#fff;border-radius:10px;margin:0;position:relative;overflow:hidden}.case-study-before-after span{z-index:1;color:#fff;letter-spacing:.1em;text-transform:uppercase;background:#101c2cd9;padding:5px 8px;font-size:.7rem;font-weight:800;position:absolute;top:12px;left:12px}.case-study-before-after img{aspect-ratio:4/3;object-fit:cover;width:100%;height:auto;display:block}.case-study-outcome{border-left:4px solid var(--case-blue);background:var(--case-warm);padding:clamp(34px,5vw,62px)}.case-study-outcome p{max-width:800px;color:var(--case-muted);margin:16px 0 0;font-size:1.05rem;line-height:1.75}.case-study-cta{color:#fff;background:var(--case-navy);padding:clamp(64px,8vw,104px) 0}.case-study-cta h2{letter-spacing:-.04em;max-width:720px;margin:0;font-size:clamp(2rem,4vw,3.2rem);line-height:1.08}.case-study-cta p{color:#d5dee6;max-width:650px;margin:16px 0 26px;line-height:1.7}.case-study-cta .case-study-button{background:var(--case-blue)}@media (max-width:900px){.case-studies-grid--cards,.case-study-detail-grid{grid-template-columns:1fr}.case-study-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.case-studies-hero__grid{grid-template-columns:1fr}.case-studies-hero__image{min-height:330px}.case-study-card{grid-template-columns:minmax(190px,.72fr) minmax(0,1.28fr)}}@media (max-width:600px){.case-studies-container{width:min(100% - 28px,1180px)}.case-studies-hero{padding:58px 0}.case-studies-hero__image{min-height:280px}.case-studies-hero h1{font-size:clamp(2.45rem,12vw,3.5rem)}.case-studies-section{padding:56px 0}.case-study-card{grid-template-columns:1fr}.case-study-card__image{min-height:240px}.case-study-card__body{padding:24px}.case-study-gallery{grid-template-columns:1fr}.case-study-gallery__image{aspect-ratio:4/3}.case-study-before-after article{grid-template-columns:1fr;gap:10px}.case-study-detail-card{padding:22px}}.project-snapshot-section{background:#fff;padding-block:clamp(36px,5vw,58px)}.project-snapshot{border:1px solid var(--case-line);background:var(--case-warm);border-radius:14px;grid-template-columns:minmax(210px,.58fr) minmax(0,1.42fr);gap:clamp(28px,5vw,64px);padding:clamp(26px,4vw,46px);display:grid}.project-snapshot__heading h2{letter-spacing:-.04em;margin:0;font-size:clamp(1.8rem,3vw,2.55rem);line-height:1.08}.project-snapshot__grid{background:var(--case-line);border:1px solid var(--case-line);border-radius:9px;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;display:grid;overflow:hidden}.project-snapshot__item{background:#fff;grid-template-columns:28px minmax(0,1fr);gap:12px;padding:18px;display:grid}.project-snapshot__icon{width:22px;height:22px;color:var(--case-blue);margin-top:1px}.project-snapshot dt{color:var(--case-muted);letter-spacing:.1em;text-transform:uppercase;margin:0 0 5px;font-size:.7rem;font-weight:800}.project-snapshot dd{color:var(--case-ink);margin:0;font-size:.94rem;font-weight:750;line-height:1.45}.project-snapshot dd ul{gap:2px;margin:0;padding:0;font-weight:650;list-style:none;display:grid}.related-case-studies{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.related-case-studies__card{border:1px solid var(--case-line);background:#fff;border-radius:10px;grid-template-columns:130px minmax(0,1fr);display:grid;overflow:hidden}.related-case-studies__image{background:#e5e2dc;min-height:160px;position:relative}.related-case-studies__image img{object-fit:cover}.related-case-studies__card>div:last-child{padding:21px}.related-case-studies__card h3{margin:0 0 15px;font-size:1.12rem;line-height:1.25}.related-case-studies__card a{color:var(--case-blue);font-size:.84rem;font-weight:800}.case-study-cta__actions{flex-wrap:wrap;gap:12px;display:flex}.case-study-button--outline{border:1px solid #ffffffb3;background:0 0!important}@media (max-width:900px){.project-snapshot{grid-template-columns:1fr}}@media (max-width:600px){.project-snapshot{padding:22px}.project-snapshot__grid,.related-case-studies{grid-template-columns:1fr}.project-snapshot__item{padding:16px}.related-case-studies__card{grid-template-columns:110px minmax(0,1fr)}.related-case-studies__image{min-height:145px}.related-case-studies__card>div:last-child{padding:18px}.case-study-cta__actions .case-study-button{width:100%}}.case-study-comparisons{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}@media (max-width:900px){.case-study-comparisons{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.case-study-comparisons{grid-template-columns:1fr;gap:14px}}
