.vs-overview {
 --vs-overview-surface: #f3f4f5;
 --vs-overview-ink: #202428;
 --vs-overview-on-image: #fff;
 --vs-overview-scrim: linear-gradient(transparent, rgba(0,0,0,.85));
 --vs-overview-focus: #1681a3;
 display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin: 24px 0;
}
.vs-overview--cols-1 { grid-template-columns: minmax(0,1fr); }
.vs-overview--cols-2 { grid-template-columns: repeat(2,minmax(0,1fr)); }
.vs-overview--cols-4 { grid-template-columns: repeat(4,minmax(0,1fr)); }
.vs-overview .vs-overview__item { margin: 0; min-width: 0; background: var(--vs-overview-surface); }
.vs-overview .vs-overview__link { display: flex; align-items: flex-end; position: relative; min-height: 300px; height: 100%; overflow: hidden; text-decoration: none; color: var(--vs-overview-ink); }
.vs-overview .vs-overview__image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; margin: 0; border: 0; border-radius: 0; }
.vs-overview .vs-overview__caption { position: relative; width: 100%; box-sizing: border-box; padding: 28px 24px; }
.vs-overview .vs-overview__item--image .vs-overview__caption { background: var(--vs-overview-scrim); padding-top: 90px; color: var(--vs-overview-on-image); }
.vs-overview .vs-overview__title { color: inherit; font-family: inherit; font-size: 23px; line-height: 1.3; font-weight: 700; letter-spacing: 0; margin: 0 0 12px; overflow-wrap: anywhere; }
.vs-overview .vs-overview__more { color: inherit; font-size: 14px; }
.vs-overview .vs-overview__link:hover .vs-overview__title { text-decoration: underline; }
.vs-overview .vs-overview__link:focus-visible { outline: 3px solid var(--vs-overview-focus); outline-offset: -3px; }
@media (max-width: 900px) { .vs-overview:not(.vs-overview--cols-1) { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 600px) { .vs-overview { grid-template-columns: minmax(0,1fr) !important; gap: 18px; } }
