 
/*--------------------------------------------------
# Fonts
--------------------------------------------------*/
@font-face {
    font-family: 'Space Grotesk';
    src: url('../fonts/SpaceGrotesk-Bold.woff2') format('woff2'),
        url('../fonts/SpaceGrotesk-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Space Grotesk';
    src: url('../fonts/SpaceGrotesk-Regular.woff2') format('woff2'),
        url('../fonts/SpaceGrotesk-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Space Grotesk';
    src: url('../fonts/SpaceGrotesk-Medium.woff2') format('woff2'),
        url('../fonts/SpaceGrotesk-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Space Grotesk';
    src: url('../fonts/SpaceGrotesk-Light.woff2') format('woff2'),
        url('../fonts/SpaceGrotesk-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Space Grotesk';
    src: url('../fonts/SpaceGrotesk-SemiBold.woff2') format('woff2'),
        url('../fonts/SpaceGrotesk-SemiBold.woff') format('woff');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}



/*--------------------------------------------------
# General
--------------------------------------------------*/
:root{
    --bs-body-color: #484848;
    --bs-body-bg: #ffffff;
    --primary-bg: #F7F7F7;
    --bs-primary-color: #2A292E;
    --bs-secondary-bg: #82A8DE;
    --dark-color: #000;
    --light-color: #fff;
    --border-color: #2A292E;
    --border2-color: #CFCFCF;
    --bs-btn-padding-x: 20px;
    --bs-btn-padding-y: 10px;
    --bs-nav-link-color: #fff;
    --bs-body-font-family: 'Space Grotesk';
    --bs-titles-font-family: 'Space Grotesk';
--bs-body-font-weight:400;
--bs-body-line-height:24px;
--bs-body-font-size:16px;
--bs-nav-link-font-size:1em;
--bs-nav-link-font-weight:600;
--bs-nav-link-padding-y:10px;
--bs-nav-link-padding-x:0;
--bs-navbar-nav-link-padding-x:0;
--bs-dropdown-zindex:99;
--bs-dropdown-min-width:200px;
--bs-dropdown-padding-x:20px;
--bs-dropdown-padding-y:15px;
--bs-dropdown-font-size:1em;
--bs-dropdown-padding-y:5px;
--bs-dropdown-font-size:1em;
--bs-border-radius:50px!important;
}
 html { scroll-behavior: smooth; }

.btn-primary {
	--bs-btn-color: #fff;
	--bs-btn-bg: #82A8DE;
	--bs-btn-hover-color: #fff;
	--bs-btn-hover-bg: #2A292E;
	--bs-btn-focus-shadow-rgb: 49,132,253;
	--bs-btn-active-color: #fff;
	--bs-btn-active-bg: #2A292E;
	--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
	--bs-btn-disabled-color: #fff;
	--bs-btn-disabled-bg: #2A292E;
	--bs-btn-disabled-border-color: #000;
	border-radius: 0;
	border: none;
}
.box-light, .box-border-left, .box-border-right {
	padding: 20px 15px;
	margin: 0 0 20px;
	background: none;
      border-radius: 30px;
    border: 2px solid var(--bs-secondary-bg);
}
.box-border-left {
    border-left: 7px solid var(--bs-primary-color);
}
.box-border-right {
    border-right: 7px solid var(--bs-primary-color);
}
.box-dark {
	padding: 20px;
	margin: 0 0 20px;
      border-radius: 10px;
    color: var(--bs-body-bg);
	background: var(--bs-primary-color);
}
.box-dark a {
    color: var(--bs-body-bg) !important;
}
.box-dark h1, .box-dark h2, .box-dark h3, .box-dark h4, .box-dark h6, .box-dark .h1, .box-dark .h2, .box-dark .h3, .box-dark .h4, .box-dark .h6 {
	color: var(--bs-body-bg);
}
.container {
	max-width: 1170px;
} 
.btn-cookies-pos {
	z-index: 99;
}
.modal-header .nav-link {
	color: var(--bs-body-color) !important;
}

html, body {
  height: auto !important;
  min-height: 100%;
  overflow: visible !important;
  scroll-behavior: auto !important; /* désactive le smooth natif pour laisser Lenis gérer */
}
.logo img, .footer-logo img{ 
   max-width: 100%;
}



.networks_linking a {
    font-size: 18px;
    color: var(--light-color)!important;
  width: 40px;
height: 40px;
    line-height: 40px;
    vertical-align: top;
    display: inline-block;
    margin: 0 5px ;
    text-align: center;
    position: relative; 
border-radius: 2px;
   background: var(--bs-primary-color);
}

.networks_linking a:hover{
	transition: 0.3s all;
	background: var(--bs-secondary-bg)!important;
}
.fa-facebook::before {
    content: "\f39e" !important;
} 
.fa-linkedin::before {
    content: "\f0e1" !important;
} 
.networks_linking { 
    display: flex;
}
.networks_linking a.networks.networks_google {
    order: 2;
}

.flottant {
    z-index: 99;
    top: 30% !important;
}
.flottant a.networks {
    display: block;
    margin: 0 0 10px;
 width: 50px;
height: 50px;
    line-height: 50px;
  border-radius: 3px 0 0 3px;
   color: var(--bs-primary-color)!important;
  background: var(--light-color);
      box-shadow: 0 0 3px rgba(0 0 0 / 20%);
}
.flottant a.networks:hover {
   color: var(--light-color)!important;
  background: var(--bs-secondary-bg)!important ;
}
.flottant .networks_linking {
    flex-direction: column;
}


/*--------------------------------------------------
# banner
--------------------------------------------------*/
 
.header-section {
    background: var(--bs-body-bg);
}
.topbar-phone {
    display: flex;
    align-items: center;
    gap: 10px;
   justify-content: center;
}
.topbar-phone-img {
    width: 16px;
    height: 16px;
}
.topbar-phone a { 
    font-size: 16px;
    color: var(--light-color);
    font-weight: 700;
    padding: 19px 32px;
    line-height: normal;
    border-radius: 10px;
background: var(--bs-secondary-bg);
      animation: flicker-shadow1 0.5s infinite alternate;
}
.topbar-phone a:hover {
    color: var(--light-color);
background: var(--bs-primary-color);
}
 @keyframes flicker-shadow1 {
  
0% {
    text-shadow: 0 0 5px rgba(255 255 255 / 50%);
}
50% {
    text-shadow: 0 0 12px rgb(255 255 255 / 100%);
}
100% {
    text-shadow: 0 0 5px rgba(255 255 255 / 50%);
}
}
 .header-section a.readmore {
    margin: 0;
       background: var(--bs-primary-color);
}
 .header-section a.readmore:hover { 
       background:var(--bs-secondary-bg);
}

 nav.language {  
    z-index: 1;
    position: relative;
    display: block;
    line-height: 15px;
         padding: 0 5px;
         text-align: center; 
   padding-top: 25px;
       margin-right: 15px;
}
 nav.language:before {
    content: "";
    position: absolute; 
    right: -12px; 
    top: 8px;
    background: url(../images/angle-down.webp) no-repeat right top;
       width: 12px;
    height: 8px;
}
nav.language:hover {
    background: var(--light-color);
}
nav.language a {
    margin: 0;
    opacity: 0;
}
nav.language a.selected, nav.language:hover a {
    opacity: 1;
}
  nav.language a.selected{
           position:absolute;
           top:0;
           left: 6px;
         }
nav.language a span#lang-fr, nav.language a span#lang-en, nav.language a span#lang-es, nav.language a span#lang-it {
    display: block;
    background: none!important;
    font-size: 15px;
    color: var(--bs-body-color);
        text-indent: inherit;
    width: auto;
    height: auto;
    text-transform: uppercase;
    padding: 5px 0;
} 
nav.language a span#lang-fr { 
    width: 34px;
    height: 23px;
    background: url(../images/flag-france.webp) no-repeat 0 0 !important;
    font-size: 0;
}
nav.language a span#lang-es { 
  width: 34px;
    height: 23px;
    background: url(../images/flag-spain.webp) no-repeat 0 0 !important;
    font-size: 0;
}

/*--------------------------------------------------
# banner
--------------------------------------------------*/

.banner-text {
    margin-top: 30px;
    text-align: center;
      z-index: 999;
}
.banner-text .container-fluid {
    max-width: 1330px;
}
header nav.navbar {
    padding: 23px 35px;
border-radius: 3px;
background: rgba(130, 168, 222, 0.70);
backdrop-filter: blur(10px);
}
header nav.navbar.sticky-top:not(.is-sticky):before {
    content: "";
    position: absolute;
    bottom: -13px;
    right: 0;
    left: -20px;
    top: 0;
    background: url(../images/befor-nav.webp) no-repeat left bottom ;
    pointer-events: none;
}
header nav.navbar.sticky-top:not(.is-sticky):after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 11px;
    left: 0;
    top: -13px;
    background: url(../images/after-nav.webp) no-repeat right top ;
    pointer-events: none;
}
 .logo img {
    max-width: 100%;
}
 .navbar-nav .nav-link {
       position: relative;
	font-family: var(--bs-body-font-family);
	font-size: 15px;
    text-transform: uppercase;
    font-weight: 600;
	 color: var(--light-color);
	padding: 0 45px!important;
	transition: color 0.3s ease;
}
header li:not(:first-child) a.nav-link::before {
   content: ""; 
  position: absolute;
    left: 0;
    transform: translate(-50%);
    top: 50%;
  width: 5px;
  height: 5px;
border-radius: 1px;
  background: var(--light-color);
  transition: all .4s;
} 
 .navbar-nav .nav-item.selected>.nav-link,
 .navbar-nav .nav-item> .nav-link:hover {
   color: black!important;
} 
 .navbar-nav .dropdown .nav-item.selected>.nav-link,
 .navbar-nav .dropdown .nav-item> .nav-link:hover {
   color: var(--bs-secondary-bg)!important;
} 
header nav.navbar.sticky-top .level-0>li:first-child>a.nav-link {
    color: transparent;
    font-size: 0;
     background: url(../images/Accueil.webp) no-repeat center center; 
  width: 107px;
    display: inline-block;    vertical-align: top;
}
header nav.navbar.sticky-top .level-0>li:first-child:hover>a.nav-link,
header nav.navbar.sticky-top .level-0>li.selected:first-child>a.nav-link{
   background: url(../images/Accueilh.webp) no-repeat center center; 
}
/*header nav.navbar.sticky-top .level-0>li:last-child>a.nav-link {
     padding-right: 0 !important; 
}*/
 .navbar-toggler {
	position: relative;
	border: none;
	padding: 0;
	box-shadow: none !important;
}
  .navbar-nav {
     margin: 0 auto ;
}
button.navbar-toggler:before {
	top: 0;
	transform: rotate(-32deg);
	transform-origin: right;
}
button.navbar-toggler:after {
	bottom: 0;
	transform: rotate(32deg);
	transform-origin: right;
}
button.navbar-toggler:after, button.navbar-toggler:before {
	content: '';
	width: 1.5em;
	background:var(--light-color);
	position: absolute;
	left: 0;
	height: 2px;
	transition: .3s;
}
button.navbar-toggler .navbar-toggler-icon {
	display: block;
	height: 2px;
	background-image: none;
	background-color: var(--light-color);
	transition: .1s;
	opacity: 1;
	margin: 8px 0;
}
.navbar-nav .dropdown-toggle:after {
    margin: -3px auto 0 !important;
    display: table;
    content: "\f107";
 /*   font-family: "Font Awesome 7 pro" !important;*/
   font-family: "Font Awesome 6 Pro" !important;
    border: none;
    font-weight: 900;
    color: var(--light-color);
    font-size: 11px;
}
.navbar-nav .nav-item:hover .dropdown-toggle:after {
	content: "\f106";
}
.dropdown-menu {
    background: var(--light-color);
    border: none;
    border-radius: 10px;
      left: 50%!important;
    transform: translate(-50%);
    min-width: 200px;
  box-shadow: 0 0 5px rgba(0 0 0 / 30%);
}
.dropdown-toggle {
    white-space: nowrap;
    position: absolute;
    right: 22px;
    top: 4px; 
}
/*header nav.navbar.sticky-top .level-0 li:first-child .dropdown-toggle {
    right: 50px;
}*/
.navbar-nav .dropdown-menu .nav-item .nav-link {
    padding: 3px 15px !important;
    text-align: center;
    text-transform: uppercase;
    font-size: 14px;
    font-weight:500;
   color: var(--bs-primary-color);
}  
.navbar-nav .dropdown-menu .nav-item .nav-link:before {
  display: none;
}
 .navbar.is-sticky {
	position: fixed;
	top: 0;
      left: 0;
	width: 100%; 
	border-bottom: 1px solid var(--bs-primary-color);
	padding: 15px 0 !important;
	z-index: 1030;
}
 .navbar.is-sticky .navbar-brand {
	display: none;
}
.navbar.is-sticky {
  z-index: 1030!important;
}
/* --- */
 
/* Banner Section */
section.banner {
height: 800px;
}

section.banner.small {
   height: auto !important;
}

section.banner.small .banner-text {

    position: relative !important;
}

section.banner .carousel, section.banner .carousel-inner, section.banner .carousel-inner img, section.banner .carousel-item {
	height: 100%;
  object-fit: cover;
	
}
section.banner .carousel-control-next, section.banner .carousel-control-prev {
	display: none;
}



.readmore {
    padding: 20px 32px; 
    line-height: normal;
    color:var(--light-color)!important;
  text-transform: uppercase;
    text-align: left;
    background: var(--bs-secondary-bg);
    font-family: var(--bs-body-font-family);
    font-size: 15px; 
   border-radius: 10px;
    font-weight: 500;
    border: none;
   position: relative;
      display: inline-block;
    text-decoration: none;
    overflow: hidden;
 transition: all 0.5s;
  -webkit-transition: all 0.5s;
      margin-top: 40px;
  animation: flicker-shadow 0.5s infinite alternate; 
}
 .readmore:after {
  content:"";
      width: 18px;
    height: 9px;
    display: inline-block;
    margin-left: 8px;
 background: url(../images/flch.webp) no-repeat center ; 
}
.readmore:hover{ 
    background: var(--bs-primary-color);
} 
@keyframes flicker-shadow {
  0% {
    box-shadow: 0 0 10px rgba(130 168 222/50%);
  }
  50% {
    box-shadow: 0 0 20px rgb(130 168 222 / 67%); /* Brighter/different shadow */
  }
  100% {
    box-shadow: 0 0 10px rgba(130 168 222/50%);
  }
}
/*--------------------------------------------------
# content home
--------------------------------------------------*/
a {
    color: var(--bs-secondary-bg);
    text-decoration: underline;
    transition: all .4s;
}
a:active, a:hover, a:focus {
    color: var(--bs-secondary-bg);
    text-decoration: none;
}
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
	position: relative;
	font-family: var(--bs-titles-font-family);
	line-height: 1.2em;
	font-weight: 600;
	color: var(--bs-primary-color);
	margin: 0 0 15px;
  text-transform: none; 
}
h1, .h1 {
    font-size: 60px; 
}
h2, .h2 {
    font-size: 50px; 
}
h3, .h3 {
    font-size: 28px;
}
h4, .h4 {
    font-size: 26px;
}
h5, .h5 {
    font-size: 24px;
}
h6, .h6 {
    font-size: 22px;
}
img.fr-dii {
	max-width: inherit !important;
	margin: 0 !important;
}
a#event {
    pointer-events: none !important;
}
/* --- content home --- */

section.home-content.content-home { 
	padding: 120px 0; 
  text-align-last: center;
}
section.home-content .content-bg {
   background: url(../images/map.webp) no-repeat center top; 
    height: 586px;
    position: absolute;
    right: 0;
    top: 69px;
    left: 0;
    margin: auto;opacity: 0.75;
}
section.home-content.content-home h1 { 
	margin-bottom: 48px; 
}
section.home-content .content-gras {
    text-align: center;
    font-family: "Space Grotesk";
    font-size: 250px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    letter-spacing: 50px;
    text-transform: uppercase;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: -1;
    opacity: 0.2;
    background: linear-gradient(180deg, #5B5858 0%, rgba(132, 131, 131, 0.00) 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}




/*--------------------------------------------------
# boxs
--------------------------------------------------*/	
section.boxs {
	position: relative;
	padding: 120px 0; 
	z-index: 1;
  background: var(--primary-bg);
}  
section.boxs:after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 134px;
    left: 0;
    top: -51px;
    background: url(../images/Frame.webp) no-repeat right top ;
    pointer-events: none;
}
section.boxs h2 {
    text-align: center;
    margin-bottom: 40px;
}
section.boxs article:before {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    left: -83px;
  top: -70px;
    background: url(../images/befor-box.webp) no-repeat left top ;
    pointer-events: none;
}
section.boxs .swiper-container{
	overflow: hidden;
	margin: 0 ;
}
section.boxs .swiper-slide{
   height: auto !important;
}
section.boxs .swiper-slide .bx-home  {
    max-width: 364px;
  margin: auto ;
}
section.boxs .swiper-slide .bx-home:hover{
   color: var(--light-color);   
} 
section.boxs .swiper-slide .bx-home .img-box{
height: 240px;
}
section.boxs .swiper-slide .bx-home .img-box img {
   border-radius: 30px 30px 0 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
section.boxs .swiper-slide .bx-home .txt-box {
transition: all .4s;
    padding: 20px 24px;
 background: var(--light-color);
  border-radius: 0 0 30px 30px;
}
section.boxs .swiper-slide .bx-home:hover .txt-box {
 background: var(--bs-secondary-bg);
}
section.boxs .swiper-slide .bx-home .txt-box h3 {
	   margin:  0 0 10px; 
  font-size: 25px;
}
section.boxs .swiper-slide .bx-home:hover .txt-box h3 {
	  color: var(--light-color);
}
section.boxs .swiper-slide .bx-home .txt-box h4 {
    font-size: 70px;
  opacity: 0.2;
   color: var(--bs-secondary-bg);
       line-height: normal;
    margin-bottom: 20px;
  display:none
}
section.boxs .swiper-slide .bx-home:hover .txt-box h4 {
 color: var(--bs-primary-color);
  opacity: 1;
}
section.boxs .swiper-slide .bx-home .txt-box h4 strong {
   background: var(--light-color);
    padding-right: 23px;
  position: relative;transition: all .4s;
}
section.boxs .swiper-slide .bx-home:hover .txt-box h4 strong {
   background: var(--bs-secondary-bg); 
}
section.boxs .swiper-slide .bx-home .txt-box h4:before {
    content: "";
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    height: 1px;
    background: var(--border2-color);
    left: 0;
    right: 0;
}
section.boxs .swiper-slide .bx-home .txt-box .readmore1 {
    position: relative;
    text-transform: uppercase;
    font-size: 15px;
    font-weight: 600;
    display: block;
}
section.boxs .swiper-slide .bx-home .txt-box .readmore1:before {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 38px;
    height: 38px;
  border-radius: 2px;
    background: var(--bs-secondary-bg) url(../images/flch.webp) no-repeat center;
}
section.boxs .swiper-slide .bx-home:hover .txt-box .readmore1:before {
    background: var(--bs-primary-color) url(../images/flch.webp) no-repeat center;
}

.link {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 3;
    opacity: 0;
}
section.boxs .swiper-pagination{
display: table;
  bottom:-50px;
  width: auto;
  margin: auto;
  right: 0;
}
section.boxs .swiper-pagination-bullet {
    width: 12px;
    height: 12px;
    background: none;
   border: 2px solid  var(--bs-primary-color);
  opacity: 1;
}
section.boxs .swiper-pagination-bullet-active{
    width: 12px;
    height: 12px;
    background: var(--bs-primary-color);
}




section.content.bx-home {
    padding: 120px 0;
}

section.content.bx-home h2 { 
	margin-bottom: 48px; 
}
section.content.bx-home .content-flex {
    display: flex;
} 
section.content.bx-home .content-img {
    position: relative;
    width: 50%; 
}
section.content.bx-home:not(.third) .content-img:before {
    content: "";
    position: absolute;
    bottom: 0; 
    left: -20px; 
    width: 146px;
    height: 346px;
    background:  var(--bs-secondary-bg) ;
    pointer-events: none; 
border-radius: 30px 0 0 30px;
  
}
section.content.bx-home .content-flex.flex2 .content-img {
    order: 2;
}
section.content.bx-home .content-img img {
    width: 100%;
    height: 100%;
    object-fit: cover; 
    border-radius: 30px;
      position: absolute;  
}  
section.content.bx-home .content-txt {
    width: 50%;
  padding: 42px 0;
}
section.content.bx-home .content-flex.flex2 .content-txt {
    margin-right: 35px;
}
section.content.bx-home .content-flex.flex1 .content-txt {
    margin-left: 35px;
}

 section.content p, section.content ul {
    text-align: justify;
}

section.content.first, section.content.third{
   background: var(--bs-primary-color); 
}

section.content.first h2, section.content.third h2, section.content.first a, section.content.third a { 
     color: var(--light-color);
} 
section.content.first:before, section.content.third:before {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    left: 0;
    top: 0;
    background: url(../images/befor-first.webp) no-repeat left top ;
    pointer-events: none;
}
section.content.second:before {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
 left: 125px;
    top: 120px;
    background: url(../images/befor-box.webp) no-repeat center top ;
    pointer-events: none;
}
section.content.second:after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 173px;
 left: 0;
    top: 225px;
    background: url(../images/after-second.webp) no-repeat right top ;
    pointer-events: none;
  z-index: -1;
}
section.content.first article:before {
    content: "";
    position: absolute;
    top: 0;
     right: 0;
    left: 0;
    bottom: -120px;
    background: url(../images/befor-second.webp) no-repeat left bottom ;
    pointer-events: none;
}
section.content.first article:after {
    content: "";
    position: absolute;
    bottom: 0;
     right: 0;
    left: 0;
    top: -120px;
    background: url(../images/after-box.webp) no-repeat right top ;
    pointer-events: none;
}
section.content.third article:before {
    content: "";
    position: absolute;
    top: 0;
     right: 0;
    left: 0;
    bottom: -43px;
    background: url(../images/icon-image.webp) no-repeat center bottom;
    pointer-events: none;
    z-index: 1;
}

/*------------------------------------------
	# marques 
-------------------------------------------*/
section.boxs1 {
    padding:0;
    background: var(--light-color);
   z-index: 1; 
} 
section.boxs1 h2 {
	   margin:  0 0 102px; 
  color:  var(--light-color)
} 
section.boxs1 .container-fluid {
    padding: 0;
}
section.boxs1 .bx-flx {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
section.boxs1 .bx-flx .bx-home {
  position: relative;
transition: all .4s;
  background: var(--bs-secondary-bg); 
  display: flex;
    align-items: center;
    justify-content: center;
    width: 33.333%;
}
section.boxs1 .bx-flx .bx-home.b3 { 
  background: var(--bs-primary-color); 
}
section.boxs1 .bx-flx .bx-home h3 {
	   margin: 0; 
  color:  var(--light-color);
      font-size: 25px;
      padding: 0 10px;
}
section.boxs1 .bx-flx .bx-home .img-box {
    height: 294px;
      width: 100%;
}
section.boxs1 .bx-flx .bx-home .img-box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
section.boxs1 .bx-flx .bx-home.b3:before {
    content: "";
    position: absolute;
    top: 0;
     right: -31px;
    left: 0;
    bottom: -28px;
    background: url(../images/after-second.webp) no-repeat right bottom;
    pointer-events: none;
    z-index: 1;
}

/*--------------------------------------------------
# modules
--------------------------------------------------*/
section.modules {
    padding: 120px 0 178px;
    background: var(--bs-primary-color);
}
section.modules:before {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    left: 0;
    top: 0;
    background: url(../images/befor-first.webp) no-repeat right bottom ;
    pointer-events: none;
}
section.modules .content-gras {
  position: absolute;
    top: 36px;
    left: 0;
    right: 0;
    text-align: center;
  font-size: 200px;
font-style: normal;
font-weight: 600;
line-height: normal;
letter-spacing: 40px;
text-transform: uppercase;
  opacity: 0.2;
background: linear-gradient(180deg, #5B5858 0%, rgba(132, 131, 131, 0.00) 100%);
background-clip: text;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
section.modules h2 {
margin-bottom: 40px; 
   color:var(--bs-secondary-bg); 
      text-align: center;
}
section.modules .swiper-container{
	overflow: hidden;
    margin:  0;
}
section.modules .swiper-button-prev::after, section.modules .swiper-button-next::after {
    font-size: 0px;
    display: block;
    width: 31px !important;
    height: 22px !important;
    line-height: 22px;
}
section.modules .swiper-button-prev::after {
    background : url(../images/slik1.webp)no-repeat center;
}
section.modules .swiper-button-next::after {
    background : url(../images/slik2.webp)no-repeat center;
}
section.modules .swiper-button-prev, section.modules .swiper-button-next {
    position: absolute;
    left: 50%;
    bottom: 60px;
    top: inherit;
    transform: translate(-50%);
    right: inherit;
    margin: 0px;
    display: inline-block;
    width: 31px;
    height: 22px;
}
section.modules .swiper-button-prev {
    margin-left: -100px;
}
section.modules .swiper-button-next {
    margin-left: -46px;
}
section.modules .swiper-button-prev:hover, section.modules .swiper-button-next:hover {
    opacity : 0.7;
}


section.modules .swiper-pagination{
display: table;
  bottom:-110px;
  width: auto;
  margin: auto;
  right: 0;
      z-index: 1;
}
section.modules .swiper-pagination-bullet {
   width: 12px;
height: 12px;
    background:none;
    border: 1px solid var(--light-color); 
    opacity: 1; 
}
section.modules .swiper-pagination-bullet-active{
  width: 12px;
height: 12px;
    background: var(--bs-secondary-bg); 
    border: 1px solid var(--bs-secondary-bg); 
}

 

section.modules .news-object.Item {
}
section.modules .news-col .Item {
    position: relative
}
section.modules .news-col .Item .nophoto, section.modules .news-col .Item .photo {
       width: 100%;
    float: none;
    height: 240px;
    position: relative;
    display: block;
      margin-bottom: 30px;
} 
section.modules .news-col .Item .photo img,section.modules .news-col .Item .nophoto img {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 1;
    object-fit: cover;
    height: 100%;
    width: 100%;
    display: block;
  border-radius: 30px;
}
section.modules .news-col .Item .nophoto img {
    object-fit: scale-down !important;
    background: var(--light-color);
    padding: 10px;
}
section.modules .news-col .Item .nophoto i.fa-duotone.fa-image {
    display: none;
}
section.modules .news-col .Item .news-desc {
      position: relative; 
}
section.modules .news-col .Item h3 {
    margin: 0 0 6px;
      text-transform: none;
     font-size: 25px;
    font-weight: 600;
    color: var(--light-color);
    font-family: var(--bs-body-font-family);
}
section.modules .news-col .Item h3 span {
    float: none;
}
section.modules .news-col .Item .date {
    position: relative;
  font-size: 16px;
    font-weight: 700;
      color: var(--bs-secondary-bg);
      font-family: var(--bs-body-font-family);
      /*padding-left: 10px;
    margin-left: 10px;*/
    display: block;
}
/*section.modules .news-col .Item .date:before {
    content: "-";
    position: absolute;
    left: 0;
    font-size: 19px;
}*/

section.modules .news-col .Item span.news-abstract{
   position: relative;
      display: inline-block;
}
section.modules .news-col .Item .news-desc .read-more{
    margin: 20px 0px 0 ;
      position: relative;
}
section.modules .news-col .Item .news-desc .read-more a {
    line-height: 38px;
    transition: background .4s, box-shadow .4s;
    padding: 0;
    background: none; 
      color: var(--light-color);
      position: relative;
    text-transform: uppercase;
    display:  block;
  font-size: 15px;
 font-weight: 500;
    text-align: left;
    display: flex;
    align-items: center;
}
section.modules .news-col .Item .news-desc .read-more a:before{
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 38px;
    height: 38px;
  border-radius: 2px;
    background: #F3FAFE url(../images/flch2.webp) no-repeat center;
}
section.modules .news-col:hover .Item .news-desc .read-more a:before {
    background: var(--bs-secondary-bg) url(../images/flch.webp) no-repeat center;
} 
section.modules .news-col .Item .news-desc .read-more a:hover {
	    transition: 0.3s all; 
}


/* - news - */

 
section.content div#AllNews {
    grid-gap: 20px 0;
}
section.content .news-col .news-object .nophoto, section.content .news-col .news-object .photo {
     width: 100%;
    float: none;
    height: 240px;
    position: relative;
    display: block;
      margin-bottom: 30px;
      border: 1px solid;
  border-radius: 30px;
} 
section.content .news-col .news-object .photo img,section.content .news-col .news-object .nophoto img {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 1;
      object-fit: scale-down;
    padding: 10px;
    height: 100%;
    width: 100%;
  border-radius: 30px;
    display: block
}
section.content .news-col .news-object .nophoto img {
    object-fit: scale-down !important;
    background: var(--bs-body-bg);
    padding: 10px;
}
section.content .news-col .news-object .nophoto i.fa-duotone.fa-image {
    display: none;
}
section.content .news-col .news-object .news-desc {
      position: relative;  
}
section.content .news-col .Item span.news-abstract{
   position: relative;
      display: inline-block;
}
section.content .news-col .news-object h3 {
   margin: 0 0 6px;
      text-transform: none;
     font-size: 20px;
    font-weight: 600; 
    font-family: var(--bs-body-font-family);
}
section.content .news-col .news-object .date {
  position: relative;
  font-size: 16px;
    font-weight: 700;
      color: var(--bs-secondary-bg);
      font-family: var(--bs-body-font-family);
}
section.content .news-col .news-object .news-desc .read-more{
    margin: 20px 0px 0 ;
      position: relative;
}
section.content .news-col .Item .news-desc .read-more a {
    line-height: 38px;
    transition: background .4s, box-shadow .4s;
    padding: 0;
    background: none;
    color: var(--bs-body-color);
    position: relative;
    text-transform: uppercase;
    display: block;
    font-size: 15px;
    font-weight: 500;
    text-align: left;
    display: inline-flex;
    align-items: center;
    padding-right: 60px;
}
section.content .news-col .news-object .news-desc .read-more a:before {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 38px;
    height: 38px;
  border-radius: 2px;
    background:  var(--bs-primary-color) url(../images/flch.webp) no-repeat center;
}
section.content .news-col .Item .news-desc .read-more a:hover:before {
    background: var(--bs-secondary-bg) url(../images/flch.webp) no-repeat center;
} 
.backbtn:hover  {
    color: var(--bs-primary-color)!important;
}
.col-12.col-md-9.news-article-share-col {
    display: none;
}
img.zoomable-image.img-news , img.img-responsive.img-news{
    max-width: 250px!important;
}


/*------------------------------------------
	# parallax 
-------------------------------------------*/
section.parallax {
    padding: 150px 0 ; 
   z-index: 1;
background:   url(../images/bg-parallax.webp)no-repeat center fixed; 
  background-size:cover;
}
section.parallax:before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: #0E1112;
    z-index: -1;
    opacity: .5;
}
section.parallax:after {
    content: "";
    position: absolute;
    bottom: -57px;
    right: 0;
    left: 86px;
    top: 0;
    background: url(../images/befor-parallax.webp) no-repeat left bottom ;
    pointer-events: none;
}
section.parallax h2 {
	   margin:  0 0 10px; 
  color:  var(--light-color);
  font-size: 60px;
}





/*--------------------------------------------------
# footer
--------------------------------------------------*/
.footer-section {
       padding:80px 0;
}   
 .footer-section .container-fluid {
    max-width: 1530px;
}
 .footer-section .footer-logo.resp{
     display: none;
}
 .footer-section h4 {
    font-size: 20px;
    margin-bottom: 24px;
}
.footer-address {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
}
.footer-icon {
    background: var(--bs-secondary-bg);
   border-radius: 2px;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
}  
.footer-phone {
    display: flex;
    align-items: center;
    gap: 10px;
      text-decoration: none; 
  width: 100%;
} 
.footer-hor {
    display: flex; 
    gap: 10px;
    width: 100%;
}
.footer-phone-text { 
  font-size: 16px;
    font-weight: 700;
   color: var(--bs-primary-color);
}
.footer-phone:hover .footer-phone-text {
   color: var(--bs-secondary-bg);
}
.footer-section .bx-lien .bx-flx {
    display: flex;
    grid-gap: 41px;
}
.footer-section .bx-lien ul {
    padding: 0;
    margin: 0;
}
.footer-section .bx-lien ul li {
  color: var(--bs-secondary-bg);
      margin-left: 20px;
      margin-bottom: 12px;
}
.footer-section .bx-lien ul li a {
    text-decoration: none;
    color:  var(--bs-body-color);
}
.footer-section .bx-lien ul li a:hover {
   color: var(--bs-secondary-bg);
}

/* --- */
.footer-nav {
	padding: 15px 0 !important;
      background: var(--bs-secondary-bg);
      color:  var(--bs-body-bg);
}
.footer-nav p {
	margin: 0;
}
.footer-nav p small {
	font-size: 100%;
}
.footer-nav a {
	text-decoration: none;
     color:  var(--bs-body-bg);
}
.footer-nav a:hover {
	text-decoration: underline;
   color:  var(--bs-body-bg);
}
.footer-b {
	display: none;
}
/* --- */
#scrollTopBtn {
	bottom: 5px !important;
	right: auto !important;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}
.grecaptcha-badge {
	z-index: 9999;
}
 
 
/***********page interne*************/
 
 
.backbtn  {
    color: var(--bs-tertiary-color)!important;
}
.backbtn:hover  {
    color: var(--bs-body-color)!important;
}
#scrollTopBtn {
	background-color: var(--bs-primary-color) !important;
}
#scrollTopBtn:hover {
	background-color: var(--bs-secondary-bg) !important;
} 

/*--------------------------------------------------
# contact-page
--------------------------------------------------*/
.contactForm .contact-field-item {
	margin: 0 0 24px  !important;
	position: relative;
	display: block;
	padding: 0;
	width: 50%;
	float: left;
	clear: none !important;
}
.contactForm .contact-field-item.col-right {
    padding-left: 12px;
}
.contactForm .contact-field-item.col-left{
	padding-right: 12px;
}
.contactForm .contact-field-item.fullwidth {
	width: 100%;
	padding: 0 !important;
	float: none;
	clear: both !important;
}
.form-control, section.content .contactForm .contact-field-item .contact-field-element .form-field, .form-select {
	font-weight: 400;
	width: 100%;
	padding: 10px 20px;
	font-size: 16px;
	letter-spacing: 0;
	color: var(--bs-body-color);
	background: var(--bs-body-bg);
	border: 1px solid var(--bs-body-color);
	transition: border-color 0.3s ease;
	font-family: var(--bs-body-font-family);
	border-radius: 0;
	-webkit-border-radius: 0;
}
.form-control::placeholder, section.content .contactForm .contact-field-item .contact-field-element .form-field::placeholder, .form-select::placeholder {
	color: var(--bs-body-color) !important;
}
.form-control:focus, section.content .contactForm .contact-field-item .contact-field-element .form-field:focus, .form-select:focus {
	outline: none !important;
	background: var(--bs-body-bg);
	border-color: var(--bs-tertiary-color);
	box-shadow: none !important;
}
textarea.form-control {
height: 150px; 
}
.gdpr.form-check {
	margin-top: 15px;
}
.contactForm .contact-submit{
	position: relative;
    margin-top: 15px;
}
.contactForm .contact-submit .btn-primary, section.content .contactForm .form-submit-button {
	  padding: 16px 32px; 
    line-height: normal;
    color:var(--bs-body-bg)!important;
  text-transform: uppercase;
    text-align: left;
    background: var(--bs-secondary-bg);
    font-family: var(--bs-body-font-family);
    font-size: 16px; 
    border-radius: 0;
    font-weight: 400;
    border: none;
   position: relative;
      display: inline-block;
    text-decoration: none;
    overflow: hidden;
 transition: all 0.5s;
  -webkit-transition: all 0.5s; 
}
.contactForm .contact-submit .btn-primary:after, section.content .contactForm .form-submit-button:after {
  content:"";
      width: 14px;
    height: 13px;
    display: inline-block;
    margin-left: 8px;
 background: url(../images/flch.webp) no-repeat center ; 
} 
.contactForm .contact-submit .btn-primary:hover, section.content .contactForm .form-submit-button:hover {
   animation: flicker-shadow 0.5s infinite alternate; 
}
.contact-field-type_checkboxes .form-label {
	font-weight: 700;
    clear: both;
    display: block;
}
.contact-field-type_checkboxes .form-check {
	float: left;
	margin-right: 15px;
}
section.content.content-page .contactForm .contact-submit {
	width: 185px;
}
.guestbook-form .contactForm .contact-field-item:nth-child(even) {
	padding: 0 5px 0 0;
}
.guestbook-form .contactForm .contact-field-item:nth-child(odd) {
	padding: 0 0 0 5px;
}
.fa-duotone.fa-image {
	display: none;
}

.contactForm .contact-field-item.contact-field-type_address {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px 20px;
}
.contactForm .contact-field-item.contact-field-type_address label.form-label {
    grid-column: 1 / 3;
}
/* --- */ 
section.content.page-content.content-page .grid-gallery {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
    margin-top: 5px;
}
section.content.page-content.content-page a.link-picture, section.content.page-content.content-page a.link-subgallery {
	display: block;
	width: 23.5%;
	background-size: cover;
	background-position: center;
	height: 300px;
	cursor: zoom-in;
      border-radius: 10px;
	position: relative;
	transition: transform .4s,box-shadow .4s;
	margin-bottom: 13px;
	background-repeat: no-repeat;
}
section.content.page-content.content-page .link-subgallery:hover, section.content.page-content.content-page .link-picture:hover {
	filter: grayscale(1);
}
section.content.page-content.content-page .pagination {
    margin-top: 20px;
    justify-content: center;
    flex-wrap: wrap;
}
section.content.page-content.content-page .pagination li {
	background-image: none !important;
	margin: 0 !important;
	padding: 0;
}
section.content.page-content.content-page .pagination .page-link{
  color: var(--bs-tertiary-color) !important ;
}
section.content.page-content.content-page .pagination .active > .page-link, section.content.page-content.content-page .pagination .page-link.active {
	color: var(--bs-body-bg) !important;
	background: var(--bs-primary-color) !important;
	border-color: var(--bs-primary-color);
}
section.content.page-content.content-page .pagination #fslight-prev.disabled .page-link, section.content.page-content.content-page .pagination #fslight-next.disabled .page-link {
	background: var(--bs-pagination-disabled-border-color);
}
section.content.page-content.content-page span.title-subgallery{
  position : absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding : 10px;
  color : var(--bs-body-bg);
  text-align : center;
  background : rgba(0,0,0,0.7);
}
section.content.page-content.content-page .title-picture {
	display: none;
}
.img-responsive {
	max-width: 100%;
}
section.content ul {
	padding: 0;
}
section.content li {
	background: url(../images/bullet.webp) no-repeat left 6px;
	padding-left: 20px;
} 
section.content li::marker{
	content: "" !important;
}
h3.contact-field {
    display: none;
}
 section.content .news-col .news-object h3,section.content .news-col .Item span.news-abstract {
	height: auto !important;
}
/*--------------------------------------------------
# galerie page
--------------------------------------------------*/
section.galerie-page .breadcrumb-gallery {
	display: none;
}
section.galerie-page .swiper-horizontal {
	padding: 0 0 45px;
	overflow: hidden;
	display: block !important;
	margin: 0 !important;
}
section.galerie-page a.link-picture {
	position: relative !important;
	display: block !important;
	height: 350px !important;
	filter: grayscale(0);
	margin-bottom: 0 !important;
}
/* --- */
.fslightboxci {
	padding: 20px 25px;
}
.fslightboxci h2 {
	font-size: 20px;
	color: var(--bs-body-bg);
	margin: 0;
	text-transform: none;
}
.fslightboxci p {
	margin: 0;
}
.modal-header h3 {
	text-transform: lowercase !important;
	font-size: 35px !important;
}
.modal-header h3::first-letter {
	text-transform: uppercase;
} 
 
 /* Ć‰tats initiaux pour les bandeaux */
        .slide-from-left {
            opacity: 0;
            transform: translateX(-100px);
        }

        .slide-from-right {
            opacity: 0;
            transform: translateX(100px);
        }

 
section.content .icon-page {
    display: flex;
    align-items: center;
    grid-gap: 25px;
    font-size: 20px;
}
section.content .row.bx-grid {
    margin-bottom: 30px;   
}
section.content .row.bx-grid .img-page {
    position: relative;
      height: 100%;
}
section.content .row.bx-grid .img-page img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
     border-radius: 30px;    /*min-height: 320px;*/
} 
section.content .row.bx-grid .text-page {
    padding: 30px 0;
}

section.content .bloc-shema {
    text-align: center;
}
section.content .bloc-shema .boxschema {
    padding: 15px;
    text-align: center;
    background:#82a8de;
    color: #fff;
    margin-bottom: 30px;
  display: flex;
    align-items: center;
    justify-content: center;
}
section.content .bloc-shema .boxschema p {
    text-align: center;
    font-size: 20px;
    font-weight: 700;
    color: #fff !important;
    margin-bottom: 0 !important;
}
section.content .bloc-shema .row.schema .boxschema:before {
    position: absolute;
    display: block;
    top: -40px;
    left: -25px;
    width: 50px;
    height: 50px;
    background: url(../images/boxschema2.webp) no-repeat top left;
    content: "";
} 
section.content .bloc-shema .col-xs-1, section.content .bloc-shema .col-sm-1, section.content .bloc-shema .col-md-1, section.content .bloc-shema .col-lg-1, section.content .bloc-shema .col-xs-2, section.content .bloc-shema .col-sm-2, section.content .bloc-shema .col-md-2, section.content .bloc-shema .col-lg-2, section.content .bloc-shema .col-xs-3, section.content .bloc-shema .col-sm-3, section.content .bloc-shema .col-md-3, section.content .bloc-shema .col-lg-3, section.content .bloc-shema .col-xs-4, section.content .bloc-shema .col-sm-4,
section.content .bloc-shema .col-md-4, section.content .bloc-shema .col-lg-4, section.content .bloc-shema .col-xs-5, section.content .bloc-shema .col-sm-5, section.content .bloc-shema .col-md-5, section.content .bloc-shema .col-lg-5, section.content .bloc-shema .col-xs-6, section.content .bloc-shema .col-sm-6, section.content .bloc-shema .col-md-6, section.content .bloc-shema .col-lg-6, section.content .bloc-shema .col-xs-7, section.content .bloc-shema .col-sm-7, section.content .bloc-shema .col-md-7, 
section.content .bloc-shema .col-lg-7, section.content .bloc-shema .col-xs-8, section.content .bloc-shema .col-sm-8, section.content .bloc-shema .col-md-8, section.content .bloc-shema .col-lg-8, section.content .bloc-shema .col-xs-9, section.content .bloc-shema .col-sm-9, section.content .bloc-shema .col-md-9, section.content .bloc-shema .col-lg-9, section.content .bloc-shema .col-xs-10, section.content .bloc-shema .col-sm-10, section.content .bloc-shema .col-md-10, section.content .bloc-shema .col-lg-10, 
section.content .bloc-shema .col-xs-11, section.content .bloc-shema .col-sm-11, section.content .bloc-shema .col-md-11, section.content .bloc-shema .col-lg-11, section.content .bloc-shema .col-xs-12, section.content .bloc-shema .col-sm-12, section.content .bloc-shema .col-md-12, section.content .bloc-shema .col-lg-12 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px;
}
section.content .bloc-shema .col-sm-offset-3 {
        margin-left: 25%;
    }
section.content .bloc-shema .col-sm-offset-6 {
        margin-left: 50%;
    }
    section.content .bloc-shema .col-sm-offset-9 {
        margin-left: 75%;
    }

section.content .logos-page {
    display: flex;
    flex-wrap: wrap;
    grid-gap: 20px;
    justify-content: center;
      margin-bottom: 10px;
}
section.content .logos-page img {
    height: 150px;
    object-fit: scale-down;
}

table.table-bordered.table-responsive.table-hover {
    width: 100%;
 margin-bottom: 20px;
}
table.table-bordered td p {
    margin-bottom: 0;
}
table.table-bordered.table-responsive.table-hover th, table.table-bordered.table-responsive.table-hover td {
    padding: 7px 10px;
}
.table-bordered>tbody>tr>td, .table-bordered>tbody>tr>th, .table-bordered>tfoot>tr>td, .table-bordered>tfoot>tr>th, .table-bordered>thead>tr>td, .table-bordered>thead>tr>th {
    border: 1px solid #82a8de;
}
.table-hover>tbody>tr:hover {
    background-color: #fff;
}
table, th, td {
  border: 1px solid black;
  border-collapse: collapse;
}

div#sdgdpr_modal_header .navbar-nav .nav-link {
    padding: 10px 18px !important;
}
/*************/
section.content .galerie-page1 a.link-picture, section.content a.link-subgallery{
  height: 530px!important;
     width: 100%;
   background-size: cover;
  background-position: center;
   cursor: zoom-in;
  position: relative;
    overflow: hidden;
  transition: transform .4s,box-shadow .4s;
    border-radius: 30px!important;
  margin-bottom: 0!important;
}
section.content .galerie-page1 span.text-picture {
    position: absolute;
    bottom: 0;
    background: rgb(130 168 222 / 90%);
    width: 100%;
    left: 0;
    right: 0;
    padding: 10px;
     color: var(--bs-white)!important;
}
.mcePxmGallery {
  margin-bottom: 50px;
}

section.content .link-subgallery:hover, section.content .link-picture:hover {
  transform: scale(1);
}

section.content .swiper-button-next:after, section.content .swiper-button-prev:after {
      color: var(--bs-white)!important;
    font-size: 20px;
       background: var(--bs-primary-color);
    width: 40px;
    height: 40px;
    line-height: 40px;
    border-radius: 5px;
}

section.content .galerie-page1 .swiper-button-next, section.content .galerie-page1 .swiper-button-prev {
    width: 40px !important;
}

section.content span.title-subgallery {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 10px;
  color: var(--bs-white);
  text-align: center;
  background: rgba(0,0,0,0.7);
}
section.content .title-picture {
  display: none;
}
.img-responsive {
  max-width: 100%;
}
section.content .slick-dots li button:before, section.content .slick-dots li.slick-active button:before{
  background : var(--bs-tertiary-color) !important;
}

section.content .grid-gallery {
    display: flex;
  overflow: hidden;
    flex-wrap: wrap;
    grid-gap: 2%;
    justify-content: center;
    margin-bottom: 0!important;
}
section.content .galerie-page1 ol {
    display: none !important;
}
section.content .galerie-page1 .nav-gallery {
    display: none !important;
}

a.brand-skin {
    display: inline-block !important;
    padding: 0 !important;
    font-size: inherit !important;
}
.footer-nav {
    padding-bottom: 50px !important;
}



#ajaxGdprContent .modal { z-index: 10001!important; }
#ajaxGdprContent .modal-backdrop { z-index: 10000!important; }
/* -------------------- */
 @media only screen and (max-width : 1399px) {
   
   section.modules .content-gras {
    font-size: 110px;
   }
    .footer-section .footer-logo.resp{
     display: block;
      text-align: center;
    margin-bottom: 30px;
}
    .footer-section .footer-logo.nrml{
     display: none;
}
   .navbar-nav .nav-link {
	padding: 0 40px !important;
}
   section.content.second::after {
	bottom: 0;
	right: 0;
	left: 0;
	top: 125px;
	opacity: 0.25;
}
}
@media only screen and (max-width : 1199px) {
    .container-fluid, .container, .max-container {
        max-width: 992px !important;
    }
  .logo img {
        max-width: 100%;
    }
    header nav.navbar.sticky-top:not(.is-sticky)::before {
	bottom: -26px;
	left: -20px;
}
.navbar-nav .nav-link { 
    padding: 0 30px !important;
  }
  header nav.navbar.sticky-top .level-0 li:first-child .dropdown-toggle {
    right: 25px;
}
  .dropdown-toggle { 
    right: 15px;
  }
 
  
  /*************/
	section.home-content.content-home {
		padding: 70px  0;
	}
	 
    h1, .h1 {
        font-size: 40px;
    }
  h2, .h2 {
    font-size: 32px;
}
  
  section.content.second:after { 
    right: 5px;
  }
  section.boxs1 .bx-flx .bx-home h3 { 
    font-size: 20px;
  }
  section.boxs1 .bx-flx .bx-home .img-box {
    height: 200px;
  }
  section.boxs1 .bx-flx .bx-home.b3:before{
    left: inherit; 
    background: url(../images/after-second.webp) no-repeat right bottom;
    background-size: contain;
    width: 130px;
}
  section.modules .content-gras {
        font-size: 90px;
    }
  section.modules .news-col .Item h3 { 
    font-size: 20px;
  }
  section.parallax h2 { 
    font-size: 50px;
}
section.parallax {
    padding: 100px 0;
}
  .footer-section .bx-lien .bx-flx { 
    grid-gap: 5px;
}
  .footer-section {
    font-size: 15px;
        padding: 50px 0 80px;
}
  section.content.bx-home , section.boxs{
    padding: 70px 0;
}
	section.content .news-col .news-object h3 {
	font-size: 17px;
}
}


/* Desktop : le bouton injecté n'est pas utilisé */
@media (min-width: 992px) {
  #navbarNav .submenu-toggle {
    display: none;
  }
}
header nav.navbar .infos {
    display: none;
}

@media only screen and (max-width: 991px) {
/*  .banner-text {
    z-index: 999999;
}*/
.header-section   .topbar-phone, .header-section   a.readmore, .header-section   nav.language {
    display: none;
  }
  
  
 
  
header nav.navbar .infos {
    display: block;
}
  #navbarNav ul.navbar-nav {
    align-items: center;
    text-align: center;
            display: block;
  }

  #navbarNav ul.navbar-nav > li.dropdown {
        display: table !important; 
        margin: 5px auto !important;
  }
  #navbarNav ul.navbar-nav > li.dropdown:nth-child(1) > a.nav-link.tmc_layout_nav {
    font-size: 0 !important;
    width: 17px;    display: block;
}
 

  /* Flèche native du CMS masquée, remplacée par .submenu-toggle */
  #navbarNav li.dropdown > span.dropdown-toggle {
    display: none !important;
  }

  #navbarNav .submenu-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: auto; 
    border: 0;
    background: transparent;
    color: #fff; 
    cursor: pointer;
  }

  #navbarNav .submenu-toggle::before {
    content: "";
    width: 9px;
    height: 9px;
    border-right: 1.5px solid currentColor;
    border-bottom: 1.5px solid currentColor;
    transform: translateY(-2px) rotate(45deg);
    transition: transform .3s ease;
  }

  #navbarNav li.dropdown.is-open > .submenu-toggle::before {
    transform: translateY(2px) rotate(-135deg);
  }

  /* Sous-menu replié par défaut (hauteur animée en GSAP) */
  #navbarNav ul.navbar-nav ul.submenu {
    position: static;
    display: block; 
    overflow: hidden; 
    margin: 0;
    padding: 0;  
    float: none;
    text-align: center;
            visibility: hidden;
        height: 0;
  }

  #navbarNav li.dropdown.is-open > ul.submenu {
    visibility: visible;
  }

 /* #navbarNav ul.submenu a {
    color: #fff;
  }*/

  /* Téléphone : trait + texte, sans encadré */
  #navbarNav .topbar-phone {
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 250px;
    margin: 0 auto;
    padding: 24px 0 0;
    border-top: 1px solid rgba(255, 255, 255, .35);
    transform: none !important;
  }

  #navbarNav .topbar-phone a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 44px;
    padding: 0;
    background: transparent;
    border-radius: 0;
  }

  /* Contactez-nous : bouton sombre */
  #navbarNav > div.scale-in:not(.topbar-phone) {
    display: flex;
    justify-content: center;
    margin-top: 16px;
  }
  
   #navbarNav nav.language:before{
     display:none;
  }

  #navbarNav .readmore {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 20px;
    font-size: 14px;
    color: #fff;
    background-color: #2A292E;
    box-shadow: none;
            margin: 10px auto !important;
        display: table;
    transform: none !important;
  }
  
  #navbarNav .readmore:hover{
    background-color: #fff;
              color: #2A292E !important;
  }
  #navbarNav .readmore:hover:after {
 
    filter: invert(1);
}

  /* Langue : boîte blanche drapeau + flèche */
  #navbarNav nav.language {
    position: relative;
    display: flex;
    justify-content: center;
    width: fit-content;
    height: auto;
    margin: 16px auto 20px;
    padding: 0;
    transform: none !important;
  }

  #navbarNav nav.language a.selected {
    position: relative;
    top: auto;
    left: auto;
    display: flex;
    align-items: center;
    gap: 6px;
    width: auto;
    height: auto;
    padding: 7px 8px; 
    cursor: pointer;
  }

  #navbarNav nav.language a.selected::after {
    content: "";
    width: 7px;
    height: 7px;
    border-right: 1.5px solid #2A292E;
    border-bottom: 1.5px solid #2A292E;
    transform: translateY(-2px) rotate(45deg);
  }

  #navbarNav nav.language a:not(.selected) {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 2;
    display: none;
    justify-content: center;
    padding: 5px 0px;
    background: none !important;
    opacity: 1;
  }
nav.language:hover {
    background: none !important;
}
  #navbarNav nav.language.is-open a:not(.selected) {
    display: flex;
  }

 
  
    .container-fluid, .container, .max-container {
        max-width: 768px !important;
    }
	header .navbar-nav .dropdown-menu {
		transform: none;
		display: table;
		margin: 0 auto;
		min-width: inherit;
		left: 0;
	}
  	button.navbar-toggler[aria-expanded="false"]:after, button.navbar-toggler[aria-expanded="false"]:before {
        transform: none;
    }
  	button.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon {
        opacity: 0;
    }
    nav.navbar.sticky-top:not(.is-sticky) .navbar-collapse#navbarNav li#menu_1, nav.navbar.sticky-top:not(.is-sticky) .navbar-collapse#navbarNav li#menu_2 {
        display: block;
    }
	.sticky-top:not(.is-sticky) {
		position: static;
	}
    nav.navbar.sticky-top .navbar-collapse {
		position: absolute;
		top: 100%;
		left: 50%;
		transform: translateX(-50%);
		width: 100vw;
		background: var(--bs-secondary-bg);
		padding: 10px 0;
		text-align: left;
		z-index: 9999;
		clear: both;
      max-height: calc(95vh - 80px);
        overflow-y: auto;
	}
	header nav.navbar.sticky-top .navbar-toggler {
		margin: 5px auto;
	}
	header .nav-item {
		margin: 5px 0 !important;
	}
  	header a.nav-link {
        font-size: 16px !important;
        display: table;
        margin: 0 auto;
        padding: 7px 0 !important;
    }
  header li:not(:first-child) a.nav-link::before{
     display: none;
  }
  header nav.navbar.sticky-top .level-0>li:first-child>a.nav-link { 
    background: url(../images/Accueil.webp) no-repeat center;
    color: transparent !important;
  }
  
header nav.navbar.sticky-top .level-0>li:first-child:hover>a.nav-link,
header nav.navbar.sticky-top .level-0>li.selected:first-child>a.nav-link{
   background: url(../images/Accueilh.webp) no-repeat  center; 
  color: transparent !important;
}
      .navbar-nav .nav-link {
        padding: 3px 0 !important;
    }
  .dropdown-toggle {
    display: none;
}
	/* --- */
  
  .header-section {
    text-align: center;
}
  .header-section a.readmore {
    margin: 15px auto;
}
  nav.language {
    display: table;
    margin: 0 auto 20px;
}
  section.banner {
    height: 500px!important;
}
  section.content.bx-home .content-flex {
    display: block;
}
  section.content.bx-home .content-img { 
    width: 100%;
    height: 300px;
    max-width: 480px;
    margin: 0 auto 30px;
}
  section.content.bx-home:not(.third) .content-img:before {
    height: 200px;
  }
  section.content.bx-home .content-txt {
    width: 100%;
    padding: 0;
    margin: 0 !important;
}
  section.content.first article:after { 
    top: -110px;
  }
  section.content.first article:before {
    bottom: -110px;
  }
    section.boxs1 .bx-flx .bx-home {
        width: 100%;
        height: 200px;
    }
  section.boxs1 .bx-flx .bx-home .img-box {
    height: 200px;
  }
      section.modules .content-gras { 
        letter-spacing: 20px;
    }
  section.parallax h2 {
        font-size: 40px;
    }
	/***************/
      .footer-section {
        text-align: center;
    }
 .footer-address, .footer-phone, .footer-hor { 
    flex-direction: column;
           align-items: center;
}
 .footer-address {
    margin-bottom: 15px;
}
  .footer-section .bx-lien .bx-flx {
    display: block;
  }
  .footer-section .bx-lien ul li { 
    margin-left: 0; 
    list-style: none;
}
  .footer-section .social {
    display: table;
    margin: auto;
}
  .footer-section h4 { 
    margin-top: 15px;
}
  .footer-section .networks_linking { 
    justify-content: center;
}
	/**********/
  section.content.page-content.content-page .grid-img .grid-gallery {
      margin: 0 auto 40px;
  }
  
    section.content-page p.clear {
        display: none;
    }
    
    section.content.page-content.content-page a.link-picture, section.content.page-content.content-page a.link-subgallery {
        width: 32%;
    }
    
    .box-light {
        height: auto !important;
    }
	 
section.content .row.bx-grid .img-page img {
    height: 300px;
    position: relative;
}
    section.content.page-content.content-page .text-page {
        padding-bottom: 0 !important;
    }
  section.content .bloc-shema .boxschema p { 
    font-size: 18px;
  }
  section.content .galerie-page1 a.link-picture, section.content a.link-subgallery{
  height: 300px!important;
  }
}
@media only screen and (max-width : 767px) {
    .head-top .container, .container {
        max-width: 100% !important;
    }
	     section.banner {
        height: 400px!important;
    }
  section.home-content .content-gras { 
    font-size: 150px;
  }
  section.content.first article:after { 
    left: inherit;
    top: -95px;
    background: url(../images/after-box.webp) no-repeat right top; 
    background-size: contain;
    width: 170px;
}
  section.content.first article:before { 
    right: inherit; 
    bottom: -95px;
    background: url(../images/befor-second.webp) no-repeat left bottom;
    background-size: contain;
    width: 170px;
}
  section.content.bx-home .content-img { 
        max-width: 400px;
  }
  section.content.third article:before { 
    bottom: -43px;
    background: url(../images/icon-image.webp) no-repeat center bottom;
            background-size: contain;
        width: 140px;
        left: 50%;
        transform: translate(-50%);
}
      section.modules .content-gras {
        letter-spacing: 10px;
        font-size: 60px; 
    }
  section.modules {
    padding: 70px 0 130px;

  }
  section.parallax:after { 
   right: inherit; 
    bottom: -40px;
    background: url(../images/befor-parallax.webp) no-repeat left bottom;
    background-size: contain;
    width: 145px;
}
  
	/* --- */
  	.contactForm .contact-field-item {
        width: 100%;
        float: none;
        clear: both!important;
    }
    .contactForm .contact-field-item:nth-child(even) {
        padding: 0 !important;
    }
    .contactForm .contact-field-item:nth-child(odd) {
        padding: 0 !important;
    }
    .contactForm .contact-submit {
        float: none !important;
        margin-top: 20px;
    }
   section.content article .NewsMasonry .NewsItem img.img-news-list, img.img-news {
        margin-left: auto !important;
        margin-right: auto;
        display: table;
    }
  	/*.contactForm .g-recaptcha {
        float: none;
    }*/
  	.guestbook-messages .gb-content .gb-entry .gb-info .gb-date-time {
        float: none !important;
        margin-top: 10px !important;
    }
  	.guestbook-messages .gb-content .gb-entry .gb-info .gb-author-name {
        float: none !important;
    }
  	section.content.page-content.content-page .grid-gallery {
        grid-template-columns: repeat(2,1fr);
        grid-gap: 10px;
    }
  	section.content.page-content.content-page .link-picture {
        height: 300px;
    }
  	.box-light.vCard {
        margin-top: 20px;
    }
    section.content.page-content.content-page a.link-picture, section.content.page-content.content-page a.link-subgallery {
        width: 48.5%;
    }
    section.content.page-content.content-page .gb-entry span.review-date {
        float: none;
    }
	section.content.content-page .box-dark.text-center, section.content.content-page .imgs-carte {
		width: 100% !important;
	}
	section.content.page-content.content-page .row.grid-home {
		margin-bottom: 5px !important;
	}
	section.content.page-content.content-page div#AllNews, section.content.page-content.content-page .row.contact-row {
		margin-top: 25px;
	}
 
  section.boxs .swiper-pagination { 
    bottom: -45px;
  }
  
  section.content .bloc-shema {
    max-width: 400px;
    margin: auto;
}
  section.content .bloc-shema .col-xs-12 {
    margin-left: 0;
    width: 100%;
}
  section.content .bloc-shema .row.schema .boxschema:before {
        position: absolute;
        display: block;
        top: -50px;
        left: 0;
        margin-left: 45%;
        width: 50px;
        height: 50px;
        background: url(../images/boxschema2xs.webp) no-repeat top left;
        content: "";
    }
section.content .news-col .news-object h3,section.content .news-col .Item span.news-abstract {
	height: auto !important;
}
}
@media only screen and (max-width : 480px) {
  .contactForm .contact-field-item.contact-field-type_address label.form-label {
    grid-column: 1 / 2;
}
  .contactForm .contact-field-item.contact-field-type_address {
    display: grid;
    grid-template-columns: 1fr;
    gap: 7px 0;
}
  section.content .galerie-page1 span.text-picture {
    font-size: 14px;
    padding: 10px 5px;
}
  section.content .galerie-page1 a.link-picture, section.content a.link-subgallery {
        height: 400px !important;
    }
  
     
      h1, .h1 {
        font-size: 32px;
    }
      h2, .h2 {
        font-size: 30px;
    }
      section.home-content .content-gras {
        font-size: 110px;
        letter-spacing: 20px;
    }
section.content.bx-home:not(.third) .content-img:before { 
    left: -7px;
  }
  section.boxs1 .bx-flx .bx-home h3 {
        font-size: 18px;
    }
      section.modules .content-gras {
        letter-spacing: 3px;
        font-size: 45px;
  }
      section.parallax h2 {
        font-size: 30px;
    }
  
section.content .icon-page { 
    flex-direction: column;
    text-align: center;
}
	/* --- */
 
	/*.contactForm .g-recaptcha {
        transform: scale(0.75);
        -webkit-transform: scale(0.75);
        transform-origin: left;
        -webkit-transform-origin: left;
    }*/
 
    section.content.page-content.content-page a.link-picture, section.content.page-content.content-page a.link-subgallery {
        width: 100%;
    }
      .contactForm .gdpr_policy label {
          display: inline !important;
      }
 
}