.case-page{--case-accent:var(--orange)}
.case-hero{position:relative;display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.15fr);align-items:center;min-height:550px;padding:28px 0 54px}
.case-hero::after{position:absolute;right:-5%;top:4%;width:190px;height:310px;content:"";background:url("../assets/decor/halftone-orange.svg") center/contain no-repeat;opacity:.45;pointer-events:none}
.case-hero-copy{position:relative;z-index:4;max-width:570px}
.case-id{display:flex;align-items:center;gap:12px;margin:0 0 17px;color:var(--orange);font-weight:900;letter-spacing:.06em;text-transform:uppercase}
.case-id span{padding:6px 12px;color:var(--cream);background:var(--ink);font-size:14px}
.case-hero h1{margin:0;font-family:var(--display-font);font-size:clamp(59px,7vw,96px);font-weight:900;line-height:.97;letter-spacing:-.055em}
.case-subtitle{display:inline-block;margin:18px 0 14px;padding:4px 15px 7px;color:var(--cream);background:var(--orange);font-family:var(--display-font);font-size:clamp(24px,2.4vw,34px);font-weight:700;line-height:1.08;transform:rotate(-.5deg)}
.case-intro{max-width:570px;margin:0 0 18px;font-family:Arial,sans-serif;font-size:18px;line-height:1.52}
.case-tags{display:flex;flex-wrap:wrap;gap:9px}.case-tags span{padding:5px 13px;border:1.4px solid rgba(23,25,22,.58);border-radius:4px;background:rgba(250,239,217,.58);font-size:14px;font-weight:700}
.case-hero-art{position:relative;z-index:3;display:grid;place-items:center;min-height:440px}
.case-hero-art>img{width:112%;max-width:none;filter:contrast(1.03) saturate(1.03)}
.case-hero-arrow{position:absolute!important;z-index:5;left:-3%;bottom:4%;width:105px!important}

.case-feature-band{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding:27px 30px 31px;background:url("../assets/decor/feature-strip.svg") center/100% 100% no-repeat;filter:drop-shadow(0 5px 3px rgba(23,25,22,.18))}
.case-feature-band article{position:relative;display:grid;grid-template-columns:54px 1fr;gap:13px;align-items:center;padding:3px 26px}.case-feature-band article:not(:last-child)::after{position:absolute;right:-3px;top:0;width:7px;height:100%;content:"";background:url("../assets/decor/vertical-rule.svg") center/100% 100% no-repeat}.case-feature-band img{width:48px;height:48px}.case-feature-band h2{margin:0 0 3px;font-size:18px;text-transform:uppercase}.case-feature-band p{margin:0;font-size:14px;line-height:1.24}

.case-content{display:grid;gap:22px;padding:58px 0 66px}
.case-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.case-row.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.case-row.wide-right{grid-template-columns:.72fr 1.28fr}.case-row.wide-left{grid-template-columns:1.18fr .82fr}
.study-panel{position:relative;min-height:280px;padding:31px 32px;overflow:hidden}
.study-panel h2{margin:0 0 15px;font-family:var(--display-font);font-size:clamp(29px,3vw,42px);line-height:1.04}.study-panel h2 .index{display:inline-grid;place-items:center;width:52px;height:50px;margin-right:10px;color:var(--cream);background:var(--ink);font-family:var(--body-font);font-size:30px;transform:rotate(-1.5deg)}
.study-panel h3{margin:16px 0 7px;color:var(--orange);font-size:18px}.study-panel p{margin:.5rem 0}.study-panel ul{margin:.6rem 0;padding-left:1.2rem}.study-panel li{margin:.43rem 0}.study-panel .panel-icon{float:left;width:80px;height:80px;margin:2px 19px 10px 0;padding:14px;background:var(--orange)}
.study-panel.dark-panel{padding:40px 38px;color:var(--cream);border:0}.study-panel.dark-panel h2{color:var(--cream)}
.study-panel.orange-panel{padding:40px 38px;border:0}.study-panel.orange-panel h2{color:var(--ink)}
.panel-art{position:absolute;right:18px;bottom:10px;width:150px;max-height:165px;opacity:.92;pointer-events:none}.has-panel-art{padding-right:185px}

.architecture-panel{padding:32px}.architecture-flow{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));align-items:stretch;gap:9px;margin-top:23px}.architecture-node{display:grid;place-items:center;align-content:center;min-height:150px;padding:18px 10px;text-align:center;border:1.5px solid var(--ink);border-radius:5px;background:rgba(250,239,217,.58)}.architecture-node img{width:48px;height:48px;margin-bottom:10px}.architecture-node strong{display:block;font-size:17px}.architecture-node small{display:block;margin-top:5px;line-height:1.2}.architecture-flow>.flow-arrow{align-self:center;width:34px}.cross-cutting{margin-top:13px;padding:12px 18px;text-align:center;border:1.5px solid var(--ink);border-radius:4px;font-weight:700}

.scope-flow{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-top:20px}.scope-step{position:relative;min-height:155px;padding:18px 12px;text-align:center;border:1.5px solid rgba(23,25,22,.62);border-radius:5px;background:rgba(250,239,217,.4)}.scope-step:not(:last-child)::after{position:absolute;right:-24px;top:48px;z-index:2;width:36px;height:20px;content:"";background:url("../assets/decor/flow-arrow.svg") center/contain no-repeat}.scope-step img{width:50px;height:50px;margin:0 auto 9px}.scope-step h3{margin:0 0 6px;color:var(--ink);font-size:17px}.scope-step p{margin:0;font-size:14px;line-height:1.24}

.result-band{display:grid;grid-template-columns:.9fr 1.4fr;align-items:center;gap:35px;min-height:235px;padding:42px 46px;color:var(--cream);background:url("../assets/decor/dark-torn-wide.svg") center/100% 100% no-repeat}.result-band h2{margin:0 0 10px;font-family:var(--display-font);font-size:46px}.result-band p{margin:0;font-size:18px}.result-band .orange-checks{display:grid;grid-template-columns:1fr 1fr;gap:4px 22px}.result-band .orange-checks li{font-size:16px}
.result-band.orange-result{color:var(--ink);background:url("../assets/decor/orange-torn-wide.svg") center/100% 100% no-repeat}.result-band.orange-result .orange-checks li::before{background:var(--ink)}

.tech-band{display:grid;grid-template-columns:1.2fr repeat(4,1fr);align-items:center;gap:0;padding:26px 32px;background:url("../assets/decor/feature-strip.svg") center/100% 100% no-repeat}.tech-band h2{margin:0;font-family:var(--display-font);font-size:32px;line-height:1.05}.tech-band article{display:flex;align-items:center;justify-content:center;gap:12px;min-height:74px;padding:0 20px;border-left:1px solid rgba(23,25,22,.45)}.tech-band article img{width:46px;height:46px}.tech-band article strong{font-size:17px}

.case-footer .footer-art{width:270px}

@media(max-width:1040px){.case-hero{grid-template-columns:1fr;min-height:860px;padding-top:35px}.case-hero-copy{max-width:760px}.case-hero-art{min-height:410px}.case-hero-art>img{width:min(820px,110%)}.case-feature-band{grid-template-columns:1fr 1fr;background-size:cover}.case-feature-band article:nth-child(2)::after{display:none}.case-feature-band article:nth-child(-n+2){padding-bottom:22px}.case-feature-band article:nth-child(n+3){padding-top:22px}.case-row.three{grid-template-columns:1fr 1fr}.architecture-flow{grid-template-columns:repeat(7,minmax(0,1fr))}.scope-flow{grid-template-columns:repeat(3,1fr)}.scope-step:nth-child(3)::after{display:none}.result-band{grid-template-columns:1fr}.tech-band{grid-template-columns:1fr 1fr 1fr}.tech-band h2{grid-column:1/-1;padding-bottom:15px}.tech-band article:nth-of-type(1){border-left:0}}
@media(max-width:760px){.case-hero{min-height:720px;padding-top:18px}.case-hero h1{font-size:clamp(48px,15vw,70px)}.case-subtitle{font-size:24px}.case-intro{font-size:16px}.case-hero-art{min-height:310px}.case-feature-band{grid-template-columns:1fr;padding:28px 24px}.case-feature-band article{padding:15px 5px}.case-feature-band article::after{display:none!important}.case-row,.case-row.three,.case-row.wide-right,.case-row.wide-left{grid-template-columns:1fr}.study-panel{min-height:0;padding:27px 24px}.study-panel.dark-panel,.study-panel.orange-panel{padding:33px 26px}.has-panel-art{padding-right:24px;padding-bottom:170px}.architecture-flow{grid-template-columns:1fr}.architecture-flow>.flow-arrow{width:30px;margin:auto;transform:rotate(90deg)}.scope-flow{grid-template-columns:1fr 1fr}.scope-step:nth-child(even)::after{display:none}.scope-step:not(:last-child)::after{right:-23px}.result-band{padding:39px 27px}.result-band .orange-checks{grid-template-columns:1fr}.tech-band{grid-template-columns:1fr 1fr;padding:28px 24px}.tech-band h2{grid-column:1/-1}.tech-band article{padding:10px;border-left:0;border-top:1px solid rgba(23,25,22,.34)}}
@media(max-width:480px){.case-hero{min-height:650px}.case-id{align-items:flex-start;flex-direction:column}.case-hero h1{font-size:46px}.scope-flow{grid-template-columns:1fr}.scope-step::after{display:none!important}.tech-band{grid-template-columns:1fr}.result-band h2{font-size:38px}}
