/********************/
/********************/
/** Rows & Modules **/
/** Featured Cards **/
/********************/
/********************/

/**************/
/* Hover Card */
/**************/
.hover-card,
.hover-card>.fl-module-content,
.hover-card .fl-module-content .fl-callout,
.hover-card .fl-module-content .fl-callout .fl-callout-content{
    height:100%;
}
.hover-card>.fl-module-content{
    padding:36px;
    border-radius: 30px;
    overflow: hidden;
    min-height: 550px;
    box-shadow: 0px 3px 20px rgba(0, 0, 0, 0.16);
}
.hover-card .fl-module-content .fl-callout .fl-callout-content{
    display: flex;
    flex-direction: column;
}
body .hover-card h3.fl-callout-title >a {display:block;}
body .hover-card h3.fl-callout-title{
    margin-top:auto;
    padding-bottom:18px;
}
body .hover-card h3.fl-callout-title:after {
    font-family: 'Font Awesome 5 Pro';
    transform: rotate(90deg);
    content: "\f178";
    font-weight: 500;
    font-size: 33px;
    position: relative;
    top: 8px;
    transition: all .25s ease;
    display: inline-block;
    color: var(--sky-blue);
    height: 36px;
}
body:not(.fl-builder-edit) .hover-card .fl-callout-text-wrap{
    transition: all 1s ease-in-out;
    max-height: 0;
    overflow: hidden;
}
body:not(.fl-builder-edit) .hover-card:hover .fl-callout-text-wrap {
    max-height: 2000px;
}
body:not(.fl-builder-edit) .hover-card .fl-callout-text-wrap.maxheight200 {
    max-height:200px;
}
.hover-card .fl-callout-text p{
    padding-bottom:15px!important;
}
.hover-card .fl-callout-text-wrap>a{
    font-family: var(--font-primary);
    font-size: 21px;
    font-size: 1.05rem;
    line-height: 25px;
    line-height: 1.56rem;
    color: var(--navy-blue);
    text-decoration: none;
    background-image: linear-gradient(var(--sky-blue), var(--sky-blue));
    background-repeat: no-repeat;
    background-position: bottom left;
    background-size: 100% 1px;
    transition: background-size 250ms ease-in-out;
    display: inline-block;
    font-weight: 700;
}
.hover-card:hover .fl-callout-text-wrap>a:hover {    animation: 0.25s underline;}

.hover-card .fl-callout-text-wrap>a:after {
    font-family: 'Font Awesome 5 Pro';
    content: "\f178";
    font-weight: 500;
    padding-left: 10px;
    position: relative;
    top: 1px;
    transition: all .25s ease;
    display: inline-block;
    color: var(--sky-blue);
}

.hover-card .fl-callout-title a,
.hover-card .fl-photo-content a{
    pointer-events: none!important;
    cursor:context-menu!important;
}



.fl-module.featured_cta {
    margin-top:auto  !important;
}




/*******************/
/***Card Carousel***/
/*******************/


.featured_expandable_item .card-carousel-img.active, 
.featured_expandable_item:hover .card-carousel-img{
    height:20% !important;
}

.featured_expandable_item.hideimg .card-carousel-img.active, 
.featured_expandable_item.hideimg:hover .card-carousel-img{
    height:0% !important;
}

body:not(.fl-builder-edit) .card-carousel-img {
    
    position: absolute;
    bottom: 0;
    width: 100%;
    height:calc(100% - 200px);
    transition:all 0.5s ease;
    border-bottom-right-radius: 16px;
    border-bottom-left-radius: 16px;
    overflow: hidden;
    background: #000;
}

body:not(.fl-builder-edit) .featured_expandable_item {
    position:relative;
    height: 600px;
    overflow: hidden;
}


body:not(.fl-builder-edit) .card-carousel-img .fl-photo-content,
body:not(.fl-builder-edit) .card-carousel-img .fl-module-content,
body:not(.fl-builder-edit) .card-carousel-img .fl-photo,
body:not(.fl-builder-edit) .card-carousel-img .fl-photo-content img{
    width:100%;
    height:100%;
}
.card-carousel-img .fl-photo-content img{
    
    height:100%;
    object-fit: cover;
}
.card-carousel-slide{
    width:440px!important;
    height: 100%;
}
body.fl-builder-edit .card-carousel-slide{
    width:100%!important;
}
.card-carousel-slide .card-carousel-title{
    height:200px;
}
.single-row-title .card-carousel-slide .card-carousel-title{
    height:144px;
}
.single-row-title .card-carousel-img{
    height:calc(100% - 144px);
}
.card-carousel-title.fl-module-heading h3{
    padding-bottom: 26px!important;
}
.card-carousel-title a:hover, .card-carousel-title a{
    color:var(--black);
    font-family: var(--font2);
}
.card-carousel-title .fl-module-content:after{
    width:18px;
    height:7px;
    content:"";
    border-radius: 1px;
    background-color: var(--charcoal);
    display: block;
    transition: all 0.5s ease;
}

.card-carousel-txt p{
    margin-bottom: 0;
    /*height: 104px;*/
    overflow: hidden;
}







@media screen and (max-width: 1366px) {
    
    .hover-card .fl-callout-text p{
        padding-top: 8px !important;
        padding-bottom: 8px !important;
    }
    .action-carousel-row .fl-col-group .fl-col-group{
        margin-left: calc(50vw - 683px);
    }
    body:not(.fl-builder-edit) .featured_expandable_item {
        height: initial;
    }
}
@media only screen and (max-width: 992px) {
        .hover-card-grid{
        grid-template-columns: repeat(2, 1fr)!important;
    }
    .hover-card>.fl-module-content{
        min-height: 500px;
    }

    .featuredcards_overlap_image img {
        max-height:300px;
        object-fit: cover;
    }

    
    /* Featured cards with BG Image and flat color overlap */
    /*******************************************************/
        .featuredcards_bgoverlap.col3 .fl-builder-bottom-edge-layer.fl-builder-shape-rect >svg {
            height:60%
        }

        .featuredcards_bgoverlap.col2 .fl-builder-bottom-edge-layer.fl-builder-shape-rect >svg {
            height:40%
        }

        .featuredcards_bgoverlap .fl-row-content-wrap {
            background-size: 120vw;
            background-position-y: 0;
        }

    .action-carousel-header-box{
        padding-left: 50px;
        padding-right: 50px;
    }
    .action-carousel-row .fl-col-group .fl-col-group {
        padding-left: 30px;
    }     
    
}
@media only screen and (max-width: 768px) {
    
    .hover-card-grid{
        grid-template-columns: repeat(1, 1fr)!important;
    }
    body h3.fl-callout-title{
        padding-bottom: 20px;
    }
    .hover-card .fl-callout-text p{
        padding-top: 20px !important;
        padding-bottom: 20px !important;
    }
    .hover-card>.fl-module-content{
        min-height: 550px;
    }


    .featuredcards_overlap_image img {
        max-height:280px;
    }


    .action-carousel-header-box{
        padding-left: 18px;
        padding-right: 18px;
        flex-direction: column!important;
    }
    
    .action-carousel-row .fl-col-group .fl-col-group {
        padding-left: 0px;
    }    


    /* Featured cards with BG Image and flat color overlap */
    /*******************************************************/
        .featuredcards_bgoverlap .fl-row-content-wrap {
            background-size: 210vh;
        }
        .featuredcards_bgoverlap.col3 .fl-builder-bottom-edge-layer.fl-builder-shape-rect >svg {
            height:70%
        }

        .featuredcards_bgoverlap.col2 .fl-builder-bottom-edge-layer.fl-builder-shape-rect >svg {
            height:50%
        }

}