
/*--------------------------------------------------
>> TABLE OF CONTENTS:
----------------------------------------------------
# Fonts
# General
# Navigation
    ## Superfish
    ## Mobile navigation
--------------------------------------------------*/
/*--------------------------------------------------
# Fonts
--------------------------------------------------*/
@font-face {
    font-family: 'Karla';
    src: url('../fonts/Karla-Medium.woff2') format('woff2'),
        url('../fonts/Karla-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

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

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

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

@font-face {
    font-family: 'Rubik';
    src: url('../fonts/Rubik-ExtraBold.woff2') format('woff2'),
        url('../fonts/Rubik-ExtraBold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}



/*--------------------------------------------------
# General
--------------------------------------------------*/
:root{
--bs-body-color:#434343;
--bs-body-bg:#EAE1D2;
--bs-primary-color:#141A28;
--bs-secondary-color:#F3BF11;
--bs-tertiary-color:#0E3177;
--bs-tertiary-bg:#FA368E;
--dark-color:#000000;
--light-color:#EFECE7;
--bs-color-gray:#838c85;
--bs-btn-padding-x:20px;
--bs-btn-padding-y:10px;
--border-color:#DBD5C5;
--bs-nav-link-colors:#19191a ;
--bs-body-font-family:'Jost';
--bs-titles-font-family:'Rubik';
--bs-extra-font-family:'Karla';
--bs-body-font-weight:400;
--bs-body-line-height:24px;
--bs-body-font-size:15px;
--bs-nav-link-font-size:15px;
--bs-nav-link-font-weight:500;
--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;
}

.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: #0E3177;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #141A28;
    --bs-btn-focus-shadow-rgb: 49,132,253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #141A28;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #333333;
    --bs-btn-disabled-border-color: #333333;
    border-radius: 0;
    border: none;
}
:target {
    scroll-margin-top: 100px; /* Ajuste selon la hauteur de ton menu */
}
.box-light, .box-border-left, .box-border-right {
    padding: 20px;
    margin: 0 0 20px;
    background: var(--bs-white);
    border-radius: 5px;
}
.box-light h5 {
    margin-bottom: 10px;
}
.box-border-left {
    border-left: 7px solid var(--bs-secondary-color);
}
.box-border-right {
    border-right: 7px solid var(--bs-secondary-color);
}
.box-dark {
    padding: 20px;
    margin: 0 0 20px;
    background: var(--bs-primary-color);
    color: var(--bs-white);
    border-radius: 5px;
}
.box-dark a {
    color: var(--bs-body-bg) !important;
}
.container {
	max-width: 1170px;
}

.box-light.vCard .tel.work a{
      padding-bottom: 10px;
}
a {
    color: var(--bs-primary-color);
    text-decoration: underline;
    transition: all .4s;
}

a:active, a:hover, a:focus {
    color: var(--bs-primary-color);
    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: 900;
    color: var(--bs-primary-color);
  	margin: 0 0 20px;
    text-transform: uppercase;
  
}
h1, .h1 {
    font-size: 50px;
}
h2, .h2 {
    font-size: 40px;
}
h3, .h3 {
    font-size: 35px;
}
h4, .h4 {
    font-size: 27px;
}
h5, .h5 {
    font-size: 24px;
}
h6, .h6 {
    font-size: 22px;
}
/* Animation pour :before - slide depuis la droite */
@keyframes slideRight {
    0% {
        transform: translateX(100%);
        opacity: 0;
    }
    100% {
        transform: translateX(0);
        opacity: 1;
    }
}
@keyframes scale-up-center {
  0% {
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

/*--------------------------------------------------
--------------------------------------------------*/
.container-fluid {
    max-width: 1644px;
    margin: 0 auto;
    padding: 0 15px;
}
div#logo {
    z-index: 10;
    margin-bottom: 20px;
}
div#logo img {
  	max-width:100%;
  	width:auto;
}

.social .networks_linking {
    display: flex;
    gap: 10px;
}
.networks_linking a {
    font-size: 14px;
    color: var(--bs-white)!important;
    width: 50px;
    height: 50px;
    line-height: 50px;
    vertical-align: top;
    display: inline-block;
    margin: 0;
    text-align: center;
    position: relative;
    border-radius: 50%;
    background: var(--bs-primary-color);
    border: none;
    outline: none;
    background: linear-gradient(180deg,var(--bs-secondary-color) 0%, var(--bs-tertiary-color) 100%);
}

.social .networks_linking a.networks.networks_google {
    order: 3;
}

.networks_linking a:hover {
    transition: 0.3s all;
    background: var(--bs-tertiary-color);
    -webkit-animation: rotate-center 0.6s ease-in-out both;
    animation: rotate-center 0.6s ease-in-out both;
}
.fa-facebook::before {
    content: "\f39e" !important;
    
}
footer.bottom .networks_linking a:hover {
    color: var(--bs-white) !important;
}
/****/
header.header-top .grid-top .bloc-nav ul.level-0.navbar-nav.sf-menu {
    margin: 0 auto;
}

.bloc-nav .navbar .nav-item.dropdown {
    padding-right: 24px;
}
.navbar li a.nav-link {
    position: relative;
    text-decoration: none;
    color: var(--bs-white);
    font-family: var(--bs-body-font-family);
    text-align: center;
    font-size: 15px;
    font-style: normal;
    font-weight: 500;
    text-transform: uppercase;
    padding: 10px  0!important;
    transition: all .8s;
    letter-spacing: 1.5px;
}
.bloc-nav .navbar li:first-child a {
    padding-left: 0;
 
}
header .level-0.sf-menu > li > a.nav-link:before {
    position: absolute;
    content: '';
    pointer-events: none;
    background: url(/smarty/wireframe20/media/images/hover-menu.svg) no-repeat center;
    width: 52px;
    height: 26px;
    bottom: -5px;
    right: -30px;
    transition: all 0.6s;
    transform: scale(0);
}
header .sf-menu > li a.nav-link:hover:before, header .sf-menu > li.active>a.nav-link:before, header .sf-menu > li.selected >a.nav-link:before {
    transform : scale(1);
}
a#ligne {
    pointer-events: none;
}
ul.dropdown-menu.level-1.submenu li.selected:first-child .nav-link, ul.dropdown-menu.level-1.submenu li:first-child a.nav-link:hover{
    
    background:none!important;
}
.bloc-nav {
    padding: 0 56px;
}
.bloc-nav .navbar li {
    margin: 0 48px;
    position: relative;
}

.bloc-nav .navbar li span.dropdown-toggle {
    position: absolute;
    right: 0;
    color: var(--bs-white);
    top: 50%;
    transform: translateY(-50%);
}
.sf-menu > li:last-child {
    margin-right: 0!important;
}
.sf-menu > li:first-child {
 margin-left: 0!important;
}

.bloc-top .navbar-nav > li > .nav-link:hover, .bloc-top .navbar-nav > li.selected > .nav-link, .bloc-top .navbar-nav .dropdown-menu .nav-item a.nav-link:hover {
    text-shadow: 0 0 20px #F2BE11, 0 0 20px rgba(242, 190, 17, 0.50), 0 0 20px rgba(242, 190, 17, 0.50), 0 0 20px rgba(242, 190, 17, 0.50), 0 0 20px #FBC719;
}
.bloc-top .navbar-nav .dropdown-menu > li.nav-item.selected > a, .bloc-top .navbar-nav .dropdown-menu .nav-item > a.nav-link:hover {
	color: var(--bs-tertiary-color);
}

 .dropdown-menu .nav-item:not(:last-child){
	border-bottom: 1px solid rgb(255 255 255 / 60%);
}
.dropdown-toggle::after {
    text-align: center;
    display: table;
    margin: 0px auto 0 !important;
    
    content: "\f107" !important;
    font-family: 'Font Awesome 6 Pro';
    border: 0;
    
}

ul.dropdown-menu{

}
.navbar-nav .dropdown-menu {
    text-align: center;
    padding: 10px 0;
    background: var(--dark-color);
    border: none;
    left: 50%;
    transform: translateX(-50%);
    border-radius: 0;
    min-width: 223px;
}

.navbar-nav .dropdown-menu .nav-item a.nav-link {
       font-size: 16px;
    padding: 0px  !important;
    white-space: nowrap;
    text-transform: uppercase;
    color: var(--bs-white);
    overflow: hidden;
    margin: 5px;
}
.navbar-nav .dropdown-menu li:first-child {

}
button.navbar-toggler .navbar-toggler-icon {
	display: block;
	height: 2px;
	background-image: none;
	background-color: var(--bs-white);
	transition: .1s;
	opacity: 1;
	margin: 8px 0;
}
.navbar-expand-md .navbar-nav .dropdown-menu li.nav-item.child {
    background: rgb(0 0 0 / 92%);
    margin: 0 !important;
}
button.navbar-toggler::after, button.navbar-toggler::before {
	content: '';
	width: 1.5em;
	background: var(--bs-white);
	position: absolute;
	left: 0;
	height: 2px;
	transition: .3s;
}
button.navbar-toggler::before {
	top: 0;
	transform: rotate(-32deg);
	transform-origin: right;
}
button.navbar-toggler::after {
	bottom: 0;
	transform: rotate(32deg);
	transform-origin: right;
}

.bloc-top .navbar-nav .dropdown-menu .nav-link.child {
	letter-spacing: 0;
	font-size: 15px;
}

.bloc-top nav.navbar:not(.bloc-nav.is-sticky .navbar) {
 
    justify-content: center;
}
header.header-top  .bloc-nav.is-sticky {
    position: fixed !important;
    top: 0;
    width: 100%;
    left: 0;
    z-index: 999;
    padding: 7px 10px !important;
    margin: 0 !important;
    background: #000000a3;
    border-radius: 0;
    backdrop-filter: blur(10px);
}
.bloc-nav.is-sticky .grid-top {
    padding: 0px;
}
.bloc-nav.is-sticky .grid-top{
     justify-content: center !important;
    gap: 100px; 
  
}
.bloc-nav.is-sticky div#logo-header{
    display: none !important
}
.bloc-nav.is-sticky .navbar, .bloc-nav.is-sticky .navbar #navbarNav {
	justify-content: center;
	flex-grow: inherit;
}

.contactForm .gdpr_policy label {
	display: inline !important;
}

.modal-header {
    border-bottom-color:var(--border-color);
}
.navbar-expand-lg .navbar-nav {

	margin: 0 auto !important;
}
/****/

header.header-top .grid-top {
    padding: 68px 0 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
header.header-top .grid-top .bloc-nav {
    padding: 0;
}
.navbar-nav #menu_1 .nav-link {
	text-transform: none;
	font-size: 0;
	padding: 10px !important;
	background: url(../images/home.webp)no-repeat center;
}
.navbar-nav #menu_1 .nav-link:hover, 
.navbar-nav #menu_1 .nav-link.active, 
.navbar-nav .nav-item.selected#menu_1 .nav-link{
    background-image: url(../images/home1.webp);
}
/*************************************/
header.header-top .info-top {
    padding: 45px 0 0px;
}
header.header-top .info-top .flex-info {
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: var(--bs-white);
    border-bottom: 1px solid rgba(255, 255, 255, 0.20);
   
}
header.header-top .info-top .info-left , header.header-top .info-top .info-right {
    margin-top: -25px;
}
header.header-top .info-top .flex-info i{

    color: var(--bs-secondary-color);
}
header.header-top .info-top .contact-item {
    gap: 15px;

}
header.header-top .info-top .flex-info .phone {
    margin-top: 10px;
}
header.header-top .info-top p {
    margin: 0;
}
header.header-top .info-top .flex-info .phone a {
    color: var(--bs-white);
    text-decoration: none;
    font-weight: 700;
}
header.header-top .info-top .flex-info .phone a:hover {
    text-decoration: underline;
}

header.header-top .info-top .contact-item.phone i {
    transform: rotate(255deg);
  animation: rotatePhone 2s linear infinite;
}
@keyframes phone-vibrate {
  0% { transform: rotate(0deg); }
  20% { transform: rotate(-20deg); }
  40% { transform: rotate(20deg); }
  60% { transform: rotate(-15deg); }
  80% { transform: rotate(15deg); }
  100% { transform: rotate(0deg); }
}

header.header-top .info-top .networks_linking {
    gap: 11px;
}
header.header-top .info-top .networks_linking a.networks {
    font-size: 15px;
    background: none;
    height: auto;
    width: auto;
    line-height: 48px;
    border-radius: 0;
}
header.header-top .info-top .networks_linking a.networks.networks_instagram {
    font-size: 17px;
}
header.header-top .info-top .networks_linking a.networks:hover {
    animation: none;
    color: var(--bs-secondary-color) !important;
}
/*--------------------------------------------------
# banner
--------------------------------------------------*/
section.banner {
    height: 900px;
    max-height: 100vh;
    min-height: 750px;
}
/*
section.banner:before {
    position: absolute;
    content: "";
    background: url(../images/after-slide.webp) no-repeat center;
    width: 541px;
    height: 541px;
    right: -126px;
    bottom: -120px;
    pointer-events: none;
    z-index: 3;
    background-size: contain;   pointer-events: none;
}
*/
section.banner:after {
    content: "";
    position: absolute;
    bottom: 262px;
    right: 167px;
    pointer-events: none;
    z-index: 3;
    background: url(/smarty/wireframe20/media/images/badge.svg) no-repeat center;
    width: 190px;
    height: 190px;
    transition: all 0.6s;
    animation: rotatePause 4s linear infinite;
    border-radius: 50%;
    pointer-events: none;
}
header.header-top.interne section.banner {
    height: 500px !important;
    min-height: 100% !important;
    max-height: 100%;
}
header.header-top.interne section.banner:before , header.header-top.interne section.banner:after{
display:none;
}
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;
}
section.banner .carousel:before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
    background-size: cover;
    background: linear-gradient(0deg, rgba(43, 6, 28, 0.00) 46.82%, rgba(2, 9, 22, 0.90) 100%);
}

/******/


section.banner .box-overlay {
    margin-top: 121px;
    position: relative;
}

section.banner .box-overlay .cta {
    position: relative;
    display: table;
    margin: 0 auto;
}

/**************************/
header.header-interne {
    border-bottom: 3px solid var(--bs-color-gray);
}
/****/
.head-middle {
	padding: 36px 0 18px;
	z-index: 99 !important;
}

.carousel-control-prev-icon, .carousel-control-next-icon {
	display: none;
}
section.banner .carousel-indicators {
    margin-bottom: 15px;
    z-index: 3;
    gap: 8px;
}
section.banner .carousel-indicators button {
    border-radius: 0;
    opacity: 0.25;
    margin: 0;
    position: relative;
    height: 6px;
    width: 32px;
    background: var(--bs-white);
    border: 0;
    margin: 0;
    position: relative;
}
section.banner .carousel-indicators button:hover, section.banner .carousel-indicators button.active {
    background:  var(--bs-white);
    opacity: 1;
}

/*--------------------------------------------------
# content home
--------------------------------------------------*/
section.content {
    padding: 60px 0;
    position: relative;
    background: url(../images/bg-home.webp) no-repeat center fixed;
    background-size: cover;
}

section.content p {
    text-align: justify;
}
section.content.page-content h1 {
    animation: fadeInUp 2.5s ease forwards;
    font-size: 50px;
}

section.content.content-page h2 {
    font-size: 42px;
}
@keyframes fadeInUp {
  0% {
    transform: translateY(55%);
    opacity: 0;
  }
  100% {
    transform: translateY(0%);
    opacity: 1;
  }
}
/* --- */
section.home-content {
    padding: 120px 0;
    background: url(../images/bg-home.webp) no-repeat center fixed;
    background-size: cover;
}
section.content:before {
    content: "";
    position: absolute;
    background: url(../images/before-home.webp) no-repeat center;
    height: 356px;
    width: 400px;
    bottom: 0;
    left: 0;
    transition: all 0.6s;
    background-size: contain;
    opacity: 0.3;
    filter: grayscale(1);
    pointer-events: none;
}
section.home-content .container-fluid , section.modules .container-fluid {
    max-width: 1324px;

}


section.home-content h1 , section.home-content h2{
    margin: 10px 0 35px;
    line-height: 1em;
    color: var(--bs-white);
}
section.home-content a{
   
    color: var(--bs-white);
}
section.home-content h5 , section.modules h5 , section.galerie-home h5  {
    color: var(--bs-white);
    margin: 0;
    font-family: var(--bs-extra-font-family);
    font-weight: 500;
    letter-spacing: 3.6px;
    font-size: 18px;
    line-height: 24px;
}
 section.galerie-home h5  {
    color: var(--bs-primary-color);

}
section.home-content h5:before , section.home-content h2:before , section.modules h5:before , section.galerie-home h5:before{
    content: "";
    display: block;
    width: 51px;
    height: 69px;
    background: url("/smarty/wireframe20/media/images/icon-title.svg") no-repeat center;
    background-size: contain;
    margin: 0 0 10px;
    animation: floatIcon 3s ease-in-out infinite;
}
 section.modules h5:before , section.galerie-home h5:before{

    margin: 0 auto 10px;
}
@keyframes floatIcon {
    0%   { transform: translateY(0); }
    50%  { transform: translateY(-4px); }
    100% { transform: translateY(0); }
}
section.content .flex-home {
    position: relative;
    display: flex;
    justify-content: space-between;
    gap: 40px;
    z-index: 1;
}
section.content .flex-home:not(:first-of-type) {
    margin-top: 80px;
}
section.content .flex-home .cont {
    position: relative;
    max-width: 49.2%;
    padding: 70px 80px;
    background: var(--bs-primary-color)url("../images/bg-cont.webp") no-repeat center center;
    background-size: cover;
    color: var(--bs-white);
    border-radius: 8px;
}
section.content .flex-home .photo-home {
    position: relative;
    max-width: 48.69%;
    border-radius: 8px;
    border: 3px solid #FFF;
    box-shadow: 0 0 20px 0 var(--bs-secondary-color), 0 0 20px 0 var(--bs-secondary-color), 0 0 20px 0 var(--bs-tertiary-bg), 0 0 10px 0 var(--bs-secondary-color);
}

section.content .flex-home .photo-home img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    max-width: 100%;
    border-radius: 8px;
}

section.content .flex-home:nth-child(even) .photo-home {
    order: 2;
}

/****/

.readmore, .Item .read-more a.button.btn.btn-primary {
    position: relative;
    text-decoration: none;
    align-items: center;
    color: var(--bs-white) !important;
    text-align: center;
    background: var(--bs-primary-color);
    text-transform: uppercase;
    display: inline-flex;
    z-index: 1;
    overflow: hidden;
    transition: all .6s;
    font-size: 15px;
    font-style: normal;
    font-weight: 500;
    padding: 18px 52px;
    letter-spacing: 1.5px;
    border-radius: 8px;
}
a.readmore:hover , .Item:hover .read-more a.button.btn.btn-primary {
    transform: translate(10px , -10px);
}

/* Container pour le background avec image et filtre */
.readmore::before, .Item .read-more a.button.btn.btn-primary:before {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: 50px;
    background-color: var(--bs-primary-color);
    pointer-events: none;
    z-index: -1;
}

.readmore::after, .Item .read-more a.button.btn.btn-primary:after {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: 50px;
    background-image: url('../images/bg.webp');
    background-size: cover;
    background-position: center;
    background-color: var(--bs-primary-color);
    opacity: 0.7;
    pointer-events: none;
    z-index: -1;
    background-blend-mode: multiply;
}
section.modules  .Item .read-more a.button.btn.btn-primary {
    background: none;
    border-radius: 3px;
    border: 2px solid var(--bs-secondary-color);
    box-shadow: 0 0 8px 0 var(--bs-secondary-color), 0 0 10px 0 var(--bs-secondary-color), 0 0 10px 0 var(--bs-secondary-color);
}
section.modules  .Item .read-more a.button.btn.btn-primary::before ,
section.modules  .Item .read-more a.button.btn.btn-primary::after {
    display: none;
}

/*****/
@keyframes pulseOpacity {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.4;
  }
  100% {
    opacity: 1;
  }
}
/* Keyframes rotate + pause + rotate */
@keyframes rotatePause {
    0% {
        transform: rotate(180deg);
    }
    40% {
        transform: rotate(360deg); /* rotation phase 1 */
    }
    60% {
        transform: rotate(360deg); /* pause */
    }
    100% {
        transform: rotate(180deg); /* rotation phase 2 */
    }
}
section.content.content-page.page-content .cont{
padding:25px 0;
}


/*--------------------------------------------------
# modules
--------------------------------------------------*/
section.modules {
    padding: 130px 0 110px;
    background: url(../images/bg-actu.webp)no-repeat center;
    background-size: cover;
}
section.modules .container {
    max-width: 1284px;
}
section.modules:before {
    content: "";
    position: absolute;
    left: 106px;
    bottom: 215px;
    pointer-events: none;
    z-index: 1;
    background: url(/smarty/wireframe20/media/images/badge.svg) no-repeat center;
    width: 190px;
    height: 190px;
    transition: all 0.6s;
    animation: rotatePause 4s linear infinite;
    border-radius: 50%;
}
/*
section.modules:after {
    position: absolute;
    content: "";
    background: url(../images/before-actu.webp) no-repeat center;
    left: -184px;
    bottom: -157px;
    width: 498px;
    height: 498px;
    pointer-events: none;
    background-size: contain;
    transform: rotate(15.348deg);
}
*/
section.modules:after {
    position: absolute;
    content: "";
    background: url(../images/after-news.webp) no-repeat center;
    left: -184px;
    bottom: -251px;
    width: 600px;
    height: 600px;
    pointer-events: none;
    background-size: contain;
    transform: rotate(15.348deg);
}
section.modules  .title-section {
    position: absolute;
    top: 180px;
    left: 0;
    font-family: var(--bs-titles-font-family);
    z-index: 0;
    pointer-events: none;
    color: var(--bs-white);
    text-align: center;
    font-size: 120px;
    font-style: normal;
    font-weight: 900;
    opacity: 0;
    transform: translateY(50px);
    animation: appearTitle 1.5s ease-out forwards;
    animation-delay: 0.5s;
    will-change: transform, opacity;
    opacity: 0.06;
    background: linear-gradient(0deg, rgba(225, 235, 222, 0.80) 0%, rgba(237, 237, 237, 0.80) 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    line-height: 175px;
    letter-spacing: 3.6px;
    text-transform: uppercase;
}

section.modules .swiper-container {
	overflow: hidden;
}

section.modules div#AllNews {
    --bs-gutter-x: 0;
    overflow: hidden;
    margin: 0;
    padding-bottom: 40px;
   
}
section.modules div#AllNews .Item {
    position: relative;
    clear: both;
    padding: 20px 0 0 20px;
    max-width: 1200px;
}
section.modules h2:before {
    position: absolute;
    content: "";
    background: url(../images/icon-title2.webp) no-repeat left top;
    animation: floatH1Before 5s ease-in-out infinite alternate;
    transform-origin: center center;
    pointer-events: none;
        height: 42px;
    width: 28px;
    left: 0;
    top: 0;
}
section.modules h2 {
    color: var(--bs-white);
    margin: 10px 0 40px;
}
section.modules div#AllNews .Item h3 .date {
    display: block;
    order: -1;
    font-family: var(--bs-body-font-family);
    font-size: 15px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
    color: var(--bs-secondary-color);
}

section.modules div#AllNews .Item .photo img {
    object-fit: cover;
    transition: all .6s;
    height: 100%;
    width: 100%;
}
section.modules div#AllNews .Item h3 {
    margin: 0 0 10px;
    display: flex;
    gap: 6px;
    flex-direction: column;
    font-size: 22px;
    color: var(--bs-white);
    letter-spacing: 1.1px;
    font-weight: 400;
    font-family: var(--bs-extra-font-family);
}
section.modules div#AllNews .Item {
    position: relative;
    clear: both;
    display: flex;
    justify-content: space-between;
}
section.modules div#AllNews .Item .nophoto, section.modules div#AllNews .Item .photo {
    position: relative;
    flex-shrink: 0;
    width: 45.52%;
    order: 2;
    border-radius: 8px;
    right: 0;
    border-radius: 8px;
    border: 3px solid var(--bs-white);
    box-shadow: 0 0 20px 0 var(--bs-secondary-color), 0 0 20px 0 var(--bs-secondary-color), 0 0 20px 0 var(--bs-tertiary-bg), 0 0 10px 0 var(--bs-secondary-color);
}
section.modules div#AllNews .Item .news-desc .news-body-desc {
    
}
section.modules div#AllNews .Item .news-desc span.news-abstract {
    display: block;
    position: relative;
}
section.modules div#AllNews .Item .nophoto i.fa-duotone.fa-image {
    display: none;
}
section.modules div#AllNews .Item .nophoto {
    background-color: var(--bs-body-bg);
}

section.modules div#AllNews .Item .news-desc .read-more a.button.btn.btn-primary.btn-news {
    position: absolute;
    inset: 0;
    font-size: 0;
    border: 0;
    background: none;
    outline: none;
    z-index: 2;
    padding: 0;
    margin: 0;
  display: block;
}
 section.modules div#AllNews .Item:hover .photo img {
   /* transform: scale(1.1);*/
}
section.modules div#AllNews .Item .news-desc {
    box-sizing: border-box;
    max-width: 41.50%;
    position: relative;
    padding: 38px 0;
    height: 100%;
    color: var(--bs-white);
    text-align: center;
}
section.modules div#AllNews .Item .news-desc .read-more a {
    margin-top: 20px;
}
section.modules div#AllNews .Item .news-desc .read-more a:before {
    background-color: var(--bs-tertiary-color);
}
section.modules div#AllNews .Item .photo img, section.modules div#AllNews .Item .nophoto img {
    position: relative;
    object-fit: cover;
    height: 100%;
    width: 100%;
    display: block;
    border-radius: 0;
    border-radius: 8px;
}

section.modules div#AllNews .Item .nophoto img {
    object-fit: scale-down !important;
    background: var(--bs-primary-color);
    padding: 10px;
    transition: all .6s;
}
section.modules div#AllNews .Item:hover .nophoto img  {
    /*transform: scale(1);*/
}
/***/
section.modules .swiper-pagination {
    position: absolute;
    left: 69%;
    bottom: 25px;
    transform: translateX(-50%);
    display: flex;
    gap: 16px;
}
section.modules .swiper-pagination .swiper-pagination-bullet {
    width: 12px;
    height: 12px;
    margin: 0;
    opacity: 1;
    background: transparent;
    border: 2px solid var(--bs-white);
    position: relative;
}

section.modules .swiper-pagination .swiper-pagination-bullet:hover,
section.modules .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: var(--bs-white);
    opacity: 1;
}

section.modules #AllNews .Item .link a {
    position: absolute;
    display: none;
}
/**************** actus interne ***********/
section.content .news-object.Item {
letter-spacing: 0.8px;
    margin-bottom: 20px;
}
section.content .news-object.Item .photo, section.content .news-object.Item .nophoto {
    height: 250px !important;
    width: 100%;
    background: var(--bs-primary-color);
    margin-bottom: 20px;
    border-radius: 8px;
    overflow: hidden;
    border: 0 !important;
    padding: 0 !important;
}
section.content .news-object.Item .photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 0;
}
section.content .news-object.Item .nophoto i.fa-duotone.fa-image {
    display: none;
}
section.content .news-object.Item .nophoto {
    background: var(--bs-primary-color);
    background-size: 50%;
}
section.content .news-object.Item .nophoto img {
    width: 100%;
    height: 100%;
    object-fit: scale-down;
    padding: 0;
}
section.content .news-object.Item .read-more{
  	margin-top : 20px;
}
.news-abstract {
  display: block;
}
section.content .news-object.Item h3 {
    font-size: 20px;
    /* min-height: 80px; */
}
section.content .news-object.Item .date {
    font-size: 15px;
    color: var(--bs-secondary-color);
}
section.content article .NewsMasonry .NewsItem img.img-news-list, img.img-news {
    max-width: 190px !important;
    height: 150px !important;
    border-radius: 8px;
}
a.backbtn {
    color: var(--bs-primary-color) !important;
}
a.backbtn:hover {
    color: var(--bs-secondary-color) !important;
}
section.content .news-object.Item .link a {
    position: absolute;
    display: none;
}

/*--------------------------------------------------
# contact-page
--------------------------------------------------*/
.contactForm .contact-field-item {
    margin: 0 0 10px !important;
    position: relative;
    display: block;
    padding: 0;
    width: 100%;
    float: none;
    clear: none !important;
}
.contactForm .contact-field-item:nth-child(even) {
	padding-right: 0;
}
.contactForm .contact-field-item:nth-child(odd) {
	padding-left: 0;
}
.contactForm .contact-field-item.fullwidth {
	width: 100%;
	padding: 0 !important;
	float: none;
	clear: both !important;
}
.contactForm .contact-field-item.fullwidth textarea#form1-comments_1 {
    height: 85px;
}
.contactForm div#contact-field-id_single_line_text_2 {
    width: 100%;
    padding: 0;
}
.form-control, section.content .contactForm .contact-field-item .contact-field-element .form-field {
    font-weight: 400;
    line-height: 2em;
    color: var(--bs-body-color) !important;
    background: transparent;
    border: 1px solid var(--bs-color-gray);
    padding: 4px 10px;
    transition: border-color .4s, color .4s;
    border-radius: 0;
    outline: none !important;
}
.form-control::placeholder, section.content .contactForm .contact-field-item .contact-field-element .form-field::placeholder {
	color: var(--bs-body-color) !important;
}
.form-control:focus, section.content .contactForm .contact-field-item .contact-field-element .form-field:focus {
    outline: none !important;
    border-color: var(--bs-tertiary-color) !important;
    box-shadow: none !important;
  background: transparent;
}
section.content .contactForm input#form1-gdpr {
    border-color: var(--bs-secondary-bg);
}
.form-check-input:checked {
    background-color: var(--bs-secondary-bg);
   
}
.contactForm .contact-submit .btn-primary, section.content .contactForm .form-submit-button {
    position: relative;
    color: var(--bs-white);
    text-decoration: none;
    text-transform: uppercase;
    font-size: 15px;
    font-weight: 600;
    background: var(--bs-primary-color);
    border-radius: 8px;
    z-index: 1;
    border: 0;
    transition: all .6s;
    line-height: 24px;
    display: inline-flex;
    padding: 13px 40px;
}
.contactForm .contact-submit {
    position: relative;
    margin-top: 10px;
    display: table;
}

.grecaptcha-badge {
    z-index: 999;
}
.contactForm .contact-submit .btn-primary:hover, section.content .contactForm .contact-submit .form-submit-button:hover {
    background: var(--bs-tertiary-color);
    color: var(--bs-white);
}
section.content.page-content.content-page .formulaire-center .contactForm .contact-submit {
    margin: 10px auto 0;
}
section.content.page-content.content-page .formulaire-center .contactForm  .gdpr.form-check {
    display: table;
    margin: 0 auto;
}



/*************************/
/* =========================
   SECTION GALERIE HOME
========================= */
section.galerie-home {
    position: relative;
    padding: 120px 0;
    background: url(../images/bg-home.webp) no-repeat center;
    background-size: cover;
}
section.galerie-home::after {
    position: absolute;
    content: "";
    background: url(../images/after-gal.webp) no-repeat center;
    width: 758px;
    height: 436px;
    top: 0;
    right: 0;
    z-index: -1;
    pointer-events: none;
    background-size: contain;
    background-blend-mode: luminosity;
    opacity: 0.8;
}
section.galerie-home .container-fluid {
    max-width: 1844px;
}


section.galerie-home h2 {
    margin: 10px 0 40px;
}
/* =========================
   GRID GALERIE 6 IMAGES
========================= */

section.galerie-home .grid-gallery {
    display: grid;
    grid-template-columns: repeat(6,1fr);
    grid-template-rows: 272px 295px;
    gap: 24px;
}

/* =========================
   IMAGES
========================= */

section.galerie-home .grid-gallery .link-picture {
    position: relative;
    display: block;
    overflow: hidden;
    border-radius: 10px;

    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    cursor: pointer;
    transition: transform .35s ease, box-shadow .35s ease;
}

section.galerie-home .grid-gallery .link-picture:nth-child(1){
    grid-column: 1 / 2;
    grid-row: 1 / 3;
}
section.galerie-home .grid-gallery .link-picture:nth-child(2){
    grid-column: 2/4;
    grid-row: 1 / 3;
}

section.galerie-home .grid-gallery .link-picture:nth-child(3){
    grid-column: 4 / 6;
    grid-row: 1 / 2;
}


section.galerie-home .grid-gallery .link-picture:nth-child(4){
    grid-column: 4 / 5;
    grid-row: 2 / 3;
}
section.galerie-home .grid-gallery .link-picture:nth-child(5){
    grid-column: 5 / 6;
    grid-row: 2 / 3;
}

section.galerie-home .grid-gallery .link-picture:nth-child(6){
    grid-column: 6 / 7;
    grid-row: 1 / 3; /* occupe 2 lignes */
}
/* =========================
   HOVER
========================= */

section.galerie-home .grid-gallery .link-picture:hover {
    transform: scale(1.02);
     border: 3px solid var(--bs-white);
    box-shadow: 0 0 20px 0 var(--bs-secondary-color), 0 0 20px 0 var(--bs-secondary-color), 0 0 20px 0 var(--bs-tertiary-bg), 0 0 10px 0 var(--bs-secondary-color);
    z-index: 10;
}


section.galerie-home .grid-gallery .link-picture::before {
      content: "";
    position: absolute;
    inset: 0;
    opacity: 0;
    transition: opacity .35s ease;
    border-radius: 10px;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.20) 0%, rgba(0, 0, 0, 0.20) 100%);
  
}

section.galerie-home .grid-gallery .link-picture:hover::before {
    opacity: 1;
}


section.galerie-home .grid-gallery .link-picture::after {
    content: "";
    position: absolute;
    inset: 0;
    width: 100px;
    height: 100px;
    margin: auto;
    background: url("../images/loop.webp") no-repeat center;
    background-size: contain;
    opacity: 0;
    transform: scale(.8);
    transition: .35s ease;
}

section.galerie-home .grid-gallery .link-picture:hover::after {
    opacity: 1;
    transform: scale(1);
}

/* =========================
   ELEMENTS CACHES
========================= */

section.galerie-home .grid-gallery .title-picture {
    display: none;
}

section.galerie-home .breadcrumb-gallery {
    display: none;
}

section.galerie-home .nav-gallery,
section.galerie-home .pagination.fslightbox {
    display: none !important;
}

section.galerie-home .btn-gal {
    margin-top: 40px;
}
/* =========================
   ANIMATION SCROLL
========================= */

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
/*--------------------------------------------------
# footer
--------------------------------------------------*/
footer.bottom.footer-interne {
    border-top: 1px solid var(--bs-primary-color);
}
footer.bottom {
    padding: 80px 0;
    background: url(../images/bg-footer.webp) no-repeat center;
    background-size: cover;
    color: var(--bs-white);
}
footer.bottom .container-fluid {
    max-width: 1444px;

}
footer.bottom .bloc-center {
    gap: 35px;
    text-align: center;
    align-items: center;
    justify-content: center;
 
}
footer.bottom .footer-left {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

footer.bottom .contact-item.adr {
    margin-bottom: 20px;
}
footer.bottom .contact-item {
    gap: 20px;
}
footer.bottom  a {
    text-decoration: none;
    color: var(--bs-white);
    font-weight: 700;
}
footer.bottom  a:hover {
    color: var(--bs-secondary-color) !important;
}

footer.bottom .contact-item i {
    font-size: 16px;
    color: var(--bs-tertiary-color);
    height: 50px;
    width: 50px;
    border-radius: 50%;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    background: var(--bs-secondary-color);
}
footer.bottom p {
    margin: 0;

}
footer.bottom  .social {
    align-items: center;
    gap: 24px;
}

footer.bottom .social h5 {
    margin: 0;
    color: var(--bs-tertiary-bg);
    font-size: 25px;
}
footer.bottom .mps iframe {
    height: 416px;
    display: block;
    border: 0;
    margin-top: -80px;
}
footer.bottom .mps {
    position: relative;
    height: 326px;
    overflow: hidden;
}
/*******************/
footer.bottom .footer-right {
    max-width: 52.27%;
    position: relative;
    z-index: 0;
    height: 326px;
    width: 100%;
}
footer.bottom .footer-right p {
    margin: 0;
    text-align: center;
    font-weight: 700;
    margin-top: 15px;
}

footer.bottom .footer-right img {
	height: 100%;
	width: 100%;
	max-width: 100%;
	object-fit: cover;
}
/***/
.fa-facebook::before {
    content: "\f39e" !important;
    
}
.footer-b {
	display: none;
}

.footer-nav small {
    font-size: 15px;
}
/* ----------------------------------------------
 * Generated by Animista on 2025-9-15 15:22:53
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info. 
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

/**
 * ----------------------------------------
 * animation rotate-center
 * ----------------------------------------
 */
@-webkit-keyframes rotate-center {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@keyframes rotate-center {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

/*****************/
.footer-b {
    DISPLAY: NONE;
}
.footer-nav {
    padding: 15px 0px !important;
}
.footer-nav a {
    PADDING: 0 1px;
    text-decoration: none;
}
.footer-nav a:hover {
    color: var(--bs-tertiary-color) !important;
}
/***********/

a#scrollTopBtn {
    right: auto;
    background: var(--bs-secondary-color);
    color: var(--bs-white) !important;
    bottom: 50px;
    left: 50%;
    transform: translateX(-50%);
}
a#scrollTopBtn i.fa::before {
    content: '\f0d8';
}
#scrollTopBtn:hover {
    background-color: var(--bs-primary-color) !important;
}
/* Optimisations pour les animations GSAP */


.news-object {
    transition: box-shadow 0.3s ease;
}

/* Animation flottante pour les réseaux sociaux */
@keyframes float {
    0%, 100% { transform: translateY(0px); }
    50% { transform: translateY(-10px); }
}


/* --- */
/* --- */
.img-page img, .img-news img {
	border-radius: var(--bs-border-radius);
}

section.content.page-content.content-page .grid-gallery {
    display: flex;
    flex-wrap: wrap;
    grid-gap: 2%;
    justify-content: center;
}
section.content.page-content.content-page .grid-img .grid-gallery{
	display: block;
	width: 400px;
	
}
section.content.page-content.content-page .grid-gallery a {
    
}
section.content.page-content.content-page .grid-home {
    grid-gap: 80px;
      margin-bottom: 70px;
}
section.content.page-content.content-page .grid-home .grid-img.w-25 {
    width: 47% !important;
}
section.content.page-content.content-page .grid-home .grid-img.w-25 img {
    border-radius:0px !important;
}


section.content.page-content.content-page .grid-img .link-picture {
	height: 320px;
}
section.content.page-content.content-page a.link-picture, section.content.page-content.content-page a.link-subgallery {
    width: 23.5%;
    background-size: cover;
    background-position: center;
    height: 350px;
    cursor: zoom-in;
    position: relative;
    /* display: block; */
    /* box-shadow: 0 0 0 rgba(33,46,83,.6); */
    transition: transform .4s,box-shadow .4s;
    border-radius: 0;
    margin-bottom: 20px;
    overflow: hidden;
}
section.content.page-content.content-page .italiens a.link-picture, section.content.page-content.content-page .italiens a.link-subgallery {

  height: 350px;
    background-size: contain;
    background-repeat: no-repeat;
}
section.content.page-content.content-page .link-picture:before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 0;
    background: var(--bs-secondary-bg);
    z-index: 99;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.6s;
}
section.content.page-content.content-page .link-picture:hover:before {
opacity:0.4;
}
section.content.page-content.content-page .link-subgallery:hover {
	transform: scale(.95);
}
 section.content.page-content.content-page .link-picture:hover {
	/*transform: scale(.95);*/
}
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;
    padding: 0;
}
section.content.page-content.content-page .pagination li.page-item.disabled .page-link {
    background-color: var(--bs-white);
    color: var(--bs-gray-500) !important;
}
section.content.page-content.content-page .pagination .page-link {
    color: var(--bs-white) !important;
    cursor: pointer;
    border-radius: 0;
    background-color: var(--bs-tertiary-bg);
}
section.content.page-content.content-page .pagination .active>.page-link, 
section.content.page-content.content-page .pagination .page-link.active , 
section.content.page-content.content-page .pagination .page-link:hover {
  color: var(--bs-white) !important ;
  background: var(--bs-secondary-color) !important ;
  border-color: var(--bs-secondary-color);
}
section.content.page-content.content-page .pagination li a.page-link.prev-button.disabled {
    background: var(--light-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 : rgb(32 143 55 / 70%);     
  pointer-events: none;
}
section.content.page-content.content-page .title-picture {
	display: none;
}
.img-responsive {
	max-width: 100%;
}
section.content.page-content.content-page .slick-dots li button:before, section.content.page-content.content-page .slick-dots li.slick-active button:before{
  background : var(--bs-tertiary-color) !important;
}
section.content.page-content.content-page .slick-dots{
  bottom : -40px;
}
section.content.page-content.content-page p,
section.content.page-content.content-page li{
}
article.content li{
	background: url(../images/bullet.webp)no-repeat left 6px;
	padding-left: 20px;
	margin-left: 0px;
}
article.content ul{
	padding-left: 0px;
	margin-left: 0px;
}
article.content li::marker{
	content: "" !important;
}
h3.contact-field {
    display: none;
}
/*****/
section.content.page-content.content-page .formulaire-privatisation div#contact-field-id_date_1 span.tooltip , 
section.content.page-content.content-page .formulaire-privatisation div#contact-field-id_time_1 span.tooltip {
    display: none;
}
section.content.page-content.content-page .formulaire-privatisation div#contact-field-id_date_1 , 
section.content.page-content.content-page .formulaire-privatisation div#contact-field-id_time_1 {
    display: flex;
    flex-direction: column;
}
section.content.page-content.content-page .formulaire-privatisation div#contact-field-id_date_1 small.contact-field-help , 
section.content.page-content.content-page .formulaire-privatisation div#contact-field-id_time_1 small.contact-field-help {
    order: -1;
}
.form-check .form-check-input {
    --bs-form-check-bg: var(--bs-white);
}
/********************/

.tel.work > a {
    padding: 12px;
    gap: 5px;
    border-radius: 8px;
}
.tel.work i  {
    animation: ring 2s ease-in-out infinite;
}

.news-object .nophoto i {
    display: none !important;
}
nav a#no-page {
    pointer-events: none;
}
.btn-cookies-pos{
  z-index:999;
}

div#sdgdpr_modal_header .navbar-expand-lg .navbar-nav .nav-link {
    font-size: 15px;
    padding: 10px 8px !important;
      color: var(--bs-navbar-active-color);
  letter-spacing: 0;
}



.fslightboxci h2 {
    font-family: var(--bs-body-font-family);
    font-size: 17px;
    color: var(--bs-white);
    text-transform: none;
    margin: 0;
}
.d-none.btn-back-sub-gallery button.btn.btn-primary {
    font-size: 0;
}
.d-none.btn-back-sub-gallery {
    display: block !important;
    float: right;
}
.d-none.btn-back-sub-gallery button.btn.btn-primary i.fa-duotone.fa-solid.fa-chevron-left {
    font-size: 20px;
}
/****/
section.content article.content .row .col-lg-6 .photo img {
    height: 100%;
    width: 100%;
    object-fit: cover;
  
}
section.content article.content .row .col-lg-6 .photo {
    height: 100%;
  	overflow : hidden;
}

section.content.page-content.content-page  .photo {
   
    height: 100%;
}
section.content.page-content.content-page .photo img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    max-width: 100%;
    border-radius: 8px;
}


/***/
html, body {
    height: auto !important;
    min-height: 100%;
    overflow: visible !important;
    scroll-behavior: auto !important;
    padding: 0 !important;
    margin: 0 !important;
}

#scrollTopBtn {
    z-index: 999 !important;
}


/***/
@keyframes pulse {
    0% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.02);
    }
    100% {
        transform: scale(1);
    }
}

/* Float - Effet de flottement */
@keyframes right {
    0% { transform: translateX(0px); }
    50% { transform: translateX(15px); }
    100% { transform: translateX(0px); }
}

a.btn-cookies-link {
    background-color: #ffffffde !important;
    color: black !important;
}
@keyframes ring {
  0%, 100% { transform: rotate(0deg); }
  10% { transform: rotate(-15deg); }
  20% { transform: rotate(15deg); }
  30% { transform: rotate(-15deg); }
  40% { transform: rotate(15deg); }
  50% { transform: rotate(0deg); }
}
/* Animation 9: Rustle (Bruissement) */
         @keyframes rustle {
            0%, 100% {
                transform: scale(1.02) rotate(2deg);
            }
            25% {
                transform: scale(1) rotate(1deg);
            }
            50% {
                transform: scale(1.02) rotate(2deg);
            }
            75% {
                transform: scale(1) rotate(1deg);
            }
        }

/* Animation 9: Rustle Inversé (Bruissement vers bas/droite) */
@keyframes rustle2 {
    0%, 100% {
        transform: scale(0.98) rotate(-2deg);
    }
    25% {
        transform: scale(1) rotate(-1deg);
    }
    50% {
        transform: scale(0.98) rotate(-2deg);
    }
    75% {
        transform: scale(1) rotate(-1deg);
    }
}


.bloc-nav.is-sticky .navbar {
    gap: 30px;
}

section.galerie-home .nav-gallery {
    display: none;
}

/******************/
/****************** etabs ******************/
section.content.page-content.content-page ul#myTab {
  justify-content: center;
  grid-gap: 20px 0.5%;
  border: 0;
  margin: 0  0 30px;
}
section.content.page-content.content-page ul#myTab li.nav-item {
    width: 33%;
    background-image: none !important;
    margin: 0 !important;
    padding: 0 !important;
    height: auto;
}
section.content.page-content.content-page ul#myTab .nav-link {
    width: 100%;
    height: 100%;
    background: transparent;
    border-radius: 0;
    color: var(--bs-primary-color);
    font-family: var(--bs-titles-font-family);
    font-size: 20px;
    font-weight: 300;
    transition: 0.4s all;
    top: 0;
    position: relative;
    text-transform: uppercase;
    border : none !important;
    padding-top: 280px !important;
}
section.content.page-content.content-page ul#myTab .nav-link:hover, section.content.page-content.content-page ul#myTab .nav-link.active {
    color: var(--bs-tertiary-color);
   transition: 0.4s all;
	
}

section.content.page-content.content-page .tab-content>.active {
    display: block;
    padding: 40px 35px;
    margin: 20px 0;
    box-shadow: 0 0 5px 0 rgb(0 0 0 /30%);
}
section.content.page-content.content-page ul#myTab li.nav-item img {
  height: 250px !important;
  pointer-events: none;
  z-index: -1 !important;
  margin: 0;
  
}
/* ============================
   Style principal du bouton
============================ */
button.accordion-button {
    background: var(--bs-tertiary-bg) !important;
    color: var(--bs-white) !important;
    font-size: 30px;
    margin: 0;
    padding: 5px 96px 5px 5px;
    border: none;
    border-bottom: 0;
    text-transform: uppercase;
    position: relative;
    font-weight: 300;
    transition: all 0.3s ease;
    border-radius: 0 !important;
}

/* ============================
   Focus
============================ */
button.accordion-button:focus, .accordion-button:not(.collapsed), .accordion-button:hover {
    z-index: 3;
    outline: none;
    box-shadow: none;
    background:var(--bs-tertiary-color) 0% !important;
}

/* ============================
   Icône personnalisée
============================ */
button.accordion-button::before {
    content: "";
    position: absolute;
    top: 12px;
    right: 20PX;
    width: 31px;
    height: 31px;
    background: url("../images/icon-faq.webp") no-repeat center / contain;
    transition: transform 0.3s ease;
    top: 50%;
    transform: translateY(-50%);
}
/* ============================
   Rotation de l’icône quand ouvert
============================ */
button.accordion-button:not(.collapsed)::before {
    transform: rotate(180deg) translateY(50%);
}

/* ============================
   Suppression de l’icône Bootstrap par défaut
============================ */
button.accordion-button::after {
  display: none !important;
}
.accordion-item:last-of-type>.accordion-collapse , .accordion-item:last-of-type {
    border-radius: 0 !important;
}
/***/
td.price {
    max-width: 20%;
    text-align: right;
}
td em ,  ul li em {
    display: block;
    font-size: 80%;
}
a.btn-cookies-link i {
    width: 22px;
}
.contactForm .contact-field-item span.tooltip {
    opacity: 1;
}

.contactForm .contact-field-item  small.contact-field-help {
    display: none;
}
/*****/
section.content .special-offer p {
    text-align: center;
}

input[type="checkbox"] {
    accent-color: #112d65;
}

input[type="checkbox"]:checked {
    background-color:#112d65;
    border-color: #112d65;
}
input[type="radio"] {
    accent-color:#112d65;
}

input[type="radio"]:checked {
    background-color: #112d65;
    border-color:#112d65;
}
/****/
section.content .galerie-page1 {
    overflow: hidden;
}
section.content .galerie-page1 a.link-picture {
    background-size: contain !important;
    background-repeat: no-repeat;
}
section.content .galerie-page1 .swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal {
    margin-top: 20px;
    position: relative;
    text-align: center;
}
section.content .galerie-page1 .swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal span.swiper-pagination-bullet {
    height: 12px;
    width: 12px;
    background: var(--bs-tertiary-color);
}
section.content .galerie-page1 .breadcrumb {
    display: none;
}
@media only screen and (max-width : 1800px) {
.bloc-nav .navbar li {
	margin: 0 40px;

}
  section.modules::before {

	left: 5px;

}
}
@media only screen and (max-width : 1600px) {
.bloc-nav {
	padding: 0;
}
  .bloc-nav .navbar li {
	margin: 0 30px;
}
  section.modules::before {
	left: 20px;
	top: 58px;
}
  section.modules::after {

	bottom: -210px;

}
  
}
@media only screen and (max-width : 1400px) {
.bloc-nav .navbar li {
	margin: 0 20px;
}
  section.modules div#AllNews .Item {

	max-width: 1150px;
}
  section.galerie-home::after {

	opacity: 0.5;
}
footer.bottom .footer-right {
	max-width: 45%;

}
section.galerie-home .grid-gallery .link-picture::after {

	width: 50px;
	height: 50px;

}
}
@media only screen and (max-width : 1199px) {


/****/
  

  h1, .h1 , section.content.content-page h1 {
    font-size: 45px;
}
h2, .h2 , section.content.content-page h2 {
    font-size: 40px;
}
section.modules div#AllNews .Item {
	max-width: 945px;
}
  /***/
 
.bloc-nav .navbar li {
	margin: 0 12px;
}
  .navbar li a.nav-link {
	font-size: 14px;

}
  header .level-0.sf-menu > li > a.nav-link::before {
	right: -8px;
	background-size: contain;
	width: 42px;
}
  section.content .flex-home.bloc1 .photo-home::before {
	left: -7px;
}
    section.content .flex-home .cont {

	padding: 40px;

}
  section.modules::after {

	width: 450px;
	height: 350px;

}
  footer.bottom .footer-right {
	max-width: 40%;
}
  section.content:before {
    height: 175px;
    width: 200px;
}
}
@media only screen and (max-width : 991px) {
  section.content:before {
    display: none;
   
}
    footer .bloc-right {
	padding-top: 10px;
}
header.header-top .grid-top .bloc-nav::before {
	display: none;
}
header.header-top .grid-top .bloc-nav ul.level-0.navbar-nav.me-auto.sf-menu {

    display: block;
}
    header.header-top .grid-top .bloc-nav {
    padding: 0;
  }
  .bloc-top .navbar .navbar-nav> li:not(:first-of-type) > a.nav-link:after {
    display:none;
  }

    .head-top .container, .container, .max-container {
        max-width: 768px !important;
    }

  .navbar-expand-md .navbar-nav {
    margin: 0 auto 20px;
            text-align: center;
}
  .bloc-top .bloc-right {
    margin: 0 auto;
}
.navbar li a.nav-link {
    margin: 0;
    text-align: center;
    color: var(--bs-white);
    display: inline-block;
    font-size: 15px;
}
.bloc-nav .navbar li {
	margin: 0;
	text-align: center;
	display: table !important;
	margin: 0 auto !important;
	padding: 5px 0 !important;
}
     header .navbar-nav .dropdown-menu {
    transform: none;
    background: var(--bs-black);
}
  	button.navbar-toggler::after, button.navbar-toggler::before {
        background: var(--bs-white);
    }
  	button.navbar-toggler[aria-expanded="false"]:after, button.navbar-toggler[aria-expanded="false"]:before {
        transform: none;
    }
  	button.navbar-toggler .navbar-toggler-icon {
        background-color: var(--bs-white);
    }
  	button.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon {
        opacity: 0;
    }
  .dropdown-toggle {
	white-space: nowrap;
	height: 15px;
	display: block;
}
    
    header .nav-item  {
        padding: 0 0px;
    }
nav.navbar .navbar-collapse {
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	width: 100vw;
	background: var(--bs-primary-color);
	padding: 25px 0;
	text-align: left;
	z-index: 100;
}
  .navbar-nav .dropdown-menu {
	text-align: center;
	padding: 5px 0;
	background: transparent;
	border: none;
	left: 0;
	transform: none;
	border-radius: 0;
	min-width: 100%;
	/*display: block !important;*/
}

  .bloc-nav .navbar .submenu li {

	border: none;
	background: transparent;
}
  .navbar-nav .dropdown-menu .nav-item a.nav-link {
	margin: 0 !important;
}
  	header a.nav-link {
        font-size: 15px;
        display: table;
        margin: 0 auto;
    }

  nav.navbar:not(.bloc-nav.is-sticky .navbar) {
	margin-top: 0;
}

  button.navbar-toggler {
	margin: 10px 0 !important;
}
.bloc-nav .navbar li:not(:last-child):before {

    display: none;
}

  header nav.navbar.sticky-top {
	margin: 0 auto;
	display: table;
}
nav.navbar:not(.bloc-nav.is-sticky .navbar) {
    text-align: center !important;
}
.bloc-nav .navbar li span.dropdown-toggle {
    top: auto;
    height: 1em;
    left: 0;
    transform: none;
    position: relative;
    text-align: center;
}
  /*********/
  section.content.page-content.content-page a.link-picture, section.content.page-content.content-page a.link-subgallery {
      width: 32%;
  }
  /**********/
 
    h1, .h1 , section.content.page-content h1  {
    font-size: 42px;
}

h2, .h2 , section.content.content-page h2  {
    font-size: 37px;
}
h3, .h3  {
    font-size: 28px;
}
h4, .h4 {
    font-size: 25px;
}
h5, .h5 {
    font-size: 23px;
}
h6, .h6 {
    font-size: 21px;
}

  /****/

  section.content.content-second .cont {
    max-width: 100%;
}
section.content article.content .row .col-lg-4 .photo {
	height: auto;
	max-width: 450px;
	margin: 0 auto 20px;
}
  
/***/
 
  section.content.page-content.content-page a.link-picture, section.content.page-content.content-page a.link-subgallery {
    width: 49%;
}
/******/
 header.header-top .grid-top {
	flex-wrap: wrap;
	gap: 10px;
}
  header.header-top .grid-top .bloc-nav {
    order: 4;
    width: 100%;
}
  section.banner {
    height: 800px;
}
  section.banner::before {

	width: 350px;
	height: 350px;
	right: -126px;
	bottom: -50px;

}
section.banner::after {

	bottom: 155px;
	right: 46px;

	width: 150px;
	height: 150px;

	background-size: contain;
}  
  /*******/
  section.home-content   , section.modules{
    padding: 60px 0;
}
  section.content .flex-home {
    display: block;
}
section.content .flex-home .cont {
	max-width: 100%;
	padding: 20px;
}
 section.content .flex-home .photo-home {
    width: 100%;
    max-width: 500px;
    margin: 0 auto 40px !important;
    height: auto;
}
 
  section.home-content h1, section.home-content h2 , {
    margin-bottom: 20px;
}


  footer.bottom {
    padding: 60px 0 80px;
    text-align: center;
}
footer.bottom .contact-icon {
	margin: 0 auto 10px;
	display: table;
}
footer.bottom .social {
	margin: 0;
	flex-direction: column;
	gap: 10px;
}
footer.bottom .footer-right {
	width: 100%;
	max-width: 500px;
	margin: 40px auto;
}
  footer.bottom .footer-right p {

	font-size: 14px;
}
  section.content .news-object.Item h3 {
    font-size: 22px;
}

  button.accordion-button {
    font-size: 27px;
}

  header.header-top .info-top .flex-info {
	padding: 0 10px;
}
  header.header-top .info-top .flex-info .contact-item.adr {
	padding-right: 10px;
}
  section.content .flex-home:not(:first-of-type) {
	margin-top: 40px;
}
  section.modules div#AllNews .Item {

	display: block;

}
section.modules div#AllNews .Item .nophoto, section.modules div#AllNews .Item .photo {
	/* border-radius: 60px 0; */
	position: relative;
	inset: 0;
	max-width: 500px;
	margin: 0 auto 40px;
	height: 300px;
	width: 100%;
}

section.modules div#AllNews .Item .news-desc {
	max-width: 100%;
	padding: 0;
  }
  section.modules .swiper-pagination {

	left: 100%;
	bottom: 0px;

	text-align: center;
}
  section.modules  .title-section {

    top: -80px;

    font-size: 100px;

}
  section.galerie-home::after {
	opacity: 0.2;
	width: 500px;
	height: 400px;
}
  section.galerie-home .grid-gallery {

	grid-template-rows: 200px 200px;

}
  section.banner .carousel::before {
	background: linear-gradient(0deg, rgba(0, 0, 0, 0.00) 6%, rgba(0, 0, 0, 0.70) 100%);
}
  footer.bottom .contact-item.adr {
	margin:0;
}
  section.content.content-page.page-content .cont{
padding: 0;
}
.row.mt-5 {
	margin-top: 25px !important;
}
}
@media only screen and (max-width : 767px) {
   button.accordion-button {
    font-size: 25px;
}

 section.modules div#AllNews .Item h3 {
	font-size: 20px;
}
  
 section.content .col-md-4 {
        width: 100%;
    }
  div#logo {

	margin: 20px 0;
}

    /* --- */
  .contactForm .contact-field-item {
    margin: 0 0 10px !important;
    position: relative;
    display: block;
    padding: 0;
    width: 100%!important;
    float: none;
    clear: none !important;
}
    .contactForm .contact-field-item:nth-child(even) {
        padding-right: 0;
    }
    .contactForm .contact-field-item:nth-child(odd) {
        padding-left: 0;
    }
    .contactForm .contact-submit {
        float: none !important;
        margin-top: 20px;
        display: table;
    }

  
  	.img-page, section.content article .NewsMasonry .NewsItem img.img-news-list, img.img-news {
        margin-left: auto !important;
        margin-right: auto;
        display: table;
    }
  	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;
    }
  
  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 ul#myTab li.nav-item {
	width: 49%;
}
 
  .box-light, .box-border-left, .box-border-right {
	height: auto !important;
}
     h1, .h1 , section.content.page-content h1 {
    font-size: 34px;
}

h2, .h2 , section.content.content-page h2  {
    font-size: 29px;
}
h3, .h3  {
    font-size: 25px;
}
h4, .h4 {
    font-size: 22px;
}
h5, .h5 {
    font-size: 20px;
}
h6, .h6 {
    font-size: 18px;
}
 
 /****/

 
section.banner {
	height: 750px;
	max-height: 100%;
	min-height: auto;
}section.banner::before {
	width: 250px;
	height: 250px;
	right: -90px;
	bottom: -50px;
}
  section.banner::after {
	bottom: 80px;
	right: 30px;
	width: 100px;
	height: 100px;
	background-size: contain;
}
  header.header-top.interne section.banner {
    height: 650px !important;
}
section.content .flex-home.bloc1 .photo-home::before ,
  section.content .flex-home.bloc1 .photo-home::after {
	display:  none;
	
}
header.header-top .info-top .flex-info {
	padding: 10px;
	flex-direction: column;
	gap: 10px;
	text-align: center;
}
  header.header-top .info-top .flex-info .contact-item.adr {
	padding-right: 0;
	border: 0;
	height: auto;
}
  header.header-top .info-top .flex-info .contact-item.adr .sep {
	display: block;
	font-size: 0;
	height: 0;
}
  header.header-top .info-top .info-left, header.header-top .info-top .info-right {
	margin-top: 0;
}
  header.header-top .info-top .contact-item {
	gap: 10px;
	flex-direction: column;
}
  
  header.header-top .info-top .flex-info .info-right {
	
	gap: 10px;
	flex-direction: column;
}
  header.header-top .info-top .flex-info .phone {
	padding: 0;
	border: 0;
}
  header.header-top .info-top .networks_linking a.networks {
	
	line-height: 25px;
}
  header.header-top .grid-top {
	padding-top: 186px;
}
  section.banner .container {
	top: auto !important;
	bottom: 60px;
}
  footer.bottom .footer-right::before ,  footer.bottom .footer-right::after , section.modules h4::before , section.carte .bloc-carte::after , section.home-content h4::before {
	display: none;
}
  footer.bottom .social h5 {
	font-size: 22px;
}
section.modules div#AllNews .Item {
	box-shadow: none !important;
	padding: 0;
}
  section.modules .swiper-pagination {
	left: 97%;
	bottom: 0px;
	text-align: center;
}
    section.galerie-home a.link-picture {

	height: 250px;
}
      section.galerie-home .grid-gallery {
        grid-template-columns: 1fr;
        grid-template-rows: auto;
    }

    section.galerie-home .grid-gallery .link-picture:nth-child(1),
    section.galerie-home .grid-gallery .link-picture:nth-child(2),
    section.galerie-home .grid-gallery .link-picture:nth-child(3),
    section.galerie-home .grid-gallery .link-picture:nth-child(4),
    section.galerie-home .grid-gallery .link-picture:nth-child(5),
    section.galerie-home .grid-gallery .link-picture:nth-child(6){
        grid-column: 1 / 2;
        grid-row: auto;
    }
  section.modules div#AllNews .Item .nophoto, section.modules div#AllNews .Item .photo {

	box-shadow:none;
}
  footer.bottom .footer-right p {
	font-size: 12px;
}
  section.modules::before {

	display: none;
}
  section.modules  .title-section {
    position: absolute;
    font-size: 40px;

}
}
@media only screen and (max-width : 480px) {
  

  section.modules h4 , section.home-content h4 {
	letter-spacing: 0;
}
  section.modules .photo-actu::before {
	display: none;
}
  section.modules h2 {
	margin: 6px 0 10px;
}
  
  section.modules div#AllNews .Item h3 {
	font-size: 18px;
}
  .accordion-body {
    padding: 15px 10px;
}
   button.accordion-button {
    font-size: 23px;
}
 
 
  section.content .news-object.Item h3 {
    font-size: 18px;
}
 
.networks_linking a {
	font-size: 12px;
	width: 40px;
	height: 40px;
	line-height: 40px;
}
  footer.bottom .contact-item i {
	font-size: 14px;
	height: 40px;
	width: 40px;
}
  
.readmore, .Item .read-more a.button.btn.btn-primary {
	font-size: 14px;
	padding: 15px 25px;
}
section.banner {
	height: 700px;
}
  section.banner::before {
	width: 150px;
	height: 150px;
	right: -50px;
	bottom: -50px;
}section.banner::after {
	bottom: 60px;
	right: 20px;
	width: 50px;
	height: 50px;
	background-size: contain;
}

  section.carte .bloc-carte {
	padding: 30px 15px;
	gap: 15px;
}

  section.content .flex-home .cont {
	max-width: 100%;
	padding: 10px;
}
  footer.bottom .footer-right p {
	font-size: 10px;
	margin: -4px;
}

  /*****/
  	section.content.page-content.content-page .grid-gallery {
        grid-template-columns: 100%;
        grid-gap:10px;
    }
  section.content.page-content.content-page ul#myTab li.nav-item {
        width: 100%;
    }
  section.modules::after {
	width: 220px;
	height: 230px;

	left: -93px;
	bottom: -100px;
}
  	/*********/
  section.content.page-content.content-page .grid-img .grid-gallery {
        width: 250px;
    }
section.content.page-content.content-page a.link-picture, section.content.page-content.content-page a.link-subgallery {
	width: 100%;
}

 h1, .h1 , section.content.page-content h1  {
    font-size: 30px;
}
h2, .h2 , section.content.content-page h2  {
    font-size: 26px;
}
h3, .h3  {
    font-size: 23px;
}
h4, .h4 {
    font-size: 21px;
}
h5, .h5 {
    font-size: 18px;
}
h6, .h6 {
    font-size: 16px;
}

}





