.home-grid .news-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.home-grid .news-grid a {
    min-width: 0;
    overflow-wrap: anywhere;
}

.mvr-home-campaigns {
    --mvr-campaign-height: 218px;
    --mvr-campaign-gap: 12px;
}

.mvr-campaign-viewport {
    margin-bottom: 12px;
    overflow: hidden;
}

.mvr-campaign-viewport[data-mvr-campaign-scroll] {
    height: calc(2 * var(--mvr-campaign-height) + var(--mvr-campaign-gap));
}

.mvr-campaign-track {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-auto-rows: var(--mvr-campaign-height);
    gap: var(--mvr-campaign-gap);
}

.mvr-campaign-track.mvr-campaign-moving {
    transform: translateY(calc(-1 * (var(--mvr-campaign-height) + var(--mvr-campaign-gap))));
    transition: transform 380ms ease;
}

.home-grid .mvr-home-campaigns .campaign-card {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    width: 100%;
    margin: 0;
}

.home-grid .mvr-home-campaigns .campaign-card img {
    display: block;
    height: 105px;
    flex: 0 0 105px;
}

.home-grid .mvr-home-campaigns .campaign-card span {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    overflow-wrap: anywhere;
    font-size: 16px;
    line-height: 1.3;
}

.mvr-home-campaigns .campaign-card small {
    margin-top: auto;
}

.mvr-home-campaigns .campaign-card:focus-visible {
    outline-offset: -3px;
}

.mvr-campaign-controls:not([hidden]) {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 8px;
}

.mvr-campaign-controls button {
    padding: 5px 9px;
    font-size: 12px;
}

@media (prefers-reduced-motion: reduce) {
    .mvr-campaign-track.mvr-campaign-moving { transition: none; }
}
