/*
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;
}

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) {
  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;
  }

  .entry-content p {
    font-size: 16px;
    margin-bottom: 1rem;
  }

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

  .elementor-button,
  .wp-block-button__link {
    min-height: 44px;
    padding: 12px 20px;
    font-size: 16px !important;
    text-align: center;
  }

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

  .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;
  }

  .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;
}

@font-face {
  font-family: 'Poller One';
  font-display: swap;
  src: url('https://fonts.gstatic.com/s/pollerone/v14/3yfKcDxUWJiRmV2HdGk6Ls6Za9Ss.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: 'Goldman';
  font-display: swap;
  src: url('https://fonts.gstatic.com/s/goldman/v12/fC9s235tI984M7u6g8OoZ7j1jw.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: 'Aldrich';
  font-display: swap;
  src: url('https://fonts.gstatic.com/s/aldrich/v14/1cX4a4e3Kg774Q05T633j7K4.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;
}

:root {
  --font-audiowide: 'Audiowide', cursive;
  --font-orbitron: 'Orbitron', sans-serif;
  --font-poller-one: 'Poller One', cursive;
  --font-goldman: 'Goldman', sans-serif;
  --font-aldrich: 'Aldrich', sans-serif;
  --primary-color: #0073aa;
}

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);
}

/*======================== AJUSTES PARA TABLET (769px - 1024px) ========================*/
@media (min-width: 769px) and (max-width: 1024px) {
  h1, .entry-title {
    font-size: 32px;
  }
  h2 {
    font-size: 26px;
  }
  .elementor-button {
    padding: 14px 24px;
    font-size: 17px !important;
  }
  .elementor-section,
  .elementor-container {
    padding-left: 30px !important;
    padding-right: 30px !important;
  }
}

/*======================== EJEMPLOS DE USO DE NUEVAS FUENTES ========================*/
.hero-subtitle {
  font-family: var(--font-poller-one);
  font-size: 2.2rem;
  margin: 1rem 0;
  color: var(--primary-color);
}

.cta-highlight {
  font-family: var(--font-goldman);
  font-weight: bold;
}

.sidebar-title {
  font-family: var(--font-aldrich);
  text-transform: uppercase;
  letter-spacing: 1px;
}