/* --------- */
/* etiquetas */
/* --------- */

* { box-sizing: border-box; }
body { margin: 0; background: #eee; font-family: Arial, sans-serif; font-size: 16px; color: #232323; line-height: 28px; }
main, header, section, footer, aside, nav, main, article, figure { display: block; margin: 0; padding: 0; }

/* p { margin: 21px 0px; line-height: 26px; } */
/* ul { line-height: 26px; } */
a { color: #22a; text-decoration: none; }
a:hover { color: darkblue; }
code { font-size: 17px; color: #b00; letter-spacing: .5px; }
img { border: 0; }

/* ------ */
/* clases */
/* ------ */

.ancho1000px { position: relative; margin: 0 auto; padding: 0; width: 1000px; }
.ancho100 { position: relative; margin: 0 auto; padding: 0; width: 100%; }

@media screen and (max-width: 1000px) {
	.ancho1000px { width: 95%; }
}

.ancho { position: relative; margin: 0 auto; padding: 0; width: 1100px; }
.ancho header { padding: 0px 12px; }

.actual { color: green; }
.verde { background-color: #4b5; border: thin solid #2a3; color: #fff; }

.botones { padding: 10px 0; }

.boton, button { display: inline-block; position: relative; margin: 0px 0px 0px 0px; padding: 7px 12px;
background-color: #f6f6f6;  border: 1px solid #c9c9c9; border-radius: 3px 3px 3px 3px; 
color: #222; text-decoration: none; font-weight: normal; font-size: 14px; line-height: normal;
vertical-align: middle; text-align: center; overflow: visible; cursor: pointer; }

.boton:hover, button:hover { background: #58b; border-color: #47a; color: #fff; }

.boton.actual { background-color: #666; border: 1px solid #555; color: #fff; }

.boton.inactivo { background-color: #f6f6f6; border-color: #c9c9c9; color: #999; cursor: default; }
.boton.inactivo:hover { background-color: #f6f6f6; border-color: #c9c9c9; color: #999; }

.boton.mover { min-width: 33px; padding: 7px 7px; }

span.precio { display: inline-block; margin: 0; padding: 5px 0px; font-size: 28px; font-weight: bold; color: Blue ; }
span.moneda { display: inline-block; margin: 0; padding: 5px 0px; font-size: 19px;font-weight: bold; color: Blue ; }

.mensaje_ok { color: green; }
.mensaje_error { color: red; }

/* código */

pre { display: block; margin: 10px 0; padding: 11px 14px;
background: #f3f3f3; color: #000;
border: thin solid #bfbfbf; border-radius: 5px;
overflow: auto; 
font-size: 16px; line-height: 22px; }
pre code { color: #a33; }
/* video */

.video { position: relative; margin: 14px 0; padding-bottom: 56.25%; padding-top: 30px; height: 0; overflow: hidden; display:block; }
.video iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

/* Columnas */

.cols {  }
.cols .imagen { margin: 25px 10px 25px 25px; }

.col { float: left; }

/* 1 Columna */

.col-1de1 { float: left; width: 100%; }
.col-1de1d0 { float: left; width: 100%; }
.col-1de1d1 { float: left; width: 100%; }

/* 2 Columnas */

.col-1de2 { float: left; width: 50%; }
.col-2de2 { float: left; width: 50%; }

.col-1de2d1 { float: left; width: 66.66%; }
.col-2de2d1 { float: left; width: 66.66%; }
.col-2de2d0 { float: left; width: 33.33%; }
.col-1de2d0 { float: left; width: 33.33%; }

/* 3 Columnas */

.col-1de3 { float: left; width: 33.33%; }
.col-2de3 { float: left; width: 33.33%; }
.col-3de3 { float: left; width: 33.33%; }

.col-1de3d1 { float: left; width: 50%; }
.col-2de3d1 { float: left; width: 50%; }
.col-3de3d1 { float: left; width: 50%; }

.col-1de3d0 { float: left; width: 25%; }
.col-2de3d0 { float: left; width: 25%; }
.col-3de3d0 { float: left; width: 25%; }

/* 4 Columnas */

.col-1de4 { float: left; width: 25%; }
.col-2de4 { float: left; width: 25%; }
.col-3de4 { float: left; width: 25%; }
.col-4de4 { float: left; width: 25%; }

@media screen and (max-width: 1150px) {
	.col-1de2d1 { float: left; width: 100%; }
	.col-2de2d1 { float: left; width: 100%; }

	.col-2de2d0 { float: left; width: 100%; }
	.col-1de2d0 { float: left; width: 100%; }
	
	.col-1de3 { float: left; width: 50%; }
	.col-2de3 { float: left; width: 50%; }
	.col-3de3 { float: left; width: 50%; }
	
	.col-1de3d1 { float: left; width: 50%; }
	.col-2de3d1 { float: left; width: 50%; }
	.col-3de3d1 { float: left; width: 50%; }

	.col-1de3d0 { float: left; width: 50%; }
	.col-2de3d0 { float: left; width: 50%; }
	.col-3de3d0 { float: left; width: 50%; }
	
	.col-1de4 { float: left; width: 50%; }
	.col-2de4 { float: left; width: 50%; }
	.col-3de4 { float: left; width: 50%; }
	.col-4de4 { float: left; width: 50%; }
}

@media screen and (max-width: 900px) {
	.col-1de2 { float: left; width: 100%; }
	.col-2de2 { float: left; width: 100%; }
	
	.col-1de2d1 { float: left; width: 100%; }
	.col-2de2d0 { float: left; width: 100%; }

	.col-1de2d0 { float: left; width: 100%; }
	.col-2de2d1 { float: left; width: 100%; }
	
	.col-1de3 { float: left; width: 100%; }
	.col-2de3 { float: left; width: 100%; }
	.col-3de3 { float: left; width: 100%; }
	
	.col-1de3d1 { float: left; width: 100%; }
	.col-2de3d1 { float: left; width: 100%; }
	.col-3de3d1 { float: left; width: 100%; }

	.col-1de3d0 { float: left; width: 100%; }
	.col-2de3d0 { float: left; width: 100%; }
	.col-3de3d0 { float: left; width: 100%; }
	
	.col-1de4 { float: left; width: 100%; }
	.col-2de4 { float: left; width: 100%; }
	.col-3de4 { float: left; width: 100%; }
	.col-4de4 { float: left; width: 100%; }
}

/* CAJAS NUEVA VERSIÓN */

.cajas { border: thin solid #cccccc; margin: 10px; padding: 0px; }
.cajas:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; }
.cajas picture { display: block; margin: 0; padding: 0; width: 100%; line-height: 0; font-size: 0; }

.cajas picture.izq { text-align: left; }
.cajas picture.cen { text-align: center; }
.cajas picture.der { text-align: right; }

.cajas picture img { max-width: 100%; }

.cajas .cajon { border-bottom: thin solid #cccccc; }
.cajas .cajon:last-child { border: none; }
/* ------------------------------------------- */
.cajas picture.introduccion {  }

.cajas header { padding: 13px 19px; line-height: 27px; }
.cajas header h3 { margin: 0; padding: 0; font-size: 20px; }
.cajas header h3 a { text-decoration: none; }

.cajas picture.contenido { border-bottom: thin solid #cccccc; padding: 17px; }
.cajas div.contenido { padding: 0px 20px; }
/* ------------------------------------------- */
.hori div.cajon picture.contenido { float: left; width: 33.33%; padding: 17px; border-bottom: none; border-right: thin solid #cccccc; }
.hori div.cajon div.contenido { float: right; width: 66.66%; }

.hori_dest picture.cajon { float: left; position: relative; width: 33.33%; border-bottom: none; }
.hori_dest header.cajon { float: right; width: 66.66%; border-left: thin solid #cccccc; }
.hori_dest div.contenido { float: right; width: 66.66%; border-left: thin solid #cccccc; }

.noborde, .noborde .cajon, .noborde picture.contenido { border: none; }

/* Cajas */

.caja { border: thin solid gray; margin: 10px; padding: 0px; }
.caja header { border-bottom: thin solid gray; padding: 0px 20px; }
.caja header h2 a { text-decoration: none; }
.caja .contenido { position: relative; padding: 10px 20px; }
.caja .formulario { position: relative; padding: 10px 16px; }
.caja .contenido img { padding: 10px 0px; }

.caja .contenido-publicidad .contenido { padding: 0px; }

div.imagen { margin: 0; }
div.contenido { position: relative; padding: 10px 16px; }

/* Cajas de imagenes en columnas */

.cols .imagen { text-align: center; }
.cols .imagen img { max-width: 100%; }

.ancho:after, .cols:after, .caja:after, .contenido:after,
#encabezado:after, #principal:after, div.ubicacion:after, .contenido:after, article:after, .paginacion:after
{ visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; }

@media screen and (max-width: 1150px) {
	.ancho { width: 90%; }
}
@media screen and (max-width: 600px) {
	.ancho { width: 97%; }
}

/* ----------- */
/* formularios */
/* ----------- */

div.formulario { padding: 0 0 0 5px; }
div.formulario div.etiquetas { padding: 6px 0; }
div.formulario div.etiquetas label { font-size: 15px; }
div.formulario div.campos { padding: 1px 0; }
div.formulario div.campos input { width: 100%; padding: 6px 5px; font-size: 14px; color: #444; border: thin solid #cccccc; }
div.formulario div.campos textarea { width: 100%; min-width: 100%; max-width: 100%; height: 160px;
padding: 6px 5px; font-family: Arial, sans-serif; font-size: 14px; color: #444; border: thin solid #cccccc; }

/* ----- */
/* Menús */
/* ----- */

/* Navegación */

ul.navegacion { float: right; list-style-type: none; margin: 0; padding: 0; background: #fdfdff; border: thin solid #dfdfd0; border-radius: 6px; color: #444444; }
.col-1de1 ul.navegacion { float: left; }
ul.navegacion { display: block; }
ul.navegacion li { float: left; }
ul.navegacion li a,
ul.navegacion li span { display: block; padding: 20px; font-size: 14px; color: #111111; text-decoration: none; }
ul.navegacion li a.actual { background: #f2f2f2; }
ul.navegacion li:hover > ul { display: block; }
ul.navegacion li:hover { background: #f2f2f2; }
ul.navegacion li:hover > a,
ul.navegacion li:hover > span {  }

ul.navegacion li ul { display: none; position: absolute; z-index: 1; list-style-type: none; margin: 0; padding: 0; width: 190px; 
background: #fdfdff; border: thin solid #dfdfd0; box-shadow: 0px 0px 0px #aaaaaa; }
ul.navegacion li ul li { float: none; }
ul.navegacion li ul li a,
ul.navegacion li ul li span { padding: 16px; color: #000000; font-weight: normal; }
ul.navegacion li ul li:hover > ul { display: block; }
ul.navegacion li ul li:hover { background: #f2f2f2; }
ul.navegacion li ul li:hover > a,
ul.navegacion li ul li:hover > span { color: #000000; }

ul.navegacion li ul li ul { width: 190px; top: 0px; left: 190px; }
ul.navegacion li ul li ul li a, 
ul.navegacion li ul li ul li span { }
ul.navegacion li ul li ul li:hover { background: #efefef; }

div.botones-navegacion { display: none; }

@media screen and (max-width: 1150px) {
	ul.navegacion { float: left; position: absolute; z-index: 2; top: 70px; right: 10px; 
	background: #fdfdff; border: thin solid #444444; border-radius: 0px; }
	ul.navegacion li { display: block; float: none; }
	ul.navegacion li a, 
	ul.navegacion li span { display: block; padding: 10px 14px;  }
	ul.navegacion li:hover > ul { display: block; }
	ul.navegacion li:hover { background: none; }
	ul.navegacion li:hover > a,
	ul.navegacion li:hover > span { color: #111111; }
	
	ul.navegacion li ul { display: block; position: relative; width: 100%; background: none; border: none; box-shadow: none; }
	ul.navegacion li ul li { display: block; float: none; background: none; }
	ul.navegacion li ul li a,
	ul.navegacion li ul li span { display: block; padding: 10px 20px; }
	ul.navegacion li ul li:hover > ul { display: block; }
	ul.navegacion li ul li:hover { background: none; }
	ul.navegacion li ul li:hover > a,
	ul.navegacion li ul li:hover > span { display: block; }
	
	ul.navegacion li ul li ul { display: block; position: relative; width: 100%; left: 0; background: #3d3d3d; }
	ul.navegacion li ul li ul li a, 
	ul.navegacion li ul li ul li span { display: block; padding: 10px 26px; font-size: 14px; color: #fff; }
	ul.navegacion li ul li ul li:hover { background: none; }
}

/* LATEREAL */

aside { }
aside .caja > header { padding: 0px 14px; }
aside .caja > header h3 { font-size: 16px; margin: 8px 0px; }
aside .caja > header h3 > a { text-decoration: none; }

/* Vertical */

ul.vertical { margin: 0; padding: 0; list-style-type: none;  }
ul.vertical li { border-bottom: thin solid #cccccc; }
ul.vertical li:last-child { border-bottom: none; }
ul.vertical a { display: block; padding: 12px 14px; text-decoration: none; line-height: 23px; }
ul.vertical a.actual { background: #5f8ab6; color: white; }

/* Ubicación */

div.ubicacion { padding: 7px 6px; }

ul.ubicacion { list-style-type: none; margin: 0; padding: 0; font-size: 14px; letter-spacing: .02em; }
ul.ubicacion li { display: block; float: left; }
ul.ubicacion li i { margin: 0 8px; }

ul.ubicacion li a { text-decoration: none; }
ul.ubicacion li a:hover {  }

/* ----------- */
/* Maquetación */
/* ----------- */

#navegacion {  }
#navegacion .caja { margin: 0; padding: 0; border: none; }
#navegacion .caja .contenido { }
#navegacion .caja .contenido { position: relative; padding: 15px 16px; }
#navegacion .caja .contenido img { display: block; margin: 0; padding: 0; }

@media screen and (max-width: 1150px) {
	#navegacion .col-1de2 { float: left; width: 50%; }
	#navegacion .col-2de2 { float: left; width: 50%; }
	
	#navegacion .col-1de2d1 { float: left; width: 50%; }
	#navegacion .col-2de2d0 { float: left; width: 50%; }

	#navegacion .col-1de2d0 { float: left; width: 50%; }
	#navegacion .col-2de2d1 { float: left; width: 50%; }
}
@media screen and (max-width: 900px) {
	
}
@media screen and (max-width: 600px) {
	
}

#ubicacion { background: #4a7aaa; padding: 1px; color: #fff; }
#ubicacion .caja { border: thin solid transparent; margin: 5px 10px; }
#ubicacion .caja header { border-bottom: thin solid #5080b0; }
#ubicacion header { padding: 0; }
#ubicacion h1 { margin: 5px 5px; color: #f7f7f7; }
#ubicacion h2 { margin: 5px 5px; font-size: 30px; line-height: 39px; color: #f5f5f5; }
#ubicacion a { color: #fff; }

#principal { background: #efefef; padding: 15px 0; }

#principal .caja { background: #ffffff; border: thin solid #cccccc; }
#principal .caja header { border-bottom: thin solid #cccccc; }
#principal .caja .contenido img { max-width: 100%; height: auto; }

#principal .caja footer { border-top: thin solid #cccccc; display: grid; grid-template-columns: 33.33% 33.33% 33.33%; }
#principal .caja footer > div { padding: 24px 20px; display: flex; justify-content: center; }
#principal .caja footer > div:nth-child(1) { justify-content: flex-start; }
#principal .caja footer > div:nth-child(3) { justify-content: flex-end; }

@media screen and (max-width: 454px) {
	#principal .caja footer { grid-template-columns: auto; }
	#principal .caja footer > div:nth-child(1) { justify-content: center; padding-bottom: 10px; }
	#principal .caja footer > div:nth-child(3) { justify-content: center; padding-top: 10px;}
}

#principal article picture { margin: 16px 0px 0px 16px; }
#principal article picture img { width: 100%; padding: 25px 22px 0 8px; }

#principal #anidados div.contenido { position: relative; padding: 10px 20px; }
#principal #anidados h2 { font-size: 26px; margin: 15px 0px; }
#principal #anidados h2 a { color: #00c; line-height: 37px; }
#principal #anidados h2 a:hover { color: #000093; }

#principal #paginacion-cat .boton { margin: 6px; padding: 9px 15px; }
#principal #paginacion-cat .actual { background: #58b; border-color: #3366bb; color: red; }

#principal #paginacion-art {  }
#principal #paginacion-art .col-1de3 { text-align: left; }
#principal #paginacion-art .col-2de3 { text-align: center; }
#principal #paginacion-art .col-3de3 { text-align: right; }

@media screen and (max-width: 1150px) {
	/* Principal */
	#principal .col-1de2d0 { float: left; width: 33%; }
	#principal .col-2de2d1 { float: left; width: 67%; }
	
	/* Paginación */
	#principal #paginacion-art .col-1de3 { width: 33.33%; text-align: left; }
	#principal #paginacion-art .col-2de3 { width: 33.33%; text-align: center; }
	#principal #paginacion-art .col-3de3 { width: 33.33%; text-align: right; }
}

@media screen and (max-width: 518px) {
	/* Principal */
	#principal .col-1de2d0 { float: left; width: 100%; }
	#principal .col-2de2d1 { float: left; width: 100%; }
	
	#principal article div.imagen { margin: 14px; }
	
	/* Anidados */
	#principal #anidados .col-1de2d0 { float: left; width: 100%; }
	#principal #anidados .col-2de2d1 { float: left; width: 100%; }
	
	#principal #anidados div.imagen { margin: 14px; }
	
	/* Paginación */
	#principal #paginacion-art .col-1de3 { width: 100%; text-align: center; }
	#principal #paginacion-art .col-2de3 { width: 100%; text-align: center; }
	#principal #paginacion-art .col-3de3 { width: 100%; text-align: center; }
}

/* Noticias */
ul.publicacion_noticias { list-style-type: none; padding-left: 1px; }
ul.publicacion_noticias li { display: inline; padding-right: 6px; }
ul.publicacion_noticias li i { padding-right: 5px; }

/* PIE DE PAGINA */

#pie { padding: 20px 0; background: #444444; color: #bbbbbb; }

#pie .caja { border: thin solid #606060; }
#pie .caja header { border-bottom: thin solid #606060; }

#pie h3 { margin: 11px 0px; font-size: 18px; color: #bbbbbb; }
#pie a { color: #bbbbbb; }
#pie a.actual { color: #5eaeae; }
#pie a:hover { color: #ffffff; }

/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

:root {
	--menu-nav-fondo: #f6f6f6;
	--ventana-borde: 1px solid #ccc;
	
	--contenido-espaciado: 16px;
	
	--piedepagina-color: #bbb;
}

.modal { display: none; position: fixed; top: 0; bottom: 0; left: 0; right: 0; z-index: 10;
justify-content: center; align-items: center;
background-color: #000b; font-size: 16px; color: #fff; }
.modal a { color: #fff; }
.modal > button { position: absolute; top: 20px; right: 20px; z-index: 11; }

.ventana { max-width: 100%; background-color: #fff; color: #222; border: var(--ventana-borde); border-radius: 5px; }
.ventana a { color: #222; text-decoration: none; }
.ventana > header { display: flex; justify-content: space-between; align-items: center; border-bottom: var(--ventana-borde); }
.ventana > header > * { margin: 7px; }

.ventana > nav { }
.ventana > nav ul { list-style-type: none; margin: 0px; padding: 0px; }
.ventana > nav a { display: block; padding: 6px 11px; }
.ventana > nav a:hover { background-color: #eee; }
.ventana > nav a:last-child { border-radius: 0px 0px 5px 5px; }

/* tablas */

table.cebra { width: 100%; max-width: 100%; border-collapse: collapse; border-spacing: 0; border: thin solid #c7c7c7; word-break: keep-all; }
table.cebra th { padding: 6px 6px; background-color: #f0f0f0; border-bottom: thin solid #c7c7c7; font-size: 14px; color: #333; }
table.cebra td { padding: 8px 8px; text-align: left; }
table.cebra tr {  }
table.cebra tbody tr:nth-child(even) { background-color: #fafafa; }

@media screen and ( min-width: 1500px ){
	table.cebra { width: auto; }
}

@media screen and ( max-width: 750px ){
	table.cebra thead th,
	table.cebra tbody td, 
	table.cebra tbody tr { display: block; } 
	table.cebra tbody tr { border-bottom: 1px solid #c7c7c7; padding: 4px 0px; }
	table.cebra tbody tr:last-child { border-bottom: none; }
}

#encabezado { display: grid; grid-template-columns: auto auto; justify-content: space-between; background-color: #fff; }
#encabezado > #logo { display: flex; align-items: center; padding: 0px 15px; }
#encabezado > #logo > a { }
#encabezado > #logo > a > img { display: block; max-height: 43px; }

#encabezado > #nav { display: flex; justify-content: flex-end; align-items: center; padding: 20px 17px; }
#encabezado > #nav > nav { background-color: #fbfbfb; background: linear-gradient( #fcfcfc, #f9f9f9 ); border: 1px solid #dcdcdc; border-radius: 5px; font-size: 14px; }
#encabezado > #nav > nav > ul { display: flex; list-style-type: none; margin: 0px; padding: 0px; font-size: 16px; }
#encabezado > #nav > nav > ul > li {  }
#encabezado > #nav > nav > ul > li > a { display: block; padding: 10px 18px; color: #333; text-decoration: none; }
#encabezado > #nav > nav > ul > li > a.actual { background-color: #f3f3f3; }
#encabezado > #nav > nav > ul > li > a:hover { background-color: var(--menu-nav-fondo); }
#encabezado > #nav > nav > ul > li:first-child > a { border-radius: 5px 0px 0px 5px; }
#encabezado > #nav > nav > ul > li:last-child > a { border-radius: 0px 5px 5px 0px; }

#encabezado > #nav > button { display: none; }

@media screen and ( max-width: 1050px ){
	#encabezado > #logo > a > img { max-height: 41px; }
	#encabezado > #nav > button { display: block; }
	#encabezado > #nav > nav { display: none; }
}

/* Migas */

#encabezado > #migas { grid-column: 1 / 3; 
padding: 8px 20px; background-color: #5f8ab6; border-top: 1px solid #66c; border-bottom: 1px solid #66c;  }
#encabezado > #migas a { color: #fff; }

#encabezado > #migas > ul.ubicacion { display: flex; flex-wrap: wrap;
font-size: 15px; letter-spacing: .3px; color: #fff; text-shadow: 1px 1px #000; }
#encabezado > #migas > ul.ubicacion { list-style-type: none; margin: 0; padding: 0; }
#encabezado > #migas > ul.ubicacion li { display: block; float: none; margin: 3px 0px; }

#encabezado > #migas > ul.ubicacion li a { text-decoration: none; }
#encabezado > #migas > ul.ubicacion li a:hover { color: #fff; text-decoration: underline; }

#encabezado > #migas > ul.ubicacion li > * { margin: 0 10px 0 0; }

/* TEMPORAL, debe aplicar a todo el archivo css
se establece en cada maquetacion para evitar conflictos con la versión antigua. */
/* #contenido a { font-family: sans-serif; font-size: 16px; } */
#contenido picture { display: flex; justify-content: center; align-items: center; }
#contenido picture > img { display: block; margin: 0px; padding: 0px; max-width: 100%; height: auto; }
#contenido .intro picture > img { max-height: 73px; }

#contenido table { overflow: auto; }

/* Contenido Principal */

#contenido { display: grid; grid-gap: var(--contenido-espaciado); padding: var(--contenido-espaciado);
background-color: #eee; }

#contenido.grid-1 { grid-template-columns: auto; }
#contenido.grid-2 { grid-template-columns: auto 360px; }

/* Grid 3 */

@media screen and ( max-width: 1100px ){
	#contenido .caja1 .grid-3 { grid-template-columns: auto auto; }
}
@media screen and ( max-width: 750px ){
	#contenido .caja1 .grid-3 { grid-template-columns: auto; }
}

#contenido > * { overflow: auto; }

h1, h2, h3, h4, h5, h6 { margin: 20px 0px; color: #505050; }

h1, h1 a { font-size: 28px; line-height: 36px; }
h2, h2 a { font-size: 26px; line-height: 35px; }
h3, h3 a { font-size: 22px; }
h4, h4 a { font-size: 18px; }
h5, h5 a { font-size: 12px; }
h6, h6 a { font-size: 10px; }

header h1,
header h2,
header h3,
header h4,
header h5,
header h6 { margin: 0; }

#contenido h1 a,
#contenido h2 a,
#contenido h3 a,
#contenido h4 a,
#contenido h5 a,
#contenido h6 a { text-decoration: none; }
#contenido h1 a:hover,
#contenido h2 a:hover,
#contenido h3 a:hover,
#contenido h4 a:hover,
#contenido h5 a:hover,
#contenido h6 a:hover { color: #00f; }

/* Main */

#contenido main { }
#contenido main > * { margin-bottom: var(--contenido-espaciado); }
#contenido main > *:last-child { margin-bottom: 0px; }

#contenido main > div.anidados > * { margin-bottom: var(--contenido-espaciado); }
#contenido main > div.anidados > *:last-child { margin-bottom: 0px; }

.contenido-codigo { }
.contenido-codigo .referencias { font-size: 14px; line-height: 32px; }
.contenido-codigo .referencias a { text-decoration: none; }
.contenido-codigo .referencias a:hover { text-decoration: underline; }
.contenido-codigo .referencias.columnas-2 { column-count: 2; }
.contenido-codigo .referencias.columnas-3 { column-count: 3; }

@media screen and ( max-width: 850px ){
	.contenido-codigo .referencias.columnas-2 { column-count: 1; }
	.contenido-codigo .referencias.columnas-3 { column-count: 2; }
}

@media screen and ( max-width: 650px ){
	.contenido-codigo .referencias.columnas-3 { column-count: 1; }
}

/* Lateral */

#contenido #lateral {  }
#contenido #lateral > * { margin-bottom: var(--contenido-espaciado); }
/* #contenido #lateral > *:last-child { margin-bottom: 0px; } */

#contenido #lateral { }

/* Clases */

.caja1 { background-color: #fff; border: var(--ventana-borde); border-radius: 7px; }
.caja1 > * { padding: var(--contenido-espaciado); border-bottom: var(--ventana-borde); }
.caja1 > *:last-child { border-bottom: none; }

.caja1 > header { padding: 14px var(--contenido-espaciado); }

.caja1 > div { padding: var(--contenido-espaciado); }
.caja1 > div > * { margin: 22px 0px; }
.caja1 > div > *:first-child { margin-top: 0px; }
.caja1 > div > *:last-child { margin-bottom: 0px; }

.caja1 > div ul,
.caja1 > div ol { padding-left: 30px; }

.caja1 > div > h2 { margin: 24px 0px; }
.caja1 > div > h3 { margin: 23px 0px; }
.caja1 > div > h4 { margin: 22px 0px; }
.caja1 > div > h5 { margin: 21px 0px; }
.caja1 > div > h6 { margin: 20px 0px; }

.caja1 > .intro { display: grid; grid-template-columns: auto; grid-gap: var(--contenido-espaciado); }
.caja1 > .intro > div > * { margin: 10px 0px; }
.caja1 > .intro > div > *:first-child { margin-top: 0px; }
.caja1 > .intro > div > *:last-child { margin-bottom: 0px; }
.caja1 > .intro > * { margin: 0px; }

.caja1 ul.datos { list-style-type: none; padding-left: 0px; font-family: sans-serif; font-size: 15px; }
.caja1 .intro ul.datos { margin-top: 0px; }
.caja1 ul.datos i { margin: 5px; }
.caja1 ul.datos i:first-child { margin-left: 0px; }

.caja1 > .intro.imagen { grid-template-columns: 110px auto; }
/* .caja1 > .intro.imagen img { max-height: 140px; } */
.caja1 > .intro .leer-mas { text-align: right; }

/* Navegación Lista */

.caja1 > nav { padding: 0px; }

.caja1 > nav ul.vertical { margin: 0; padding: 0; list-style-type: none; }
.caja1 > nav ul.vertical li { border-bottom: thin solid #cccccc; }
.caja1 > nav ul.vertical li:last-child { border-bottom: none; }
.caja1 > nav ul.vertical > li:last-child > a { border-radius: 0px 0px 7px 7px; }
.caja1 > nav ul.vertical a { display: block; padding: 14px var(--contenido-espaciado); text-decoration: none;font-size: 14px; line-height: 21px; }
.caja1 > nav ul.vertical a:hover { background: #f5f5f9;; }
.caja1 > nav ul.vertical a.actual { background: #5f8ab6; color: #fff; text-shadow: 1px 1px 1px #555; }


.caja1 > div.publicidad { padding: 1px; min-height: 33px; }
.caja1 > div.publicidad > * { margin: 11px 0px; }

.caja1 ul ul { margin: 0px; }
.caja1 pre { line-height: 24px; }

.caja1 blockquote { background-color: #ffd; padding: 0px 14px; border: 1px solid #cc9; border-radius: 5px; }
.caja1 blockquote > * { margin: 10px 0px; }

.caja1 hr { border: var(--ventana-borde); border-bottom: none; }

/* Noticias */

/* .articulos-noticias p, 
.categorias-noticias p,
.articulos-noticias ul { font-family: serif; font-size: 19px; } */
.articulos-contenidos > div a:hover { text-decoration: underline; }

/* Lectura */

.lectura p,
.lectura ul,
.lectura ol { font-family: serif; font-size: 20px; }
.lectura strong { font-family: sans-serif; font-size: 16px; }
.lectura code { font-size: 17px; }

.caja1 > div .grid-3 { display: grid; grid-template-columns: auto auto auto; grid-gap: 15px; }

.caja1 > footer { padding: 8px; }
.caja1 > footer > div > * { margin: 8px; }

/* Anidados */

.anidados .caja1 > footer { padding: 6px; }
.anidados .caja1 > footer > div:first-child { margin-left: 3px; }
.anidados .caja1 > footer > div > * {  }

.caja1 > footer > div { text-align: center; }

.caja1 > footer.grid-1 { display: grid; grid-template-columns: auto; }

.caja1 > footer.grid-2 { display: grid; grid-template-columns: 50% 50%; }
.caja1 > footer.grid-2 > div:first-child { display: flex; justify-content: flex-start; align-items: center; }
.caja1 > footer.grid-2 > div:last-child { text-align: right; }

.caja1 > footer.grid-3 { display: grid; grid-template-columns: 33.33% 33.33% 33.33%; }
.caja1 > footer.grid-3 > div { text-align: center; }
.caja1 > footer.grid-3 > div:first-child { text-align: left; }
.caja1 > footer.grid-3 > div:last-child { text-align: right; }

@media screen and ( max-width: 1100px ){
	#contenido.grid-2 { grid-template-columns: auto; }
	#contenido #lateral { display: grid; grid-template-columns: 50% 50%; }
	
	#contenido #lateral > *:nth-child(odd) { padding-right: 10px; }
	#contenido #lateral > *:nth-child(even) { padding-left: 10px; }
	
	#contenido #lateral > *:nth-last-child(2) { margin-bottom: 0px; }
}

@media screen and ( max-width: 750px ){	
	/* #contenido #lateral { display: grid; grid-template-columns: auto; } */
	#contenido #lateral { display: block; }
	#contenido #lateral > *:nth-child(odd) { padding-right: 0px; }
	#contenido #lateral > *:nth-child(even) { padding-left: 0px; }
	#contenido #lateral > *:nth-last-child(2) { margin-bottom: var(--contenido-espaciado); }
}

@media screen and ( max-width: 600px ){	
	.caja1 > .intro.imagen { grid-template-columns: auto; }
	:root {
		--contenido-espaciado: 15px;
	}	
}

@media screen and ( max-width: 500px ){
	.caja1 > footer.grid-2 { display: grid; grid-template-columns: auto; }
	.caja1 > footer.grid-3 { display: grid; grid-template-columns: auto; }
}

/* Pie de Página */

#piedepagina { display: grid; grid-template-columns: auto auto auto auto; justify-content: space-between; 
padding: 16px; padding-right: 100px; background-color: #333; font-size: 14px; color: var(--piedepagina-color); }
#piedepagina > * { padding: 10px; }
#piedepagina a { color: var(--piedepagina-color); text-decoration: none; }
#piedepagina a:hover { color: orange; }

#piedepagina h1, 
#piedepagina h2, 
#piedepagina h3, 
#piedepagina h4, 
#piedepagina h5, 
#piedepagina h6 { margin: 0px; color: var(--piedepagina-color); }

#piedepagina h3,
#piedepagina h3 a { font-size: 16px; }
#piedepagina ul { margin: 4px 0px 0px; padding-left: 14px; }
#piedepagina li { line-height: 25px; }

@media screen and ( max-width: 1050px ){
	#piedepagina { grid-template-columns: auto auto auto; }
}

@media screen and ( max-width: 950px ){
	#piedepagina { grid-template-columns: auto auto; }
}

@media screen and ( max-width: 750px ){
	#piedepagina { grid-template-columns: auto; }
}

/* Buscar */

#contenido .contenido .gsc-control-cse .gs-spelling, 
#contenido .contenido .gsc-control-cse .gs-result .gs-title, 
#contenido .contenido .gsc-control-cse .gs-result .gs-title * { font-size: 19px; margin-bottom: 3px; }

.publicidad-google { background-color: #eee; text-align: center; }
.publicidad-google.banner { padding-top: 45px; }
