@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');
@import url('https://fonts.googleapis.com/icon?family=Material+Icons&display=swap');
@import url('https://fonts.googleapis.com/icon?family=Material+Icons+Outlined&display=swap');
/* CSS Document */


html, body {
  padding: 0;
  margin: 0;
  height: 100%;
  width: 100%;
		font-size:10px;
		text-decoration:none;
		font-family: 'Roboto', sans-serif;
		font-weight: 300;
}

.animation {
		-webkit-transition: all .25s ease-out;
  	-moz-transition: all .25s ease-out;
  	-o-transition: all .25s ease-out;
  	transition: all .25s ease-out;
}
.main_align {
display: table;
width: 100%;
height: 100%;
}
.align {
	display: table-cell; 
	vertical-align: middle;
}

.content {
background-color: #FFF;
position: relative;
}
.content_internas_wrapper {
width: calc(100% - 150px); 
max-width: 1200px; 
margin: auto;
padding: 225px 75px 50px 75px;
}
.content_listado_wrapper {
width: calc(100% - 100px); 
margin: auto;
padding: 225px 50px 50px 50px;
}
.content_wrapper {
width: calc(100% - 100px); 
margin: auto;
padding: 50px;
}


				
/*HEADER*/
.search_bar {
width: calc(100% - 150px); 
position: fixed; 
display: table;
padding: 0 75px 0 75px;
top: -150px; 
left: 0;  
height: 150px; 
z-index: 50;
	background-color: #FFF;
			-webkit-transition: all .20s ease-out;
  	-moz-transition: all .20s ease-out;
  	-o-transition: all .20s ease-out;
  	transition: all .20s ease-out;
}
.search_bar_enter { 
top: 0;   
	box-shadow: 0 50px 250px 50px rgba(0,0,0,0.5);
-webkit-box-shadow: 0 50px 200px 50px rgba(0,0,0,0.5);
-moz-box-shadow: 0 50px 200px 50px rgba(0,0,0,0.5);
		-webkit-transition: all .20s ease-out;
  	-moz-transition: all .20s ease-out;
  	-o-transition: all .20s ease-out;
  	transition: all .20s ease-out;
}

header {
	width:  100vw;
	height: 150px;
	position: fixed;
	z-index: 10;
	top: 0;
	left: 0;
	background-color: #FFF;
	box-shadow: 0 5px 50px -10px rgba(0,0,0,0.5);
-webkit-box-shadow: 0 5px 50px -10px rgba(0,0,0,0.5);
-moz-box-shadow: 0 5px 50px -10px rgba(0,0,0,0.5);
}
.header_small {
	height: 100px;
}
.topbar {
padding: 0 75px 0 75px;
width: calc(100% - 150px);
height: 50px;
background-color: #333;
}
.topbar_left {
float: left; 
width: 70%; 
display: table; 
height: 100%;
}
.topbar_right {
float: right; 
width: 30%; 
height: 100%;
text-align: right;
display: table; 
}
.mainbar {
padding: 0 75px 0 75px;
width: calc(100% - 150px);
height: 100px;
}
.logo {
	float: left;
	width: 125px;
	height: 100%;
	display: table;
}
.alert_bar {
background-color: rgba(0,0,0,.5);
text-align: center;
position: absolute; 
top: 0; 
left: 0; 
padding: 10px 75px 10px 75px;
width: calc(100% - 150px);
z-index: 3;
}
.nav {
	width: calc(100% - 150px);
	float: right;
	text-align: right;
	height: 100%;
	display: table;
}

.menu, .submenu {
	font-size:1.4rem;
	color:#666;
	text-decoration:none;
	letter-spacing:2px;
	text-transform:uppercase;
	margin: 0 50px 0 0;
	vertical-align: middle;
	display: inline-block;
}
.submenu {
	letter-spacing:0;
	text-transform:none !important;
	font-size:1.2rem;
	color:#FFF;
	margin: 0 0 10px 0;
	display: block;
}
.dropmenu {
	font-size:1.4rem;
	text-decoration: none;
text-transform: capitalize;
margin-bottom: 2px;
height: 35px;
display: block;
font-weight: 400;
padding: 15px 15px 0 15px;
color: #53458c;
background-color: #FFF;
background-position: right 20px center;
background-repeat: no-repeat;
background-size: 12px auto;
		box-shadow: 0 5px 50px -10px rgba(0,0,0,0.5);
-webkit-box-shadow: 0 5px 50px -10px rgba(0,0,0,0.5);
-moz-box-shadow: 0 5px 50px -10px rgba(0,0,0,0.5);
}
.dropmenu:hover {
background-image: url(images/arrow_right_white.png);
background-color: #0d3d84;
color: #FFF;
}

.bt_menu {
position: relative; 
display: inline-block; 
vertical-align: middle;
}
.bt_submenu {
position: absolute;
display: none;
padding-top: 27px;
width: 350px;
text-align: left;
}
.bt_menu:hover .bt_submenu {
display: block;
}

footer {
width: 100vw;
position: relative;
}
.footer_left {
position: absolute;
width: calc(30% - 150px);
background-color: #0d3d84;
padding: 75px;
left: 0;
top:0;
bottom: 0;
}
.footer_right {
width: calc(70% - 150px);
padding: 75px;
float: right;
background-color: #929292;
display: table;
}
.footer_column {
float: left; 
width: calc(33.3333% - 20px); 
margin-right: 30px;
}
.footer_firma {
float: left; 
width: 30%;
}
.footer_action {
float: right; 
width:calc(70% - 75px); 
text-align: right; 
padding-right: 75px;
}

/*MAIN BANNER*/
.main_banner {
width: 100vw; 
height: 500px;
position: relative;
z-index: 1;
margin-top: 150px;
left: 0;
}

/*
.scroll {
width: 100px;
height: auto;
position: absolute;
bottom: 75px;
left: 50%;
z-index: 10;
margin-left: -50px;
}
*/

.main_banner .slide {
width: calc(100vw - 150px);
height: 500px;
top: 0;
left: 0;
right: 0;
bottom: 0;
position: absolute;
z-index: 1;
padding: 0 75px 0 75px;
text-align:center;
background-position: center center;
background-size: cover;
background-repeat: no-repeat;
}




/*SLIDES */
.slide_categorias {
width: calc(100% - 100px);
padding: 50px;
position: relative;
}
.slide_clients {
background-color: #f2f2f2;
padding-bottom: 50px;
padding-top: 50px;
width: 100vw;
}

.clients {
vertical-align: middle;
margin: 0 25px 0 25px;
mix-blend-mode: multiply;
filter: grayscale(100%);
}
.clients:hover {
filter: grayscale(0);
}


.icon_search, .icon_search_mobile, .icon_close, .icon_menu, .icon_phone, .icon_email, .icon_home, .icon_zoom, .icon_close_search {
position: initial;
display: inline-block;
vertical-align: middle;
font-size: 3rem;
color: #333;
text-decoration: none;
}
.icon_search:hover {
transform: scale(1.05);
}
.icon_search_mobile {
display: none;
    float: right;
    margin-top: 30px;
    font-size: 4rem;
				margin-right: 25px;
}
.icon_menu {
display: none;
right: 25px;
margin-top: 30px;
float: right;
font-size: 4rem;
}
.icon_close {
display: none;
position: absolute;
font-size: 5rem;
color: #FFF;
top: 25px;
right: 25px;
	}
.icon_phone, .icon_email {
color: #ccc;
font-size: 2rem;
margin-right: 10px;
}
.icon_home {
margin-right: 50px;
font-size: 2.4rem;
color: #ccc;
vertical-align: middle;
display: inline-block
}
.icon_home:hover {
color: #666;
transform: scale(1.05);
}
.icon_zoom {
position: absolute;
top: 25px;
right: 25px;
font-size: 4rem;
}
.icon_zoom:hover {
transform: scale(1.25);
}
.icon_close_search {
font-size: 6rem;
color: #333;
}


.detalle_img {
float: left; 
width:calc(50% - 25px); 
height:35vw; 
background-color:#FFF; 
position: relative; 
background-position: center center; 
background-repeat: no-repeat; 
}
.detalle_desc {
float: right; 
width: calc(50% - 25px);
}

/*


.bt_close {
height: 60px;
width: 60px;
border-radius: 30px;
background-position: center center;
background-repeat: no-repeat;
display: inline-block;
text-decoration: none;
color: transparent;
vertical-align: middle;
background-image: url(images/icon_close.png);
background-color: transparent;
background-size: 100% auto;
position: absolute;
top: 50px;
right: 50px;
}
.bt_close:hover {
transform: rotate(90deg);
}
*/







.thumb {
width: calc(25% - 50px);
background-color: #f2f2f2;
float: left; 
position: relative;
margin: 25px;
font-size: 1.6rem;
text-transform: uppercase;
font-weight: 700;
}
.thumb:hover {
background-color: #093c87; 
}
.thumb_img {
width: calc(100% + 50px);
margin-left: -25px;
margin-top: -25px;
position: relative;
}
.thumb_tittle {
text-align: center;
padding: 25px;
width: calc(100% - 50px);
height: 50px;
position: relative;
color: #333;
}
.thumb:hover .thumb_tittle {
opacity: 0;
}
.thumb:hover .thumb_img {
opacity: 0;
}
.thumb_roll {
opacity: 0;
position: absolute;
top: 0;
left: 0;
bottom: 0;
right: 0;
z-index: 2;
padding: 25px;
text-align: center;
}
.thumb:hover .thumb_roll {
opacity: 1;
}




.thumb_prod {
width: calc(25% - 70px);
background-color: #f2f2f2;
float: left; 
position: relative;
margin: 25px;
font-size: 1.6rem;
text-transform: none;
font-weight: 700;
padding: 10px;
}
.thumb_prod:hover {
background-color: #093c87;
}
.thumb_prod_img {
width: 100%;
padding-top: 100%;
position: relative;
background-position: center center;
background-repeat: no-repeat;
background-color:#FFF; 
}
.thumb_prod_tittle {
text-align: center;
padding: 25px;
width: calc(100% - 50px);
height: 75px;
position: relative;
color: #333;
}
.thumb_prod:hover .thumb_prod_tittle {
color: #FFF;
}
.bt_outline, .bt_outline_white, .bt_back, .bt_contact {
font-size:1.2rem;
vertical-align: middle;
display: inline-block;
width: 100%;
padding: 15px 0 0 0;
height: 35px;
text-decoration: none;
background-color: transparent;
color: #666;
border: solid #666 1px;
text-transform: uppercase;
}
.thumb_prod:hover .bt_outline {
background-color: #FFF;
}

.bt_outline_white {
color: #FFF;
border: solid #FFF 1px;
line-height: 2rem;
width: initial;
padding: 15px 15px 0 15px;
}

.bt_back {
width: 100px;
margin-right: 25px;
text-align: center;
}
.bt_back:hover {
background-color: #666;
color: #FFF;
}
.bt_contact {
font-size:2rem;
width: calc(100% - 145px);
background-color: #093c87;
color: #FFF;
border: solid #093c87 1px;
text-align: center;
text-transform: capitalize !important;
}
.bt_contact:hover {
transform: scale(1.05);
}


.thumb_marca {
width: calc(25% - 50px);
float: left; 
position: relative;
margin: 25px;
}
.thumb_marca_img {
width: 100%;
padding-top: 100%;
position: relative;
background-position: center center;
background-repeat: no-repeat;
background-blend-mode: multiply;
background-color: #f2f2f2;
}
.thumb_marca_tittle {
position: absolute;
color: transparent;
}


.nosotros_left {
width: calc(50% - 75px); 
float: left;
}
.nosotros_right {
width: calc(50% - 75px); 
float: right;
}

.valores {
width: 100%;
margin-bottom: 25px;
}
.valor_icon {
display: inline-block; 
vertical-align: middle; 
width: 75px;
margin-right: 20px;
text-align: center;
}
.valor_txt {
width: calc(100% - 100px); 
display: inline-table; 
vertical-align: middle; 
}


.contact_info {
float: left; 
width: 300px;
text-align: left;
}
.contact_form {
float: right; 
width: calc(100% - 400px);
text-align: left;
}



/* FONTS */


.t1 {
	font-size: 4rem;
	line-height: 3.5rem;
	font-weight: 100;
}
.t2 {
	font-size:2rem;
	line-height: 2.6rem;
}
.t3 {
	font-size:1.6rem;
	line-height: 2.4rem;
}
.t4 {
	font-size:1.2rem;
	line-height: 2rem;
	}
	.t5 {
	font-size:2.8rem;
	line-height: 2rem;
	}



.white {
	color:#FFF;
}
.black {
color: #333;
}



@keyframes coloring {
  0%   {background-color: #1eb8d2;}
  33%  {background-color: #e82e8a;;}
  66%  {background-color: #95c23a;}
		100%  {background-color: #1eb8d2;}
}

/* REDES */

.redes {
	color:transparent;
	background-color: #FFF;
	display:inline-block;
	cursor:pointer;
	border-radius: 15px;
	width: 30px;
	height: 30px;
	text-decoration:none;
	margin: 0 0 0 15px;
	vertical-align: middle;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 90% auto;
}

.redes:hover {
transform: scale(1.1);
}

.facebook{
background-image: url(images/icon_fb.png);
}
.linkedin {
background-image: url(images/icon_ld.png);
}

.whatsapp {
display: block;
position: fixed;
right: 50px;
bottom: 50px;
background-size: 100% auto;
	border-radius: 30px;
	width: 60px;
	height:60px;
	z-index: 10;
	color: transparent;
	text-decoration: none;
background-color:transparent;
background-image: url(images/icon_whatsapp.png);
}
.whatsapp:hover {
transform: scale(1.10);
}



/* FORM*/

.field_box, .area_box, .field_box_small {
width: calc(50% - 50px);
margin: 0 10px 10px 0;
padding: 20px;
background-color: #f2f2f2;
display: inline-block;
text-align: left;
}
.area_box {
width: calc(100% - 50px);
margin: 0 0 10px 0;
display: block;
}
.field_box_small {
width: calc(100% - 40px);
margin: 0 0 10px 0;
}
.field, .area, .field_search {
	border: none;
	color:#666;
	width:100%;
	height: 30px;
	text-decoration:none;
	font-size:1.6rem;
	background-color: transparent;
	border-bottom: solid 1px #999;
	display: block;
	outline:none;
	border-radius: 0;
	-webkit-appearance:none;
 -moz-appearance:none;
 appearance:none;
	resize:none;
}
.area {
height: 200px;
resize: none;
}
.field_search {
display: inline-block;
vertical-align: middle;
	width:calc(100% - 325px);
	height: 50px;
	border: none;
		font-size:3rem;
		font-weight: 200;
}
.send, .send_search {
	color:#FFF;
background-color: #093c87;
	text-decoration:none;
	width:calc(100% - 5px);
	border: none;
	text-align:center;
	display:block;
	cursor:pointer;
	height: 50px;
	font-size:1.4rem;
	letter-spacing: 3px;
	font-weight: 700;
	text-transform: uppercase;
	-webkit-appearance:none;
 -moz-appearance:none;
 appearance:none;
}
.send:hover {
transform: scale(1.025);
}

.send_search {
	width:200px;
	display:inline-block;
	vertical-align: middle;
	height: 50px;
	font-size:1.4rem;
	letter-spacing: 3px;
	font-weight: 700;
	margin-right: 50px;
}
.send_search:hover {
transform: scale(1.025);
}

.result_box {
width: 100%; 
min-height: 300px; 
text-align: center;
display: table;
}



	label.error  {
		color: red;
		font-style: italic; 
		display:inline-block;
	}
	  
	form  label.error  {
		display:none !important;
	}
	  
	form  input.error,
	form  textarea.error,
	form  select.error{
		background-color:#FFC6C6 !important;
	}


.panelBaner{
	position: relative;
}

 .bx-wrapper .bx-controls-direction a { 
	 top: inherit;
	 margin-top: 0px; 
	 bottom: 20px;
		display: none;
}

/* DIRECTION CONTROLS (NEXT / PREV) */

.bx-wrapper .bx-prev {
	left: 30px;
	background: url('images/arrow_left_white.png') no-repeat center center; 
}
.bx-wrapper .bx-next {
	right: 30px;
	background: url('images/arrow_right_white.png') no-repeat center center; 
}

.bx-wrapper .bx-controls-direction a {
	width: 50px !important;
	height: 50px !important;
	background-size: contain;
}

/* PAGER */
.bx-wrapper .bx-pager { 
	display: none;
}
.bx-wrapper .bx-pager.bx-default-pager a {
	background: rgba(255,255,255,.5);
	text-indent: -9999px;
	display: block;
	width: 16px;
	height: 16px;
	margin: 0 5px;
	outline: 0;
	-moz-border-radius: 8px;
	-webkit-border-radius: 8px;
	border-radius: 8px;
}

.bx-wrapper .bx-pager.bx-default-pager a:hover, .bx-wrapper .bx-pager.bx-default-pager a.active {
	background: #fff;
}

.panelBaner .bx-wrapper, .panelBaner .bx-viewport, .panelBaner .boxSlider, .panelBaner .slide{
	position:absolute !important;
	left:0px;
	top:0px;
	width:100% !important;
	height:100% !important;
}
.panelBaner .bx-wrapper{
	z-index:0;
}
@media screen and (max-width: 600px) {
.panelBaner .bx-controls .bx-controls-direction {
	display:none !important
}
}




@media screen and (max-width: 650px) {

.icon_close, .icon_menu {
display: inline-block;
}


.content_internas_wrapper {
width: calc(100% - 50px); 
padding: 225px 25px 50px 25px;
}
.content_listado_wrapper {
width: calc(100% - 50px); 
padding: 225px 25px 50px 25px;
}
.content_wrapper {
width: calc(100% - 50px); 
padding: 25px;
}

.nav {
	width: 100%;
	float: none;
	position: fixed;
	text-align: center;
	background-color: #0d3d84;
	min-height: 100vh;
	z-index: 100;
	top: 0;
	left: -100vw;
}

/*HEADER*/
.submenu {
	font-size:1.4rem;
	margin: 0 0 20px 0;;
}
.menu {
	font-size:2rem;
	margin: 25px 0 25px 0;
	display: block;
	color: #FFF !important;
}
.bt_menu {
display: block; 
}
.bt_submenu {
display: none !important;
}

.footer_left {
position: initial;
width: calc(100% - 100px);
padding: 50px;
}
.footer_right {
width: calc(100% - 50px);
padding: 25px;
float: none;
}
.footer_column {
float: none; 
width: 100%; 
margin-right: 0;
}
.footer_firma {
float: none; 
width: 100%;
}
.footer_action {
float: none; 
width:calc(100% - 110px); 
padding: 30px 100px 40px 0;
font-size: 1.9rem !important;
text-align: left
}

.topbar {
padding: 0 25px 0 25px;
width: calc(100% - 50px);
}
.topbar_left {
display: none;
}
.topbar_right {
float: none; 
width: 100%; 
text-align: center;
}
.mainbar {
padding: 0 25px 0 25px;
width: calc(100% - 50px);
}

/*SLIDES */

.field_box, .area_box {
width: calc(100% - 22px);
margin: 0 0 10px 0;
padding: 10px;
display: block;
}




 .hide {
	display: none;
	}

.t1 {
	font-size: 3.4rem;
	line-height: 3.2rem;
}
.t2 {
	font-size:2.4rem;
	line-height: 3rem;
}
.t3 {
	font-size:1.8rem;
}
.t4 {
	font-size:1.2rem;
	}

.thumb, .thumb_blog, .thumb_proyecto {
width: 100%;
margin-right: 0;
}
.slide_categorias {
width: calc(100% - 40px);
padding: 20px;
}


.icon_home {
margin-right: 0;
font-size: 3.4rem;
}


.contact_info, .contact_form {
float: none; 
width: 100%;
margin-bottom: 50px;
}
.thumb {
width: calc(50% - 10px);
margin: 5px;
font-size: 1.4rem;
}
.thumb_img {
width: calc(100% + 20px);
margin-left: -10px;
margin-top: -10px;
}
.thumb_tittle {
padding: 10px;
width: calc(100% - 20px);
height: 75px;
}

.thumb_prod {
width: calc(50% - 30px);
margin: 5px;
padding: 10px;
}

.thumb_marca {
width: calc(50% - 20px);
margin: 10px;
}
.detalle_img {
float: none; 
width:100%; 
height:90vw; 
margin-bottom: 50px;
}
.detalle_desc {
float: none; 
width: 100%;
}

.search_bar {
width: calc(100% - 50px); 
padding: 50px 25px 50px 25px;
top: -250px; 
height: 150px; 
}
.search_bar_enter { 
top: 0;   
}

.field_search {
display: block;
	width:100%;
	border-bottom: 1px solid #CCC;
	margin-bottom: 25px;
}
.send_search {
margin: auto;
	margin-right: 0;
}

.nosotros_left {
width: 100%; 
float: none;
margin-bottom: 50px;
}
.nosotros_right {
width: 100%; 
float: none;
}

.icon_close_search {
float: right;
}

.icon_search {
color: #FFF;
}
.icon_search_mobile {
display: inline-block;
}



/*MAIN BANNER*/
.main_banner {
height: 400px;
}

.main_banner .slide {
width: calc(100vw - 100px);
height: 400px;
padding: 0 50px 0 50px;
}



}