/**
 * EKIORA - Animations CSS
 * v4.1 - Intégré dans .ek-hero-copy (fullwidth header)
 */

/* ============================================
   CONTENEUR - Dans le fullwidth header
   ============================================ */

.ek-virtuous-circle {
  position: absolute;
  right: -5%;
  top: 50%;
  transform: translateY(-50%);
  width: 600px;
  height: 600px;
  opacity: 0;
  transition: opacity 1.2s ease;
  z-index: 1;
  pointer-events: none;
}

.ek-virtuous-circle.ek-vc-ready {
  opacity: 1;
}

@media (max-width: 1600px) {
  .ek-virtuous-circle {
    width: 520px;
    height: 520px;
    right: -3%;
  }
}

@media (max-width: 1400px) {
  .ek-virtuous-circle {
    width: 450px;
    height: 450px;
    right: 0;
  }
}

@media (max-width: 1200px) {
  .ek-virtuous-circle {
    display: none !important;
  }
}

/* ============================================
   SVG
   ============================================ */

.ek-vc-svg {
  width: 100%;
  height: 100%;
  overflow: visible;
}

/* ============================================
   ANNEAU
   ============================================ */

.ek-vc-ring {
  opacity: 0;
  stroke-dasharray: 950;
  stroke-dashoffset: 950;
}

.ek-vc-ready .ek-vc-ring {
  animation: ek-ring-draw 2s ease forwards;
  animation-delay: 0.2s;
}

@keyframes ek-ring-draw {
  to {
    opacity: 1;
    stroke-dashoffset: 0;
  }
}

/* ============================================
   COMÈTE
   ============================================ */

.ek-vc-comet {
  opacity: 0;
  transition: opacity 0.8s ease;
}

.ek-vc-comet-tail {
  stroke-width: 3;
}

.ek-vc-comet-head {
  fill: #FFD93D;
}

.ek-vc-comet-halo {
  fill: rgba(255, 217, 61, 0.2);
}

/* ============================================
   CONNEXIONS
   ============================================ */

.ek-vc-connections {
  opacity: 0;
}

.ek-vc-ready .ek-vc-connections {
  animation: ek-fade-to 1s ease forwards;
  animation-delay: 1s;
}

@keyframes ek-fade-to {
  to { opacity: 0.06; }
}

/* ============================================
   NODES
   ============================================ */

.ek-vc-node {
  opacity: 0;
}

.ek-vc-ready .ek-vc-node {
  animation: ek-node-pop 0.5s ease forwards;
}

.ek-vc-ready .ek-vc-node[data-index="0"] { animation-delay: 0.6s; }
.ek-vc-ready .ek-vc-node[data-index="1"] { animation-delay: 0.8s; }
.ek-vc-ready .ek-vc-node[data-index="2"] { animation-delay: 1.0s; }

@keyframes ek-node-pop {
  0% {
    opacity: 0;
    transform: scale(0.3);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

.ek-vc-node-glow,
.ek-vc-node-outer,
.ek-vc-node-core {
  transition: all 0.4s ease;
}

/* Node actif - via JavaScript setAttribute */
.ek-vc-node.ek-vc-active .ek-vc-node-glow {
  fill: rgba(255, 180, 0, 0.2) !important;
}

.ek-vc-node.ek-vc-active .ek-vc-node-outer {
  stroke: #FFD93D !important;
  stroke-width: 2.5px !important;
  filter: url(#ek-glow-node);
}

.ek-vc-node.ek-vc-active .ek-vc-node-core {
  fill: #FFD93D !important;
}

/* ============================================
   LABELS
   ============================================ */

.ek-vc-label {
  font-family: inherit;
  font-size: 11px;
  font-weight: 600;
  fill: rgba(255, 171, 0, 0.4);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  opacity: 0;
  transition: all 0.3s ease;
}

.ek-vc-ready .ek-vc-label {
  animation: ek-label-appear 0.6s ease forwards;
}

.ek-vc-ready .ek-vc-label[data-index="0"] { animation-delay: 1.1s; }
.ek-vc-ready .ek-vc-label[data-index="1"] { animation-delay: 1.3s; }
.ek-vc-ready .ek-vc-label[data-index="2"] { animation-delay: 1.5s; }

@keyframes ek-label-appear {
  to { opacity: 1; }
}

.ek-vc-label.ek-vc-active {
  fill: rgba(255, 217, 61, 0.8);
  font-size: 12px;
}

/* ============================================
   FULLWIDTH HEADER (.ek-hero-copy) - Z-index
   ============================================ */

.ek-hero-copy {
  position: relative !important;
  overflow: visible !important;
}

/* Le contenu du header passe devant l'animation */
.ek-hero-copy .et_pb_fullwidth_header_container {
  position: relative;
  z-index: 5;
}

.ek-hero-copy .header-content {
  position: relative;
  z-index: 5;
}

.ek-hero-copy .header-content h1,
.ek-hero-copy .header-content .et_pb_fullwidth_header_subhead,
.ek-hero-copy .header-content p {
  position: relative;
  z-index: 5;
}

/* H1 Hero - Couleur claire sur fond sombre */
.ek-hero-copy h1,
.ek-hero-copy .et_pb_fullwidth_header_container h1,
body .ek-hero-copy h1 {
  color: #F8F9FB !important;
  -webkit-text-fill-color: #F8F9FB !important;
}

/* Sous-titre hero */
.ek-hero-copy .et_pb_fullwidth_header_subhead,
body .ek-hero-copy .et_pb_fullwidth_header_subhead {
  color: #C8CCD6 !important;
}

.ek-hero-copy .et_pb_button_wrapper {
  position: relative;
  z-index: 5;
}

/* ============================================
   BOUTON HERO - Style lumineux
   ============================================ */

.ek-hero-copy .et_pb_button {
  background: linear-gradient(
    135deg,
    rgba(255, 107, 0, 0.9) 0%,
    rgba(255, 171, 0, 0.95) 50%,
    rgba(255, 217, 61, 1) 100%
  ) !important;
  background-size: 200% 200% !important;
  border: none !important;
  color: #030305 !important;
  padding: 14px 28px !important;
  font-weight: 700 !important;
  border-radius: 10px !important;
  box-shadow:
    0 4px 20px rgba(255, 140, 0, 0.3),
    0 0 30px rgba(255, 171, 0, 0.15);
  transition: background-position 0.5s ease, box-shadow 0.4s ease, transform 0.3s ease !important;
}

/* Supprime l'icône au survol */
.ek-hero-copy .et_pb_button:after {
  display: none !important;
}

/* Effet hover lumineux sans changement de couleur */
.ek-hero-copy .et_pb_button:hover {
  background-position: 100% 100% !important;
  transform: translateY(-2px);
  box-shadow:
    0 6px 25px rgba(255, 140, 0, 0.4),
    0 0 50px rgba(255, 171, 0, 0.25),
    0 0 80px rgba(255, 217, 61, 0.15) !important;
}

/* ============================================
   SECTION BLURB - Dégradé de fond
   ============================================ */

.ek-step {
  background: linear-gradient(
    165deg,
    #0d1018 0%,
    #080a0f 40%,
    #030305 100%
  ) !important;
  border: 1px solid transparent;
  border-radius: 16px;
  height: 100%;
  box-shadow: none !important;
}

.ek-steps {
  align-items: stretch !important;
}

.ek-steps .et_pb_column {
  display: flex !important;
}

.ek-step .et_pb_main_blurb_image img {
  box-shadow: none !important;
  filter: none !important;
}

.ek-step .et_pb_main_blurb_image {
  box-shadow: none !important;
  overflow: visible !important;
}

.ek-step .et_pb_image_wrap {
  overflow: visible !important;
}

.ek-step .et_pb_blurb_content {
  overflow: visible !important;
}

.ek-step:hover {
  background: linear-gradient(
    165deg,
    #10131c 0%,
    #0a0c12 40%,
    #050508 100%
  ) !important;
  border-color: rgba(255, 171, 0, 0.15) !important;
}

/* ============================================
   SECTION PROBLEM - Cards dégradé
   ============================================ */

.ek-card-problem {
  background: linear-gradient(
    165deg,
    #0d1018 0%,
    #080a0f 40%,
    #030305 100%
  ) !important;
  border: 1px solid transparent !important;
  border-radius: 16px !important;
  height: 100%;
  display: flex;
  align-items: center;
  box-shadow: none !important;
}

.ek-cards-row {
  align-items: stretch !important;
}

.ek-cards-row .et_pb_column {
  display: flex !important;
}

.ek-card-problem:hover {
  background: linear-gradient(
    165deg,
    #10131c 0%,
    #0a0c12 40%,
    #050508 100%
  ) !important;
  border-color: rgba(255, 171, 0, 0.15) !important;
}

/* ============================================
   SECTION USE CASE - Cards dégradé
   ============================================ */

.ek-card-usecase {
  background: linear-gradient(
    165deg,
    #0d1018 0%,
    #080a0f 40%,
    #030305 100%
  ) !important;
  border: 1px solid transparent !important;
  border-radius: 16px !important;
  height: 100%;
  box-shadow: none !important;
}

.ek-card-usecase:hover {
  background: linear-gradient(
    165deg,
    #10131c 0%,
    #0a0c12 40%,
    #050508 100%
  ) !important;
  border-color: rgba(255, 171, 0, 0.15) !important;
}

.ek-grid {
  align-items: stretch !important;
}

.ek-grid .et_pb_column {
  display: flex !important;
}

/* ============================================
   EQUILIBRIUM ANIMATION
   Points de chaque côté + faisceaux
   ============================================ */

.ek-equilibrium {
  position: relative !important;
  background: #030305 !important;
}

.ek-about {
  background: #030305 !important;
}

/* Wrapper autour du H2 avec les animations */
.ek-eq-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  width: 100%;
}

.ek-eq-left,
.ek-eq-right {
  flex-shrink: 0;
  opacity: 0;
  transition: opacity 0.5s ease;
}

.ek-eq-left .ek-eq-svg,
.ek-eq-right .ek-eq-svg {
  display: block;
  height: 60px;
  width: auto;
  overflow: visible;
}

.ek-eq-point {
  transition: fill 0.3s ease, r 0.2s ease, cy 0.1s ease;
}

.ek-equilibrium .et_pb_row {
  position: relative;
  z-index: 2;
}

/* Titre H2 dans le wrapper */
.ek-eq-wrapper h2 {
  --heat-intensity: 0;
  color: rgba(248, 249, 251, 0.9) !important;
  background: none !important;
  -webkit-text-fill-color: currentColor !important;
  transition: filter 0.2s ease;
  position: relative;
  margin: 0 !important;
  white-space: nowrap;
}

/* Titre H2 - phase de chauffe progressive */
.ek-eq-wrapper h2.ek-eq-heating {
  background: linear-gradient(
    90deg,
    rgba(255, 217, 61, var(--heat-intensity)) 0%,
    rgba(255, 171, 0, var(--heat-intensity)) 25%,
    rgba(255, 107, 0, var(--heat-intensity)) 50%,
    rgba(255, 171, 0, var(--heat-intensity)) 75%,
    rgba(255, 217, 61, var(--heat-intensity)) 100%
  ),
  linear-gradient(
    90deg,
    rgba(248, 249, 251, calc(1 - var(--heat-intensity))) 0%,
    rgba(248, 249, 251, calc(1 - var(--heat-intensity))) 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: transparent !important;
  filter: drop-shadow(0 0 calc(var(--heat-intensity) * 10px) rgba(255, 140, 0, calc(var(--heat-intensity) * 0.4)));
}

/* Titre H2 - pleinement illuminé */
.ek-eq-wrapper h2.ek-eq-aligned {
  background: linear-gradient(
    90deg,
    #FFD93D 0%,
    #FFAB00 25%,
    #FF6B00 50%,
    #FFAB00 75%,
    #FFD93D 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: transparent !important;
  text-shadow: none;
  filter: drop-shadow(0 0 10px rgba(255, 140, 0, 0.4));
}

/* Responsive */
@media (max-width: 980px) {
  .ek-eq-wrapper {
    gap: 15px;
  }

  .ek-eq-left .ek-eq-svg,
  .ek-eq-right .ek-eq-svg {
    height: 50px;
    max-width: 150px;
  }
}

@media (max-width: 767px) {
  .ek-eq-left,
  .ek-eq-right {
    display: none;
  }

  .ek-eq-wrapper {
    justify-content: center;
  }

  .ek-eq-wrapper h2 {
    white-space: normal;
    text-align: center;
  }
}


/* ============================================
   PRINCIPLES ANIMATION (Infrastructure-first)
   ============================================ */

.ek-principles {
  position: relative !important;
  overflow: hidden;
}

.ek-principles-anim {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 100% !important;
  pointer-events: none;
  z-index: 0 !important;
  opacity: 0;
  transition: opacity 1s ease;
  -webkit-mask-image: linear-gradient(
    to bottom,
    transparent 0%,
    black 15%,
    black 85%,
    transparent 100%
  );
  mask-image: linear-gradient(
    to bottom,
    transparent 0%,
    black 15%,
    black 85%,
    transparent 100%
  );
}

.ek-principles > .et_pb_row {
  position: relative;
  z-index: 1;
}

.ek-principles-anim.ek-pa-visible {
  opacity: 1;
}

.ek-pa-svg {
  width: 100%;
  height: 100%;
}

.ek-pa-line {
  opacity: 0;
  transition: opacity 0.8s ease;
}

.ek-pa-node {
  opacity: 0;
  transition: fill 0.3s ease, r 0.3s ease;
}

.ek-principles-copy li {
  position: relative;
}

/* ============================================
   PRINCIPLES MINDSET ANIMATION
   Structure géométrique dans la colonne texte
   ============================================ */

/* Colonne contenant texte + animation */
.ek-principles .et_pb_column:last-child {
  position: relative;
}

.ek-mindset-anim {
  position: absolute;
  top: -150px;
  left: 75%;
  transform: translateX(-50%);
  width: 330px;
  height: 330px;
  opacity: 0;
  transition: opacity 0.8s ease;
  pointer-events: none;
  z-index: 0;
}

.ek-mindset-anim.ek-mindset-visible {
  opacity: 0.7;
}

.ek-mindset-svg {
  width: 100%;
  height: 100%;
  overflow: visible;
}

/* Texte au-dessus de l'animation */
.ek-principles .ek-principles-copy {
  position: relative;
  z-index: 1;
}

/* Connexions */
.ek-mindset-link {
  transition: stroke 0.4s ease, stroke-width 0.4s ease;
}

/* Noeuds externes */
.ek-mindset-node {
  opacity: 1;
}

.ek-mindset-node-glow,
.ek-mindset-node-ring,
.ek-mindset-node-core {
  transition: all 0.4s ease;
}

/* Noeud central */
.ek-mindset-center-glow,
.ek-mindset-center-ring,
.ek-mindset-center-inner,
.ek-mindset-center-core {
  transition: all 0.4s ease;
}

/* Responsive */
@media (max-width: 980px) {
  .ek-mindset-anim {
    width: 250px;
    height: 250px;
    top: -100px;
    left: 70%;
  }
}

@media (max-width: 767px) {
  .ek-mindset-anim {
    display: none; /* Cacher sur mobile - layout empilé */
  }
}

/* ============================================
   QUOTE - Dégradé gauche à droite
   ============================================ */

.ek-quote {
  background: linear-gradient(
    90deg,
    #0d1018 0%,
    #080a0f 40%,
    #030305 100%
  ) !important;
}

.ek-principles-copy li::before {
  transition: color 0.3s ease, transform 0.3s ease;
}

.ek-principles-copy li:hover::before {
  color: #FFD93D;
  transform: scale(1.2);
}

/* ============================================
   FORMULAIRE DE CONTACT
   ============================================ */

.et_pb_contact_form_container {
  background: transparent !important;
}

/* Champs - haute spécificité, pas d'arrondis */
.et_pb_contact_form_container input[type="text"],
.et_pb_contact_form_container input[type="email"],
.et_pb_contact_form_container textarea,
.et_pb_module .et_pb_contact_form_container input[type="text"],
.et_pb_module .et_pb_contact_form_container input[type="email"],
.et_pb_module .et_pb_contact_form_container textarea,
body .et_pb_contact_form_container input.input[type="text"],
body .et_pb_contact_form_container input.input[type="email"],
body .et_pb_contact_form_container textarea.input,
.et_pb_contact_form input.input,
.et_pb_contact_form textarea.input,
body #main-content .et_pb_contact_form_container input,
body #main-content .et_pb_contact_form_container textarea {
  background: transparent !important;
  border: 1px solid rgba(255, 171, 0, 0.3) !important;
  border-radius: 0 !important;
  -webkit-border-radius: 0 !important;
  -moz-border-radius: 0 !important;
  color: #f8f9fb !important;
  padding: 14px 16px !important;
  transition: border-color 0.3s ease, border-width 0.2s ease !important;
}

.et_pb_contact_form_container input[type="text"]:focus,
.et_pb_contact_form_container input[type="email"]:focus,
.et_pb_contact_form_container textarea:focus,
body .et_pb_contact_form_container input.input:focus,
body .et_pb_contact_form_container textarea.input:focus,
body #main-content .et_pb_contact_form_container input:focus,
body #main-content .et_pb_contact_form_container textarea:focus {
  background: transparent !important;
  border: 2px solid rgba(255, 171, 0, 0.7) !important;
  outline: none !important;
  border-radius: 0 !important;
}

.et_pb_contact_form_container input::placeholder,
.et_pb_contact_form_container textarea::placeholder {
  color: rgba(248, 249, 251, 0.4) !important;
}

/* Bouton submit - haute spécificité, pas d'arrondis */
.et_pb_contact_form_container .et_pb_contact_submit,
.et_pb_module .et_pb_contact_form_container .et_pb_contact_submit,
.et_pb_contact_form_container .et_pb_button,
body .et_pb_contact_form_container button.et_pb_contact_submit,
body #main-content .et_pb_contact_form_container .et_pb_contact_submit,
.et_pb_contact .et_pb_contact_submit {
  background: linear-gradient(
    135deg,
    rgba(255, 107, 0, 0.9) 0%,
    rgba(255, 171, 0, 0.95) 50%,
    rgba(255, 217, 61, 1) 100%
  ) !important;
  background-size: 200% 200% !important;
  border: none !important;
  color: #030305 !important;
  padding: 14px 28px !important;
  font-weight: 700 !important;
  border-radius: 0 !important;
  -webkit-border-radius: 0 !important;
  -moz-border-radius: 0 !important;
  box-shadow:
    0 4px 20px rgba(255, 140, 0, 0.3),
    0 0 30px rgba(255, 171, 0, 0.15);
  transition: background-position 0.5s ease, box-shadow 0.4s ease, transform 0.3s ease !important;
  cursor: pointer;
}

.et_pb_contact_form_container .et_pb_contact_submit:hover,
body .et_pb_contact_form_container .et_pb_contact_submit:hover {
  background-position: 100% 100% !important;
  transform: translateY(-2px);
  border-radius: 0 !important;
  box-shadow:
    0 6px 25px rgba(255, 140, 0, 0.4),
    0 0 50px rgba(255, 171, 0, 0.25),
    0 0 80px rgba(255, 217, 61, 0.15) !important;
}

.et_pb_contact_form_container .et_pb_contact_submit:after {
  display: none !important;
}

/* ============================================
   FOOTER
   ============================================ */

/* Background - multiples sélecteurs pour haute spécificité */
.et-l.et-l--footer,
footer.et-l--footer,
.et-l--footer .et_pb_section,
.et-l--footer .et_pb_section_0_tb_footer,
.et-l--footer .et_pb_row,
.et-l--footer .et_pb_column,
body .et-l--footer,
body footer.et-l--footer {
  background: #030305 !important;
  background-color: #030305 !important;
}

/* Texte - haute spécificité */
.et-l.et-l--footer,
.et-l.et-l--footer .et_pb_text,
.et-l.et-l--footer .et_pb_text_inner,
.et-l.et-l--footer .et_pb_text_inner p,
.et-l.et-l--footer p,
.et-l.et-l--footer span,
.et-l--footer .ek-footer,
.et-l--footer .ek-footer p,
.et-l--footer .ek-footer .et_pb_text_inner,
.et-l--footer .ek-footer .et_pb_text_inner p,
body .et-l--footer p,
body .et-l--footer .et_pb_text_inner p {
  color: rgba(248, 249, 251, 0.6) !important;
}

/* Liens */
.et-l.et-l--footer a,
.et-l--footer .ek-footer a,
body .et-l--footer a {
  color: rgba(255, 171, 0, 0.8) !important;
}

.et-l.et-l--footer a:hover,
.et-l--footer .ek-footer a:hover,
body .et-l--footer a:hover {
  color: #FFD93D !important;
}

/* Séparateur lumineux avant le footer */
.et-l.et-l--footer,
footer.et-l--footer {
  position: relative !important;
}

.et-l.et-l--footer::before,
footer.et-l--footer::before {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  height: 2px !important;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(255, 107, 0, 0.4) 15%,
    rgba(255, 171, 0, 0.7) 35%,
    rgba(255, 217, 61, 0.9) 50%,
    rgba(255, 171, 0, 0.7) 65%,
    rgba(255, 107, 0, 0.4) 85%,
    transparent 100%
  ) !important;
  box-shadow:
    0 0 15px rgba(255, 171, 0, 0.4),
    0 0 30px rgba(255, 171, 0, 0.25),
    0 0 50px rgba(255, 171, 0, 0.15) !important;
  z-index: 10 !important;
}

/* ============================================
   MODULAR BLOCKS ANIMATION
   ============================================ */

.ek-modular-blocks {
  width: 100%;
  height: 100%;
  min-height: 200px;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.8s ease;
  padding: 20px;
}

.ek-modular-blocks.ek-mb-ready {
  opacity: 1;
}

.ek-mb-svg {
  width: 100%;
  max-width: 100%;
  height: auto;
}

.ek-mb-block-bg {
  transition: fill 0.3s ease, stroke 0.3s ease;
}

.ek-mb-block-glow {
  transition: stroke 0.3s ease, filter 0.3s ease;
}

.ek-mb-led,
.ek-mb-chip {
  transition: fill 0.2s ease;
}

.ek-mb-connection {
  transition: stroke 0.15s ease, stroke-opacity 0.15s ease;
}

/* Section Solution - layout split */
.ek-solution .ek-split {
  align-items: stretch !important;
}

.ek-solution .ek-split > .et_pb_column {
  display: flex !important;
  flex-direction: column;
  justify-content: center;
}

@media (max-width: 980px) {
  .ek-modular-blocks {
    min-height: 180px;
    margin-top: 30px;
    padding: 15px;
  }
}

@media (max-width: 767px) {
  .ek-modular-blocks {
    min-height: 150px;
    padding: 10px;
  }
}

/* ============================================
   MOBILE RESPONSIVE - 980px et moins
   ============================================ */

@media (max-width: 980px) {
  /* Equilibrium animation - réduire */
  .ek-equilibrium-anim {
    height: 80px;
  }

  /* Principles animation - réduire l'opacité */
  .ek-principles-anim {
    opacity: 0.6;
  }

  /* Bouton hero */
  .ek-hero-copy .et_pb_button {
    padding: 12px 24px !important;
    font-size: 16px !important;
  }

  /* Formulaire contact - plus grand pour touch */
  .et_pb_contact_form_container input[type="text"],
  .et_pb_contact_form_container input[type="email"],
  .et_pb_contact_form_container textarea {
    padding: 16px !important;
    font-size: 16px !important;
  }

  .et_pb_contact_form_container .et_pb_contact_submit {
    padding: 16px 32px !important;
    font-size: 16px !important;
    width: 100%;
  }

  /* H1 Hero sur mobile */
  .ek-hero-copy h1,
  body .ek-hero-copy h1 {
    color: #F8F9FB !important;
    -webkit-text-fill-color: #F8F9FB !important;
    background: none !important;
  }
}

@media (max-width: 767px) {
  /* Equilibrium animation - cacher sur très petit écran */
  .ek-equilibrium-anim {
    display: none;
  }

  /* Principles animation - réduire fortement */
  .ek-principles-anim {
    opacity: 0.4;
  }

  /* Cards et blurbs - pleine largeur */
  .ek-step,
  .ek-card-problem,
  .ek-card-usecase {
    margin-bottom: 20px !important;
  }

  /* Quote - padding réduit */
  .ek-quote {
    padding: 15px 18px !important;
    margin-top: 20px !important;
  }

  /* Footer - centré */
  .et-l.et-l--footer .et_pb_text,
  .et-l--footer .ek-footer {
    text-align: center !important;
  }

  /* Séparateur footer - moins intense */
  .et-l.et-l--footer::before,
  footer.et-l--footer::before {
    height: 1px !important;
    box-shadow:
      0 0 8px rgba(255, 171, 0, 0.3),
      0 0 15px rgba(255, 171, 0, 0.15) !important;
  }

  /* H1 plus petit sur mobile */
  .ek-hero-copy h1 {
    font-size: 32px !important;
    line-height: 1.2 !important;
  }

  .ek-hero-copy .et_pb_fullwidth_header_subhead {
    font-size: 16px !important;
  }
}

@media (max-width: 479px) {
  /* Très petits écrans - animation hero déjà masquée */

  .ek-hero-copy .et_pb_button {
    padding: 10px 20px !important;
    font-size: 14px !important;
  }

  /* Formulaire - empiler les champs */
  .et_pb_contact_form_container .et_pb_contact_field {
    width: 100% !important;
    margin-bottom: 15px !important;
  }
}
