/* Same Baloo font previously served by Google Fonts, now hosted locally. */
@font-face {
    font-family:Baloo;
    font-style:normal;
    font-weight:400;
    font-display:swap;
    src:url("../img/fonts/baloo-latin-v14.woff2") format("woff2");
}

/*
font-family: 'Open Sans', sans-serif;
font-family: 'Lato', sans-serif;

*/

html{
	height:auto;
	min-height:100%;
}

document, html, body{
	margin:0px;
	padding:0px;
	background-color: #fff;
	min-height:100% !important;
	height:auto;
	position:relative;
}

body, body *{
	
	font-family: Arial, sans-serif, Helvetica;
	/*font-family: 'Open Sans', sans-serif;*/
	
	font-weight:700;
	font-size:14px;
	color:#58595b;
	/**/
	font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	-ms-font-smoothing: antialiased;
	-o-font-smoothing: antialiased;
	-webkit-font-smoothing: antialiased;
	
}
body{
	position:relative;
	padding-bottom:0px;
}

#log{
	 display:none;
	 position:fixed; bottom:50px; z-index:9999999999; left:0px; font-family:Arial, Helvetica, sans-serif; font-size:16px; font-weight:700;color:#FFF; background-color: rgba(130,230,160,0.5); padding:20px;
 }

.bold, b, strong{
	font-family:inherit;
	font-size:inherit;
	color: inherit;
	font-weight:700;
	display: inline;
}


hr{
	height:1px;
	border:0;
	background-color:#dadbdb;
	width:auto;
}

#sitio{
	position:absolute;
	width:100%;
	height:100%;
}

#contenido{
	position:relative;
	width:100%;
	left:0;
	height:auto;
	min-height:100%;
	padding:0;
	/**/
	transition:left 0.4s ease-out, opacity 0.4s ease-in-out;
	-moz-transition:left 0.4s ease-out, opacity 0.4s ease-in-out;
	-ms-transition:left 0.4s ease-out, opacity 0.4s ease-in-out;
	-o-transition:left 0.4s ease-out, opacity 0.4s ease-in-out;
	-webkit-transition:left 0.4s ease-out, opacity 0.4s ease-in-out;
	/**/
}


.site-section{
	position:relative;
	display:block;
	z-index:2;
	position:relative;
}

#caja{
	position:relative;
	display:block;
	width:1200px;
	padding:0px;
	margin:0px auto;
	text-align:left;
	
}

.tabla{
	position:relative;
	display:table;
}

.tr{
	position:relative;
	display:table-row;
}

.td{
	position:relative;
	display:table-cell;
	vertical-align:middle;
	width:100%;
	height:100%;
	text-align:left;
}

.foto_completa{
	position:relative;
	width:auto;
	height:auto;
	overflow:hidden;
	text-align:center;
	padding:0;
}

.foto_completa img{
	position:absolute;
	width:100%;
	height:auto;
}

.bg_completo{
	position:relative;
	text-align:center;
	padding:0;
	/**/
	background-size: cover;
	background-repeat:no-repeat;
}

#acciones_invisibles,
#acciones_procesos
{
	display:none;
	position:fixed;
	bottom:0;
	left:0;
	z-index:888888888888888888888888888888;
	background:white;
	padding:20px;
}

#acciones_procesos{
	width:100%;
}

a{
	color: #bf3837;
	text-decoration:none;
	font-size: inherit;
	font-weight:inherit;
	font-size:inherit;
	cursor:pointer;
	/**/
	transition:color 0.4s ease, opacity 0.4s ease, opacity 0.5s ease-out;
	-moz-transition:color 0.4s ease, opacity 0.4s ease, opacity 0.5s ease-out;
	-ms-transition:color 0.4s ease, opacity 0.4s ease, opacity 0.5s ease-out;
	-o-transition:color 0.4s ease, opacity 0.4s ease, opacity 0.5s ease-out;
	-webkit-transition:color 0.4s ease, opacity 0.4s ease, opacity 0.5s ease-out;
		
}

a:hover{
	color:#000;
	text-decoration:underline;
}

#divisor{
	position:relative;
	padding:15px 0;
	margin:15px 0;
	background-color:#D23117;
	font-size:16px;
	text-align:left;
}

#divisor,
#divisor *{
	color:#fff;
}

#divisor[principal]{
	margin-bottom:2px;
}

#divisor h2{
	margin:0;
}

h1,
h2,
h3,
h4,
h5
{
	line-height: normal;
	color:inherit;
	display:inline;
	font-weight:300;
}

h1{
	/*
	font-size:24px;
	color:#006bb5;
	*/
	font-family:Baloo, Verdana, Geneva, sans-serif;
	font-size:37px;
	line-height:35px;
	margin:0;
	margin-bottom:20px;
	display:block;
	width:auto;
	text-align:left;
	white-space:normal;
	text-wrap:normal;
	color:#f1852e;
}

h2{
	font-size:18px;
	color:#006bb5;

}


p{
	margin:8px 0;
}

li{
	margin:3px 0;
}

ol{
	padding:0;
}

ol li{
	list-style: none;
}


ol{
	counter-reset:li; /* Initiate a counter */
}


ol li:before {
    content:counter(li) "."; /* Use the counter as content */
    counter-increment:li; /* Increment the counter by 1 */
	font-weight:700;
	margin-right:10px;
}

*[mobil]{
	display:none;
}

#fin_float{
	float:none;
	clear:both;
	width:100%;
}


#fuente_tam{
	position:relative;
	display:table;
	margin-top:15px;
	padding:2px;
	border-bottom:1px solid #d4d4d4;
}

#fuente_tam #achicar,
#fuente_tam #agrandar
{
	position:relative;
	cursor:pointer;
	width:20px;
	height:auto;
}

#fuente_tam #achicar{
	margin-right:2px;
}

#fuente_tam #achicar:hover,
#fuente_tam #agrandar:hover
{
	opacity:0.5;
}

#recaptcha1,
#recaptcha2,
#recaptcha3
{
	-moz-transform:scale(0.77);
	-ms-transform:scale(0.77);
	-o-transform:scale(0.77);
	-webkit-transform:scale(0.77);
	/**/
	transform-origin:0 0;
	-moz-transform-origin:0 0;
	-ms-transform-origin:0 0;
	-o-transform-origin:0 0;
	-webkit-transform-origin:0 0;
}


/*************************************************************/
/****************  FORMULARIOS *******************************/
/*************************************************************/


.input[type="submit"], .input[type="reset"], button, .boton{
	position:relative;
	margin:0;
	display:table;
	width:auto;
	height:auto;
	padding:8px 15px;
	font-family: 'Open Sans Condensed', sans-serif;
	text-align:center;
	font-size:15px;
	font-weight:700;
	color:#000;
	border:2px solid #222;
	background-color: transparent;
	cursor:pointer;
	text-transform:uppercase;
	text-decoration:none !important;
	/**/
	border-radius:3px;
	-moz-border-radius:3px;
	-ms-border-radius:3px;
	-o-border-radius:3px;
	-webkit-border-radius:3px;
	/**/
	transition:background-color 0.4s ease, color 0.4s ease, border 0.4s ease;
	-moz-transition:background-color 0.4s ease, color 0.4s ease, border 0.4s ease;
	-ms-transition:background-color 0.4s ease, color 0.4s ease, border 0.4s ease;
	-o-transition:background-color 0.4s ease, color 0.4s ease, border 0.4s ease;
	-webkit-transition:background-color 0.4s ease, color 0.4s ease, border 0.4s ease;
	
}

input[type="submit"]:hover,
.input[type="reset"]:hover,
button:hover,
.boton:hover
{
	background-color:#222;
	color:#fff;
}

.caja_campos, 
select, 
textarea, 
input[type="text"], 
input[type="password"],
input[type="file"] + label
{
	position:relative;
	margin:8px 0;
	display:block;
	height:auto;
	padding:7px 8px;
	text-align:left;
	color:#222;
	font-weight:400;
	background-color: transparent;
	border:1px solid #222;
	outline:none;
	/**/
	border-radius:3px;
	-moz-border-radius:3px;
	-ms-border-radius:3px;
	-o-border-radius:3px;
	-webkit-border-radius:3px;
	/**/
	appearance:none;
	-moz-appearance:none;
	-ms-appearance:none;
	-o-appearance:none;
	-webkit-appearance:none;
	/**/
	transition:background-color 0.4s ease, color 0.4s ease, border 0.4s ease;
	-moz-transition:background-color 0.4s ease, color 0.4s ease, border 0.4s ease;
	-ms-transition:background-color 0.4s ease, color 0.4s ease, border 0.4s ease;
	-o-transition:background-color 0.4s ease, color 0.4s ease, border 0.4s ease;
	-webkit-transition:background-color 0.4s ease, color 0.4s ease, border 0.4s ease;
}

select{
	appearance: normal;
	-moz-appearance:normal;
	-ms-appearance:normal;
	-o-appearance:normal;
	-webkit-appearance:normal;
	/**/
	background-image:url(../img/ponstin-ic-desplegable.svg);
	background-repeat:no-repeat;
	background-position:90% center;
}

@media screen and (min-width:0\0) { 
	select{
		background-image:none;
		padding:7px;
	}
}

::-webkit-input-placeholder,
::-webkit-select-placeholder
{ /* WebKit browsers */
    color:#717171;
	
}
:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
   color:    #717171;
   opacity:  1;
}
::-moz-placeholder { /* Mozilla Firefox 19+ */
   color:    #717171;
   opacity:  1;
}
:-ms-input-placeholder { /* Internet Explorer 10+ */
   color:    #717171;
}


select{
	width:100%;
	/**/
	transition:opacity 0.4s ease;
	-moz-transition:opacity 0.4s ease;
	-ms-transition:opacity 0.4s ease;
	-o-transition:opacity 0.4s ease;
	-webkit-transition:opacity 0.4s ease;
}

/*
.ff3 select{
	wi;
}
*/

/*.chrome select{
	width:100%;	
}

*/

.caja_campos:focus, select:focus, textarea:focus, input[type="text"]:focus, input[type="password"]:focus{
	background-color: #dfdfdf;
}

input[type="checkbox"], input[type="radio"]{
	position: relative;
	background-color:transparent;
	padding:3px;
	margin-left:5px;
	margin-right:5px;
	margin-top:8px;
	margin-bottom:5px;
	opacity:0;
}
input[type="checkbox"] + label, input[type="radio"] + label{
	position:absolute;
	margin-left:-51px;
	margin-top:2px;
	margin-bottom:2px;
	width:36px;
	height:18px;
	border:1px solid transparent;
	background-image:url(../img/ponstin-check.svg);
	background-repeat:no-repeat;
	background-position:0px -1px;
	cursor:pointer;
	/**/
	border-radius:15px;
	/**/
	transition:background-position 0.4s;
	-webkit-transition:background-position 0.4s;
	-moz-transition:background-position 0.4s;
	-ms-transition:background-position 0.4s;
	-o-transition:background-position 0.4s;
}

input[type="checkbox"]:hover + label, input[type="radio"]:hover+ label{
	/*background-position:0px -20px;*/
	/*border:1px solid #1D1D1B;*/
}

input[type="checkbox"]:checked + label, input[type="radio"]:checked + label{
	background-position:right -1px;
}

input[type="file"]{
	position:relative;
	top:10px;
	bottom:15px;
	z-index:2;
	width:110px;
	height:37px;
	background-color:transparent;
	opacity:0;
	cursor:pointer;
}

input[type="file"] + label{
	font-size:14px !important;
	line-height:14px;
	position:relative;
	top:0px;
	bottom:15px;
	z-index:1;
	padding-right:30px;
	padding-top:0;
	padding-bottom:0;
	padding-left:10px;
	line-height:20px;
	margin-top:-30px;
	margin-left:0px;
	display: block;
	height:36px !important;
	opacity:1;
	background-image:url(../img/ponstin-ic-archivo.svg);
	background-repeat:no-repeat;
	background-position:right center;
	background-size:36px auto;
	overflow:hidden;
	cursor:pointer;
	/**/
	transition:background-position 0.2s ease;
	-transition:background-position 0.2s ease;
	-transition:background-position 0.2s ease;
	-o-transition:background-position 0.2s ease;
	-webkit-transition:background-position 0.2s ease;
}

#recaptcha1,
	#recaptcha2
	{
		margin-bottom:10px;
	}
*[mobil]{
		display:none !important;
	}
	
@media screen and (max-width: 1200px) {
	#caja{
		width:800px;
	}
	#recaptcha1,
	#recaptcha2
	{
		-moz-transform:scale(0.77);
		-ms-transform:scale(0.77);
		-o-transform:scale(0.77);
		-webkit-transform:scale(0.77);
		/**/
		transform-origin:0 0;
		-moz-transform-origin:0 0;
		-ms-transform-origin:0 0;
		-o-transform-origin:0 0;
		-webkit-transform-origin:0 0;
	}
}
@media screen and (max-width: 800px) {
	#caja{
		display:block;
		padding:0;
		margin:0;
		width:auto;
	}
	
	h1{
		font-size:28px;
	}
	
	*[mobil]{
		display:block;
	}
}
/* Accessible page headings without changing the established visual layout. */
.sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* Cookie preferences use text nodes; no user-controlled HTML is inserted. */
#cookieNotice { position:fixed; bottom:0; left:0; right:0; z-index:999999; display:flex; gap:24px; align-items:center; padding:20px 25px; background:#fff; color:#09275b; box-shadow:0 -4px 24px rgba(0,0,0,.15); }
#cookieNotice .cookie-copy { flex:1; }
#cookieNotice h2 { margin:0 0 8px; font-size:22px; color:#09275b; }
#cookieNotice p, #cookieNotice a { margin:0 0 8px; font-size:14px; line-height:1.5; color:#09275b; }
#cookieNotice a { text-decoration:underline; }
#cookieNotice .cookie-actions { display:flex; gap:10px; flex-wrap:wrap; }
#cookieNotice button { padding:11px 16px; border:2px solid #09275b; border-radius:5px; cursor:pointer; font-size:14px; }
#cookieNotice .cookie-accept { background:#09275b; color:#fff; }
#cookieNotice .cookie-reject { background:#fff; color:#09275b; }
.cookie-settings { border:0; background:none; padding:0; font-size:10px; color:#333; cursor:pointer; text-decoration:underline; }
#cookieNotice button:focus-visible, .cookie-settings:focus-visible { outline:3px solid #f58220; outline-offset:3px; }
@media (max-width:700px) { #cookieNotice { flex-direction:column; gap:12px; align-items:stretch; max-height:80vh; overflow:auto; } }
