/*
 * Optimizaciones de fuentes para mejorar el rendimiento
 * Incluye font-display: swap para evitar CLS (Cumulative Layout Shift)
 */

/* Fuente Open Sans optimizada */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 700;
    font-display: swap; /* Evita CLS por fuentes */
    src: local('Open Sans Bold'), local('OpenSans-Bold');
}

/* Fuentes del proyecto ya definidas en main.css pero con optimizaciones adicionales */
@font-face {
    font-family: 'Coolvetica';
    font-style: normal;
    font-weight: normal;
    font-display: swap;
    src: url('../fonts/coolveticarg.otf') format('opentype');
}

@font-face {
    font-family: 'Gravity';
    font-style: normal;
    font-weight: normal;
    font-display: swap;
    src: url('../fonts/Gravity-Regular.otf') format('opentype');
}

/* Fallbacks para fuentes del sistema */
.font-system {
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.font-coolvetica {
    font-family: "Coolvetica", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
}

.font-gravity {
    font-family: "Gravity", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
}

/* Optimizaciones para texto */
.text-optimize {
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Clases utilitarias para tamaños de fuente responsivos */
.text-responsive-sm {
    font-size: clamp(0.875rem, 2vw, 1rem);
}

.text-responsive-md {
    font-size: clamp(1rem, 2.5vw, 1.25rem);
}

.text-responsive-lg {
    font-size: clamp(1.25rem, 3vw, 1.5rem);
}

.text-responsive-xl {
    font-size: clamp(1.5rem, 4vw, 2rem);
}

/* Preload hints para fuentes críticas */
.preload-fonts {
    /* Esta clase se puede usar para marcar elementos que necesitan fuentes críticas */
    font-display: swap;
}
