/* CSS Document 						*/
/* Estructural de cada pĂˇgina 			*/
/* Reset mínimo */
*, *::before, *::after {
	box-sizing: border-box;
}
body {
	font-family: 'Montserrat', system-ui, sans-serif;
	line-height: 1;
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	border: 1px solid lightgray;
	background-image:url('/common/img/WaterMark.jpg');
}
/* Contenedor principal, para centrar las páginas al viewport, y limitar su ancho */
:root {
  --max-page-width: 1400px;
/*  --page-padding: 24px;		*/
}
.pagecontainer {
  width: 100%;
  max-width: var(--max-page-width);
  margin: 0 auto;                /* ?? centra horizontalmente */
  padding: 0 var(--page-padding);
  box-sizing: border-box;
}
/* Header */
.siteHeader {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 10px 10px 10px 10px;
	background: white;		/* #141487 #000096 el azul del logo */
	position: relative;
}
.logo {
	font-size: 24px;
	font-weight:400;
}
.logoImagen {
  height: 80px;
  width: auto;
  display: block;
}
@media (max-width: 768px) {
  .logoImagen {
    height: 80px;
  }
}
.headerWhiteLine {
	position: absolute;
	top: 37%;          				/* lĂ­nea a la mitad del header */
	left: 0;
	width: 100%;
	height: 1px;
	background-color: #000096;
	z-index: 0;
}	
 /* Aseguramos que los textos y el logo estĂ©n sobre la lĂ­nea */
.divHeaderLogo,
.logo,
.logoTitleAndSubtitle {
	position: relative;
	z-index: 1;
}
/* Ajuste de logo + tĂ­tulos en fila */
.divHeaderLogo {
	display: flex;
	align-items: flex-start;	/* <--- Lleva verticalmente al tope el logo + textos */
	gap: 0.75rem;
}
/* Nombre del Club en el Header */
.logoTitleAndSubtitle {
	line-height: 1.2;
}
.logoTitle {
	font-size: 24px;
	font-weight: bold;
	color:#000096;
}
.logoSubtitle {
	font-size: 14px;
	font-weight: bold;
	color: #000096;
}
.navMenu a {
	font-size: 14px;
	font-weight: bold;
	margin-left: 14px;
	color: #000096;
}
/* home */
.siteMain {
	background: white;
	padding: 10px 10px 10px 10px;
}
.sectionMain {
/*	border-top: 1px solid gray;		*/
	padding: 0px 0px 10px 0px;		
}
.sectionText {
	border-top: 1px solid gray;
}
.tablaTools {
	border-collapse: collapse;
	padding: 6px 0px 0px 0px;
	margin: 0px 0px 0px 0px;
}
/*--------------------------------------------------------------------------------------
   Contenedor Principal en pĂˇginas de contenidos.
   Arma una grilla de 8 columnas: una columna de "contenido" (divContent) de 7/8 fr (a 
   la izquierda) y otra columna de  "tools" (divTools) de 1/8 fr (a la derecha).
*/
.sectionMainContainer7x1 {
	display: grid;
	grid-template-columns: 7fr 1fr;
}
.sectionMainContainer7x1 > div {
  min-width: 0;
}
.sectionMainContainer8x0 {
}
.sectionMainContainer8x0 > div {
  min-width: 0;
}
.divContent {
	padding: 0px 0px 0px 0px;
}
.divTools {
	padding: 0px 0px 0px 0px;
/*	width: 155px;	*/
}
.divTools-inner {
  display: flex;
  align-items: flex-start; /* alinea arriba imagen y texto */
  gap: 3px;
}
.divTools-img {
 	padding: 0px 0px 0px 0px;
	width: 20px;      /* imagen angosta */
	vertical-align: top;
	text-align: left; 
	flex-shrink: 0;   /* evita que se achique */
}
.divTools-imgSeparador {
	width: 20px;
}
.divTools-tools {
/*	width: 100%;	*/
	padding: 0px 0px 0px 0px;
	font-size: 14px;
}
.divTools-titles {
	font-family: 'Montserrat', sans-serif;
	font-size: 12px;
	font-weight: normal;
	color: blue;
	text-align: left;
	padding: 0px 10px 0px 0px;
	margin: 3px 0px 0px 0px;
	border-bottom: 1px solid blue;
	display: block;
/*  	width: 100%;	*/
}
.divTools-IconText {
	display: flex;
	flex-wrap:nowrap;			/* no permite que bajen si no entran */
	align-items: flex-start;	
	gap:2px;
}
.divTools-icon {
	height:18px;
}
.divTools-text {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	font-weight: normal;
	color: blue;
	text-align: left;
	padding: 3px 0px 10px 0px
}
/*--------------------------------------------------------------------------------------
   Estilos para incrustar las imĂˇgenes en las pĂˇginas
   imgFull:   Es para las imĂˇgenes que van de lado a lado del texto (con y sin borde y 
              sombra, dependiendo de la imagen a mostrar).
   imgFloat:  Es para las imagenes chicas, que van flotaando a la derecha del texto (con 
              y sin borde y sombre, dependiendo de la imagen a mostrar).
   imgInline: Es para incrustar imĂˇgenes e iconos basados en imĂˇgenes, en la lĂ­nea de texto.
*/
.imgFull-div {
	padding: 6px 0px 0px 0px;
	margin: 6px 20px 0px 120px;
}
@media (max-width: 768px) {
  .imgFull-div {
		padding: 6px 0px 0px 0px;
		margin: 6px 20px 0px 20px;
  }
}
.imgFull-div-NoLeftMargin {
	padding: 6px 0px 0px 0px;
	margin: 6px 20px 0px 20px;
}
.imgFull-Box {
	display: block;
	width: 100%;
	height: auto;
	border: 1px solid gray;
	box-shadow:-5px 5px 5px gray;
}
.imgFull-LimitedCentered {
	max-width: 1000px;
	margin: 0 auto;
	height: auto;
}
.imgFull-Box-GMaps {
	display: block;
	width: 100%;
	height: 200px;
	border: 1px solid gray;
	box-shadow:-5px 5px 5px gray;
}
.imgFull-NoBox {
	display: block;
	width: 100%;
	height: auto;
}
.imgFloat-NoBox {				/* igual a Box*/
	float: right;
	max-width: 60%;        		/* seguridad responsive */
	padding: 6px 0px 0px 0px;
	margin: 0px 20px 0px 20px;
}
.imgFloat-Box {					/* iguala NoBox*/
	float: right;
	max-width: 60%;
	padding: 6px 0px 0px 0px;
	margin: 0px 20px 0px 20px;
}
@media (max-width: 768px) {
	.imgFloat-NoBox, .imgFloat-Box {
		float:none;
    	width: 100% !important;
		max-width: 90% !important;
		margin: 0px 20px 0px 20px;
  	}
}
.imgFloat-NoBox img {				/* SIN borde ni sombra*/
	width: 100%;
	height: auto;
	display: block;
}
.imgFloat-Box img {				/* CON borde ni sombra*/
	width: 100%;
	height: auto;
	display: block;
	border: 1px solid gray;
	box-shadow:-5px 5px 5px gray;
}
.imgFloat-Box-Rutas {
	float: right;
	width:500px;			/* Ancho común para imágenes de rutas */
	max-width: 40%;        	/* seguridad responsive */
	padding: 6px 0px 0px 0px;
	margin: 0px 20px 0px 20px;
}
.imgFloat-Box-Rutas img {
	width: 500px;
	height: auto;
	display: block;
	border: 1px solid gray;
	box-shadow:-5px 5px 5px gray;
}
/* responsive: quitar float en pantallas chicas */
@media (max-width: 768px) {
	.imgFloat-Box-Rutas, .imgFloat-Box-Rutas img {
		float: none;
    	width: 100%;
    	max-width: 90%;
		margin: 0px 20px 0px 20px;
  	}
}
.imgFloat-BoxAttn {
	float: right;
	max-width: 60%;        /* seguridad responsive */
	padding: 6px 0px 0px 0px;
	margin: 0px 0px 20px 20px;
}
.imgFloat-BoxAttn img {
	width: 100%;
	height: auto;
	display: block;
	border: 1px solid gray;
	box-shadow:-5px 5px 5px gray;
}
/* responsive: quitar float en pantallas chicas */
@media (max-width: 768px) {
  .imgFloat-BoxAttn {
    float: none;
    width: 100%;
    max-width: 100%;
    margin: 1rem 0;
  }
}
.imgInline {
	height: 16px;
	width: auto;
	vertical-align:bottom;
	padding: 0px 0px 0px 0px;
}
/*--------------------------------------------------------------------------------------
   Bloques de texto para mostrĂˇ codigos y fĂłrmulas, y el otro para mostrar texto 
   "literal".
*/
.blockCodigo {
	background-image: linear-gradient(to right, cyan, white, white);
	padding: 6px 0px 6px 0px;
	margin: 10px 20px 10px 120px;
	box-shadow: 3px 3px 5px gray;
	display: block;
}
@media (max-width: 768px) {
  .blockCodigo {
	margin-left: 20px;
	overflow-x: auto;
  }
}
.blockCodigo h4 {
	font-family: 'Lucida Console';
	font-size: 16px;
	font-weight: bold;
	color:black;
	padding: 3px 0px 0px 0px;
	margin: 0px 20px 0px 40px !important;
}
.blockCodigo p {
	font-family: 'Lucida Console';
	font-size: 16px;
	font-weight: bormal;
	color:black;
	padding: 3px 0px 0px 0px;
	margin: 0px 20px 0px 60px !important;
}
.tablaCodigo {
	font-family: 'Lucida Console';
	font-size: 16px;
	font-style: normal;
	border-collapse: collapse;
	padding: 0px;
	margin: 0px 0px 0px 60px;
}
@media (max-width: 768px) {
  .tablaCodigo {
	margin-left: 10px;
  }
}
.blockLiteral {
	font-family: 'Montserrat';
	font-size: 16px;
	font-weight: normal;
	font-style:italic;
	color:black;
	background-image: linear-gradient(to right, beige, white, white);
	padding: 6px 0px 6px 60px;
	margin: 10px 20px 10px 120px;
	box-shadow: 3px 3px 5px gray;
	display: block;
}
@media (max-width: 768px) {
  .blockLiteral {
	padding-left: 10px;
	margin-left: 10px;
  }
}
.blockLiteral p {
	margin-left: 0px;
}
.bulletsDiv {
	padding: 6px 0px 0px 0px;
	margin: 0px 20px 0px 120px;
}
@media (max-width: 768px) {
  .bulletsDiv {
	margin-left: 20px;
  }
}
.bulletsTable {
	border-collapse: collapse;
	width: 100%;
}
.bulletsIcon {
	width: 18px;
}
.bulletsText {
	padding-top: 3px;
	padding-left: 5px;
	vertical-align: top;
}
/*--------------------------------------------------------------------------------------
   Muestra el logo del CVPB al cierre de cada pĂˇgina.
*/
.logoPiePagina {
	display: block;
	width: 40px;
	margin: 6px 20px 6px 120px;
}
@media (max-width: 768px) {
  .logoPiePagina {
	margin-left: 20px;
  }
}
.gotoIcon {
	height:18px;
	vertical-align:text-bottom
}
/*--------------------------------------------------------------------------------------
   Clases del bot+on de bĂşsqueda.
*/
.headerNavBlock {
	display: flex;
	flex-direction: column;
	align-items: flex-end;	/* alinea todo a la derecha */
	margin-top: 30px;   	/* ajustĂˇ este valor */
	gap: 3px;
}
/* Buscador */
.headerSearch form {
	display: flex;
	align-items: center;
	gap: 2px;
	max-width: 100%;		/* agregada para soporte en smartphones */
}
.headerSearch input[type="text"] {
	height: 24px;
	padding: 4px 6px;
	font-family: 'Montserrat';
	font-size: 14px;
	line-height: 1;
	width: 222px;        	/* desktop */
	max-width: 100%;     	/* agregada para soporte en smartphones: lĂ­mite en mobile */
	box-sizing: border-box;	/* agregada para soporte en smartphones */
	flex: 1 1 auto;      	/* agregada para soporte en smartphones: permite encogerse */
}
.searchBtn {
	width: 24px;
	height: 24px;
	padding: 0;
/*	border: 1px solid #000096;	*/
	border: 0;
	background: none;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;   			/* đź”‘ agregada para soporte en smartphones */
}
.searchBtn img {
	width: 20px;     /* tamaĂ±o real de la lupa */
	height: 20px;
	display: block;
}
@media (max-width: 768px) {
	.headerNavBlock {
		align-items: stretch;   /* ocupa todo el ancho */
	}
	.headerSearch {
		width: 100%;
	}
	.headerSearch form {
		width: 100%;
	}
	.headerSearch input[type="text"] {
		width: 100%;            /* input ocupa lo disponible */
	}
}
/*--------------------------------------------------------------------------------------
   Clases del Footer.
*/
.siteFooter {
	font-family: 'Montserrat', system-ui, sans-serif;
	color:white;
	font-size: 14px;
	font-weight: bold;
	background-color: #141487;	/* color de fondo: azul del logo */
}
.siteFooter-Columnas {
	display: flex;
	flex-wrap: wrap;          /* permite que bajen si no entran */
	align-items: flex-start;
	gap: 0px;                /* espacio entre columnas */
}
.footerCol-WhereWeAre {
	white-space: nowrap;	/* el ancho se ajusta al contenido */
/*	max-width: 280px;	reemplazar "white-space" por esta si hay que limitar  ancho */
	margin: 6px 0px 0px 10px;	
}
.footerCol-Contactos {
	white-space: nowrap;	/* el ancho se ajusta al contenido */
/*	max-width: 280px;	reemplazar "white-space" por esta si hay que limitar  ancho */
	margin: 15px 0px 0px 10px;	
}
.footerCol-Legales {
	white-space: nowrap;	/* el ancho se ajusta al contenido */
/*	max-width: 280px;	reemplazar "white-space" por esta si hay que limitar  ancho */
	margin: 10px 0px 0px 20px;	
}
.footerCol-Historia {
	white-space: nowrap;	/* el ancho se ajusta al contenido */
/*	max-width: 280px;	reemplazar "white-space" por esta si hay que limitar  ancho */
	margin: 10px 0px 0px 20px;	
}
.footerCol-Cursos {
	white-space: nowrap;	/* el ancho se ajusta al contenido */
/*	max-width: 280px;	reemplazar "white-space" por esta si hay que limitar  ancho */
	margin: 10px 0px 0px 20px;	
}
.footerCopyright {
	font-size: 12px;
	font-weight: normal;
	margin: 10px 0px 0px 10px;	
}
.ulWhite {
	list-style: none;
	padding-left: 0px;
	margin-left: 30px;
	font-family: 'Montserrat', system-ui, sans-serif;
	font-size: 14px;
	font-weight: normal;
	color:white;
}
/* Items */
.ulWhite li {
  position: relative;
  margin-bottom: 0px;
}
/* Bullet â–¶ */
.ulWhite li::before {
 	font-size: 10px;
	content: "â–¶";
	position: absolute;
	margin-top:2px;
	left: 6px;
	color: white;
}
/* Enlaces dentro de la lista */
.ulWhite a,
.ulWhite a:link,
.ulWhite a:visited,
.ulWhite a:hover,
.ulWhite a:active,
.ulWhite a:focus {
  color: white;
  text-decoration: none;
}
/* Hover opcional (sutil, sin cambiar color) */
.ulWhite a:hover,
.ulWhite a:focus {
  text-decoration: underline;
}
.DateTime {
	float: right;
	text-align: right;
	z-index:10;
}
/*-----------------------------------------------------------------------------------------
   Lineas con iconos como bullets
*/
.bulletBlock {
	display: flex;
	flex-wrap:nowrap;          /* permite que bajen si no entran */
	align-items: flex-start;
	vertical-align: top;
	padding: 3px 0px 0px 0px;
	margin: 0px 0px 0px 140px;
}
@media (max-width: 768px) {
  .bulletBlock {
	margin-left: 20px;
  }
}
.bulletBlock-ColIcon {
	width: 25px;
	align-items: left;
	padding-top: 1px;
}
.bulletBlock-ImgIcon {
	height: 20px;
}
.bulletBlock-ColText {
	padding: 3px 0px 0px 5px;
}
.bulletBlock-ColText ul {
	margin-left: 6px;
}
.bulletBlock-ColText h4 {
	margin-left: 0px !important;
	margin-top: 0px !important;
	padding-top: 0px !important;
}
.bulletBlock-ColText p {
	margin-left: 0px;
	padding-top: 0px;
}
.bulletBlock-ColText-h4 {
	font-size:20px;
	font-weight: bold;
	margin:0px 0px 0px 4px;
	display: block;
}
.bulletBlock-ColText-p {
	font-size:16px;
	font-weight: normal;
	margin:3px 0px 0px 4px;
	display: block;
}
.bulletBlock-ColText-Titulo {
	font-family: 'Montserrat', sans-serif;
	font-size: 20px;
	font-weight: bold;
	color: black;
	text-align: left;
	padding-left: 6px;
}
/*-----------------------------------------------------------------------------------------
   Link a Notas Relacionadas
*/
.linkContainer {
	padding: 3px 0px 0px 5px;
	margin: 10px 20px 10px 20px;
	border-top: 1px solid gray;
	border-bottom: 1px solid gray;
	width:100%	
}
.linkBlock {
	display: flex;
	flex-wrap:nowrap;          /* permite que bajen si no entran */
	align-items: flex-start;
	padding:4px 9px 4px 0px;
}
.linkBlock-Header {
	font-size: 18px;
	font-weight: bold;
	padding:0px;
	margin:0px;
}
.linkBlock-ColImagen {
	padding:0px;
	margin:0px;	
}
.linkBlock-Imagen {
	width:85px;
	margin:2px 2px 2px 2px;
	border:1px solid gray; 
	box-shadow:-5px 5px 5px gray;
}
.linkBlock-Texto {
	font-size: 16px;
	font-weight: normal;
	padding:2px 2px 2px 10px;
}
/* Define la tabla pra los contacto sne Internet */
.tablaContactosCVPB {
	margin: 6px 0px 0px 140px;
	border-collapse: collapse;
}
@media (max-width: 768px) {
  .tablaContactosCVPB {
	margin-left: 20px;
  }
}
/* Margen default para todos los "goto icon" */
.defaultLeftMargin {
	margin-left: 120px;
}
@media (max-width: 768px) {
  .defaultLeftMargin {
	margin-left: 20px;
  }
}