/* CORRECCIÓN DE CLARIDAD DE TEXTO MÓVIL - ELIMINAR SOMBRAS BORROSAS */

/* SOLO PARA MÓVIL (768px y menos) */
@media screen and (max-width: 768px) {
  
  /* ELIMINAR TODAS LAS SOMBRAS DE TEXTO PROBLEMÁTICAS */
  * {
    text-shadow: none !important;
  }
  
  *::before,
  *::after {
    text-shadow: none !important;
  }
  
  /* HERO - SOMBRAS MÍNIMAS SOLO PARA CONTRASTE */
  .hero h1 {
    color: #ffffff !important;
    text-shadow: 0 1px 2px rgba(0,0,0,0.3) !important;
    font-weight: 900 !important;
  }
  
  .hero .lead {
    color: #ffffff !important;
    text-shadow: 0 1px 2px rgba(0,0,0,0.3) !important;
    font-weight: 600 !important;
  }
  
  .hero .kicker {
    color: #ffffff !important;
    text-shadow: 0 1px 2px rgba(0,0,0,0.3) !important;
    font-weight: 700 !important;
  }
  
  /* RESTO DEL CONTENIDO - SIN SOMBRAS */
  .section,
  .section *,
  .service-card,
  .service-card *,
  .project-item,
  .project-item *,
  .safety-item,
  .safety-item *,
  .contact-item,
  .contact-item *,
  .about-content,
  .about-content *,
  .faq,
  .faq *,
  .faq-q,
  .faq-a,
  h1, h2, h3, h4, h5, h6,
  p, span, div, li,
  .kicker,
  .lead2,
  .note {
    text-shadow: none !important;
  }
  
  /* COLORES OPTIMIZADOS PARA LEGIBILIDAD SIN SOMBRAS */
  
  /* TÍTULOS - NEGRO SÓLIDO */
  .section h1,
  .section h2,
  .section h3,
  .section h4,
  .section h5,
  .section h6,
  .service-card h3,
  .project-info h4,
  .safety-item h3,
  .contact-item h3,
  .faq-q {
    color: #222222 !important;
    text-shadow: none !important;
    font-weight: 700 !important;
  }
  
  /* PÁRRAFOS - GRIS OSCURO */
  .section p,
  .service-card p,
  .project-info p,
  .safety-item p,
  .contact-item p,
  .faq-a,
  .lead2 {
    color: #444444 !important;
    text-shadow: none !important;
    font-weight: 500 !important;
  }
  
  /* KICKERS Y NOTAS - GRIS MEDIO */
  .kicker,
  .note {
    color: #666666 !important;
    text-shadow: none !important;
    font-weight: 600 !important;
  }
  
  /* ENLACES - ROJO SÓLIDO */
  a:not(.btn):not(.hero-tab):not(.mobile-menu a) {
    color: #b71c1c !important;
    text-shadow: none !important;
    font-weight: 600 !important;
    text-decoration: none !important;
  }
  
  /* BOTONES - TEXTO BLANCO SÓLIDO */
  .btn,
  .btn-primary,
  .btn-whatsapp,
  .whatsapp-link {
    color: #ffffff !important;
    text-shadow: none !important;
    font-weight: 700 !important;
  }
  
  /* NAVEGACIÓN MÓVIL - TEXTO BLANCO SÓLIDO */
  .mobile-menu,
  .mobile-menu *,
  .mobile-menu a {
    color: #ffffff !important;
    text-shadow: none !important;
  }
  
  /* HERO TABS - TEXTO BLANCO CON SOMBRA MÍNIMA */
  .hero-tab,
  .hero-tab * {
    color: #ffffff !important;
    text-shadow: 0 1px 2px rgba(0,0,0,0.3) !important;
  }
  
  .hero-tab.active .chev {
    color: #b71c1c !important;
    text-shadow: none !important;
  }
  
  /* ESTADÍSTICAS - ROJO SÓLIDO */
  .stat-number {
    color: #b71c1c !important;
    text-shadow: none !important;
    font-weight: 900 !important;
  }
  
  .stat-label {
    color: #666666 !important;
    text-shadow: none !important;
  }
  
  /* FOOTER - GRIS SÓLIDO */
  footer,
  footer * {
    color: #666666 !important;
    text-shadow: none !important;
  }
  
  /* SERVICE AREAS - TEXTO NEGRO ESPECÍFICO */
  .service-areas,
  .service-areas *,
  .service-areas li,
  .service-areas li strong {
    color: #222222 !important;
    text-shadow: none !important;
    font-weight: 500 !important;
  }
  
  .service-areas li strong {
    font-weight: 700 !important;
  }
  
  /* CONTACT ITEM CON SERVICE AREA */
  .contact-item:has(.service-areas),
  .contact-item:has(.service-areas) *,
  .contact-item:has(.service-areas) h3,
  .contact-item:has(.service-areas) p,
  .contact-item:has(.service-areas) ul,
  .contact-item:has(.service-areas) li {
    color: #222222 !important;
    text-shadow: none !important;
  }
  
  /* OUR VALUES - TEXTO NEGRO ESPECÍFICO */
  .about-values,
  .about-values *,
  .about-values h3,
  .about-values ul,
  .about-values li {
    color: #222222 !important;
    text-shadow: none !important;
    background: transparent !important;
  }
  
  .about-values h3 {
    font-weight: 700 !important;
  }
  
  .about-values li {
    font-weight: 500 !important;
  }
  
  /* PROCESS NUMBERS - TEXTO NEGRO ESPECÍFICO */
  .process,
  .process *,
  .step,
  .step *,
  .step .num,
  .num {
    color: #222222 !important;
    text-shadow: none !important;
    background: transparent !important;
  }
  
  .step .num {
    font-weight: 900 !important;
    background: #ffffff !important;
    border: 2px solid #222222 !important;
    /* Prefijos para máxima compatibilidad */
    -webkit-border-radius: 50% !important;
    -moz-border-radius: 50% !important;
    border-radius: 50% !important;
    -webkit-text-shadow: none !important;
    -moz-text-shadow: none !important;
    text-shadow: none !important;
    /* Fallback para centrado sin flexbox */
    text-align: center !important;
    line-height: 36px !important; /* 40px - 4px border */
  }
  
  .step h4 {
    color: #222222 !important;
    font-weight: 700 !important;
  }
  
  .step p {
    color: #444444 !important;
    font-weight: 500 !important;
  }
  
  /* OVERRIDE FINAL - ELIMINAR CUALQUIER SOMBRA RESIDUAL */
  html body * {
    text-shadow: none !important;
  }
  
  /* EXCEPCIONES - SOLO HERO CON SOMBRAS MÍNIMAS */
  html body .hero h1,
  html body .hero .lead,
  html body .hero .kicker {
    text-shadow: 0 1px 2px rgba(0,0,0,0.3) !important;
  }
}

/* PARA PANTALLAS MUY PEQUEÑAS - OPTIMIZACIÓN ADICIONAL */
@media screen and (max-width: 480px) {
  
  /* ELIMINAR INCLUSO LAS SOMBRAS MÍNIMAS DEL HERO */
  .hero h1,
  .hero .lead,
  .hero .kicker {
    text-shadow: none !important;
    font-weight: 900 !important;
  }
  
  /* AUMENTAR CONTRASTE CON FONDOS MÁS OSCUROS */
  .hero {
    background: linear-gradient(rgba(0,0,0,0.6), rgba(0,0,0,0.6)), var(--hero-bg) !important;
  }
}