/* SALVIA BLANCA — página de eventos y celebraciones.
   Monta sobre pilares.css (hero, cuerpo, botones) y sólo añade lo suyo:
   la rejilla de áreas y las tarjetas de paquetes. */

.ev-intro2 {
  max-width: 62ch;
  margin: var(--sp-4) 0 0;
  color: var(--color-texto-suave, #5b544a);
}

.ev-h2 {
  font-family: var(--font-titulo);
  font-weight: 400;
  font-size: clamp(1.6rem, 3.4vw, 2.3rem);
  margin: var(--sp-16) 0 var(--sp-1);
}
.ev-nota {
  font-family: var(--font-cuerpo);
  font-size: var(--txt-xs);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--color-texto-suave, #7a7266);
  margin: 0 0 var(--sp-6);
}

/* ── Áreas ── */
.ev-areas {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(270px, 1fr));
  gap: var(--sp-6);
}
.ev-area {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid rgb(28 26 23 / 0.09);
  border-radius: 3px;
  overflow: hidden;
}
.ev-area-img {
  height: 190px;
  background-size: cover;
  background-position: center;
  background-color: #e4ddd0;
}
/* Sin foto propia: bloque de color en vez de una imagen de otra cosa.
   Ver el comentario de build-eventos.js. */
.ev-area-sinfoto .ev-area-img {
  height: 92px;
  background: linear-gradient(135deg, #e4ddd0, #cdc2b0);
}
.ev-area-txt { padding: var(--sp-5); }
.ev-area-txt h3 {
  font-family: var(--font-titulo);
  font-weight: 400;
  font-size: 1.35rem;
  margin: 0;
}
.ev-cap {
  font-family: var(--font-cuerpo);
  font-size: var(--txt-xs);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--color-acento, #8a7a52);
  margin: var(--sp-1) 0 var(--sp-3);
}
.ev-area-txt p:last-child { margin: 0; font-size: 0.94rem; }

/* ── Tarjetas de paquete ── */
.ev-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: var(--sp-5);
  align-items: start;
}
.ev-card {
  background: #fff;
  border: 1px solid rgb(28 26 23 / 0.09);
  border-radius: 3px;
  padding: var(--sp-5);
}
.ev-card-top {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--sp-3);
  border-bottom: 1px solid rgb(28 26 23 / 0.08);
  padding-bottom: var(--sp-2);
  margin-bottom: var(--sp-3);
}
.ev-card-top h3 {
  font-family: var(--font-titulo);
  font-weight: 400;
  font-size: 1.3rem;
  margin: 0;
}
.ev-precio {
  font-family: var(--font-cuerpo);
  font-weight: 500;
  font-size: 1.05rem;
  white-space: nowrap;
  color: var(--color-acento, #8a7a52);
}
.ev-card p { font-size: 0.94rem; margin: 0 0 var(--sp-3); }

.ev-precios-dobles {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sp-4);
}
.ev-precios-dobles span {
  font-family: var(--font-cuerpo);
  font-size: 0.88rem;
  color: var(--color-texto-suave, #5b544a);
}
.ev-precios-dobles b { color: var(--color-acento, #8a7a52); font-weight: 500; }

.ev-incluye {
  list-style: none;
  margin: 0;
  padding: 0;
  font-size: 0.9rem;
  line-height: 1.55;
}
.ev-incluye li {
  position: relative;
  padding-left: 14px;
  margin-bottom: 5px;
  color: var(--color-texto-suave, #5b544a);
}
.ev-incluye li::before {
  content: '·';
  position: absolute;
  left: 3px;
  color: var(--color-acento, #8a7a52);
}

.ev-legal {
  font-size: var(--txt-xs);
  color: var(--color-texto-suave, #7a7266);
  margin-top: var(--sp-8);
}

/* ── Cierre ── */
.ev-cierre {
  margin-top: var(--sp-16);
  padding: var(--sp-12) var(--sp-5);
  text-align: center;
  background: #fff;
  border: 1px solid rgb(28 26 23 / 0.09);
  border-radius: 3px;
}
.ev-cierre h2 {
  font-family: var(--font-titulo);
  font-weight: 400;
  font-size: clamp(1.8rem, 4vw, 2.6rem);
  margin: 0 0 var(--sp-2);
}
.ev-cierre .pil-cta {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sp-3);
  justify-content: center;
  margin-top: var(--sp-6);
}
.ev-tel {
  margin-top: var(--sp-4);
  font-size: 0.92rem;
  color: var(--color-texto-suave, #5b544a);
}
.ev-tel a { color: inherit; }

@media (max-width: 700px) {
  .ev-h2 { margin-top: var(--sp-12); }
  .ev-cierre { padding: var(--sp-8) var(--sp-4); }
}
