/* Case directory: one primary product group for each piece of work. */
.case-directory{background:#f5f3ef;padding:72px 0 100px}
.page-inner .case-directory{background-image:var(--light-tech-lines);background-size:var(--light-tech-size);background-position:0 0,0 0,0 0,right center}
.case-directory-intro{max-width:760px;margin-bottom:30px}
.case-directory-intro>span,.case-group-heading>div>span{color:#89632e;font-size:12px;font-weight:700;letter-spacing:.08em}
.case-directory-intro h2{margin:12px 0;font-size:clamp(28px,3vw,40px);line-height:1.3;color:#211a29}
.case-directory-intro p,.case-group-heading p{margin:0;color:#625c65;line-height:1.8}
.case-jump{display:flex;gap:9px;flex-wrap:wrap;padding-bottom:30px;border-bottom:1px solid #ded8ce}
.case-jump a{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:8px 13px;background:#fff;border:1px solid #ded7cb;border-radius:3px;color:#32283a;font-size:13px;font-weight:700;transition:border-color .2s,color .2s}
.case-jump a span{font-size:11px;color:#946e32}
.case-jump a:hover,.case-jump a:focus-visible{border-color:#a67838;color:#78521a}
.case-jump a[aria-current="true"]{background:#211b2a;border-color:#211b2a;color:#fff}
.case-jump a[aria-current="true"] span{color:#f2c47a}
.case-group{padding-top:58px;scroll-margin-top:100px}
.case-group-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:20px}
.case-group-heading h2{margin:7px 0;font-size:clamp(23px,2.5vw,30px);line-height:1.3;color:#211a29}
.case-group-heading>a{display:inline-flex;align-items:center;gap:10px;min-height:44px;color:#77531f;font-size:14px;font-weight:700;white-space:nowrap}
.case-card-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}
.case-card{min-width:0;background:#fff;border:1px solid #e2dcd2;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.35fr);align-items:stretch;transition:border-color .25s,box-shadow .25s,transform .25s}
.case-card:hover,.case-card:focus-within{border-color:#b99a6b;box-shadow:0 12px 30px #211a2a12;transform:translateY(-2px)}
.case-card-image{position:relative;display:block;overflow:hidden;min-height:100%;background:#f0ece5}
.case-card-image img{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:contain;transition:transform .45s}
.case-card:hover .case-card-image img,.case-card:focus-within .case-card-image img{transform:scale(1.035)}
.case-card-number{position:absolute;right:0;bottom:0;min-width:42px;padding:7px 10px;background:#211a29;color:#f1c47a;font-size:12px;text-align:center}
.case-image-fallback{height:100%;padding:22px;display:flex;flex-direction:column;justify-content:end;gap:8px;background:linear-gradient(135deg,#191326,#463b58);color:white}
.case-image-fallback span,.case-image-fallback small{color:#e2c394;font-size:12px;letter-spacing:.06em}.case-image-fallback strong{font-size:22px}
.case-card-content{min-width:0;display:flex;flex-direction:column;padding:30px 34px}
.case-card-kind{align-self:start;color:#856025;background:#f6f0e5;padding:5px 9px;font-size:12px;line-height:1.4;font-weight:700}
.case-card h3{margin:12px 0 8px;font-size:21px;line-height:1.45;color:#211a29}
.case-card h3 a:hover,.case-card h3 a:focus-visible{text-decoration:underline;text-underline-offset:4px}
.case-card-summary{margin:0 0 19px;color:#625c65;font-size:14px;line-height:1.75}
.case-card-values{margin:0 0 22px;border-top:1px solid #ebe5dc}
.case-card-values>div{display:grid;grid-template-columns:64px minmax(0,1fr);gap:8px;padding:10px 0;border-bottom:1px solid #ebe5dc;font-size:13px;line-height:1.7}
.case-card-values dt{color:#8a642c;font-weight:700}.case-card-values dd{margin:0;color:#514a52}
.case-card-link{align-self:start;display:inline-flex;align-items:center;gap:16px;min-height:44px;margin-top:auto;color:#76521c;font-size:14px;font-weight:700}
.case-card-link:hover,.case-card-link:focus-visible{color:#3d2b14;text-decoration:underline;text-underline-offset:4px}
.case-directory :is(.case-card,.case-group,.case-jump a)[hidden]{display:none!important}
@media(max-width:767px){.case-directory{padding:44px 0 64px}.case-group{padding-top:42px;scroll-margin-top:75px}.case-group-heading{align-items:flex-start;flex-direction:column;gap:6px}.case-card-grid{gap:14px}.case-card{grid-template-columns:minmax(0,1fr)}.case-card-image{min-height:0;aspect-ratio:16/9}.case-card-content{padding:21px}.case-card h3{font-size:19px}}
@media(prefers-reduced-motion:reduce){.case-card,.case-card-image img,.case-jump a{transition:none}.case-card:hover,.case-card:focus-within,.case-card:hover .case-card-image img,.case-card:focus-within .case-card-image img{transform:none}}
@media(max-width:767px){.page-inner.page-case-visual .inner-hero--unified{background-image:linear-gradient(90deg,rgba(19,16,30,.96),rgba(19,16,30,.78) 55%,rgba(19,16,30,.36)),var(--hero-mobile-image);background-position:center,75% center}}
