.menu_ham {
	display: none
}

@media (max-width:1800px) {
	.presentacion::before{
		left: 50px;
	}

	.presentacion::after{
		right: 50px;
	}

	.nosotros .wrap .texto{
		padding-left: 67px;
	}
}

@media (max-width:1679px) {
	.banners .banner .texto .titulo{
		font-size: 6em;
	}

	.banners .banner .texto{
		bottom: 100px;
	}

	.banners .banner{
		min-height: 650px;
		max-height: 650px;
	}

	.cabecera .menu li{
		margin-right: 50px;
	}

	.presentacion::before{
		background-size: 150px;
		left: 20px;
	}

	.presentacion::after{
		right: 20px;
		background-size: 150px;
	}

	.nosotros .wrap{
		align-items: flex-start;
		gap: 60px;
		padding: 60px 0;
	}

	.nosotros .wrap .texto{
		padding-left: 57px;
		width: calc(50% - 60px);
	}

	.servicios.testimonios .servs.tests .item{
		padding: 30px;
	}

	.solicita .fondo{
		padding: 120px 0;
	}

	.pie .superior .submenu{
		gap: 60px;
	}

	.pie .inferior{
		padding: 30px 0;
	}

	.empresa .contenedor, .empresa.presupuesto.contacto .contenedor{
		gap: 60px;
	}

	.empresa .contenedor .texto{
		width: calc(50% - 17.5px);
	}

	.empresa.presupuesto.contacto .contenedor .texto{
		width: calc(50% - 15px);
	}
}

@media (max-width:1439px) {
	.contenedor{
		width: 95%;
	}

	.banners .banner .texto .titulo{
		font-size: 5.5em;
	}

	.banners .banner {
        min-height: 600px;
        max-height: 600px;
    }

    .banners .banner .texto{
    	bottom: 80px;
    }

    .cabecera .logo{
    	max-width: 180px;
    }

    .presentacion::before, .presentacion::after{
    	top: 20px;
        transform: none;
        background-size: 120px;
    }

    .presentacion::before {
        left: 20px;
    }

    .presentacion::after{
    	right: 20px;
    }

    .presentacion .texto .descripcion{
    	font-size: 1.85em;
    }

    .servicios .servs{
    	gap: 20px;
    }

    .nosotros .wrap{
    	gap: 40px;
    }

    .nosotros .wrap .texto {
        padding-left: 34px;
        width: calc(50% - 40px);
    }

    .servicios.testimonios{
    	padding: 80px 0 150px;
    }

    .servicios.testimonios .servs.tests .item {
        padding: 20px 20px 25px;
    }

    .servicios.testimonios .servs.tests .item .txt .tit{
    	padding: 18px 0 18px 80px;
    }

    .pie .superior {
    	padding: 70px 0 40px;
	}

	.empresa .contenedor, .empresa.presupuesto.contacto .contenedor {
        gap: 40px;
    }

    .empresa .contenedor .texto {
        width: calc(50% + 2.5px);
    }

    .filosofia .texto .descripcion ul li{
    	padding: 25px 30px 20px 110px;
    }

    .filosofia .texto .descripcion ul li::before{
    	top: 30px;
    	left: 30px;
    }

    .empresa.servicio .contenedor{
    	align-items: flex-start;
    }

    .empresa.presupuesto.contacto .contenedor .texto {
        width: calc(50% + 5px);
    }
}

@media (max-width:1365px) {
	.cabecera .menu li:first-child{
		display: none;
	}
}

@media (max-width:1279px) {
	:root {
		--radiado_25: 15px;
	}

	.contenedorin{
		width: 95%;
	}

	.cabecera .menu li.preguntas{
		display: none;
	}

	.cabecera .menu li.cont{
		margin-right: 0;
	}

	.banners .banner {
        min-height: 500px;
        max-height: 500px;
    }

    .banners .banner .texto {
        bottom: 50px;
    }

    .banners .banner .texto .titulo {
        font-size: 5em;
    }

    .contenido.presentacion{
    	padding: 60px 0;
    }

    .presentacion::before, .presentacion::after{
    	background-size: 90px;
    }

    .servicios .texto{
    	width: auto;
    }

    .servicios .servs{
    	grid-template-columns: repeat(2, 1fr);
    }

    .servicios .servs .item:nth-child(2){
    	margin-top: 0;
    }

    .servicios:not(.listado) .servs .item:last-child{
    	grid-column: span 2;
    	justify-self: center;
    	width: calc(50% - (20px * 1 / 2));
    }

    .servicios.testimonios .servs.tests .item:nth-child(3){
    	display: none;
    }

    .servicios.testimonios {
        padding: 80px 0 120px;
    }

    .servicios.testimonios .servs.tests .item:last-child{
    	width: auto;
    }

    .servicios.testimonios .servs.tests.owl-loaded .owl-item:nth-child(2n+2){
    	margin-top: 0;
    }

    .solicita .fondo {
        padding: 100px 0;
    }

    .pie .superior .submenu {
        gap: 40px;
    }

    .pie .superior .submenu ul.menu{
    	display: none;
    }

    .pie .superior {
        padding: 60px 0 35px;
    }

    .pie .superior .logo{
    	max-width: 180px;
    }

    .kit_digital .limit{
    	padding: 10px;
    }

    .pie .inferior {
        padding: 20px 0;
    }

    .nosotros .wrap {
        gap: 30px;
    }

    .nosotros .wrap .texto {
        padding-left: 25px;
        width: calc(50% - 30px);
    }

    .empresa .contenedor{
    	align-items: flex-start;
    }

    .empresa .contenedor, .empresa.presupuesto.contacto .contenedor {
        gap: 30px;
    }

    .empresa .contenedor .texto {
        width: calc(50% + 12.5px);
    }

    .filosofia .texto .descripcion ul{
    	gap: 20px;
    }

    .filosofia .texto .descripcion ul li {
        padding: 20px 20px 20px 90px;
        width: calc(50% - (20px * 1 / 2));
    }

    .filosofia .texto .descripcion ul li::before{
    	width: 50px;
    	height: 50px;
    	background-size: 22px;
    	top: 25px;
        left: 20px;
    }

    .servicios.listado .servs .item:nth-child(3n+2){
    	margin-top: 0;
    }

    .presupuesto .formulario .campos .campo.mitad{
    	display: block;
    	width: auto;
    	margin-right: 0;
    }

    .presupuesto .formulario .campos .campo.mitad:nth-child(2){
    	margin-top: 15px;
    }

    .presupuesto .formulario .checks{
    	display: block;
    	margin-top: 0;
    }

    .presupuesto .formulario .checks .boton{
    	margin-top: 20px;
    }

    .empresa.presupuesto.contacto .contenedor .texto {
        width: calc(50% + 15px);
    }

    .empresa.presupuesto.contacto .iconos .icono{
    	display: block;
    	margin-top: 20px;
    }

    .empresa.presupuesto.contacto .iconos .icono:first-child{
    	margin-right: 0;
    }

    .empresa.presupuesto.contacto .iconos .icono:last-child{
    	margin-top: 20px;
    }

    .empresa.presupuesto.contacto .iconos .icono a{
    	font-size: 1.85em;
    }

    .empresa.presupuesto.contacto .iconos .icono a i{
    	display: block;
    	width: 0;
    	height: 0;
    	overflow: hidden;
    	text-indent: -9999px;
    }

    .empresa.presupuesto.contacto .iconos .icono a.direccion::before{
    	top: 0;
    	transform: none;
    }

    div.format_popup.legal {
        max-width: 960px;
    }

    .descripcion h2, .descripcion h3, .descripcion h4{
    	font-size: 1.5em;
    	line-height: 1.2;
    }

}

@media (max-width:1023px) {

	.contenedormin{
		width: 95%;
	}

	.cabecera .menu li:not(.cont){
		display: none;
	}

	.banners .banner {
        min-height: 450px;
        max-height: 450px;
    }

	.banners .banner .texto {
        bottom: 40px;
    }

	.banners .banner .texto .titulo {
        font-size: 4.5em;
    }

    .banners .banner::before{
    	background: rgba(0,0,0,.4);
    }

    .cabecera .menu{
    	margin-right: 80px;
    }

    .texto .enlace{
    	margin-top: 20px;
    }

    .presentacion::before, .presentacion::after{
    	display: none;
    }

    .presentacion .texto{
    	text-align: left;
    }

    .presentacion .texto .descripcion{
    	font-size: 1.667em;
    }

    .servicios .servs .item .txt{
    	left: 20px;
    	right: 20px;
    }

    .contenido {
    	padding: 60px 0;
	}

	.nosotros .wrap{
		display: block;
		padding: 60px 0 0;
	}

	.nosotros .wrap .texto{
		width: auto;
		padding: 0 20px;
	}

	.nosotros .wrap .imagen{
		width: auto;
		margin-top: 40px;
	}

	.servicios.testimonios {
        padding: 60px 0 100px;
    }

	.servicios.testimonios .servs.tests .item .txt .tit::before{
		width: 45px;
		height: 45px;
		background-size: 16px;
	}

	.servicios.testimonios .servs.tests .item .txt .tit {
        padding: 60px 0 0 0;
        font-weight: 600;
    }

    .servicios.testimonios .servs.tests .owl-nav{
    	transform: translateY(70px);
    }

    .solicita .fondo {
        padding: 60px 0;
    }

    .pie .superior{
    	display: block;
    }

    .pie .superior .footer_bloque .descripcion{
    	max-width: none;
    }

    .pie .superior .submenu{
    	display: block;
    }

    .pie .superior .submenu ul li:not(.leyenda){
    	display: inline-block;
    	vertical-align: top;
    	position: relative;
    	margin-right: 20px;
    }

    .pie .superior .submenu ul li:last-child{
    	margin-right: 0;
    }

    .pie .superior .submenu ul li:first-child{
    	margin-bottom: 5px;
    }

    .pie .superior .submenu ul{
    	margin-top: 20px;
    }

    .pie .superior .submenu ul.legales{
    	margin-top: 0;
    }

    .pie .superior {
        padding: 50px 0 30px;
    }

    .menu_ham {
        display: block;
        color: var(--blanco);
        border: none;
        float: right;
        position: fixed;
        right: 2.5%;
        top: 18px;
        height: 50px;
        width: 50px;
        z-index: 99;
        background: var(--azul);
        -webkit-transition: all .5s ease-in-out 0s;
        transition: all .5s ease-in-out 0s;
        opacity: 1;
        visibility: visible;
        line-height: 1.888888888888889rem;
        font-size: 1.6rem;
        outline: none;
        border: 1px solid var(--azul);
        border-radius: var(--radiado_5);
        overflow: hidden;
        text-indent: -9999px;
    }

    .menu_ham .the_bars {
        height: 2px;
        width: 1.666666666666667rem;
        left: 50%;
        -webkit-transform: translate(-50%);
        transform: translate(-50%);
        background: var(--blanco);
        position: absolute;
        margin-top: 0;
        top: 50%;
        -webkit-transition: none;
        transition: none;
    }

    .menu_ham .the_bars::before, .menu_ham .the_bars::after {
        content: '';
        position: absolute;
        height: 2px;
        left: 0;
        width: 1.666666666666667rem;
        background: var(--blanco);
        transition-duration: 0.3s, 0.3s;
        -webkit-transition-duration: 0.3s, 0.3s;
        -moz-transition-duration: 0.3s,0.3s;
        -ms-transition-duration: 0.3s,0.3s;
        -o-transition-duration: 0.3s,0.3s;
        transition-delay: 0.3s, 0s;
        -webkit-transition-delay: 0.3s, 0s;
        -ms-transition-delay: 0.3s,0s;
        -moz-transition-delay: 0.3s,0s;
        -o-transition-delay: 0.3s,0s;
    }

    .menu_ham .the_bars::before {
        top: -9px;
        transition-property: top, -webkit-transform;
        transition-property: top, transform;
        transition-property: top, transform, -webkit-transform;
        -webkit-transition-property: top, -webkit-transform;
        -moz-transition-property: top,-moz-transform;
        -ms-transition-property: top,-ms-transform;
    }

    .menu_ham .the_bars::after {
        bottom: -9px;
        transition-property: bottom, -webkit-transform;
        transition-property: bottom, transform;
        transition-property: bottom, transform, -webkit-transform;
        -webkit-transition-property: bottom, -webkit-transform;
        -moz-transition-property: bottom,-moz-transform;
        -ms-transition-property: bottom,-ms-transform;
        -o-transition-property: bottom,-o-transform;
    }

    body.mm-ocd-opened .menu_ham .the_bars, body.fixed.mm-ocd-opened .menu_ham .the_bars {
        background-color: transparent;
    }

    body.mm-ocd-opened .menu_ham .the_bars::before {
        max-width: unset;
        top: 0;
        transform: rotate(45deg);
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        -o-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        transition-delay: 0s, .3s;
        -webkit-transition-delay: 0s, .3s;
        -ms-transition-delay: 0s,.3s;
        -moz-transition-delay: 0s,.3s;
        -o-transition-delay: 0s,.3s;
        background-color: var(--blanco);
    }

    body.mm-ocd-opened .menu_ham .the_bars::after {
        bottom: 0;
        transform: rotate(-45deg);
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        -o-transform: rotate(-45deg);
        -moz-transform: rotate(-45deg);
        transition-delay: 0s, 0.3s;
        -webkit-transition-delay: 0s, 0.3s;
        -ms-transition-delay: 0s,0.3s;
        -moz-transition-delay: 0s,0.3s;
        -o-transition-delay: 0s,0.3s;
        background-color: var(--blanco);
    }

    body.scroll_window .menu_ham {
        top: 0;
        right: 0;
        border-radius: 0;
        border: 1px solid var(--blanco);
    }

    .mm-spn.mm-spn--navbar::after {
    	font-family: var(--fuente_secundaria);
        font-size: 3em;
        opacity: 1;
        background: var(--azul);
        color: var(--blanco);
    }

    .mm-spn .falso_link, .mm-spn a, #mmmenu ul li.sel ul li a {
        font-size: 1.6em;
        color: var(--negro);
    }

    .falso_link.sel, #mmmenu ul li.sel a, #mmmenu ul li.sel ul li.selecc a {
        color: var(--azul);
        font-weight: 600;
    }

    .mm-spn.mm-spn--navbar::before {
        opacity: 1;
        z-index: 2;
        border-color: var(--blanco);
    }

    .empresa .contenedor, .empresa.presupuesto.contacto .contenedor {
        gap: 20px;
    }

    .empresa .contenedor .texto {
        width: calc(50% + 22.5px);
    }

    .filosofia .texto .descripcion ul{
    	display: block;
    }

    .filosofia .texto .descripcion ul li{
    	width: auto;
    	margin-top: 20px;
    }

    .filosofia .texto .descripcion ul li:first-child{
    	margin-top: 0;
    }

    .empresa.presupuesto .contenedor{
    	display: block;
    }

    .empresa.presupuesto .contenedor .texto, .empresa.presupuesto .contenedor .imagenes,
    .empresa.presupuesto.contacto .contenedor .texto, .empresa.presupuesto.contacto .contenedor .mapa{
    	width: auto;
    }

    .empresa.presupuesto .contenedor .imagenes, .empresa.presupuesto.contacto .contenedor .mapa{
    	margin-top: 30px;
    }

    .presupuesto .formulario .campos .campo.mitad{
    	display: inline-block;
    	width: calc(50% - (15px * 1 / 2));
    	margin-right: 15px;
    }

    .presupuesto .formulario .campos .campo.mitad:nth-child(2n){
    	margin-right: 0;
    }

    .presupuesto .formulario .campos .campo.mitad:nth-child(2){
    	margin-top: 0;
    }

    .presupuesto .formulario .checks{
    	display: flex;
    	margin-top: 20px;
    }

    .presupuesto .formulario .checks .boton{
    	margin-top: 0;
    }

    .empresa.presupuesto.contacto .iconos .icono a i{
    	display: inline;
    	width: initial;
    	height: initial;
    }

    .empresa.presupuesto.contacto .contenedor .mapa iframe{
    	height: 300px;
    }

    .empresa.presupuesto.contacto .iconos .icono a.direccion::before{
    	top: 50%;
    	transform: translateY(-50%);
    }

    div.format_popup.legal {
        max-width: 700px;
        padding: 30px;
    }

    #cookie-bar p{
    	padding: 30px;
    }

    .servicios.testimonios .servs.tests .item{
    	justify-self: auto;
    }
}

@media (max-width:540px) {
	::-webkit-scrollbar {
		height: 0;
		width: 0
	}

	* {
		scrollbar-width: none
	}

	.contenedor, .contenedorin, .contenedormin{
		width: 92%;
	}

	.menu_ham{
    	top: 14px;
    	right: 3.5%;
    }

	.cabecera .contenedor{
		display: block;
	}

	.cabecera .menu{
		display: none;
	}

	.cabecera .logo {
        max-width: 160px;
    }

	.banners .banner {
        min-height: 400px;
        max-height: 400px;
    }

	.banners .banner .texto .titulo, .banners .banner .texto .descripcion{
		max-width: none;
	}

	.banners .banner .texto .titulo {
        font-size: 3em;
    }

    .banners .banner .texto {
        bottom: 20px;
    }

    .boton{
    	display: block;
    }

    .contenido.presentacion {
        padding: 40px 0;
    }

    .contenido .texto .titulo{
    	font-size: 2.75em;
    }

    .servicios .texto{
    	text-align: left;
    }

    .servicios .servs{
    	display: block;
    }

    .servicios .servs .item, .servicios .servs .item:nth-child(2),
    .servicios.listado .servs .item:nth-child(3n+2){
    	margin-top: 20px;
    }

    .servicios:not(.listado) .servs .item:last-child{
    	width: auto;
    }

    .servicios .servs .item:first-child{
    	margin-top: 0;
    }

    .servicios.testimonios .servs.tests .item .txt .descripcion{
    	margin-top: 10px;
    }

    .boton{
    	height: 55px;
    	line-height: 55px;
    }

    .servicios.testimonios .servs.tests{
    	margin-top: 30px;
    }

    .servicios.testimonios .servs.tests .item:nth-child(2) {
        display: none;
    }

    .servicios.testimonios .servs.tests .owl-nav, .solicita .fondo .texto, .contactar .texto{
    	text-align: left;
    }

    .servicios.testimonios .servs.tests .item{
    	padding: 20px;
    }

    .solicita .fondo {
        padding: 20px 0;
    }

    .pie .superior {
        padding: 35px 0 15px;
    	text-align: center;
    }

    .pie .superior .logo{
    	max-width: 160px;
    	margin: 0 auto;
    }

    .pie .superior .submenu ul {
        margin-top: 10px;
    }

    .pie .superior .submenu ul li:first-child{
    	display: none;
    }

    .pie .superior .submenu ul li:not(.leyenda){
    	margin: 0 10px;
    }

    .pie .superior .submenu ul.contacto li:not(.leyenda){
    	display: block;
    	margin: 0;
    }

    .pie .inferior{
    	padding: 20px 0 0;
    	display: block;
    	text-align: center;
    }

    .pie .inferior .copyright{
    	line-height: 23px;
    }

    .pie .inferior .copyright i, .pie .inferior .sgm{
    	display: block;
    }

    .pie .inferior .sgm{
    	display: block;
    }

    .kit_digital .limit{
    	padding: 2px;
    }

    .mm-spn.mm-spn--navbar::after{
    	font-size: 2em;
    }

    .empresa .contenedor, .empresa.presupuesto.contacto .contenedor{
    	display: block;
    }

    .filosofia .texto .descripcion ul li{
    	padding: 80px 20px 20px;
    }

    .filosofia .texto .descripcion ul li::before{
    	top: 20px;
    }

    .contenido.filosofia{
    	padding: 60px 0;
    }

    .formulario .campos .campo.mitad, .presupuesto .formulario .campos .campo.mitad{
    	display: block;
    	width: auto;
    	margin-right: 0;
    }

    .presupuesto .formulario .campos .campo.mitad:nth-child(2),
    .formulario .campos .campo.mitad:nth-child(2){
    	margin-top: 15px;
    }

    .campo input{
    	padding: 15px 20px 0;
    }

    .campo label{
    	left: 20px;
    	right: 20px;
    }

    .campo textarea{
    	height: 150px;
    	min-height: 150px;
    	max-height: 300px;
    	padding: 20px;
    }

    .presupuesto .formulario .checks, .formulario .checks{
    	display: block;
    	margin-top: 0;
    }

    .presupuesto .formulario .checks .boton, .formulario .checks .boton {
        margin-top: 20px;
    }

    .empresa.presupuesto.contacto .iconos .icono a i{
    	display: block;
    	width: 0;
    	height: 0;
    }

    .empresa.presupuesto.contacto .iconos .icono a.direccion::before {
        top: 0;
        transform: none;
    }

    .empresa.presupuesto.contacto .iconos .icono a{
    	font-size: 1.6em;
    	padding-left: 60px;
    }

    .empresa.presupuesto.contacto .iconos .icono a::before{
    	width: 45px;
    	height: 45px;
    }

    .empresa.presupuesto.contacto .contenedor .mapa iframe{
    	height: 225px;
    }

    div.format_popup {
        top: 0;
        position: fixed;
        left: 0;
        right: 0;
        padding: 20px;
        border-radius: 0;
    }

    div.format_popup .tit{
    	font-size: 3em;
    	line-height: 30px;
    }

    div.format_popup.legal {
        position: absolute;
        padding: 20px;
    }

    div.format_popup.legal .fancybox-close-small {
        position: fixed;
        background-color: var(--blanco);
        color: var(--negro);
    }

    #cookie-bar p {
        padding: 15px;
        min-height: 130px;
        bottom: 0;
        left: 0;
        right: 0;
        top: unset;
        transform: none;
    }

    #cookie-bar p span {
        font-size: 1.45em;
        margin-bottom: 10px;
    }

    html.loaded #cookie-bar a {
        font-size: 1.45em;
        text-align: left;
        padding: 10px;
    }

    div.format_popup h1, div.format_popup h2, div.format_popup h3, div.format_popup h4, div.format_popup h5{
    	font-size: 2.25em;
    }

    .empresa .contenedor .texto, .empresa .contenedor .imagenes{
    	width: auto;
    }

    .empresa .contenedor .imagenes{
    	margin-top: 30px;
    }
}

@media (max-width:359px) {
	body {
		font-size: 56%
	}
}

@media (pointer:coarse) {
	*::-webkit-scrollbar {
		display: none
	}

	* {
		scrollbar-width: none
	}
}