@import "../bootstrap-icons-1.11.3/font/bootstrap-icons.css";
@font-face {
  font-family: 'Montserrat';
  src: url('../Montserrat/static/Montserrat-Regular.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}
body {
  font-family: 'Montserrat', sans-serif;
}
html,body{
  overflow-x: hidden;
}
.logo{
  width: 100%;
  padding: 20px;
}

.banner-img{
 
  background-repeat: no-repeat;
  background-size: cover;
  min-height: 100vh;
}
@media (max-width: 319px){
  .banner-img{
		background-image: url(../img/banner-mobile.webp);
    /* min-height: 100vh !important; */
    position: relative;
    top: -24px;
    z-index: -2;
    min-height: 25vh !important;
	}

  .div-0-banner{
    display: flex;
    flex-direction: column-reverse;
  }

  .overlapped-div{
    border-radius: 0px 0px 25px 25px !important;
  }

  .div-1-banner{
    padding: 0;
  }
}

@media only screen and (min-width: 320px) and (max-width: 991px){
	.banner-img{
		background-image: url(../img/banner-mobile.webp);
    /* min-height: 100vh !important; */
    position: relative;
    top: -24px;
    z-index: -2;
	}

  .div-0-banner{
    display: flex;
    flex-direction: column-reverse;
  }

  .overlapped-div{
    border-radius: 0px 0px 25px 25px !important;
  }

  .div-1-banner{
    padding: 0;
  }
}
@media (min-width: 991px){
	.banner-img{
    background-image: url(../img/banner.webp);
    height: 100vh;
    left: 0;
    margin: 0 !important;
    padding: 0 !important;
    /* position: absolute; */
    right: 0;
    top: 0;
    background-position: 50% 50%;
    bottom: 0;
    overflow: hidden;
	}
  .banner-text{
    /* position: absolute;
    top: 0;
    left: 0;
    margin-top: 3.1%; */
    width: 100%;
  }

  .overlapped-div{
    width: 75%;
    /* margin-left: 65%; */
  }

  .div-0-banner{
    padding-top: 0px;
    padding-bottom: 0px;
    align-items: center;
    display: flex;
    flex-flow: row;
    min-height: auto;
    position: relative;
  }
  .div-1-banner{
    max-width: 75%;
    display: flex;
    flex-flow: row wrap;
    width: 100%;
    margin-left: auto;
    justify-content: flex-end;
    position: absolute;
    top: 0;
    right: 0;
    justify-content: end;
  }
  .div-2-banner{
    margin: 0;
    padding: 0 15px 30px;
    position: relative;
    width: 100%;
    flex-basis: 50%;
    max-width: 50%;
  }

  .div-3-banner{
    margin-bottom: -100px;
  }
  /* .div-4-banner{
    margin-left: -15px;
    margin-right: -15px;
    padding-left: 0;
    padding-right: 0;
    width: auto;
    display: flex;
    flex-flow: row wrap;
  } */
}
.overlapped-div{
  background-color: #002654;
  border-radius: 0px 0px 40px 40px;
}

.btn-devis{
  background-color: #ee7202;
    border: black solid 1px;
    border-radius: 100px;
    width: 100%;
    display: flex;
    text-align: center;
    height: 50px;
    align-content: center;
    flex-wrap: wrap;
    justify-content: center;
    color: white;
    border: 0;
}

.bg-color{
  background-color: #ee7202;
}

.prussian-blue {
  background-color: #002654;;
}

/* .icons-banner{
  margin-left: 5%;
  margin-right: 5%;
} */

/* carrousel */

#cCarousel {
  position: relative;
  max-width: 59%;
  margin: auto;
}

#cCarousel .arrow {
  position: absolute;
  top: 40%;
  display: flex;
  width: 45px;
  height: 45px;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  z-index: 1;
  font-size: 26px;
  color: white;
  background: #00000072;
  cursor: pointer;
}

#cCarousel #prev {
  left: 0px;
}

#cCarousel #next {
  right: 0px;
}

#carousel-vp {
  width: 95%;
  height: 400px;
  display: flex;
  align-items: center;
  position: relative;
  overflow: hidden;
  margin: auto;
}

@media (max-width: 770px) {
  #carousel-vp {
    width: 510px;
  }
}

@media (max-width: 510px) {
  #carousel-vp {
    width: 250px;
  }
}

#cCarousel #cCarousel-inner {
  display: flex;
  position: absolute;
  transition: 0.3s ease-in-out;
  gap: 10px;
  left: 0px;
}
.cC-right{
left:-45px
}
.cC-left{
 right: 45px;
}
.cCarousel-item {
  width: 250px;
  height: 245px;
  border: 2px solid white;
  border-radius: 15px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  box-shadow:1px 0px 3px 0px rgb(0 0 0 / 0.2);
  padding: 15px;
}

.cCarousel-item img {
  width: 100%;
  object-fit: cover;
  min-height: 246px;
  color: white;
}

.cCarousel-item .infos {
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-around;
  background: white;
  color: black;
}

.cCarousel-item .infos button {
  background: #222;
  padding: 10px 30px;
  border-radius: 15px;
  color: white;
  font-size: 1rem;
  font-weight: bold;
  cursor: pointer;
}

.vector-bg{
  background-image: url(../img/background.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: bottom;
}

.vector-bg-car{
  background-image: url(../img/background.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 50% 40%;
}

/*  */

.accordion {
  background-color: white;
  color: #444;
  cursor: pointer;
  padding: 18px;
  width: 100%;
  border: none;
  text-align: left;
  outline: none;
  font-size: 15px;
  transition: 0.4s;
  border: black solid 1px;
  border-radius: 100px;;
}
/* 
.active, .accordion:hover {
  background-color: #ccc;
}

.panel {
  padding: 0 18px;
  background-color: white;
  display: none;
  overflow: hidden;
} */
/* .accordion {
  background-color: #eee;
  color: #444;
  cursor: pointer;
  padding: 18px;
  width: 100%;
  border: none;
  text-align: left;
  outline: none;
  font-size: 15px;
  transition: 0.4s;
} */

.active,
.accordion:hover {
  background-color: #ccc;
}
/* .accordion:after {
  content: '\02795';
  /* Unicode character for "plus" sign (+) */
  /* font-size: 5px;
  color: #777;
  float: right;
  margin-left: 5px;
} */

/* .accordion.active:after { */
  /* content: "\2796"; */
  /* Unicode character for "minus" sign (-) */
/* }  */

.panel {
  padding: 0 18px;
  background-color: white;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.2s ease-out;
}

.fixed {
  position: fixed;
  top: 0;
  right: 0;
  width: 100%;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
  z-index: 2;
}

nav {
  background-color: #333;
  color: white;
  /* padding: 10px; */
  position: relative;
  transition: 2s;
}

nav.fixed {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 1000;
}

.centered {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.legenda-carrosel{
  position: absolute;
  top: 25%;
}

/* .accordion:after { */
  /* content: '\02795'; Unicode character for "plus" sign (+) */
  /* font-size: 13px;
  color: #777;
  float: right;
  margin-left: 5px;
} */
/* .active:after {
  content: "\2796"; /* Unicode character for "minus" sign (-) */
/* } */

/* asdsadasda */
/* Container do carrossel */
.carrossel-container {
  width: 80%;
  margin: auto;
  overflow: hidden;
  position: relative;
}

/* Container das imagens */
.carrossel-imagens {
  display: flex;
  justify-content: center;
  align-items: center;
  transition: transform 0.5s ease;
  position: relative;
  margin: 0;
  padding: 0;
  gap: 0; /* Garante que não haja espaço entre as imagens */
}

/* Cada imagem no carrossel */
.carrossel-imagem {
  margin: 0; /* Garante que não haja margem entre as imagens */
  padding: 0; /* Garante que não haja padding entre as imagens */
}

/* Cada imagem no carrossel */
.carrossel-imagem img {
  width: 100%; /* As imagens ocupam 100% do espaço de seu contêiner */
  height: auto;
}

/* Botões de navegação */
.btn-prev, .btn-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-color: rgba(0, 0, 0, 0.5);
  color: white;
  border: none;
  font-size: 2em;
  cursor: pointer;
  padding: 10px;
}

.btn-prev {
  left: 10px;
}

.btn-next {
  right: 10px;
}

/* Exibe 3 imagens por vez em telas grandes (desktops) */
/* @media (min-width: 1024px) {
  .carrossel-imagem img {
    /* width: 33.33%; 3 imagens por vez */
  /* }
}  */

/* Exibe 2 imagens por vez em tablets (telas médias) */
@media (max-width: 1024px) and (min-width: 768px) {
  .carrossel-imagem img {
    width: 100%; /* 2 imagens por vez */
  }
}

/* Exibe 1 imagem por vez em dispositivos móveis (telas pequenas) */
@media (max-width: 768px) {
  .carrossel-imagem img {
    width: 100%; /* 1 imagem por vez */
  }
}

/* Cada imagem no carrossel */
.carrossel-imagem {
  position: relative; /* Necessário para posicionar o texto dentro da imagem */
  margin: 0;
  padding: 0;
  width: 100%;
}

/* Texto dentro da imagem */
.texto-imagem {
  position: absolute;
  bottom: 20px; /* Posiciona o texto no fundo da imagem */
  left: 50%;
  transform: translateX(-50%); /* Centraliza o texto horizontalmente */
  background-color: rgba(0, 0, 0, 0.5); /* Fundo semitransparente para o texto */
  color: white; /* Cor do texto */
  padding: 10px;
  font-size: 1.2em;
  text-align: center; /* Centraliza o texto */
  width: 80%; /* Limita a largura do texto para que não ocupe toda a imagem */
}

.btn_popups{
  color: white;
}

.alert {
  padding: 20px;
  background-color: #f44336;
  color: white;
  opacity: 1;
  transition: opacity 0.6s;
  margin-bottom: 15px;
}

.alert.success {background-color: #04AA6D;}

.closebtn {
  margin-left: 15px;
  color: white;
  font-weight: bold;
  float: right;
  font-size: 22px;
  line-height: 20px;
  cursor: pointer;
  transition: 0.3s;
}

.closebtn:hover {
  color: black;
}

/* @media (min-width:768px) {
  .hidden-md-up {
      display: none!important
  }
}

@media (max-width:991px) {
  .hidden-md-down {
      display: none!important
  }
} */

/* @media (max-width:991px) {
  .banner-img{
    background-size: contain;
  }
  .banner-text {
    position: absolute;
    bottom: 0;
  }
} */

@media (min-width:768px){
  .first_icons{
    padding-top: 17%;
  }
}

@media (max-width:767px){
  .text_faq{
    font-size: 15px;
  }
}

a:hover{
  text-decoration: none !important;
}

html {
  scroll-behavior: smooth;
}

.demande_rap:hover{
  color: #ee7202;
}

.demande_rap{
  background-color: white !important; 
  color: #002654;
}

.demande_rap_blue{
  /* color: #002654; */
  background-color: white !important; 
  color: #ee7202;
}
.demande_rap_blue:hover{
  color: #002654;
}

.faire_demande{
  background-color: #ee7202 !important; 
  color: white;
}
.faire_demande:hover{
  color: #002654;
}

.btn-devis:hover{
  color: #002654;
}

a {
  text-decoration: none;
}
.btn-devis-none{
  display: inline !important;
}

.icons_hero{
  display: flex;
  /* margin-top: 14%; */
  position: relative;
  /* margin-bottom: 5%; */
}

.accordion .span_icon_plus:after{
  content:'\F4FE';
  font-family:'bootstrap-icons';
  font-size: 25px;
}

.accordion.active .span_icon_plus:after{
  content:'\F2EA';
  font-family:'bootstrap-icons';
  font-size: 25px;
}

.icon_plus_center{
  text-align: center;
}

.btn-obtenir-devis{
  /* position: absolute; 
  top: 93%; */
  flex: 1;
  display: flex;
  align-items: end;
}
.card-bd{
  display: flex;
  flex-direction: column;
    align-items: flex-start;
}

@media only screen and (min-width: 992px) and (max-width: 1090px) {
  .btn-obtenir-devis{
    position:static;
  } 
}

@media only screen and (min-width: 320px) and (max-width: 365px) {
  /* .card-style{
    max-height: 750px;
  } */

  .img-card-body{
    max-height: 45% !important;
  }
}

.fs-1-6{
  font-size: 1.6em;
}

.orange-color-text{
  color: #ee7202 !important;
}
.blue-color-text{
  color:#002654;
}
.blue-bg-color{
  background-color: #002654;
}

.card-style{
  width: 500px; 
  max-height: 850px; 
  border-radius: 20px; 
  box-shadow: 1px 0px 3px 0px rgb(0 0 0 / 0.2);
}

.dm-rap-bg{
  background-color: white; 
  color: #002654;
}

.dm-rap-bg:hover{
  color: #ee7202;
}

.img-clientes-card{
  border-radius: 20px 20px 0 0; 
  max-height: 60%;
}

.btn-catalogue{
  background-color: white; 
  color:#002654;
}
.btn-catalogue:hover{
  color: #ee7202;
}

.white-bg-color{
  background-color: white !important;
}

.input-form-style1{
  margin-right: 10px; 
  border-radius:100px;
}

.input-form-style2{
  border-radius:100px;
}
.bg-color-footer{
  background-color: rgb(0, 52, 72);
}
/* @media only screen and (max-width: 575px){
  .col-half-1{
    width: 4.16%;
  }
} */

/* @media only screen and (min-width: 960px){
  .col-half-1{
    display: none;
  }
} */

/* @media only screen and (min-width: 320px) and (max-width: 375px) {
  .banner-img{
    min-height: 24vh !important;
    position: relative;
    top: -13px;
    z-index: -2;
  }
}
@media only screen and (min-width: 376px) and (max-width: 425px) {
  .banner-img{
    min-height: 27vh !important;
    position: relative;
    top: -11px;
    z-index: -2;
  }
}

@media only screen and (min-width: 426px) and (max-width: 768px) {
  .banner-img{
    min-height: 50vh !important;
    position: relative;
    top: -13px;
    z-index: -2;
  }
}
@media only screen and (min-width: 769px) and (max-width: 991px) {
  .banner-img{
    min-height: 62vh !important;
    position: relative;
    top: -20px;
    z-index: -2;
  }
} */
@media only screen and (min-width: 426px) and (max-width: 768px) and (orientation:portrait) {
  .banner-img {
    background-size: cover;
    min-height: 35vh !important;
  }
}

@media only screen and (min-width: 320px) and (max-width: 425px) and (orientation:portrait) {
  .banner-img {
    background-size: cover;
    min-height: 30vh !important;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) and (orientation:portrait) {
  .banner-img {
    background-size: cover;
    min-height: 43vh !important;
  }
}

@media only screen and (min-width: 426px) and (max-width: 768px) and (orientation:landscape) {
  .banner-img {
    background-size: cover;
    min-height: 100vh !important;
  }
}

@media only screen and (min-width: 320px) and (max-width: 425px) and (orientation:landscape) {
  .banner-img {
    background-size: cover;
    min-height: 30vh !important;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) and (orientation:landscape) {
  .banner-img {
    background-size: cover;
    min-height: 60vh !important;
  }
}

@media only screen and (min-width: 992px) and (max-width: 1200px){
  .div-1-banner{
    max-width: 90% !important;
  }

  .banner-text{
    width: 130%;
  }
}

.avis-carousel-card{
  margin: 5px !important;
}

.avis-prev{
  justify-content: start !important;
}
.avis-next{
  justify-content: end !important;
}

.carousel-bg{
  background-color: transparent !important;
}

@media (max-width: 768px) {
  /* .carousel-inner .carousel-item > div {
    display: none;
  } */
  .carousel-inner .carousel-item > div:first-child {
    display: block;
  }
}

.carousel-inner .carousel-item.active,
.carousel-inner .carousel-item-start,
.carousel-inner .carousel-item-next,
.carousel-inner .carousel-item-prev {
  display: flex;
  flex-wrap: nowrap;
  /* transition-duration: 10s; */
}

@media(max-height: 568px){
  .faq-568p{
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
  }
}

/* display 4 */
@media (min-width: 1400px) {
  .carousel-inner .carousel-item-right.active,
  .carousel-inner .carousel-item-next,
  .carousel-item-next:not(.carousel-item-start) {
    transform: translateX(25%) !important;
  }

  .carousel-inner .carousel-item-left.active,
  .carousel-item-prev:not(.carousel-item-end),
  .active.carousel-item-start,
  .carousel-item-prev:not(.carousel-item-end) {
    transform: translateX(-25%) !important;
  }

  .carousel-item-next.carousel-item-start, .active.carousel-item-end {
    transform: translateX(0) !important;
  }

  .carousel-inner .carousel-item-prev,
  .carousel-item-prev:not(.carousel-item-end) {
    transform: translateX(-25%) !important;
  }
}

.cr-right{
 right: -31px;
}

.cr-left{
left: -58px;
}

.btn-next-cr{
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-color: rgba(0, 0, 0, 0.5);
  color: white;
  border: none;
  font-size: 2em;
  cursor: pointer;
  padding: 10px;
}

.btn-prev-cr{
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-color: rgba(0, 0, 0, 0.5);
  color: white;
  border: none;
  font-size: 2em;
  cursor: pointer;
  padding: 10px;
}

.carousel-control-prev{
  width: 0%;
}

.carousel-control-next{
  width: 0%;
}

.bg-card1{
  background-image: url(../img/portail-bologna.jpg);
  background-position: center;
  background-size: cover;
  min-height: 50vh;
}

.bg-card2{
  background-image: url(../img/portail-dijon-panneau.jpg);
  background-position: center;
  background-size: cover;
  min-height: 50vh;
}
.bg-card3{
  background-image: url(../img/portillon.jpg);
  background-position: center;
  background-size: cover;
  min-height: 50vh;
}
.bg-card4{
  background-image: url(../img/cloture.jpg);
  background-position: center;
  background-size: cover;
  min-height: 50vh;
}

.avis-rating-on{
  /* content:'\F586'; */
  font-family:'bootstrap-icons';
  font-size: 25px;
  color: #ee7202;
}

.avis-rating-off{
  /* content:'\F588'; */
  font-family:'bootstrap-icons';
  font-size: 25px;
  color: black;
}

/* Modulo cookies */
#containerConsentLGPD {
  margin: 0px;
  padding: 0px;
  position: fixed;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 2000;
  display: none;
  align-items: center;
  justify-content: center;
}

@media only screen and (max-width: 540px) {
  .cookie_media {
    width: 100% !important;
  }
  .cookie-text{
    height: 230px;
    overflow-y: scroll;
    margin-bottom: 20px;
  }
}

#containerConsentLGPD .popupConsentLGPD {
  width: 500px;
  height: auto;
  background-color: #002654;
  color: white;
  font-family: Montserrat, sans-serif !important;
  text-align: center;
  padding: 10px 45px;
}

#containerConsentLGPD .popupConsentLGPD div div p.ConsentLGPDno {
  text-align: right;
  text-decoration: underline;
  margin-top: 10px;
  cursor: pointer;
}

#containerConsentLGPD .popupConsentLGPD .image p img {
  width: 60%;
  margin-top: 20px;
}

#containerConsentLGPD .popupConsentLGPD .text p {
  text-align: justify;
  margin-top: 25px;
  margin-bottom: 25px;
  line-height: normal;
}

#containerConsentLGPD .popupConsentLGPD p.ConsentLGPDpolicy,
#containerConsentLGPD .popupConsentLGPD p.ConsentLGPDyes {
  padding: 10px 00px;
  cursor: pointer;
}

#containerConsentLGPD .popupConsentLGPD p.ConsentLGPDpolicy {
  border: 2px solid #7a7a7a;
  color: black;
  background-color: white;
  opacity: 0.9;
  border-radius: 0.5rem;
}

#containerConsentLGPD .popupConsentLGPD p.ConsentLGPDyes {
  border: 2px solid #7a7a7a;
  background-color: #ee7202;
  color: white;
  font-weight: bold;
  border-radius: 0.5rem;
}

.top-left{
    position: absolute;
    transition: all 0.3s ease;
    border-radius: 0.5rem;
    /* background-color: #002654; */
}

.w-cookie-pop-up{
  width: 100% !important;
  padding: 0 !important;
  /* background-color: #002654; */
}