.card-component{
    padding: 40px 0;
}

.card-component__header{
    margin-bottom: var(--spacing-04);
    width: 100%;
}

.card__media--icon .card__media{
    width: 50px;
    height: 50px;
    display: inline-block;
    margin-bottom: var(--spacing-03);
}

.card{
    position: relative;
    padding: 32px;
    height: auto;
    overflow: hidden;
}

.card__link-overlay{
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
}

.card:not(.bg-transparent){
    box-shadow: 0 2px 8px 0 rgba(0,0,0,.2);
    border-radius: 12.5px;
}

.card-component--prefooter_card .card{
    box-shadow: none;
}

.card.bg-transparent{
    padding: 0;
}

.card--has-overlay{
    cursor: pointer;
}

.swiper-slide{
    display: flex;
}

/* .card__cta{
    margin-top: 24px;
} */

.card-slider-wrapper{
    position: relative;
    padding-bottom: 50px;
}
.swiper-scrollbar.swiper-scrollbar-horizontal{
    width: 520px;
}

/* Profile Card  */
.card__media--thumbnail,
.card__media--profile_image{
    padding: 0;
}

.card__media--thumbnail .card__media{
    height: 176px;
}

.card__media--profile_image .card__details {
    padding: 15px 20px;
}

.card__media--thumbnail .card__details{
    padding: 32px;
}

.card__media--thumbnail .card__cta{
    padding: 0 32px 32px;
    width: 100%;
}

.card__media--profile_image .card__details .card__title{
    margin-bottom: 11px;
    font-size: 18px;
    line-height: 20px;
}

.card__media--profile_image .card__details .card__desc p{
    font-size: 13px;
    line-height: 19px;
    text-transform: uppercase;
    font-weight: 700;
}

.card-component--related_resources_card .card .eyebrow{
    font-size: 13px;
    line-height: 14px;
    color: var(--primary-red);
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 1.56px;
    margin-bottom: 10px;
    display: block;
}

.bg-dark{
    color: var(--white);
}

.is-hidden { display: none; }


.component-cta{
    margin-top: 50px;
}


.card__media {
    height: 331px;
    overflow: hidden;
}

.card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top;
}

/* Card Tabs */
.tabs-nav{
    border-bottom: 4px solid #ccc;
    align-items: stretch;
    margin: 40px 0;
}

.tabs-nav--link{
    max-width: 300px;
    width: 100%;
}

.tab-panel {
    display: none;
}
.tab-panel.active {
    display: block;
}

.tabs-nav--link .tabs-btn {
    appearance: none;
    border: none;
    background: none;
    font-size: 20px;
    padding: 5px 15px 20px;
    position: relative;
    cursor: pointer;
}

.tabs-nav--link .tabs-btn.active{
    font-weight: 700;
}

.tabs-nav--link .tabs-btn:after {
    content: "";
    position: absolute;
    height: 6px;
    width: 0;
    background: var(--primary-red);
    bottom: -4px;
    left: 0;
    -webkit-transition: .4s ease-in-out;
    transition: all .4s ease-in-out;
    border-radius: 12px;
}

.tabs-nav--link .tabs-btn.active:after {
    width: 100%;
}

.user__cards-overlay {
    display: none;
    position: fixed;
    left: 0;
    right: 0;
    height: 100%;
    background: rgba(0,0,0,.28);
    top: 0;
    z-index: 9999999;
    overflow: auto;
    align-items: center;
}

/* Alerts page card */

.card-component--alerts_card{
    padding-top: 72px;
}
.card-component--alerts_card .card-component__header{
    max-width: 100%;
    text-align: left;
    margin: 25px 0 45px;
}

.card-component--alerts_card [data-columns]{
    gap: 38px;
    margin-bottom: 70px;
}

.card-component--alerts_card .card{
    box-shadow: none;
    border: 1px solid rgba(212, 207, 202, 1);
    align-content: flex-start;
}

.card-component--alerts_card .card__title{
    font-size: 16px;
    line-height: 24px;
    margin: 40px 0 0;
}

.card-component--alerts_card .card__details{
    padding-bottom: 22px;
    margin-bottom: 27px;
    border-bottom: 1px solid rgba(212, 207, 202, 1);
}

.card-component--alerts_card .card__meta-item {
    display: flex;
    flex-direction: column;
    margin-bottom: 22px;
}

.card-component--alerts_card .card__meta-item strong {
    margin-bottom: 8px;
}

.card-component--alerts_card .card__cta{
    flex-direction: column;
    align-items: self-start;
    gap: 0px;
}

.card-component--alerts_card .card__cta .cta-link{
    line-height: 28px;
    font-weight: 700;
    color: var(--dark-red);
    background: none;
}

/* Alerts page card end */

/* Prefooter card */
.card-component--prefooter_card{
    padding: 96px 0;
    margin-top: 130px;
}

.card-component--prefooter_card .card {
    padding: 33px 25px;
}

.card-component--prefooter_card .card__media--icon .card__media{
    margin-bottom: 5px;
}

.card-component--prefooter_card .card__desc{
    margin-bottom: 23px;
}

.prefooter_card_has-decorative-elm:after {
    background: url(../../../images/decorative-items/orange-curly-star.png) no-repeat center center/contain;
    height: 175px;
    width: 52px;
    bottom: -205px;
    right: 20px;
    z-index: 1;
}

.prefooter_card_has-decorative-elm:before {
    background: url(../../../images/decorative-items/stars.svg) no-repeat center center / contain;
    width: 117px;
    height: 116px;
    top: calc((var(--spacing-09) + 65px) * -1);
    left: 10px;
}

@media all and (min-width: 768px){
    .card-component__header{
        margin-bottom: 40px;
        margin-left: auto;
        margin-right: auto;
        max-width: 600px;
    }

    .overlay-content {
        margin: auto;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
    }
    
    .prefooter_card_has-decorative-elm:after{
        height: 215px;
        width: 65px;
        bottom: -180px;
        right: 10px;
    }
  
}
@media all and (min-width: 992px){
    .card-component__header{
        max-width: 800px;
    }
    .overlay-content {
        max-width: 932px;
        width: 100%;
    }

    .prefooter_card_has-decorative-elm:after {
        right: 10px;
        bottom: -220px;
        height: 215px;
        width: 66px;
    }

    .prefooter_card_has-decorative-elm:before {
        width: 265px;
        height: 261px;
        top: -280px;
        left: -140px;
    }

    .card-component--prefooter_card{
        padding: 130px 0;
    }

    .card-component--prefooter_card .card {
        padding: 55px 60px;
    }
    .card-component--prefooter_card [data-columns]{
        gap: 40px;
    }
}

@media all and (min-width: 1366px){
    .prefooter_card_has-decorative-elm:after {
        right: -54px;
        bottom: -190px;
    }
}