/*
Theme Name: Hello Elementor Child
Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
Template: hello-elementor
Author: EyDConsulting Team
Author URI: http://eydconsulting.com
Description: Mejoras realizadas:
1.-Nombres de funciones más descriptivos.
2.-Corrección de errores.
3.-Mejora en la organización.
4.-Estructura más limpia.
Version: 1.0.0.1739982274
Updated: 2025-02-19 16:24:34
*/

/* ========================
   FUENTES DEL SISTEMA RÁPIDAS
   ======================== */
html {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    font-size: 16px;
    line-height: 1.6;
    color: #333;
}

/* Asegurar que todos los elementos hereden la fuente */
body,
button,
input,
select,
textarea,
.elementor-button,
.elementor-widget,
.entry-content,
.entry-title,
.entry-header {
    font-family: inherit;
    line-height: 1.6;
}

/* ========================
   GENERAL: Espaciado y márgenes
   ======================== */
body {
    margin: 0;
    padding: 0;
}

.entry-content {
    margin-bottom: 2rem;
}

/* ========================
   OPTIMIZACIÓN PARA MÓVILES (hasta 768px)
   ======================== */
@media (max-width: 768px) {
    /* Tamaños de fuente legibles */
    html {
        font-size: 16px;
    }

    h1, .entry-title {
        font-size: 28px;
        margin: 1.2rem 0 1rem;
    }

    h2 {
        font-size: 24px;
        margin: 1.5rem 0 1rem;
    }

    h3 {
        font-size: 20px;
        margin: 1.2rem 0 0.8rem;
    }

    /* Párrafos con buen espaciado */
    .entry-content p {
        font-size: 16px;
        margin-bottom: 1rem;
    }

    /* Imágenes responsivas */
    .entry-content img,
    .wp-block-image img {
        max-width: 100%;
        height: auto;
        margin: 1rem 0;
        border-radius: 8px;
    }

    /* Botones grandes y fáciles de tocar */
    .elementor-button,
    .wp-block-button__link {
        min-height: 44px;
        padding: 12px 20px;
        font-size: 16px !important;
        text-align: center;
    }

    /* Campos de formulario */
    .elementor-field,
    .wp-block-input {
        padding: 12px;
        font-size: 16px;
        margin-bottom: 12px;
    }

    /* Menú móvil más grande */
    .elementor-menu-toggle {
        width: 40px;
        height: 40px;
    }

    .elementor-menu-toggle i {
        font-size: 20px;
    }

    .elementor-nav-menu--dropdown a {
        padding: 12px 15px;
        font-size: 16px;
    }

    /* Ajustar contenedores Elementor */
    .elementor-section,
    .elementor-container {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }
}

/* ========================
   PANTALLAS PEQUEÑAS (hasta 480px)
   ======================== */
@media (max-width: 480px) {
    h1, .entry-title {
        font-size: 24px;
    }

    h2 {
        font-size: 20px;
    }

    .entry-content p {
        font-size: 15px;
    }

    .elementor-button,
    .wp-block-button__link {
        font-size: 15px !important;
        padding: 10px 16px;
    }
}

/* ========================
   MEJORAS DE USABILIDAD
   ======================== */
* {
    -webkit-tap-highlight-color: transparent;
}

a, .elementor-button {
    transition: all 0.3s ease;
}

body {
    overflow-x: hidden;
}

/* ========================
   OPTIMIZACIÓN PARA FUENTES GOOGLE
   ======================== */
@font-face {
    font-family: 'Audiowide';
    font-display: swap;
    src: url('https://fonts.gstatic.com/s/audiowide/v18/-nF2p4hs4tbwBPCrYqBbQ-1o.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
    font-family: 'Orbitron';
    font-display: swap;
    src: url('https://fonts.gstatic.com/s/orbitron/v30/yMJMMIlzdpvBhQQL_SC3X9Eh6N_2l8q0j8o.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Variables para fuentes personalizadas */
:root {
    --font-audiowide: 'Audiowide', cursive;
    --font-orbitron: 'Orbitron', sans-serif;
    --primary-color: #0073aa; /* Color ejemplo, cámbialo si necesitas */
}

/* Ejemplo de uso en headers */
h1, .entry-title {
    font-family: var(--font-audiowide);
}

h2 {
    font-family: var(--font-orbitron);
}

/* ========================
   OPTIMIZACIÓN PARA ICONOS SVG
   ======================== */
svg, .entry-content svg {
    max-width: 100%;
    height: auto;
    fill: currentColor;
    transition: opacity 0.3s ease;
}

.entry-content svg:hover {
    opacity: 0.8;
}

/* ========================
   EJEMPLOS DE ANIMACIONES CSS
   ======================== */
@keyframes fadeIn {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}

.elementor-widget {
    animation: fadeIn 0.6s ease-out forwards;
}

.elementor-button:hover {
    transform: scale(1.05);
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}