    @font-face {
      font-family: Univers-59;
      src: url(../fonts/Univers-59.otf);
    }
    @font-face {
      font-family: Univers-57;
      src: url(../fonts/Univers-57.otf);
    }
    }
    @font-face {
      font-family: Univers-47;
      src: url(../fonts/Univers-47.otf);
    }
    }
    @font-face {
      font-family: Univers-67;
      src: url(../fonts/Univers-67.otf);
    }
    }
    @font-face {
      font-family: Knockout-67;
      src: url(../fonts/Knockout-67.otf);
    }

    body {
      background-image: url('../img/motif-background-horizontal.webp');
      background-repeat: repeat-y;
      background-position: top center;
      background-attachment: fixed;
      margin: 0;
      padding: 0;
    } 
    }

    body {
      background-image: url('../img/motif-background-horizontal.webp');
      background-repeat: repeat-y;
      background-position: top center;
      background-attachment: fixed;
      margin: 0;
      padding: 0;
    } 

    .form-group{
      margin-bottom: 0.5rem;
    }
    .univers-59{
      font-family: "Univers-59";
      /*font-size: 28px;*/
      font-weight: 400;
      line-height: initial;
    }
    .univers-57{
      font-family: "Univers-57";
      /*font-size: 16px;*/
    }    
    .univers-47{
      font-family: "Univers-47";
      /*font-size: 16px;*/
    }    
    .univers-67{
      font-family: "Univers-67";
      /*font-size: 16px;*/
    }
    .Knockout-67{
      font-family: "Univers-67";
      /*font-size: 16px;*/
    }

    #mc_embed_signup{clear:left; font-size:13px; }
    #mc_embed_signup h2{font-size:1.5em !important;}

    /* Add your own Mailchimp form style overrides in your site stylesheet or in this style block.
      We recommend moving this block and the preceding CSS link to the HEAD of your HTML file. */
    .asterisk,.indicates-required{
      color: red;
    }
    p{
      text-align: justify;
    }
    .table{
      table-layout: fixed;
    }
    .form-control{
      font-size: inherit;
    }
    .big_form h1{
      font-size: 45px;
    }
    .bg-black{
      background-color: #000000 !important;
    }
    .bg-perso-grey{
      background-color: #F0F0EF !important;
    }
    .bg-perso-black{
      background-color: #222222 !important;
    }
    .disp-flex-lapt{
      display: flex;
    }
    .custom-border-form{
      background-color:#F6F6F6;
      border: 5px solid #fbce13 !important;
      padding: 2vh;
      height: fit-content;
      margin-bottom: 4vh;
    }
    .top-3{
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      margin-right: 25px;
    }
    .box-size{
      padding: 18px;
      margin:7px;
    }
    .white-box{
      background-color: #fbce13;
      
    }
    .black-box{
      background-color: #121213;
    }
    .white-box p, .black-box p{
      text-align: center !important;
    }
    .title-box{
      font-size:1.2em !important;
    }
    .fsz-25{
      font-size: 25px;
    }
    .pad-36{
      padding: 36px !important;
    }
    .pad-16{
      padding: 30px 16px !important;
    }
    .pad-right-5{
      padding-right: 10vh;
    }
    .pad-right-4{
      padding-right: 7vh;
    }
    .pb-10{
      padding: 1.5em;
    }
    .custom-control-input:checked~.custom-control-label::before {
        color: #fff;
        border-color: #ffc107;
        background-color: #fbce13;
    }
    .custom-control-input:not(:disabled):active~.custom-control-label::before {
        color: #fff;
        background-color: #fbce13;
        border-color: #ffc107;
    }
    img.img-fluid {
        width: inherit;
    }
    img.logo-img{
      width: fit-content;
      margin: 0 auto;
    }
    .yellow-title{
      color: #ffcc00;
      text-transform: uppercase;
      font-size: 3em;
    }
    h3.yellow-title {
        font-size: 2em;
        /*padding-right: 2.6em;*/
    }
    /*h3.custom-h3 {
      color: #f7f7f7;
      font-size: 1.6em;
      text-transform: uppercase;
    }*/
    h3.unset-after{
      margin-bottom: 35px;
    }
    h3:after {
      content: '';
      display: inherit;
      vertical-align: middle;
      width: 75px;
      height: 5px;
      background: #000000;
      margin-top: 15px;
      margin-bottom: 15px;
    }
    h3.unset-after:after{
      content: none;
    }
    h3.custom-h3:after{
      margin: 15px auto;
    }
    h3.black-line:after{
      background: black;
    }
    h3.yellow-title-video:after{
      background: #eeeeee;
    }
    p {
        color: #d1d1d1;
        font-size: 0.92em;
    }
    p.top-text {
      color: #000;
      font-size: 1.18em;
      text-align: center;
      /*padding-right: 5em;*/
    }
    p.white-text {
      color: #fff;
      font-size: 1em;
      /*padding-right: 5em;*/
    }
    p.grey-text{
      color: #d5d5d5;
      font-size: 1.25em;
    }
    p.black-text{
      color: black;
      font-size: 1.1em;
    }
    .f-s-16px{
      font-size: 16px;
    }
    .f-s-13px{
      font-size: 13px;
    }
    .f-s-125em{
      font-size: 1em;
    }
    .pad-r-8em{
      padding-right: 8em;
    }
    .pad-bot-70{
      padding-bottom: 70px;
    }
    .pad-top-70{
      padding-top: 70px;
    }
    .pad-70{
      padding: 30px;
    }
    .marg-0-auto{
      margin: 0-auto;
    }
    .marg-r-20{
        margin-right: 20px;
    }
    #table .bg-black{
      background-color: #121212;
    }   
    #table .bg-grey{
      background-color: #2d2d2d;
    }
    #table .bg-yellow{
      background-color: yellow;
    }
    .table thead th, .table tbody, .table tbody td,.table tbody th {
      vertical-align: middle;
      border: unset !important;
    }
    .bg-image{
      background-image: url('../img/bg-yellow.jpg');
    }
    .bg-dark-perso{
      background-color: #131313;
    }
    .bg-secondary-perso{
      background-color: #2b2b2b;
    }
    .img-table{
        display: none;
    }
    .condition_txt{
      margin-left: 20px;
    }
    #myBtn {
      display: inline-block;
      background-color: #f0b012;
      width: 50px;
      height: 50px;
      text-align: center;
      border-radius: 4px;
      position: fixed;
      bottom: 10px;
      right: 30px;
      transition: background-color .3s, 
        opacity .5s, visibility .5s;
      opacity: 1;
      visibility: visible;
      z-index: 1000;
      text-decoration: none;
    }
    #myBtn::after {
      content: "\f003";
      font-family: FontAwesome;
      font-weight: normal;
      font-style: normal;
      font-size: 2em;
      line-height: 50px;
      color: #fff;
    }
    #myBtn:hover {
      cursor: pointer;
      background-color: #fec601;
    }
    #myBtn:active {
      background-color: #ffcc00;
    }
    #myBtn.show {
      opacity: 0;
      visibility: hidden;
    }
    .hyphens{
      word-wrap: break-word;
      overflow-wrap: break-word;
      hyphens: auto;
    }

    .yellow-text {
      color: #fbce13;
    }

    .hero-subtitle {
      font-size: 1.8em;
      color: white;
      margin-bottom: 0;
      line-height: 1.4;
    }

    .genset-box {
      padding: 0;
      margin: 0;
    }

    .genset-box img {
      width: 100%;
      height: auto;
      display: block;
    }

    .bottom-banner-section {
      background: url('../img/banner-bottom-bg.webp') repeat-y bottom center #000000 !important;
      padding: 0;
    }

    .bottom-banner-section img {
      width: 100%;
      height: auto;
      display: block;
    }

    .hero-section {
      position: relative;
      background-image: url('../img/hero-lp.webp');
      background-size: cover;
      /*background-position: center;*/
      background-repeat: no-repeat;
      min-height: 711px;
    }

    .hero-img-mobile {
      display: none;
    }

    .hero-overlay {
      /*min-height: 100vh;
      padding: 80px 0;*/
      display: flex;
      align-items: center;
    }

    /* ===== HERO FORM SUPERPOSÉ ===== */
  .hero-form-wrapper {
    position: absolute;
    top: 15px;
    right: 0;
    /*transform: translateY(-40%);*/
    max-width: 420px;
    width: 100%;
    z-index: 2;
  }
  .hero-overlay{
    position: relative; 
    z-index: 1; 
  }

  /* la section suivante reste sous le hero */
  .genset-section { 
    position: relative; 
    background-color: #ffffff;
    z-index: 0; 
    padding: 10px;
  }
  /* alignement gauche */
  .genset-left {
    padding-left: 2vw; /* ajuste cette valeur selon ta maquette */
  }

  /* alignement droite pour finir au bord du form */
  .genset-right {
    padding-right: 3vw; /* même marge que celle du form */
    display: flex;
    justify-content: flex-end;
  }

  /* box produit */
  .genset-box {
    max-width: 440px; /* largeur max cohérente avec ton design */
    padding: 0;
    margin: 0;
  }

  .genset-box img {
    width: 100%;
    height: auto;
    display: block;
  }

  /* ===== MOTIF BACKGROUND SUR GENSET ===== */
  .bg-motif {
    /*background-image: url('../img/motif-background-horizontal.webp');*/
    background-repeat: repeat-x;
    background-position: top center;
    background-color: #fff;
  }

  /* ===== CTA GAMME ===== */
  .cta-gamme {
    display: inline-block;
    background-color: #ffc107;
    color: #000;
    font-weight: 600;
    padding: 12px 30px;
    margin: 25px auto;
    text-transform: uppercase;
    box-shadow: 0 4px 8px rgba(0,0,0,0.15);
    transition: background-color 0.3s ease;
  }

  .cta-gamme:hover {
    background-color: #e0a800;
    color: #000;
  }

  /* ===== BARRE JAUNE FINALE ===== */
  .yellow-bar-section img {
    display: block;
    width: 100%;
    height: auto;
  }

  .genset-left,
  .genset-right {
    padding-left: 0;
    padding-right: 0;
    justify-content: center;
    text-align: center;
  }

  .genset-box {
    margin-bottom: 30px;
    max-width: 100%;
  }

  /* cacher les versions mobiles par défaut */
  .img-mobile {
    display: none !important;
  }
  .img-desktop {
    display: block !important;
  }

    @media screen and (max-width:1080px){
      .hero-section {
        background: none !important;
        min-height: auto;
      }
      /* afficher la div image */
      .hero-img-mobile {
        display: block;
      }

      .hero-img-mobile img {
        width: 100%;
        display: block;
        object-fit: cover;
        max-height: 729px; /* 🔸 adapte la hauteur ici */
      }
      
      .hero-overlay{
        padding: 10px 0;
        min-height:auto
      }

      /* formulaire en bloc */
      .hero-form-wrapper {
        position: relative;
        top: auto;
        right: auto;
        transform: none;
        margin-top: 20px;
        margin-bottom: 0;
        padding: 0;
        width: 100%;
        max-width: 100%;
        z-index: 2;
      }

      #mc_embed_signup{
        clear:left;
        font-size:1.7em;
      }
      #mc_embed_signup h2{font-size:1.5em !important;}
      #myBtn{ display: none;}

      .d-flex.flex-column {
        text-align: center;
      }
      .big_form h1{
        font-size: xx-large;
      }
      .disp-flex-lapt{
        display: block;
      }
      }
      p.top-text{
        font-size: unset;
      }
      p{
        font-size: 14px;
      }
      .pad-70{
        padding: 0;
        padding-top: 30px;
        padding-bottom: 30px;
      }
      .float-center-mobile{
        float: unset !important;
      }
      .custom-flex-mobile{
        display: flex;
        flex-direction: column;
      }
      .custom-flex-mobile-reverse{
        display: flex;
        flex-direction: column-reverse;
      }
      .min-width-100{
        min-width: 100%;
      }
      .row {
          text-align: center;
      }
      h3:after{
        margin: 15px auto;
      }
      .pad-right-5{
        padding-right: unset;
      }
      .pad-right-4{
        padding-right: 15px !important;
        margin-left: unset;
      }
      .marg-bot-20{
        margin-bottom: 20px;
      }
      .pad-right-0{
        padding-right: 15px !important;
        margin-left: unset;
      }
      .marg-right-0{
        margin-right: -15px !important;
      }
      .marg-r-20{
        margin-right: 0;
        margin: 0 auto;
        margin-top: 50px;
      }
      p{
        text-align: center;
      }
      br{
        display: none;
      }
      p.black-text.Knockout-67.f-s-125em.d-flex.align-items-center,p.white-text.Knockout-67.f-s-125em.d-flex.align-items-center{
        width: fit-content;
        margin: 0 auto;
      }
      .hero-title {
        font-size: 2em;
      }
      .hero-subtitle {
        font-size: 1.3em;
      .hero-title {
        font-size: 2em;
      }
      .hero-subtitle {
        font-size: 1.3em;
      }
      .hero-badge {
        max-width: 180px;
        margin: 0 auto 20px;
      }
    }

    @media screen and (max-width:991px){
      h3.yellow-title{
        padding-right: unset;
        font-size: xx-large;
      }
      p.top-text{
        padding-right: unset;
      }
      .condition_txt{
        margin-left: 0px;
      }
      .table tbody td{
        vertical-align: middle !important;
      }
      .fsz-25 {
        font-size: 16px !important;
      }
      .univers-59{
        font-size: 24px;
        padding: 10px !important;
      }
      .univers-47 {
        font-size: 14px;
        padding: 15px !important;
      }
      h3.yellow-title{
        font-size: 3em;
      }
      #mc_embed_signup{
        clear:left;
        font-size:1.1em;
      }
      #mc_embed_signup h2{font-size:1.2em !important;}
      #myBtn{ display:block;}
    }
    @media screen and (max-width:767px) and (orientation: portrait){
      .top-3{
        display: block;
        margin: 0;
      }
      iframe{
        max-width: max-content;
      }
      .hero-section {
        background: none !important;
        min-height: auto;
      }
      /* afficher la div image */
      .hero-img-mobile {
        display: block;
      }

      .hero-img-mobile img {
        width: 100%;
        display: block;
        object-fit: cover;
        max-height: 350px; /* 🔸 adapte la hauteur ici */
      }
      
      .hero-overlay{
        padding: 20px 0;
      }

      /* formulaire en bloc */
      .hero-form-wrapper {
        position: relative;
        top: auto;
        right: auto;
        transform: none;
        margin-top: 0;
        margin-bottom: 0;
        padding: 0;
        width: 100%;
        max-width: 100%;
        z-index: 2;
      }

      /* remplacer les images desktop */
      .img-desktop {
        display: none !important;
      }
      .img-mobile {
        display: block !important;
      }

      /* espacement entre sections */
      .product-box {
        margin-bottom: 25px;
      }

    }
    @media (min-width: 500px) {
      #myBtn {
        margin: 30px;
      }
    }
    @media screen and (max-width:445px){
      .table{
        display: none;
      }
      .img-table{
        display: block
      }
      h2.yellow-title{
        font-size: 2em;
      }
    }