.hidden {
  display: none;
}

.footer {
    background: #F2F9F6;
    height: 0px;
    width: 100%;
}

.icon-link-funds {
    width: 16px;
    height: 16px;
    background: no-repeat center / 16px 16px url(../assets/img/icon-link-funds.svg?1=1);
}

.bnpp-cta-carousel {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #F2F9F6;
    flex-wrap: wrap;

    h2 {
        width: 1536px;
        margin: 70px 87px 10px 87px;
        color: #1D1D1B;
        font-family: "BNPP Sans Condensed";
        font-size: 64px;
        font-style: normal;
        font-weight: 400;
        line-height: 60px; /* 93.75% */
    }

    p {
        color: #1D1D1B;
        font-family: "BNPP Sans";
        font-size: 18px;
        font-style: normal;
        font-weight: 400;
        line-height: 24px; /* 133.333% */
        width: 1536px;
        margin: 0 87px 32px 87px;
    }
}

.card-container, .card-container-light {
    width: 1536px;
    margin: 30px 87px;
}

.card-container .bnpp-cta-carousel-block, .card-container-light .bnpp-cta-carousel-block {
    width: 364px !important;
    height: 418px;
    box-sizing: border-box;
    border: none;
    background: #fff;
    padding: 32px;
    margin: 0 10px;
    transition: opacity 0.3s ease;

    &:focus {
        outline: 3px dotted #008252;
        outline-offset: 1px;
    }
    h3 {
        color: #222;
        font-feature-settings: 'liga' off, 'clig' off;
        font-family: "BNPP Sans Condensed";
        font-size: 40px;
        font-style: normal;
        font-weight: 400;
        line-height: 48px;
    }

    p {
        color: #1E1E1E;
        font-feature-settings: 'liga' off, 'clig' off;
        font-family: "BNPP Sans";
        font-size: 18px;
        font-style: normal;
        font-weight: 300;
        line-height: 26px; 
        width: auto;
        margin: 0 0 32px 0;
    }
}

.card-container-light {
    display: flex;
    align-items:center;
    justify-content:center;
}

.slick-prev {
    z-index: 10;
    left: -20px;
    background: no-repeat center / 28px 28px url(../assets/img/arrow-left.svg?1=1);
}
.slick-next {
    z-index: 10;
    right: -20px;
    background: no-repeat center / 28px 28px url(../assets/img/arrow-right.svg?1=1);
}

.container-button-cta-carousel{
    display: flex;
    justify-content: space-between;

    a {
        height: 32px;
        font-size: 14px;
        width: 100px;
        padding: 8px 2px;
        justify-content: center;
        gap: 3px;
    }
    
    &:focus {
        outline: 3px dotted #008252;
        outline-offset: 1px;
    }
}
    

.slick-prev, .slick-next{
    font-size: 0;
    line-height: 0;
    position: absolute;
    top: 50%;
    display: block;
    width: 70px;
    height: 70px;
    padding: 0;
    transform: translate(0, -50%);
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
    background-color: #12494B;
    border-radius: 50%;
    &:focus {
        outline: 3px dotted #008252;
        outline-offset: 1px;
    }
}

.slick-prev:before, .slick-next:before {
    font-family: 'slick';
    font-size: 20px;
    color: #fff;
}

.slick-dots li {
    width: 32px;
    height: 5px;
    flex-shrink: 0;
    border-radius: 3px;
}

.slick-dots li {
    background: #B2E6D2;
}

li.slick-active {
    background: #40BF90 !important;
}

.slick-dots li button:before {
    font-size: 12px;
    color: #0073aa;   
}

.card-container .bnpp-cta-carousel-block.gray, .card-container-light .bnpp-cta-carousel-block.gray{
    opacity: 0.6;
}

.bnpp-cta-carousel.dark{
    background: #0C2728;

    h2 {
        color: #FFF;
    }

    p {
        color: #FFF;
    }
}

.dark .slick-prev, .dark .slick-next{
    background-color: #008252;
}

.dark .container-button-cta-carousel{
    display: flex;
    justify-content: space-between;

    a {
        height: 32px;
        font-size: 14px;
        width: 100px;
        padding: 8px 2px;
        gap: 3px
    }
}
.dark .bnpp-button-cta {
    --buttonHoverColour: #0C2728;
    --buttonFocusColour: #B2D9CB;
    background-color: var(--wp--preset--color--bnpp-green);
    padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--60);
    color: var(--wp--preset--color--white);
    font-size: var(--wp--preset--font-size--medium);
    text-decoration: none;
    border: none;
    cursor: pointer;
    transition: 300ms;
    display: inline-flex;
    align-items: center;
    width: fit-content;
    gap: var(--wp--preset--spacing--40);
    position: relative;
    border-radius: 3px;
    &.secondary {
        --buttonHoverColour: #EDF5F2;
        --buttonFocusColour: #D9ECE5;
        background-color: #FFFFFF;
        color: #008252;
        border: 1px solid #008252;
        &:hover {
            border-color: var(--buttonHoverColour);
            border-radius: 3px;
            background-color: var(--buttonHoverColour);
            color: #008252;
        }
    }
    &:hover {
        border-radius: 3px;
        background-color: var(--buttonHoverColour);
        color: var(--wp--preset--color--white);
    }
}

.dark .card-container .bnpp-cta-carousel-block, .dark .card-container-light .bnpp-cta-carousel-block {
        p {
            color: #1E1E1E;
        }
}

@media (max-width: 1536px) {
    .card-container, .card-container-light {
        width: 100%;
    }

    .slick-prev {
        left: 10px;
    }

    .slick-next {
        right: 10px;
    }
}

@media (max-width: 450px) {
    .bnpp-cta-carousel {
        h2 {
            width: 100%;
            margin: 25px 20px 10px 20px;
        }
        p {
            width: 100%;
            margin: 0 20px 15px 20px;
        }
    }
    .card-container, .card-container-light {
        width: 100%;
        height: 450px;
    }

    .card-container .bnpp-cta-carousel-block, .card-container-light .bnpp-cta-carousel-block {

        h3 {
            color: #222;
            font-size: 24px;
            width: 300px;
        }

        p {
            color: #222;
            font-size: 14px;
            width: 300px;
        }
    }

    .container-button-cta-carousel {
        flex-direction: column;
        gap: 8px;

        a {
            width: 300px;
            height: 32px;
            padding: 8px 2px;
            justify-content: center;
            gap: 3px
        }
    }

    .slick-prev {
        left: 10px;
    }

    .slick-next {
        right: 10px;
    }
    
    .slick-prev, .slick-next{
        width: 41px;
        height: 41px;
        top: 457px;
        background-color: #12494B !important;
    }

    .footer {
        height: 30px;
    }

    .slick-dots {
        width: 80%;
        left: 10%;
    }
}