/* ==========================================================================
   Lyon Sud Energies — Styles globaux
   ========================================================================== */

/* Fonts */
.font-inter { font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif; }
.font-poppins { font-family: 'Poppins', 'Inter', sans-serif; }

/* Smooth scroll */
html { scroll-behavior: smooth; }

/* Focus visible accessible */
*:focus-visible {
  outline: 3px solid #E85D04;
  outline-offset: 2px;
  border-radius: 4px;
}

/* Selection */
::selection {
  background-color: #E85D04;
  color: white;
}

/* Transitions globales */
a, button {
  transition-property: color, background-color, border-color, box-shadow, opacity, transform;
  transition-duration: 200ms;
  transition-timing-function: ease;
}

/* Nav active link */
nav a[aria-current="page"] {
  color: #E85D04!important;
  font-weight: 700;
}

/* Bouton téléphone pulse */
@keyframes phone-pulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.05); }
}
.phone-pulse {
  animation: phone-pulse 2s ease-in-out infinite;
}

/* Hero overlay pattern */
.hero-pattern {
  background-image: 
    radial-gradient(circle at 20% 50%, rgba(232, 93, 4, 0.15) 0%, transparent 50%),
    radial-gradient(circle at 80% 20%, rgba(0, 119, 182, 0.15) 0%, transparent 50%);
}

/* Card hover effect */
.card-hover {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.card-hover:hover {
  transform: translateY(-4px);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12);
}

/* FAQ chevron rotation */
.rotate-180 {
  transform: rotate(180deg);
}

/* Image lazy load fade */
img[loading="lazy"] {
  opacity: 0;
  transition: opacity 0.4s ease;
}
img[loading="lazy"].loaded {
  opacity: 1;
}

/* Bandeau urgence animation */
@keyframes urgence-blink {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.6; }
}

/* Scrollbar custom */
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: #f1f1f1; }
::-webkit-scrollbar-thumb { background: #E85D04; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #c44e02; }

/* Responsive images */
img { max-width: 100%; height: auto; }

/* Print styles */
@media print {
  nav, footer, .cta-section { display: none; }
  body { font-size: 12pt; color: black; }
}
