.case-story{--story-width:1180px;color:#12232a;background:#fff}.case-story *{box-sizing:border-box}.case-story-header{width:min(var(--story-width),calc(100% - 56px));margin:auto;padding:92px 0 48px}.case-story-back{display:inline-flex;align-items:center;gap:8px;color:#008e96;font-size:14px;font-weight:800}.case-story-back svg{width:18px}.case-story-meta{margin-top:48px;display:flex;gap:30px;color:#008e96;font-size:14px;font-weight:800;text-transform:uppercase}.case-story-header h1{max-width:1040px;margin:18px 0 24px;font-size:64px;line-height:1.02;letter-spacing:0}.case-story-header>p{max-width:860px;margin:0;color:#56676d;font-size:19px;line-height:1.7}.case-story-hero{width:min(var(--story-width),calc(100% - 56px));height:630px;margin:0 auto 82px;overflow:hidden}.case-story-hero img{width:100%;height:100%;object-fit:cover}.case-story-section{width:min(1100px,calc(100% - 56px));margin:0 auto;padding:76px 0;border-top:1px solid #cfdbdd}.case-story-section:first-of-type{border-top:0;padding-top:0}.case-section-heading{margin-bottom:40px;display:grid;grid-template-columns:42px 1fr}.case-section-heading>span{padding-top:4px;color:#00a0a8;font-size:14px;font-weight:800}.case-section-heading small{color:#667980;font-size:14px;font-weight:800;text-transform:uppercase}.case-section-heading h2{max-width:850px;margin:8px 0 0;font-size:38px;line-height:1.12}.case-story-section p{margin:0 0 20px;color:#33474e;font-size:17px;line-height:1.82}.case-lede{max-width:970px;margin-bottom:42px!important;color:#172b32!important;font-size:25px!important;line-height:1.58!important}.case-overview-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.85fr);gap:34px;align-items:stretch}.case-data{margin:0}.case-data table{width:100%;height:100%;border-collapse:collapse}.case-data th,.case-data td{padding:13px 16px;border:1px solid #cbd9dc;text-align:left;vertical-align:top;font-size:14px;line-height:1.45}.case-data th{width:31%;background:#eaf3f3;color:#006f76}.case-image{overflow:hidden;background:#e8eff0}.case-image img{width:100%;height:100%;display:block;object-fit:cover}.case-image-tall{min-height:520px}.case-split{display:grid;grid-template-columns:.86fr 1.14fr;gap:54px;align-items:stretch}.case-split.reverse{grid-template-columns:1.14fr .86fr}.case-split.reverse .case-image{order:2}.case-copy{align-self:center}.case-copy h3{margin:32px 0 10px;font-size:23px;line-height:1.25}.case-copy h3:first-child{margin-top:0}.case-list{margin:28px 0 0;padding:26px 30px;background:#f1f6f6;border-top:2px solid #0ca6ad;display:grid;grid-template-columns:1fr 1fr;gap:12px 28px}.case-list li{padding-left:5px;color:#243a41;font-size:14px;line-height:1.55}.case-list li::marker{color:#00a1aa}.case-feature-band{width:100%;padding:86px 28px;background:#f2f6f6}.case-feature-inner{width:min(1100px,100%);margin:auto}.case-feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 58px}.case-feature{padding:34px 0;border-top:1px solid #bdced1}.case-feature h3{margin:0 0 14px;font-size:25px}.case-feature p{margin:0;color:#3d5158;font-size:16px;line-height:1.75}.case-advantage-list{margin:30px 0 0;padding:30px 34px;grid-column:1/-1;background:#fff;border-left:4px solid #04a4ac;display:grid;grid-template-columns:1fr 1fr;gap:14px 40px}.case-advantage-list li{font-size:14px;line-height:1.55}.case-result-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:54px}.case-results{margin:28px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:12px}.case-results li{min-height:76px;padding:18px;background:#edf5f5;border-top:2px solid #08a3ab;list-style:none;font-size:14px;font-weight:700;line-height:1.5}.case-story-navigation{width:min(1100px,calc(100% - 56px));margin:20px auto 80px;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #ccd9db;border-bottom:1px solid #ccd9db}.case-story-navigation a{padding:26px;display:grid;grid-template-columns:1fr auto;gap:8px 20px}.case-story-navigation a+a{border-left:1px solid #ccd9db;text-align:right}.case-story-navigation small{color:#73848a;font-size:14px}.case-story-navigation strong{font-size:16px}.case-story-navigation svg{grid-column:2;grid-row:1/3;align-self:center;width:20px;color:#0099a1}
@media(max-width:900px){.case-overview-grid,.case-split,.case-split.reverse,.case-result-grid{grid-template-columns:1fr}.case-split.reverse .case-image{order:0}.case-image-tall{min-height:420px}.case-feature-grid{grid-template-columns:1fr}.case-advantage-list{grid-column:auto}.case-story-header h1{font-size:52px}}
@media(max-width:700px){.case-story-header{width:calc(100% - 36px);padding:58px 0 34px}.case-story-meta{margin-top:34px;gap:14px;flex-wrap:wrap}.case-story-header h1{font-size:40px}.case-story-header>p{font-size:17px}.case-story-hero{width:100%;height:410px;margin-bottom:54px}.case-story-section{width:calc(100% - 36px);padding:54px 0}.case-section-heading{grid-template-columns:32px 1fr}.case-section-heading h2{font-size:31px}.case-lede{font-size:21px!important}.case-overview-grid{gap:22px}.case-data{overflow-x:auto}.case-data table{min-width:650px}.case-image-tall{min-height:330px}.case-split{gap:32px}.case-list,.case-advantage-list,.case-results{grid-template-columns:1fr}.case-feature-band{padding:58px 18px}.case-story-navigation{width:calc(100% - 36px);grid-template-columns:1fr}.case-story-navigation a+a{border-left:0;border-top:1px solid #ccd9db;text-align:left}}

/* Mixed landscape and portrait case photography */
.case-story-hero{width:min(1320px,calc(100% - 56px));height:auto}.case-story-hero img{height:auto;display:block;object-fit:contain}.case-overview-grid{grid-template-columns:minmax(0,1.25fr) minmax(360px,1fr);align-items:center}.case-image{display:flex;align-items:center;justify-content:center}.case-image img{height:auto;max-height:760px;object-fit:contain}.case-image-tall{min-height:0}.case-split,.case-split.reverse,.case-result-grid{grid-template-columns:1fr 1fr;align-items:center}
@media(max-width:900px){.case-overview-grid,.case-split,.case-split.reverse,.case-result-grid{grid-template-columns:1fr}.case-image-tall{min-height:0}}
@media(max-width:700px){.case-story-hero{width:100%;height:auto}.case-overview-grid{grid-template-columns:1fr}.case-image img{max-height:none}}

/* Rebalanced hierarchy: restrained lead image, larger in-article photography */
.case-story-hero{width:min(1120px,calc(100% - 56px));height:600px}.case-story-hero img{width:100%;height:100%;object-fit:cover}
.case-overview-grid{grid-template-columns:minmax(0,1.08fr) minmax(420px,1fr)}
.case-split{grid-template-columns:1.18fr .82fr}
.case-split.reverse{grid-template-columns:.82fr 1.18fr}
.case-result-grid{grid-template-columns:.82fr 1.18fr}
.case-image img{width:100%;max-height:none}
@media(max-width:1100px){.case-overview-grid{grid-template-columns:1fr 1fr}.case-split,.case-split.reverse,.case-result-grid{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.case-overview-grid,.case-split,.case-split.reverse,.case-result-grid{grid-template-columns:1fr}.case-story-hero{height:auto}.case-story-hero img{height:auto;object-fit:contain}}
@media(max-width:700px){.case-story-hero{width:100%;height:auto}}

/* Single-column reading layout with a three-image field gallery */
.case-story-gallery{width:min(1120px,calc(100% - 56px));margin:-46px auto 92px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.case-story-gallery figure{margin:0;aspect-ratio:4/3;overflow:hidden;background:#e8eff0}.case-story-gallery img{width:100%;height:100%;display:block;object-fit:cover}.case-reading{width:min(900px,calc(100% - 56px));margin:auto}.case-reading .case-story-section{width:100%;padding:72px 0}.case-reading .case-section-heading{margin-bottom:34px}.case-reading .case-lede{max-width:850px}.case-reading h3{margin:38px 0 12px;font-size:24px;line-height:1.25}.case-reading p+h3{margin-top:42px}.case-reading .case-data{margin:38px 0 12px}.case-reading .case-data table{height:auto}.case-reading .case-list{margin-top:34px}.case-reading .case-feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 48px}.case-reading .case-feature{padding:30px 0}.case-reading .case-advantage-list{grid-column:1/-1}.case-reading .case-results{margin-top:34px}.case-reading .case-results li{min-height:68px}
@media(max-width:800px){.case-story-gallery{grid-template-columns:1fr 1fr}.case-story-gallery figure:first-child{grid-column:1/-1;aspect-ratio:16/9}.case-reading .case-feature-grid{grid-template-columns:1fr}.case-reading .case-advantage-list{grid-column:auto}}
@media(max-width:700px){.case-story-gallery{width:calc(100% - 36px);margin:-28px auto 56px;gap:10px}.case-reading{width:calc(100% - 36px)}.case-reading .case-story-section{padding:54px 0}}

/* Fixed-ratio adaptive case-image mosaic */
.case-story-gallery{width:min(1200px,calc(100% - 56px));aspect-ratio:12/7;margin:-46px auto 92px;display:grid;grid-template-columns:repeat(12,1fr);grid-template-rows:repeat(7,1fr);gap:6px;background:#fff}.case-story-gallery figure,.case-story-gallery figure:first-child{grid-column:auto;aspect-ratio:auto;min-width:0;min-height:0;overflow:hidden}.case-story-gallery img{width:100%;height:100%;object-fit:cover}
.case-story-gallery.mosaic-1 figure:nth-child(1){grid-area:1/1/8/13}
.case-story-gallery.mosaic-2a figure:nth-child(1){grid-area:1/1/8/8}.case-story-gallery.mosaic-2a figure:nth-child(2){grid-area:1/8/8/13}
.case-story-gallery.mosaic-2b figure:nth-child(1){grid-area:1/1/5/13}.case-story-gallery.mosaic-2b figure:nth-child(2){grid-area:5/1/8/13}
.case-story-gallery.mosaic-3a figure:nth-child(1){grid-area:1/1/8/7}.case-story-gallery.mosaic-3a figure:nth-child(2){grid-area:1/7/4/13}.case-story-gallery.mosaic-3a figure:nth-child(3){grid-area:4/7/8/13}
.case-story-gallery.mosaic-3b figure:nth-child(1){grid-area:1/1/8/5}.case-story-gallery.mosaic-3b figure:nth-child(2){grid-area:1/5/8/9}.case-story-gallery.mosaic-3b figure:nth-child(3){grid-area:1/9/8/13}
.case-story-gallery.mosaic-3c figure:nth-child(1){grid-area:1/1/8/6}.case-story-gallery.mosaic-3c figure:nth-child(2){grid-area:1/6/4/13}.case-story-gallery.mosaic-3c figure:nth-child(3){grid-area:4/6/8/13}
.case-story-gallery.mosaic-4a figure:nth-child(1){grid-area:1/1/4/7}.case-story-gallery.mosaic-4a figure:nth-child(2){grid-area:1/7/4/13}.case-story-gallery.mosaic-4a figure:nth-child(3){grid-area:4/1/8/7}.case-story-gallery.mosaic-4a figure:nth-child(4){grid-area:4/7/8/13}
.case-story-gallery.mosaic-4b figure:nth-child(1){grid-area:1/1/8/6}.case-story-gallery.mosaic-4b figure:nth-child(2){grid-area:1/6/4/9}.case-story-gallery.mosaic-4b figure:nth-child(3){grid-area:1/9/4/13}.case-story-gallery.mosaic-4b figure:nth-child(4){grid-area:4/6/8/13}
.case-story-gallery.mosaic-5a figure:nth-child(1){grid-area:1/1/4/6}.case-story-gallery.mosaic-5a figure:nth-child(2){grid-area:1/6/4/13}.case-story-gallery.mosaic-5a figure:nth-child(3){grid-area:4/1/8/5}.case-story-gallery.mosaic-5a figure:nth-child(4){grid-area:4/5/8/9}.case-story-gallery.mosaic-5a figure:nth-child(5){grid-area:4/9/8/13}
.case-story-gallery.mosaic-5b figure:nth-child(1){grid-area:1/1/8/6}.case-story-gallery.mosaic-5b figure:nth-child(2){grid-area:1/6/4/9}.case-story-gallery.mosaic-5b figure:nth-child(3){grid-area:1/9/4/13}.case-story-gallery.mosaic-5b figure:nth-child(4){grid-area:4/6/8/9}.case-story-gallery.mosaic-5b figure:nth-child(5){grid-area:4/9/8/13}
.case-story-gallery.mosaic-6a figure:nth-child(1){grid-area:1/1/4/5}.case-story-gallery.mosaic-6a figure:nth-child(2){grid-area:1/5/4/9}.case-story-gallery.mosaic-6a figure:nth-child(3){grid-area:1/9/4/13}.case-story-gallery.mosaic-6a figure:nth-child(4){grid-area:4/1/8/5}.case-story-gallery.mosaic-6a figure:nth-child(5){grid-area:4/5/8/9}.case-story-gallery.mosaic-6a figure:nth-child(6){grid-area:4/9/8/13}
.case-story-gallery.mosaic-6b figure:nth-child(1){grid-area:1/1/8/5}.case-story-gallery.mosaic-6b figure:nth-child(2){grid-area:1/5/4/9}.case-story-gallery.mosaic-6b figure:nth-child(3){grid-area:1/9/4/13}.case-story-gallery.mosaic-6b figure:nth-child(4){grid-area:4/5/8/7}.case-story-gallery.mosaic-6b figure:nth-child(5){grid-area:4/7/8/10}.case-story-gallery.mosaic-6b figure:nth-child(6){grid-area:4/10/8/13}
.case-story-gallery.mosaic-6c figure:nth-child(1){grid-area:1/1/8/4}.case-story-gallery.mosaic-6c figure:nth-child(2){grid-area:1/4/5/8}.case-story-gallery.mosaic-6c figure:nth-child(3){grid-area:5/4/8/8}.case-story-gallery.mosaic-6c figure:nth-child(4){grid-area:1/8/4/13}.case-story-gallery.mosaic-6c figure:nth-child(5){grid-area:4/8/8/10}.case-story-gallery.mosaic-6c figure:nth-child(6){grid-area:4/10/8/13}
.case-story-gallery.mosaic-6d figure:nth-child(1){grid-area:1/1/5/5}.case-story-gallery.mosaic-6d figure:nth-child(2){grid-area:5/1/8/5}.case-story-gallery.mosaic-6d figure:nth-child(3){grid-area:1/5/8/8}.case-story-gallery.mosaic-6d figure:nth-child(4){grid-area:1/8/4/13}.case-story-gallery.mosaic-6d figure:nth-child(5){grid-area:4/8/8/10}.case-story-gallery.mosaic-6d figure:nth-child(6){grid-area:4/10/8/13}
.case-story-gallery.mosaic-6e figure:nth-child(1){grid-area:1/1/4/6}.case-story-gallery.mosaic-6e figure:nth-child(2){grid-area:4/1/8/4}.case-story-gallery.mosaic-6e figure:nth-child(3){grid-area:4/4/8/7}.case-story-gallery.mosaic-6e figure:nth-child(4){grid-area:1/6/4/10}.case-story-gallery.mosaic-6e figure:nth-child(5){grid-area:1/10/4/13}.case-story-gallery.mosaic-6e figure:nth-child(6){grid-area:4/7/8/13}
.case-story-gallery.mosaic-6f figure:nth-child(1){grid-area:1/1/8/4}.case-story-gallery.mosaic-6f figure:nth-child(2){grid-area:1/4/4/8}.case-story-gallery.mosaic-6f figure:nth-child(3){grid-area:4/4/8/8}.case-story-gallery.mosaic-6f figure:nth-child(4){grid-area:1/8/5/11}.case-story-gallery.mosaic-6f figure:nth-child(5){grid-area:1/11/5/13}.case-story-gallery.mosaic-6f figure:nth-child(6){grid-area:5/8/8/13}
.case-story-gallery.mosaic-many-a{grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(3,1fr)}.case-story-gallery.mosaic-many-b{grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(4,1fr)}.case-story-gallery.mosaic-many-a figure,.case-story-gallery.mosaic-many-b figure{grid-area:auto}.case-story-gallery.mosaic-many-a figure:first-child{grid-column:span 2;grid-row:span 2}.case-story-gallery.mosaic-many-b figure:nth-child(2){grid-column:span 2;grid-row:span 2}
.case-story-gallery figure{position:relative;z-index:1;transition:transform .36s cubic-bezier(.2,.75,.25,1),filter .3s ease,box-shadow .36s ease}.case-story-gallery figure:hover{z-index:5;transform:scale(1.075);box-shadow:0 20px 48px rgba(5,28,36,.28)}.case-story-gallery.is-exploring figure:not(:hover){filter:brightness(.72) saturate(.75)}.case-story-gallery figure img{transition:transform .55s cubic-bezier(.2,.75,.25,1)}.case-story-gallery figure:hover img{transform:scale(1.045)}
@media(max-width:700px){.case-story-gallery{width:calc(100% - 36px);aspect-ratio:4/5;margin:-28px auto 56px;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(3,1fr);gap:5px}.case-story-gallery figure,.case-story-gallery[class*="mosaic-"] figure:nth-child(n){grid-area:auto}.case-story-gallery[data-image-count="1"]{grid-template-columns:1fr;grid-template-rows:1fr;aspect-ratio:4/3}.case-story-gallery[data-image-count="2"]{grid-template-columns:1fr;grid-template-rows:repeat(2,1fr);aspect-ratio:4/5}.case-story-gallery[data-image-count="3"] figure:first-child,.case-story-gallery[data-image-count="5"] figure:first-child{grid-column:1/-1}}
@media(hover:none){.case-story-gallery figure:hover{transform:none;box-shadow:none}.case-story-gallery.is-exploring figure:not(:hover){filter:none}}

/* The mosaic is the article's primary visual; hover provides a restrained lift. */
.case-story-header+.case-story-gallery{margin-top:0}.case-story-gallery figure:hover{transform:scale(1.075);box-shadow:0 20px 48px rgba(5,28,36,.28)}.case-story-gallery figure:hover img{transform:scale(1.045)}
@media(max-width:700px){.case-story-header+.case-story-gallery{margin-top:0}}
