body{ padding:0px !important; background:#fff !important; font-family: "Poppins", sans-serif; font-weight: 300; font-style: normal; height:auto !important;}
*{ box-sizing:border-box;}
.field {margin: 0px !important; margin-block-end: 0px !important;}
.cecofi_header_wrapper {position: fixed; z-index:100; top: 0; left: 0; width: 100%; border-top:10px solid #fff;}
.cecofi_header_container {width: 96%; max-width: 1500px; margin: 0px auto; padding: 10px 0px 0px; position:relative; z-index:1;}
.cecofi_header_wrapper:after {content: ''; display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none; z-index: 0; background: rgb(4,58,139);background: -moz-linear-gradient(180deg, rgba(4,58,139,1) 18%, rgba(4,58,139,0) 100%);background: -webkit-linear-gradient(180deg, rgba(4,58,139,1) 18%, rgba(4,58,139,0) 100%);background: linear-gradient(180deg, rgba(4,58,139,1) 18%, rgba(4,58,139,0) 100%);filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#043a8b",endColorstr="#043a8b",GradientType=1);}
.cecofi_logo { width: calc(100% - 60px); max-width: 500px; display: inline-block;}
.cecofi_logo .logo_mobile{ display:none;}
.open_close_menu{ display:none; position:absolute; top:20px; right:0; width:50px; height:50px; cursor:pointer;}
.menu_line{ width:50px; height:4px; background:#fff; position:absolute; top:50%; margin-top:-2px; left:0; transition:.5s all ease; -moz-transition:.5s all ease; -webkit-transition:.5s all ease;}
.menu_line_1{ transform:translateY(-13px) rotate(0deg); -moz-transform:translateY(-13px) rotate(0deg); -webkit-transform:translateY(-13px) rotate(0deg);}
.menu_line_3{ transform:translateY(13px) rotate(0deg); -moz-transform:translateY(13px) rotate(0deg); -webkit-transform:translateY(13px) rotate(0deg);}


.menu_superior_cecofi {float: right; padding-top:20px;}
.menu_superior_cecofi ul li a span {padding: 0px 15px 5px !important; color: #fff; display: inline-block; text-transform: uppercase; font-weight: 300; letter-spacing: 1px;}
.primary-nav__menu-link:hover .primary-nav__menu-link-inner:after {border-color: #fff !important; border-width: 5px; border-radius: 2px;}
.primary-nav__menu-link--active-trail .primary-nav__menu-link-inner:after {transform: scaleX(1); -moz-transform: scaleX(1); -webkit-transform: scaleX(1); border-color: #fff !important; border-width: 5px !important; border-radius: 2px !important;}
.primary-nav__menu-link:focus:before{ display: none !important;}
.open_close_menu_activo .menu_line_1{ transform:translateY(0px) rotate(-45deg); -moz-transform:translateY(0px) rotate(-45deg); -webkit-transform:translateY(0px) rotate(-45degdeg);}
.open_close_menu_activo .menu_line_2{ opacity:0;}
.open_close_menu_activo .menu_line_3{ transform:translateY(0px) rotate(45deg); -moz-transform:translateY(0px) rotate(45deg); -webkit-transform:translateY(0px) rotate(45degdeg);}


.cecofi_menu_wrapper {min-height: 100vh; padding: 150px 0px; background: #043a8b; position:fixed; z-index:99; top:0; left:0; width:100%; display:none;}
.cecofi_menu_container{ width:90%; max-width:1200px; margin:0px auto;}
.cecofi_menu_container li {display: block !important; line-height: 1em; height: auto; border-bottom: 1px solid #fff; width: 100% !important; max-width:100% !important;}
.cecofi_menu_container a span{ font-size:50px; color: #fff !important; letter-spacing: 3px;}
.intro_cecofi_wrapper {position: relative; min-height: 100vh; padding-top: 20vh; color: #fff;}
.intro_cecofi_bkg {position: absolute; z-index:1; top: 0; left: 0; width: 100%; height: 100%; background: rgb(4,58,139); background: -moz-linear-gradient(90deg, rgba(4,58,139,1) 40%, rgba(4,58,139,0) 100%);background: -webkit-linear-gradient(90deg, rgba(4,58,139,1) 40%, rgba(4,58,139,0) 100%); background: linear-gradient(90deg, rgba(4,58,139,1) 40%, rgba(4,58,139,0) 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#043a8b",endColorstr="#043a8b",GradientType=1);}
.intro_cecofi_container {position: relative; z-index: 2; width: 90%; max-width: 1200px; margin: 0px auto;color: #fff;}
.titulo_intro h1 {font-size: 80px; line-height: 1em; color: #fff; width: 100%; max-width: 750px;}
.texto_intro h2 {font-size: 20px; font-weight: 300; line-height: 1.5; color: #fff; max-width: 610px; margin: 0px;}
.enlace_intro {display: inline-block; position: relative; overflow:hidden;}
.enlace_intro a{display: inline-block; font-size:20px; font-weight:900; font-family:'Montserrat'; color:#fff; position:relative; z-index:2; transition:1s all ease; -moz-transition:1s all ease; -webkit-transition:1s all ease; padding: 10px 20px 10px 0px; text-decoration:none;}
.enlace_intro:after{content:''; display:block; position:absolute; z-index:1; bottom:0; right:0; width: 0px; height: 0px; border-style: solid; border-width: 0 0 15px 15px; border-color: transparent transparent #fff transparent; transform: rotate(0deg); -moz-transform: rotate(0deg); -webkit-transform: rotate(0deg); transition:1s all ease; -moz-transition:1s all ease; -webkit-transition:1s all ease;} 

.enlace_intro:hover a{ color:#043a8b; padding:10px 20px}
.enlace_intro:hover:after{ border-width: 0 0 500px 500px;}


.texto_100_wrapper {background: #fff; padding: 75px 0px;}
.texto_100_wrapper.texto_100_bloque_100 {padding-top: 75px;}
.texto_100_container {text-align: left; width: 90%; max-width: 1200px; margin:0px auto;}
.texto_100_wrapper.texto_100_bloque_50 .texto_100_container {width: 90%; max-width: 600px; margin: 0px auto; text-align: center;}
.titulo_bloque h2 {font-size: 68px; font-weight: 800; font-family: 'Montserrat';}
.titulo_bloque h2 strong{color:#043a8b;}
.texto_bloque {color: #444; font-size: 18px;}
.texto_bloque h2 {margin: 20px 0px 20px; line-height: 1.1; font-weight: 900; font-family: 'Montserrat'; color: inherit;}
.enlace_bloque {display: inline-block; position: relative; overflow:hidden;}
.enlace_bloque a{display: inline-block; font-size:18px; font-weight:900; font-family:'Montserrat'; color:#043a8b; position:relative; z-index:2; transition:1s all ease; -moz-transition:1s all ease; -webkit-transition:1s all ease; padding: 10px 20px 10px 0px; text-decoration:none;}
.enlace_bloque:after{content:''; display:block; position:absolute; z-index:1; bottom:0; right:0; width: 0px; height: 0px; border-style: solid; border-width: 0 0 15px 15px; border-color: transparent transparent #043a8b transparent; transform: rotate(0deg); -moz-transform: rotate(0deg); -webkit-transform: rotate(0deg); transition:1s all ease; -moz-transition:1s all ease; -webkit-transition:1s all ease;} 
.texto_100_bloque_75 .texto_100_container .titulo_bloque h2 {max-width: 700px;}
.texto_100_bloque_75 .texto_bloque {max-width: 900px;}
.enlace_bloque:hover a{ color:#fff; padding:10px 20px}
.enlace_bloque:hover:after{ border-width: 0 0 500px 500px;}
.bloque_imagen_texto_wrapper {background: #fff; padding: 0px 0px 75px;}
.bloque_imagen_texto_container {width: 90%; max-width: 1200px; margin: 0px auto; position: relative; padding: 100px 0px;}
.bloque_info_texto {width: 50%; padding-right: 50px;}
.bloque_info_imagen { position: absolute; top: 0; right: 0; width: 50%; height: 100%; background-size: cover !important;  box-shadow:10px 20px 20px rgb(0 0 0 / 20%)}
.bloque_imagen_texto_wrapper_2 .bloque_info_imagen {left: 0;}
.bloque_imagen_texto_wrapper_2 .bloque_info_texto {margin: 0px 0px 0px auto; padding: 0px 0px 0px 50px;}
.banner_100_wrapper {background: #043a8b; color: #fff; position:relative; margin-bottom:75px;}
.banner_100_gradient {position: absolute;z-index: 1;top: 0; left: 0; width: 100%; height: 100%; background: rgb(4,58,139); background: -moz-linear-gradient(90deg, rgba(4,58,139,1) 0%, rgba(4,58,139,1) 60%, rgba(212,218,255,0.5438550420168067) 100%); background: -webkit-linear-gradient(90deg, rgba(4,58,139,1) 0%, rgba(4,58,139,1) 60%, rgba(212,218,255,0.5438550420168067) 100%); background: linear-gradient(90deg, rgba(4,58,139,1) 0%, rgba(4,58,139,1) 60%, rgba(212,218,255,0.5438550420168067) 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#043a8b",endColorstr="#d4daff",GradientType=1);}
.banner_100_container {width: 90%; max-width: 1200px; margin: 0px auto; padding: 75px 0px; position:relative; z-index:3;}
.banner_100_imagen {position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 0; background-size:cover !important;}
.banner_100_container .titulo_bloque h2,
.banner_100_container .texto_bloque {color: #fff;}
.enlace_bloque.enlace_bloque_w a{ color:#fff;}
.enlace_bloque.enlace_bloque_w:after{border-color: transparent transparent #fff transparent;} 
.enlace_bloque.enlace_bloque_w:hover a{ color:#043a8b; padding:10px 20px}
.cabecera_corporativa_wrapper {position: relative;}
.cabecera_corporativa_wrapper:after{content:''; z-index:1;position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgb(4,58,139); background: -moz-linear-gradient(90deg, rgba(4,58,139,1) 40%, rgba(4,58,139,0) 100%);background: -webkit-linear-gradient(90deg, rgba(4,58,139,1) 40%, rgba(4,58,139,0) 100%); background: linear-gradient(90deg, rgba(4,58,139,1) 40%, rgba(4,58,139,0) 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#043a8b",endColorstr="#043a8b",GradientType=1);}
.cabecera_corporativa_container {width: 90%; max-width: 1200px; margin: 0px auto; position: relative; z-index:2; min-height: 500px;}
.titulo_pagina h1 {position: absolute; bottom: 0; z-index: 1; color: #fff; font-size: 100px; line-height: .8; margin: 0 0 -13px; max-width: 500px;}

.bloque_contacto_container{ padding-bottom:0px !important;}
.bloque_info_texto.bloque_info_texto_contacto {display: inline-block; vertical-align: top;}
.bloque_formulario_contacto {display: inline-block; width: 50%; vertical-align: top;}
.bloque_formulario_contacto .js-form-item label {font-size: 12px; margin: 0; line-height: 1; background: #fff; padding: 5px; transform: translate(10px, 12px); -moz-transform: translate(10px, 12px); -webkit-transform: translate(10px, 12px); display: inline-block;}
.bloque_formulario_contacto .js-form-item input[type="text"],
.bloque_formulario_contacto .js-form-item input[type="email"]{ display:block; width:100%; padding:5px;}
.mapa_de_contacto{ margin-top:50px;}
.mapa_de_contacto iframe {width: 100%; height: 500px;}

footer {background: #101010;}
.footer_container {width: 90%; max-width: 1200px; margin: 0px auto; padding: 75px 0px 15px;}
.footer_container a {color: #fff !important; text-decoration: none !important; box-shadow: none !important;}
.logo_footer {width: 100%; max-width: 450px; margin: 0px auto 20px;}
.footer_bottom{ border-top:1px solid rgba(255,255,255,.5); padding-top:5px; margin-top:10px; }
.footer_container p {color: #fff; margin: 0px 0px 5px !important; text-align: center; font-family: 'Poppins'; font-weight: 300; font-size: 16px; line-height: 1.7;}
.footer_bottom ul { margin:0px auto; padding:0px; width:100%; text-align:center;}
.footer_bottom ul li {font-size: 12px; display: inline-block; vertical-align: middle; padding: 0px 5px;}
.footer_bottom ul li a{ text-decoration:none; color:#fff !important;}

form#user-login-form {width: 100%; max-width: 500px; margin: 200px auto 100px;}

@media( max-width:1200px){
.menu_superior_cecofi {float: none; width: 100%; display:none;}
.open_close_menu {display: block;}
.cecofi_header_wrapper:after{ height:150%;}
	
}
@media(max-width:900px){
.cabecera_corporativa_container{ min-height:450px;}	
.titulo_bloque h2 {font-size: 48px; line-height: 1;}
.banner_100_container .bloque_info_texto {width: 100%; padding-right: 0;}
}

@media(max-width:800px){
.banner_100_wrapper,
footer{ margin-top:75px;}	
.bloque_formulario_contacto {width: 100%;}	
.bloque_imagen_texto_wrapper {padding: 0px 0px;}	
.bloque_imagen_texto_container {padding: 0px !important;}
.bloque_info_texto {width: 100%; padding-right: 0px !important; padding-left: 0px !important;}
.bloque_info_imagen {width: 100%; height: 400px; position: relative; box-shadow: none !important; margin-bottom: 30px; transform: translateY(0px) !important; -moz-transform: translateY(0px) !important; -webkit-transform: translateY(0px) !important;}
}


@media(max-width:600px){
.cecofi_menu_container a span{ padding:20px 0px;}	
.cecofi_logo{ max-width:200px;}	
.titulo_pagina h1{font-size: 75px;}	
.titulo_intro h1 {font-size: 60px;}
.titulo_bloque h2 {font-size: 40px;}
.texto_bloque {font-size: 16px; text-align: justify;}
.cecofi_logo .logo_full{ display:none;}
.cecofi_logo .logo_mobile{ display:block;}
}