/* Fuentes globales para FONCARGA */

/* Variables CSS para las fuentes */
:root {
    --font-primary: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    --font-secondary: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;

    /* Pesos de fuente */
    --font-light: 300;
    --font-regular: 400;
    --font-medium: 500;
    --font-semibold: 600;
    --font-bold: 700;
    --font-extrabold: 800;
}

/* Aplicar fuentes globalmente */
* {
    font-family: var(--font-primary);
}

body {
    font-family: var(--font-primary);
    font-weight: var(--font-regular);
    line-height: 1.6;
    color: #333;
}

/* Títulos principales */
h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-primary);
    font-weight: var(--font-bold);
    line-height: 1.2;
    margin-bottom: 1rem;
}

h1 {
    font-weight: var(--font-extrabold);
    font-size: 2.5rem;
}

h2 {
    font-weight: var(--font-bold);
    font-size: 2rem;
}

h3 {
    font-weight: var(--font-semibold);
    font-size: 1.75rem;
}

h4 {
    font-weight: var(--font-semibold);
    font-size: 1.5rem;
}

h5 {
    font-weight: var(--font-medium);
    font-size: 1.25rem;
}

h6 {
    font-weight: var(--font-medium);
    font-size: 1rem;
}

/* Texto secundario (Inter) */
.text-secondary,
.form-label,
.form-text,
.small,
small {
    font-family: var(--font-secondary);
}

/* Botones */
.btn {
    font-family: var(--font-primary);
    font-weight: var(--font-semibold);
    letter-spacing: 0.025em;
}

.btn-sm {
    font-size: 0.875rem;
    font-weight: var(--font-medium);
}

.btn-lg {
    font-size: 1.125rem;
    font-weight: var(--font-bold);
}

/* Formularios */
.form-control,
.form-select,
.form-check-input,
.form-check-label {
    font-family: var(--font-secondary);
    font-weight: var(--font-regular);
}

.form-label {
    font-weight: var(--font-semibold);
    font-size: 0.875rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

/* Navegación */
.navbar-brand,
.nav-link,
.navbar-nav .nav-link {
    font-family: var(--font-primary);
    font-weight: var(--font-semibold);
}

.navbar-brand {
    font-weight: var(--font-bold);
    font-size: 1.5rem;
}

/* Tablas */
.table {
    font-family: var(--font-secondary);
}

.table th {
    font-family: var(--font-primary);
    font-weight: var(--font-semibold);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-size: 0.875rem;
}

.table td {
    font-family: var(--font-secondary);
    font-weight: var(--font-regular);
}

/* Alertas */
.alert {
    font-family: var(--font-secondary);
    font-weight: var(--font-medium);
}

.alert-heading {
    font-family: var(--font-primary);
    font-weight: var(--font-bold);
}

/* Cards */
.card-title {
    font-family: var(--font-primary);
    font-weight: var(--font-bold);
}

.card-subtitle {
    font-family: var(--font-secondary);
    font-weight: var(--font-medium);
}

.card-text {
    font-family: var(--font-secondary);
    font-weight: var(--font-regular);
}

/* Badges */
.badge {
    font-family: var(--font-primary);
    font-weight: var(--font-semibold);
    letter-spacing: 0.025em;
}

/* Dropdowns */
.dropdown-menu {
    font-family: var(--font-secondary);
    font-weight: var(--font-regular);
}

.dropdown-header {
    font-family: var(--font-primary);
    font-weight: var(--font-semibold);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

/* Modales */
.modal-title {
    font-family: var(--font-primary);
    font-weight: var(--font-bold);
}

.modal-body {
    font-family: var(--font-secondary);
    font-weight: var(--font-regular);
}

/* Footer */
footer {
    font-family: var(--font-secondary);
    font-weight: var(--font-regular);
}

footer h5,
footer h6 {
    font-family: var(--font-primary);
    font-weight: var(--font-semibold);
}

/* Responsive */
@media (max-width: 768px) {
    h1 {
        font-size: 2rem;
    }

    h2 {
        font-size: 1.75rem;
    }

    h3 {
        font-size: 1.5rem;
    }

    .navbar-brand {
        font-size: 1.25rem;
    }
}

@media (max-width: 576px) {
    h1 {
        font-size: 1.75rem;
    }

    h2 {
        font-size: 1.5rem;
    }

    h3 {
        font-size: 1.25rem;
    }

    .navbar-brand {
        font-size: 1.125rem;
    }
}

/* Asegurar que los display headings hereden el color del contenedor (para permitir .text-white) */
.display-1,
.display-2,
.display-3,
.display-4,
.display-5,
.display-6 {
    color: inherit !important;
}
