/* -- HOME ------------------------------------------------------------------ */
.home header .logo a {
  pointer-events: none;
}

/* #index .row .serv ul {
  list-style-type: none;
  padding: 0;
}

#index .services {
  line-height: 150%;
}

#index .services .accroche {
  line-height: 150%;
} */

/* -- DESCRIPTION -- */
/* #index .description_home {
  background: #fff;
  position: relative;
  width: auto;
  font-size: 1rem;
  text-align: left;
  font-family: Apercu-Bold, sans-serif;
  transition: all 0.5s ease;
  z-index: 1;
  padding: 3rem 0 2rem 0;
}

#index .description_home p {
  margin: 0 0 10px 0;
  font-weight: bold;
  letter-spacing: -0.04em;
  line-height: 1rem;
} */

/* -- CAROUSEL -- */
#index .swiper {
  width: 100%;
  height: 35vh;
  margin-left: 0;
}

#index .carousel {
  background: var(--ultra-violet-lightest);
}

#index .swiper-info {
  width: 50%;
  height: auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

#index .gallery-thumbs {
  background: #f7f7f7;
}

#index .swiper-set {
  width: 11rem;
  margin: 0 auto;
  position: relative;
}

#index .carousel .text_container {
  padding: 2rem 1rem;
  height: auto;
  position: relative;
  text-align: center
}

#index .carousel .text_container a {
  text-decoration: none;
  color: #000;
  transition: all 0.4s ease;
}

#index .carousel .titre {
  font-size: 0.8rem;
  font-weight: 700;
}

#index .carousel .titre span {
  font-weight: 300;
}

#index .carousel .accroche {
  font-size: 1rem;
  font-weight: 700;
  margin-top: 2rem;
}

#index .carousel .accroche p {
  margin-top: 0;
}

#index .trait_carousel {
  display: none;
  width: 1px;
  height: 2rem !important;
  background-color: black;
  margin: 2rem 0;
}

#index .carousel .swiper-button-prev,
#index .carousel .swiper-button-next {
  cursor: pointer;
  z-index: 20;
  height: 0.95rem;
  margin: 0;
  outline: none;
}

#index .swiper-button-next::after,
#index .swiper-button-prev::after {
  display: none;
}

#index .carousel .swiper-button-prev {
  background: url("../other/pictures/left_arrow.svg") no-repeat left center;
  top: -2rem;
}

#index .carousel .swiper-button-next {
  background: url("../other/pictures/right_arrow.svg") no-repeat right center;
  top: -2rem;
}

#index .carousel .swiper-pagination {
  font-size: 0.7rem;
  font-family: Apercu-Bold, sans-serif;
  bottom: 1rem;
  display: inline-flex;
  justify-content: center;
  align-items: center;
}

#index .tiret-pagination {
  width: 1.7rem;
  height: 1rem;
  background: url("../other/pictures/tiret.svg") no-repeat center;
  display: flex;
  margin: 0 1rem;
}

/* -- SERVICES -- */
#index .services {
  color: #fff;
  background-color: var(--noir);
  text-align: left;
  z-index: 2;
  position: relative;
}

#index .services .accroche {
  font-family: Apercu-Bold, sans-serif;
  font-size: 1.5rem;
  text-align: left;
  margin: 0;
}

#index .services .liste-services .el {
  display: flex;
  flex-direction: column;
}

#index .services a.item {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: stretch;
  background-color: var(--blanc);
  border-radius: 2rem;
  overflow: hidden;
  padding: 2.5rem 2.5rem 0 2.5rem;
  margin: 0.5rem;
  color: var(--noir);
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  flex: 1 1 auto
}

#index .services a.item:hover {
  -webkit-transform: scale(1.065);
  transform: scale(1.065);
}

#index .services a.item .h2 {
  color: var(--noir);
  line-height: 1;
  margin-top: 0;
  margin-bottom: 0.5em;
}

#index .services a.item .intro {
  font-size: 1.5rem;
  line-height: 1.2;
  position: relative;
  z-index: 2;
}

#index .services a.item .visuel {
  margin-top: 2rem;
  -webkit-transform: translateX(2.5rem);
  transform: translateX(2.5rem);
  position: relative;
  z-index: 1;
}

#index .services a.item .visuel img {
  left: unset;
  top: unset;
  right: 0;
  bottom: 0;
  width: 100%;
  height: auto;
}

/* #accroche_home {
  margin: 0 0 10px 0;
  font-weight: bold;
  letter-spacing: -0.02em;
  line-height: 1.1;
  font-size: 1.75rem;
} */

/* .description_home .boutons{
  gap: 1rem;
  margin: 2rem 0;
} */
.slider-actus .swiper{
  padding-bottom:2rem;
}
.slider-actus .swiper .swiper-slide{
  height: auto;
  width:70%;
}
@media screen and (min-width:992px){
  .slider-actus .swiper .swiper-slide{
    width:35%;
  }
}
@media screen and (min-width:1440px){
  .slider-actus .swiper .swiper-slide{
    width: 27.5%;
  }
}
.slider-actus .swiper .swiper-slide .item{
  border-radius:1rem;
  overflow: clip;
  flex: 1 1 auto;
  text-decoration: none;
  color: var(--noir);
  transition: all 0.2s ease;
  position:relative;
  background-color: var(--blanc)
}
.slider-actus .swiper .swiper-slide .item:hover{
  color: var(--blanc);
  background-color: var(--neutral-dark)
}
.slider-actus .swiper .swiper-slide .item .vignette{
  overflow: clip
}
.slider-actus .swiper .swiper-slide .item .vignette img{
  width:100%; height: 100%;
  object-fit: cover;
  transition: all 0.2s ease
}
.slider-actus .swiper .swiper-slide .item:hover .vignette img{
  transform: scale(1.1)
}
.slider-actus .swiper .swiper-slide .item .ttl{
  padding:1rem 1.5rem;
  text-align:left;
  font-weight: 700;
  line-height:1.2
}
.slider-actus .swiper .swiper-slide .item .ttl .date{
  font-size:0.85rem;
  text-align:left;
  font-weight: 300;
  color: var(--ultra-violet);
  margin-bottom:0.5rem;
}
.slider-actus .swiper .swiper-slide .item:hover .ttl .date{
  color: var(--ultra-violet-lightest);
}
.slider-actus .swiper-pagination{
  position:relative
}
.slider-actus .swiper-pagination-bullet{
  background-color: var(--neutral)
}
.slider-actus .swiper-pagination-bullet-active{
  background-color: var(--ultra-violet)
}
.slider-actus .navigation{
  width:120px; gap:0.5rem
}
.slider-actus .swiper-button-prev, .slider-actus .swiper-button-next{
  position: relative;
  left: unset; right: unset; top: unset;
  border-radius:50%;
  border: 1px solid var(--neutral-dark);
  background-color: var(--blanc);
  width: 48px;
  height: 48px;
  margin-top:0;
  background-repeat: no-repeat;
  background-position: center;
}
.slider-actus .swiper-button-prev:hover, .slider-actus .swiper-button-next:hover{
  background-color: var(--ultra-violet-lightest)
}
.slider-actus .swiper-button-next{
  background-image: url(../img/arrow_forward.svg)
}
.slider-actus .swiper-button-prev{
  background-image: url(../img/arrow_back.svg)
}

/* -- MEDIA QUERY -- */
@media screen and (min-width: 375px) {
  #index .description_home {
    font-size: 1.2rem;
  }

  #index .carousel .accroche {
    font-size: 1.2rem;
  }

  #index .services .service1 svg,
  #index .services .service2 svg {
    left: 0;
    width: 50vw;
  }
}

@media screen and (min-width: 425px) {
  #index .carousel .text_container {
    padding: 2rem;
  }
}

@media screen and (min-width: 568px) {
  #index .ham {
    margin: 2em 4em;
  }

  #index .carousel .text_container {
    padding: 3rem;
  }

  #index .description_home h1 {
    font-size: 1.8rem;
  }

  #index .description_home p {
    line-height: 1.5rem;
  }
}

@media screen and (min-width: 768px) {
  #accroche_home {
    font-size: 2.15rem;
  }

  #index .swiper {
    height: 28rem;
  }

  #index .description_home {
    padding: calc(5vw + 5rem) 0 5rem 0;
  }

  #index .description_home h1 {
    font-size: 2.5rem;
  }

  #index .carousel .text_container {
    padding: 8rem;
  }

  #index .description_home p {
    line-height: 2rem;
    padding-left: 1.5rem;
  }

  #index .carousel .titre {
    font-size: 0.8rem;
  }

  #index .carousel .accroche {
    font-size: 1.5rem;
    margin-top: 3rem;
  }

  #index .services .accroche {
    padding-right: 1rem;
  }

  #index .carousel .swiper-pagination {
    bottom: 4rem;
  }

  #index .carousel .swiper-button-prev {
    top: -5rem;
  }

  #index .carousel .swiper-button-next {
    top: -5rem;
  }

  #index .services .service {
    width: 50vw;
  }

  #index .services .blocs {
    display: flex;
    position: absolute;
    height: -webkit-fill-available;
    left: 0;
  }

  #index .services .service-wrapper {
    flex-direction: row;
  }

  #index .services .service1 {
    margin-right: 10%;
  }

  #index .services .service1 svg {
    bottom: 0;
    left: 0;
    width: 50vw;
  }

  #index .services .service2 svg {
    bottom: 0;
    left: 50%;
    width: 50vw;
  }
}

@media screen and (min-width: 1024px) {
  #index .description_home h1 {
    font-size: 3rem;
  }

  #index .carousel .text_container {
    padding: 6rem 3rem;
  }

  #index .description_home p {
    margin: 0 0 10px 0;
    font-weight: bold;
    padding-left: 0;
    letter-spacing: -0.02em;
    line-height: 4rem;
  }

  #index .carousel {
    display: flex;
  }

  #index .carousel .accroche {
    margin-top: 0;
  }

  #index .swiper {
    width: 100%;
  }

  #index .trait_carousel {
    height: 2rem !important;
    display: inline-block;
  }
}

@media screen and (min-width: 1200px) {
  html {
    font-size: 16px;
  }

  #index .description_home h1 {
    font-size: 3.5rem;
  }

  #index .services .row .accroche {
    padding: 0 0 4vw 0;
  }

  #accroche_home {
    font-size: 2.65rem;
  }
}

@media screen and (min-width: 1340px) {
  #index .swiper {
    height: 35rem;
  }

  #index .carousel .text_container {
    padding: 8rem 10rem;
  }
}

@media screen and (min-width: 1400px) {

  #accroche_home {
    font-size: 3rem;
  }

  #index .description_home p {
    line-height: 5rem;
  }

  #index .trait_carousel {
    height: 2rem !important;
    margin: 4rem 0;
  }

  #index .swiper {
    height: 50rem;
  }

  #index .carousel .text_container {
    padding: 15rem 5rem;
  }

  #index .services a.item .intro {
    font-size: 1.75rem;
  }
}

@media screen and (min-width: 1680px) {
  #accroche_home {
    max-width: 80%
  }
}

.agence, .engagement {
  padding-top: 5vw;
  padding-bottom: 5vw;
}

.engagement img{
  max-width: 85%;
}
.agence img {
  max-width: 70%;
}

/*ACTUS SUR LA HOME*/
.home-actus {
  padding-bottom: 5vw;
  padding-top: 5vw;
}
.latest-actus a {
  text-decoration: none;
  display: block;
  margin-bottom: 2rem;
}

.latest-actus .img_space {
  margin-bottom: 1.5rem;
}

.latest-actus .date {
  font-size: .9rem;
}

.latest-actus .title {
  font-size: 1.2rem;
}

/*CAROUSEL LOGOS*/

.carousel-logos {
  padding: 3vw 0;
}

#index .carousel-logos .swiper {
  height: auto;
}

.carousel-logos .swiper-slide {
  padding: 1.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.carousel-logos .logo {
  text-align: center;
  background: #FFFFFF;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  border-radius: 10px;
}


.carousel-logos .logo:hover::after {
  opacity: .2;
}

.carousel-logos .logo img {
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width:60%; height:60%;
  object-fit:contain;
  filter: grayscale(100%)
}