.project-cases-page{padding:140px 0 76px;background:#fff;color:var(--ink)}
.project-cases-page .wrap{max-width:1520px}
.cases-breadcrumb{display:flex;gap:12px;font-size:11px;color:var(--muted);margin-bottom:36px}
.cases-heading{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:end;padding-bottom:38px}
.cases-kicker{font-size:10px;letter-spacing:.12em;color:var(--red);margin:0 0 13px}
.cases-heading h1{font-size:32px;line-height:1.25;letter-spacing:-.025em;margin:0}
.cases-intro{max-width:480px;justify-self:end;color:var(--muted);font-size:13px;line-height:1.85}
.cases-intro p{margin:0}
.cases-filters{display:flex;gap:30px;border-bottom:1px solid var(--line);margin-bottom:36px}
.cases-filter{position:relative;padding:14px 0;font-size:12px;color:var(--muted);line-height:1.6}
.cases-filter.is-active{color:var(--ink);font-weight:600}
.cases-filter.is-active:after{content:"";position:absolute;height:2px;left:0;right:0;bottom:-1px;background:var(--red)}
.cases-filter:hover{color:var(--red)}
.cases-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 28px}
.cases-card{min-width:0}
.cases-card figure,.cases-gallery figure{margin:0;overflow:hidden;background:#fff}
.cases-card figure a,.cases-gallery figure a{display:block}
.cases-card img,.cases-gallery img{display:block;width:100%;aspect-ratio:1200/925;object-fit:cover;transition:opacity .2s}
.cases-card figure a:hover img,.cases-gallery figure a:hover img{opacity:.92}
.cases-copy{padding:19px 0 0}
.cases-category{font-size:10px;letter-spacing:.07em;color:var(--muted);margin:0 0 9px}
.project-cases-page .cases-card h2{font-size:19px;line-height:1.4;letter-spacing:-.015em;margin:0 0 9px}
.cases-description{font-size:12px;line-height:1.8;color:var(--muted);min-height:43px;margin:0}
.cases-spec{border-top:1px solid var(--line);margin:16px 0 0;padding-top:12px}
.cases-spec dt{font-size:10px;color:var(--muted);margin-bottom:5px}
.cases-spec dd{font-size:14px;font-weight:500;line-height:1.6;margin:0;font-variant-numeric:tabular-nums}
.cases-gallery{border-top:1px solid var(--line);padding-top:40px;margin-top:65px}
.cases-gallery-heading{margin-bottom:27px}
.project-cases-page .cases-gallery h2{font-size:24px;line-height:1.4}
.cases-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 28px}
.cases-contact{display:flex;justify-content:space-between;align-items:center;gap:35px;border-top:1px solid var(--line);padding-top:38px;margin-top:65px}
.project-cases-page .cases-contact h2{font-size:25px;line-height:1.4;margin:0 0 12px}
.cases-contact p{font-size:13px;line-height:1.8;color:var(--muted);margin:0}
.cases-contact a{background:var(--red);color:#fff;padding:14px 25px;font-size:12px;flex-shrink:0}
.cases-contact a:hover{background:#ab1d2a}
.cases-lightbox{border:0;padding:52px 26px 20px;width:min(1100px,calc(100% - 32px));max-height:calc(100dvh - 32px);background:#fff;color:var(--ink)}
.cases-lightbox::backdrop{background:#111a20d9}
.cases-lightbox-close{position:absolute;top:14px;right:21px;font-size:12px;padding:5px 7px}
.cases-lightbox figure{margin:0}
.cases-lightbox img{display:block;max-height:calc(100dvh - 140px);width:100%;object-fit:contain;margin:auto}
.cases-lightbox figcaption{text-align:center;font-size:12px;line-height:1.8;margin-top:14px}
.cases-filter-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(prefers-reduced-motion:reduce){.cases-card img,.cases-gallery img{transition:none}}
@media(max-width:1100px){.cases-grid,.cases-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 24px}}
@media(max-width:620px){.project-cases-page{padding:110px 0 50px}.cases-breadcrumb{margin-bottom:27px}.cases-heading{grid-template-columns:1fr;gap:20px;padding-bottom:24px}.cases-heading h1{font-size:28px}.cases-intro{justify-self:start;font-size:12px}.cases-filters{gap:25px;margin-bottom:27px}.cases-grid,.cases-gallery-grid{grid-template-columns:1fr;gap:33px}.cases-description{min-height:0}.cases-gallery{padding-top:29px;margin-top:42px}.cases-gallery-grid{gap:20px}.cases-contact{display:block;margin-top:42px;padding-top:28px}.project-cases-page .cases-contact h2{font-size:22px}.cases-contact a{display:inline-block;margin-top:22px}.cases-lightbox{padding:46px 12px 16px}.cases-lightbox figcaption{font-size:11px}}
