.elementor-2906 .elementor-element.elementor-element-1eb0ce7{--display:flex;--min-height:550px;--overlay-opacity:0.5;}.elementor-2906 .elementor-element.elementor-element-1eb0ce7::before, .elementor-2906 .elementor-element.elementor-element-1eb0ce7 > .elementor-background-video-container::before, .elementor-2906 .elementor-element.elementor-element-1eb0ce7 > .e-con-inner > .elementor-background-video-container::before, .elementor-2906 .elementor-element.elementor-element-1eb0ce7 > .elementor-background-slideshow::before, .elementor-2906 .elementor-element.elementor-element-1eb0ce7 > .e-con-inner > .elementor-background-slideshow::before, .elementor-2906 .elementor-element.elementor-element-1eb0ce7 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#000000;--background-overlay:'';}.elementor-2906 .elementor-element.elementor-element-b864fb0{--spacer-size:19px;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-2906 .elementor-element.elementor-element-aac6b7c{text-align:center;font-family:"Roboto", Sans-serif;font-weight:500;color:#FFFFFF;}.elementor-2906 .elementor-element.elementor-element-ba16cdb{--display:flex;}.elementor-2906 .elementor-element.elementor-element-ba16cdb.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-2906 .elementor-element.elementor-element-38fc0bd{--display:flex;--min-height:0px;}.elementor-2906 .elementor-element.elementor-element-b48a63f{--display:flex;}.elementor-2906 .elementor-element.elementor-element-b48a63f:not(.elementor-motion-effects-element-type-background), .elementor-2906 .elementor-element.elementor-element-b48a63f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, #121A62 0%, #000000 100%);}.elementor-2906 .elementor-element.elementor-element-eba82c4{--display:flex;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-2906 .elementor-element.elementor-element-ba16cdb{--width:100%;}}/* Start custom CSS for html, class: .elementor-element-6f322a1 */<style>
  body {
    font-family: 'Roboto', sans-serif;
    background: #fff;
    margin: 0;
    padding: 0;
  }

  /* Transition wave entre sections */
  .section-transition {
    position: relative;
    width: 100%;
    height: 100px;
    overflow: hidden;
    background: #fff;
  }

  .section-transition svg {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }

  /* Container premium */
  .vision-wrapper {
    width: 100%;
    padding: 100px 20px;
    background: #fff;
    display: flex;
    justify-content: center;
    position: relative;
    overflow: hidden;
  }

  /* Reflets légers en arrière-plan */
  .vision-wrapper::before {
    content: "";
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle at center, rgba(0,0,0,0.04), transparent 70%);
    animation: pulse 10s infinite ease-in-out;
  }
@keyframes pulse {
    0% { transform: scale(1); opacity: 0.6; }
    50% { transform: scale(1.15); opacity: 0.3; }
    100% { transform: scale(1); opacity: 0.6; }
  }

  .vision-container {
    max-width: 1200px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 60px;
    background: #fff;
    border-radius: 20px;
    box-shadow: 0 12px 35px rgba(0,0,0,0.08);
    padding: 60px;
    position: relative;
    overflow: hidden;
  }
/* Effet shimmer subtil */
  .vision-container::after {
    content: '';
    position: absolute;
    top: 0; left: -150%;
    width: 300%;
    height: 100%;
    background: linear-gradient(120deg, transparent, rgba(255,255,255,0.5), transparent);
    transform: skewX(-25deg);
    animation: shimmer 12s infinite linear;
    pointer-events: none;
  }

  @keyframes shimmer {
    from { left: -150%; }
    to { left: 150%; }
  }
  /* Texte */
  .vision-text {
    flex: 1.2;
    position: relative;
    z-index: 2;
  }

  .vision-text h2 {
    font-size: 40px;
    font-weight: 700;
    margin-bottom: 25px;
    color: #111;
    line-height: 1.2;
    position: relative;
  }

  .vision-text h2::after {
    content: '';
    position: absolute;
    bottom: -12px;
    left: 0;
    width: 70px;
    height: 4px;
    background: linear-gradient(90deg, #111, #555);
    border-radius: 2px;
  }
 .vision-text p {
    font-size: 18px;
    line-height: 1.8;
    color: #333;
    margin-bottom: 20px;
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.8s ease;
  }

  .vision-text p.show {
    opacity: 1;
    transform: translateY(0);
  }

  /* Image */
  .vision-image {
    flex: 1;
    position: relative;
    z-index: 2;
    border-radius: 16px;
    overflow: hidden;
    transform: translateX(30px);
    opacity: 0;
    transition: all 1s ease;
  }
 .vision-image.show {
    transform: translateX(0);
    opacity: 1;
  }

  .vision-image img {
    width: 100%;
    height: auto;
    object-fit: cover;
    display: block;
    transition: transform 0.6s ease;
  }

  .vision-image img:hover {
    transform: scale(1.05);
  }

  /* Responsive */
  @media screen and (max-width: 950px) {
    .vision-container {
      flex-direction: column;
      padding: 40px;
    }

    .vision-text h2 {
      font-size: 32px;
    }
  .vision-text p {
      font-size: 16px;
    }
  }
</style>/* End custom CSS */