@charset "utf-8";

/* IMPORTACIÓN DE TIPOGRAFÍAS. */
@font-face {
	font-family: 'Aestetico Formal';
	font-weight: normal;
	font-style: normal;
	font-display: swap;
	src: url('../fonts/AesteticoFormal-Regular.ttf') format('truetype');
}

@font-face {
	font-family: 'Aestetico Formal';
	font-weight: 200;
	font-style: normal;
	font-display: swap;
	src: url('../fonts/AesteticoFormal-Light.ttf') format('truetype');
}

@font-face {
	font-family: 'Aestetico Formal';
	font-weight: bolder;
	font-style: normal;
	font-display: swap;
	src: url('../fonts/AesteticoFormal-Black.ttf') format('truetype');
}

@font-face {
	font-family: 'Calicanto';
	font-weight: normal;
	font-style: normal;
	font-display: swap;
	src: url('../fonts/Calicanto-Regular.ttf') format('truetype');
}

* {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

html {
    --top-spacing: 100px;
    scroll-padding-top: var(--top-spacing);
  }

body {
	font-family: 'Aestetico Formal', sans-serif;
	background: #fafafa !important; 
	margin-top: 60px;
	/* margin: 0;
	padding: 0; */
}

main {
	font-weight:200;
	margin: 0;
	padding: 0;

}

.menu{
	background-color: #202556;
	color: #ffffff;
}

/* ESTILOS PÁGINA PRESENTACIÓN */
/* .portada-principal {
	align-items: center;
	background-color: #000000;
	border-radius: 15px;
	color: #ffffff;
	display: flex;
	font-family: "Aestetico Formal";
	font-weight: bolder;
	justify-content: center;
	margin: .5em auto;
	height: 98vh;
	overflow: hidden;
	padding: 1em;
	position: relative;
	width: 98%;
	z-index: 0;
}

.portada-principal::before {
	background-color: #000000;
	opacity: 0.3;
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: -1;
}

.portada-principal-encabezado {
	z-index: 10;
}

@media screen and (min-width: 1200px) {
	.portada-principal-slider {
		display: flex;
		align-items: center;
		justify-content: center;
		z-index: -99;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		width: 100%;
		height: 100%;
		overflow: hidden;
	}

	.portada-principal-slider {
		height: 120%;
		width: 120%;
	}
}
@media screen and (min-width: 0) and (max-width: 1199px) {

	.portada-principal-slider {
		display: flex;
		align-items: center;
		justify-content: center;
		z-index: -99;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		width: 100%;
		height: 100%;
		overflow: hidden;
	}

	.portada-principal-slider {
		height: 100%;
		width: auto;
	}
} */

/* Botones en la página principal. */

.botones-principal {
	margin: 0px;
	padding: 0px;
	/* background-color: rgba(0, 0, 0, 0.8);  */
	width: 100%;
	/* z-index: 0; */
}

.botones-principal ul {
	color: #ffffff;
	font-family: "Aestetico Formal";
	font-weight: normal;
	list-style: none;
	margin: 0;
	padding: 0;
	text-align: center;
	z-index: 1;
}

.botones-principal ul #fondo-san-ignacio,
.botones-principal ul #fondo-santa-rosalia,
.botones-principal ul #fondo-mulege,
.botones-principal ul #fondo-guerrero-negro {
	border-radius: 5px;
	display: inline-block;
	overflow: hidden;
	position: relative;
	box-shadow: 2px 2px 2px 2px rgba(0, 0, 0, 0.2);
	z-index: 2;
}

.botones-principal ul #fondo-san-ignacio::before,
.botones-principal ul #fondo-santa-rosalia::before,
.botones-principal ul #fondo-mulege::before,
.botones-principal ul #fondo-guerrero-negro::before {
	align-items: center;
	content: "";
	display: flex;
	justify-content: center;
	margin: 0;
	opacity: 0.6;
	padding: 0;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	visibility: 1;
	z-index: -1;
}

/* .botones-principal ul #fondo-san-ignacio::before { background-color: #eba600; }
.botones-principal ul #fondo-santa-rosalia::before { background-color: #d85836; }
.botones-principal ul #fondo-mulege::before { background-color: #569f3b; }
.botones-principal ul #fondo-guerrero-negro::before { background-color: #5a7cb0; } */

.botones-principal ul li a {
	color: #ffffff;
	display: flex;
	align-items: end;
	justify-content: left;
	padding: 1em;
	text-decoration: none;
	/* background:  rgba(0, 0, 0, .4); */
	background-image: linear-gradient(to bottom, rgba(255, 0, 0, 0),rgba(0, 4, 255, 0), rgba(0, 0, 0, 0.6));
	text-shadow:   2px 2px 4px black, 0 0 1em black
}

@media screen and (min-width: 1400px){
	.botones-principal {
		min-height: 5em;
		padding: 0;
	}
	
	.botones-principal ul {
		margin: 0;
		padding: 0;
	}
	
	.botones-principal ul li {
		height: 10em;
		width: 24%;
	}
	
	.botones-principal ul li a {
		height: 100%;
		width: 100%;
	}
}

@media screen and (min-width: 577px) and (max-width: 1399px){
	.botones-principal {
		min-height: 5em;
		padding: 0;
		margin: 0;
	}
	
	.botones-principal ul {
		margin: 0;
		padding: 0;
	}
	
	.botones-principal ul li {
		height: 10em;
		margin: .2em;
		padding: 0;
		width: 24%;
	}
	
	.botones-principal ul li a {
		height: 100%;
		width: 100%;
	}
}

@media screen and (min-width: 0) and (max-width: 576px){
	.botones-principal {
		min-height: 5em;
		padding: 0;
	}
	
	.botones-principal ul {
		margin: 0;
		padding: 0;
	}
	
	.botones-principal ul li {
		height: 10em;
		margin: 0.2em;
		width: 98%;
	}
	
	.botones-principal ul li a {
		height: 100%;
		width: 100%;
	}
}

#fondo-san-ignacio {
	background: url("../img/botones_inicio/san_ignacio.webp") no-repeat center / cover;
}

#fondo-santa-rosalia {
	background: url("../img/botones_inicio/santa_rosalia.webp") no-repeat center / cover;
}
#fondo-mulege {
	background: url("../img/botones_inicio/heroica_mulege.webp") no-repeat center / cover;
}
#fondo-guerrero-negro {
	background: url("../img/botones_inicio/guerrero_negro.webp") no-repeat center / cover;
}

/* ESTILOS PÁGINAS DE PUEBLOS */
/* 
.portada {
	padding: 1em;
	width: 100%;
	min-height: 100vh;
}

.portada-logo, .portada-slogan {
	align-items: center;
	display: flex;
	justify-content: center;
	width: 100%;
}

.portada-logo img {
	width: 100px;
	height: auto;
}

.portada-texto {
	font-family: 'Aestetico Formal', sans-serif;
	font-weight: bolder;
	text-align: center;
	width: 100%;
}

#portada-texto-1 { color: #226ab3; }
#portada-texto-2 { color: #226ab3; }
#portada-texto-3 { color: #000000; }
#portada-texto-4 { color: #202556; }

@media screen and (min-width: 576px) {
	#portada-texto-1 {
		font-size: 4rem;
		margin-bottom: -0.8em;
	}
	
	#portada-texto-2 {
		font-size: 6rem;
		margin-bottom: -0.45em;
	}
	
	#portada-texto-3 { font-size: 1.7rem; }
	#portada-texto-4 { font-size: 4rem; }
}

@media screen and (min-width: 361px) and (max-width: 575px) {
	#portada-texto-1 {
		font-size: 3rem;
		margin-bottom: -0.9em;
	}
	
	#portada-texto-2 {
		font-size: 5rem;
		margin-bottom: -0.4em;
	}
	
	#portada-texto-3 { font-size: 1.7rem; }
	#portada-texto-4 { font-size: 2.8rem; }	
}
@media screen and (min-width: 0) and (max-width: 360px) {
	#portada-texto-1 {
		font-size: 3rem;
		margin-bottom: -0.9em;
	}
	
	#portada-texto-2 {
		font-size: 5rem;
		margin-bottom: -0.4em;
	}
	
	#portada-texto-3 { font-size: 1.5rem; }
	#portada-texto-4 { font-size: 2.5rem; }	
}

.portada-iconos ul {
	list-style: none;
	margin: 0;
	text-align: center;
	padding: 0;
}

.portada-iconos ul li {
	display: inline-block;
}

@media screen and (min-width: 576px) {
	.portada-iconos { margin: 4em 0; }
}
@media screen and (min-width: 361px) and (max-width: 575px) {
	.portada-iconos { margin: 3em 0; }
}
@media screen and (min-width: 0) and (max-width: 360px) {
	.portada-iconos { margin: 3em 0; }
}

#portada-icono-1 {
	background-color: #eba700;
	display: inline-block;
	border-radius: 50%;
}

#portada-icono-2 {
	background-color: #d75634;
	display: inline-block;
	border-radius: 50%;
}

#portada-icono-3 {
	background-color: #587cb0;
	display: inline-block;
	border-radius: 50%;
}

#portada-icono-4 {
	background-color: #54a03b;
	display: inline-block;
	border-radius: 50%;
}

#portada-icono-5 {
	background-color: #e31b85;
	display: inline-block;
	border-radius: 50%;
}

@media only screen and (min-width: 576px) {
	.portada-iconos li {
		margin: 1em;
	}	
}
@media only screen and (min-width: 361px) and (max-width: 575px) {
	.portada-iconos li {
		margin: 1em;
		width: 112px;
		height: 112px;
	}
}
@media only screen and (min-width: 0) and (max-width: 360px) {
	.portada-iconos li {
		margin: 1em;
		width: 96px;
		height: 96px;
	}
}

.portada-slogan img {
	width: 300px;
	height: auto;
} */

.footer {
	align-items: center;
	background-color: #202556;
	color: #ffffff;
	display: flex;
	font-family: "Aestetico Formal";
	font-weight: 200;
	min-height: 4em;
	justify-content: center;
	text-align: center;
}

@media screen and (min-width: 576px) {
	.footer { font-size: 2rem; }	
}

@media screen and (min-width: 361px) and (max-width: 575px) {
	.footer { font-size: 1.5rem; }	
}

@media screen and (min-width: 0) and (max-width: 360px) {
	.footer { font-size: 1rem; }	
}

/* MENÚ PRINCIPAL */

/* .menu-contenedor {
	font-family: "Aestetico Formal";
	font-weight: normal;
	top: 0;
	z-index: 999;
}

.menu-contenedor ul {
	padding: 0;
	margin: 0;
	list-style: none;
}

.menu-contenedor a {
	transition: .3s;
}

.menu-contenedor span {
	cursor: default;
}

@media only screen and (min-width: 1200px) {
	.menu-contenedor {
		background-color: #202556;
		border: 1px solid #202556;
		min-height: 3em;
		line-height: 3em;
		margin-bottom: 0;
		position: sticky;
		text-align: center;
		width: 100%;
	}

	.menu-principal li {
		display: inline-block;
	}

	.menu-contenedor a,
	.menu-contenedor span {
		color: #FFFFFF;
		text-decoration: none;
		display: block;
		height: 3em;
		min-width: 20px;
		padding: 0 .5em;
	}

	.menu-contenedor a:hover,
	.menu-contenedor span {
		background-color: #226ab3;
		color: #FFFFFF;
	}

	.menu-principal li > .submenu {
		background-color: #FFFFFF;
		box-shadow: 0 0 10px rgba(0, 0, 0, .5);
		padding: 0;
		position: absolute;
		top: 3em;
		transition: 0.5s;
		visibility: hidden;
		opacity: 0;
	}

	.menu-principal li:hover > .submenu {
		visibility: visible;
		opacity: 1;
	}

	.submenu {
		max-width: 500px;
		min-width: 50px;
		min-height: 3em;
		max-height: 9em;
		margin: 0;
		padding: 0;
	}

	.submenu li {
		display: block;
		text-align: left;
	}

	.menu-button {
		display: none;
	}
}

@media only screen and (min-width: 0) and (max-width: 1199px) {
	.menu-contenedor {
		background-color: #FFFFFF;
		border: 1px solid #202556;
		width: 50px;
		height: 50px;
		line-height: 50px;
		overflow: hidden;
		position:fixed;
		transition: .5s;
	}

	.menu-contenedor:hover {
		overflow: auto;
		width: 70%;
		height: 70%;
	}

	.menu-principal a,
	.menu-principal span {
		background-color: #FFFFFF;
		border-width: 1px 0;
		border-style: solid;
		border-color: #FFFFFF;
		color: #202556;
		display: block;
		height: 50px;
		padding: 0 .5em;
		text-decoration: none;
	}

	.menu-contenedor a:hover,
	.menu-contenedor span {
		background-color: #a0bcd8;
		border-width: 1px 0;
		border-style: solid;
		border-color: #202556;
		color: #FFFFFF;
	}

	.menu-button {
		align-items: center;
		justify-content: center;
		background-color: #202556;
		border: 1px solid #202556;
		display: flex;
		font-size: 3rem;
		height: 50px;
		width: 50px;
	}

	.menu-button img {
		height: 50px;
		width: 50px;
	}
} */

/* SLIDER */
/* .portada-principal-slider {
	overflow: hidden;
	width: 100%;
}

.slider-contenedor {
	display: flex;
	width: 100%;
}

.contenido-slider {
	align-items: center;
	background: #fff;
	display: flex;
	flex-shrink: 0;
	justify-content: space-around;
	width: 100%;
}

.contenido-slider:nth-child(2) {
	background: #54a03b;
	color: #fff;
}

.contenido-slider:nth-child(3) {
	background: #eba600;
}

.contenido-slider:nth-child(4) {
	background: #d85836;
}

.contenido-slider>img {
	width: 100%;
}

.contenido-slider>div {
	width: 40%;
}

.contenido-slider h2 {
	font-weight: 300;
	line-height: 30px;
	text-align: justify;
}

.contenido-slider a {
	background: #332863;
	border-radius: 3px;
	color: #fff;
	display: block;
	margin-top: 20px;
	padding: 15px 0;
	text-align: center;
	text-decoration: none;
	width: 100px;
}

.contenido-slider:nth-child(2) a {
	background: #fff;
	color: #332863;
}

@media screen and (min-width:1200px) {  
	.contenido-slider {
		height: 100%;
	}
	.contenido-slider>img {
		width: 100%;
	}
	
	.contenido-slider>div {
		width: 40%;
	}

	.contenido-slider h2 {
		font-size: 1.4rem;
	}
}

@media screen and (min-width: 0) and (max-width:1199px) {  
	.contenido-slider {
		display: flex;
		align-items: center;
		justify-content: center;
		height: 100%;
		width: 100%;
		overflow: hidden;
		margin: 0;
		padding: 0;
	}
	
	.contenido-slider>img {
		width: auto;
		height: 100%;
	}
	
	.contenido-slider>div {
		width: 40%;
	}

	.contenido-slider h2 {
		font-size: 1.4rem;
	}
} */