.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-34 .elementor-element.elementor-element-ab3b1d2{width:100%;max-width:100%;}.elementor-34 .elementor-element.elementor-element-ab3b1d2.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-widget-media-carousel .elementor-carousel-image-overlay{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-34 .elementor-element.elementor-element-a005e68.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-34 .elementor-element.elementor-element-a005e68 .elementor-main-swiper{height:420px;width:100%;}.elementor-34 .elementor-element.elementor-element-a005e68 .elementor-swiper-button{font-size:20px;}body:not(.rtl) .elementor-34 .elementor-element.elementor-element-96853f4{left:63px;}body.rtl .elementor-34 .elementor-element.elementor-element-96853f4{right:63px;}.elementor-34 .elementor-element.elementor-element-96853f4{top:-15px;}.elementor-34 .elementor-element.elementor-element-de3d2ef.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-34 .elementor-element.elementor-element-de3d2ef .elementor-main-swiper{height:420px;width:100%;}.elementor-34 .elementor-element.elementor-element-de3d2ef .elementor-swiper-button{font-size:20px;}body:not(.rtl) .elementor-34 .elementor-element.elementor-element-0974aeb{left:63px;}body.rtl .elementor-34 .elementor-element.elementor-element-0974aeb{right:63px;}.elementor-34 .elementor-element.elementor-element-0974aeb{top:-15px;}.elementor-34 .elementor-element.elementor-element-3af363a.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-34 .elementor-element.elementor-element-3af363a .elementor-main-swiper{height:420px;width:100%;}.elementor-34 .elementor-element.elementor-element-3af363a .elementor-swiper-button{font-size:20px;}body:not(.rtl) .elementor-34 .elementor-element.elementor-element-711aed7{left:63px;}body.rtl .elementor-34 .elementor-element.elementor-element-711aed7{right:63px;}.elementor-34 .elementor-element.elementor-element-711aed7{top:-15px;}.elementor-34 .elementor-element.elementor-element-8ffaead.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-34 .elementor-element.elementor-element-8ffaead .elementor-main-swiper{height:420px;width:100%;}.elementor-34 .elementor-element.elementor-element-8ffaead .elementor-swiper-button{font-size:20px;}body:not(.rtl) .elementor-34 .elementor-element.elementor-element-db78062{left:63px;}body.rtl .elementor-34 .elementor-element.elementor-element-db78062{right:63px;}.elementor-34 .elementor-element.elementor-element-db78062{top:-15px;}.elementor-34 .elementor-element.elementor-element-f893ac6.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-34 .elementor-element.elementor-element-f893ac6 .elementor-main-swiper{height:420px;width:100%;}.elementor-34 .elementor-element.elementor-element-f893ac6 .elementor-swiper-button{font-size:20px;}body:not(.rtl) .elementor-34 .elementor-element.elementor-element-babf786{left:63px;}body.rtl .elementor-34 .elementor-element.elementor-element-babf786{right:63px;}.elementor-34 .elementor-element.elementor-element-babf786{top:-15px;}.elementor-34 .elementor-element.elementor-element-809cd2c.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-34 .elementor-element.elementor-element-809cd2c .elementor-main-swiper{height:420px;width:100%;}.elementor-34 .elementor-element.elementor-element-809cd2c .elementor-swiper-button{font-size:20px;}body:not(.rtl) .elementor-34 .elementor-element.elementor-element-2b3a136{left:63px;}body.rtl .elementor-34 .elementor-element.elementor-element-2b3a136{right:63px;}.elementor-34 .elementor-element.elementor-element-2b3a136{top:-15px;}.elementor-34 .elementor-element.elementor-element-605e473{width:var( --container-widget-width, 102.175% );max-width:102.175%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--container-widget-width:102.175%;--container-widget-flex-grow:0;}.elementor-34 .elementor-element.elementor-element-605e473.elementor-element{--flex-grow:0;--flex-shrink:0;}@media(max-width:1024px){.elementor-34 .elementor-element.elementor-element-a005e68.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-34 .elementor-element.elementor-element-de3d2ef.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-34 .elementor-element.elementor-element-3af363a.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-34 .elementor-element.elementor-element-8ffaead.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-34 .elementor-element.elementor-element-f893ac6.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}.elementor-34 .elementor-element.elementor-element-809cd2c.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}}@media(max-width:767px){.elementor-34 .elementor-element.elementor-element-ab3b1d2{width:100%;max-width:100%;}.elementor-34 .elementor-element.elementor-element-ab3b1d2.elementor-element{--align-self:flex-start;}.elementor-34 .elementor-element.elementor-element-a005e68.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}body:not(.rtl) .elementor-34 .elementor-element.elementor-element-96853f4{left:3.014px;}body.rtl .elementor-34 .elementor-element.elementor-element-96853f4{right:3.014px;}.elementor-34 .elementor-element.elementor-element-96853f4{top:-7.99px;}.elementor-34 .elementor-element.elementor-element-de3d2ef.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}body:not(.rtl) .elementor-34 .elementor-element.elementor-element-0974aeb{left:3.014px;}body.rtl .elementor-34 .elementor-element.elementor-element-0974aeb{right:3.014px;}.elementor-34 .elementor-element.elementor-element-0974aeb{top:-7.99px;}.elementor-34 .elementor-element.elementor-element-3af363a.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}body:not(.rtl) .elementor-34 .elementor-element.elementor-element-711aed7{left:3.014px;}body.rtl .elementor-34 .elementor-element.elementor-element-711aed7{right:3.014px;}.elementor-34 .elementor-element.elementor-element-711aed7{top:-7.99px;}.elementor-34 .elementor-element.elementor-element-8ffaead.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}body:not(.rtl) .elementor-34 .elementor-element.elementor-element-db78062{left:3.014px;}body.rtl .elementor-34 .elementor-element.elementor-element-db78062{right:3.014px;}.elementor-34 .elementor-element.elementor-element-db78062{top:-7.99px;}.elementor-34 .elementor-element.elementor-element-f893ac6.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}body:not(.rtl) .elementor-34 .elementor-element.elementor-element-babf786{left:3.014px;}body.rtl .elementor-34 .elementor-element.elementor-element-babf786{right:3.014px;}.elementor-34 .elementor-element.elementor-element-babf786{top:-7.99px;}.elementor-34 .elementor-element.elementor-element-809cd2c.elementor-skin-slideshow .elementor-main-swiper:not(.elementor-thumbnails-swiper){margin-bottom:10px;}body:not(.rtl) .elementor-34 .elementor-element.elementor-element-2b3a136{left:3.014px;}body.rtl .elementor-34 .elementor-element.elementor-element-2b3a136{right:3.014px;}.elementor-34 .elementor-element.elementor-element-2b3a136{top:-7.99px;}}/* Start custom CSS for text-editor, class: .elementor-element-ab3b1d2 */.cb-project-hero{

    position:relative;
    overflow:hidden;

    background:#101b36;

    min-height:500px;

    display:flex;
    align-items:center;

    padding:90px 8%;

}

/* quadrillage */

.cb-project-hero::before{

    content:"";

    position:absolute;
    inset:0;

    background-image:

    linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px),

    linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);

    background-size:60px 60px;

}

/* bande diagonale */

.cb-project-overlay{

    position:absolute;

    right:-180px;

    top:0;

    width:520px;

    height:100%;

    background:rgba(82,74,128,.18);

    transform:skewX(-25deg);

}

.cb-project-container{

    position:relative;

    z-index:2;

    max-width:650px;

}

.cb-project-mini-title{

    color:#ff6d28;

    letter-spacing:5px;

    font-size:14px;

    font-weight:700;

    text-transform:uppercase;

}

.cb-project-title{

    color:#fff;

    font-size:74px;

    line-height:1;

    margin-top:20px;

    margin-bottom:30px;

    font-family:Georgia, serif;

}

.cb-project-title span{

    color:transparent;

    -webkit-text-stroke:2px #ff6d28;

    font-style:italic;

    font-weight:400;

}

.cb-project-line{

    width:70px;

    height:4px;

    background:#ff6d28;

    margin-bottom:35px;

}

.cb-project-text{

    color:#a5acc0;

    font-size:18px;

    line-height:1.8;

    max-width:620px;

}

.cb-project-number{

    position:absolute;

    right:120px;

    top:80px;

    color:rgba(255,255,255,.07);

    font-size:170px;

    font-weight:700;

    font-family:Georgia, serif;

}

.cb-project-plus{

    position:absolute;

    right:130px;

    bottom:70px;

    color:rgba(255,255,255,.08);

    font-size:110px;

    font-weight:300;

}/* End custom CSS */
/* Start custom CSS for media-carousel, class: .elementor-element-a005e68 */.elementor-lightbox .dialog-widget-content {
    width: 90vw !important;
    height: 90vh !important;
    max-width: 90vw !important;
}

.elementor-lightbox .elementor-swiper-slide img {
    object-fit: contain !important;
    width: 100% !important;
    height: 100% !important;
}

.elementor-lightbox .elementor-swiper-button {
    display: flex !important;
    background: rgba(0,0,0,0.5) !important;
    padding: 20px !important;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-96853f4 */.card {
  position: relative;
  width: 300px;
  height: 420px;


  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 20px;
  color: white;

}

.badge {
  position: absolute;
  top: 15px;
  right: 20px;
  background: #ff6600;
  padding: 5px 15px;
  border-radius: 5px;
  font-weight: bold;
}/* End custom CSS */
/* Start custom CSS for media-carousel, class: .elementor-element-de3d2ef */.elementor-lightbox .dialog-widget-content {
    width: 90vw !important;
    height: 90vh !important;
    max-width: 90vw !important;
}

.elementor-lightbox .elementor-swiper-slide img {
    object-fit: contain !important;
    width: 100% !important;
    height: 100% !important;
}

.elementor-lightbox .elementor-swiper-button {
    display: flex !important;
    background: rgba(0,0,0,0.5) !important;
    padding: 20px !important;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-0974aeb */.card {
  position: relative;
  width: 300px;
  height: 420px;


  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 20px;
  color: white;

}

.badge {
  position: absolute;
  top: 15px;
  right: 20px;
  background: #ff6600;
  padding: 5px 15px;
  border-radius: 5px;
  font-weight: bold;
}/* End custom CSS */
/* Start custom CSS for media-carousel, class: .elementor-element-3af363a */.elementor-lightbox .dialog-widget-content {
    width: 90vw !important;
    height: 90vh !important;
    max-width: 90vw !important;
}

.elementor-lightbox .elementor-swiper-slide img {
    object-fit: contain !important;
    width: 100% !important;
    height: 100% !important;
}

.elementor-lightbox .elementor-swiper-button {
    display: flex !important;
    background: rgba(0,0,0,0.5) !important;
    padding: 20px !important;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-711aed7 */.card {
  position: relative;
  width: 300px;
  height: 420px;


  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 20px;
  color: white;

}

.badge {
  position: absolute;
  top: 15px;
  right: 20px;
  background: #ff6600;
  padding: 5px 15px;
  border-radius: 5px;
  font-weight: bold;
}/* End custom CSS */
/* Start custom CSS for media-carousel, class: .elementor-element-8ffaead */.elementor-lightbox .dialog-widget-content {
    width: 90vw !important;
    height: 90vh !important;
    max-width: 90vw !important;
}

.elementor-lightbox .elementor-swiper-slide img {
    object-fit: contain !important;
    width: 100% !important;
    height: 100% !important;
}

.elementor-lightbox .elementor-swiper-button {
    display: flex !important;
    background: rgba(0,0,0,0.5) !important;
    padding: 20px !important;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-db78062 */.card {
  position: relative;
  width: 300px;
  height: 420px;


  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 20px;
  color: white;

}

.badge {
  position: absolute;
  top: 15px;
  right: 20px;
  background: #ff6600;
  padding: 5px 15px;
  border-radius: 5px;
  font-weight: bold;
}/* End custom CSS */
/* Start custom CSS for media-carousel, class: .elementor-element-f893ac6 */.elementor-lightbox .dialog-widget-content {
    width: 90vw !important;
    height: 90vh !important;
    max-width: 90vw !important;
}

.elementor-lightbox .elementor-swiper-slide img {
    object-fit: contain !important;
    width: 100% !important;
    height: 100% !important;
}

.elementor-lightbox .elementor-swiper-button {
    display: flex !important;
    background: rgba(0,0,0,0.5) !important;
    padding: 20px !important;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-babf786 */.card {
  position: relative;
  width: 300px;
  height: 420px;


  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 20px;
  color: white;

}

.badge {
  position: absolute;
  top: 15px;
  right: 20px;
  background: #ff6600;
  padding: 5px 15px;
  border-radius: 5px;
  font-weight: bold;
}/* End custom CSS */
/* Start custom CSS for media-carousel, class: .elementor-element-809cd2c */.elementor-lightbox .dialog-widget-content {
    width: 90vw !important;
    height: 90vh !important;
    max-width: 90vw !important;
}

.elementor-lightbox .elementor-swiper-slide img {
    object-fit: contain !important;
    width: 100% !important;
    height: 100% !important;
}

.elementor-lightbox .elementor-swiper-button {
    display: flex !important;
    background: rgba(0,0,0,0.5) !important;
    padding: 20px !important;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-2b3a136 */.card {
  position: relative;
  width: 300px;
  height: 420px;


  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 20px;
  color: white;

}

.badge {
  position: absolute;
  top: 15px;
  right: 20px;
  background: #ff6600;
  padding: 5px 15px;
  border-radius: 5px;
  font-weight: bold;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-605e473 */.cta-section {
  background-color: #e8622a; /* Couleur orange */
  padding: 20px 40px;
  width: 100%;
}

.cta-content {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
}

.cta-text h2 {
  color: white;
  margin: 0;
  font-size: 1.5rem;
}

.cta-text p {
  color: #fcebe0;
  margin: 5px 0 0 0;
}

.cta-button {
  background-color: #1a2a6c; /* Bleu foncé */
  color: white;
  padding: 15px 25px;
  text-decoration: none !important;
  font-weight: bold;
  white-space: nowrap;
}

/* Responsive : passage en colonne sur mobile */
@media (max-width: 768px) {
  .cta-content {
    flex-direction: column;
    text-align: center;
  }
}/* End custom CSS */