/* ==== Kapital Profit · tema tipográfico global ====
   Aplica a todo el sitio las fuentes y colores de texto del nuevo Home,
   sin tocar la maquetación de las secciones que aún no se han rehecho.
   Se carga después de todas las hojas antiguas. */
:root {
  --kp-ink: #102c3b;
  --kp-text: #3f5462;
  --kp-muted: #5b6e7a;
  --kp-emerald: #10b981;
  --kp-emerald-ink: #08835e;
  --kp-emerald-light: #49d8aa;
  --kp-cta: #0b7d58;
  --kp-cta-hover: #096a4b;
  --kp-font-sans: var(--kp-sans, 'Inter Tight'), 'Inter Tight', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --kp-font-serif: var(--kp-serif, 'Newsreader'), 'Newsreader', Georgia, 'Times New Roman', serif;
}

::selection { background: #c9eedf; color: var(--kp-ink); }

/* 1. Una sola familia para todo el texto */
body, button, input, select, textarea, dialog,
body *:not(svg):not(svg *):not(em):not(i.kp-keep) {
  font-family: var(--kp-font-sans) !important;
}

/* 2. Titulares: tinta azul, peso medio, interletrado ajustado */
body h1, body h2, body h3, body h4 {
  color: var(--kp-ink) !important;
  font-weight: 500 !important;
  letter-spacing: -0.035em !important;
}

/* 3. Palabra destacada: serif cursiva verde (la que te gustó del Home) */
body h1 em, body h2 em, body h3 em, body h4 em, body .kp-accent {
  font-family: var(--kp-font-serif) !important;
  font-style: italic !important;
  font-weight: 400 !important;
  letter-spacing: -0.01em !important;
  color: var(--kp-emerald-ink) !important;
}
body .accent-word { color: var(--kp-emerald-ink) !important; }

/* 4. Texto corrido y etiquetas */
body p { color: var(--kp-text); }
body .kicker, body .eyebrow, body .dv6-eyebrow, body .card-category { color: var(--kp-emerald-ink) !important; font-weight: 600 !important; }

/* 5. Botones con el verde de marca (contraste AA con texto blanco) */
body .btn-primary, body .small-cta {
  background: var(--kp-cta) !important; border-color: var(--kp-cta) !important; color: #fff !important;
  font-weight: 500 !important; letter-spacing: -0.005em;
}
body .btn-primary:hover, body .small-cta:hover { background: var(--kp-cta-hover) !important; border-color: var(--kp-cta-hover) !important; }
body .btn-outline, body .hero-secondary, body .dv6-plainBtn { color: var(--kp-emerald-ink) !important; font-weight: 500 !important; }
body a.text-link, body .modal-full-link { color: var(--kp-emerald-ink) !important; }

/* 6. Superficies oscuras: titulares blancos y acento verde claro */
body :is(.connected-section, .system-diagram, .method-media, footer, .dv6-footer, .dv6-deliverablePanel, .m12-dark, .kp-dark) :is(h1, h2, h3, h4) {
  color: #fff !important;
}
body :is(.connected-section, .system-diagram, .method-media, footer, .dv6-footer, .dv6-deliverablePanel, .m12-dark, .kp-dark) :is(h1, h2, h3, h4) em,
body :is(.connected-section, .system-diagram, .method-media, footer, .dv6-footer, .dv6-deliverablePanel, .m12-dark, .kp-dark) .accent-word {
  color: var(--kp-emerald-light) !important;
}
body :is(.connected-section, .system-diagram, .method-media, footer, .dv6-footer, .dv6-deliverablePanel, .m12-dark, .kp-dark) p { color: #c5d3dc; }
body :is(.connected-section, .system-diagram, .method-media, footer, .dv6-footer, .dv6-deliverablePanel, .m12-dark, .kp-dark) :is(.kicker, .eyebrow, .dv6-eyebrow) { color: var(--kp-emerald-light) !important; }
