body{
	font-family: 'Geomanist';
}
.header{
	position: absolute;
    background: inherit !important;
	padding: clamp(20px, 4.167vw, 60px) clamp(20px, 6.944vw, 100px) 20px clamp(20px, 6.944vw, 100px);
	
}

.banner__button {
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
}

.banner__button.is-visible {
    opacity: 1;
    pointer-events: auto;
}

.header__logo img{
	height: unset;
	width: clamp(140px, 20.556vw, 196px);
}

.banner .banner__img{
	object-position: center;
    padding: 0;
}

.banner{
	padding-top: 173px;
    top: 0;
	background: linear-gradient(139.72deg, rgba(86, 129, 165, 0.1) 32.95%, rgba(32, 51, 69, 0.5) 72.85%);
	padding-left: clamp(20px, 6.944vw, 100px);
	padding-right: clamp(20px, 6.944vw, 100px);
	height: auto;
	padding-bottom: 112px;
	margin-bottom: 140px !important

}

.banner__content{
	margin-top: unset;
    width: 100%;
	padding-right: clamp(0px, 6.806vw, 98px)
}

.banner__bandeau-groupe{
	color: #fff;
	font-family: 'Geomanist';
	font-weight: 400;
	font-size: 18px;
	line-height: 114.99999999999999%;
	text-align: center;
	margin-bottom: 15px

}

.banner__bandeau-rapport{
	font-family: 'Acumin Pro Condensed';
	font-weight: 600;
	font-size: clamp(44px, 4.722vw, 68px);
	line-height: 100%;
	text-align: center;
	text-transform: uppercase;
	color: #fff;
	border: 4px;
    border-style: solid;
    border-color: #FFFFFF;
    width: 100%;
    padding: 40px 30px;
	border-bottom: 0;
	position: relative;
	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.45);
}

.banner__bandeau-rapport:before{
	content: "";
	position: absolute;
	width: 80px;
	left: 0;
	bottom: 0;
	height: 4px;
	background: #fff;
}

.banner__bandeau-rapport:after{
	content: "";
	position: absolute;
	width: 80px;
	right: 0;
	bottom: 0;
	height: 4px;
	background: #fff;
}

.banner__bandeau{
	max-width: 409.34px;
    margin-left: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.banner__bandeau-description{
	color: #fff;
	font-family: 'Geomanist';
	font-weight: 700;
	font-size: 20px;
	line-height: 130%;
	letter-spacing: 0;
	text-align: center;
	padding: 15px 20px 0;
	max-width: 240.8px;
	margin-top: -28px;
}

.section-wrapper{
	top: 0 !important;
}


.banner__content-anchors{
	position: fixed;
    top: 250px;
    left: 0;
    z-index: 999;
}


.banner__content-anchors {
  position: fixed;
  left: 0;
  top: 50%;
/*   transform: translateY(-50%); */
  z-index: 100;
  list-style: none;
  padding: 0;
  margin: 0;
	width: 100px;
	background: inherit;
}

.banner__content-anchors-item a::before{
	display: none !important;
}

.banner__content-anchors-item a {
  display: flex;
  align-items: center;
  text-decoration: none;
  overflow: hidden;
	line-height: 0 !important;
	background-color: var(--item-color);
	min-width: 30px;
  min-height: 20px;
}

.anchor-dot {
  display: block;
  width: 10px;
  min-width: 30px;
  height: auto;
	min-height: 20px;
  transition: width 0.3s ease;
}

li.is-active .anchor-label{
	font-weight: 700;
}

.anchor-label {
 	font-family: 'Geomanist';
	font-weight: 400;
	font-size: 14px;
	line-height: 0;
	color: #fff;
  max-width: 0;
  overflow: hidden;
  opacity: 0;
  transition: all 0.3s ease;
  background-color: var(--item-color);
  padding: 6px 0;
}

.banner__content-anchors-item:hover a::after{
	display: none !important;
}

.banner__content-anchors-item:hover a{
	padding-left: 0 !important
}


.banner__content-anchors-item.is-active .anchor-dot {
  width: 0;
}

.banner__content-anchors-item.is-active{
	width: 100%;
}

.banner__content-anchors-item.is-active .anchor-label {
  max-width: 200px;
  opacity: 1;
  padding: 6px;
	line-height: 1.2;

}

.banner__content-anchors-item.is-active a{
	width: 100%;
	min-height: 46px;
}

.banner__content-anchors .banner__content-anchors-item.is-active{
	margin: 5px 0 !important;
}


.banner__content-anchors-item:not(:last-child){
	margin: 0 !important;
}

.banner__content-anchors:hover li a{
	min-height: 46px;
}
.banner__content-anchors:hover .anchor-label{
	max-width: 200px;
    opacity: 1;
    padding: 6px;
	line-height: 1.2;
}

.banner__content-anchors:hover .banner__content-anchors-item{
	width: 100%
}

section#message{
	padding-left: clamp(20px, 6.944vw, 100px);
    padding-right: clamp(20px, 6.944vw, 100px);
	flex-direction: column;
    align-items: center;
	display: flex;
	margin-bottom: 97px;
}

.projects::before{
	display: none;
}

.projects.projects-quote{
	padding-left: clamp(20px, 6.944vw, 100px);
    padding-right: clamp(20px, 6.944vw, 100px);
	padding-bottom: 170px
}


.projects-quote .project-card__inner{
	padding: 0
}

.projects-quote .project-card{
	border: none;
}

.projects-quote .project-card-content{
	padding: 0
}

.project-card-content-title{
	color: var(--section-color);
	font-size: clamp(44px, 4.167vw, 60px);
}



.projects-quote .project-card-content{
	max-width: unset;
    width: 57.66%;
	display: flex;
    gap: 37px;
}

.project-card-content__icon svg path{
	fill: var(--section-color);
}

.projects-quote .project-card-img{
	width: 42.34%;
    margin: 0;
    padding-left: 20px;
}

.projects-quote .project-card-img .project-card-img__inner{
	max-width: 79.4%;
    float: right;
	aspect-ratio: 400 / 275;
	position: relative;
	line-height: 0;
	    display: flex;
	
}

.projects-quote .project-card-img .project-card-img__inner::after{
	content: '';
    position: relative;
    top: 0;
    right: 20px;
    background: var(--section-color);
    height: 100%;
    min-width: 20px;
    display: block;
    width: 20px;
}
.projects-quote .project-card-img .project-card-img__inner img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.projects-quote .project-card-content-excerpt{
	font-weight: 400;
	font-size: clamp(30px, 2.778vw, 40px);
	line-height: 130%;
	letter-spacing: 0%;
	color: var(--section-color);
	margin-bottom: 30px;
}

.projects-quote .project-card-content__button{
	display: inline-block;
	border: 2px solid var(--section-color);
	padding: 9px 39px 13px 37px;
	font-family: 'Acumin Pro';
	font-weight: 600;
	font-size: 16px;
	line-height: 100%;
	letter-spacing: 0%;
	text-align: center;
	color: var(--section-color);
	transition: all 0.3 ease
}
.projects-quote .project-card-content__button:hover, .news-fixed .news-card__content__button:hover, button.news-fixed__voir-tout:hover, .text-link__button:hover{
	box-shadow: inset -6px 0 0 var(--section-color);
	background: inherit;
	color: var(--section-color);
}

.footer__top__button:hover{
	box-shadow: inset -6px 0 0 #fff;
	background: inherit;
	color: #fff;
}

.features-links__list{
	margin-top: 60px;
	    display: flex;
    flex-wrap: wrap;
    gap: 21px;
}

.features-links__item {
	width: calc(25% - 15.75px);
	background: var(--section-color);
	padding: 30px 30px 28px 30px;
}

.features-links__item-number{
	color: #fff;
	font-family: 'Acumin Pro Condensed';
	font-weight: 600;
	font-size: clamp(44px, 4.167vw, 60px);
	line-height: 100%;
	letter-spacing: 0%;
	text-transform: uppercase;
	margin-bottom: 11px;

}

.features-links__item-icon{
	display: flex;
    justify-content: flex-end;
	margin-bottom: 18px;
}

.features-links__item-description{
	color: #fff;
	font-weight: 400;
	font-size: 20px;
	line-height: 140%;
	letter-spacing: 0%;

}

.projects-quote .projects__list{
	margin-bottom: 0;
}

.text-framed{
	display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    color: var(--section-color);
	margin-bottom: 88px;
	margin-top: 88px;
	padding-left: clamp(20px, 6.944vw, 100px);
    padding-right: clamp(20px, 6.944vw, 100px);
}

.text-framed__surtitre{
	font-weight: 400;
	font-size: 18px;
	line-height: 114.99999999999999%;
	letter-spacing: 0%;
	text-align: center;
	margin-bottom: 16px;
}

.news-fixed::before, .keypoints::before{
	display: none;
}

h2.text-framed__titre:before{
	content: "";
	position: absolute;
	width: 80px;
	left: 0;
	bottom: 0;
	height: 4px;
	background: var(--section-color);
}

h2.text-framed__titre:after{
	content: "";
	position: absolute;
	width: 80px;
	right: 0;
	bottom: 0;
	height: 4px;
	background: var(--section-color);
}

h2.text-framed__titre {
	font-family: 'Acumin Pro Condensed';
    font-weight: 600;
    font-size: clamp(30px, 2.917vw, 42px);
    line-height: 100%;
    letter-spacing: 0%;
    text-align: center;
    text-transform: uppercase;
    color: var(--section-color);
	padding: 30px;
    border-width: 4px 4px 0 4px;
    border-style: solid;
    border-color: var(--section-color);
    position: relative;
    width: 616px;
}

.text-framed__description{
	padding: 15px 20px 0;
	max-width: 448px;
	font-weight: 700;
	font-size: 20px;
	line-height: 130%;
	letter-spacing: 0%;
	text-align: center;
    margin: 0 auto;
    margin-top: -28px;
}

.news-fixed--single .news__list{
	width: 100%;
    display: block;
}

.news-fixed.news-fixed--single{
	background: #fff !important;
	padding-left: clamp(20px, 6.944vw, 100px);
    padding-right: clamp(20px, 6.944vw, 100px);
	padding-bottom: 0;
	margin-bottom: 62px;
	
}

.news-card.news-card--full{
	border: none;
    padding: 20px;
    position: relative;
}

.news-card.news-card--full::before{
	position: absolute;
	top: 0;
	left: 0;
	background: var(--section-color);
	width: 100%;
	content: "";
	height: 135px;
	z-index: 1;
}

.news-card__media img{
	max-width: 100%;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.news-fixed--single .news-card__media{
	aspect-ratio: 1200 / 399;
	line-height: 0;
	margin-bottom: 24px;
}

.news-card__media,.news-fixed--single .news-card__content{
	z-index: 2;
    position: relative;
}

.news-fixed__carousel .swiper-wrapper{
	align-items: stretch;
}

.news-card__content{
	padding: 0;
	margin: 0;
}

.news-fixed .news-card__content.no-media{
	background: #fff !important;
	padding: 23px 20px 20px 20px !important; 
}

.news-card__content.no-media .news-card__content__surtitre{
	background: #fff;
	color: var(--section-color);
	padding: 0;
}

.news-card__content__surtitre{
	width: max-content;
	background: var(--section-color);
	font-family: 'Acumin Pro Condensed';
	font-weight: 700;
	font-size: 15px;
	line-height: 1;
	letter-spacing: 0.1px;
    padding: 6px 7px 3px 5px;
	color: #fff;
	margin-bottom: 19px;
}

h3.news-card__content__title{
	font-weight: 700;
	font-size: 24px;
	line-height: 140%;
	letter-spacing: 0%;
	color: var(--section-color);
	    margin-bottom: 5px;
}

.news-card__content__description{
	color: #262721;
	font-family: 'Acumin Pro';
	font-weight: 400;
	font-size: 16px;
	line-height: 150%;
	letter-spacing: 0%;
	max-width: 800px;
}

.news-card__content__button{
	 margin-top: 24px !important;
	border: 2px solid var(--section-color);
	padding: 9px 38px 13px;
	color: var(--section-color);
	font-family: 'Acumin Pro', Arial, sans-serif;
	font-weight: 600;
	font-size: 16px;
	line-height: 1;
	text-align: center;
	text-transform: unset;
	min-height: 44px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	-webkit-appearance: none;
	appearance: none;
	box-sizing: border-box;
	vertical-align: middle;
/* 	padding-bottom: 0 !important;
  padding-top: 4px !important; */
}

@supports (-webkit-touch-callout: none) {
  .news-card__content__button, .text-link__button, .projects-quote .project-card-content__button {
    padding-top: 14px !important;
    padding-bottom: 12px !important;
	  
  }
}
@supports (hanging-punctuation: first) and (font: -apple-system-body) and (-webkit-appearance: none) {
  .news-card__content__button, .text-link__button, .projects-quote .project-card-content__button  {
    padding-top: 14px !important;
    padding-bottom: 12px !important;
	  
  }
}
/* macOS Safari only */
_::-webkit-full-page-media, _:future, :root .news-card__content__button {
 .news-card__content__button, .text-link__button, .projects-quote .project-card-content__button  {
    padding-top: 14px !important;
    padding-bottom: 12px !important;
	 
  }
}
@media screen and (-webkit-min-device-pixel-ratio: 0) and (min-resolution: 0.001dpcm) {
  .news-card__content__button, .text-link__button, .projects-quote .project-card-content__button  {
    padding-top: 14px !important;
    padding-bottom: 12px !important;
  }
}

.keypoints{
	background: #fff;
	padding-left: clamp(20px, 6.944vw, 100px);
    padding-right: clamp(20px, 6.944vw, 100px);
	padding-bottom: 0;
	margin-bottom: 172px;
	
}

.keypoints__title{
	padding: 0;
/* 	color: #262721; */
/* 	font-weight: 700; */
/* 	font-size: 24px; */
/* 	line-height: 1.4; */
	margin-bottom: 14px;
	background: inherit !important;
}

.keypoints__description{
	font-family: 'Acumin Pro';
	font-weight: 400;
	font-size: 16px;
	line-height: 150%;
	color: #262721;
	margin-bottom: 29px;

}

.keypoints__item-icon-img img{
	width: auto;
	max-width: 39px
}

.keypoints__item-number{
	color: #fff;
    font-family: 'Acumin Pro Condensed';
    font-weight: 600;
    font-size: clamp(44px, 4.167vw, 60px);
    line-height: 100%;
    letter-spacing: 0%;
    text-transform: uppercase;
    margin-bottom: 11px;

}

.keypoints__item-desc{
	color: #fff;
    font-weight: 400;
    font-size: 20px;
    line-height: 140%;
    letter-spacing: 0%;
}

.keypoints__item {
    background: var(--section-color);
    padding: 30px 30px 28px 30px;
}

.keypoints__list{
	gap: 21px;
}

.keypoints__item-icon::after{
	display: none;
}

.keypoints__item-icon{
	width: 100%;
    position: relative;
    height: max-content;
    border: none;
}

.keypoints__item-icon-img{
	position: relative;
    right: unset;
    top: unset;
	display: flex;
    justify-content: flex-end;
	margin-bottom: 22px;
}

.text-link{
	padding-left: clamp(20px, 6.944vw, 100px);
    padding-right: clamp(20px, 6.944vw, 100px);
	padding-bottom: 0;
	margin-bottom: 29px;
	padding-top: 4px;
}



.text-link__title, .news__title{
	padding: 0;
/* 	color: #262721; */
/* 	font-weight: 700; */
/* 	font-size: 24px; */
/* 	line-height: 140%; */
/* 	letter-spacing: 0%; */
	margin-bottom: 12px;
	background: inherit !important
}

.text-link__buttons{
	display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 15px;
}

.text-link .text-link__text, .news__text{
	max-width: 610px;
	font-family: 'Acumin Pro';
	font-weight: 400;
	font-size: 16px;
	line-height: 150%;
	letter-spacing: 0%;
}

.news__text{
	margin-bottom: 30px;
}

.news-fixed__header-text{
	margin-right: auto;
}


button.news-fixed__voir-tout{
	border: 2px solid var(--section-color);
	font-family: 'Acumin Pro';
	font-weight: 600;
	font-size: 16px;
	line-height: 100%;
	letter-spacing: 0;
	text-align: center;
	color: var(--section-color);
	padding: 9px 38px 13px 39px;
    margin-bottom: 20px;
	width: max-content;
    margin-left: auto;
}

.news-fixed__header{
	display: flex;
    justify-content: space-between;
	flex-direction: column;
    align-items: flex-end;
}

.text-link::before{
	display: none;
}

.text-link__button{
	border: 2px solid var(--section-color);
	padding: 9px 38px 13px;
    font-family: 'Acumin Pro';
    font-weight: 600;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: 0;
    text-align: center;
    color: var(--section-color);
    margin: 0;
    text-transform: unset;
}

.text-link__text {
	margin-bottom: 14px;
}


.news-fixed{
	padding-left: clamp(20px, 6.944vw, 100px);
    padding-right: clamp(20px, 6.944vw, 100px);
	padding-bottom: 0;
	margin-bottom: 170px;
	background: #fff !important;
}

.news__title{
	padding: 0;
/* 	font-weight: 700; */
/* 	font-size: 24px; */
/* 	line-height: 140%; */
/* 	letter-spacing: 0%; */
/* 	color: #262721; */
}

.news-fixed .news-card{
	border: none !important;
	padding: 20px;
    position: relative;
}

.news-fixed .news-card::before{
	position: absolute;
    top: 0;
    left: 0;
    background: var(--section-color);
    width: 100%;
    content: "";
    height: 135px;
    z-index: 1;
}

.news-fixed .news-card__content, .news-card__media{
	padding: 0 !important;
	position: relative;
	z-index: 2;
}

.news-fixed .news-card__content{
	margin: 0;
}

.news-card__media{
	    aspect-ratio: 360 / 230;
	line-height: 0;
	margin-bottom: 24px;
}

.news-card__media img, .news-card__media iframe, .news-card__media video{
	max-width: 100%;
	width: 100%;
	height: 100%;
	object-fit: cover;
	
}

.news-card__media{
  position:relative;
}

.news-card__media video{
  width:100%;
  display:block;
}

.video-play-btn{
     position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 23.7%;
    /* height: 37%; */
    border: none;
    cursor: pointer;
    border: 5px solid #FFFFFF80;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 1;
}

.video-play-btn svg{
  display:block;
}

.video-play-btn.is-playing svg{
  display:none;
}

.video-play-btn.is-playing::after{
  content:"❚❚";
  font-size:28px;
  color:#fff;
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
}

.news-fixed__arrows{
	    display: flex;
    justify-content: flex-end;
	    gap: 15px;
    margin-top: 21px;
}

.news-fixed__arrow {
	width: 45px;
	height: 45px;
	background: var(--section-color);
	opacity: 1;
	z-index: 13
}

.swiper-pagination.news-fixed__pagination {
	    display: flex;
    align-items: center;
    justify-content: center;
	gap: 15px;
	bottom: 20px;
}

.news-fixed__arrow.swiper-button-disabled{
	opacity: 0.5;
}

.news-fixed__pagination .swiper-pagination-bullet{
	margin: 0 !important;
	width: 45px;
	height: 4px;
	opacity: 0.5;
	background: var(--section-color);
	border-radius: 0 !important;
}

.news-fixed__pagination .swiper-pagination-bullet.swiper-pagination-bullet-active{
	opacity: 1;
}

.news__list{
	gap: 30px 20px !important;
}

.home .section-wrapper{
	margin-bottom: 0 !important;
	padding-bottom: 88px;
}
.footer__top{
	position: relative;
	background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
	padding: 80px clamp(20px, 6.944vw, 100px)
}

.footer__top-inner{
	position: relative;
	z-index: 2;
	display: flex;
    width: 100%;
    flex-wrap: wrap;
}

.footer__top::before{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	background-color: #546EA180;
	width: 100%;
	height: 100%;
	z-index: 1;
	width: 100%;
}

.footer__top__address .footer__top__address-title {
	font-weight: 700;
	font-size: 24px;
	line-height: 140%;
	letter-spacing: 0%;
	margin-bottom: 5px;
	color: #fff;
	text-transform: unset;
}

.footer__top__logo img{
	width: 190px;
}

.footer__top__address a{
	text-decoration: underline;
	font-weight: 600 !important;
}

.footer__top__address p:last-child, .footer__top__address a:last-child{
	margin-bottom: 0;
}
.footer__top__address,.footer__top__address p, .footer__top__address a{
	font-family: 'Acumin Pro';
	font-weight: 400;
	font-size: 16px;
	line-height: 150%;
	letter-spacing: 0%;
	margin-bottom: 7px;
	color: #fff;
}

.footer__top__buttons{
	flex-direction: column;
	    max-width: 340px;
	    margin: 0;
	gap: 43px;
}

.footer__top__address{
	margin: 0;
    padding-right: 20px;
    flex: 1;
	margin-top: 3px;
}

.footer__top__button{
	 width: 100%;
    text-align: center;
	color: #fff;
	font-family: 'Acumin Pro';
	font-weight: 600;
	font-size: 16px;
	line-height: 100%;
	letter-spacing: 0%;
	text-align: center;
	padding: 9px 38px 13px;
    border: 2px solid #FFFFFF;
    background: inherit;
    text-transform: unset;
}

.footer__bottom-socials img{
	width: auto;
	height: auto;
	max-width: 26px;
}

.footer__bottom-socials{
	gap: 14px;
	flex-wrap: wrap;
}

.footer__bottom-socials a{
	width: 45px;
    height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #FFFFFF;
}

.footer__top__logo{
	top: 0;
    width: 42.3%;
    padding-right: 20px;
}

.footer__top__right{
	width: 57.7%;
	display: flex;
    flex-wrap: wrap;
}

.footer__bottom{
	background: #112983;
	padding: 6px clamp(20px, 6.944vw, 100px) 4px; 
}

.footer__bottom-credits{
	font-family: 'Acumin Pro';
	font-weight: 400;
	color: #fff;
	font-size: 14px;
	line-height: 150%;
	letter-spacing: 0%;

}

.banner__button{
	background: #112983;
	width: 45px;
	height: 45px;
	display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 0 !important;
    right: 0 !important;
    bottom: 30px !important;
	top: unset !important;
	position: fixed !important;
	left: unset !important;
	transform: unset !important;
}

.page__home.back-button{
	background: #112983;
	width: 45px;
	height: 45px;
	display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 0 !important;
}

.page__home.back-button svg path{
	fill: #fff !important;
    stroke: #fff;
    stroke: none;
}

@media (max-width: 1024px){
	.projects-quote .project-card-img .project-card-img__inner{
		max-width: 100%;
	}
	.banner__bandeau-description, .features-links__item-description, .text-framed__description, .keypoints__item-text>div{
		font-size:18px;
	}
	
	.features-links__item{
		width: calc(50% - 10.5px);
	}
}

@media (max-width: 767px){
	.banner__bandeau-description, .features-links__item-description, .text-framed__description, .keypoints__item-text>div{
		font-size: 16px;
	}
	.banner__content-anchors{
/* 		display: none; */
	}
	
	.banner__content{
		padding: 0;
	}
	
	.banner__bandeau-rapport:after, .banner__bandeau-rapport:before, h2.text-framed__titre:after, h2.text-framed__titre:before{
		width: 40px;
	}
	
	.banner__bandeau-rapport{
		padding: 31px 30px 29px;
	}
	
	.banner__bandeau-rapport br{
		display: none;
	}
	
	.banner__bandeau{
		margin: 0 auto;
	}
	
	.banner{
		padding: 279px 20px 47px;
		min-height: 552px;
		margin-bottom: 121px !important;
	}
	
	.banner__bandeau-description{
		max-width: calc(100% - 80px);
	}
	
	.banner__bandeau-groupe{
		margin-bottom: 5px;
	}
	
	h2.text-framed__titre{
		width: 88%;
        max-width: 616px;
        margin: 0 auto;
	}
	
	.text-framed__surtitre{
		margin-bottom: 5px;
	}
	
	.project-card-content__icon svg{
		max-width: 19.67px;
	}
	
	.projects-quote .project-card-content{
		gap: 40px;
	}
	
	.projects-quote .project-card-img, .projects-quote .project-card-content{
		width: 100%;
		padding: 0;
		
	}
	
	.projects-quote .project-card-img .project-card-img__inner{
		width: 100%;
		max-width: 100%;
		aspect-ratio: 350 / 275;
	}
	
	.projects-quote .project-card-img .project-card-img__inner::after{
		right: 20px;
	}
	
	.projects-quote .project-card-content__button{
		padding: 9px 33px 13px 32px;
	}
	
	.projects-quote .project-card-content-excerpt{
		padding-top: 7px;
	}
	
	section#message{
		margin-bottom: 102px;
	}
	
	.projects.projects-quote{
		padding: 0 20px 121px;
	}
	
	.projects-quote .project-card__inner{
		gap: 40px
	}
	
	.text-framed__box{
		width: 100%;
	}
	
	.features-links__list{
		margin-top: 40px;
	}
	.text-framed__description{
		max-width: calc(88% - 80px);
	}
	
	.features-links__item{
		width: calc(50% - 5px);
		padding: 19px 20px 9px;
	}
	
	.features-links__item-icon-img img{
		max-width: 35px;
	}
	
	.features-links__item-icon{
		margin-bottom: 5px;
	}
	
	.features-links__item-number{
		margin-bottom: 2px;
	}
	
	.features-links__list{
		gap: 10px;
	}
	
	h3.news-card__content__title, .text-link__title{
		font-size: 22px;
	}
	
	.text-framed{
		margin-bottom: 40px
	}
	
	.news__text {
		margin-bottom: 40px;
	}
	
	.news-card__content__button{
		    padding: 9px 32px 13px;
	}
	
	.swiper-pagination.news-fixed__pagination{
		justify-content: flex-start;
		gap: 10px;
		bottom: 0;
		position: relative;
		width: auto;
		
	}
	
	.keypoints__description{
		margin-bottom: 39px
	}
	
	.news-fixed__grid-nav, .news-fixed__carousel-nav{
		margin-top: 14px;
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        gap: 20px;
		justify-content: space-between;
	}
	
	
	.news-fixed__pagination .swiper-pagination-bullet{
		width: 30px;
		height: 3px;
	}
	
	.news-fixed__arrows{
		margin-top: 0;
	}
	
	.news-card__media{
		aspect-ratio: 310 / 230;
	}
	
	button.news-fixed__voir-tout{
		padding: 9px 32px 13px 33px;
		margin-bottom: 16px;
	}
	
	.news-fixed{
		padding: 0 20px !important;
		margin-bottom: 121px !important;
	}
	
	.keypoints{
		padding: 0 20px !important;
		margin-bottom: 121px !important;
	}
	
	.text-link{
		padding: 0 20px !important;
		
	}
	
	.news-fixed--single.news-fixed{
		margin-bottom: 40px !important;
	}
	
	.news-fixed__carousel.swiper {
		overflow: visible
	}
	
	.home .section-wrapper{
		padding-bottom: 75px;
	}
	
	.text-link__buttons{
		gap: 9px;
	}
	
	.text-link__button{
		padding: 9px 32px 13px;
		margin: 0 !important
	}
	
	.text-link__text {
		margin-bottom: 16px;
	}
	
	.news-fixed--single .news-card__media{
		 aspect-ratio: 310 / 230;
	}
	
	.keypoints__item {
		width: calc(50% - 5px);
		padding: 20px 20px 9px;
	}
	
	.keypoints__item-icon-img{
		margin-bottom: 9px;
	}
	.keypoints__item-icon-img img{
		max-width: 34px;
		height: 34px;
		width: 34px
	}
	
	.keypoints__list{
		gap: 10px;
		display: flex;
    	flex-wrap: wrap;
	}
	
	.keypoints__item-number{
		margin-bottom: 2px;
	}
	
	.footer__top__logo, .footer__top__right{
		width: 100%;
		padding: 0;
	}
	
	.footer__bottom{
		padding-left: 20px;
		padding-right: 20px
	}
	
	.footer__top__buttons{
		gap: 31px;
	}
	
	.footer__top__buttons{
		width: 100%;
		max-width: 100%;
	}
	
	.footer__top__right{
		gap: 17px
	}
	
	.footer__top__logo{
		    margin-bottom: 24px;
	}
	
	.footer__top{
		padding: 80px 20px !important;
	}
}

@media (min-width: 768px) {
  .news-fixed__grid-swiper {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
  }

  .news-fixed__grid-swiper .swiper-wrapper {
    display: contents;
  }
	
	.news-fixed__grid-nav{
		display: none;
	}
	
	.header__menu-anchor-btn{
		display: none;
	}
}

@media (max-width: 1024px){
	.news-fixed__grid-swiper{
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 767px) {
  .news-fixed__grid-swiper {
    display: block;
	overflow: visible;
  }
	
	.news.news-fixed {
		overflow: hidden;
	}
	.header__menu-anchor-btn {
	  position: fixed;
	  top: 45px;
	  right: 20px;
	  z-index: 101;
	  background: #112983;
	  color: #fff;
	  border: none;
	  padding: 11px 10px;
	  cursor: pointer;
		font-weight: 400;
		font-size: 14px;
		line-height: 120%;
		letter-spacing: 0%;

	}
	
	.banner__content-anchors {
		position: fixed;
		right: 20px !important;
		left: unset !important;
		top: 85px;
		z-index: 100;
		list-style: none;
		padding: 0;
		margin: 0;
		width: max-content;
		background: inherit;
		display: flex;
		flex-direction: column;
		align-items: flex-end;
	}

	.banner__content-anchors[data-state="0"] .banner__content-anchors-item {
	  display: none !important;
	}
	
	.banner__content-anchors .banner__content-anchors-item.is-active {
		margin: 0 !important;
	}
	
	.banner__content-anchors-item.is-active a, .banner__content-anchors-item.is-active {
		width: auto;
		min-height: unset;
	}

	.banner__content-anchors[data-state="1"] .banner__content-anchors-item {
	  display: none !important;
	}
	.banner__content-anchors[data-state="1"] .banner__content-anchors-item.is-active {
	  display: block !important;
	}

	.banner__content-anchors[data-state="2"] .banner__content-anchors-item {
	  display: block !important;
	}
	
	.banner__content-anchors:hover li a {
		min-height: unset;
	}
	
	.banner__content-anchors:hover .banner__content-anchors-item{
		width: max-content;
	}
	
	.banner__content-anchors .anchor-label {
		max-width: max-content !important;
		opacity: 1 !important;
		padding: 10px !important;
		line-height: 1.2 !important;
	}
	
	.banner__content-anchors:hover .anchor-label {
		ax-width: max-content !important;
		opacity: 1 !important;
		padding: 10px !important;
		line-height: 1.2 !important;
	}
	
	.header__menu-anchor-btn {
	  -webkit-tap-highlight-color: transparent;
	  touch-action: manipulation;
	  cursor: pointer;
	}
}