
:root{--ink:#111;--cream:#f8f3e8;--red:#c93a33;--blue:#22688f;--yellow:#edb82d}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:10px}body{margin:0;background:#e4dfd6;color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit}
.cs-shell{max-width:1320px;margin:0 auto;background:var(--cream);border-left:4px solid var(--ink);border-right:4px solid var(--ink)}
.cs-header{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:4px solid var(--ink);padding:10px 22px;background:var(--cream)}.cs-brand img{width:170px;max-height:75px;object-fit:contain;display:block}.cs-header nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:20px}.cs-header nav a{font-family:Impact,'Arial Narrow',Arial,sans-serif;font-size:18px;font-weight:800;text-decoration:none;letter-spacing:.02em}.cs-header nav a:hover,.cs-index-card:hover .cs-index-more{text-decoration:underline}
.cs-hero{border-bottom:4px solid var(--ink);padding:38px 36px 36px;background:#111;color:#fff}.cs-eyebrow,.cs-mini-heading{font-weight:900;letter-spacing:.12em;font-size:12px}.cs-hero h1{font:950 clamp(49px,7vw,100px)/.93 Impact,'Arial Narrow',Arial,sans-serif;letter-spacing:-.013em;margin:16px 0}.cs-hero p{font-size:19px;line-height:1.52;max-width:875px}.cs-hero .cs-privacy{border:2px solid #f6f1e4;padding:11px 14px;display:inline-block;font-size:13px;max-width:850px;line-height:1.45}
.cs-topbar{display:grid;grid-template-columns:repeat(4,1fr);gap:3px;background:var(--ink);border-bottom:4px solid var(--ink)}.cs-topbar div{padding:16px 12px;background:var(--yellow);font-family:Impact,'Arial Narrow',Arial,sans-serif;font-size:17px;text-align:center}.cs-topbar div:nth-child(2){background:var(--blue);color:#fff}.cs-topbar div:nth-child(3){background:var(--red);color:#fff}.cs-topbar div:nth-child(4){background:var(--cream)}
.cs-index{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;border-bottom:4px solid var(--ink);background:var(--ink)}.cs-index-card{background:#f5eedf;text-decoration:none;min-height:171px;padding:18px 16px;display:flex;flex-direction:column;align-items:flex-start;gap:10px}.cs-index-card:nth-child(2){background:#eef3f6}.cs-index-card:nth-child(3){background:#f3e2d9}.cs-index-num{font:950 29px/1 Impact,'Arial Narrow',Arial,sans-serif;color:var(--red)}.cs-index-name{font:950 26px/.98 Impact,'Arial Narrow',Arial,sans-serif;flex:1}.cs-index-more{font-size:12px;letter-spacing:.03em;font-weight:900}
.cs-case{border-bottom:5px solid #111;scroll-margin-top:10px}.cs-case-top{background:#111;color:#fff;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:13px 25px;font-size:12px;font-weight:900;letter-spacing:.04em}.cs-case-top a{color:#fff;white-space:nowrap}
.cs-case-hero{display:grid;grid-template-columns:54% 46%;min-height:360px}.cs-case-intro{padding:32px 30px 27px;border-right:3px solid #111}.cs-case-intro h2{font:950 clamp(38px,4.3vw,66px)/.94 Impact,'Arial Narrow',Arial,sans-serif;margin:11px 0 14px}.cs-case-intro h3{font-size:20px;font-weight:900;margin:10px 0 22px;color:#8d2421}.cs-case-intro p{font-size:16px;line-height:1.55;max-width:700px}.cs-case-intro p strong{font-size:12px;letter-spacing:.06em}.cs-case-photos{display:flex;flex-direction:row;gap:3px;background:#111;min-height:330px}.cs-case-photos figure{margin:0;display:flex;flex:1;min-width:0;flex-direction:column;background:#111}.cs-case-photos img{display:block;width:100%;flex:1;max-height:410px;min-height:230px;object-fit:cover}.cs-case-photos figcaption{padding:11px;color:#fff;font:900 12px/1.2 Arial,sans-serif;letter-spacing:.02em}.cs-case-photos.cs-n1 img{max-height:430px;object-fit:cover;object-position:top}
.cs-stage-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;border-top:3px solid #111;border-bottom:3px solid #111;background:#111}.cs-stage{background:#fffaf0;min-width:0}.cs-stage-label{min-height:102px;padding:13px 12px;display:flex;flex-direction:column;gap:8px;justify-content:center;background:var(--yellow)}.cs-stage-2 .cs-stage-label{background:var(--blue);color:#fff}.cs-stage-3 .cs-stage-label{background:var(--red);color:#fff}.cs-stage-4 .cs-stage-label{background:#e9e3d6}.cs-stage-label b{font:950 33px/1 Impact,'Arial Narrow',Arial,sans-serif}.cs-stage-label strong{font:950 18px/.95 Impact,'Arial Narrow',Arial,sans-serif}.cs-stage p{font-size:14px;line-height:1.5;padding:16px 15px 19px;margin:0}
.cs-case-bottom{display:grid;grid-template-columns:40% 60%;gap:3px;background:#111}.cs-case-bottom>div{background:#eee8da;padding:16px 22px;min-width:0}.cs-case-bottom>div:last-child{background:#e5ecf0}.cs-case-bottom b{font-size:11px;letter-spacing:.07em}.cs-case-bottom p{font-size:14px;line-height:1.45;margin:7px 0 0}
.cs-final{background:var(--yellow);border-bottom:4px solid #111;padding:29px 35px}.cs-final h2{font:950 47px/1 Impact,'Arial Narrow',Arial,sans-serif;margin:8px 0 14px}.cs-final p{font-size:16px;line-height:1.5;max-width:750px}.cs-cta{display:inline-block;padding:13px 22px;border:3px solid #111;background:#111;color:#fff;text-decoration:none;font:900 17px Impact,'Arial Narrow',Arial,sans-serif;letter-spacing:.03em;margin-right:12px;margin-bottom:10px}.cs-cta.secondary{background:var(--cream);color:#111}.cs-footer{background:#111;color:#fff;padding:20px 27px;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}.cs-footer span{letter-spacing:.16em;font-weight:900;font-size:13px}.cs-footer a{color:#fff;font-weight:800;font-size:13px}
@media(max-width:1040px){.cs-index{grid-template-columns:repeat(2,1fr)}.cs-case-hero{grid-template-columns:1fr}.cs-case-intro{border-right:0;border-bottom:3px solid #111}.cs-case-photos{min-height:260px}.cs-case-photos img{max-height:370px}.cs-stage-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:690px){.cs-shell{border-left:0;border-right:0}.cs-header{padding:10px 13px;gap:8px}.cs-brand img{width:112px}.cs-header nav{gap:10px}.cs-header nav a{font-size:14px}.cs-hero{padding:26px 18px}.cs-hero h1{font-size:clamp(48px,11.5vw,78px)}.cs-hero p{font-size:16px}.cs-topbar{grid-template-columns:repeat(2,1fr)}.cs-topbar div{font-size:14px;padding:10px 5px}.cs-index-card{padding:14px;min-height:145px}.cs-index-name{font-size:21px}.cs-case-top{padding:12px;flex-wrap:wrap}.cs-case-intro{padding:21px 17px}.cs-case-intro h2{font-size:46px}.cs-case-photos{min-height:190px}.cs-case-photos img{max-height:300px;min-height:190px}.cs-case-photos figcaption{font-size:10px;padding:9px 7px}.cs-stage-label{min-height:85px}.cs-stage p{font-size:13px;padding:12px 10px}.cs-stage-label strong{font-size:15px}.cs-case-bottom{grid-template-columns:1fr}.cs-final{padding:22px 18px}.cs-final h2{font-size:36px}.cs-footer{padding:19px 15px}.cs-cta{font-size:16px}}
@media(max-width:390px){.cs-index{grid-template-columns:1fr}.cs-index-card{min-height:110px}.cs-header nav a{font-size:12px}.cs-brand img{width:96px}.cs-stage-label strong{font-size:12px}.cs-stage p{font-size:12px}}

/* R3 evidence photography — full images, no thumbnail crops */
.cs-case-hero{display:flex;flex-direction:column;min-height:0}
.cs-case-intro{padding:30px 34px 24px;border-right:0;border-bottom:3px solid #111}
.cs-case-intro h2{max-width:1000px}
.cs-case-intro p{max-width:940px}
.cs-case-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;min-height:0;background:#111;border-bottom:0}
.cs-case-photos.cs-n1{grid-template-columns:1fr}
.cs-case-photos figure{margin:0;min-width:0;background:#f7f2e9;display:flex;flex-direction:column}
.cs-photo-open{display:flex;align-items:center;justify-content:center;flex:1;min-width:0;width:100%;height:auto;min-height:390px;padding:12px;border:0;background:#f7f2e9;cursor:zoom-in}
.cs-photo-open:hover,.cs-photo-open:focus-visible{background:#e5eef1;outline:3px solid #edb82d;outline-offset:-4px}
.cs-photo-open img,.cs-case-photos.cs-n1 .cs-photo-open img{display:block;max-height:650px;max-width:100%;min-height:0;width:auto;height:auto;object-fit:contain;object-position:center;flex:none}
.cs-case-photos figcaption{color:#fff;background:#111;padding:12px 17px;font-size:14px}
.cs-photo-open::after{content:"+";display:none}
.cs-evidence-note{padding:8px 17px;background:#e6eced;font:700 13px/1.4 Arial,sans-serif;color:#111;border-top:3px solid #111}
.ev-dialog{position:fixed;inset:0;max-width:min(95vw,1260px);max-height:94vh;width:95vw;margin:auto;border:4px solid #111;padding:0;background:#f8f3e8;color:#111;box-shadow:9px 9px 0 rgba(0,0,0,.3)}
.ev-dialog::backdrop{background:rgba(0,0,0,.88)}
.ev-head{display:flex;align-items:center;justify-content:space-between;background:#111;color:#fff;gap:14px;padding:12px 18px;font:900 16px Impact,Arial,sans-serif;letter-spacing:.04em}
.ev-close{border:2px solid #fff;background:#fff;color:#111;font:900 16px Arial,sans-serif;cursor:pointer;padding:7px 14px;min-height:42px}
.ev-stage{display:flex;align-items:center;justify-content:center;min-height:180px;padding:14px;background:#f8f3e8;overflow:auto}
.ev-photo{display:block;max-height:70vh;max-width:100%;width:auto;height:auto;object-fit:contain}
.ev-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 18px;background:#111;color:#fff}
.ev-caption{font:700 14px/1.4 Arial,sans-serif;flex:1}
.ev-count{font:900 14px Arial,sans-serif;white-space:nowrap}
.ev-prev,.ev-next{background:#edb82d;border:2px solid #111;padding:10px 14px;font:900 14px Impact,Arial,sans-serif;min-height:42px;cursor:pointer}
.ev-prev:disabled,.ev-next:disabled{opacity:.35;cursor:default}
.ev-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
@media(max-width:690px){
.cs-case-intro{padding:22px 17px}
.cs-case-photos{grid-template-columns:1fr}
.cs-photo-open{min-height:190px;padding:10px}
.cs-photo-open img,.cs-case-photos.cs-n1 .cs-photo-open img{max-height:520px;width:auto;max-width:100%;height:auto;min-height:0}
.cs-case-photos figcaption{font-size:12px}
.cs-evidence-note{font-size:12px}
.ev-dialog{width:98vw;max-width:98vw;max-height:97vh}
.ev-stage{min-height:100px;padding:7px}
.ev-photo{max-height:68vh}
.ev-footer{flex-wrap:wrap;padding:10px;gap:7px}
.ev-caption{flex-basis:100%}
.ev-controls{width:100%;justify-content:space-between}
}