.opp-list,.opp-related{padding-top:36px;padding-bottom:48px;color:#17233a}
.opp-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:24px}
.opp-heading h2{font-size:clamp(24px,3vw,36px);line-height:1.25;margin:8px 0 0;font-weight:650;color:#17233a}
.opp-heading>p{max-width:400px;line-height:1.7;color:#586577;margin:8px 0}
.opp-heading>a{white-space:nowrap;margin-top:12px}
.opp-kicker{font-size:12px;line-height:1.6;letter-spacing:.06em;text-transform:uppercase;color:#526780;font-weight:600}
.opp-filter{padding:24px;border:1px solid #dce3ed;border-radius:16px;background:#f6f8fb;margin-bottom:28px}
.opp-filter fieldset{border:0;padding:0;margin:0;min-width:0}
.opp-filter legend,.opp-filter label{font-size:13px;font-weight:600;line-height:1.6;color:#38465b}
.opp-filter legend{margin-bottom:12px}
.opp-filter__directions{display:flex;flex-wrap:wrap;gap:8px}
.opp-filter button,.opp-filter select{font:inherit;line-height:1.45}
.opp-filter__directions button{min-height:44px;padding:10px 16px;background:#fff;border:1px solid #cad5e3;border-radius:10px;cursor:pointer;color:#17233a}
.opp-filter__directions button[aria-pressed=true]{background:#1766ba;border-color:#1766ba;color:#fff}
.opp-filter__directions button span{margin-left:6px;opacity:.8;font-size:12px}
.opp-filter__bottom{display:flex;align-items:flex-end;gap:20px;margin-top:20px;flex-wrap:wrap}
.opp-filter__bottom label{display:flex;flex-direction:column;gap:6px;min-width:220px;max-width:100%}
.opp-filter select{min-height:44px;padding:9px 32px 9px 12px;border:1px solid #cad5e3;border-radius:8px;background:#fff;color:#17233a;width:100%}
.opp-reset{min-height:44px;cursor:pointer;border:0;background:transparent;color:#175a9e;text-decoration:underline;text-underline-offset:3px;padding:9px 4px}
.opp-filter__status{margin:0 0 12px auto;font-size:13px;line-height:1.5;color:#586577}
.opp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.opp-card{border:1px solid #dce3ed;border-radius:14px;overflow:hidden;display:flex;flex-direction:column;background:#fff;min-width:0}
.opp-card__image{display:block;background:#f1f4f8;aspect-ratio:4/3;overflow:hidden}
.opp-card__image img{display:block;width:100%;height:100%;object-fit:contain;padding:10px;box-sizing:border-box}
.opp-card__body{padding:20px;display:flex;flex-direction:column;flex:1;gap:12px}
.opp-card h3{font-size:18px;font-weight:600;line-height:1.5;margin:0;overflow-wrap:anywhere}
.opp-card h3 a{color:#17233a;text-decoration:none}
.opp-card__facts{font-size:13px;line-height:1.65;color:#586577;margin:0}
.opp-card__link{margin-top:auto;font-size:13px;line-height:1.6;color:#175a9e;text-decoration:none;font-weight:600;min-height:24px}
.opp-card__link span{margin-left:6px}
.opp-list [hidden],.opp-card[hidden]{display:none!important}
.opp-filter button:focus-visible,.opp-filter select:focus-visible,.opp-card a:focus-visible,.opp-directions a:focus-visible{outline:3px solid #2075c8;outline-offset:4px}
.opp-directions{display:flex;flex-wrap:wrap;gap:12px 24px;padding:24px 0;border-bottom:1px solid #e3e8ef;font-size:14px;line-height:1.7}
.opp-directions a,.opp-sections a,.opp-case-links a{color:#175a9e;text-underline-offset:3px}
.opp-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:28px}
.opp-sections section{padding:22px;background:#f6f8fb;border-radius:12px;scroll-margin-top:110px}
.opp-sections h2{font-size:20px;line-height:1.5;margin:0 0 12px;color:#17233a}
.opp-sections p,.opp-sections a{font-size:14px;line-height:1.7}
.opp-empty{background:#f6f8fb;padding:24px;border-radius:12px;line-height:1.8}
.opp-case-facts{display:grid;gap:16px;margin:0}
.opp-case-facts dt{font-size:12px;line-height:1.6;color:#586577;margin-bottom:4px}
.opp-case-facts dd{font-size:15px;line-height:1.6;margin:0;color:#17233a;overflow-wrap:anywhere}
.opp-case-story{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;padding-top:20px;padding-bottom:36px}
.opp-case-story>div{border-top:1px solid #dce3ed;padding-top:24px}
.opp-case-story h2{font-size:24px;line-height:1.5;margin:0 0 14px;color:#17233a}
.opp-case-story p,.case-result__content>p{font-size:15px;line-height:1.9;margin:0;color:#38465b}
.opp-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.opp-gallery figure{margin:0;min-width:0}
.opp-gallery figure>a{display:block;aspect-ratio:4/3;border-radius:12px;background:#f1f4f8;overflow:hidden}
.opp-gallery img{display:block;width:100%;height:100%;object-fit:contain;padding:8px;box-sizing:border-box}
.opp-gallery figcaption{font-size:12px;line-height:1.7;color:#586577;margin-top:10px}
.opp-case-relations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;padding-top:32px;padding-bottom:32px}
.opp-case-links{padding:24px;border:1px solid #dce3ed;border-radius:14px}
.opp-case-links h2{font-size:22px;line-height:1.45;margin:0 0 18px;color:#17233a}
.opp-case-links ul{list-style:none;padding:0;margin:0;display:grid;gap:14px}
.opp-case-links li{font-size:14px;line-height:1.7}
.opp-video{padding:24px 0}
@media(min-width:1100px){.opp-related .opp-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.opp-related .opp-card h3{font-size:16px}.opp-related .opp-card__body{padding:16px}}
@media(max-width:900px){.opp-grid,.opp-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.opp-heading{flex-direction:column;gap:12px}.opp-heading>p{max-width:100%}.opp-filter__status{margin-left:0}.opp-case-story,.opp-case-relations{grid-template-columns:1fr}}
@media(max-width:560px){.opp-list,.opp-related{padding-top:24px;padding-bottom:32px}.opp-grid,.opp-gallery,.opp-sections{grid-template-columns:1fr;gap:18px}.opp-filter{padding:16px}.opp-filter__bottom{gap:12px}.opp-filter__bottom label{width:100%}.opp-filter__directions button{padding:10px 12px;font-size:13px}.opp-card__body{padding:18px}.opp-gallery figcaption{font-size:12px}.opp-heading h2{font-size:26px}.opp-case-links{padding:20px}}
