/*------SERVICE BOXES------*/
#services-container .elementor-container, #plan-container .elementor-container {
    flex-wrap:wrap;
    max-width:900px;
    width:100%;
    margin:auto;
}

.service-wrapper.elementor-column, .plan-wrapper.elementor-column {
    width:33.333%;
}

.service .elementor-widget-container, .plan .elementor-widget-container {
    overflow:visible;
}

.service .elementor-cta, .service .elementor-cta .elementor-cta__bg-overlay, .service .elementor-cta__title, .service .elementor-cta__description, .elementor-cta__button-wrapper {
    -webkit-transition:all .3s ease-in-out;
    -moz-transition:all .3s ease-in-out;
    -o-transition:all .3s ease-in-out;
}

.service .elementor-cta, .plan .elementor-cta {
    width:100%;
    max-width:250px;
    margin:auto;
}

.service .elementor-cta .elementor-cta__bg-overlay:before {
    content:'';
    display:block;
    width:100%;
    height:100%;
    background:linear-gradient(180deg, rgba(3,14,19,0) 65%, rgba(3,14,19,0.5) 100%);
}

.service:not(.academy) .elementor-cta__bg {
    background-repeat:no-repeat;
    background-position:75% 0;
}

.service.academy .elementor-cta__bg, .plan.step3 .elementor-cta__bg {
    background-position:45% 0;
}

.service .elementor-cta__description, .service .elementor-cta__title, .service .elementor-cta__button-wrapper {
    position:absolute;
}

.service .elementor-cta__title {
    bottom:70px;
    padding:12px 0 10px;
    margin-bottom:0;
}

.plan .elementor-cta__title {
    margin-bottom:0;
    margin-top:18rem;
    padding-top:1rem;
}

.plan .elementor-cta__description {
    padding-bottom:1rem;
}

.service .elementor-cta__title, .plan .elementor-cta__title, .plan .elementor-cta__description {
    background:rgba(0,0,0,0.7);
}

.service .elementor-cta__description {
    padding:0 25px;
}

.service .elementor-cta__button-wrapper {
    bottom:20px;
}

.service .elementor-cta .elementor-cta__description {
    top:70px;
}

.service .elementor-cta:hover .elementor-cta__description, .service .elementor-cta:active .elementor-cta__description, .service .elementor-cta:focus .elementor-cta__description {
    top:100px;
}

.service .elementor-cta:hover .elementor-cta__button-wrapper, .service .elementor-cta:active .elementor-cta__button-wrapper, .service .elementor-cta:focus .elementor-cta__button-wrapper {
    bottom:85px;
}

.service .elementor-cta__description, .service .elementor-cta:hover .elementor-cta__title, .service .elementor-cta:active .elementor-cta__title, .service .elementor-cta:focus .elementor-cta__title {
    opacity:0;
}

.service .elementor-cta__title, .service .elementor-cta:hover .elementor-cta__description, .service .elementor-cta:active .elementor-cta__description, .service .elementor-cta:focus .elementor-cta__description {
    opacity:1;
}

/*-----------------------------------------
TABLETS 895px (iPad) and all widths below this
-----------------------------------------*/
@media only screen and (max-width: 895px) {
        
    /*------SERVICE BOXES------*/
    
    .service-wrapper.elementor-column, .plan-wrapper.elementor-column {
        width:50%;
    }
    
    #services-container .elementor-container, #plan-container .elementor-container {
        max-width:600px;
    }
    
}

/*-----------------------------------------
MOBILES 641px (iPad) and all widths below this
-----------------------------------------*/

@media only screen and (max-width: 641px) {
    
    /*------SERVICE BOXES------*/
    
    .service-wrapper.elementor-column, .plan-wrapper.elementor-column {
        width:100%;
    }
    
}