.card {
    background-color: #E6EAE9;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    padding: 32px;
    height: 100%;
    min-height: 225px
}

    .card.card--info {
        background-color: #026982;
        color: #fff;
        justify-content: center
    }

        .card.card--info .card__title, .card.card--info .card__subtitle, .card.card--info .card__body, .card.card--info .card__link {
            color: #fff
        }

        .card.card--info .card__body {
            font-size: 1.125rem
        }

    .card.card--icon {
        justify-content: center
    }

        .card.card--icon .card__image {
            margin-bottom: 24px
        }

    .card.card--interactive {
        padding: 0
    }

        .card.card--interactive[aria-expanded=true] .card__cover {
            left: -100%
        }

        .card.card--interactive[aria-expanded=true] .card__button {
            background-color: #fff
        }

        .card.card--interactive .card__cover {
            position: absolute;
            top: 0;
            left: 0;
            z-index: 2;
            width: 100%;
            height: 100%;
            transition: all .3s linear;
            background-color: #5cff96;
            color: #21282d;
            display: flex;
            align-items: center;
            padding: 32px 48px 32px 32px
        }

            .card.card--interactive .card__cover .card__title {
                color: #21282d
            }

        .card.card--interactive .card__content {
            background-color: #fff;
            border: 8px solid #5CFF96;
            padding: 32px 48px 32px 32px;
            color: #21282d;
            display: flex;
            flex-direction: column;
            gap: 10px;
            position: relative;
            height: 100%
        }

            .card.card--interactive .card__content:before {
                position: absolute;
                content: "";
                z-index: 2;
                bottom: 0;
                right: 0;
                background-color: #5cff96;
                width: 48px;
                height: 48px
            }

            .card.card--interactive .card__content a, .card.card--interactive .card__content .card__body {
                color: #21282d
            }

            .card.card--interactive .card__content .card__body, .card.card--interactive .card__content .card__link {
                margin-top: 0
            }

            .card.card--interactive .card__content .card__button {
                font-family: DM Sans,sans-serif;
                font-size: 14px;
                line-height: 145%;
                font-weight: 400;
                flex-grow: 0;
                box-shadow: none;
                display: inline-flex;
                font-weight: 700;
                text-decoration: none;
                text-transform: uppercase;
                white-space: nowrap;
                width: fit-content;
                letter-spacing: 1.4px;
                position: absolute;
                bottom: 0;
                right: 0;
                z-index: 3;
                width: 40px;
                height: 40px;
                padding: 0 0 3px 2px;
                justify-content: center;
                align-items: center;
                color: #21282d;
                font-size: 2rem;
                border: 2px solid #000000;
                transition: all .3s linear;
                cursor: pointer
            }

                .card.card--interactive .card__content .card__button:hover, .card.card--interactive .card__content .card__button:focus-visible {
                    background-color: #000;
                    color: #fff
                }

    .card.card--featured .card__image img {
        aspect-ratio: 16/9;
        max-height: 222px;
        object-fit: cover
    }

    .card.card--featured .card__body {
        margin-bottom: auto
    }

    .card.card--no-background {
        background-color: transparent;
        padding: 0
    }

    .card .card__image {
        margin-bottom: 16px;
        position: relative
    }

        .card .card__image img {
            width: 100%;
            height: 100%
        }

            .card .card__image img[src$=".svg"] {
                max-width: 64px
            }

        .card .card__image .tag {
            position: absolute;
            left: 8px;
            top: 8px
        }

    .card .card__icon {
        margin-bottom: 24px
    }

        .card .card__icon i {
            color: #004868;
            font-size: 4rem
        }

    .card .cta-date {
        position: absolute;
        top: 0;
        right: 0;
        z-index: 2;
        border: none;
        flex-direction: column;
        width: 115px
    }

@media (min-width: 992px) {
    .card .cta-date {
        width: 140px
    }
}

.card .cta-date .cta-date__box {
    flex-direction: column
}

.card .cta-date .cta-date__text {
    padding: 5px 16px
}

.card .cta-date .cta-date__text--top {
    border-right: none;
    margin-top: 8px;
    padding-bottom: 0
}

@media (min-width: 992px) {
    .card .cta-date .cta-date__text--top {
        padding-bottom: 5px
    }
}

.card .cta-date .cta-date__text--highlight {
    border-right: none;
    font-size: 4.375rem;
    line-height: 1;
    padding-top: 0;
    margin-bottom: 0
}

@media (min-width: 992px) {
    .card .cta-date .cta-date__text--highlight {
        margin-bottom: 8px;
        padding-top: 5px
    }
}

.card .cta-date .cta-date__text--footer {
    border-top: 1px solid #A5A5A5;
    padding: 8px 0;
    line-height: 1.2
}

.card .tag {
    margin-bottom: 12px;
    white-space: nowrap; /* Prevents wrapping */
    overflow: hidden; /* Prevents overflow from causing scrollbars */
    text-overflow: clip; /* Clips the text instead of adding &quot;...&quot; */
    word-break: keep-all; /* Prevents breaking words */
    hyphens: none; /* Prevents automatic hyphenation */
}

    .card .tag.tag--standard {
        width: 100%
    }

        .card .tag.tag--standard:before {
            min-width: 15px
        }

        .card .tag.tag--standard:after {
            content: "";
            display: inline-block;
            width: 100%;
            height: 1px;
            background-color: #ccc;
            margin-left: 24px
        }

.card .card__title {
    font-family: DM Sans,sans-serif;
    font-size: 23px;
    line-height: 120%;
    font-weight: 700;
    color: #21282d
}

.card .card__subtitle {
    font-family: DM Sans,sans-serif;
    font-size: 16px;
    line-height: 145%;
    font-weight: 400;
    font-size: 15px;
    color: #4b4c4d;
    margin-top: 4px
}

.card .card__eyebrow {
    font-family: DM Sans,sans-serif;
    font-size: 12px;
    line-height: 120%;
    font-weight: 700;
    color: #21282db3;
    letter-spacing: 1.2px;
    text-transform: uppercase
}

.card .card__body {
    font-family: DM Sans,sans-serif;
    font-size: 16px;
    line-height: 145%;
    font-weight: 400;
    color: #21282d;
    margin-top: 12px
}

.card .card__link {
    font-family: DM Sans,sans-serif;
    font-size: 14px;
    line-height: 145%;
    font-weight: 400;
    flex-grow: 0;
    box-shadow: none;
    cursor: pointer;
    display: inline-flex;
    font-weight: 700;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
    width: fit-content;
    letter-spacing: 1.4px;
    display: inline-block;
    margin-top: 20px;
    padding: 0;
    color: #21282d
}

    .card .card__link:after {
        content: url(../images/icon-arrow-blue.svg);
        display: inline-block;
        margin-left: 10px
    }

    .card .card__link:hover, .card .card__link:focus-visible {
        text-decoration: underline
    }

    .card .card__link:active {
        text-decoration-thickness: 2px
    }

        .card .card__link:active:after {
            content: url(../images/icon-arrow-black.svg)
        }

.card.card--icon .card__icon-container {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 24px;
}

.card.card--icon .card__icon {
    margin-bottom: 0;  /* Override the existing margin since it's now handled by container */
}

.card.card--icon .card__icon-header {
    font-family: DM Sans, sans-serif;
    font-size: 36px;
    line-height: 130%;
    font-weight: 700;
    color: #004868;
}

.card-icon-center .card--icon .card__icon-container .card__icon {
    margin: 0 auto;
}
