/*
Theme Name: Twenty Twenty-Four-child
Theme URI: https://wordpress.org/themes/twentytwentyfour/
Author: the WordPress team
Author URI: https://wordpress.org
Description: Twenty Twenty-Four is designed to be flexible, versatile and applicable to any website. Its collection of templates and patterns tailor to different needs, such as presenting a business, blogging and writing or showcasing work. A multitude of possibilities open up with just a few adjustments to color and typography. Twenty Twenty-Four comes with style variations and full page designs to help speed up the site building process, is fully compatible with the site editor, and takes advantage of new design tools introduced in WordPress 6.4.
Requires at least: 6.4
Tested up to: 6.6
Requires PHP: 7.0
Version: 1.2
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: twentytwentyfour
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, style-variations, accessibility-ready, blog, portfolio, news
*/

/* GENERAL STYLES */
html, body {
  overscroll-behavior-x: none;
}
body {
  background-color: #141F3C;
  background-image: url("/wp-content/uploads/2025/02/Background.webp");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-attachment: fixed;
  margin: 0;
  padding: 0;
  -webkit-tap-highlight-color: transparent;
  font-family: 'Instrument Sans', sans-serif;
}
#content {
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.5s ease, visibility 0s linear 0.5s;
}
.home main{
  opacity: 1!important;
  visibility: visible!important;
}
html, body {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
}
main{
  margin-block-start: 0rem!important;
}
.has-base-background-color{
  background-color: transparent!important;
  position: fixed;
  width: 100%;
}
:where(.wp-block-group.wp-block-group-is-layout-constrained){
  display: none!important;
}
h2{
  position: relative;
  font-size: 48px;
}
h2::after {
  content: '';
  display: block;
  width: 100%;
  height: 24px;
  background: url('/wp-content/uploads/2024/10/Vector-2-1.png') no-repeat center center;
  background-size: contain;
  position: absolute;
  left: 14%;
  transform: translateX(-50%);
  opacity: 0.7;
  transition: transform 0.3s ease, opacity 0.3s ease;
}
.center>div>h2::after{
  left: 50%;
}
.nav-container{
  position: fixed;
  z-index: 10;
}
a:focus{
  color: #d7543b!important;
}
.elementor-message{
  color: white!important;
  font-weight: 700!important;
  background-color: rgba(0, 0, 0, 0.7)!important;
  padding: 15px!important;
  border-radius: 15px!important;
  width: 50%!important;
  display: flex!important;
  align-items: center!important;
  text-align: center!important;
}
body.admin-bar .dialog-type-lightbox{
  z-index: 1!important;
}
.nav-container{
  opacity: 0;
  visibility: hidden;
}
.nav-container > div > div > div>img, #site-logo{
  position: fixed;
  z-index: 0;
  top: 15px;
  left: 50px;
  transition: all ease 0.3s;
}
.nav-container > div > div > div>img:hover{
  cursor: pointer;
  transform: scale(1.25);
  transition: all ease 0.3s;
}
.noneClass{
  display: none!important;
}
h1.elementor-heading-title {
  visibility: visible !important;
  opacity: 1 !important;
  animation: none !important;
  transition: none !important;
}
.a3_lazyload_spinner, .a3_lazyload {
  display: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/**/

/* ---- HOME PAGE ---- */

video{
  height: 130vh!important;
}

.elementor-element-d2eb125 {
  background-size: cover !important;
  background-position: center !important;
}
.main-video-home{
  background-color: #141F3C;
}

/* QUI SOMMES NOUS */

.about-text > div > p, .about-text-2 > div > p{
  font-size: 20px;
  line-height: 2rem;
}
.about-separator{
  display: flex;
  height: 100px;
}

@media(max-width: 803px){
  .about-text > div > p, .about-text-2 > div > p{
    font-size: 17px;
    line-height: 1.7rem;
  }
}
@media(max-width: 646px){
  #about-section{
    padding: 75px!important;
  }
}
@media(max-width: 517px){
  #about-section{
    padding: 50px!important;
    gap: 1.2rem!important;
  }
  .about-text > div > p, .about-text-2 > div > p{
    font-size: 17px;
  }
  h2{
    font-size: 1.7rem;
  }
  .nav-container > div > div > div>img, #site-logo{
    left: 15px;
    top: 20px;
  }
}
@media(max-width: 452px){
  .nav-container > div > div > div>img, #site-logo{
    top: 15px;
  }
}
@media(max-width: 370px){
  .about-text > div > p, .about-text-2 > div > p{
    font-size: 16px;
    line-height: 1.6rem;
  }
  #about-section{
    padding: 35px!important;
  }
}

/**/

/* WHAT WE OFFER */

@keyframes fadeIn{
  from{
    opacity: 0;
  }to{
    opacity: 1;
  }
}

.container-offer-scrollable > div {
  grid-template-columns: 1fr 0.75fr!important;
  padding: 0 50px!important;
  grid-gap: 124px!important;
}
.container-offer-content{
  display: flex;
  justify-content: center;
  margin: 0!important;
}
.offer-text {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  color: white;
  padding-top: 120px;
}
.offer-title > div > p{
  font-size: 32px;
  font-weight: 600!important;
}
.offer-subtitle > div > p{
  font-size: 16px;
  font-weight: 600!important;
  line-height: 24px;
}
.offer-content > div > p{
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0.16px;
}
.none{
  visibility: hidden!important;
  animation: fadeIn 2s forwards;
  transition: ease-in-out 1s forwards;
}
.img-offer > div > img{
  width: 632px;
  height: 560px;
  object-fit: cover;
  transition: all ease 0.1s;
}
.img-offer{
  position: sticky;
  top:20%;
  width: 100%;
  left: 10%;
}

@media(max-width: 923px){
  .img-offer > div > img{
    width: 300px;
  }
  .img-offer > div {
    padding: 0px 0px 0px 0px!important;
  }
  .container-offer-content{
    margin: 25px 0!important;
  }
  #offer-title-section{
    margin-bottom: 25px!important;
  }
}
@media(max-width: 767px){
  .img-offer-1, .img-offer-2, .img-offer-3{
    visibility: visible!important;
  }
  .container-offer-scrollable {
    grid-template-columns: inherit!important;
  }
  .container-offer-scrollable > div {
    grid-template-rows: inherit!important;
  }
}
@media(max-width: 517px){
  .offer-content > div > p {
    font-size: 15px;
    margin-bottom: 0px!important;
  }
  .offer-title > div > p{
    font-size: 27px!important;
  }
  .offer-subtitle > div > p{
    font-size: 14px!important;
  }
  .container-offer-content{
    margin: 20px 0!important;
  }
  .container-offer-content {
    gap: 1rem!important;
    margin-top: 10px!important;
  }
  .img-offer{
    padding-top: 25px!important;
  }
}
@media(max-width: 408px){
  .container-offer-scrollable {
    padding-left: 25px!important;
    padding-right: 25px!important;
  }
}
@media(max-width: 376px){
  .container-offer-content div:nth-child(4) > div > div > div > div > button, .container-offer-content div:nth-child(4) > div > div > div > div:last-child > div > button{
    font-size: 13px;
  }
}

/**/

/* COMPANY IN NUMBERS */

@keyframes luckie {
  0% {
    margin-top: 0;
  }
  100% {
    margin-top: -11em;
  }
}

[data-id="ba0e649"] > .elementor-widget-container{
  display: flex;
  align-items: center;
}
.container-numbers {
  display: flex;
  justify-content: center;
  align-items: center;
}
.container-numbers div > p{
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.numbers-section-number{
  background: url("/wp-content/uploads/2024/10/Vector-1.png") no-repeat;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 50px;
  overflow: visible;
  background-size: contain; 
  font-size: 50px;
}
.number-precision{
  font-size: 17px;
  font-weight: 300;
  color: white!important;
}
.counter {
  height: 1.5em;
  overflow: hidden;
  margin-bottom: 15px !important;
}
.digits {
  float: left;
  list-style-type: none;
  font-size: 1em;
  line-height: 1em;
  transition: margin-top 0.3s ease;
  padding-inline-start: 0px!important;
  animation-duration: 1.5s;
  animation-timing-function: ease-out;
  animation-fill-mode: forwards;
  margin-top: 80px;
}
.digits-third > li {
  color: #F6F8FF !important;
  font-weight: 600 !important;
  font-size: 64px;
  line-height: 80px;
}
.digits-1 {
  animation-delay: 0s;
}
.digits-2 {
  animation-delay: 0.2s;
}
.digits-3 {
  animation-delay: 0.4s;
}
.digits-4 {
  animation-delay: 0.6s;
}
.luckie {
  animation-name: luckie;
}

@media(max-width: 1112px){
  .container-numbers-home > div{
    padding-top: 90px!important;
    padding-bottom: 120px!important;
  }
}
  @media(max-width: 803px){
    .container-numbers-home {
      margin-top: 60px!important;
  }
  .container-numbers-home > div {
    padding-bottom: 60px!important;
  }
}

/**/

/* TOUTES NOS REALISATION BUTTTON */

.rotating-button-container {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 120px;
  height: 120px;
  z-index: 0;
}
.rotating-button {
  position: relative;
  z-index: 2;
  background-color: #d7543b;
  color: #fff;
  width: 50px;
  height: 50px;
  border: none;
  font-size: 11px;
  cursor: pointer;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px 11px;
  transition: smooth 2s;
}
.rotating-button:hover {
  background-color: black;
  transition: smooth 2s;
}
.rotating-button-transparent:hover, .rotating-button-transparent:focus {
  cursor: normal;
  background-color: transparent;
}
.rotating-button-transparent{
  position: relative;
  z-index: 1;
  background-color: transparent;
  color: #fff;
  width: 50px;
  height: 50px;
  border: none;
  font-size: 11px;
  cursor: pointer;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px 11px;
  transition: smooth 2s;
}
.rotating-text-svg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  transform-origin: center;
  animation: rotateText 8s linear infinite;
  letter-spacing: 7px;
  font-size: 22px;
}
.textPath{
  letter-spacing: 5px;
}
[data-id='f900662'] > div{
  display: inline-table!important;
}
#button-realisation > div > div {
  display: flex!important;
  justify-content: center!important;
}

@keyframes rotateText {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

@media(max-width: 1112px){
  .container-button-realisation > div{
    padding-top: 120px!important;
    margin-bottom: 30px!important;
  }
  .container-button-realisation{
    margin-bottom: 0px!important;
  }
}
@media(max-width: 803px){
  .container-button-realisation > div{
    padding-top: 90px!important;
    margin-bottom: 10px!important;
  }
}

/**/

/* BENEFICES */

.general-container-savoir-plus{
  display: flex;
  justify-content: center;
}
.container-benefices {
  display: flex;
  gap: 1rem;
  justify-content: center;
  width: 85%;
}
.container-benefices > div > h2{
  display: block;
}
.benefices-list{
  gap: 0.5rem;
}
.benefices-list-element > div > div > a:hover{
  color: white!important;
  transition: all ease-in 0.3s;
}
.benefices-list-element > div > div > a{
  padding: 0px!important;
}
.benefices-savoir-plus-container > div > div > a{
  padding: 0px;
  font-weight: 400;
}
.benefices-savoir-plus-container > div > div > a:hover{
  color: #b7b7b7;
  transition: all ease-in-out 0.3s;
}
.benefices-savoir-plus-container > div > div > a > span > span > svg{
  fill: #D7563E;
}
.container-en-savoir-plus{
  display: flex;
  align-items: center;
  gap: 0.25rem;
  color: white;
  margin-top: 40px;
}
.container-arrow-en-savoir-plus{
  display: flex;
}
.benefices-savoir-plus-container
.container-benefices > p{
  margin-top: 50px;
  color: white;
  font-size: 12px;
}
.container-benefices {
  position: relative;
}
.container-benefices > p::before {
  content: "";
  height: 1px;
  width: 100%;
  background-color: rgb(201, 201, 201);
  position: absolute;
  top: 280px;
  left: 0;
}
.benefices-img > div > img{
  width: 75%;
  border-radius: 15px;
}
.general-container-savoir-plus{
  display: flex;
  justify-content: center;
  align-items: center;
}

/**/

/* ATELIER */

.atelier-container > p{
  color: white;
}
.container-swiper-atelier {
  z-index: 0;
}
.container-swiper-atelier > div > div > div > div > div > div > figure > img{
  height: 400px;
}
#prev{
  position: absolute;
  top: -70px;
  left: 12px;
}
#next{
  position: absolute;
  top: -70px;
  left: 110px;
}
#next > svg, #prev > svg{
  border: 1px solid white;
  padding: 10px;
  font-size: 40px;
  border-radius: 10px;
  width: 90px;
  transition: all ease-in-out 1s;
}
#next:focus, #prev:focus{
  -webkit-tap-highlight-color: transparent;
}
#next > svg:hover, #prev > svg:hover {
  background-color: #D7563E;
  border: none;
  transition: all ease-in-out 1s;
}

@media(max-width: 1112px){
  .container-home-workshop{
    margin-top: 60px!important;
  }
  .container-swiper-atelier{
    margin-bottom: 190px!important;
  }
}
@media(max-width: 803px){
  .container-home-workshop{
    margin-top: 0px!important;
    margin-bottom: 0px!important;
    padding: 50px 50px 75px 50px!important;
  }
  .container-home-workshop > div > div:last-child{
    padding: 0!important;
  }
  .container-swiper-atelier{
    margin-bottom: 95px!important;
  }
  #prev{
    left: 40px;
  }
  #next{
    left: 140px;
  }
}
@media(max-width: 767px){
  #prev, #next{
    top: -45px;
  }
}

/**/

/* TRUST SECTION */

.container-trust-sliders > div {
  overflow-x: hidden;
}
.trust-carousel-right > div {
  --translateX: 0px!important;
  width: 100%!important; 
}

@media(max-width: 1112px){
  .container-trust-sliders{
    margin-bottom: 130px!important;
  }
}
@media(max-width: 803px){
  .container-trust-title > div > h2{
    padding: 0 50px!important;
  }
  .container-trust-sliders{
    margin-bottom: 95px!important;
  }
}
@media(max-width: 517px){
  .container-trust-title > div > h2{
    padding: 0px!important;
  }
}

/**/

/* VIDEO CAROUSEL */

#slider-section {
  padding: 0 !important;
}
.video-slider {
  position: relative;
  overflow: hidden;
  width: 100%;
}
.slider-container {
  display: flex;
  transition: transform 0.5s ease-in-out;
  scroll-behavior: smooth;
  height: 100vh;
}
.slide {
  min-width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 0;
  transition: opacity 0.5s ease;
}
.slide.active {
  opacity: 1;
}
video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  pointer-events: none;
}
.slide > video {
  height: 100% !important;
  width: 100% !important;
  object-fit: cover;
}
.scroll-blocked {
  overflow: hidden;
}
.slider-navigation{
  position: absolute;
  bottom: 5%;
  width: 90%;
  left: 5%;
  right: 5%;
  display: flex;
  z-index: 1;
  gap: 10px;
}
.slider-progress-bar {
  background-color: grey;
  width: 100%;
  height: 3px;
  border-radius: 15px;
  position: relative;
  overflow: hidden;
}
.slider-progress-bar::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background-color: white;
  border-radius: 15px;
  transition: width 1s ease-in-out, left 1s ease-in-out;
}
.slider-progress-bar.activeBar::before {
  width: 100%;
  left: 0;
}
.slider-progress-bar.deactivatingBar::before {
  width: 0%;
  left: auto;
  right: 0;
}
.slider-progress-bar.deactivatingBar.backward::before {
  width: 0%;
  left: auto;
  right: 0;
  transition: width 1s ease-in-out, right 1s ease-in-out;
}
.slider-progress-bar.deactivatingBar.forward::before {
  width: 0%;
  left: 0;
  transition: width 1s ease-in-out, left 1s ease-in-out;
}

@keyframes animateWidth {
  from{
    width: 0%;
  }to{
    width: 100%;
  }
}

.activeBar{
  background-color: white!important;
}
.btn-offer,.btn-offer-1{
  padding: 15px 15px 15px 0!important;
}
.slide {
  position: relative;
}
.slide-text {
  position: absolute;
  bottom: 75px; 
  left: 5%;
  color: white;
  font-size: 80px;
  font-weight: 700;
  text-align: center;
  border-radius: 8px;
  z-index: 1;
  opacity: 0;
  transition: opacity 0.5s ease;
}
.subtitle-slider{
  font-size: 16px;
  background: url("/wp-content/uploads/2025/02/Background.webp") repeat !important;
  border-radius: 15px;
  margin-bottom: 0;
  width: fit-content;
  padding: 16px;
  font-weight: 500;
  line-height: 22.4px;
}
.slide.active .slide-text {
  opacity: 1;
}
.slide, .video-slider{
  height: 100vh;
}

@media(max-width: 1625px){
  .slide, .video-slider{height: 105vh;}
}
@media(max-width: 1395px){
  .slide, .video-slider{height: 100vh;}
}
@media(max-width: 1093px){
  .slide-text {
    font-size: 60px;
  }
}
@media(max-width: 838px){
  .slide-text {
    font-size: 50px;
  }
}
@media(max-width: 600px){
  .slide-text {
    font-size: 2rem;
  }
  .subtitle-slider{
    line-height: 7px;
  }
}
@media(max-width: 450px){
  .slide-text {
    font-size: 1.5rem;
  }
  .subtitle-slider{
    font-size: 13px;
    line-height: 0px;
  }
}
@media(max-width: 350px){
  .slide-text {
    font-size: 1.2rem;
  }
}
@media(max-width: 1013px){
  .slide, .video-slider{height: 105vh;}
}
@media(max-width: 973px){
  .slide, .video-slider{height: 98vh;}
}
@media(max-width: 803px){
  .slide, .video-slider{height: 100vh;}
}

/* FOOTER */

.btn-footer > div > div > a{
  background-color: transparent!important;
}
.btn-footer > div > div > a {
  padding: 0;
}
.btn-footer > div > div > a > span {
  display: flex;
  align-items: center;
}
.btn-footer > div > div > a > span > span:last-child{
  font-size: 1.75rem;
  font-weight: 700;
}
.btn-footer > div > div > a > span > span > svg{
  border: 1px solid #D7563E;
  border-radius: 25px;
  fill: white;
  padding: 12px;
  height: 3em!important;
  width: 3em;
  transition: all ease-in-out 0.3s;
}
.btn-footer > div > div > a > span > span > svg:hover{
  background-color: #D7563E;
  transition: all ease-in-out 0.3s;
}
.btn-rs-footer {
  font-size: 2.25rem;
  font-weight: 700;
}
.btn-rs-footer > div > div {
  text-align: left;
}
.btn-rs-footer > div > div > a{
  background-color: transparent!important;
  padding: 0;
}
.btn-rs-footer > div > div > a > span > span:first-child{
  transform: rotate(-45deg);
  fill: #D7563E;
}
.btn-rs-footer > div > div > a > span > span:nth-child(2){
  font-size: 17px;
}
.container-infos-right-footer > div > div{
  display: flex;  
  flex-direction: column;
  gap: 2rem;
}
.container-rs-footer {
  width: 80%!important;
}
.footer-rolling{
  font-weight: 500!important;
  font-size: 16px!important;
  line-height: 24px!important;
  letter-spacing: 0.16px!important;
}
.content-footer{
  padding-inline-start: 0px!important;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.content-footer > li{
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.16px;
}
.logo-footer{
  width: 15px!important;
}
.phone-footer{
  font-weight: 400!important;
  font-size: 14px!important;
  line-height: 21px!important;
  letter-spacing: 0.14px!important;
}
.info-footer-bottom {
  width: 100%;
  white-space: nowrap;
}
.container-info-footer-bottom{
  width: 100%;
  align-items: center;
}
.container-bottom-footer::before, .container-footer-top::before{
  content: "";
  width: 100%;
  height: 2px;
  background-color: grey;
}
.container-footer-top-right{
  display: flex;
  align-items: center!important;
  gap: 3rem;
}
.container-footer-top-right > div > div {
  color: white;
}
.title-footer > div > h3, .footer-contact > a{
  font-weight: 700!important;
  font-size: 40px;
  line-height: 44px;
  height: 44px;
}
.title-subpart-footer{
  font-weight: 500;
  font-size: 18px;
  line-height: 27px;
  letter-spacing: 0.36px;
  hanging-punctuation: first;
}
.footer-rolling-linkedin::after, .footer-rolling-instagram::after, .footer-rolling-contact::after{
  content: "";
  width: 0;
  height: 2px;
  background-color: #d7543b;
  transition: all ease-in-out 0.3s;
  position: absolute;
  bottom: 0;
  left: 14px;
}
.rolling-text-container:hover .footer-rolling-linkedin::after{
  width: 60px;
}
.rolling-text-container:hover .footer-rolling-instagram::after{
  width: 75px;
}
.rolling-text-container:hover .footer-rolling-contact::after{
  width: 60px;
}
.footer-icon-arrow{
  fill: white!important;
  border: 1px solid #d7543b;
  border-radius: 40px;
  padding: 13px;
  height: 3em!important;
  width: 3em!important;
}
.footer-contact{
  gap: 1rem;
}
.arrow-footer-contact{
  background-color: #d7543b!important;
  transition: all ease-in-out 0.5s;
}
.info-footer-bottom > div > div {
  font-weight: 400!important;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: 0.16px;
}
.footer-after::after{
  content: "";
  width: 95%;
  height: 2px;
  background-color: #d7543b;
  transition: all ease-in-out 0.3s;
  position: absolute;
  bottom: 5%;
  left: 0;
}  
@media(max-width: 1186px){
  .title-footer > div > h3{
    font-size: 34px;
    line-height: 34px;
  }
}
@media(max-width: 1030px){
  .container-footer-top > div > div {
    display: flex;
    flex-direction: column;
    gap: 4rem;
  }
  .container-footer-top-right > div div {
    display: flex!important;
    justify-content: center;
    align-items: center;
  }
  .btn-offer-1 {
    height: 25px!important;
  }
  .container-rs-footer{
    display: flex;
    justify-content: center!important;
    width: 100%!important;
  }
  .footer-contact{
    justify-content: center;
  }
  .container-footer-top > div > div > div > div{
    text-align: center;
  }
  .container-footer-top > div > div > div{
    gap: 35px;
  }
  .container-bottom-footer > div > div {
    gap: 100px;
  } 
}
@media(max-width: 767px){
  .container-footer-top-right > div {
    gap: 3rem;
  }
  .container-rs-footer {
    width: 100%!important;
    justify-content: center!important;
    display: flex!important;
    gap: 5px!important;
  }
  .container-footer-top > div > div > div > div > div > h3 {
    padding-bottom: 25px;
    font-size: 35px;
    line-height: 35px;
  }
  .container-bottom-footer > div > div {
    display: flex;
    flex-direction: column;
    justify-content: center!important;
    gap: 2rem;
  }
  .info-footer-bottom{
    text-align: center!important;
  }
  .container-info-footer-bottom{
    width: 100%;
  }
  .container-bottom-footer > div {
    padding-bottom: 20px!important;
  }
}
@media(max-width: 567px){
  .title-footer > div > h3{
    height: auto!important;
    padding-bottom: 0px!important;
  }
  .container-footer-top > div > div {
  gap: 3rem;
  }
  .container-footer-top > div > div > div > div > div > h3 {
    font-size: 30px;
    line-height: 30px;
  }
}
@media(max-width: 437px){
  .container-rs-footer{
    flex-direction: column;
  }
  .container-footer-top > div > div > div div:nth-child(2), .container-footer-top > div > div > div div:nth-child(3), .container-rs-footer > div{
    display: flex!important;
    justify-content: center!important;  
  }
  .container-footer-top > div > div > div > div > div > h3 {
    font-size: 25px;
    line-height: 25px;
  }
}
@media(max-width: 373px){
  .container-footer-top > div > div > div > div > div > h3{
    font-size: 20px;
    line-height: 20px;
  }
  .title-subpart-footer{
    font-size: 16px;
  }
  .content-footer > li{
    font-size: 14px;
  }
  .info-footer-bottom > div > div{
    white-space: break-spaces;
  }
}

/* ---- ABOUT PAGE ---- */

.container-titles-about{
  display: flex!important;
  flex-direction: column;
}
.title-section > div > h1{
  font-size: 80px!important;
  line-height: 88px;
  position: relative;
  padding-bottom: 15px;
  display: flex;
  margin: 15px 0 35px 0;
  font-weight: 500!important;
}
.title-section > div > h1::after{
  content: "";
  position: absolute;
  bottom: 0;
  width: 100%;
  border: 1px solid #EEEEEE1A;
}
.subText-about{
  font-size: 24px;
  font-weight: 400;
  line-height: 36px;
  letter-spacing: 0.24px;
}
.container-text-choice-about > div > div > h3{
  font-size: 32px;
  line-height: 38.73px;
  font-family: 'Inter', sans-serif!important;
  font-weight: 600!important;
}
.content-text-choice-about{
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0.16px;
}

@media(max-width:768px){
  .title-section > div > h1{
    font-size: 60px!important;
  }
}
@media(max-width:646px){
  .subText-about{
    font-size: 22px;
  }
  .container-text-choice-about > div > div > h3{
    font-size: 30px;
    gap: 1rem;
  }
}
@media(max-width:566px){
  .title-section > div > h1{
    font-size: 50px!important;
  }
}
@media(max-width:517px){
  .subText-about{
    font-size: 20px;
    line-height: 32px;
  }
}
@media(max-width:433px){
  .subText-about{
    font-size: 17px;
    line-height: 29px;
  }
}
@media(max-width:414px){
  .title-section > div > h1{
    font-size: 40px!important;
  }
}
@media(max-width:371px){
  .subText-about{
    font-size: 16px;
    line-height: 28px;
  }
}

/*  VIDEO SECTION */

.container-video-about {
  height: 500px;
}
.container-video-about > div > div {
  display: flex!important;
  justify-content: center!important;
}
.container-video-about > div > div > video{
  width: 100%!important;
  object-fit: cover;
  max-width: 1280px;
}

@media(max-width: 1423px){
  .container-video-about {
    height: 400px;
  }
}
@media(max-width: 1215px){
  .container-video-about > div > div > video{
    width: 90%!important;
  }
  .container-video-about {
    height: 500px;
  }
}
@media(max-width: 993px){
  .container-video-about > div > div > video{
    width: 95%!important;
  }
}
@media(max-width: 993px){
  .container-video-about{
    height: 350px;
  }
}
@media(max-width: 803px){
  .container-video-about{
    margin-top: 40px!important;
  }
}
@media(max-width: 646px){
  .container-video-about{
    margin-top: 15px!important;
  }
}

/**/

/* POURQUOI CHOISIR NORELIVE */

.container-text-choice-about > div > div ,  .container-text-choice-about > div > div > h3{
  display: flex;
  justify-content: center;
  flex-direction: column;
  gap: 2rem;
}
.content-text-choice-about{
  color: white;
  font-size: 17px;
  font-weight: 300;
  line-height: 1.25;
}

@media(max-width: 803px){
  .container-title-choice-about > div > div > div > h2{
    margin-top: 25px!important;
  }
}
@media(max-width: 646px){
  .container-title-choice-about {
    margin-top: 50px!important;
  }
}
@media(max-width: 517px){
  .container-text-choice-about > div > div > h3{
    font-size: 19px;
  }
  .content-text-choice-about{
    font-size: 15px;
  }
  .container-text-choice-about > div > div, .container-text-choice-about > div > div > h3{
    gap: 0.5rem;
  }
}

/**/

/* OUR PROCESS */

.container-content-process{
  display: flex;
  flex-direction: column;
  justify-content: center!important;
}
.container-text-process{
  color: white!important;
  font-size: 16px;
  line-height: 24px;
  font-weight: 400;
  letter-spacing: 0.16px;
}
.title-content-process > div > h3{
  display: flex;
  flex-direction: column;
  gap: 2rem;
  font-weight: 600;
  font-size: 32px;
  line-height: 35.2px;
  font-family: 'Inter', sans-serif!important;
}
.container-btn-process-about > div > div > a{
  background-color: transparent!important;
}
.container-btn-process-about > div > div > a > span{
  display: flex;
  align-items: center;
}
.container-btn-process-about > div > div > a > span > span > svg{
  border: 1px solid #D7563E;
  border-radius: 25px;
  fill: white;
  padding: 12px;
  height: 3em!important;
  width: 3em;
  transition: all ease-in-out 0.3s;
}
.container-btn-process-about > div > div > a:hover > span > span > svg {
  background-color: #D7563E;
  transition: all ease-in-out 0.3s;
}
.container-btn-process-about > div > div > a > span > span:last-child{
  position: relative;
  font-weight: 500;
  font-size: 16px;
  line-height: 24px;
  hanging-punctuation: first last;
}
.container-btn-process-about > div > div > a > span > span:last-child::before{
  content: "";
  width: 0%;
  height: 1px;
  position: absolute;
  bottom: -10px;
}
.container-btn-process-about > div > div > a:hover > span > span:last-child::before{
  background-color: #D7563E;
  width: 100%;
  transition: all ease-in-out 0.3s;
}
.container_process_elems {
  position: relative;
  grid-row-gap: 7rem;
}
#penultimate-img-process {
  position: sticky;
  top: 10%;
  transition: opacity 1s ease-in-out;
}
.last-image-process {
  opacity: 0;
  transition: opacity 1s ease-in-out;
}
.last-image-process.visible {
  opacity: 1;
}
#penultimate-img-process,
.last-image-process {
  transition: opacity 0.5s ease-in-out;
}
.last-image-process {
  opacity: 0;
  transition: all ease-in-out 0.5s;
}
.last-image-process.visible {
  opacity: 1;
  transition: all ease-in-out 0.5s;
}
.last-image-process.sticky {
  position: sticky;
  top: 10%;
  z-index: 10;
}
#penultimate-img-process > div > img, #penultimate-img-process {
  animation: fadeIn 1s forwards;
}
.special-img > div{
  height: 150vh!important;
}
.special-img > div > img{
  position: sticky;
  top: 200px;
}

@media(max-width: 803px){
  .container-title-process-about > div > div{
    margin-top: 75px!important;
    margin-bottom: 20px!important;
  }
}
@media(max-width: 517px){
  .title-content-process > div > h3{
    font-size: 22px;
    gap: 1rem;
  }
  .container-text-process{
    font-size: 15px;
    letter-spacing: 0.15px;
    line-height: 22px;
  }
}

/* SVG OUR PROCESS */

#progress-svg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 200%;
  pointer-events: none;
  z-index: -1;
}
#progress-path {
  stroke-dasharray: 1000;
  stroke-dashoffset: 1000;
  transition: stroke-dashoffset 0.1s ease-out;
}
.container-all-process-about{
  background: ('data:image/svg+xml,<svg id="progress-svg" width="100%" height="200vh" viewBox="0 0 200 2000" preserveAspectRatio="none"><path id="progress-path" d="M50 0 L50 400 Q50 430, 80 430 H150 Q180 430, 180 460 V800 Q180 830, 150 830 H80 Q50 830, 50 860 V1200" fill="none" stroke="white" stroke-width="15" stroke-linecap="round" stroke-linejoin="round"vector-effect="non-scaling-stroke" /></svg>')
}
.second-svg-process{
  z-index: 0;
}
.second-svg-process {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.first-svg-process > svg,
.second-svg-process > svg {
  width: 1290px;
  height: 100%;
  display: block;
  margin-left: auto; 
  margin-right: auto; 
}
.first-svg-process,
.second-svg-process {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 370vh;
  z-index: -1;
  pointer-events: none;
}
.container-one-process-mob{
  display: flex!important;
  flex-direction: column!important;
}
.container-one-process-mob-reverse{
  display: flex!important;
  flex-direction: column-reverse!important;
}
.first-svg-process > svg, .second-svg-process > svg{
  height: 3725px;
}
.special-container-process > div {
  margin-left: 50px;
}
.special-content-process{
  width: 75%;
}

@media(max-width: 1320px){
  .container-text-process{
    width: 75%;
  }
  .special-container-process {
    margin-left: 100px;
  }
  .container-one-range-process{
    padding: 0 85px;
  }
  .first-svg-process > svg, .second-svg-process > svg{
    width: 1000px;
  }
}
@media(max-width: 1279px){
  .img-offer > div > img{
    width: 532px;
    height: 460px;
  }
  .container-offer-scrollable > div{
    grid-gap: 30px!important;
  }
}
@media(max-width: 1150px){
  .special-container-process{
    margin-left: 50px;
  }
}
@media(max-width: 1108px){
  .first-svg-process > svg, .second-svg-process > svg{
    height: 3600px;
  }
}
@media(max-width: 1024px){
  .title-3-process, .special-container-process{
    margin-left: 0px;
    margin-left: 115px;
  }
  .container-text-process{
    width: 100%;
  }
  .container-image-process > div > img{
    width: 375px;
  }
  .container-offer-scrollable > div {
    display: flex!important;
    flex-direction: column;
    padding: 0!important;
  }
  .img-offer{
    width: 100%;
    padding-top: 50px;
  }
  .img-offer > div > img{
    height: auto!important;
    object-fit: contain;
    width: auto!important;
  }
}
@media(max-width: 803px){
  .container-image-process > div > img{
    width: auto!important;
    max-height: 350px;
    object-fit: contain;
  }
}
@media(max-width: 767px){
  .container-all-process {   
    background-image: inherit;
  }
}
@media(max-width: 646px){
  .container-all-process{
    margin-top: 25px!important;
  }
}
@media(max-width: 549px){
  .btn-offer, .btn-offer-1{
    font-size: 16px!important;
  }
}
@media(max-width: 421px){
  .btn-offer, .btn-offer-1{
    font-size: 15px!important;
  }
}
@media(max-width: 414px){
  .container-image-process > div > img{
    width: 300px;
  }
}
@media(max-width: 356px){
  .btn-offer, .btn-offer-1{
    font-size: 13px!important;
  }
}
/**/

/* FAQ */

@keyframes textAppear {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.container-faq-points {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.faq-one-elem {
  display: flex;
  flex-direction: column;
  position: relative;
  transition: all ease-in-out 0.3s;
}
.faq-one-elem::before {
  content: "";
  height: 2px;
  width: 100%;
  background-color: grey;
  position: absolute;
  top: 0;
}
.faq-visible-elem {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-top: 25px;
}
.faq-visible-elem > p {
  color: white;
  margin-bottom: 0;
  font-size: 24px;
  width: 100%;
  font-weight: 500!important;
  font-family: 'Inter'!important;
  line-height: 29.05px;
}
.btn-faq {
  border: 1px solid #D7563E;
  padding: 8px 2px 5px 2px;
  border-radius: 25px;
  transition: all ease-in-out 0.3s;
}
.btn-faq:hover, .btn-faq:focus {
  background-color: #D7563E !important;
  transition: all ease-in-out 0.3s;
}
.btn-faq > svg {
  height: 1em;
  width: 2em;
  fill: white;
}
.content-dropdown-faq {
  max-height: 0px;
  overflow: hidden;
  opacity: 0;
  margin-bottom: 0;
  transition: max-height 1s ease-in-out, opacity 1s ease-in-out, margin-bottom 1s ease-in-out;
}
.content-dropdown-faq > p {
  color: white;
  animation: textAppear 0.5s ease-in-out;
  font-size: 14px;
  margin-bottom: 0;
  margin-top: 35px;
}
.dropdown-faq-visible {
  max-height: 200px;
  opacity: 1;
  margin-bottom: 20px;
  gap: 2rem;
}
.faq-title > div > h3{
  font-size: 45px!important;
  margin-left: 75px!important;
}

@media(max-width: 646px){
  .container-faq{
    margin-top: 50px!important;
  }
}
@media(max-width: 418px){
  .dropdown-faq-visible{max-height: 250px!important;}
}

/* CAROUSEL A PROPOS */

.swiper-a-propos {
  display: flex;
  overflow: hidden;
  width: 100%;
  position: relative;
}
.swiper-a-propos-inner {
  display: flex;
  width: 100%;
  animation: none;
}
.swiper-1-animation {
  /*animation: scroll 10s linear infinite!important;*/
}
.swiper-a-propos-inner-2 {
  display: flex;
  width: 100%;
  cursor: grab;
}
.swiper-2-animation {
 /* animation: scrollReverse 12s linear infinite!important;*/
}
.swiper-2{
  display: flex;
}
.swiper-a-propos-inner > *, .swiper-a-propos-inner-2 > *{
  flex: 0 35%;
  box-sizing: border-box;
  padding: 0.1rem;
  flex-shrink: 0;
}
.container-btn-all-realisations > div > div > a > span > span {
  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
  font-family: 'Inter', sans-serif!important;
  hanging-punctuation: first last;
  overflow: hidden; 
}
.container-btn-all-realisations > div > div > a{
  transition: all ease 0.3s;
}
.container-btn-all-realisations > div > div > a:hover{
  opacity: 0.8;
  transition: all ease 0.3s;
}

@keyframes scroll {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}

@keyframes scrollReverse {
  from {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(0);
  }
}

.swiper-a-propos.paused .swiper-a-propos-inner,
.swiper-2.paused .swiper-a-propos-inner {
  animation-play-state: paused !important;
}
.swiper-slider{
  padding: 0!important;
}

@media (max-width: 1632px){
  .swiper-a-propos-inner  {
    width: 2200px;
  }
}
@media (max-width: 887px){
  .swiper-a-propos-inner  {
    width: 2000px;
  }
  .swiper-a-propos-inner > *, .swiper-a-propos-inner-2 > *{
    width: 100%;
  }
  .container-img-real > div > div > div > button{
    font-size: 19px!important;
    line-height: 19.5px!important;
    padding: 10px!important;
  }
}
@media (max-width: 805px){
  .container-btn-all-realisations > div > div > a > span > span{
    font-size: 14px;
  }
  .container-img-real > div > div > div > button{
    font-size: 17px!important;
    line-height: 17.5px!important ;
  }
}
@media (max-width: 767px){
  .container-img-real > div > div > div > button{
    font-size: 23px!important;
    line-height: 23.5px!important ;
  }
}
@media (max-width: 620px){
  .container-img-real > div > div > div > button{
    font-size: 21px!important;
    line-height: 21.5px!important ;
  }
}
@media (max-width: 571px){
  .swiper-a-propos-inner  {
    width: 1200px;
  }
}
@media (max-width: 517px){
  .container-btn-all-realisations > div > div > a > span > span{
    line-height: 16px;
  }
}
@media (max-width: 414px){
  .swiper-a-propos-inner  {
    width: 1100px;
  }
  .container-img-real > div > div > div > button{
    font-size: 16px!important;
    line-height: 16.5px!important ;
  }
}
@media (max-width: 357px){
  .container-img-real > div > div > div > button{
    font-size: 15px!important;
    line-height: 15.5px!important ;
  }
}
@media (max-width: 340px){
  .container-img-real > div > div > div > button{
    font-size: 13px!important;
    line-height: 13.5px!important ;
  }
}

/* CTA BANNER */

.cta-card{
  background: url('/wp-content/uploads/2025/02/Background.webp') no-repeat;
  background-size: cover;
  border-radius: 15px;
}
.cta-left{
  justify-content: center;
  align-items: baseline;
  padding-left: 35px;
}
.cta-left > .container-btn-process-about > div > div > a {
  padding: 12px 0px!important;
}
.container-btn-process-about > div > div > a{
  padding: 0;
}
.cta-left > div > div > p {
  font-weight: 400!important;
  letter-spacing: 0.05rem;
  font-size: 32px;
  line-height: 48px;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.important-contact-cta{
  font-weight: 600!important;
}
.cta-right > div > img{
  object-fit: cover;
  width: 100%;
  border-radius: 15px;
}

@media(max-width: 990px){
  .cta-left > div > div > p {
    font-size: 20px;
  }
}
@media(max-width: 767px){
  .cta-card{
    display: flex;
    flex-direction: row;
  }
  .cta-left{
    padding-left: 20px;
  }
  .cta-left{
    padding-top: 20px;
    position: absolute;
    top: 20%;
    z-index: 1;
  }
  .cta-left > div > div > p {
    font-size: 17px;
  }
  .important-contact-cta{
    white-space: nowrap;
  }
  .cta-card{
    flex-direction: column;
  }
  .cta-right > div > img{
    width: 50%;
    left: 25%;
    position: relative;
  }
}
@media(max-width: 823px){
  .cta-left > div > div > p{
    line-height: 20px;
  }
}
@media(max-width: 526px){
  .cta-left{
    top: 0%;
  }
  .cta-left > div > div > p {
    font-size: 16px;
  }
  .cta-left > .container-btn-process-about > div > div > a {
    padding: 6px 0px!important;
  }
}
@media(max-width: 457px){
  .cta-left{
    gap: 0.2rem;
  }
}
@media(max-width: 415px){
  .container-btn-process-about > div > div > a > span > span > svg{
    padding: 7px;
    height: 2em!important;
    width: 2em;
  }
}
@media(max-width: 374px){
  .cta-left > div > div > p {
    font-size: 15px;
  }
  .cta-left > .container-btn-process-about > div > div > a > span > span > svg{
    height: 2em!important;
    width: 2em;
    padding: 8px;
  }
}
@media(max-width: 371px){
  .cta-left{
    padding-top: 10px;
  }
  .cta-left > div > div > p{
    gap: 0.5rem;
    line-height: 17px;
  }
}

/**/

/* CLIENT TALK SLIDER */

.clients-talk-top-text::after{
  content: "";
  width: 100%;
  height: 1px;
  background-color: #555;
  position: absolute;
  bottom: 65px;
  left: 0px;
}
.clients-talk-slide{
  display: none;
}
.clients-talk-slide.active{
  display: flex;
  flex-direction: column;
  align-items: baseline;
  color: white;
  justify-content: flex-start;
  gap: 1rem;
}
.clients-talk-left-content{
  display: flex;
  gap: 0.5rem;
}
.clients-talk-left-content > img{
  object-fit: contain;
}
.container-titles-client-talk{
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.title-clients-talk{
  font-weight: 400!important;
  font-size: 24px;
  line-height: 24px;
  font-family: 'Cairo';
}
.subtitle-clients-talk{
  font-weight: 200!important;
  font-size: 13px;
  line-height: 13px;
  font-family: 'Cairo';
}
.title-clients-talk, .subtitle-clients-talk{
  margin: 0!important;
}
.clients-talk-pagination{
  position: absolute;
  right: 0;
  bottom: 10px;
}
.clients-talk-pagination button.active{
  border: none;
  background-color: #9f9f9f;
  width: 50px;
  border-radius: 25px;
  transform-origin: left;
  transition: all ease-in-out 0.3s;
}
.clients-talk-pagination button{
  width: 0px;
  border: none;
  background-color: #9f9f9f;
  border-radius: 25px;
  transform-origin: left;
  transition: all ease-in-out 0.3s;
}
.clients-talk-pagination button:not(.active):hover{
  background-color: #696969;
  transition: all ease-in-out 0.3s;
}
.clients-talk-top-text > p {
  font-weight: 300!important;
  letter-spacing: 0.01rem;
  font-size: 32px;
  line-height: 32px;
  font-family: 'Cairo';
}
.clients-talk-container-grid > div {
  justify-content: center;
  display: flex;
}
.clients-talk-container-grid{
  align-items: center!important;
}

@media(max-width: 767px){
  .clients-talk-top-text > p {
    font-size: 28px;
    line-height: 28px;
  }
  .title-clients-talk{
    font-size: 21px;
    line-height: 21px;
  }
  .clients-talk-container-grid {
    gap: 40px;
    margin-top: 15px!important;
  }
}
@media(max-width: 646px){
  .clients-talk-container-grid{
    margin-bottom: 50px!important;
  }
  .clients-talk-top-text > p{
    font-size: 23px;
    line-height: 23px;
  }
  .client-talk-section{
    margin-top: 50px!important;
  }
}
@media(max-width: 517px){
  .clients-talk-top-text > p{
    font-size: 19px;
    line-height: 19px;
  }
  .faq-visible-elem > p{
    font-size: 19px;
    line-height: 26px;
  }
}
@media(max-width: 437px){
  .clients-talk-pagination{
    position: absolute;
    right: 0;
    bottom: -30px;
  }
  .clients-talk-top-text > p{
    font-size: 20px;
    line-height: 20px;
  }
  .title-clients-talk{
    font-size: 19px;
    line-height: 19px;
  }
  .container-titles-client-talk{
    gap: 6px;
  }
}

/**/

/* NOS ENGAGEMENTS */

.content-engagement{
  color: white;
  font-weight: 400;
  line-height: 24px;
  font-size: 16px;
  letter-spacing: 0.16px;
}
.all-content-engagement > div > p{
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.title-engagement{
  font-size: 32px;
  line-height: 35.2px;
  font-weight: 600!important;
  font-family: 'Inter'!important;
}
.container-engagements-home{
  display: flex!important;
  gap: 72px;
}

@media(max-width: 646px){
  .container-engagement-about{
    margin-top: 50px!important;
  }
}
@media(max-width: 517px){
  .container-engagements-home{
    gap: 36px;
  }
  .title-engagement{
    font-size: 26px;
    line-height: 26.5px;
  }
}

/**/

/*---- CONTACT PAGE -----*/

.container-info-contact > div > div{
  display: flex;
  justify-content: space-between;
  border: 1px solid #EEEEEE1A;
  padding: 16px;
  border-radius: 6px;
  transition: all ease-in-out 0.3s;
}
.container-info-contact > div > div:hover, .container-info-contact > div > div.active{
  border: 1px solid #d7543b;
  cursor: pointer;
  transition: all ease-in-out 0.3s;
}
.complement-info-contact{
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.button-contact-left-part > div > div > a > span > span > svg{
  fill: #d7543b;
  transform: rotate(-45deg);
}
.button-rs-contact > div > div > a > span > span > svg{
  fill: #d7543b;
  width: 1.5em;
  height: 1.5em!important;
}
.button-rs-contact > div > div > a >span {
  display: flex;
  align-items: center;
}
.container-btn-rs-contact{
  width: 100%;
  display: flex;
}
.container-first-infos-contact, .container-contact-btns-contact{
  gap: 0.5rem;
}
.container-first-infos-contact{
  display: flex;
  flex-direction: column;
}
.container-first-infos-contact > h2{
  margin-top: 20px;
}
.rolling-text-container {
  position: relative;
  overflow: hidden;
  height: auto; 
  max-height: 3em; 
  width: 100%;
  display: flex; 
  flex-direction: column;
}
.rolling-text {
  height: 3em; 
  line-height: 3em; 
  display: flex;
  align-items: center;
  transform: translateY(0);
  transition: transform 1.5s ease-out;
}
.rolling-text.duplicate {
  transform: translateY(100%);
  transition: transform 1.5s ease-out;
}
.map-container {
  position: relative;
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
}
.map-image {
  width: 100%;
  display: block;
}
.map-point {
  position: absolute;
  transform: translate(-50%, -50%);
  cursor: pointer;
}
.point-icon {
  position: relative;
  z-index: 2;
  width: 30px;
  height: 30px;
  transition: all ease 0.3s;
}
.point-background {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0);
  z-index: 1;
  width: 40px;
  height: 40px;
  background-image: url('/wp-content/uploads/2025/01/Ellipse.png');
  background-size: cover;
  background-repeat: no-repeat;
  opacity: 0;
  transition: transform 0.3s ease, opacity 0.3s ease;
}
.map-point.active .point-background {
  transform: translate(-50%, -50%) scale(2);
  opacity: 1;
}
.map-point.active .point-icon{
  transform: scale(1.1);
  transition: all ease 0.3s;
}

/* Animation Luckie */

@keyframes luckie-btn {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(-100%);
  }
}

@keyframes luckie-btn-reverse {
  0% {
    transform: translateY(-100%);
  }
  100% {
    transform: translateY(0);
  }
}

.rolling-text-container.mouse-enter .rolling-text {
  animation: luckie-btn 0.3s ease-out forwards;
}
.rolling-text-container.mouse-enter .rolling-text.duplicate {
  animation: luckie-btn 0.3s ease-out forwards;
}
.rolling-text-container.mouse-leave .rolling-text {
  animation: luckie-btn-reverse 0.3s ease-out forwards;
}
.rolling-text-container.mouse-leave .rolling-text.duplicate {
  animation: luckie-btn-reverse 0.3s ease-out forwards;
}
.rolling-icon {
  fill: #d7543b;
  transform: rotate(-45deg);
  height: 2em;
  width: 2em;
  position: relative;
  z-index: 0;
  flex-shrink: 0;
}
.rolling-icon-rs{
  fill: #d7543b;
  height: 2em;
  width: 2em;
  position: relative;
  z-index: 0;
  flex-shrink: 0;
}
.button-rolling {
  background-color: transparent;
  color: white;
  border: none;
  padding: 15px;
  cursor: pointer;
  font-weight: 500;
  font-size: 20px;
  line-height: 22px;
  letter-spacing: 0.20px;
}
.button-rolling:hover, .button-rolling:focus {
  background-color: transparent;
}
.rolling-text-container > div {
  display: flex;
  align-items: center;
}

/* FORM */

.form-contact > div > form > div > div:last-child > button{
  background-color: transparent!important;
  display: flex;
  align-items: center;
  padding: 0!important;
}
.form-contact > div > form > div > div:last-child > button > span > span > svg > path{
  fill: #d7543b!important;
}
.form-contact > div > form > div div > input, .form-contact > div > form > div div > textarea{
  background-color: #2c303d!important;
  resize: none;
  border-radius: 6px;
  transition: all ease 0.3s;
}
.form-contact > div > form > div div > input:hover, .form-contact > div > form > div div > textarea:hover, .form-contact > div > form > div div > input:focus, .form-contact > div > form > div div > textarea:focus{
  border: 1px solid #d7543b;
  transition: all ease 0.3s;
}
.form-contact > div > form > div div > textarea{
  height: 180px;
}
.data-contact > div > div{
  font-weight: 400;
  letter-spacing: 0.01rem;
  line-height: 1.3rem;
  font-size: 13px;
  opacity: 0.9;
}
.container-contact-btns-contact{
  padding-top: 65px;
  padding-left: 0!important;
}
.container-left-right-contact {
  display: flex;
  flex-wrap: nowrap;
  width: 100%;
}
#container-left-right-contact{
  --e-con-grid-template-columns: 30% 70%!important;
  --e-con-grid-template-rows: 30% 70%!important;
}
.container-left-part-contact {
  position: sticky;
  top: 85px;
  width: 75%;
  z-index: 10;
  height: 70vh;
  gap: 80px;
}
.container-right-part-contact {
  width: 100%;
  padding: 20px;
  display: flex!important;
  flex-direction: column;
  gap: 2rem;
}
[data-id='6bddc51']{
  margin-top: 85px;
}
.content-left {
  padding: 20px;
}
.content-right {
  padding: 20px;
}
footer {
  height: 100px;
  background: #333;
  color: white;
  text-align: center;
  line-height: 100px;
}
.container-three-infos-contact{
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
[data-id='f5934d5']{
  z-index: 0;
}

@media(max-width: 1388px){
  [data-id='f5934d5']{
    display: flex;
    justify-content: center;
  }
  [data-id='f5934d5'] > div {
    width: 70%!important;
  }
}
@media(max-width: 1186px){
  .container-left-right-contact{
    flex-direction: column!important;
  }
  .container-left-part-contact{
    position: static!important;
    width: 100%;
  }
  .container-right-part-contact{
    display: flex!important;
    flex-direction: column;
    gap: 2rem;
  }
  [data-id='f5934d5'] > div{
    width: 85%!important;
  }
  .container-three-infos-contact{
    width: 65%!important;
  }
}
@media(max-width: 700px){
  .container-contact-btns-contact div > div > div > div > a > button, .container-contact-btns-contact div:last-child > div > div > a > button {
    font-size: 17px!important;
  }
  .btn-rs-contact{
    font-size: 17px!important;
  }
  .point-icon, .map-point{
    width: 25px;
  }
}
@media(max-width: 602px){
  .container-three-infos-contact{
    width: 85%!important;
  }
}
@media(max-width: 520px){
  .title-contact-info, .complement-info-contact{
    font-size: 15px;
  }
  .nav-container > div > div > div > img{
    width: 60px;
    height: 60px;
  }
  .point-icon, .map-point{
    width: 20px;
  }
  .menu-toggle{
    top: -10px;
  }
  .container-btn-languages-change > div > nav > ul{
    top: -5px!important;
  }
}
@media(max-width: 552px){
  .point-icon{
    width: 10px;
  }
  .point-background{
    width: 30px;
    height: 30px;
  }
}
@media(max-width: 452px){
  [data-id='f5934d5'] > div {
    width: 80%!important;
  }
  .nav-container > div > div > div > img{
    width: 40px;
    height: 40px;
  }
  .container-btn-languages-change > div > nav > ul{
    top: -15px!important;
  }
  .menu-toggle{
    top: -20px;
  }
  [data-id='3589a97']> div > h2{
    white-space: nowrap;
    text-align: center;
    font-size: 1.7rem;
  }
  .container-left-part-contact{
    gap: 20px;
  }
  .container-right-part-contact{
    margin-top: 0px!important;
    gap: 100px;
  }
  .container-three-infos-contact{
    width: 100%!important;
  }
  .btn-rs-contact{
    font-size: 17px!important;
  }
}
@media(max-width: 415px){
  .container-btn-rs-contact{
    gap: 7px;
  }
}
@media(max-width: 400px){
  [data-id='f5934d5'] > div {
    width: 85%!important;
  }
  .nav-container > div > div > div > img{
    width: 35px;
    height: 35px;
  }
  .menu-toggle{
    top: -28px;
  }
  .container-btn-languages-change > div > nav > ul{
    top: -25px!important;
  }
  [data-id='3589a97']> div > h2{
    font-size: 1.7rem;
  }
  [data-id='3589a97']> div > h2::after{
    left: 28%;
  }
  .container-contact-btns-contact div > div > div > div > a > button, .container-contact-btns-contact div:last-child > div > div > a > button{
    font-size: 15px!important;
  }
  .container-btn-rs-contact{
    display: flex!important;
    flex-direction: column;
  }
  .container-three-infos-contact div div div {
    display: flex!important;
    flex-direction: column;
    gap: 1rem ;
  }
  .container-left-right-contact{
    display: flex!important;
    flex-direction: column;
    gap: 10rem;
  }
}
@media(max-width: 366px){
  [data-id='f5934d5'] > div {
    width: 95%!important;
  }
}
@media(max-width: 334px){
  .container-contact-btns-contact div > div > div > div > a > button, .container-contact-btns-contact div:last-child > div > div > a > button{
    font-size: 14px!important;
  }
}
@media(max-width: 400px) and (max-height: 719px){
  .container-left-right-contact{
    gap: 15rem;
  }
}
@media(max-width: 400px) and (max-height: 599px){
  .container-left-right-contact{
    gap: 20rem;
  }
}
@media(max-width: 400px) and (max-height: 488px){
  .container-left-right-contact{
    gap: 30rem;
  }
}

/* NOS REALISATIONS */

#real-content-event, #real-content-brand, #real-content-shopper{
  display: none;
}
#real-content-tous.visible, #real-content-event.visible, #real-content-brand.visible, #real-content-shopper.visible{
  display: grid;
}

#real-content-tous > div > div > img,
#real-content-event > div > div > img,
#real-content-brand > div > div > img,
#real-content-shopper > div > div > img {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 1s ease, transform 1s ease;
}
#real-content-tous > div > div > img.visible,
#real-content-event > div > div > img.visible,
#real-content-brand > div > div > img.visible,
#real-content-shopper > div > div > img.visible {
  opacity: 1;
  transform: translateY(0);
}
#real-content-tous > div > div > img:nth-child(1),
#real-content-event > div > div > img:nth-child(1),
#real-content-brand > div > div > img:nth-child(1),
#real-content-shopper > div > div > img:nth-child(1) {
  animation: fadeIn 1s ease forwards;
  animation-delay: 0s;
}
#real-content-tous > div > div > img:nth-child(2),
#real-content-event > div > div > img:nth-child(2),
#real-content-brand > div > div > img:nth-child(2),
#real-content-shopper > div > div > img:nth-child(2) {
  animation: fadeIn 1s ease forwards;
  animation-delay: 0.3s;
}
#real-content-tous > div > div > img:nth-child(3),
#real-content-event > div > div > img:nth-child(3),
#real-content-brand > div > div > img:nth-child(3),
#real-content-shopper > div > div > img:nth-child(3) {
  animation: fadeIn 1s ease forwards;
  animation-delay: 0.6s;
}
#real-content-tous > div > div > img:nth-child(4),
#real-content-event > div > div > img:nth-child(4),
#real-content-brand > div > div > img:nth-child(4),
#real-content-shopper > div > div > img:nth-child(4) {
  animation: fadeIn 1s ease forwards;
  animation-delay: 0.9s;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.container-pagination-real{
  padding-left: 10px;
  gap: 20px;
  display: flex;
  align-items: center!important;
}
.container-pagination-real > div > div > div{
  text-align: center;
}
.container-pagination-real > div > div > div > a{
  color: #F6F8FF66!important;
  opacity: 0.4;
  font-size: 18px;
  font-weight: 500;
  line-height: 25.2px;
  transition: all ease-in-out 0.3s;
  padding: 10px 0;
  height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  white-space: nowrap;
}
.container-pagination-real > div > div > div > a:hover{
  opacity: 1!important;
  cursor: pointer;
  transition: all ease-in-out 0.3s;
}
.container-pagination-real > div > div > div > a.active{
  color: white!important;
  opacity: 1;
  transition: all ease-in-out 0.3s;
}
.dynamic-pagination{
  position: fixed;
  bottom: 50px;
  left: 50%;
  transform: translate(-50%, 0);
  background-color: #141F3C99;
  background-size: contain;
  z-index: 1000;
  width: 560px;
  border-radius: 15px;
  white-space: inherit!important;
  display: none;
  align-items: center;
  justify-content: center;
  border: 1px solid #EEEEEE1A;
}
.dynamic-pagination div > div > div > a{
  color: white!important;
  opacity: 0.7!important;
  display: flex;
  white-space: nowrap;
}
.dynamic-pagination div > div > div > a.active, .dynamic-pagination div > div > div > a:hover{
  opacity: 1!important;
  cursor: pointer;
}
.dynamic-pagination.active{
  display: flex;
}
#container-all-realisations{
  --e-con-grid-template-rows: repeat(1, 1fr)!important;
  --e-con-grid-template-columns: repeat(2, 1fr);
  visibility: hidden;
}
.container-img-real > div > img{
  border-radius: 15px;
}
.container-img-real{
  position: absolute;
  bottom: 15px;
  left: 0;
  width: 100%;
}
.container-img-text-real{
  height: 350px;
  border-radius: 15px;
  overflow: hidden;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  background-size: cover!important;
  animation: fadeIn 1s ease forwards;
}
.container-img-text-real:hover{
  cursor: pointer;
}
.container-img-real > p {
  white-space: nowrap;
  padding: 8px 16px;
  text-align: center;
  width: 170px;
  position: absolute;
  left: 10px;
  bottom: 40px;
  border-radius: 999px;
  background: #141F3C;
  color: white;
  border: 1px solid #EEEEEE1A;
  z-index: 10;
}
.container-img-real > div > div > div > button{
  font-size: 32px;
  line-height: 32.5px;
  font-weight: 700!important;
}
.container-img-real > div > div:last-child > div >svg{
  transform: rotate(0deg)!important;
  fill: white;
  background-color: #d7543b;
  border-radius: 25px;
  height: 2.5em!important;
  width: 2.5em!important;
  padding: 10px;
  margin: 0 10px;
}
.container-img-real > div > div{
  justify-content: left;
}
.container-img-real > div > div:last-child{
  justify-content: space-around;
  gap: 30px;
}
.container-hover-real:hover{
  cursor: pointer;
}
.real-text-duplicate{
  width: 100%;
  justify-content: space-between;
}

@keyframes videoFade{
  from{
    opacity: 0.5;
  }to{
    opacity: 1;
  }
}

.video-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 1;
  display: none;
  animation : videoFade 0.6s ease-in-out forwards;
}
.video-container.active {
  display: block;
  z-index: 1;
  height: 350px!important;
  border-radius: 15px;
}
.container-img-real {
  position: relative;
  z-index: 2;
  height: 350px;
}
.container-img-real > .rolling-text-container{
  position: absolute!important;
  bottom: 0;
  z-index: 2;
} 
.container-img-text-real.none {
  display: none;
}
.container-img-text-real.visible {
  display: flex;
}
[data-id='7bd637e']{
  overflow: hidden;
}

@media(max-width: 1211px){
  .container-img-real > div > div > div > button{
    font-size: 28px!important;
    line-height: 28.5px!important;
  }
  .container-img-real > p {
    bottom: 35px!important;
  }
}
@media(max-width: 1087px){
  .container-img-real > div > div > div > button{
    font-size: 23px!important;
    line-height: 23.5px!important;
  }
}
@media(max-width: 1000px){
  .container-pagination-real {
    width: 65%!important;
  }
  .container-img-real > div > div > div > button{
    font-size: 21px!important;
    line-height: 21.5px!important;
  }
}
@media(max-width: 767px){
  #container-all-realisations{  
    display: flex!important;
    justify-content: center;
    flex-direction: column;
    padding: 0 35px!important;
  }
  .container-title-realisations-about > div > div > div{
    margin-top: 0px!important;
  }
  #container-all-realisations{padding: 10px!important;}
}
@media(max-width: 746px){
  .container-pagination-real {
    width: 70%!important;
  }
}
@media(max-width: 682px){
  .container-pagination-real {
    width: 100%!important;
  }
  .container-pagination-real > div > div > div > a{
    font-size: 16px;
  }
}
@media(max-width: 646px){
  .container-title-realisations-about {
    margin-top: 50px!important;
  }
}
@media(max-width: 571px){
  .container-pagination-real {
    width: 85%!important;
  }
  .dynamic-pagination{
    width: 400px;
    align-items: center!important;
    overflow-x: hidden;
    display: flex;
    gap: 15px!important;
  }
  .dynamic-pagination div > div > a {
    padding: 15px 0!important;
  }
  .container-img-text-real{
    height: 250px;
  }
  .container-img-real{height: 250px;}
  .tag-real{
    font-size: 14px;
  }
  .container-img-real > div > div > div > button{
    font-size: 19px!important;
    line-height: 19.5px!important;
  }
  .container-img-real > p {
    bottom: 30px;
    width: 140px;
    padding: 4px 8px;
  }
  .container-title-realisations-about > div > div > div{
    margin-top: 50px!important;
  }
}
@media(max-width: 517px){
  .container-pagination-real{
    margin-top: 25px!important;
  }
  .container-title-realisations-about > div > div > div {
    margin-top: 0px!important;
  }
  .container-pagination-real > div > div > div > a{
    font-size: 14px;
  }
}
@media(max-width: 452px){
  .container-pagination-real {
    width: 100%!important;
  }
  .container-pagination-real div > div > div > a{
    font-size: 13px;
  }
  .container-pagination-real{
    margin-top: 5px!important;
  }
}
@media(max-width: 417px){
  .dynamic-pagination {
    width: 90%!important;
  }
  .dynamic-pagination div > div > div > a{
    font-size: 14px;
  }
}
@media(max-width: 403px){
  .container-pagination-real div > div > a, .dynamic-pagination div > div > div > a{
    font-size: 12px!important;
  }
  .container-img-real > div > div > div > button{
    font-size: 15px!important;
    line-height: 15.5px!important;
  }
}
@media(max-width: 375px){
  .container-pagination-real div > div > a, .dynamic-pagination div > div > div > a{
    font-size: 12px!important;
  }
  .container-img-real > div > div > div > button{
    font-size: 13px!important;
    line-height: 13.5px!important;
  }
  .tag-real{
    font-size: 11px;
  }
  .container-img-real > p {
    width: 120px!important;
  }
}
@media(max-width: 341px){
  .container-pagination-real div > div > a, .dynamic-pagination div > div > div > a{
    font-size: 11px!important;
  }
}

/**/

/* DETAIL REALISATION*/

#a-propos-animation-zone > div{
  gap: 80px;
}
.container-text-about-detail > div p{
  font-size: 24px;
  line-height: 36px;
  letter-spacing: 0.24px;
  font-weight: 400;
}
.page-header{
  display: none;
}
.container-vid-detail-real{
  height: 100vh;
}
.button-navigation-detail-top > div > div > a{
  font-size: 18px;
}
.button-navigation-detail-top > div > div > a > span > span > svg{
  fill: #d7543b!important;
}
.button-navigation-detail-top > div > div > a > span > span:last-child{
  font-weight: 400;
}
.container-first-infos-detail-real{
  position: absolute;
  bottom: 75px;
  display: flex;
  justify-content: space-between!important;
  align-items: flex-end!important;
  width: calc(100% - 100px);
  left: 50px;
}
.tag-detail-real{
  background: url('/wp-content/uploads/2025/02/Background.webp');
  color: white;
  border-radius: 15px;
  padding: 15px;
  font-size: 20px;
  width: fit-content;
  font-weight: 400;
}
.title-detail-real{
  font-size: 60px;
  margin-bottom: 0px!important;
}
.rolling-icon-detail{
  width: 2em;
  height: 2em;
  fill: #d7543b;
  transform: rotate(180deg);
  flex-shrink: 0;
}
.rolling-icon-detail-reverse{
  width: 2em;
  height: 2em;
  fill: #d7543b;
}
.a-propos-detail-real > div > h2:after{
  left: 65px!important;
}
.container-modal-img, .container-modal-img > div{
  padding: 0!important;
}
.container-modal-img > div > div > div {
  height: 50vh!important;
  overflow: hidden;
  border-radius: 15px;
}
.image-container-detail {
  position: relative;
  width: 100%;
  height: 600px;
  overflow: hidden;
}
[data-id='4f7b6bb']> div{
  width: 100%;
}
.image-detail {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 1s ease-out, opacity 1s ease-out;
}
.image-1 {
  z-index: 0;
  height: 400px;
}
.image-2 {
  z-index: 2;
  opacity: 0;
}
.image-3 {
  z-index: 3;
  opacity: 0;
}

/* Étapes de transition */

.image-container-detail {
  position: relative;
  width: 100%;
  height: 600px;
  overflow: hidden;
}
.hiddenImage {
  position: relative;
  height: 100%;
}
.hiddenImage img {
  width: 100%;
  object-fit: cover;
  position: absolute;
  height: 100%;
  border-radius: 15px;
}
.featured {
  position: absolute;
  background: url("/wp-content/uploads/2025/02/Frame-9.webp") no-repeat;
  width: 100%;
  height: 601px;
  margin-top: 0px!important;
  transition: width 1.5s ease-in-out;
  z-index: 1;
  border-radius: 15px;
  object-fit: cover; 
}
.featured2{
  position: absolute;
  background: url("/wp-content/uploads/2025/02/Frame-10.webp") no-repeat;
  width: 100%;
  height: 601px;
  transition: width 1.5s ease-in-out;
  z-index: 2;
  margin-top: 0px!important;
  border-radius: 15px;
  object-fit: cover;
}
.featured2::after{
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 1px;
  height: 100%;
  background-color: grey;
  background-size: cover;
  z-index: -1;
}
.reveal {
  position: absolute;
  height: 100%;
  border-left: 6px solid #555;
  cursor: col-resize;
  font-size: 2.1rem;
  font-weight: bold;
  text-align: center;
  line-height: 3.2rem;
  display: none;
}
.reveal:after {
  content: "\2194";
  display: block;
  width: 50px;
  height: 50px;
  border: 2px solid #f1f1f1;
  border-radius: 50%;
  color: #f1f1f1;
  background: #555;
  position: absolute;
  left: -30px;
  top: 0;
  bottom: 0;
  margin: auto;
}
[data-id="4f7b6bb"]{
  display: flex;
  justify-content: center;
  width: 100%;
}
[id="elementor-popup-modal-1711"]{
  height: 100vh!important;
  position: fixed;
  top: 0;
  left: 0;
}
.popup-img {
  height: 50vh!important;
  width: 100%!important;
  object-fit: cover;
}
[id="elementor-popup-modal-1711"] > div{
  border-radius: 15px!important;
}

/**/

.carousel-detail-real > div > div > div div > figure > img{
  height: 500px;
  width: 100%!important;
  object-fit: cover;
}
.carousel-detail-real > div > div{
  overflow: inherit!important;
}
.carousel-detail-real > div > div > div{
  display: flex;
  width: 100%;
  gap: 1rem;
}
body{
  overflow-x: hidden;
}
.img-etude > div {
  height: 200px;
  width: 100%;
  overflow: hidden;
  position: relative;
  border-radius: 8px;
}
.img-etude > div > img {
  object-fit: cover;
  height: 200px;
  width: 100%;
  transition: transform 0.3s ease-in-out;
}
.img-etude > div > img:hover {
  transform: scale(1.1);
}

/* Sub menu */

#pagination-detail{
  display: none;
  width: 100%;
  z-index: 5;
  justify-content: center;
  align-items: center;
  gap: 1rem;
}
#pagination-detail.active{
  display: flex;
}
.pagination-detail-container{
  background: url("/wp-content/uploads/2025/02/Background.webp") repeat !important;
  width: 500px!important;
  border-radius: 15px;
  position: fixed;
  bottom: 100px;
  padding: 10px;
}
.pagination-detail-container div  div > div > a {
  padding: 10px;
  white-space: nowrap;
  transition: all ease-in-out 0.3s;
}
.pagination-detail-container div  div > div > a:hover{
  opacity: 0.8;
  cursor: pointer;
  transition: all ease-in-out 0.3s;
}
.container-change-page {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 0 20px;
  box-sizing: border-box;
}
.change-page-right {
  display: flex;
  flex-direction: column;
  align-items: end!important;
}

/**/

/* slider */

.carousel-detail-real {
  overflow-x: hidden;
  z-index: 0;
}
.change-page-left > div:first-child > div > p, .change-page-right > div:first-child > div > p{
  font-size: 20px;
  line-height: 20px;
  font-weight: 500!important;
  letter-spacing: 0.20px;
}
.change-page-left > div:last-child > div > p, .change-page-right > div:last-child > div > p{
  font-size: 20px;
  line-height: 22px;
  font-weight: 700!important;
}
[data-id="4f7b6bb"] > div, .hiddenImage > img, .image-container-detail, .featured, .featured2{
  background-size: none;
}
.hiddenImage > div {
  object-fit: cover;
}

@media(max-width: 1164px){
  [data-id="4f7b6bb"] > div{
    width: 100%!important;
  }
  .hiddenImage > img, .featured, .featured2{
    height: 500px!important;
    margin-top: 0px!important;
  }
}
@media(max-width: 1000px){
  [data-id="4f7b6bb"] > div, .hiddenImage > img, .image-container-detail, .featured, .featured2{
    background-size: cover;
  }
}
@media(max-width: 988px){
  #bureau > div div:last-child, #atelier > div div:nth-child(3), #atelier > div div:nth-child(5){
    --e-con-grid-template-columns: repeat(2, 1fr);
  }
}
@media(max-width: 838px){
  [data-id="4f7b6bb"] > div, .hiddenImage > img, .image-container-detail, .featured, .featured2{
    height: 450px!important;
  }
  .title-detail-real{
    font-size: 40px!important;
  }
  .elementor-element-59f8f49 > div > .rolling-text-container {
    padding-top: 3px;
  }
}
@media(max-width: 803px){
  .container-text-about-detail > div p{
    font-size: 20px;
    line-height: 34px;
  }
  #a-propos-animation-zone{
    margin-bottom: 50px!important;
  }
  #a-propos-animation-zone > div{
    gap: 60px;
  }
}
@media(max-width: 774px){
  .pagination-detail-container{
    display: flex!important;
  }
  .title-detail-real{
    font-size: 40px!important;
    margin-bottom: 8px!important;
  }
  .tag-detail-real{
    font-size: 15px;
  }
  .container-first-infos-detail-real{
    padding: 0;
  }
  .container-first-infos-detail-real{
    left: 25px;
    width: calc(100% - 50px)!important;
  }
  .container-change-page > div {
    display: flex!important;
    flex-direction: column;
    justify-content: center!important;
  }
  .change-page-left, .change-page-right {
    display: flex!important;
    flex-direction: column;
    justify-content: center!important;
    align-items: center!important;
    width: 100%;
  }
  .change-page-left > div:last-child > div > p, .change-page-right > div:last-child > div > p{
    text-align: center;
    width: 100%!important;
  }
  #a-propos-animation-zone{
    margin-bottom: 0px!important;
  }
  .container-one-elem-detail {
    margin-bottom: 50px!important;
    margin-top: 50px!important;
  }
  .a-propos-detail-real > div{
    margin-top: 0px!important;
  }
}
@media(max-width: 670px){
  #elementor-popup-modal-1711 .dialog-message{
    width: 500px!important;
  }
}
@media(max-width: 646px){
  [data-id="4f7b6bb"] > div, .hiddenImage > img, .image-container-detail, .featured, .featured2{
    height: 350px!important;
  }
  .container-text-about-detail > div p{
    font-size: 17px;
    line-height: 31px;
  }
  #a-propos-animation-zone > div{
    gap: 40px;
  }
}
@media(max-width: 594px){
  .title-detail-real{
    font-size: 30px!important;
  }
  [data-id="59f8f49"] > div > div > div > div > button{
    font-size: 14px;
  }
}
@media(max-width: 541px){
  #bureau > div div:last-child, #atelier > div div:nth-child(3), #atelier > div div:nth-child(5){
    --e-con-grid-template-columns: repeat(1, 1fr);
  }
  .title-detail-real{
    font-size: 45px;
  }
  .tag-detail-real{
    font-size: 16px;
  }
  [data-id="59f8f49"] > div > div > div > div > button{
    padding: 5px!important;
  }
  #elementor-popup-modal-1711 .dialog-message{
    width: 400px!important;
  }
  .pagination-detail-container{
    width: 400px!important;
  }
  .pagination-detail-container div > div > a {
    font-size: 13px;
  }
  [data-id="4f7b6bb"] > div, .hiddenImage > img, .image-container-detail, .featured, .featured2{
    height: 300px!important;
  }
}
@media(max-width: 517px){
  .container-text-about-detail > div p{
    line-height: 28px;
    font-size: 15px;
  }
  #a-propos-animation-zone{
    margin-top: 0px!important;
  }
  #a-propos-animation-zone > div{
    gap: 0px;
  }
  .subcontainer-detail{
    margin-top: 0px!important;
  }
  .subcontainer-detail > div{
    gap: 0;
  }
  .container-one-elem-detail{
    margin-top: 0px!important;
    margin-bottom: 0px!important;
  }
  .a-propos-detail-real > div {
    margin-top: 50px!important;
  }
  .container-text-about-detail {
    margin-top: 25px!important;
  }
}
@media(max-width: 494px){
  #bureau > div div:last-child, #atelier > div div:nth-child(3), #atelier > div div:nth-child(5){
    --e-con-grid-template-columns: repeat(1, 1fr);
  }
  .title-detail-real{
    font-size: 25px!important;
  }
  .tag-detail-real{
    font-size: 13px!important;
  }
  [data-id="59f8f49"] > div > div > div > div > button{
    font-size: 12px;
  }
  .elementor-element-59f8f49 > div > .rolling-text-container{
    padding-top: 6px;
  }
}
@media(max-width: 414px){
  .container-first-infos-detail-real{
    left: 10px;
    width: calc(100% - 20px)!important;
  }
  .title-detail-real{
    font-size: 20px!important;
  }
  [data-id="59f8f49"] > div > div > div > svg{
    height: 1em!important;
    width: 1em!important;
  }
  [data-id="59f8f49"]{
    width: 40%!important;
  }
  #elementor-popup-modal-1711 .dialog-message{
    width: 300px!important;
  }
  .pagination-detail-container{
    width: 300px!important;
  }
  .pagination-detail-container div > div > a {
    white-space: inherit!important;
  }
  [data-id="4f7b6bb"] > div, .hiddenImage > img, .image-container-detail, .featured, .featured2{
    height: 200px!important;
  }
  .change-page-left > div:last-child > div > p, .change-page-right > div:last-child > div > p{
    font-size: 17px;
    line-height: 19px;
  } 
  .change-page-left, .change-page-right{
    gap: 10px;
  }
  .change-page-left > div, .change-page-right > div{
    font-size: 13px;
  }
}
@media(max-width: 372px){
  .container-text-about-detail > div p{
    font-size: 16px;
    line-height: 25px;
  }
}

/**/

/* NAV */

.nav-index{
  position: absolute;
  z-index: 0;
}
.nav-container{
  padding: 0 25px;
}
#elementor-popup-modal-1650, #elementor-popup-modal-2614{
  z-index: 0;
  visibility: hidden;
}
.nav-container > div {
  display: flex!important;
  justify-content: space-between!important;
  align-items: center!important;
}
.nav-container > .e-con-inner {
  width: fit-content;
  height: fit-content;
  position: fixed;
  right: 35px;
  top: 30px;
}
.nav-button{
  width: 55px!important;
}
.nav-container > div > div > div {
  padding: 0px!important;
}
#elementor-popup-modal-1650 .dialog-message, #elementor-popup-modal-2614 .dialog-message{
  overflow: hidden;
  width: 100vw!important;
}
#elementor-popup-modal-1650 .dialog-message > div > div, #elementor-popup-modal-2614 .dialog-message > div > div{
  height: 100vh;
}
#nav-active, #nav-active > div > div, #nav-active-en, #nav-active-en > div > div{
  padding: 0!important;
}
#nav-active > div > div:first-child, #nav-active-en > div > div:first-child{
  width: 100vw!important;
}
#nav-active > div, #nav-active-en > div{
  margin: 0!important;
  padding: 0!important;
}
#elementor-popup-modal-1650 > div, #elementor-popup-modal-2614 > div{
  width: 100%!important;
}
.img-nav > div {
  width: 1000px;
}
.img-nav > div > img{
  border-radius: 100px 450px 450px 100px;
  height: 100vh;
  width: 100%;
  position: relative;
  left: 0px;
  z-index: 2;
}
.container-links-nav{
  grid-template-rows: inherit!important;
  gap: 2rem!important;
  justify-content: center!important;
  align-items: flex-start!important;
  display: flex!important;
  flex-direction: column!important;
  width: 25%;
  position: absolute;
  left: 65%;
  top: 30%;
}
.container-one-link-nav{
  display: flex;
  justify-content: center;
}
.button-rolling-nav{
  font-size: 30px!important;
  color: #70747e!important;
  font-weight: 500;
}
.button-rolling-nav-active{
  color: white!important;
}
.elementor-popup-modal .dialog-close-button svg{
  fill: white!important;
  width: 2em!important;
  height: 2em!important;
}
.container-second-infos-nav{
  position: absolute;
  bottom: 60px;
  left: 60%;
}
.container-second-infos-nav > div > div {
  display: flex;
  gap: 5rem;
}
.container-second-infos-nav > div > div span {
  color: #70747e;
  font-weight: 400;
  white-space: nowrap;
}
.container-second-infos-nav > div::before{
  content: "";
  position: absolute;
  top: -20px;
  left: -300px;
  width: 200%;
  height: 1px;
  background-color: #70747e;
  background-size: cover;
  z-index: 0;
}
.img-nav {
  position: relative;
  width: 1000px;
  height: 100%;
  overflow: hidden;
}
.img-nav > div {
  position: relative;
  height: 100vh;
  width: 100%;
  overflow: hidden;
}
.img-nav > div > img {
  width: 0;
  height: 120vh;
  object-fit: cover;
  opacity: 0;
  transition: transform 0.3s ease, opacity 0.3s ease;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 0 45% 60% 0;
}
.img-nav > div > img.active {
  opacity: 1;
  width: 100%;
  transition: width 0.5s ease, opacity 0.5s ease;
  z-index: 1;
}
.img-nav > div > img.enter {
  opacity: 1;
  width: 100%;
  transition: width 0.5s ease, opacity 0.5s ease;
}
.img-nav > div > img.exit {
  opacity: 0;
  transform: translateX(-100%);
  z-index: 0;
}
.img-nav > div > img.hidden {
  opacity: 0;
  transform: translateX(-100%);
  z-index: 1;
}
#container-nav-lang > div > div > div > div{
  position: absolute;
  right: 0;
  display: flex;
  gap: 1rem;
}
#container-nav-lang > div > div > div > div button{
  color: white;
  border: none;
  transition: all ease-in 0.3s;
  padding: 0;
  font-size: 17px;
}
#container-nav-lang > div > div > div > div button:hover, #container-nav-lang > div > div > div > div button:focus{
  text-decoration: underline;
  background-color: transparent!important;
  transition: all ease-in 0.3s;
}
#container-nav-lang {
  height: auto!important;
  position: absolute;
  top: 15px;
  animation: slideInRight 0.7s ease-in-out;
}

@keyframes slideInRight {
  0% { transform: translateX(50%); opacity: 0; }
  100% { transform: translateX(0); opacity: 1; }
}
@keyframes slideInTop {
  0% { transform: translateY(-80%); opacity: 0;}
  100% { transform: translateY(0%); opacity: 1;}
}
@keyframes slideOutTop {
  0% { transform: translateY(0%); opacity: 1; }
  100% { transform: translateY(-80%); opacity: 0; }
}

[data-elementor-id="1650"], [data-elementor-id="2614"] {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  transform: translateY(-100%);
}
[data-elementor-id="1650"].open, [data-elementor-id="2614"].open {
  animation: slideInTop 0.5s ease-in-out forwards;
  visibility: visible;
}
[data-elementor-id="1650"].hidden-nav, [data-elementor-id="2614"].hidden-nav, .hidden-nav {
  animation: slideOutTop 0.5s ease-in-out forwards;
  visibility: visible;
}

/* toggle menu nav*/

.menu-toggle {
  position: absolute;
  width: 40px;
  height: 40px;
  cursor: pointer;
  right: 0;
}
.menu-toggle.open{
  margin-top: 5px;
}
.menu-toggle-bar {
  position: absolute;
  width: 40px;
  height: 3px;
  background-color: white;
  border-radius: 5px;
  transition: transform 0.75s ease, top 0.75s ease, bottom 0.75s ease;
  right: 0;
}
.menu-toggle-bar--top {
  top: 15px;
  transform-origin: center;
  width: 80%;
}
.menu-toggle-bar--bottom {
  bottom: 15px;
  transform-origin: center;
}
.menu-toggle.open .menu-toggle-bar--top {
  transform: translateY(4px) rotate(45deg);
}
.menu-toggle.open .menu-toggle-bar--bottom {
  transform: translateY(-4px) rotate(-45deg);
  width: 80%;
}
.container-btn-languages-change{
  position: absolute;
  top: 35px;
  right: 250px;
}
.container-btn-languages-change > div > nav > ul {
  gap: 15px;
  position: absolute;
  top: 4px;
  left: 100px;
  display: flex!important;
  width: 70px!important;
}
.container-btn-languages-change > div > nav > ul li {
  margin: 0!important;
}
.container-btn-languages-change > div > nav > ul li > a{
  font-size: 17px;
}
.container-btn-languages-change > div > nav > ul li > a > span{
  padding: 0!important;
  font-size: 18px;
  transition: all ease-in-out 0.3s;
}
.container-btn-languages-change > div > nav > ul li > a > span:hover{
  text-decoration: underline;
  color: white;
  transition: all ease-in-out 0.3s;
}
.cpel-switcher__lang--active > a{
  color: white!important;
}

/**/

@media(max-width: 1700px){
  #container-nav-lang {
    right: -0;
  }
}
@media(max-width: 1593px){
  .img-nav {
    width: 800px;
  }
}
@media(max-width: 1460px){
  #container-nav-lang {
    right: 0;
  }
  .container-second-infos-nav{
    left: 55%;
  }
  .container-second-infos-nav > div > div{
    gap: 3rem;
  }
}
@media(max-width: 1280px){
  #container-nav-lang > div > div > div > div{
    right: 90px;
  }
  .img-nav {
    width: 700px;
  }
  .container-second-infos-nav > div > div span{
    font-size: 14px;
  }
  .container-second-infos-nav > div > div{
    gap: 2rem;
  }
}
@media(max-width: 1134px){
  .img-nav {
    width: 500px;
  }
  .button-rolling-nav{
    font-size: 25px!important;
  }
}
@media(max-width: 1024px){
  .container-second-infos-nav > div > div {
    position: relative;
    left: -40px;
  }
  body.admin-bar .dialog-type-lightbox{
    position: fixed!important;
  }
  #container-nav-lang > div > div > div > div{
    top: 30px;
  }
}
@media(max-width:880px){
  .img-nav > div > img{
    left: -70px;
  }
}
@media(max-width:805px){
  .container-second-infos-nav > div > div span{
    color: white;
  }
  .container-second-infos-nav > div::before{
    z-index: 1;
    background-color: white;
    left: -500px;
    width: 220vw;
  }
  .container-second-infos-nav > div > div{
    z-index: 1;
    left: -260px;
  }
}
@media(max-width: 805px){
  .img-nav {
    display: none;
  }
  .container-links-nav{
    width: 100%;
    position: absolute;
    left: inherit;
    top: inherit;
    height: 80vh;
    align-items: center!important;
  }
  .container-links-nav{
    height: 100vh;
  }
}
@media(max-width: 488px){
  .container-second-infos-nav > div > div{gap: 1rem;}
  .container-second-infos-nav > div > div span{font-size: 12px;}
  .container-second-infos-nav > div > div{left: -200px; margin-bottom: 15px!important;}
}
@media(max-width: 431px){
  .container-links-nav{
    width: 95%;
    left: 0%;
    top: -15px;
  }
}
@media(max-width: 370px){
  .container-second-infos-nav > div > div{gap: 0.5rem;}
  .container-second-infos-nav > div > div span{font-size: 10px;}
  .container-second-infos-nav > div > div{left: -150px;}
}

/**/

/* PLANETS */

.menu-planets{
  position: absolute;
  top: 100px;
  left: 0;
  display: flex;
  flex-direction: column;
  align-items: baseline;
}
.menu-planets-mob{
  position: absolute;
  top: -100px;
  left: 35%;
  display: flex;
  flex-direction: column;
  align-items: baseline;
}
.menu-planets button, .menu-planets-mob button{
  border: none;
  opacity: 0.3;
  color: #fff;
  position: relative;
  font-size: 20px;
  line-height: 22px;
  font-weight: 600;
  transition: all ease-in 0.3s;
}
.menu-planets button.active, .menu-planets-mob button.active{
  opacity: 1;
  transition: all ease-in 0.3s;
}
.menu-planets button.active::before, .menu-planets-mob button.active::before{
  content: "";
  position: absolute;
  top: 19px;
  left: -25px;
  width: 0;
  height: 2px;
  width: 25px ;
  background-color: #D7563E;
  transition: all ease-in 0.3s;
}
.menu-planets button:hover, .menu-planets button:focus, .menu-planets-mob button:hover, .menu-planets-mob button:focus{
  background-color: inherit;
}
.menu-planets button:hover::before, .menu-planets-mob button:hover::before{
  content: "";
  position: absolute;
  top: 19px;
  left: -25px;
  width: 0;
  height: 2px;
  width: 25px ;
  background-color: #D7563E;
  transition: all ease-in 0.3s;
  transform: width 0.3s ease;
}
.container-section-planets{
  max-width: 1280px!important;
}

@media(max-width: 803px){
  .container-all-planets-mob{
    margin-top: 180px;
  }
  .container-planets-mob{
    margin-top: 0px!important;
  }
}
.eicon-close:hover{
  transition: all ease 0.3s;
}
.eicon-close:hover{
  cursor: pointer;
  opacity: 0.7;
  transition: all ease 0.3s;
}
.eicon-close:focus{
  border: none!important;
}
.container-planets {
  height: 100vh;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
#outer-circle {
  width: 700px;
  height: 700px;
  border: 2px solid rgba(138, 136, 136, 0.8);
  border-radius: 50%;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all ease-in-out 0.3s;
}
#inner-circle {
  width: 400px;
  height: 400px;
  border: 2px solid rgba(138, 136, 136, 0.8);
  border-radius: 50%;
  transition: all ease-in-out 0.3s;
}
#outer-circle.active, #inner-circle.active {
  border: 2px solid white;
  transition: all ease-in-out 0.3s;
}
#expertise-planets.active, #benefices-planets.active {
  opacity: 1;
}

/* planets style */

.planet {
  position: absolute;
  width: 200px;
  height: 200px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  transform: translate(-50%, -50%);
  cursor: pointer;
}
#planetProduction {
  top: 28%;
  left: 33%;
  width: 250px;
  height: 250px;
}
#planetBureau {
  top: 39%;
  left: 75%;
  width: 300px;
  height: 300px;
}
#planetLogistique {
  top: 79%;
  left: 50%;
  width: 300px;
  height: 300px;
}
#planetValorisation {
  top: 90%;
  left: 85%;
  width: 150px;
  height: 150px;
}
#planetEconomy{
  top: 50%;
  left: 0%;
  width: 150px;
  height: 150px;
}
#planetSecurity{
  top: 12%;
  left: 84%;
  width: 150px;
  height: 150px;
}
#planetSun{
  top: 50%;
  left: 50%;
  width: 300px;
  height: 300px;
}
#planetProduction.active:hover, #planetBureau.active:hover, #planetLogistique.active:hover, #planetEconomy.active:hover, #planetSecurity.active:hover, #planetValorisation.active:hover {
  cursor: pointer;
  transition: all ease-in-out 0.3s;
}
#planets-production{
  position: absolute;
  top: 25%;
  left: 7%;
}
#planets-logistic, #planets-bureau, #planets-economy, #planets-security, #planets-valorisation{
  position: absolute;
}
#planets-logistic{
  top: 78%;
  left: 27%;
}
#planets-bureau{
  top: 33%;
  left: 85%;
}
#planets-economy{
  top: 45%;
  right: 110%;
}
#planets-valorisation {
  top: 86%;
  left: 98%;
}
#planets-security{
  top: 8%;
  left: 96%;
}
.production-rolling::after {
  content: "";
  position: absolute;
  bottom: 9px;
  left: -10px;
  width: 100%;
  height: 2px;
  background-color: #D7563E;
}
.bureau-rolling::after{
  content: "";
  position: absolute;
  bottom: 0px;
  left: -20px;
  width: 235px;
  height: 2px;
  background-color: #D7563E;
}
.special-rolling-left{
  text-align: left;
}
.special-rolling-right{
  text-align: right;
}
.expertise-planets, .benefices-planets{
  opacity: 0.7;
}
.expertise-planets.active, .benefices-planets.active{
  opacity: 1;
  font-weight: 700;
  cursor: pointer!important;
}

/**/

/* SLIDER PLANETS */

.container-section-planets{
  padding: 0 50px;
}
.popup-slider-expertise {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  max-width: 1600px;
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  z-index: 1000;
  opacity: 0;
  animation: fadeIn 0.5s forwards;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.slider-popup-container {
  display: flex;
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 100%;
  transition: transform 0.5s ease;
}
.slide-popup {
  flex: 0 0 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  background-size: cover;
  background-position: center;
  transition: opacity 0.5s ease;
}
.slide-popup-content {
  text-align: center;
  color: white;
  z-index: 1;
  padding: 20px;
  border-radius: 5px;
  width: 500px;
}
.slide-popup-title {
  font-size: 2rem;
  font-weight: bold;
  color: white;
}
.slide-popup-subtitle {
  font-size: 17px;
  margin: 15px 0;
  color: white;
}
.slide-popup-button {
  padding: 10px 20px;
  background-color: transparent;
  border: none;
  color: white;
  font-size: 1rem;
  cursor: pointer;
  border-radius: 5px;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translate(50%);
  width: 53%;
}
.slide-popup-button:hover .icon-savoir-plus,  .slide-popup-button:focus .icon-savoir-plus{
  color: white!important;
} 
.slide-popup-button .icon {
  margin-right: 8px;
}
.container-arrows-planets {
  display: flex;
  justify-content: center;
  position: absolute;
  top: 50%;
  width: 100%;
  transform: translateY(-50%);
  z-index: 2;
}
.second-container-arrows-planets{
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 80%;
}
.nav-popup-arrow {
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 10px;
  transition: all ease-in-out 0.3s;
}
.nav-popup-arrow svg {
  width: 40px;
  height: 40px;
  fill: white;
}
.nav-popup-arrow.prev {
  display: block;
}
.nav-popup-arrow.next {
  display: block;
}
.nav-popup-arrow:hover, .nav-popup-arrow:focus {
  background-color: transparent!important;
  opacity: 0.7;
  transition: all ease-in-out 0.3s;
}
.popup-slider-expertise:hover .nav-popup-arrow.prev,
.popup-slider-expertise:hover .nav-popup-arrow.next {
  display: block;
}
#elementor-popup-modal-2287 > div, #elementor-popup-modal-2650 > div{
  width: 100%;
  background-color: transparent;
}
.close-popup-button{
  position: absolute;
  border: none!important;
  top: 15%;
  left: 20%;
  display: none;
}
.close-popup-button svg{
  height: 2.5em;
  width: 2.5em;
  transition: all ease-in-out 0.3s;
  display: flex;
  align-items: center;
  justify-content: center;
}
.close-popup-button:hover, .close-popup-button:focus {
  background-color: transparent!important;
}
.close-popup-button svg:hover{
  opacity: 0.7;
  transition: all ease-in-out 0.3s;
}
.icon{
  display: flex;
}
.icon > svg{
  fill: white;
  border: 1px solid black;
  border-radius: 30px;
  padding: 8px;
  font-size: 20px;
  height: 2em;
  width: 2em;
}
.nav-popup-arrow.prev{
  transform: rotate(180deg);
}
.slide-popup-button:hover, .slide-popup-button:focus{
  background-color: transparent!important;
}
.slide-popup-button .icon svg{
  transition: all ease-in-out 0.3s;
}
.slide-popup-button:hover .icon svg{
  background-color: black;
  transition: all ease-in-out 0.3s;
}
.icon-savoir-plus {
  position: relative;
}

@keyframes appear {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.slide-popup-button:hover .icon-savoir-plus::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: black;
}
#elementor-popup-modal-2287 > div, #elementor-popup-modal-2650 > div  {
  position: absolute;
  top: 20%;
  left: 25%;
  width: 50px;
}
.clients-popup-slide {
  display: none;
}
.clients-popup-slide.activeSlide {
  display: flex!important;
}
.clients-popup-slide.nonActiveSlide {
  display: none!important;
}
.translateText{
  transform: translateY(10px);
}

@media(max-width: 1357px){
  .slide-popup-content{
    width: 400px;
  }
  .slide-popup-subtitle {
    font-size: 16px;
  }
}
@media(max-width: 1112px){
  #outer-circle{
    width: 600px;
    height: 600px;
  }
  #inner-circle{
    width: 300px;
    height: 300px;
  }

  /* POSITON OF PLANETS */

  #planetProduction {
    width: 200px;
    height: 200px;
    top: 32%;
  }
  #planetBureau{
    width: 250px;
    height: 250px;
    left: 72%;
  }
  #planetLogistique{
    width: 250px;
    height: 250px;
    top: 76%;
  }
  #planetEconomy, #planetSecurity, #planetValorisation{
    width: 125px;
    height: 125px;
  }
  #planetValorisation{
    top: 87%;
  }
  #planetSecurity {
    top: 14%;
  }
  #planets-economy {
    right: 108%;
  }
  #planetSun{
    width: 250px;
    height: 250px;
  }

  /**/

  /* POSITON OF TEXTS */

  #planets-production{
    top: 27%;
    left: 8%;
  }
  #planets-logistic {
    top: 74%;
    left: 26%;
  }
  #planets-bureau {
    top: 35%;
    left: 83%;
  }

  /**/

  .popup-slider-expertise {
    width: 115%;
  }
}

@media(max-width: 980px){
  .menu-planets button, .menu-planets-mob button{
    font-size: 17px;
  }
  .btn-offer, .btn-offer-1{
    font-size: 17px;
  }
  #outer-circle{
    width: 500px;
    height: 500px;
  }
  #inner-circle{
    width: 200px;
    height: 200px;
  }

  /* POSITON OF PLANETS */

  #planetProduction {
    width: 150px;
    height: 150px;
    top: 40%;
  }
  #planetBureau{
    width: 200px;
    height: 200px;
    left: 67%;
  }
  #planetLogistique{
    width: 200px;
    height: 200px;
    top: 70%;
  }
  #planetEconomy, #planetSecurity, #planetValorisation{
    width: 100px;
    height: 100px;
  }
  #planetSun{
    width: 200px;
    height: 200px;
  }

  /* POSITON OF TEXTS */

  #planets-production{
    top: 30%;
    left: 7%;
  }
  #planets-logistic {
    top: 69%;
    left: 25%;
  }
  #planets-bureau {
    top: 30%;
    left: 78%;
  }

  /**/

  .popup-slider-expertise {
    width: 125%;
  }
}

.container-planets-mob{
  display: block;
  width: 100%;
  margin-top: 50px;
}
.container-one-planet-mob{
  height: 450px;
  padding: 50px;
  position: relative;
  animation : fadeIn 1s forwards;
}
.alinea{
  padding-inline-start: 15px;
  opacity: 0.8;
}
.container-contents-mobPlanets{
  position: absolute;
  top: 150px;
}
.margin-container{
  margin-top: 5px!important;
  transition: all smooth 0.1s;
}

@media(max-width: 853px){
  .container-section-planets{
    display: none;
  }
  .container-planets-mob{
    display: block;
  }
}
@media(max-width: 767px){
  .container-one-planet-mob{
    height: 385px;
  }
  .container-contents-mobPlanets {
    top: 125px;
  }
}
@media(max-width: 522px){
  .container-one-planet-mob{
    height: 300px;
  }
  .container-contents-mobPlanets {
    top: 70px;
  }
  .slide-popup-title{
    font-size: 1.7rem;
  }
}
@media(max-width: 363px){
  .slide-popup-subtitle {
    font-size: 14px;
  }
  .container-one-planet-mob{
    height: 260px;
  }
  .container-contents-mobPlanets {
    top: 25px;
  }
  .slide-popup-title{
    font-size: 1.5rem;
  }
}
@media(max-width: 321px){
  .slide-popup-subtitle {
    font-size: 13px;
  }
  .container-one-planet-mob{
    height: 300px;
  }
}

/* PLANETS MOB VERSION */

@media(min-width: 853px){
  .container-planets-mob, .menu-planets-mob{
    display: none;
  }
}
@media(min-width: 767px){
  .container-one-planet-mob{
    padding-top: 0px!important;
    padding-bottom: 0px!important;
    height: 430px!important;
  }
}
@media(max-width: 364px){
  .menu-planets-mob{
    left: 15%;
  }
}

/**/

/* NOS ENGAGEMENTS ABOUT PAGE */

.container-engagements-home div {
  gap: 24px;
}

@media(max-width: 767px){
  .container-engagements-home{
    flex-direction: column;
  }
}

/**/

/* CTA CARD - ABOUT PAGE */

@media(max-width: 646px){
  .container-cta{
    margin-top: 50px!important;
  }
}

/**/

/* IMAGEES SLIDER - DETAIL REALISATION PAGE */


@media(max-width: 767px){
  .carousel-detail-real > div > div{
    height: 350px!important;
  }
  .carousel-detail-real > div > div > div div figure img{
    height: 350px;
    width: 100%;
    object-fit: cover;
    background-size: cover;
  }
  .carousel-detail-real > div {
    margin-top: 50px!important;
  }
}
@media(max-width: 517px){
  .carousel-detail-real > div > div{
    height: 250px!important;
  }
  .carousel-detail-real > div > div > div div figure img{
    height: 250px;
  }
}
@media(max-width: 414px){
  .carousel-detail-real > div > div{
    height: 200px!important;
  }
  .carousel-detail-real > div > div > div div figure img{
    height: 200px;
  }
}

/**/
