/* 
 * CORE.CSS - Estilos base y variables globales
 * Contiene:
 * - Variables CSS (colores, tipografía)
 * - Reset y estilos básicos de body
 * - Estilos de contenedores principales
 * - Clases utilitarias comunes
 * - Media queries para elementos base
 * - Mantener footer siempre al final (estructura asegura el footer abajo en todas las páginas)
 */

:root {
    --color-primario: #1a3e72;
    --color-secundario: #d4af37;
    --color-terciario: #c8102e;
    --color-texto: #333333;
    --color-texto-claro: #666666;
    --gris-claro: #f8f9fa;
    --gris-medio: #e9ecef;
    --blanco: #ffffff;
}

body {
    font-family: 'Arial', sans-serif;
    line-height: 1.6;
    color: var(--color-texto);
    margin: 0;
    padding: 0;
}

.container {
    width: 90%; /* Asegura que ocupe todo el ancho disponible */
    margin: 0 auto;
    padding: 0 20px;
}

h1, h2, h3, h4, h5, h6 {
    color: var(--color-primario);
}

a {
    text-decoration: none;
    color: inherit;
}

/* colores para las Secciones alternadas */
.section-gray {
    background-color: var(--gris-claro);
    padding: 40px 0;
}

.section-white {
    background-color: var(--blanco);
    padding: 40px 0;
}

/* Clases utilitarias */
.justificado {
    text-align: justify;
}

/* Para mantener el foot al final de la pagina, independiente del espacio utilizado mas arriba */
html, body {
    height: 100%;
    margin: 0;
    padding: 0;
}

.page-wrapper {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

.content-wrapper {
    flex: 1;
}

/* Puedes añadir esto para un mejor comportamiento general */
/*
body {
    overflow-x: hidden; /* Previene scroll horizontal no deseado */
/*}*/

/*
.content-wrapper {
    padding-bottom: 20px; /* Espacio antes del footer */
/* } */