@media screen and (max-width: 1200px) {
    .carousel-caption {
        left: 30%;
        width: 100%;
    }
    #carousel-thumbs {
        bottom: 5%;
    }
    .menu_container {
        width: 15%;
        position: relative;
    }
    .footer img {
        margin-right: 0px;
        width: 80%;
    }
    .direccion,
    .telefonos {
        margin-right: 5px;
    }
    .g-recaptcha {
        transform: scale(0.79);
    }
    .logo-top-right {
        right: 12%;
    }
    .centrar-logo {
        height: auto;
    }
    .padding-70 {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }
}

@media screen and (max-width: 991px) {
    body {
        padding-top: 0;
    }
    .banner-principal:before {
        height: calc(100vh - 137px);
    }
    /* MENU MOBILE */
    .menu-hamburguer-mobile {
        display: block;
    }
    .overlay {
        display: block;
        height: 0%;
        width: 100%;
        position: fixed;
        z-index: 2000;
        top: 0;
        left: 0;
        background-color: #C4C6C0;
        overflow-y: hidden;
        transition: 0.5s;
    }
    .overlay-content {
        position: relative;
        top: 25%;
        width: 100%;
        text-align: center;
        transition: 1s;
    }
    .overlay a {
        padding: 8px;
        text-decoration: none;
        font-size: 36px;
        color: #FFFFFF;
        display: block;
    }
    .overlay a:hover,
    .overlay a:focus {
        color: #f1f1f1;
    }
    .overlay .closebtn {
        position: absolute;
        bottom: 0px;
        left: 0px;
        font-size: 60px;
        padding-left: 15px;
    }
    /* FIN DE MENU MOBILE */
    .g-recaptcha {
        transform: scale(1);
    }
    .menu_container {
        width: 10%;
        height: 50vh;
    }
    #carouselIndex .carousel-inner {
        overflow: hidden;
    }
    #carouselIndex .carousel-item .slide {
        height: 50vh;
    }
    .btn_container a,
    .btn_container .border-circle,
    .nav-trigger-dark,
    .logo-top-right {
        display: none;
    }
    .icono-vaca-mobile {
        display: block;
    }
    .linea-gris {
        width: 100%;
        margin-top: 5%;
    }
    #carousel-thumbs {
        bottom: 0;
        position: relative;
    }
    #carousel-thumbs img {
        width: auto;
        height: 130px;
    }
    .thumb {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        margin: 0px auto;
    }
    .visible-mobile {
        display: block;
        width: 50%;
        margin-bottom: 20px;
    }
    .carousel-caption {
        left: 0%;
        height: auto;
        padding: 15px;
        width: 100%;
    }
    .frase {
        height: auto;
        padding-top: 50px;
        padding-bottom: 50px;
        display: block;
    }
    .frase h2 {
        position: relative;
        top: 0;
    }
    .frase img {
        position: relative;
        top: 0;
        height: 250px;
        margin-top: 20px;
    }
    .servicios {
        margin-top: 0;
        padding-bottom: 20px;
    }
    .hidden-mobile {
        display: none;
    }
    .titulo {
        height: auto;
    }
    .servicios-item {
        margin-top: 0px;
        margin-bottom: 0px;
        height: auto;
    }
    .servicios h3 {
        width: 100%;
        margin: 25px auto;
    }
    .servicios-item h4 {
        height: auto;
    }
    .servicios-item p {
        height: auto;
    }
    .servicios-item img {
        width: auto;
    }
    .servicios-item:hover img {
        transform: scale(1.0);
    }
    .leer-mas {
        opacity: 1;
    }
    .hidden-mobile {
        display: none;
    }
    .hidden-desktop {
        display: block;
    }
    .banner-texto {
        padding-right: 40px;
        padding-left: 40px;
        text-align: left;
        top: -130px;
        transform: translate(-50%, -130px);
        min-height: 350px;
    }
    .descripcion-servicio h3 {
        padding-left: 50px;
    }
    .formulario {
        padding-left: 50px;
        margin: 0;
    }
    .btn-enviar {
        margin-left: 0;
        margin-top: 30px;
    }
    .texto-detalle-servicio {
        height: auto;
    }
    .texto-detalle-servicio .btn-atras,
    .descripcion-servicio .btn-atras {
        position: relative;
        bottom: 0;
        margin-top: 20px;
        margin-left: auto;
    }
    .descripcion-servicio p {
        padding-left: 15px;
        padding-right: 15px;
    }
    .portada,
    .pl-0,
    .px-0 {
        padding-left: 15px !important;
    }
    .banner-interna-servicio img,
    #carousel-servicio .carousel-item img {
        height: 250px;
    }
    .banner-interna {
        height: 350px;
    }
    .thumb {
        padding-left: 0px !important;
        padding-right: 0px !important;
    }
    #carousel-servicio-thumbs .thumb {
        margin: 0px 10px;
    }
    .logo-interna {
        width: 70% !important;
    }
    .datos-contacto a {
        margin-left: 15px;
        display: block;
    }
    .titulo-contacto {
        padding-top: 50px !important;
        padding-bottom: 0px !important;
    }
    .border-top {
        border-top: 1px solid transparent !important;
        border-bottom: 1px solid transparent !important;
    }
    .navbar-collapse {
        margin-top: 20px;
    }
    .navbar-light .navbar-nav .nav-link {
        font-size: 16px;
        line-height: 16px;
    }
    .navbar-brand {
        float: left;
    }
    #mapa {
        width: 100%;
        margin-bottom: 40px;
    }
    .fondo-parallax {
        height: 350px;
    }
    .banner-principal h1 {
        font-size: 35px;
    }
}

@media screen and (max-width: 767px) {
    .carousel-container {
        height: auto;
    }
    .carousel-caption {
        top: 0%;
    }
    .icono-vaca-mobile {
        width: 85%;
    }
    .carousel-caption h1 {
        font-size: 25px;
    }
    .carousel-caption p,
    .banner-texto {
        font-size: 20px;
    }
    #carousel-thumbs .mx-0 {
        margin-left: -15px !important;
        margin-right: -15px !important;
    }
    #carousel-thumbs img {
        height: 70px;
    }
    .frase {
        margin-top: 30px;
    }
    h1 {
        font-size: 35px;
    }
    h2 {
        font-size: 30px;
        margin-bottom: 20px;
    }
    .footer {
        height: auto;
        padding-top: 20px;
        padding-bottom: 20px;
        display: block;
    }
    .footer img {
        width: 200px;
        margin: 0px auto;
    }
    .direccion,
    .telefonos {
        margin-right: 0;
    }
    footer p,
    footer p>a {
        height: auto;
        margin-top: 10px;
    }
    .fondo-azul {
        height: 70px;
    }
    .border-left-dashed {
        border-right: 2px dashed transparent;
    }
    .mision-vision p {
        font-size: 16px;
    }
    .mision-vision .my-5 {
        margin-bottom: 1rem !important;
        margin-top: 1rem !important;
    }
    .mision-vision .mb-3 {
        margin-top: 0;
    }
    .mision-vision h3 {
        text-align: left;
    }
    .cuadro {
        margin-top: 20px;
        padding: 30px 15px;
    }
    .descripcion-servicio h3 {
        padding-left: 15px;
        padding-top: 20px;
        padding-bottom: 20px;
    }
    .formulario {
        padding: 15px;
    }
    .banner-texto-blanco {
        color: #FFFFFF;
    }
    .navbar,
    .navbar-nav {
        height: auto;
    }
    .navbar-brand img {
        width: 180px;
    }
    .margin-80 {
        margin: 0;
    }
}