@media (max-width: 1500px) {
}
@media (max-width: 1400px) {
	.header .marco {
		max-width: 100%;
	}
	.nivo-caption .box {
		font-size: 0.7em;
		padding-left: 10% !important;
		padding-right: 10% !important;
	}
	.nivo-controlNav .box {
		padding-left: 10% !important;
	}
	.nivo-caption .box p {
		line-height: normal !important;
	}
	.nivo-caption .box a {
		font-size: 1.3em !important;
	}

	.proyectos .container {
		padding-left: 0px;
		padding-right: 0px;
	}

	.servicios {
		font-size: 0.87em;
	}
	.servicios .box .data .texto {
		padding: 15px 7%;
		line-height: normal !important;
	}
	
	.nosotros .contenido .texto .box {
		font-size: 0.875em;
		padding-left: 10%;
		padding-right: 10%;
		text-align: justify;
	}
	.datos .box .data {
		padding-left: 10%;
		padding-right: 10%;
		font-size: 0.875em;
	}
	.datos .box .data h4 {
		margin: 0 0 10px 0;
		padding: 0 0 10px 0;
	}
}
@media (max-width: 1200px) {
	.header .fondo {
		height: 70px !important;
	}
	.header .menu-web a {
		font-size: 0.875em;
		line-height: 50px !important;
		padding: 0px 15px;
	}	
	.header .logo img {
		height: 40px !important;
	}
	
	.servicios {
		font-size: 1em;
	}
	.servicios .box .data .texto {
		padding: 15px 10%;
		line-height: normal !important;
	}

	.datos .box .data h4 {
		font-size: 1.2em;
	}

	.proyectos .box .data {
		width: 100%;
		height: 72%;
	}
	.proyectos .box .data .texto {
		font-size: 0.85em;
		line-height: normal !important;
	}
	.proyectos .box .data h4 {
		padding: 0 0 8px 0;
		margin: 0 0 8px 0;
	}
	.proyectos .box .data .texto div {
		padding-left: 7%;
		padding-right: 7%;
	}
	
	.noticias {
		padding-left: 0px;
		padding-right: 0px;
	}
	.noticias .box .data {
		width: 85%;
		font-size: 0.875em !important;
		line-height: normal !important;
	}

	.nosotros .contenido .texto {
		width: 55%;
	}
	.nosotros .contenido .texto .box {
		padding-left: 8%;
		padding-right: 8%;
		line-height: 1.3em;
	}

	.mivi {
		padding-top: 40px;
		padding-left: 0px;
		padding-right: 0px;
	}
	.mivi .grande {
		display: none;
	}
	.mivi .chico {
		display: block;
	}

	.detalle .barra {
		position: relative;
		padding: 15px 0 0 0;
		font-size: 0.9em;
	}
}

@media (max-width: 1023px) {
	.header .menu-web {
		display: none;
	}
	.header .fondo .container {
		height: 60px !important;
		overflow: hidden !important;
		background-image: none !important;
	}
	.header .fondo .marco {
		padding-right: calc(var(--bs-gutter-x) * .5) !important;
		padding-left: calc(var(--bs-gutter-x) * .5) !important;
		margin-right: auto !important;
		margin-left: auto !important;
		width: 100% !important;
		min-width: 100% !important;
	}
	.header .fondo img {
		position: absolute;
		bottom: 15px;
		left: calc(var(--bs-gutter-x) * .5) !important;
		height: 30px;
	}
	.header .menu-movil {
	  right: calc(var(--bs-gutter-x) * .5) !important;
	  display: inline-block !important;
	  font-size: 25px;
	}
	.nosotros .box p {
		font-size: 0.75em;
		line-height: 1.2em;
	}
}

@media (max-width: 992px) {
	.theme-default {
		margin-bottom: 0px !important;
	}
	.nivo-caption .cont 	{ 
		width:70%;
		font-size: 0.9em;
	}
	.nivo-caption .tit {
		font-size:1.5em;
		line-height: 1.1em;
		padding:20px 10px 10px 0; 
		margin-bottom: 10px; 
	}

	.servicios {
		font-size: 0.87em;
	}
	.servicios .box .data {
		height: 70%;
	}
	.servicios .box .data .texto {
		padding: 15px 6%;
		line-height: normal !important;
	}

	.noticias .box .data {
        width: 100%;
		height: 85%;
        font-size: 0.8em !important;
        line-height: normal !important;
    }

	.albumes .box .data {
		height: 35%;
		font-size: 0.875em;
	}
	
	.nosotros .contenido {
		background-image: url('../images/nosotros.png');
		background-position: center top;
		background-attachment: fixed;
		background-position: center;
		background-repeat: no-repeat;
		background-size: cover;

	}
	.nosotros .contenido img {
		display: none;
	}
	.nosotros .contenido .texto {
		background-color: rgba(25, 0, 0, 0.7);
		position: relative !important;
		width: 100%;
		display: block !important;
	}
	.nosotros .contenido .texto .box {
		padding-left: 10%;
		padding-right: 10%;
		padding-top: 25px;
		padding-bottom: 25px;
		line-height: 1.3em;
	}

	.mivi .box .data {
		font-size: 0.7em;
		line-height: 1.3em;
	}

	.datos .box .data span {
		display: none;
	}
	.datos .box .data a {
		margin-top: 0px;
	}
	.datos .box .data h4 {
        font-size: 1em;
    }
	
	footer {
		height: 170px;
	}
	footer .logo img {
		height: auto;
		width: 100%;
	}
	footer .redes {
		text-align: center;
	}
	footer .redes .botones a {
		width: 28px;
		height: 28px;
		margin: auto 3px;
	}
	footer .redes .botones a img {
		height: 28px;
	}

	.detalle .portada {
		padding-left: 0px;
		padding-right: 0px;
	}
	.detalle .portada h2 {
		padding: 0px 0 15px;
		margin: 0 0 15px 0;
		font-size: 1.5em !important;
	}
}

@media (max-width: 768px) {
	.web {
		visibility: hidden;
		display: none !important;
	}
	.movil {
		display: block !important;
		visibility: visible;
	}

	.servicios,
	.proyectos,
	.noticias,
	.clientes,
	.albumes,
	.valores,
	.datos,
	.certificaciones,
	.comunicacion,
	.detalle,
	.fotos {
		padding-top: 20px;
	}

	.titulo {
		font-size: 0.8em;
		padding-left: 4%;
		padding-right: 4%;
		line-height: normal;
	}
	.titulo h2 {
		padding: 20px 0 10px;
	}

	.noticias .box .data {
        width: 100%;
		height: 85%;
        font-size: 1em !important;
        line-height: normal !important;
    }

	.mivi {
		padding-left: 0px;
		padding-right: 0px;
	}
	.mivi .box {
		margin-bottom: 20px;
	}	
	.mivi .box .data {
		font-size: 1em;
		line-height: 1.4em;
	}
	.mivi .grande {
		display: block;
	}
	.mivi .chico {
		display: none;
	}

	.owl-carousel .owl-item img {
		width: 70%;
		margin-left: auto !important;
		margin-right: auto !important;
	}

	.valores {
		padding-top: 30px;
	}
	.valores .box {
		padding-left: 10%;
		padding-right: 10%;
	}
	.valores .box span {
		line-height: normal;
	}

	.datos .box {
		margin: 0px 30px 30px 30px;
	}
	.datos .box .data {
        padding-left: 10%;
        padding-right: 10%;
		font-size: 1em !important;
    }
	.datos .box .data span {
		display: block;
	}
		
	.cookie {
		padding-top: 10px;
		padding-bottom: 10px;
		line-height: normal !important;
	}
	.cookie .texto {
		padding-bottom: 10px;
	}
	.cookie .detalle {
		font-size: 10px !important;
		line-height: normal;
		padding-bottom: 10px;
	}
	.cookie .botones {
		text-align: center;
	}
	.cookie .botones a {
		font-size: 8px !important;
		max-width: 200px;
		margin: auto !important;
		padding: 8px 10px !important;
	}
	footer {
		height: 140px;
		margin-top: 30px !important;
	}
	footer .logo {
		text-align: center;
	}
	footer .logo img {
		height: auto;
		padding-top: 25px;
		padding-bottom: 15px;
		max-width: 90px;
	}
	footer .redes span {
		display: none !important;
	}

	.nivo-dirNav  {
		display: none !important;
	}
	.nivo-caption .cont 	{ 
		width:70%;
		font-size: 0.5em;
	}
	.theme-default .nivo-caption .container {
		margin: 0px 7% !important;
	}	

	/*Forms*/
	.formulario {
		padding-top: 30px;
	}
	.formulario .box, .not-form .box, .contactos .box {
		padding-left: 0%;
		padding-right: 0%;
	}
	.alerta3,
	.alerta2 {
		font-size: 0.6875em;
		padding: 5px 10px;
		margin-bottom: 15px;
		line-height: 1.2em;
	}
	label {
		font-size: 0.75em;
	}
	.form-label {
		margin-bottom: 0.25rem;
	}
	.form-control {
		padding: 0.275rem 0.5rem;
		font-size: 0.75rem;
		font-weight: 400;
	}
	.formulario .mb-4 {
		margin-bottom: 0.75rem!important;
	}
	.formulario .mb-5 {
		margin-bottom: 1.75rem!important;
	}
	.formulario .box .nota, 
	.not-form .box .nota {
		font-size: 0.70em;
		line-height: 1.105em;
	}
	.formulario .zona-texto {
	  padding-left: 5px; 
	  padding-right: 5px;
	  font-size: 0.70em;
	  line-height: 1.2em;
	}
	.formulario .sub-seccion {
		font-size: 0.8em !important;
		padding-top: 10px;
		padding-bottom: 10px;
	}
	
	/*General*/
	.boton {
		font-size: 0.7em;
		line-height: 1.1em;
		padding: 7px 0px;
		min-width: 70px;
	}
	.contactos {
		padding-top: 30px;
		padding-bottom: 30px;
		text-align: center;
	}
	.contactos .caja img.img-central {
		padding-top: 10px;
		padding-bottom: 10px;
		height: 70px !important;
	}
	.contactos .caja h4 {
		font-size: 0.9em;
	}
	.contactos .caja {
		font-size: 0.8em;
	}
	.contactos a.redes {
		width: 30px !important;
		height: 30px !important;
	}
	.contactos a img {
		position: absolute;
		width: 30px;
		height: 30px;
	}

	.detalle .barra .data {
		font-size: 0.85em;
	}
	.detalle .barra .data-1 span {
		padding: 10px 10px 0px 10px;
	}
	.detalle .barra .data-2 span {
		padding: 0px 10px 10px 10px;
	}
}

@media (max-width: 730px) {
	.nosotros {
		margin-bottom: 0px !important;
		padding-top: 30px !important;
		font-size: 1em !important;
	}
	.mivi {
		padding-top: 30px;
	}
	.plomo {
		background-color: #D9D9D9;
		padding: 30px 30px;
	}
}

@media (max-width: 700px) {
	.theme-default .nivo-caption .container {
		margin-left: 2px !important;
		margin-right: 0px !important;
		padding-left: 0px !important;
		padding-right: 0px !important;
		width: 100% !important;
	}
	.nivo-caption .cont {
		border-left: 5px solid #E52524;
		padding-left: 3px !important;
		width: 100% !important;
		font-size: 1em;
	}
	.theme-default .nivo-controlNav {
        bottom: 2% !important;
    }
	.nivo-controlNav .cont {
		width: 100%;
	}
	.theme-default .nivo-controlNav a {
		width: 18px;
	}
	.nivoSlider {
		height: 98vh !important;
		overflow: hidden;
	}
	
	.colab .box {
        max-width: 94%;
        margin-left: 3%;
        margin-right: 3%;
    }
}
@media ((max-width: 700px) and (orientation: portrait)) {
	.nivo-caption .box p {
        display: block !important;
		font-size: 1.4em !important;
    }
}

@media (max-width: 630px) {
	.comunicacion .box {
        width: 100%;
        float: none;
        position: relative;
        overflow: hidden;
    }
	
	.owl-controls {
		display: none !important;
	}
	.nivo-caption p {
		font-size:1.1em !important; 
	}
	.home-proveedores img {
        max-width: 200px !important;
        padding-left: 50px !important;
    }
    
    .colab .box h3 {
        font-size: 13px;
        font-weight: bolder !important;
        padding: 25px 5% 10px 5% !important;
    }
    .colab .box .fila {
        font-size: 11px;
        padding-bottom: 3px;
        padding-top: 3px;
    }
    .colab .box .fila .titu {
        padding-left:7%;
        padding-right:0px;
    }
    .colab .box .fila .check p {
        width: 14px;
        height: 14px;
    }
    .colab .box .fila .check p i.fa-check {
        font-size: 12px;
        top: 1px;
        left: 0px;
    }
    .colab .box .fila .check p i.fa-times {
        font-size: 12px;
        top: 0px;
        left: 1px;
    }
    .colab .box .foto {
        padding-top: 15px;
        padding-bottom: 10px;
    }
    .colab .box .foto img {
        width: 110px;
    }
    .colab .box h1 {
        font-size: 18px;
        padding: 5px 0 5px 0;
    }
    .colab .box h2 {
        font-size: 16px;
    }
}

@media (max-width: 570px) {
	.espacio_sup_mov {
		padding-top: 80px !important;
	}
	body {
		font-size: 12px;
		line-height: 22px;
	}

	.subtit h2 {
		padding-top: 0px !important;
	}
	
	.producto .imagen {
		margin-left: 0px;
		margin-right: 0px;
		padding: 10px !important;
	}
	.producto-boton .fondo a {
		font-size: 1em !important;
	}
	.tab input:checked + .tab__label::after {
		transform: rotate(270deg);
		margin-right: 10px;
	}
	
	.valores .box {
		padding-left: 30px;
		padding-right: 30px;
	}
	.valores .box span {
		font-size: 1em !important;
		line-height: normal !important;
	}

	.interna {
		padding-top: 80px !important;
	}

	.nosotros {
		font-size: 1em !important;
		line-height: 1.5em !important;
	}
	.nosotros .texto {
		width: 95%;
	}
	.nosotros .texto .box {
		padding: 20px 30px;
	}
	.banner-interna {
		display: none;
	}
	.form-control {
		padding: 0.275rem 0.5rem;
		font-size: 0.85rem !important;
		font-weight: 400;
	}
	.box-titulo .sub-titulo {
		font-size: 1em;
		padding-bottom: 10px;
		padding-left: 5%;
		padding-right: 5%;
		line-height: normal;
	}

	.servicios .box .texto {
		padding: 20px 15px;
		font-size: 1em;
	}
	.plomo {
		background-color: #D9D9D9;
		padding: 20px;
	}
	.noticia .detalle {
		padding-left: 0px;
		padding-right: 0px;
	}
	.noticia .not-titulo .titulo {
		padding: 15px;
	}
	.noticia .not-titulo .titulo h1 {
		font-size: 1.2em !important;
		padding-bottom: 15px;
	}

	.servicios .container {
		padding: 0px !important;
	}
	.noticias .container {
		padding-left: 0px;
		padding-right: 0px;
	}
	.fotos .container {
		padding-left: 0px;
		padding-right: 0px;
	}
	.fotos .box {
		width: 100% !important;
	}

    .datos .box {
		margin-left: 0px;
		margin-right: 0px;
	}
    .datos .box .data {
        padding-left: 10%;
        padding-right: 10%;
        font-size: 1.1em !important;
    }
    .datos .box .data h4 {
		font-size: 1.3em !important;
		padding-bottom: 10px;
	}

	.contactos {
		padding-top: 30px;
		padding-bottom: 50px;
	}
	.contactos .caja .texto {
		font-size: 1.3em;
	}
	.contactos .caja img.img-central {
		padding-top: 10px;
		padding-bottom: 10px;
		height: 80px !important;
	}
	.contactos h4 {
		font-size: 1.5em;
		margin-bottom: 0px;
	}
	.contactos .texto {
		font-size: 14px;
		height: auto !important;
		max-height: 60px !important;
		padding-bottom: 20px;
	}
	.contactos .redes {
		width: 40px;
		height: 40px;
	}
	label {
		font-size:1.1em;
	}
	.boton {
		font-size: 1em;
		border-radius: 5px !important;
	}
	.alerta3, .alerta2 {
		font-size: 1em;
	}
	.productos .box .marco a, .productos-home .box .marco a {
		font-size: 1.3em;
		padding: 10px 10px;
		margin: 0px 25px;
	}
	.producto .botones a {
		border-radius: 5px;
		padding: 10px 35px;
	}

	.detalle .portada h2 {
		padding: 15px 0 15px;
		margin: 0 0 0 0;
		font-size: 1.2em !important;
		border-bottom-width: 3px;
	}

	.detalle .botones a {
		margin: 0 8px 15px 8px;
		width: 150px;
		height: 35px;
	}
	.detalle .botones a span {
		line-height: 32px;
	}
	.detalle .barra .data {
		font-size: 1.1em !important;
	}
	.formulario {
        padding-top: 0px;
		padding-bottom: 0px;
		margin-bottom: 0px !important;
    }

	.cookie .texto a {
		font-size: 1.12em;
	}

	.nivo-caption .box h4 {
		font-size: 2.5em;
	}

	.lb-data .lb-details {
		padding: 0px 5px 5px 5px !important;
	}
	.lb-data .lb-caption {
		font-size: 8px;
		font-weight: normal;
		line-height: normal;
	}
}

@media (max-width: 510px) {
	.owl-carousel {
		margin: 0px;
		padding: 0px;
	}
	.mivi .box .data {
		height: 95%;
		font-size: 0.875em;
		line-height: 1.4em;
	}
	.clientes .owl-nav .owl-prev {
		left: -25px;
	}
}

@media (max-width: 440px) {
	.mivi .grande {
		display: none;
	}
	.mivi .chico {
		display: block;
	}
	.mivi .data ul {
		padding-left: 10px !important;
	}

	.proyectos .box .data {
		height: 85%;
	}

	.servicios .box {
		margin-bottom: 20px !important;
		margin-left: 0px;
		margin-right: 0px;
		padding-left: 0px;
		padding-right: 0px;
	}

	.comunicacion .box a div p {
		padding-left: 10%;
		padding-right: 10%;
		justify-content: center;
	}
	.comunicacion .box a div p span {
		border-bottom: none !important;
		font-size: 0.8em;
		padding-bottom: 0px;
	}
	
	.contactos .caja h4 {
		font-size: 1.5em;
		padding-bottom: 10px;
	}
}

@media (max-width: 400px) {
	.nosotros {
		margin-bottom: 50px !important;
		padding-top: 20px !important;
		font-size: 1em !important;
	}
	.nosotros .texto {
		width: 94%;
	}
	.nosotros .texto .box {
		padding: 25px 20px;
	}
	.nosotros .texto .box h2 {
		font-size: 1.8em;
		padding-bottom: 10px;
	}
	.nosotros .texto .box h2 span {
		font-size: 1em;
	}
	.nosotros {
		font-size: 1em !important;
		margin-bottom: 0px !important;
		line-height: 1.3em !important;
	}
	.home-proveedores img {
		max-width: 220px !important;
		padding-left: 100px !important;
    }
    
    .colab .box {
        max-width: 98%;
        margin-left: 1%;
        margin-right: 1%;
    }
    .colab .box h3 {
        font-size: 13px;
        padding: 20px 2% 10px 2% !important;
    }
    .colab .box .fila {
        font-size: 11px;
    }
    .colab .box .fila .titu {
        padding-left:3%;
        padding-right:0px;
    }
}

@media (orientation: landscape) and (max-height: 400px) {
	.fotos .col {
		width: 50% !important;
	}
	.comunicacion .box {
        width: 50%; 
		float: left !important;
    }
	.comunicacion .box a div p {
		font-size: 1.2em;
		padding-left: 10%;
		padding-right: 10%;
	}
	.lb-outerContainer .lb-close {
		width: 22px !important;
		height: 23px !important;
		background-size: 100% !important;
	}
}

@media only screen and (min-device-width : 300px) and (max-device-width : 800px) and (orientation : landscape) {
	.nosotros .texto .box h2 {
		font-size: 1.6em;
		padding-bottom: 10px;
	}
	.nosotros .texto .box h2 span {
		font-size: 1em;
	}
	.whatasapp {
		position: fixed;
		right: 20px;
		bottom: 20px;
		z-index: 2000;
	}
	.menu-mov .marco a {
		font-size: 1em;
		padding: 7px 20px;
	}
	.menu-mov .marco a {
		padding: 8px 20px !important;
	}
	.nivo-dirNav {
		display: none !important;
	}
	.theme-default .nivo-controlNav {
		bottom: 2.5% !important;
	}
	.theme-default .nivo-controlNav a {
		margin: 0 10px 0 2px !important;
	}
	.theme-default .nivoSlider img {
		width: 100vw !important;
		height: 100vh !important;
	}
	.nivo-caption .box h4 {
		font-size: 2.3em;
	}
	.nosotros {
		height: 320px;
	}
	.producto .datos {
		padding-left: 15px;
		padding-right: 15px;
	}
	.producto .marca {
		padding: 5px 0 !important;
	}
	.producto h3 {
		padding: 10px 15px !important;
	}
	.producto .texto {
		padding-left: 15px;
		padding-right: 15px;
	}
	.producto .botones {
		padding-top: 10px !important;
	}
}

@media only screen and (min-device-width : 200px) and (max-device-width : 500px) and (orientation : portrait) {
	.productos-home .col-6 {
		width:100% !important;
	}
	.productos .listado .col-6 {
		width:100% !important;
	}
	.producto .marca {
		padding-top: 0px !important;
		padding-bottom: 0px !important;
		padding-left: 10px !important;
	}
	.producto h3 {
		padding: 20px 10px !important;
	}
	.producto .texto {
		padding-left: 10px;
		padding-right: 10px;
	}
}
















@media (max-width: 1300px) {
	.header .fondo img {
	  left: 0px;
	}
	.nosotros .box h3 {
		font-size: 2.1em;
		padding-bottom: 15px;
		margin-bottom: 15px;
	}
	.nosotros .box .caja {
		width: 70%;
	}
}
@media (max-width: 1100px) {
	.nosotros .box h3 {
		font-size: 1.25em;
		padding-bottom: 10px;
		margin-bottom: 10px;
	}
	.nosotros .box p {
		font-size: 0.875em;
		line-height: 1.3em;
	}
}

/* lg */ 
@media (min-width: 1200px) {
 /* Make Navigation Toggle on Desktop Hover */
}
/* md */
@media (min-width: 1300px) and (max-width: 1580px) {
	.tecnologia .contenido 			{	margin-top:200px;}
	.insumo .contenido 				{	margin-top:120px;}
}
@media (min-width: 1300px) and (max-width: 1400px) {
	.filosofia .contenido 			{	margin-top:140px;}
}
/* md */
@media (min-width: 1200px) and (max-width: 1299px) {
	.tecnologia .contenido 			{	margin-top:150px;}
	.insumo .contenido 				{	margin-top:140px;}
	.filosofia .contenido 			{	margin-top:120px;}
}
/* md */
@media (min-width: 992px) and (max-width: 1199px) {

}

/* sm */
@media (min-width: 815px) and (max-width: 991px) {
}
/* xs */
@media (max-width: 814px) {
}
/* XS Portrait */
@media (max-width: 480px) {
	.nosotros .box h3 {
		font-size: 1em;
		padding-bottom: 5px;
		margin-bottom: 5px;
	}
	.nosotros .box p {
		font-size: 0.625em;
	}
	/*Imágenes*/
	.home-galeria a .marco .titulo span {
		display: block;
		padding: 5px 5px 10px 5px;
		font-size: 0.5em;
		line-height: 1.25em;
	}
	.home-galeria a .marco {
		border: #E1E1E1 2px solid;
	}
}

@media (max-width: 370px) {
	.licitacion-lista .caja .contenido .botones .boton {
		font-size: 0.50em;
		min-width: 65px;
		min-height: 32px;
		padding: 5px 0;
		display: flex;
		justify-content: center;
		flex-direction: column;
	}
	.licitacion-lista .caja .estado {
		font-size: 0.5em;
	}
}

@media (orientation: landscape) {
	.banner-web {
		display: block !important;
	}
	.banner-movil {
		display: none !important;
	}
}
  
@media (orientation: portrait) and (max-width: 700px) {
	.banner-web {
		display: none !important;
	}
	.banner-movil {
		display: block !important;
	}
}
@media (orientation: portrait) and (min-width: 701px) {
	.banner-web {
		display: block !important;
	}
	.banner-movil {
		display: none !important;
	}
}
/* XS Portrait */