/* ============================================================
   TIPOGRAFÍA UTC 2026 — SELF-HOSTED (fuentes locales, sin CDN)
   Outfit (títulos) + Plus Jakarta Sans (cuerpo)
   Descargadas de Google Fonts como WOFF2 variables y alojadas
   en /assets/fonts/. font-display: swap evita bloqueo de render
   y previene CLS.
   ============================================================ */

/* Outfit — Variable (wght 100-900). Se declara una sola vez; el
   navegador usa la instancia del peso pedido (600/700 en títulos). */
@font-face {
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 100 900;               /* rango variable */
  font-display: swap;                 /* evita FOIT y bloques el render */
  src: url('../fonts/Outfit-Variable-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
                 U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122,
                 U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Plus Jakarta Sans — Variable (wght 200-800). */
@font-face {
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-weight: 200 800;              /* rango variable */
  font-display: swap;
  src: url('../fonts/PlusJakartaSans-Variable-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
                 U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122,
                 U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ============================================================
   BASE TIPOGRÁFICA GLOBAL
   Outfit: H1-H3 (+ H4 en componentes que lo usan como título)
   Plus Jakarta Sans: cuerpo, menús, botones, inputs
   ============================================================ */
:root {
  --font-heading: 'Outfit', 'Segoe UI', system-ui, -apple-system, sans-serif;
  --font-body: 'Plus Jakarta Sans', 'Segoe UI', system-ui, -apple-system, sans-serif;
}

body {
  font-family: var(--font-body);
  line-height: 1.55;                  /* legibilidad en lecturas largas */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

h1, h2, h3, h4 {
  font-family: var(--font-heading);
  line-height: 1.15;                  /* títulos compactos, cohesión móvil */
  font-weight: 700;
  letter-spacing: -0.01em;
}

h5, h6 {
  font-family: var(--font-heading);
  line-height: 1.2;
  font-weight: 600;
}

/* Pesos por nivel */
h1 { font-weight: 700; }
h2 { font-weight: 700; }
h3 { font-weight: 600; }
h4 { font-weight: 600; }

/* Botones y etiquetas: Jakarta SemiBold para mayor presencia */
button, .btn, .mu-btn, input, select, textarea, label,
.navbar-nav > li > a, .dropdown-menu > li > a, .mu-glass-badge {
  font-family: var(--font-body);
}

/* ============================================================
   UTILIDADES DE TIPO (listas para usar en cualquier página)
   ============================================================ */
.font-heading { font-family: var(--font-heading) !important; }
.font-body    { font-family: var(--font-body)    !important; }
.tracking-tight { letter-spacing: -0.02em; }
.leading-tight  { line-height: 1.15 !important; }
.leading-relaxed { line-height: 1.6 !important; }