/* Movimiento original: indicador, filamento, imágenes y estados de interacción. */
@keyframes electricLine {
  from { transform: translateX(-100%); }
  to { transform: translateX(100%); }
}
.main-header::after { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 1.5px; background: linear-gradient(90deg,transparent 0%,var(--primary) 25%,var(--electric-light) 50%,var(--electric-green) 75%,transparent 100%); animation: electricLine 4s ease-in-out infinite; pointer-events: none; }
.electric-filament { position: absolute; left: 0; bottom: 0; width: 100%; height: 12px; pointer-events: none; }
.hero-image,.about-image-card img { transition: transform 700ms cubic-bezier(.4,0,.2,1); }
.service-image { transition: transform 500ms cubic-bezier(.4,0,.2,1); }
.hero-image-card:hover .hero-image,.about-image-card:hover img,.service-image-card:hover .service-image { transform: scale(1.05); }
.button-primary:hover { background: linear-gradient(to right,var(--primary),var(--secondary)); color: white; }
.button-primary:hover,.emergency-link:hover,.emergency-card:hover { box-shadow: 0 0 20px -2px rgb(var(--primary-rgb) / 45%); }
.emergency-link:active { transform: scale(.95); }
.service-card:hover { border-color: var(--primary); transform: translateY(-4px); box-shadow: 0 12px 32px -4px rgb(var(--primary-rgb) / 15%); }
.service-card:hover .service-icon { background: var(--primary); color: white; }
.service-card:hover .service-card-link { transform: translateX(4px); }
.timeline-item:hover .timeline-marker { transform: scale(1.25); }
.timeline-item:hover .timeline-card { border-color: var(--primary); }
@media (min-width: 768px) {
  .timeline-item:hover .timeline-marker { transform: translateX(-50%) scale(1.25); }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *,*::before,*::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .electric-filament { display: none; }
  .main-header::after { animation: none; }
}
