/**
 * San Marco · Estilos de la CAPA SEO (FASE 12 + FASE 13)
 *
 * Se carga en la HOME y en las 64 landings. Solo añade lo que NO existe en
 * app.css: migas (.crumbs), acordeón de FAQ (.acordeon), tarjetas de enlazado
 * interno (.rel-card) y el CLUSTER de la home (.cluster). El resto de la página
 * reutiliza las clases del sitio (.section, .split, .values, .card, .btn,
 * .overline, .display), así que hereda el diseño tal cual.
 *
 * Móvil-primero. Sin dependencias externas.
 */

.crumbs {
  font-size: 0.85rem;
  color: var(--muted, #6b6b6b);
  margin-bottom: 1.5rem;
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
  align-items: center;
}

.crumbs a {
  color: inherit;
  text-decoration: none;
  border-bottom: 1px solid transparent;
}

.crumbs a:hover {
  border-bottom-color: currentColor;
}

/* ── Acordeón de preguntas frecuentes ── */
.acordeon {
  margin-top: 2rem;
  display: grid;
  gap: 0.75rem;
}

.acordeon__item {
  border: 1px solid var(--line, #e6e2da);
  border-radius: 10px;
  background: var(--bg, #fff);
  overflow: hidden;
}

.acordeon__q {
  cursor: pointer;
  list-style: none;
  padding: 1rem 1.25rem;
  font-family: var(--font-serif, serif);
  font-size: 1.05rem;
  font-weight: 500;
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: center;
}

.acordeon__q::-webkit-details-marker { display: none; }

.acordeon__q::after {
  content: "+";
  font-size: 1.4rem;
  line-height: 1;
  color: var(--accent, #b4451f);
  flex: none;
}

.acordeon__item[open] .acordeon__q::after { content: "\2212"; }

.acordeon__a {
  padding: 0 1.25rem 1.15rem;
  color: var(--muted, #4a4a4a);
}

.acordeon__a p { margin: 0; }

/* ── Enlazado interno ── */
.valores-rel {
  margin-top: 1.5rem;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 1fr;
}

.rel-card {
  display: block;
  padding: 1rem 1.25rem;
  text-decoration: none;
  color: inherit;
  transition: border-color 0.15s ease, transform 0.15s ease;
}

.rel-card:hover {
  border-color: var(--accent, #b4451f);
  transform: translateY(-2px);
}

.rel-card__t {
  font-family: var(--font-serif, serif);
  font-size: 1.02rem;
}

@media (min-width: 640px) {
  .valores-rel { grid-template-columns: 1fr 1fr; }
}

@media (min-width: 1024px) {
  .valores-rel { grid-template-columns: repeat(3, 1fr); }
}

/* ═══════════════════════════════════════════════════════════════════════
   CLUSTER SEO de la home (FASE 13)
   La home es el HUB: una tarjeta por vertical con su descripción, su enlace
   al pilar y la lista de sus URLs. Todo con las clases del sitio (.card,
   .overline, .display-sm) más lo mínimo propio.
   ═══════════════════════════════════════════════════════════════════════ */
.cluster {
  display: grid;
  gap: 1.25rem;
  grid-template-columns: 1fr;
  margin-top: 2.5rem;
}

.cluster__v {
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.cluster__v-top {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1rem;
}

.cluster__v-num {
  font-family: var(--font-serif, serif);
  font-size: 1.6rem;
  color: var(--accent, #b4451f);
  line-height: 1;
}

.cluster__v-t {
  font-family: var(--font-serif, serif);
  font-size: 1.25rem;
  margin: 0;
}

.cluster__v-d {
  color: var(--muted, #6b6b6b);
  font-size: 0.95rem;
  margin: 0;
}

.cluster__v-pilar {
  font-weight: 500;
  font-size: 0.95rem;
  text-decoration: none;
  color: var(--accent, #b4451f);
}

.cluster__v-pilar:hover { text-decoration: underline; }

.cluster__v-lista {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem 0.6rem;
}

.cluster__v-lista a {
  font-size: 0.85rem;
  color: inherit;
  text-decoration: none;
  border: 1px solid var(--line, #e6e2da);
  border-radius: 999px;
  padding: 0.2rem 0.7rem;
  transition: border-color 0.15s ease, color 0.15s ease;
}

.cluster__v-lista a:hover {
  border-color: var(--accent, #b4451f);
  color: var(--accent, #b4451f);
}

@media (min-width: 768px) {
  .cluster { grid-template-columns: 1fr 1fr; }
}

@media (min-width: 1100px) {
  .cluster { grid-template-columns: repeat(3, 1fr); }
}

/* ── Bloque de enlazado premium de las landings ── */
.rel-grupo { margin-top: 1.5rem; }

.rel-grupo__t {
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--muted, #6b6b6b);
  margin: 0 0 0.6rem;
}

/* ── FAQ larga: el acordeón ya se estiliza arriba; aquí, sólo la lectura ── */
.acordeon--larga .acordeon__a {
  line-height: 1.7;
  font-size: 0.98rem;
}

.acordeon--larga .acordeon__a p + p { margin-top: 0.85rem; }
