/* ==========================================================================
   GO Asesores — Inner pages (ARL, Empresas, Personas, Tecnología,
   Esencia, Go Insights, Contacto, errores)
   ========================================================================== */

/* --------------------------------------------------------------------------
   Hero mini
   -------------------------------------------------------------------------- */
.hero-mini {
  padding-top: calc(var(--space-24) + var(--space-8));
}

.hero-mini__title {
  max-width: 20ch;
  margin: var(--space-4) auto var(--space-4);
  font-size: var(--text-5xl);
  font-weight: var(--fw-extrabold);
  line-height: var(--leading-tight);
  letter-spacing: var(--tracking-tight);
}

.hero-mini__subtitle {
  max-width: 52ch;
  margin: 0 auto;
  color: var(--text-tertiary);
  font-size: var(--text-md);
  line-height: var(--leading-relaxed);
}

/* --------------------------------------------------------------------------
   Feature cards
   -------------------------------------------------------------------------- */
.page-features__card {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

.page-features__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: var(--radius-md);
  background-color: color-mix(in srgb, var(--color-primary) 8%, transparent);
  color: var(--color-primary-hover);
}

.page-features__title {
  font-size: var(--text-lg);
  font-weight: var(--fw-extrabold);
  letter-spacing: var(--tracking-tight);
}

.page-features__desc {
  color: var(--text-tertiary);
  font-size: var(--text-base);
  line-height: var(--leading-relaxed);
}

[data-theme="dark"] .page-features__icon {
  background-color: color-mix(in srgb, var(--color-secondary) 10%, transparent);
  color: var(--color-secondary);
}

/* --------------------------------------------------------------------------
   Canales de contacto
   -------------------------------------------------------------------------- */
.contact-channels__card {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  text-decoration: none;
  color: inherit;
}

.contact-channels__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: var(--radius-md);
  background-color: color-mix(in srgb, var(--color-primary) 8%, transparent);
  color: var(--color-primary-hover);
}

.contact-channels__title {
  font-size: var(--text-lg);
  font-weight: var(--fw-extrabold);
  letter-spacing: var(--tracking-tight);
}

.contact-channels__desc {
  color: var(--text-tertiary);
  font-size: var(--text-base);
  line-height: var(--leading-relaxed);
}

.contact-channels__value {
  margin-top: auto;
  color: var(--color-primary-hover);
  font-size: var(--text-sm);
  font-weight: var(--fw-semibold);
}

[data-theme="dark"] .contact-channels__icon {
  background-color: color-mix(in srgb, var(--color-secondary) 10%, transparent);
  color: var(--color-secondary);
}

[data-theme="dark"] .contact-channels__value {
  color: var(--color-secondary);
}

/* --------------------------------------------------------------------------
   CTA final (misma que home)
   -------------------------------------------------------------------------- */
.cta-final__title {
  max-width: 22ch;
  margin: 0 auto var(--space-4);
  font-size: var(--text-4xl);
  font-weight: var(--fw-extrabold);
  letter-spacing: var(--tracking-tight);
}

.cta-final__subtitle {
  max-width: 48ch;
  margin: 0 auto var(--space-8);
  color: var(--text-tertiary);
  font-size: var(--text-md);
  line-height: var(--leading-relaxed);
}

.cta-final .btn-group {
  justify-content: center;
}

/* --------------------------------------------------------------------------
   Error pages
   -------------------------------------------------------------------------- */
.error-page {
  display: flex;
  align-items: center;
  min-height: 80vh;
  min-height: 80dvh;
}

.error-page__code {
  display: block;
  font-size: var(--text-hero);
  font-weight: var(--fw-black);
  letter-spacing: var(--tracking-tight);
}

.error-page__title {
  margin: var(--space-2) 0 var(--space-3);
  font-size: var(--text-2xl);
  font-weight: var(--fw-extrabold);
}

.error-page__subtitle {
  max-width: 44ch;
  margin: 0 auto var(--space-8);
  color: var(--text-tertiary);
  font-size: var(--text-md);
  line-height: var(--leading-relaxed);
}
