/*--------------------------------------------------------------*/
/*-----------------------ESTILO PRINCIPAL-----------------------*/
/*--------------------------------------------------------------*/

@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;600;700&display=swap');

*{
	font-family: 'Open Sans', sans-serif !important;
	color: #222;
	margin: 0;
	padding: 0;
	line-height: 1.2;
	font-weight: 300;
	text-decoration: none;
	box-sizing: border-box;
	outline: none;
}
moz-selection{background: #222;	color: #fff;}
*::-moz-selection{background: #222;	color: #fff;}

a{color: #222;}

p{margin-bottom: 15px;}

.btn{
	border: none;
	box-shadow: none;
	display: inline-block;
	border-radius: 200px;
	text-decoration: none;
	cursor: pointer;
	font-weight: bold;
	font-size: 14px;
	padding: 15px 25px;
	transition:all 0.3s ease-out; 
	-webkit-trasition:all 0.3s ease-out;
	position: relative;
	z-index: 1;
	overflow: hidden;
}

.btn:before{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: linear-gradient(to right, rgba(255,255,255,0), rgba(255,255,255,0.2), rgba(255,255,255,0.2), rgba(255,255,255,0));
	background-size: 300% 100%;
	z-index: -1;
	transition:all 0.3s ease-out; 
	-webkit-trasition:all 0.3s ease-out;
}

.btn:hover:before{background-position: 100% 0;}

.btn .mr{margin-right: 5px;}
.btn svg{
	width: 12px;
	height: 12px;
}
.btn svg *{fill: #fff;}

.btn1{
	/*box-shadow: 0 0 30px rgba(53,152,220,0.5);*/
	background-color: #3598dc;
	color: #fff;
}
.btn1:hover, 
.btn1:focus, 
.btn1:active{
	/*box-shadow: 0 0 5px rgba(53,152,220,1);*/
}
.btn2{
	background-color: #555555; color: #fff;
}
.btn2:hover, 
.btn2:focus, 
.btn2:active{
	background-color: #555555;
}

/*--------------------------------------------------------------*/
/*-------------------------ESTILO COMÚN-------------------------*/
/*--------------------------------------------------------------*/

header .launch{
	float: right; 
	cursor: pointer; 
	height: 25px;
	width: 35px;
	position: relative;
	z-index: 101;
}
header .launch span{
	background-color: #000000;
	display: block;
	height: 3px;
	left: 0;
	width: 100%;
	position: absolute;
	opacity: 1;
	-webkit-transition:all 0.3s ease-in-out;
	transition:all 0.3s ease-in-out;
}
header .launch.open span{background-color: #fff;}

header .launch span:nth-child(1){top: 0;}
header .launch span:nth-child(2){top: 10px;}
header .launch span:nth-child(3){top: 10px;}
header .launch span:nth-child(4){top: 20px;}

.sidr-open header .launch span:nth-child(1){top: 18px; left: 50%; width: 0;}
.sidr-open header .launch span:nth-child(2){transform: rotate(45deg); -webkit-transform: rotate(45deg);}
.sidr-open header .launch span:nth-child(3){transform: rotate(-45deg); -webkit-transform: rotate(-45deg);}
.sidr-open header .launch span:nth-child(4){top: 18px; left: 50%; width: 0;}

.anim3{transition:all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1); -webkit-trasition:all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);}
.anim6{transition:all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1); -webkit-trasition:all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);}
.anim10{transition:all 1s cubic-bezier(0.165, 0.84, 0.44, 1); -webkit-trasition:all 1s cubic-bezier(0.165, 0.84, 0.44, 1);}

*::placeholder{color: inherit; opacity: 0.5;}
.ancla{cursor: pointer;}
img{width: auto; max-width: 100%; height: inherit;}
b{font-weight: bold; font-size: inherit; color: inherit;}
h1, h2, h3, h4, h5, h6{line-height: 1.2;}
input, button, select, textarea{font-family: inherit; margin: 0; width: 100%;}
select{-moz-appearance:none;-webkit-appearance:none;}
textarea{resize: vertical;}
textarea:focus, input:focus{box-shadow: none !important;}
div.icons > .btn-group, body > .jmodedit{display: none !important;}
.btn:hover, .btn:active, .btn:focus{text-decoration: none !important;}
.responsive{display: none;}

label.checkbox{margin-bottom: 0; position: relative; padding: 0;}
label.checkbox span{
	position: relative; 
	font-size: 13px; 
	font-weight: 400;
	line-height: 1.2;
	cursor: pointer;
}
label.checkbox span a{font-size: inherit; font-weight: inherit; color: red;}
label.checkbox span a:hover{text-decoration: underline;}
label.checkbox input{position: absolute; top: 0; left: 0; opacity: 0;}
label.checkbox span:before{
	content: "\f00c" !important;
	font-family: "FontAwesome" !important;
	color: transparent;
	width: 15px;
	height: 15px;
	display: inline-block;
	vertical-align: text-top;
	margin-right: 7px;
	text-align: center;
	line-height: 16px;
	font-size: 13px;
	background-color: #fff;
	border: 1px solid red !important;
	vertical-align: initial;
}

label.checkbox input[type="checkbox"]:checked + span:before{
  background-color: #000;
  color: #fff !important;
}

.cookies{
	background-color: #fff;
	position: fixed;
	z-index: 99;
	bottom: 0;
	left: 0;
	width: 100%;
	box-shadow: 0 0 30px rgba(0,0,0,0.2);
	display: none;
}
.cookies p{margin: 0; padding: 0; font-size: 13px;}
.cookies .btn{
	font-size: 13px;
	padding: 5px 15px;
	vertical-align: middle;
}
body.notfound .cookies{display: none;}

i.fa{color: inherit; font-family: "FontAwesome" !important;}

.logo img{transition:all 0.3s ease-out; -webkit-trasition:all 0.3s ease-out;}

.w{color: #fff;}

.logo:hover img{opacity: 0.8;}

.alert{
	padding: 30px;
	background-color: #8BC34A;
	border: none;
	margin: 20px;
	border-radius: 0;
	position: fixed;
	z-index: 10;
	width: 90%;
	max-width: 700px;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	box-shadow: 0 0 100px rgba(0,0,0,0.5);
}
.alert *{
	color: #fff;
	box-shadow: none;
	text-shadow: none;
}
.alert-success{background-color: #8BC34A;}
.alert-warning{background-color: #FFC107;}
.alert-error{background-color: #F44336;}
.alert h4{color: #fff; text-shadow:none; margin-bottom: 10px; font-size: 22px; text-transform: capitalize;}
.alert p{margin-bottom: 0; color: #fff; text-shadow: none; line-height: 1;}
.alert .close{color: #fff; text-shadow: none; opacity: 1; position: absolute; top: 0; right: 15px; font-size: 30px; cursor: pointer;}

.popup{
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	background-color: #fff;
	padding: 30px;
	display: none;
	z-index: 100;
}
.popup > i{
	position: absolute;
	top: -40px;
	right: -40px;
	color: #fff;
	font-size: 32px;
	cursor: pointer;
}

.popup > div{display: none;}

.popupoverlay{
	position: fixed;
	cursor: pointer;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	transition: opacity .3s ease-out;
	opacity: 0;
	background-image: radial-gradient(rgba(0,0,0,0.3), rgba(0,0,0,0.7));
	z-index: 100;
	display: none;
	animation-name: fadeIn;
	animation-duration: 0.3s;
	animation-fill-mode: both;
}

.popupoverlay.open{display: block;}
.popup.open{display: block;}
.lpopup{cursor: pointer;}

.m{width: 100%; max-width: 1260px; margin: 0 auto;}
.m500{width: 100%; max-width: 500px; margin: 0 auto;}
.m700{width: 100%; max-width: 700px; margin: 0 auto;}
.m900{width: 100%; max-width: 900px; margin: 0 auto;}
.m1000{width: 100%; max-width: 1000px; margin: 0 auto;}

.ova{overflow: auto;}
.rel{position: relative;}

.tl{text-align: left;}
.tc{text-align: center;}
.tr{text-align: right;}
.tj{text-align: justify;}

.h100{height: 100%;}

.bg{background-repeat: no-repeat; background-position: center; background-size: cover;}

.f{display: flex; flex-flow: row wrap; justify-content: flex-start; align-content: flex-start;}
.f.lr{justify-content: space-between;}
.f.c{justify-content: center;}
.f.r{justify-content: flex-end;}
.f.cv{align-content: center; align-items: center;}
.f.b{align-content: flex-end; align-items: flex-end;}

.f > .c10{width: 100%;}
.f > .c9{width: 90%;}
.f > .c8{width: 80%;}
.f > .c7{width: calc(100% - 330px);}
.f > .c66{width: 66.6666666%;}
.f > .c6{width: 60%;}
.f > .c5{width: 50%;}
.f > .c4{width: 40%;}
.f > .c33{width: 33.3333333%;}
.f > .c3{width: 330px;}
.f > .c25{width: 25%;}
.f > .c2{width: 20%;}
.f > .c15{width: 15%;}
.f > .c1{width: 10%;}
.f > .c05{width: 05%;}
.f > .vac{align-self: center;}	
.f > .f1{flex: 1;}

.pd1{padding: 1px;}
.pd2{padding: 2px;}
.pd3{padding: 3px;}
.pd4{padding: 4px;}
.pd5{padding: 5px;}
.pd5-10{padding: 5px 10px;}
.pd10-5{padding: 10px 5px;}
.pd10{padding: 10px;}
.pd10-0{padding: 10px 0;}
.pd0-10{padding: 0 10px;}
.pd10-30{padding: 10px 30px;}
.pd10-20{padding: 10px 20px;}
.pd10-15{padding: 10px 15px;}

.pd15{padding: 15px;}
.pd15-0{padding: 15px 0;}
.pd0-15{padding: 0 15px;}
.pd15-30{padding: 15px 30px;}

.pd20{padding: 20px;}
.pd20-0{padding: 20px 0;}
.pd0-20{padding: 0 20px;}
.pd20-30{padding: 20px 30px;}
.pd20-15{padding: 20px 15px;}
.pd20-10{padding: 20px 10px;}

.pd30{padding: 30px;}
.pd30-0{padding: 30px 0;}
.pd0-30{padding: 0 30px;}
.pd30-20{padding: 30px 20px;}
.pd30-15{padding: 30px 15px;}
.pd30-10{padding: 30px 10px;}

.pd40{padding: 40px;}
.pd40-0{padding: 40px 0;}
.pd0-40{padding: 0 40px;}
.pd40-20{padding: 40px 20px;}
.pd40-15{padding: 40px 15px;}
.pd40-10{padding: 40px 10px;}

.pd50{padding: 50px;}
.pd50-0{padding: 50px 0;}
.pd0-50{padding: 0 50px;}
.pd50-30{padding: 50px 30px;}
.pd50-20{padding: 50px 20px;}
.pd50-15{padding: 50px 15px;}
.pd50-10{padding: 50px 10px;}

.pd60{padding: 60px;}
.pd60-0{padding: 60px 0;}
.pd0-60{padding: 0 60px;}
.pd60-30{padding: 60px 30px;}
.pd60-20{padding: 60px 20px;}
.pd60-15{padding: 60px 15px;}
.pd60-10{padding: 60px 10px;}

.pd70{padding: 70px;}
.pd70-0{padding: 70px 0;}
.pd0-70{padding: 0 70px;}
.pd70-30{padding: 70px 30px;}
.pd70-20{padding: 70px 20px;}
.pd70-15{padding: 70px 15px;}
.pd70-10{padding: 70px 10px;}

.pd80{padding: 80px;}
.pd80-0{padding: 80px 0;}
.pd0-80{padding: 0 80px;}
.pd80-30{padding: 80px 30px;}
.pd80-20{padding: 80px 20px;}
.pd80-15{padding: 80px 15px;}
.pd80-10{padding: 80px 10px;}

.pd90{padding: 90px;}
.pd90-0{padding: 90px 0;}
.pd0-90{padding: 0 90px;}
.pd90-30{padding: 90px 30px;}
.pd90-20{padding: 90px 20px;}
.pd90-15{padding: 90px 15px;}
.pd90-10{padding: 90px 10px;}

.pd100{padding: 100px;}
.pd100-0{padding: 100px 0;}
.pd0-100{padding: 0 100px;}
.pd100-30{padding: 100px 30px;}
.pd100-20{padding: 100px 20px;}
.pd100-15{padding: 100px 15px;}
.pd100-10{padding: 100px 10px;}

.pd120{padding: 120px;}
.pd120-0{padding: 120px 0;}
.pd0-120{padding: 0 120px;}
.pd120-30{padding: 120px 30px;}
.pd120-20{padding: 120px 20px;}
.pd120-15{padding: 120px 15px;}
.pd120-10{padding: 120px 10px;}

.pd150{padding: 150px;}
.pd150-0{padding: 150px 0;}
.pd0-150{padding: 0 150px;}
.pd150-30{padding: 150px 30px;}
.pd150-20{padding: 150px 20px;}
.pd150-15{padding: 150px 15px;}
.pd150-10{padding: 150px 10px;}

.pd-nr{padding-right: 0 !important;}
.pd-nl{padding-left: 0 !important;}
.pd-nt{padding-top: 0 !important;}
.pd-nb{padding-bottom: 0 !important;}

/*--------------------------------------------------------------*/
/*---------------------ESTILO MANTENIMIENTO---------------------*/
/*--------------------------------------------------------------*/

body{background-color: #f5f5f5;}

body.mantenimiento:after{
	content: "";
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: url('/images/estructura/bg_mantenimiento.jpg');
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	z-index: -1;
}
body.mantenimiento h1{
	margin-top: 50px; 
	text-transform: uppercase; 
	color: #000000;
	font-weight: bold;
	font-size: 55px;
}
body.mantenimiento h2{
	color: #000000;
	margin-bottom: 50px;
}
body.mantenimiento .sc i{
	background-color: #fff;
	color: blue;
	width: 60px;
	height: 60px;
	line-height: 60px;
	border-radius: 50%;
	font-size: 24px;
}
body.mantenimiento .sc i:hover{
	color: #fff;
	background-color: transparent;
	border: 2px solid #fff;
}
body.mantenimiento fieldset{
	border: none;
	padding-bottom: 40px;
	position: relative;
}
body.mantenimiento fieldset input{
	height: 35px;
	padding: 0 10px;
	margin-bottom: 5px;
}

/*--------------------------------------------------------------*/
/*-------------------------SOLO FIREFOX-------------------------*/
/*--------------------------------------------------------------*/
@-moz-document url-prefix(){}

/*--------------------------------------------------------------*/
/*----------------------------ESTILO----------------------------*/
/*--------------------------------------------------------------*/

.bcfacebook{background-color: #3b5999;}
.bctwitter{background-color: #55acee;}
.bcyoutube{background-color: #cd201f;}
.bcinstagram{background-color: #e4405f;}

header{
	position: relative;
	z-index: 10 !important;
	background-color: #fff;
	box-shadow: 0 0 30px rgba(0,0,0,0.2);
}
header .logo img{
	height: 40px;
	width: 300px;
	display: block;
}

header nav{margin-right: 15px;}
header nav ul li{
	list-style: none;
	display: inline-block;
}

header nav ul li a{
	text-transform: uppercase;
	font-weight: 600;
	padding: 10px 15px;
	display: block;
	font-size: 14px;
}

header nav ul li a:hover{
	color: #3598dc;
}

section.portada{background-image: url("/images/estructura/bg_portada.jpg");}
section.portada h1{
	color: #fff;
	text-align: center;
	font-weight: bold;
	font-size: 60px;
	margin-bottom: 30px;
}

section.portada h1 span{
	display: block;
	color: inherit;
	font-weight: inherit;
	font-size: 30px;
	margin-top: 5px;
}

select.hijo option.filtro{display: none;}
select{
	border: none;
	box-shadow: none;
	font-size: 14px;
	font-weight: 600;
	padding: 15px 30px 15px 20px;
	background-image: url("/images/estructura/caret-down.svg");
	background-repeat: no-repeat;
	background-position: center right 15px;
	background-size: 10px;
}
select option{font-weight: 600;}

section.portada .btn{border-radius: 0;}
section.portada form{
	border-radius: 3px; 
	overflow: hidden; 
	background-color: #fff;
}

section.portada select{
	border-right: 1px solid rgba(0,0,0,0.2);
}

section.portada select#xf_4{border: none;}

.pbl a{display: block;}
.pbl img{display: block; margin: 0 auto;}

.h2{
	text-align: center;
	font-weight: bold;
	font-size: 30px;
	position: relative;
	padding-bottom: 20px;
	margin-bottom: 20px;
}

.h2:after{
	content: "";
	width: 30px;
	height: 6px;
	background-color: #3598dc;
	border-radius: 10px;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}

.h4{
	font-weight: bold;
	font-size: 18px;
}

.k2vk.cat.noticias article{height: 100%;}
.k2vk.cat.noticias article a{
	height: 100%;
	display: block;
	background-color: #fff;
	position: relative;
	padding-bottom: 30px;
	box-shadow: 0 0 30px rgba(0,0,0,0.1);
}
.k2vk.cat.noticias article picture img{display: block;}
.k2vk.cat.noticias article .info{
	padding: 30px;
}

.k2vk.cat.noticias article .info .desc{
	margin-top: 5px;
	font-size: 15px;
	line-height: 1.4;
}

.k2vk.cat.noticias article .img{position: relative;}

.k2vk.cat.noticias article .video{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.k2vk.cat.noticias article .gal{
	position: absolute;
	top: 0;
	left: 0;
	padding: 15px;
}

.k2vk.cat.noticias article .gal i{
	color: #fff;
	font-size: 20px;
	text-shadow: 0px 0 5px rgba(0,0,0,0.3);
}

.k2vk.cat.noticias article .video i{
	color: #fff;
	font-size: 22px;
	border: 2px solid #fff;
	width: 55px;
	height: 55px;
	line-height: 50px;
	border-radius: 50%;
	background-color: rgba(0,0,0,0.3);
	box-shadow: 0 0 20px rgba(0,0,0,0.3);
	padding-left: 19px;
}

.k2vk.cat.noticias article a:hover h3{
	color: #3598dc;
}

.k2vk.cat.noticias article a:hover picture{opacity: 0.8;}
.k2vk.cat.noticias article .comentarios svg{
	width: 15px;
	height: 15px; 
	display: inline-block;
	margin-right: 5px;
}

.k2vk.cat.noticias article .dat{
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	padding: 30px;
}
.k2vk.cat.noticias article .dat *{
	font-size: 13px;
	color: #888;
}

.k2vk.cat.noticias article .dat .comentarios{
	margin-right: 15px;
	border-right: 1px solid #ddd;
	padding-right: 15px;
}

.k2vk.cat.manuales .subcats a{display: block;}
.k2vk.cat.manuales .subcats svg{
	width: 75px;
	height: 75px;
	margin-right: 20px;
}
.k2vk.cat.manuales .subcats svg *{fill: #fff;}

.k2vk.cat.manuales .subcats h3{
	color: #fff;
	font-weight: bold;
	text-transform: uppercase;
	font-size: 23px;
}

.k2vk.cat.manuales .subcats h3 span{
	display: block;
	font-weight: inherit;
	text-transform: uppercase;
	color: #ff4f3e;
}

.k2vk.cat.manuales .subcats a:hover h3 span{color: #222;}

.k2vk.cat.manuales .subcats .item .info{
	background-color: rgba(0,0,0,0.6);
}

.k2vk.cat.manuales .subcats a:hover .info{
	background-color: rgba(53,152,220,0.9);	
}

.lindeg{
	background-image: linear-gradient(to bottom, rgba(0,0,0,0.05), transparent 300px);
}

.k2vk.cat.manuales article{position: relative; z-index: 1;}
.k2vk.cat.manuales article:hover{position: relative; z-index: 2;}
.k2vk.cat.manuales article a{
	display: block;
	background-color: #fff;
	margin-bottom: 5px;
}
.k2vk.cat.manuales article a:hover{
	box-shadow: 0 0 30px rgba(0,0,0,0.1);
}

.k2vk.cat.manuales article svg{
	width: 13px;
	height: 13px;
	margin-right: 5px;
}
.k2vk.cat.manuales article h3{margin-bottom: 5px;}
.k2vk.cat.manuales article a:hover h3{
	color: #3598dc;
}

.k2vk.cat.manuales article .ico{padding: 10px;}
.k2vk.cat.manuales article .ico img{
	display: block;
	width: 62px;
}

.k2vk.cat.manuales article .dat *{
	font-size: 13px;
	color: #888;
}
.k2vk.cat.manuales article .dat .idioma{
	margin-right: 15px;
	border-right: 1px solid #ddd;
	padding-right: 15px;
}
