/* --- ESTILOS GENERALES --- */
.card-container .card-servicios {
    background: #FFBABA;
    transition: all 0.4s;
    border: none;
    border-radius: 0;
}

.first-content{
    max-height: 100%;
}

.card-servicios .card-title {
    text-align: center;
    color: black;
    font-family: var(--font-family-sans-serif);
    font-size: 1.8em;
}

#inner{
    max-width: 100%;
}

/* Estilos para dispositivos extra grandes (desktops grandes, >=1200px) */
@media (min-width: 1200px) {
    .card-container {
        width: 100%;
        max-width: 100%;
        height: 390px;
        overflow: hidden;
        margin-bottom: 0;
    }
    #inner {
        display: flex;
        width: 100%;
        max-width: 100%;
        height: 100%;
    }

    #inner .card {
        width: 100%;
        flex-basis: calc(100% / 4);
        height: 100%;
        max-height: 100%;
    }

    .card-servicios .card-title {
        padding-top: 2.25em;
        width: 188px;
    }

    .card-servicios:hover {
        cursor: pointer;
        background: #e12850;
    }

    .img-wrapper-servicios {
        width: 100%;
        height: 18.4375em;
        display: flex;
        justify-content: center;
        align-content: center;
        align-items: center;
    }

    .first-content {
        transition: all 0.4s;
        opacity: 1;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        align-content: center;
        height: 100%;
        padding-top: 3em;
    }
    
    .first-content .card-title{
        padding-top: 3em;
    }
    
    .card-servicios:hover .first-content {
        opacity: 0;
        height: 0px;
        padding: 0;
    }

    .second-content {
        height: 0%;
        width: 100%;
        opacity: 0;
        transition: all 0.4s;
        padding: 0.75em 1em;
        display: flex;
        flex-direction: column;
        justify-content: space-evenly;
        align-items: center;
    }

    .second-content .card-text {
        padding: 2em 2.875em 0 2.875em;
        height: 100%;
    }

    .card-servicios:hover .second-content {
        opacity: 1;
        height: 100%;
    }
}

/* Estilos telefonos Estandar (s)*/
@media (min-width: 321px) and (max-width: 767px){
    .card-container {
        height: 350px;
    }

    .card-container .card-servicios {
        width: 100%;
        height: 100%;
        max-height: 100%;
        min-height: 350px;
    }

    .carousel-item.active {
        display: flex;
        flex-direction: row;
        align-items: center;
        max-height: 100%;
        justify-content: space-between;
    }

    .img-wrapper-servicios {
        width: 100%;
        height: 80%;
        display: flex;
        justify-content: center;
        align-content: center;
        align-items: center;
        margin: 0.5em;
    }

    .img-wrapper-servicios img,
    .img-wrapper-servicios i {
        width: 90%;
        height: auto;
        font-size: 4rem !important;
    }

    .first-content {
        width: 35%;
        transition: all 0.4s;
        opacity: 1;
        display: flex;
        flex-wrap: wrap;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        align-content: center;
        margin-left: 0.8em;
        padding: 0.3em 0;
    }

    .first-content h2 {
        margin-top: 0.3em;
        margin-bottom: 0.3em;
    }

    .second-content {
        height: 100%;
        width: 50%;
        transition: all 0.4s;
        padding: 0;
        display: flex;
        flex-direction: column;
        justify-content: space-evenly;
        align-items: center;
    }

    .second-content h2 {
        visibility: hidden;
        height: 0.5em;
        padding: 0;
    }

    .second-content .card-text {
        padding: 0 1.5em 0 2em;
        height: 75%;
        text-align: center;
        margin: 0;
        line-height: 1.2;
    }
}

/* Estilos telefonos muy pequeños (xs)*/
@media (max-width:320px){
    .card-container {
        height: 350px;
    }

    .card-container .card-servicios {
        width: 100%;
        height: 100%;
        max-height: 100%;
        min-height: 350px;
    }

    .carousel-item.active {
        display: flex;
        flex-direction: row;
        align-items: center;
        max-height: 100%;
        justify-content: space-between;
    }

    .img-wrapper-servicios {
        width: 100%;
        height: 80%;
        display: flex;
        justify-content: center;
        align-content: center;
        align-items: center;
        margin: 0.5em;
    }

    .img-wrapper-servicios img,
    .img-wrapper-servicios i {
        width: 90%;
        height: auto;
        font-size: 3.5rem !important;
    }

    .first-content {
        width: 35%;
        transition: all 0.4s;
        opacity: 1;
        display: flex;
        flex-wrap: wrap;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        align-content: center;
        padding: 0.2em 0;
        text-align: center;
        margin-left: 0.8em;
        height: 90%;
    }
   
    .first-content h2 {
        margin-top: 0.3em;
        margin-bottom: 0.3em;
    }

    .second-content {
        height: 100%;
        width: 50%;
        transition: all 0.4s;
        padding: 0;
        display: flex;
        flex-direction: column;
        justify-content: space-evenly;
        align-items: center;
    }

    .second-content h2 {
        visibility: hidden;
        height: 0.5em;
        padding: 0;
    }

    .second-content .card-text {
        padding: 0 1.5em 0 2em;
        height: 75%;
        text-align: center;
        font-size: 14px;
        margin: 0;
        line-height: 1.2;
    }  
}

/* Estilos pantallas medianas (md) */
@media (min-width: 768px) and (max-width: 992px){
    .card-container {
        height: 350px;
    }

    .card-container .card-servicios {
        width: 100%;
        height: 100%;
        max-height: 100%;
        min-height: 350px;
    }

    #servicios .carousel-item.active {
        display: flex;
        flex-direction: row;
        align-items: center;
        max-height: 100%;
        justify-content: space-between;
    }

    .img-wrapper-servicios {
        width: 100%;
        height: 80%;
        display: flex;
        justify-content: center;
        align-content: center;
        align-items: center;
        margin: 1em;
    }

    .img-wrapper-servicios img,
    .img-wrapper-servicios i {
        width: 75%;
        height: auto;
        font-size: 5rem !important;
    }
   
    .first-content {
        width: 35%;
        transition: all 0.4s;
        opacity: 1;
        display: flex;
        flex-wrap: nowrap;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        max-height: 90%;
    }

    .first-content h2 {
        margin-top: 1em;
        margin-bottom: 1em;
    }

    .second-content {
        height: 100%;
        width: 50%;
        transition: all 0.4s;
        padding: 0;
        display: flex;
        flex-direction: column;
        justify-content: space-evenly;
        align-items: center;
    }

    .second-content h2 {
        visibility: hidden;
        height: 1em;
        padding: 0;
    }

    .second-content .card-text {
        padding: 0 4em 0 2em;
        margin: auto 0;
        text-align: center;
    }
}

/* Estilos pantallas grandes (lg)*/
@media (min-width: 993px) and (max-width: 1199px) {
    .card-container {
        height: 350px;
    }

    .card-container .card-servicios {
        width: 100%;
        height: 100%;
        max-height: 100%;
        min-height: 350px;
    }

    .carousel-item.active {
        display: flex;
        flex-direction: row;
        align-items: center;
        max-height: 100%;
        justify-content: space-between;
    }

    .img-wrapper-servicios {
        width: 100%;
        height: 80%;
        display: flex;
        justify-content: center;
        align-content: center;
        align-items: center;
        margin: 1em;
    }

    .img-wrapper-servicios img,
    .img-wrapper-servicios i {
        width: 50%;
        height: auto;
        padding-bottom: 1em;
        font-size: 5rem !important;
    }

    .first-content {
        max-width: 35%;
        width: 35%;
        transition: all 0.4s;
        opacity: 1;
        display: flex;
        flex-wrap: wrap;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        align-content: center;
        margin-left: 4.5em;
        padding: 0;
    }

    .first-content h2 {
        margin-top: 3em;
        margin-bottom: 1em;
    }

    .second-content {
        height: 100%;
        width: 50%;
        transition: all 0.4s;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        margin-right: 4em;
        padding: 0;
    }

    .second-content h2 {
        display:none;
        height: 1em;
        padding: 2em;
    }

    .second-content .card-text {
        padding: 0 2em;
        margin: auto 0;
        text-align: center;
    }
}