/* Product cases: readable cards, server-rendered search and regional navigation. */
.case-grid{gap:26px}
.case-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid #d4d6ca;border-radius:7px;background:#faf9f4;transition:border-color .2s,box-shadow .2s}
.case-card:hover{border-color:#a9b29f;box-shadow:0 10px 28px #1c271510}
.case-card .case-picture{height:auto;aspect-ratio:4/3;display:block;overflow:hidden;background:#efe9de;border-bottom:1px solid #e1dfd4}
.case-card .case-picture img{width:100%;height:100%;object-fit:contain;padding:0;transition:transform .3s}
.case-card:hover .case-picture img{transform:scale(1.025)}
.case-card .case-body{padding:24px;display:flex;flex:1;flex-direction:column;align-items:flex-start;min-width:0}
.case-card .route-line{font-size:.83rem;line-height:1.5;font-weight:700;color:#394935;letter-spacing:0;display:flex;gap:13px;align-items:center;margin:0 0 14px;flex-wrap:wrap}
.case-card .route-line span{color:#a84b22}
.case-category{font-size:.72rem;line-height:1.5;color:#735039;margin:0 0 9px;text-transform:uppercase;letter-spacing:.04em}
.case-card .case-body h3{font-size:1.34rem;line-height:1.35;letter-spacing:-.035em;margin:0 0 24px;overflow-wrap:anywhere;min-height:2.7em}
.case-card .case-stats{width:100%;margin: auto 0 22px;padding:18px 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;border-top:1px solid #dcded1}
.case-card .case-stats>div:last-child{grid-column:auto;display:block}
.case-card .case-stats dt{font-size:.78rem;color:#535e50;margin-bottom:5px}
.case-card .case-stats dd{font-size:1.23rem;color:#22291f;font-weight:700;white-space:nowrap}
.case-card .case-stats small{font-size:.75rem;font-weight:500}
.case-open{display:flex;width:100%;justify-content:space-between;font-size:.86rem;font-weight:700;padding-bottom:7px}
.case-catalog-intro{padding-bottom:34px}
.case-catalog-heading{display:grid;grid-template-columns:1.65fr 1fr;gap:60px;align-items:end}
.case-catalog-heading h1{font-size:clamp(2.65rem,4.5vw,4.6rem);line-height:1.08}
.case-catalog-heading .lead{font-size:1.02rem;line-height:1.8;margin:0 0 8px;max-width:370px;color:#4d5947}
.case-city-links{display:flex;flex-wrap:wrap;gap:9px;margin-top:32px}
.case-city-links a{border:1px solid #ced2c2;border-radius:4px;padding:9px 13px;font-size:.78rem;line-height:1.4;color:#39432f;background:#faf9f4;white-space:nowrap}
.case-city-links a:hover{border-color:#4b633e}
.case-city-links a.selected{background:#354a2b;border-color:#354a2b;color:#fff}
.case-search-form{padding:24px;background:#e7e8dc;border:1px solid #d4d8c8;border-radius:6px;display:grid;grid-template-columns:1.65fr 1.35fr 1.1fr .85fr auto;gap:14px;align-items:end}
.case-search-form label{display:flex;min-width:0;flex-direction:column;gap:9px;color:#364130;font-size:.78rem;font-weight:600}
.case-search-form input,.case-search-form select{width:100%;max-width:100%;min-width:0;height:48px;border:1px solid #bdc5b0;border-radius:3px;background:#fffefa;color:#26321f;padding:0 12px;font:inherit;font-size:.83rem}
.case-search-form input::placeholder{color:#626d58}
.case-search-form select{padding-right:23px;text-overflow:ellipsis}
.case-search-input>div{position:relative}
.case-search-input .icon{position:absolute;left:12px;top:14px;width:20px;height:20px;color:#58674b;pointer-events:none}
.case-search-form .case-search-input input{padding-left:40px}
.case-search-form .button{min-height:48px;padding:11px 18px;font-size:.82rem;border-radius:3px}
.case-search-form input:focus,.case-search-form select:focus{outline:2px solid #566e45;outline-offset:2px}
.catalog-results-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:27px 0 22px;color:#526047;scroll-margin-top:112px;font-size:.85rem}
.catalog-results-heading p{margin:0}.catalog-results-heading strong{color:#26351e;font-size:1.03rem;margin-right:5px}
.catalog-results-heading>div{display:flex;gap:22px;align-items:center}
.catalog-results-heading .text-link{font-size:.78rem}
.case-pagination{display:flex;justify-content:center;align-items:center;gap:25px;margin:38px 0 0;color:#33472b;font-size:.87rem}
.case-pagination>div{display:flex;gap:6px;align-items:center}
.case-pagination>div>a,.case-pagination>div>span:not(.pagination-gap){display:flex;align-items:center;justify-content:center;min-width:43px;height:43px;padding:0 10px;border:1px solid #cbd1be;border-radius:3px}
.case-pagination [aria-current=page]{background:#354a2b;color:#fff;border-color:#354a2b}
.case-pagination a:hover{background:#e0e5d3}
.pagination-direction{padding:10px 0;white-space:nowrap}
.pagination-gap{padding:0 4px}
.city-catalog-back{margin-top:28px}
.case-empty{padding:50px 32px;border:1px solid #d0d7c2;background:#f7f8f0;border-radius:6px}
.case-empty h2{font-size:2rem;margin-bottom:17px}.case-empty p{max-width:580px;line-height:1.8;margin-bottom:24px}
.case-detail-hero figure{margin:0;min-width:0}
.case-detail-hero figure img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;background:#eee7dc;border:1px solid #d4d6ca;border-radius:6px}
.case-detail-hero figcaption{color:#5c6457;font-size:.77rem;line-height:1.6;padding:12px 0 0}
.case-detail-hero .case-stats.large{margin-bottom:26px;grid-template-columns:repeat(2,minmax(0,1fr))}.case-detail-hero h1{overflow-wrap:anywhere}
.regional-cases .section-heading-side{max-width:360px}
.regional-cases .section-heading-side p{font-size:.97rem;color:#4d5947;line-height:1.8}
.regional-cases{scroll-margin-top:110px}
@media(max-width:1150px){.case-search-form{grid-template-columns:1.5fr 1.3fr 1.1fr}.case-search-form>.case-search-input{grid-column:1/3}.case-search-form>label:nth-child(2){grid-row:2;grid-column:1}.case-search-form>label:nth-child(3){grid-row:2;grid-column:2}.case-search-form>label:nth-child(4){grid-row:2;grid-column:3}.case-search-form>.button{grid-column:3;grid-row:1}.case-catalog-heading{gap:30px}.case-card .case-body{padding:21px}.case-grid{gap:20px}}
@media(max-width:900px){.case-catalog-heading{grid-template-columns:1fr}.case-catalog-heading .lead{max-width:630px;margin-top:0}.case-catalog-heading{gap:20px}.case-card .case-body h3{font-size:1.25rem}.case-detail-hero .button{font-size:.83rem}}
@media(max-width:650px){.case-catalog-intro{padding-bottom:22px}.case-catalog-heading h1{font-size:2.65rem}.case-catalog-heading .lead{font-size:.93rem;line-height:1.7}.case-city-links{flex-wrap:nowrap;overflow-x:auto;padding-bottom:8px;margin-top:24px;max-width:100%}.case-search-form{display:grid;grid-template-columns:1fr 1fr;padding:18px;gap:16px 12px}.case-search-form>.case-search-input{grid-column:1/-1;grid-row:auto}.case-search-form>label:nth-child(2){grid-column:1/-1;grid-row:auto}.case-search-form>label:nth-child(3){grid-column:1;grid-row:auto}.case-search-form>label:nth-child(4){grid-column:2;grid-row:auto}.case-search-form>.button{grid-column:1/-1;grid-row:auto}.case-search-form input,.case-search-form select{font-size:16px}.case-search-form label{font-size:.82rem}.catalog-results-heading{align-items:flex-start;padding:23px 0;flex-direction:column;gap:9px}.catalog-results-heading>div{justify-content:space-between;width:100%;font-size:.75rem}.case-card .case-body{padding:24px}.case-card .case-body h3{font-size:1.42rem;min-height:0}.case-card .case-stats dd{font-size:1.23rem}.case-card .case-picture{height:auto;aspect-ratio:4/3}.case-pagination{gap:12px;flex-wrap:wrap}.case-pagination>div{order:-1;flex-basis:100%;justify-content:center;gap:4px}.case-pagination>div>a,.case-pagination>div>span:not(.pagination-gap){min-width:38px;height:40px;padding:0 8px}.case-pagination .pagination-direction{padding:9px 25px}.regional-cases .section-heading-side p{font-size:.9rem}.case-detail-hero figure img{height:auto}.case-detail-hero h1{font-size:2.45rem}}
@media(prefers-reduced-motion:reduce){.case-card,.case-card .case-picture img{transition:none}.case-card:hover .case-picture img{transform:none}}

.inner-page .case-catalog{padding-top:0}.region-case-link{display:inline-block;margin-top:18px}
