/* =========================================================
   BANNER CARDS
   USE:
   .banner-cards.grid-2
   .banner-cards.grid-3
   .banner-cards.grid-4
========================================================= */

.banner-cards{
    display:flex;
    gap:30px;
    flex-wrap:wrap;
}

/* =========================================================
   COLUMN LAYOUTS
========================================================= */

.banner-cards.grid-2>.wpb_column{
    width:calc(50% - 15px);
}

.banner-cards.grid-3>.wpb_column{
    width:calc(33.333% - 20px);
}

.banner-cards.grid-4>.wpb_column{
    width:calc(25% - 23px);
}

.banner-cards>.wpb_column{
    padding:0!important;
}

/* =========================================================
   CARD
========================================================= */

.banner-card>.vc_column-inner{
    background:#fff;
    border-radius:22px;
    overflow:hidden;
    padding:0!important;
    box-shadow:0 8px 30px rgba(0,0,0,.06);
    transition:.3s ease;
    height:100%;
}

.banner-card:hover>.vc_column-inner{
    transform:translateY(-4px);
    box-shadow:0 18px 40px rgba(0,0,0,.12);
}

/* =========================================================
   WPBAKERY RESET
========================================================= */

.banner-card .wpb_content_element,
.banner-card .wpb_wrapper,
.banner-card figure,
.banner-card .wpb_single_image,
.banner-card .vc_single_image-wrapper,
.banner-card .vc_figure{
    margin:0!important;
    padding:0!important;
    width:100%!important;
    display:block!important;
}

.banner-card .vc_box_border_grey{
    border:0!important;
    background:none!important;
    padding:0!important;
}

/* =========================================================
   IMAGE
========================================================= */

.banner-card img{
    width:100%!important;
    height:300px;
    display:block;
    object-fit:cover;
    object-position:center;
}

/* =========================================================
   CONTENT
========================================================= */

.banner-card .wpb_text_column{
    margin:0!important;
}

.banner-card .wpb_text_column .wpb_wrapper{
    padding:26px 28px 0!important;
}

.banner-card sub{
    display:inline-block;
    margin-bottom:12px;
    font-size:11px;
    line-height:1;
    letter-spacing:1.2px;
    text-transform:uppercase;
    color:#d15e34;
    font-weight:700;
}

.banner-card h2{
    margin:0 0 16px;
    font-size:34px;
    line-height:1.1;
    font-weight:500;
    color:#24527a;
}

.banner-card p{
    margin:0;
    font-size:16px;
    line-height:1.65;
    color:#5f6670;
}

/* =========================================================
   FOOTER
========================================================= */

.banner-card .card-footer{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:24px 28px 28px;
}

.banner-card .card-footer span,
.banner-card .card-footer a{
    font-size:16px;
    font-weight:700;
    color:#114b78;
    text-decoration:none;
}

.banner-card .card-footer a:hover{
    opacity:.7;
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width:1024px){

    .banner-cards.grid-3>.wpb_column,
    .banner-cards.grid-4>.wpb_column{
        width:calc(50% - 15px);
    }
}

@media (max-width:768px){

    .banner-cards{
        gap:20px;
    }

    .banner-cards>.wpb_column{
        width:100%!important;
    }

    .banner-card img{
        height:220px;
    }

    .banner-card h2{
        font-size:28px;
    }

    .banner-card .wpb_text_column .wpb_wrapper{
        padding:22px 22px 0!important;
    }

    .banner-card .card-footer{
        padding:20px 22px 22px;
    }
}