.above-fold {
    --above-fold-navy: #001f35;
    --above-fold-accent: #1183f8;
    --above-fold-text: #111;
    --above-fold-muted: #5f6368;
    --above-fold-divider: #d1d3d4;
    --above-fold-live: #e60000;
    --above-fold-background: #fff;
    width: 100%;
    min-width: 0;
    color: var(--above-fold-text);
    background: var(--above-fold-background);
    font-family: var(--bgvoice-font-book) !important;
}

.above-fold *,
.above-fold *::before,
.above-fold *::after {
    box-sizing: border-box;
}

.above-fold__layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 2rem;
    align-items: start;
}

.above-fold__main,
.above-fold__rail,
.above-fold__featured-content,
.above-fold__card,
.above-fold__rail-item {
    min-width: 0;
}

.above-fold__featured {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 1rem;
    align-items: stretch;
}

.above-fold__featured-content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    min-width: 0;
}

.above-fold__featured:not(.above-fold__featured--text-only)
    .above-fold__image--featured {
    grid-row: 1;
}

.above-fold__featured:not(.above-fold__featured--text-only)
    .above-fold__featured-content {
    grid-row: 2;
}

.above-fold__image {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
    aspect-ratio: 16 / 9;
    background: var(--above-fold-divider);
}

.above-fold__image picture,
.above-fold__image img {
    display: block;
    width: 100%;
    height: 100%;
}

.above-fold__image img {
    object-fit: cover;
    transition: transform 180ms ease;
}

.above-fold__image:hover img {
    transform: scale(1.015);
}

.above-fold__headline,
.above-fold__headline * {
    margin: 0;
    overflow-wrap: break-word;
    word-break: normal;
    color: var(--above-fold-navy);
    font-family: var(--bgvoice-font-black) !important;
    font-weight: normal;
}

.above-fold__headline a {
    color: inherit;
    text-decoration: none;
}

.above-fold__headline a:hover,
.above-fold__headline a:focus-visible,
.above-fold__meta-category:hover,
.above-fold__meta-category:focus-visible {
    color: var(--above-fold-accent);
}

.above-fold__headline a:focus-visible,
.above-fold__image:focus-visible,
.above-fold__meta-category:focus-visible {
    outline: 2px solid var(--above-fold-accent);
    outline-offset: 3px;
}

.above-fold__headline--featured {
    font-size: 1.85rem;
    line-height: 1.04;
}

.above-fold__summary {
    margin: .8rem 0 0;
    overflow-wrap: anywhere;
    color: var(--above-fold-text);
    font-family: var(--bgvoice-font-book) !important;
    font-size: 1.03rem;
    line-height: 1.24;
}

.above-fold__summary--featured {
    margin-top: 1.1rem;
    font-size: 1.08rem;
}

.above-fold__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .55rem;
    margin-top: 1rem;
    color: var(--above-fold-muted);
    font-family: var(--bgvoice-font-book) !important;
    font-size: .9rem;
    line-height: 1.2;
}

.above-fold__meta-divider {
    width: 1px;
    height: 1.15em;
    background: currentColor;
}

.above-fold__meta-category {
    color: inherit;
    text-decoration: none;
}

.above-fold__cards {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 1.75rem;
    margin-top: 2.5rem;
}

.above-fold__card {
    display: flex;
    flex-direction: column;
}

.above-fold__card--text-only {
    padding-top: 1rem;
    border-top: 1px solid var(--above-fold-divider);
}

.above-fold__headline--card {
    margin-top: .85rem;
    font-size: 1.42rem;
    line-height: 1.07;
}

.above-fold__card--text-only .above-fold__headline--card {
    margin-top: 0;
}

.above-fold__card .above-fold__meta {
    margin-top: auto;
    padding-top: 1rem;
}

.above-fold__rail-item {
    padding-bottom: 1.25rem;
}

.above-fold__rail-item + .above-fold__rail-item {
    padding-top: 1.25rem;
    border-top: 1px solid var(--above-fold-divider);
}

.above-fold__headline--rail {
    margin-top: .8rem;
    font-size: 1.42rem;
    line-height: 1.07;
}

.above-fold__rail-item:not(:first-child)
    .above-fold__headline--rail {
    margin-top: 0;
}

.above-fold__summary--rail {
    font-size: 1rem;
}

.above-fold__live-label,
.above-fold__live-label * {
    display: inline-flex;
    align-items: center;
    gap: .24em;
    margin-right: .24em;
    color: var(--above-fold-live);
    font-family: var(--bgvoice-font-black) !important;
    white-space: nowrap;
}

.above-fold__live-dot {
    display: inline-block;
    box-sizing: border-box;
    width: .72em;
    height: .72em;
    border: .13em solid currentColor;
    border-radius: 50%;
    box-shadow: inset 0 0 0 .11em var(--above-fold-background);
    background: currentColor;
}

.above-fold__video {
    position: absolute;
    bottom: 0;
    left: 0;
    display: grid;
    width: 3rem;
    height: 3rem;
    place-items: center;
    color: #fff;
    background: var(--above-fold-navy);
}

.above-fold__video::before {
    width: 0;
    height: 0;
    margin-left: .18rem;
    border-top: .55rem solid transparent;
    border-bottom: .55rem solid transparent;
    border-left: .85rem solid currentColor;
    content: "";
}

@media (min-width: 768px) {
    .above-fold__layout {
        gap: 2.5rem;
    }

    .above-fold__featured {
        grid-template-columns: minmax(13rem, .95fr) minmax(0, 2.15fr);
        gap: clamp(1.1rem, 2vw, 1.8rem);
    }

    .above-fold__featured:not(.above-fold__featured--text-only)
        .above-fold__image--featured,
    .above-fold__featured:not(.above-fold__featured--text-only)
        .above-fold__featured-content {
        grid-row: auto;
    }

    .above-fold__featured-content {
        justify-content: center;
    }

    .above-fold__headline--featured {
        font-size: clamp(1.8rem, 2.45vw, 2.5rem);
    }

    .above-fold__summary--featured {
        font-size: 1.12rem;
    }

    .above-fold__cards {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 2rem 1.35rem;
        margin-top: clamp(2.5rem, 4.5vw, 4.5rem);
    }

    .above-fold__rail {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 1.25rem;
    }

    .above-fold__rail-item {
        padding-bottom: 0;
    }

    .above-fold__rail-item + .above-fold__rail-item {
        padding-top: 0;
        padding-left: 1.25rem;
        border-top: 0;
        border-left: 1px solid var(--above-fold-divider);
    }
}

@media (min-width: 1200px) {
    .above-fold__layout {
        grid-template-columns: minmax(0, 3fr) minmax(16rem, 1fr);
        gap: clamp(1.5rem, 2vw, 2rem);
    }

    .above-fold__featured {
        grid-template-columns: minmax(14rem, .92fr) minmax(0, 2.18fr);
    }

    .above-fold__cards {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: clamp(1rem, 1.5vw, 1.4rem);
    }

    .above-fold__headline--card {
        font-size: clamp(1.2rem, 1.35vw, 1.42rem);
    }

    .above-fold__headline--rail {
        font-size: clamp(1.25rem, 1.45vw, 1.5rem);
    }

    .above-fold__rail {
        display: block;
    }

    .above-fold__rail-item {
        padding-bottom: 1.25rem;
    }

    .above-fold__rail-item + .above-fold__rail-item {
        padding-top: 1.25rem;
        padding-left: 0;
        border-top: 1px solid var(--above-fold-divider);
        border-left: 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    .above-fold__image img {
        transition: none;
    }
}
