.case-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;align-items:start}
.case{display:flex;flex-direction:column;border-radius:8px;overflow:hidden;background:#101720;border-color:#3b3b39;min-width:0}
.showcase-image{display:block;padding:0;border:0;width:100%;background:#0c1420;position:relative;overflow:hidden;cursor:zoom-in;line-height:0}
.showcase-image img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;transition:transform .35s}
.showcase-image:hover img{transform:scale(1.025)}
.image-zoom{position:absolute;right:16px;bottom:16px;background:#080c13d9;color:#eee2ca;border:1px solid #cbb18455;padding:8px 12px;line-height:1.5;font-size:12px;border-radius:3px;backdrop-filter:blur(8px)}
.case .case-visual,.case:nth-child(2) .case-visual,.case:nth-child(3) .case-visual{background:none;border:0;padding:28px 30px 0;min-height:0;display:block}
.case h3{font-size:27px;line-height:1.6;letter-spacing:0;margin:16px 0;white-space:normal;font-weight:550}
.case-meta{font-size:14px;letter-spacing:0;gap:12px}.case-badge{font-size:11px;flex-shrink:0}
.showcase-tags{display:flex;gap:7px;flex-wrap:wrap}.showcase-tags span{font-size:12px;color:#c6bdad;padding:4px 9px;border:1px solid #68604f66;border-radius:3px;background:#cbb18405}
.case-description{padding:22px 30px 28px;display:block}.case-description>p{font-size:15px;line-height:1.9;color:#b6becb;margin-bottom:20px}
.case details{padding-top:15px}.case dd{font-size:14px;line-height:1.9}
.case--text{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;padding:8px 0;background:#0b121c}
.case--text .case-visual{padding-bottom:25px}.case--text h3{white-space:pre-line}
.capabilities a{font-size:14px;letter-spacing:1px;padding:4px 0;white-space:nowrap}.capabilities a:hover{color:#e3c998}
#image-dialog{width:min(1240px,94vw);max-height:94dvh;padding:0;background:#0c121b;border:1px solid #8b785455;border-radius:8px;color:#f3efe6;overflow:auto;box-shadow:0 30px 100px #000a}
#image-dialog::backdrop{background:#030609e8;backdrop-filter:blur(8px)}
.dialog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 24px;position:sticky;top:0;background:#0c121bf5;z-index:1;border-bottom:1px solid #413c33}
.dialog-toolbar h2{font-size:19px;letter-spacing:0}.dialog-toolbar p{font-size:12px;color:#b7ac98;margin:3px 0 0}.dialog-toolbar button{border:1px solid #827252;background:#171c25;color:#eee0c6;border-radius:4px;padding:8px 14px;font:inherit;font-size:14px;white-space:nowrap}
#dialog-image{width:100%;height:auto;display:block}body.image-open{overflow:hidden}
@media(max-width:1050px){.case h3{font-size:24px}.case .case-visual,.case:nth-child(2) .case-visual,.case:nth-child(3) .case-visual{padding-left:24px;padding-right:24px}.case-description{padding-left:24px;padding-right:24px}.case-list{gap:24px}.capabilities>div{gap:24px;flex-wrap:wrap}}
@media(max-width:760px){.case-list{grid-template-columns:1fr;gap:28px}.case h3{font-size:24px}.case .case-visual,.case:nth-child(2) .case-visual,.case:nth-child(3) .case-visual{padding:22px 22px 0}.case-description{padding:20px 22px 24px}.case-meta{font-size:13px}.case--text{grid-template-columns:1fr}.case--text .case-visual{padding-bottom:0}.capabilities>div{gap:10px 24px}.capabilities a{font-size:13px}.image-zoom{font-size:11px;right:12px;bottom:12px}.dialog-toolbar{padding:12px 15px}.dialog-toolbar h2{font-size:16px}#image-dialog{width:96vw;max-width:96vw}.showcase-tags span{font-size:11px}}
