/* =============================================================================
   SOBRE CÓDIGOS SOLARES / LINAJE — Sección #linaje
   Códigos Solares
   =============================================================================
   Sección de credibilidad — prosa fluida sin elementos de conversión.
   Fondo levemente distinto (beige muy sutil) para marcar el cambio de tono
   después de los CTA: aquí el ritmo baja, el usuario respira y lee.
   ============================================================================= */

#linaje {
  background-color: var(--surface-alt-deep);   /* un paso más cálido que #f4efe7 de formacion */
  padding: var(--space-xl) var(--space-md);

  min-height: unset;
  display: block;
  align-items: unset;
  justify-content: unset;
  border-bottom: none;
  font-size: unset;
  color: unset;
  letter-spacing: unset;
  text-transform: none;
}

#linaje::before { content: none; }

.linaje-inner {
  max-width: 860px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}

/* Ícono a la derecha (row-reverse) — alterna con consulta que lo tiene a la izquierda */
.linaje-row {
  display: flex;
  align-items: flex-start;
  flex-direction: row-reverse;
  gap: 3.5rem;
}

.linaje-icon-col {
  flex: 0 0 68px;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding-top: 0.4rem;

  opacity: 0;
  transform: translateY(8px);
  transition: opacity 0.8s ease, transform 0.8s ease;
}

.linaje-icon-col.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.linaje-icon-img {
  width: 68px;
  height: 68px;
  object-fit: contain;
  opacity: 0.45;   /* levemente más sutil para la luna */
  display: block;
}

.linaje-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.75rem;
}

.linaje-eyebrow {
  font-family: var(--font-body);
  font-size: 0.65rem;
  font-weight: 600;
  letter-spacing: 0.3em;
  color: var(--accent-text);
  text-transform: uppercase;
}

.linaje-heading {
  font-family: var(--font-heading);
  font-size: clamp(1.75rem, 3vw, 2.4rem);
  font-weight: 300;
  font-style: italic;
  text-transform: none;
  color: var(--text);
  line-height: 1.2;
  margin: 0;
}

.linaje-divider {
  width: 2.5rem;
  height: 1px;
  background-color: var(--gold-leaf);
  opacity: 0.45;
  border: none;
  margin: 0;
}

/* Prosa fluida — un único bloque, sin listas, tarjetas ni puntos */
.linaje-body {
  font-family: var(--font-heading);       /* Cormorant para prosa de credibilidad */
  font-size: clamp(1.05rem, 1.6vw, 1.2rem);
  font-weight: 300;
  font-style: italic;
  text-transform: none;
  letter-spacing: normal;
  color: var(--text);
  line-height: 1.9;
  margin: 0;
}

.linaje-body + .linaje-body {
  margin-top: 1.2rem;
}

@media (max-width: 767px) {
  #linaje { padding: var(--space-lg) var(--space-sm); }

  .linaje-row {
    flex-direction: column;
    gap: 1.75rem;
  }

  .linaje-icon-col {
    flex: unset;
    align-self: flex-start;
    padding-top: 0;
  }

  .linaje-body { font-size: 1rem; }
}
