/* =========================
   BASE
========================= */ :root {
	/* Base */
	--color-bg: #F8FAF8;
	--color-bg-soft: #EEF3EF;
	--color-text: #1F1F1F;
	--color-text-soft: #3A3A3A;
	/* Paleta */
	--color-green: #6F8F76;
	--color-green-soft: #A8BFAE;
	--color-blue: #6C8EA3;
	--color-blue-soft: #A9BDC8;
	--color-yellow: #E6D8A3;
	--color-yellow-soft: #F3EBD0;
	--color-brown: #8A6E5A;
	--color-brown-soft: #C2AFA1;
	--color-red: #B07A7A;
	--color-red-soft: #D7A6A6;
	/* Extras */
	--border-radius: 12px;
	--shadow-soft: 0 8px 25px rgba(0, 0, 0, 0.06);
}
body, html {
	height: 100%;
	margin: 0;
	font-family: 'Playfair Display', serif;
	color: #333;
	line-height: 1.6;
	background-color: #fafafa;
}

/* =========================
   TEXTOS GENERALES
========================= */
p {
	font-size: 1rem;
	margin-bottom: 1rem;
}
a {
	/* font-family: 'Raleway', sans-serif; */
	text-decoration: none;
	color: #444;
	transition: all 0.3s ease;
}
a:hover {
	color: #000;
}

/* =========================
   TITULOS
========================= */
h1, h2, h3, h4, h5, h6 {
	font-weight: 400;
	letter-spacing: 1px;
	color: #222;
}
h1 {
	font-size: 2.8rem;
}
h2 {
	font-size: 2.2rem;
}
h3 {
	font-size: 1.6rem;
}

.card {
	border: none;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}


/* =========================
   SECCIONES
========================= */
.section {
	padding: 80px 0;
}
.section.bg-madera {
	background: linear-gradient(rgba(0, 0, 0, 0.0), rgba(0, 0, 0, 0.5)), url('/assets/img/bg-maderas.jpg');
}
.section.bg-hojas {
	background: linear-gradient(rgba(0, 0, 0, 0.0), rgba(0, 0, 0, 0.5)), url('/assets/img/bg-hojas.jpg');
}
.section.bg-estrellas {
	background: linear-gradient(rgba(0, 0, 0, 0.0), rgba(0, 0, 0, 0.5)), url('/assets/img/bg-estrellas.jpg');
}
.section.bg-agua {
	background: linear-gradient(rgba(0, 0, 0, 0.0), rgba(0, 0, 0, 0.5)), url('/assets/img/bg-agua.jpg');
}
.section.bg-section,
section.hero {
	position: relative;
	background-size: cover;
	background-position: center;
	background-attachment: fixed;
	background-repeat: no-repeat;
	transition: height 0.2s ease;

}

.section.bg-black {
	background: #222;
	color: #ccc;
}

.section.bg-black h2 {
	color: #FFF;
}
/* =========================
   HERO (portada)
========================= */
.hero {
	height: 100vh;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	color: white;
	background: linear-gradient(rgba(0, 0, 0, 0.0), rgba(0, 0, 0, 0.5)), url('/assets/img/bg-cover.jpg');
	text-shadow: 0 .05rem .1rem rgba(0, 0, 0, .5);
	box-shadow: inset 0 0 5rem rgba(0, 0, 0, .5);
}

/* Posición */
.scroll-indicator {
	position: absolute;
	bottom: 60px;
	left: 50%;
	transform: translateX(-50%);
}
/* “Mouse” contenedor */
.scroll-indicator span {
	display: block;
	width: 24px;
	height: 40px;
	border: 2px solid #fff;
	border-radius: 20px;
	position: relative;
}
/* Puntito animado */
.scroll-indicator span::before {
	content: '';
	position: absolute;
	top: 6px;
	left: 50%;
	width: 4px;
	height: 4px;
	background: #fff;
	border-radius: 50%;
	transform: translateX(-50%);
	animation: scrollAnim 2s infinite;
}
/* Animación */
@keyframes scrollAnim {
	0% {
		opacity: 0;
		top: 6px;
	}
	50% {
		opacity: 1;
	}
	100% {
		opacity: 0;
		top: 20px;
	}
}
/* =========================
   NAVBAR
========================= */
.navbar {
	/* Frost glass effect */
	backdrop-filter: blur(10px);
    background-color: #ffffff88 !important;
}
.navbar-sticky {
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 999;
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
}
/* Para evitar que “salte” el contenido */
.navbar-placeholder {
	height: 0;
}

.navbar-nav {
	font-family: 'Inter', sans-serif;
}


/* =========================
   GRID CALENDARIO
========================= */


.calendar-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr); /* Desktop */
	gap: 1px;
	background: #ddd;
}
/* Tablet */
@media (max-width: 992px) {
	.calendar-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}
/* Mobile */
@media (max-width: 576px) {
	.calendar-grid {
		grid-template-columns: repeat(1, 1fr);
	}
}
.
.month-header {
	border-bottom: 1px solid #e0e6e0;
	padding-bottom: 5px;
}
.event.highlight {
	background: #e4ece6;
	padding: 6px;
	border-radius: 6px;
}
/* =========================
   CELDA MES
========================= */
.calendar-month {
	background: #fff;
	padding: 12px;
	min-height: 180px;
	display: flex;
	flex-direction: column;
}
/* Encabezado */
.month-header {
	font-weight: 500;
	font-size: 0.9rem;
	margin-bottom: 10px;
	letter-spacing: 1px;
	text-transform: uppercase;
	color: #2f3e34;
}





/* =========================
   CELDA MES 02
========================= */
.calendario-mes {
	background: #eef3ef;
}
/* Encabezado */
.calendario-evento {
	font-family: 'Inter', sans-serif;
	background: var(--color-green-soft);
}
.calendario-evento .encabezado {
	background: var(--color-green);
	font-weight: 500;
	font-size: 0.9rem;
	margin-bottom: 10px;
	letter-spacing: 1px;
	color: #FFFFFF;
}

.calendario-evento.calendario-destacado {
	font-family: 'Inter', sans-serif;
	background: var(--color-green-soft);
}
.calendario-evento.calendario-destacado .encabezado {
	background: var(--color-green);
	font-weight: 500;
	font-size: 0.9rem;
	margin-bottom: 10px;
	letter-spacing: 1px;
	color: #2f3e34;
}




/* =========================
   EVENTOS
========================= */
/* Evento como bloque */
.event {
	background: #eef3ef;
	border-radius: 8px;
	margin-bottom: 8px;
	transition: all 0.2s ease;
	text-align: center;
	
	overflow: hidden;
	padding-bottom: 10px;	
}
/* Hover sutil */
.event:hover {
	background: #e4ece6;
}
/* Fecha */
.event-date,
.event-main,
.event-detail {
	padding-left: 10px;
	padding-right: 10px;
}


.event-date {
	font-family: 'Inter', sans-serif;

	font-size: 0.7rem;
	color: #7a8a7f;
	
	background: #dfe8e2;
	
	border-bottom: 1px #7a8a7f solid;

	padding-top: 2px;
	padding-bottom: 2px;
	
}
/* Título principal */
.event-main {
	font-size: 0.9rem;
	font-weight: 500;
	line-height: 1em;
	
	color: #2f3e34;
	
	padding-top: 8px;
	padding-bottom: 8px;
}
/* Detalle */
.event-detail {
	font-size: 0.8rem;
	color: #5f6f64;
}

.event.destacado {
	background: #F3EBD0;
}

.event.destacado .event-date {
	background: #E6D8A3;
}

/* =========================
   GOOGLE MAPS
========================= */

.google-map > div {
	padding-left:0px;
	padding-right:0px;
}
.google-map .map-responsive{
    overflow:hidden;
/*    padding-bottom:50%; */
    position:relative;
    height:300px;
}
.google-map .map-responsive iframe{
    left:0;
    top:0;
    height:100%;
    width:100%;
	max-height:300px;
    position:absolute;
}

/* =========================
   CANCIONES
========================= */
#canciones .card .card-title {
	margin-bottom: -2px;
}

#canciones .card .card-text {
	color: rgb(0,0,0,0.65);
}

.arrow-link {
  display: inline-flex;
  color: var(--color-green); /* usa tu paleta */
  transition: all 0.3s ease;
}

.arrow-link:hover {
  color: var(--color-blue);
  transform: translateX(5px);
}


/* =========================
   FOOTER
========================= */
footer {
	background: #111;
	color: #ccc;
	padding: 40px 0;
	text-align: center;
	font-size: 0.9rem;
}
footer p {
	margin: 0;
}
footer {}