/*
Wireframe: 20
Version: 2.0
Update: 2023.03.16
*/
/*--------------------------------------------------
>> TABLE OF CONTENTS:
----------------------------------------------------
# Fonts
# General
# Navigation
    ## Superfish
    ## Mobile navigation
--------------------------------------------------*/
/**************************************/
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 */
}
#scrollTopBtn {
    z-index: 999 !important;
}
/*--------------------------------------------------
# Fonts
--------------------------------------------------*/

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

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

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

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

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

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




/*--------------------------------------------------
# General
--------------------------------------------------*/
:root{
--bs-body-color:#000;
--bs-body-bg:#ffffff;
--bs-primary-color:#09090B;
--bs-primary-bg:#001523;
--bs-primary-bg1:#E8F1FC;
--bs-primary-bg2:#75ABF1;
--bs-secondary-color:#FDC905;
--bs-secondary-bg:#CBD5E1;
--bs-tertiary-color:#13253D;
--bs-tertiary-color1:#112136;
--bs-tertiary-bg:#717C8A;
--dark-color:#070E18;
--light-color:#888684;
--bs-btn-padding-x:20px;
--bs-btn-padding-y:10px;
--border-color:#E7E9EB;
--bs-nav-link-color:#ffffff ;
--bs-nav-link-color-second:#fba854;
--bs-body-font-family:'Roboto';
--bs-titles-font-family:'Montserrat';
--bs-extra-font-family:'Inter 28pt';
  --bs-extra1-font-family:'Bricolage Grotesque';
    --bs-extra2-font-family:'Rubik';
--bs-body-font-weight:400;
--bs-body-line-height:28px;
--bs-body-font-size:18px;
--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:10px!important;
}

.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: #09090B;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #13253D;
    --bs-btn-focus-shadow-rgb: 49,132,253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #13253D;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #13253D;
    --bs-btn-disabled-border-color: #13253D;
    border-radius: 0;
    border: none;
}
.box-light, .box-border-left, .box-border-right {
    padding: 20px;
    margin: 0 0 20px;
    background: var(--bs-tertiary-bg);
    border-radius: none/*var(--bs-border-radius)*/;
}
.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;
    color: var(--bs-body-bg);
	background: var(--dark-color);
	border-radius: var(--bs-border-radius);
}
.box-dark a {
    color: var(--bs-body-bg) !important;
}
.container {
	max-width: 1170px;
}
.container-fluid {
    max-width: 1632px;
}
/*--------------------------------------------------
# sideRight
--------------------------------------------------*/
/*-- CSS - part  sideRight ---*/
.sideRight {
    top: 45%;
    z-index: 99;
}
.sideRight .networks_linking {
    display: flex;
    width: 48px;
    flex-wrap: wrap;
    gap: 27px;
    margin-right: 39px;
}

.sideRight > div a {
    outline: none;
    display: block;
    width: 48px;
    height: 48px;
    font-size: 16px;
    color: var(--light-color);
    background: var(--bs-body-bg);
    text-align: center;
    line-height: 48px;
    border-radius: 50%;
    transition: all 0.6s ease;
    margin: 0;
    border: 0;
    border: 1px solid var(--bs-secondary-bg);
}
.sideRight > div a.networks.networks_google {

    order: 3;

}
.sideRight > div a.networks.networks_google::before {
    position: absolute;
    content: "";
    background: url(../images/google.webp) no-repeat center;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    pointer-events: none;
}

.sideRight > div a > div {
    font-size: 0;
}
.sideRight > .contact-fixe > a {
    background: var(--bs-tertiary-color) !important;
}
.sideRight .contact-fixe {
    margin: 10px 0;
}
.sideRight .fa-linkedin:before {
    content: "\f0e1" !important;
}
/*************/

/************/
.networks_linking a {
    font-size: 14px;
    color: var(--bs-tertiary-color);
    width: 44px;
    height: 44px;
    line-height: 44px;
    /* vertical-align: top; */
    display: inline-block;
    margin: 0;
    text-align: center;
    position: relative;
    background: var(--bs-body-bg);
    border-radius: 50%;
}
.sideRight .networks_linking a:hover {
    background: var(--bs-secondary-bg);
 
}
.sideRight .fa-facebook::before {
    content: "\f39e" !important;
    
}

header.header {
    z-index: 999;
    padding: 39px 0;
    position: absolute;
}

div#logo {
    margin-bottom: 0;
}
header.header .navbar-nav .nav-link {
    font-weight: 500;
    font-size: 15px;
    color: var(--bs-body-bg);
    text-decoration: none;
    text-transform: uppercase;
    transition: all 0.3s ease;
    padding: 27px 20px !important;
    border-radius: 0;
    letter-spacing: 1.3px;
    display: inline-block;
    font-family: var(--bs-body-font-family);
}
.navbar-nav>.nav-item:not(:first-child):before {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: -3px;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--bs-body-bg);
}

.navbar-nav>.nav-item{
	position : relative;
}

.header-wrapper {
    padding: 29px 0;
	min-height : 128px;
}

.level-0.navbar-nav {
    /*width: 1140px;*/
    justify-content: space-between;
    margin: 0 auto;
}
nav.navbar.sticky-top:not(.is-sticky) .level-0.navbar-nav {
    position: relative;
    z-index: 1;
    margin: 0 auto !important;
    border-radius: 0;
    padding: 0 70px 0 60px;
}
/*nav.navbar.sticky-top:not(.is-sticky) .level-0.navbar-nav::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 0;
    z-index: -1;
    background: url(../images/before-nav.webp) no-repeat center;
    backdrop-filter: blur(50px);
    clip-path: polygon(0 0, 97.2% 0, 100% 100%, 2.6% 100%);
    background-size: 100% 100%;
}*/
header .nav-item .dropdown-toggle {
    position: absolute;
    bottom: 25px;
    line-height: 0px;
    left: 50%;
    transform: translateX(-50%);
    color: var(--bs-body-bg);
}
.dropdown-toggle::after {
    text-align: center;
    display: table;
    margin: 0px auto 0 !important;
    content: "\f107" !important;
    font-family: 'Font Awesome 6 Pro';
    border: 0;
    color: var(--bs-body-bg) !important;
    font-size: 14px;
}

header .nav-item:hover .dropdown-toggle::after{
	 color: var(--bs-secondary-color) !important;
}

header .navbar-nav .dropdown-menu {
    border: none;
    left: 50%;
    background: #2c4d7d;
    border-radius: 0;
    padding: 0;
    width: 280px;
    right: 0;
    margin-left: -138px;
    box-shadow: 1px 1px 5px #00000042;
    color: var(--bs-body-bg) !important;    padding: 15px 5px;
}
header .navbar-nav .dropdown-menu .nav-item:not(:last-child):before {
    border-bottom: 1px solid rgb(0 0 0 / 60%);
    content: "";
    position: absolute;
    left: 33px;
    right: 33px;
    bottom: 0;
}
header nav.navbar.sticky-top:not(.is-sticky) .dropdown-menu {
    padding-top: 6px;
    padding-bottom: 6px;
}

header .navbar-nav .dropdown-menu .nav-item a.nav-link {
    color: var(--bs-body-bg);
    font-size: 14px;
    letter-spacing: 0;
    padding: 5px 2px !important;
    text-align: center;
    display: table;
    margin: 0 auto;
}
/*header .navbar-nav > li > .nav-link:hover, .bloc-top .navbar-nav > li.selected > .nav-link, */
header .navbar-nav .dropdown-menu .nav-item a.nav-link:hover, header .navbar-nav .dropdown-menu .nav-item.selected > a.nav-link {
    color: #eb762d !important;
    text-decoration: none;
}
header .navbar-nav > li > .nav-link:hover, header .navbar-nav > li.selected > .nav-link {
    /* color: var(--bs-secondary-color) !important; */

    text-decoration: underline;
}

nav.navbar.sticky-top.is-sticky {
    position: fixed;
    top: 0px;
    left: 0px;
    right: 0px;
    z-index: 1000;
    transition: 0.3s;
    padding: 10px 0 !important;
    background: var(--bs-primary-bg);
}

nav.navbar.sticky-top.is-sticky .nav-link {
    padding: 10px 53px !important;
}
nav.navbar.sticky-top.is-sticky .nav-item .dropdown-toggle {

    bottom: 5px;
}

.bloc-nav {
    position: relative;
}
/*.bloc-nav:after {
    position: absolute;
    content: "";
    background: url(../images/after-nav.webp) no-repeat top right;
    right: -15px;
    top: -12px;
    width: 42px;
    height: 36px;
    pointer-events: none;
    z-index: 3;
}
.bloc-nav:before {
    position: absolute;
    content: "";
    background: url(../images/before-nav2.webp) no-repeat bottom left;
    left: -15px;
    bottom: -5px;
    width: 154px;
    height: 24px;
    pointer-events: none;
    z-index: 4;
}*/
a#event {
    pointer-events: none;
}
.modal-header .navbar-nav .nav-link {
    color: var(--bs-body-color);
    padding: 8px 10px !important;
}
.modal-header .navbar-nav .nav-link:hover, .modal-header .navbar-nav .nav-link.active, .modal-header .navbar-nav .nav-item.selected .nav-link {
    background: transparent;
    color: var(--bs-tertiary-color);
}
/*--------------------------------------------------
# banner
--------------------------------------------------*/
section.banner {
    position: relative;
    height: 982px;
    margin: 0;
    overflow: hidden;
    max-height: 100vh;
    min-height: 700px;
}
section.banner.small {
    height: 350px;
    font-size: 100%;
    min-height: inherit !important;
    max-height: inherit !important;
}
section.banner .carousel-item:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    pointer-events: none;
    background: linear-gradient(180deg, rgba(19, 37, 61, 0.00) 20.31%, var(--Common-Primary-brand-Medium, var(--bs-tertiary-color)) 95.08%);
}

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-control-next span, section.banner .carousel-control-prev span {
	display : none;
}*/
section.banner .carousel-control-next, section.banner .carousel-control-prev {
    width: 5%;
    display: none;
}
section.banner .carousel-indicators {
    margin: 0;
    right: 0;
    left: 0px;
    bottom: 48px;
    transform: none;
    flex-direction: row;
    z-index: 3;
}
section.banner .carousel-indicators [data-bs-target]{
    margin : 0px 8px;
    padding: 0;
    width : 8px;
    height : 8px;
	border-radius: 50%;
    background : transparent;
	border : 2px solid var(--bs-body-color);
  	opacity : 1;
}
section.banner .carousel-indicators .active{
	background : var(--bs-body-color);
}
section.banner .box-overlay {
    text-align: left;
    color: var(--bs-body-bg);
    max-width: 955px;
    margin-bottom: 65px;
}
section.banner .box-overlay h6 {
    color: var(--bs-body-bg);
    font-size: 16px;
    line-height: 30px;
    letter-spacing: 8px;
    font-weight: 700;
    margin-bottom: 22px;
}
section.banner .box-overlay h2 {
    color: var(--bs-body-bg);
    font-size: 40px;
    line-height: 51px;
    margin-bottom: 22px;
}
section.banner .box-overlay .cta {
    display: table;
    margin-top: 30px;
}
section.banner .box-overlay .cta a {
    font-size: 16px;
    line-height: 24px;
    padding: 13px 28px;
    background: transparent;
    border-radius: 50px;
    border: 1px solid var(--bs-secondary-color);
    color: var(--bs-secondary-color);
    font-weight: 500;
    font-family: var(--bs-extra-font-family);
}
section.banner .box-overlay .cta a:hover {
    background: var(--bs-tertiary-bg);
    color: var(--dark-color);
    border-color: var(--bs-tertiary-bg);
}
/******************************************************************************************************/
/*--------------------------------------------------
# content home
--------------------------------------------------*/
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: 700;
    color: var(--bs-primary-color);
    margin: 0;
    text-transform: uppercase;
   
}
h1, .h1 {
    font-size: 40px;
}
h2, .h2 {
    font-size: 32px;
}
h3, .h3 {
    font-size: 28px;
   
}
h4, .h4 {
    font-size: 25px;
 
}
h5, .h5 {
    font-size: 22px;
}
h6, .h6 {
    font-size: 20px;
}
/* --- */
section.home-content {
    padding: 149px 0 72px;
}
section.content .flex-home {
    position: relative;
    display: flex;
    justify-content: space-between;
    z-index: 1;
    gap: 82px;
}
section.content .flex-home .cont {
    position: relative;
    flex: 1;
    order: -1;
    padding: 27px 0;
}
section.content .flex-home .cont p {
    margin: 0;
}
section.content .galerie-gal1 {
    width: 507px;
}
section.content .btn-home {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 74px;
    font-size: 16px;
    font-weight: 500;
    line-height: 24px;
    text-transform: none;
    text-decoration: none;
    border-radius: 100px;
    background: var(--bs-tertiary-color);
    color: var(--border-color);
    overflow: hidden;
    z-index: 1;
    font-family: var(--bs-extra-font-family);
    gap: 42px;
    margin-top: 41px;
    transition: background-color .4s ease,
        transform .3s ease,
        box-shadow .3s ease;
    width: 610px;
}
section.content .btn-home::before {
    content: "\f061";
    font-family: "Font Awesome 7 Pro";
    font-weight: 700;
    display: inline-block;
    transition: transform .35s ease;
}

section.content .btn-home:hover {
    background: var(--bs-tertiary-color1);
    transform: translateY(-3px);

}


section.content .galerie-gal1 li {
  background: none !important;
}
section.content .galerie-gal1 span.swiper-pagination-bullet {
  height: 12px;
  width: 12px;
  background:transparent;
  opacity: 1;
  margin: 0 4px;
  position: relative;
  border:2px solid var(--bs-tertiary-color);
}
section.content .galerie-gal1 span.swiper-pagination-bullet:hover, .galerie-gal1 span.swiper-pagination-bullet-active {
  background: var(--bs-tertiary-color);
  
}
section.content .galerie-gal1 .pagination-gal-1 {

  display: block;
}
section.content .galerie-gal1 nav.breadcrumb-gallery {
    display: none;
}
section.content .galerie-gal1 .grid-gallery {
    display: block;
    overflow: hidden;
}
section.content .galerie-gal1 .grid-gallery a.link-picture {
    height: 808px;
    border-radius: 28px;
    margin: 0 !important;
    margin-right: 5px !important;
}
section.content .row:has(.galerie-gal1) {
  align-items: center;
}
a.btn-cookies-link i {
    width: 22px;
}

section.content h1, section.content h2, section.content h3, section.content h4, section.content h5, section.content h6{
  margin-bottom: 20px;
}
/* Reset icône Swiper */
section.content .galerie-gal1 
.swiper-button-prev::after,
section.content .galerie-gal1 
.swiper-button-next::after {
    content: "";
    display: block;
    width: 32px;
    height: 64px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

/* SVG */
section.content .galerie-gal1 .swiper-button-prev::after {
    background-image: url("/smarty/wireframe30/media/images/prev.svg");
}

section.content .galerie-gal1 .swiper-button-next::after {
    background-image: url("/smarty/wireframe30/media/images/next.svg");
}
section.content .galerie-gal1 
.swiper-button-prev, section.content .galerie-gal1 
.swiper-button-next {
    position: absolute;
    width: 48px;
    height: 64px;
    right: 20px;
    bottom: 12px;
    top: auto;
    left: auto;
    transform: none;
    background: transparent;
    transition: background .3s ease, transform .3s ease;
}

/* Espacement horizontal */
section.content .galerie-gal1 .swiper-button-prev {
    right: 80px;
}

section.content .galerie-gal1 .swiper-button-next {
    right: 20px;
}


section.content .galerie-gal1 .swiper-button-prev:hover, section.content .galerie-gal1 .swiper-button-next:hover {
    opacity: 0.5;
}
/****/
/* --- */
section.content .galerie-page {
	position: relative;
	overflow: hidden;
	margin-top: 40px;
}
section.content .galerie-page .swiper-pagination2 {
    position: relative !important;
    margin-top: 10px !important;
    text-align: center;
}
section.content .galerie-page .swiper-pagination2 .swiper-pagination-bullet {
	background: transparent;
	opacity: 1;
	width: 12px;
	height: 12px;
	border: 2px solid var(--dark-color);
	margin: 0 8px !important;
}
section.content .galerie-page .swiper-pagination2 .swiper-pagination-bullet-active {
    opacity: 1;
    background: var(--dark-color);
}
section.content .grid-gallery {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;

}
section.content a.link-picture, section.content.page-content.content-page a.link-subgallery {
    display: block;
    width: 32%;
    background-size: cover;
    background-position: center;
    height: 400px;
    cursor: zoom-in;
    position: relative;
    transition: transform .4s,box-shadow .4s;
    margin-bottom: 0;
    background-repeat: no-repeat;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    overflow: hidden;
}
section.content .galerie-interne a.link-picture {
    height: 280px;
    width: 23.6%;
}
section.content .pagination {
    margin-top: 20px;
    justify-content: center;
    flex-wrap: wrap;
}
section.content .pagination li {
	background-image: none !important;
	margin: 0 !important;
	padding: 0;
}
section.content .pagination .page-link {
	color: var(--bs-secondary-bg) !important;
	background: var(--light-color);
	border-color: var(--bs-secondary-bg);
}
section.content .pagination .active > .page-link, section.content.page-content.content-page .pagination .page-link.active {
	color: var(--light-color) !important;
	background: var(--bs-tertiary-color) !important;
	border-color: var(--bs-tertiary-color);
}
section.content .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 span.title-subgallery {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	padding: 10px;
	color: var(--light-color);
	text-align: center;
	background: rgba(0,0,0,0.7);
	display: flex;
	justify-content: center;
	align-items: center;
}
section.content .title-picture, section.content .text-picture {
	display: none;
}
.breadcrumb-gallery .breadcrumb {
	justify-content: center;
}
section.content.first.content-page {
	background: transparent;
}
section.content.first.content-page h2 {
	margin-bottom: 15px;
}
.img-responsive {
	max-width: 100%;
}
section.content ul {
	padding: 0;
}
section.content ul li {
	background: url(/smarty/wireframe20/media/images/bullet.webp) no-repeat left 10px;
	padding-left: 20px;
	background-size: 12px;
}
section.content .box-dark ul li{ 
    background-image: url(/smarty/wireframe20/media/images/bullet2.webp);
}
section.content ul li::marker{
	content: "" !important;
}
h3.contact-field {
    display: none;
}
/**
 * ----------------------------------------
 * animation rotate-vert-center
 * ----------------------------------------
 */
@-webkit-keyframes rotate-vert-center {
  0% {
    -webkit-transform: rotateY(0);
            transform: rotateY(0);
  }
  100% {
    -webkit-transform: rotateY(360deg);
            transform: rotateY(360deg);
  }
}
@keyframes rotate-vert-center {
  0% {
    -webkit-transform: rotateY(0);
            transform: rotateY(0);
  }
  100% {
    -webkit-transform: rotateY(360deg);
            transform: rotateY(360deg);
  }
}

/********************************************************************
			Gallery Section selon Guide Galerie avec Swiper 
*********************************************************************/
.galerie-home {
    padding: 72px 0 200px;
}
.galerie-home:before {
    content: "";
    position: absolute;
    inset : 0;
    background: url(../images/bg-gal.webp)no-repeat center top;
    background-size: cover;
    z-index : 0;
	opacity: 0.15;
    pointer-events : none;
}
.galerie-home:after {
    content: "";
    position: absolute;
    top: -1px;
    left: 0;
    right: 0;
    height: 28px;
    background: url(../images/after-gal.webp)no-repeat center bottom;
    background-size: 100% 100%;
    pointer-events: none;
}
 
 
.galerie-home h4{
	margin-bottom: 0px;
	color: var(--dark-color);
	font-size: 30px;
	letter-spacing: 3px;
	text-transform: uppercase;
}
.galerie-home h4:before {
    content: "";
    display: block;
    width: 42px;
    height: 39px;
    background: url(/smarty/wireframe30/media/images/bg-h-gal.svg) no-repeat center;
    background-size: contain;
    margin: 0 auto 10px;
    animation: phone-ring 3s infinite ease-in-out;
}
.galerie-home h2 {
    margin-bottom: 50px;
    font-size: 32px;
}
.galerie-home nav.breadcrumb-gallery, .galerie-home  .nav-gallery{
	display  : none;
}
.galerie-home .grid-gallery{
	position: relative;
	overflow : hidden;
	height: 637px;
}
 
 
.galerie-home .gallery-item {
    overflow: hidden;
    border-radius: 0;
    height: 100%;
}
.galerie-home .link-picture {
    position: absolute;
    display: block;
    text-decoration: none;
    font-size: 0;
    height: 661px;
    width: 100%;
    background-size: cover;
    border-radius: 0;
    transition: transform 0.3s ease;
    margin: 0;
}
.galerie-home .link-picture:nth-child(3) {
    bottom: 0;
    right: 0;
    width: 32.17%;
    height: 309px;
}
.galerie-home .link-picture:nth-child(1) {
    bottom: 0;
    right: calc(32.17% + 20px);
    width: 32.17%;
    height: 309px;
}
.galerie-home .link-picture:nth-child(2) {
    top: 0;
    right: 0;
    height: 309px;
    width: 66.08%;
}
.galerie-home .link-picture:nth-child(4) {
    top: 0;
    left: 0;
    height: 637px;
    width: 32.25%;
}
 



.galerie-home .swiper-button-prev.prev-gal2::after,.galerie-home .swiper-button-next.next-gal2::after {
    font-size: 0px;
    display: block;
    width: 28px !important;
    height: 28px !important;
    line-height: 28px;
}
.galerie-home .swiper-button-prev.prev-gal2::after {
    background : url(/smarty/wireframe30/media/images/prev-gal1.svg)no-repeat center ;
}
.galerie-home .swiper-button-next.next-gal2::after {
    background : url(/smarty/wireframe30/media/images/next-gal1.svg)no-repeat center ;
}
.galerie-home .swiper-button-prev.prev-gal2, .galerie-home .swiper-button-next.next-gal2 {
    position: absolute;
    left: 50% !important;
    bottom: -60px;
    top: inherit;
    transform: translate(0);
    right: unset;
    margin: 0px;
    display: inline-block;
    width: 28px;
    height: 28px;
    line-height: 28px;
    border: none;
    background: var(--bs-body-bg);
    border-radius: 50%;
    border: 1px solid var(--bs-secondary-bg);
}
.galerie-home .swiper-button-prev.prev-gal2:hover, .galerie-home .swiper-button-next.next-gal2:hover {
    background: var(--bs-secondary-bg);
}
.galerie-home .swiper-button-prev.prev-gal2 {
    margin-left: -40px;
}
.galerie-home .swiper-button-next.next-gal2 {
    margin-left: 20px;
}

/*--------------------------------------------------
# contact-page
--------------------------------------------------*/

/*******************/
section.Contact {
    padding: 72px 0;
    background:  linear-gradient(0deg, rgba(255, 255, 255, 0.00) 85.69%, #FFF 100%), url(../images/bg-contact.webp) no-repeat center;
    background-size: cover;
}

section.Contact h2 {
    font-size: 40px;
}
section.Contact h2 {
    margin-bottom: 25px;
    color: var(--bs-body-bg);
    text-align: center;
    font-size: 40px;
    font-weight: 400;
    text-transform: none;
}
section.Contact .flex-contact {
    gap: 33px;
    position: relative;
    z-index: 1;
}
section.Contact .img-left {
    max-width: 573px;
    order: 2;
}
section.Contact .img-left img {
    clip-path: polygon(90% 0, 100% 17%, 100% 100%, 0 100%, 0 0);
    width: 100%;
    max-width: 100%;
    height: 100%;
    border-radius: 0;
    object-fit: cover;
}
/*section.Contact .img-left:before {
    content: "";
    position: absolute;
    top: -70px;
    right: -55px;
    background: url(../images/before-img1.webp) no-repeat right top;
    pointer-events: none;
    z-index: 2;
    opacity: 1;
    width: 162px;
    height: 201px;
}*/
section.Contact .cont-text {
    max-width: 561px;
    position: relative;
    padding: 26px 20px 37px 30px;
}
section.Contact .cont-text:before {
    position: absolute;
    content: "";
    inset: 0;
    z-index: -1;
    border-radius: 25px;
    border: 1px solid #FFF;
    background: rgba(19, 37, 61, 0.67);
    backdrop-filter: blur(2px);
}

section.Contact .contact-submit {
    display: inline-block;
    position: relative;
    grid-column: 1 / 3;
}
section.Contact .contactForm .contact-submit .btn-primary {
	color: #13253d;
	padding: 5px 35px;
	font-size: 14px;
	font-weight: 500;
	line-height: 24px;
	display: block;
	text-transform: none;
	position: relative;
	text-decoration: none;
	transition: transform 0.6s, opacity 0.6s;
	margin-top: 0;
	z-index: 1;
	background: var(--bs-secondary-color);
	border: 1px solid white;
	background-size: 100% 100%;
	border-radius: 100px;
	font-family: var(--bs-extra-font-family);
	width: 100%;
}
/* Effet hover */
section.Contact .contactForm .contact-submit:hover .btn-primary {
    background: var(--bs-tertiary-bg);
    color: var(--dark-color);
    border-color: var(--bs-tertiary-bg);

}

/* Animation de la flèche lors du hover */
section.Contact .contactForm .contact-submit:hover::after {
    transform: translateY(-50%) translateX(5px);
}
section.Contact .form-control {
    padding: 6px 12px;
    border-radius: 8px;
}
section.Contact .form-control:focus {
    border: 1px solid var(--bs-primary-bg2)  !important;
    background: var(--bs-primary-bg1);
}
section.Contact .form-control::placeholder {
    color: var(--bs-body-color) !important;
}
section.Contact label.form-label a {
    color: var(--bs-body-bg);
    text-decoration: none;
}
section.Contact label.form-label a:hover {
  text-decoration: underline;
}
section.Contact textarea.form-control {
    height: 107px;
}

.box-light.vCard .tel.work > a {
    text-decoration: none !important;
}

.box-light.vCard .tel.work > a:hover {
    text-decoration: underline;
}
section.Contact .contactForm .gdpr {
    clear: both;
    display: table;
    margin: 15px 0 0;
    color: var(--bs-white);
    grid-column: 1 / 3;
}
section.Contact label.form-label {
    color: var(--bs-body-bg);
}
/*--------------------------------------------------
# contact-page
--------------------------------------------------*/
.contactForm .contact-field-item {
    margin: 0 0 0px !important;
    position: relative;
    display: block;
    padding: 0;
    margin-bottom: 0 !important;
    width: 100%;
    float: none;
    clear: none !important;
}
form#contactForm_1 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
}
.contactForm .contact-field-item.colleft {
	padding-right: 0;
}
.contactForm .contact-field-item.colright {
	padding-left: 0;
}
.contactForm .contact-field-item:nth-child(even) {
    padding-right:0;
}
/* Champs impairs */
.contactForm .contact-field-item:nth-child(odd) {
    padding-left: 0;
}
div#contact-field-id_single_line_text_2 {
    grid-column: 1 / 3;
}
div#contact-field-id_phone_1 {
    grid-column: 1 / 3;
}
.contactForm .contact-field-item.fullwidth {
    width: 100%;
    padding: 0 !important;
    float: none;
    clear: both !important;
    grid-column: 1 / 3;
}
div#contact-field-id_single_line_text_3 {
    padding-left: 0;
    padding-right: 0;
}
section.newsletter-home div#NewsletterLastNameHeader, section.newsletter-home div#NewsletterFirstNameHeader, section.newsletter-home label.form-label {
    display: none;
}

.form-control, section.content .contactForm .contact-field-item .contact-field-element .form-field {
    font-weight: 500;
    line-height: 24px;
    color: var(--bs-primary-color) !important;
    background: var(--bs-body-bg);
    padding: 5px 15px;
    transition: border-color .4s,color .4s;
    border-radius: 0px;
    outline: none !important;
    font-size: 16px;
}

.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-body-bg) !important;
    box-shadow: 0 0 8px var(--bs-body-color)!important;
}
.contactForm .g-recaptcha {
    z-index: 999 !important;
    position: relative;
}
.contactForm .contact-submit {
    float: none!important;
    margin-top: 0;
}
.contactForm .contact-submit .btn-primary, section.content .contactForm .form-submit-button {
    position: relative;
    font-family: var(--bs-body-font-family);
    line-height: 24px;
    font-weight: 600;
    color: var(--bs-body-bg);
    letter-spacing: 0;
    background: var(--bs-secondary-color);
    padding: 14px 32px;
    font-size: 16PX;
    display: inline-block;
    text-decoration: none;
    text-transform: uppercase;
    border-radius: 0;
}

.contactForm .contact-submit:hover .btn-primary, 
section.content .contactForm .contact-submit:hover .form-submit-button {
    transition: 0.3s all;
  
    transform: scale(0.95); 
   
}
/* Bloc global */
.contactForm .contact-field-type_multiple {
    margin-bottom: 30px;
}
.contactForm .contact-field-type_multiple > .form-label {
    display: block;
    margin-bottom: 13px;
    color: var(--bs-body-bg);
    font-size: 20px;
    font-weight: 600;
}

.contactForm .contact-field-type_multiple {
    display: block;
}
.contactForm .contact-field-type_multiple .form-check {
    display: flex;
    align-items: center;
    margin-bottom: 16px;
    gap: 15px;
}

.contactForm .contact-field-type_multiple {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 16px;
    grid-column: 1/3;
}

.contactForm .contact-field-type_multiple > .form-label {
    grid-column: 1 / -1;
}

/* Alignement radio */
.contactForm .contact-field-type_multiple .form-check-input {
    margin-top: 0.2em;
    cursor: pointer;
}
.contactForm .contact-field-type_multiple .form-check-label {
    font-weight: 400;
    color: var(--bs-body-bg);
    font-size: 16px;
}
/* --- */
.img-page img, .img-news img {
}
section.content.page-content.content-page .img-page  img {
    border-radius: 20px;
}
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: 30px;
}
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: 300px;
    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-top: 20px;
}
.fslightboxci h2 {
    color: var(--bs-body-bg);
    font-size: 30px;
}
section.content.page-content.content-page .link-subgallery:hover, 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;
}
section.content.page-content.content-page .pagination .page-link {
    color: var(--bs-body-color) !important;
}
section.content.page-content.content-page .pagination .disabled>.page-link, section.content.page-content.content-page .pagination .page-link:focus {
    background: var(--light-color);
}
section.content.page-content.content-page .pagination .active>.page-link, 
section.content.page-content.content-page .pagination .page-link:hover, 
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 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.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 li{
	text-align : justify;
}
section.content.page-content.content-page li{
	background: url(../images/bullet.webp)no-repeat left 10px;
	padding-left: 20px;
	margin-left: -20px;
}
section.content.page-content.content-page li::marker{
	content: "" !important;
}
h3.contact-field {
    display: none;
}
.nav-gallery .btn-back-sub-gallery {
    display: block !important;
    float: right;
}
.nav-gallery .btn-back-sub-gallery button.btn.btn-primary {
    font-size: 0;
}
.nav-gallery .btn-back-sub-gallery button.btn.btn-primary i.fa-duotone.fa-solid.fa-chevron-left {
    font-size: 20px;
}
.fslightboxci h2 {
 
}
.news-abstract {
  display: block !important;
}
section.content.page-content.content-page a.text-decoration-none {
    color: var(--bs-black);
    text-decoration: none;
    transition: color 0.3s ease, text-decoration 0.3s ease;
}

section.content.page-content.content-page a.text-decoration-none:hover {
    color: var(--bs-primary-bg); 
    text-decoration: underline !important;
}

/*--------------------------------------------------
# footer
--------------------------------------------------*/
footer.bottom {
    padding: 70px 0 65px;
    background: var(--bs-primary-bg);
    color: var(--bs-body-bg);
}
footer.bottom p {
    font-size: 16px;
}

footer.bottom .footer-right {
    position: relative;
    border-radius: 30px;
    /* overflow: hidden; */
    height: 251px;
}
/*footer.bottom .footer-right:before {
    position: absolute;
    content: "";
    background: url(../images/before-map.webp) no-repeat bottom left;
    left: -48px;
    bottom: -35px;
    pointer-events: none;
    width: 106px;
    height: 132px;
    z-index: 2;
}
footer.bottom .footer-right:after {
    position: absolute;
    content: "";
    background: url(../images/after-map.webp) no-repeat right top;
    right: -68px;
    top: -7px;
    pointer-events: none;
    width: 183px;
    height: 33px;
    z-index: 2;
}*/
footer.bottom .footer-right img {
    height: 100%;
    width: 100%;
    max-width: 100%;
    object-fit: cover;
    border-radius: 30px;
}
footer.bottom .footer-logo {
    margin: 0 0 34px;

}
footer.bottom .footer-right {
    position: relative;
    border-radius: 30px;
    /* overflow: hidden; */
    height: 251px;
    margin-top: 36px;
}
footer.bottom .footer-map img{
	border-radius: 20px;
}

footer.bottom.footer-interne {
    border-top: 2px solid var(--bs-tertiary-color);
}
footer.bottom .footer-title{
	color : var(--bs-tertiary-color);
	font-size: 20px;
	font-family : var(--bs-body-font-family);
	font-weight: 500;
	margin-bottom : 28px;
}
footer.bottom .footer-address, footer.bottom .footer-tel, footer.bottom .footer-horaires {
    display: flex;
    gap: 32px;
    align-items: center;
    font-size: 14px;
    font-family: var(--bs-extra2-font-family);

}
footer.bottom .footer-tel {
    margin: 8px  0 0;
}
footer.bottom .footer-horaires p{
	margin: 0;
}
.footer-icon {
    position: relative;
    margin: 0;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--bs-body-bg);
    font-size: 14px;
}
.footer-horaires .footer-icon:before , .footer-address .footer-icon:before , .footer-tel .footer-icon:before {
    content: "";
    position: absolute;
    top: -15px;
    right: 0;
    left: 0;
    bottom: 0;
    background: url("/smarty/wireframe30/media/images/icon-hor.svg") no-repeat center;
    width: 24px;
    height: 24px;
}
.footer-tel  .footer-icon:before {

    background: url("/smarty/wireframe30/media/images/icon-tel.svg") no-repeat center;

}
 .footer-address .footer-icon:before {

    background: url("/smarty/wireframe30/media/images/icon-adr.svg") no-repeat center;

}
footer.bottom .footer-tel {
  	font-weight: 700;
  	text-decoration: none;
  	font-size: 16px;
}
footer.bottom .footer-tel a {
    color: var(--bs-body-bg) !important;
    font-size: 15px;
    font-weight: 700;
}
footer.bottom .footer-tel a:hover {
    color: var(--bs-secondary-color) !important;
}
footer.bottom .social {

    display: inline-flex !important;

}
footer.bottom .networks_linking a {
	font-size: 14px;
	color: var(--bs-body-bg);
	width: 105.2px;
	height: 24px;
	line-height: 24px;
	/* vertical-align: top; */
	display: block;
	margin: 0;
	text-align: left;
	position: relative;
	background: transparent;
	border-radius: 50%;
	font-size: 20px;
	margin-bottom: 16px;
}
footer.bottom a.networks:after {
    position: absolute;
    top: 50%;
    left: 70px;
    transform: translate(-50%, -50%);
    font-size: 14px;
    color: var(--bs-body-bg);
    pointer-events: none;
}

/* Contenus spécifiques */
footer.bottom a.networks_facebook:after {
    content: "Facebook";
}
footer.bottom a.networks_instagram:after {
    content: "Instagram";
}
footer.bottom a.networks_linkedin:after {
    content: "Linkedin";
}
footer.bottom .networks_linking .networks_google {
    order: 3;
    display: none;
}
.footer-b {
	display: none;
}

.footer-b {
	display: none;
}
.footer-nav {
    background: var(--bs-primary-bg);
    background-size: cover;
}
.footer-nav a {
    color: var(--bs-body-bg);
}
.footer-nav small {
    color: var(--bs-white)!important;
}
footer.bottom  h5 {
    color: var(--bs-body-bg);
    font-size: 20px;
    font-weight: 800;
    text-transform: none;
    margin-bottom: 16px;
    font-family: var(--bs-extra1-font-family);
}


/*************************************************************************************/

/***************************************************************/
/*********************/
section.content .maps {
	position: relative;
}
section.content .maps a {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
  	font-size: 0;
  	z-index: 3;
}

/*********************/
section.content .maps {
	position: relative;
}
section.content .maps a {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
  	font-size: 0;
  	z-index: 3;
}
.tel.work a.readmore {
    text-decoration: none;
    padding: 15px;
    background: var(--bs-tertiary-color);
    color: var(--bs-white);
    display: table;
    font-weight: 600;
    clip-path: polygon(0 0, 100% 0%, 91% 100%, 0% 100%);
}
.tel.work a.readmore:hover {
    background: var(--bs-secondary-color);
}
/* - news - */
section.content article .NewsMasonry .NewsItem{
  background : var(--bs-secondary-bg);
}
section.content article .NewsMasonry .NewsItem img.img-news-list, img.img-news{
    max-width:180px!important;
    height: 170px!important;
    border-radius: 0 20px 0 0;
}
section.content article .NewsMasonry .NewsItem img.img-news-list.default {
    object-fit: scale-down !important;
    background: var(--bs-body-bg);
      padding: 10px;
}
section.content-page .date {
    font-size: 18px;

}
section.content-page .date small {
    color: var(--bs-body-color)!important;
}
.backbtn  {
    color: var(--bs-primary-color)!important;
}
.backbtn:hover {
    color: var(--bs-tertiary-color) !important;
}

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

.img-responsive {
	max-width: 100%;
}

section.content.page-content.content-page li{
	background: url(../images/bullet.webp)no-repeat left 10px;
	padding-left: 20px;
	margin-left: -20px;
}
section.content.page-content.content-page li::marker{
	content: "" !important;
}
/******/
section.content.page-content .mcePxmNewsFaq .col-12.col-title-faq h2 {
    display: none;
}
section.content.page-content .mcePxmNewsFaq .accordion-button:not(.collapsed) {
    background: var(--bs-tertiary-color);
    color: var(--bs-white);
    box-shadow: none;
  font-size: 0.4em;
    font-weight: 600;
}
section.content.page-content .mcePxmNewsFaq .accordion-item {
    border-color: var(--bs-seconadry-color);
}
section.content.page-content .mcePxmNewsFaq button.accordion-button.collapsed {
    box-shadow: none;
    font-size: 0.4em;
    font-weight: 600;
}

/**************************************************************/
section.content.page-content.content-page .grid-home img {
    border-radius: 20px;
}
section.content.page-content.content-page .grid-home {
    grid-gap: 30px;
}
section.content.page-content.content-page .grid-home .grid-img.w-25 {
    width: 45% !important;
}
section.content.page-content.content-page .txt-part-center{
    text-align: center;
    margin: 0 auto 50px;
}

/*********************************/
#scrollTopBtn {
    position: fixed;
    right: 50%!important;
    bottom: 60px!important;
    transform: translateX(50%)!important;
    z-index: 9999 !important;
    font-size: 14px;
    line-height: 1.2em;
    border: none;
    outline: 0;
    color: #fff;
    cursor: pointer;
    padding: 10px 15px;
    border-radius: 4px;
    pointer-events: none;
    opacity: 1;
    background-color: #003559b3!important;
    transition: opacity .4s, background .4s;
}
#NewsItems .news-col {
  margin-bottom: 20px;
}
div#pageactus .nav-tabs li.nav-item{
 width:100% !important; 
}
.link-picture{
     height: 250px;
    width: 250px;
    display: block;
  float:left;
  margin-left:10px;
}

.nav-gallery{clear:both;}


.fslightboxci h2 {
    font-family: var(--bs-body-font-family);
    font-size: 17px;
    color: var(--bs-white);
    text-transform: none;
}

.three-blocks {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 30px;
  margin-top: 25px;
}
.three-blocks .service-card {
    flex: 0 0 calc(32% - 30px);
    text-align: center;
    position: relative; transition: all 0.3s ease;
}
.three-blocks .service-card img {
    height: 280px !important;
    width: 100%;
    object-fit: cover !important;
}
.three-blocks .service-card h2 {
    font-size: 26px;
    margin: 20px auto; transition: all 0.3s ease;
}
.three-blocks .service-card .link {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 3;
    font-size: 0;
}
.three-blocks .service-card:hover h2 {
    color: #b05217 !important;
}
.three-blocks .service-card:hover {
            transform: translateY(-8px);
        }



.tab-content {
    background-color: white;
    padding: 30px 8px;
    border-top: none;
    border-radius: 0;
}
      .nav-tabs {
    border-bottom: 2px solid #dee2e6;
    justify-content: center;
}
        .nav-tabs .nav-link {
            color: #6c757d;
            font-weight: 500;
        }
        .nav-tabs .nav-link.active {
            color: #b05217;
            border-bottom: 3px solid #b05217;
        }
.nav-tabs li.nav-item {
    background: none !important;
    padding: 0 !important;
    margin: 0 !important;
}
.nav-tabs .nav-link {
    color: #2a4d7d;
    font-weight: 700;
    font-size: 16px;
}
/* -------------------- */

@media only screen and (max-width : 1440px) {
section.content .galerie-gal1 {
	width: 450px;
}
  
  .sideRight .networks_linking {
	width: 48px;
	gap: 10px;
	margin-right: 5px;
}
  .sideRight {
	top: 35%;
}
  
  
  
}
   @media only screen and (max-width : 1199px) {
     .sideRight > div a {
	width: 40px;
	height: 40px;
	line-height: 40px;
}
     .sideRight .networks_linking {
	width: 40px;
	gap: 5px;
	margin-right: 5px;
}
section.content .flex-home {

	gap: 20px;
}
    section.content .galerie-gal1 {
	width: 340px;
} 
    footer.bottom .footer-logo {

	max-width: 300px;
} 
     
     
     section.home-content {
	padding: 75px 0 72px;
}
     
     
     
     
     
     
     
}
@media only screen and (max-width : 991px) {
  .grid-head {
	gap: 25px;
	display: block;
}
  div#logo img {
	max-width: 280px !important;
	width: 100%;
}
  div#logo {
	margin-bottom: 15px;
}
  header.header {

	padding: 10px 0;
}
     .head-top .container, .container, .max-container {
        max-width: 768px;
    }

  .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath stroke='rgba(0,0,0,0.8)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M6 6l18 18M24 6L6 24'/%3E%3C/svg%3E");
}
	section.content.page-content.content-page h1, section.content.page-content.content-page h2, section.content.page-content.content-page h3 {
    line-height: 1.2em;
}
  button.accordion-button::before {
    content: "";
    top: 50%;
    transform: translateY(-50%);
}
  button.accordion-button:not(.collapsed)::before {
    transform: rotate(180deg) translateY(50%);
}
  .header-wrapper {
      padding: 10px 0;
      min-height: auto;
  }
  .navbar {
   
      justify-content: center;
  }
  header.header .navbar-nav .nav-link {
    text-align: center;
    display: table;
        margin: 0 auto;
    padding: 10px 15px !important;
}
  
  .level-0.navbar-nav {
      width: auto;
  }
 header nav.navbar.sticky-top:not(.is-sticky) .navbar-collapse  {
  
  /* transform: translateX(calc(-50% - 93px));*/
}
  .level-0.navbar-nav {
    width: auto;
}
  header nav.navbar.sticky-top.is-sticky {
    
    justify-content: center;
  }
nav.navbar.sticky-top .navbar-collapse {
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50% );
	width: 100vw;
	background: #325588;
	padding: 10px 0;
	text-align: left;
	z-index: 100;
}
  .navbar-toggler {
    background: var(--bs-secondary-bg) !important;
    /* position: static !important; */
    padding: 5px !important;
    border-radius: 8px;
}
 nav.navbar.sticky-top:not(.is-sticky) .level-0.navbar-nav {
    background: transparent;
    padding: 0;
    border: 0;
}
  .navbar-nav>.nav-item:not(:first-child):before{
    display : none;
  }
  nav.navbar.sticky-top:not(.is-sticky) .level-0.navbar-nav::before{
    display : none;
  }
  header .nav-item .dropdown-toggle {
      display: table !important;
      margin: 0 auto;
  }
  
  
  /****************/
  .bloc-nav::before ,  .bloc-nav::after{
display:none;
}
  .sideRight .networks_linking {

	width: 36px;

	margin-right: 2px;
}
  .sideRight > div a {
	outline: none;
	display: block;
	width: 36px;
	height: 36px;
    line-height:36px;
	font-size: 14px;

}
  footer.bottom .footer-logo {
	margin: 0 0 34px;
	max-width: 300px;
}
  /*********/
  section.content.page-content.content-page a.link-picture, section.content.page-content.content-page a.link-subgallery {
      width: 32%;
  }
section.banner .box-overlay h2 {

	font-size: 30px;

}section.banner .box-overlay h6 {

	letter-spacing: 5px;

}
  /**********/
 section.home-content.content-home h1::after {

	font-size: 200px;

  }

  section.content .flex-home {
	display: block;

}
section.content .flex-home .photo-home, section.content.content-first.second .flex-home.bloc3 .photo-home {
	max-width: 500px;
	margin: 0 auto;
	margin-bottom: 20px;
	position: relative;
	display: table;
}
  section.content .flex-home .cont {
	position: relative;
	padding: 0;
	max-width: 100%;
}
section.content.content-first .photo-home::before, section.Contact .img-left::before {
	top: -55px;
	right: -15px;

}
  
section.content.content-first {
	padding: 80px 0 60px;
}
section.content.content-first .flex-home h2  , section.modules h2 {
	margin-bottom: 20px;
}
section.content.content-first.second .flex-home.bloc2 .photo-home::before {
	top: -38px;
	left: -27px;
	width: 80px;
	height: 130px;
}
  section.content.content-first.second .flex-home .photo-home img {
	clip-path: polygon(8% 0, 100% 0, 100% 100%, 0 100%, 0 15%);
}
section.home-news .swiper-pagination-bullets.swiper-pagination-horizontal {
	bottom: -40px;
}
  section.formhome .grid-home {
	display: block;
}
section.Contact .cont-text {
	max-width: 100%;
	padding: 20px;
	position: relative;
	margin: 0 auto;
}
section.Contact .img-left {
	max-width: 500px;
	margin: 60px auto 0;
	position: relative;
}
  section.Contact h2 {
	font-size: 30px;
	text-align: center;
}
  section.Contact .photo-home1 {
	width: 160px;
	height: 250px;
}
section.home-news div#AllNews .Item .news-desc .read-more a {
	padding: 10px 30px 10px 20px;
	letter-spacing: 0;
	font-size: 15px;
}
  div#AllNews .Item .news-desc span {
	font-size: 20px;
  }
section.content.content-first .photo-home::before, section.Contact .img-left::before {
	top: -40px;
	right: -15px;
  width: 90px;
    height: 175px;
}


  .news-object.Item {

	min-height: 450px;

}
footer.bottom .footer-logo, footer.bottom .social {
	margin-bottom: 30px;
	margin: 0 auto 20px;
}
  footer.bottom .social {

	margin-left: 0;
}

  /***/
footer.bottom {
	text-align: center;
	padding: 60px 0;
}
  footer.bottom .footer-left {
    max-width: 100%;
}
  footer.bottom .footer-address, footer.bottom .footer-tel, footer.bottom .footer-horaires {
    justify-content: center;
    flex-direction: column;
}
footer.bottom .footer-right {
	max-width: 500px;
	margin: 0 auto 40px;
}

footer.bottom .footer-address, footer.bottom .footer-tel, footer.bottom .footer-horaires {

	gap: 15px;

}
  footer.bottom h5 {

	margin-bottom: 25px;

}
/********************/
section.formhome .grid-home h2 {
	text-align: center;

}
 section.formhome .grid-home .text {
	padding: 20px;
}
  .formhome .grid-home .text .form-home {

	max-width: 100%;
}
 /*****************/
        section.content.page-content.content-page .grid-home .grid-img {
      margin: 0 auto 50px;
      height: 100% !important;
      max-width: 400px;
      width: 100% !important;
  }
  .box-light, .box-border-left, .box-border-right {

	text-align: center;
}

  section.content.page-content.content-page .grid-home .text-part {
    width: 100% !important;
}

section.banner {
	height: 750px;
}

  section.content .row .col-lg-4 > .photo {
	height: auto;
	max-width: 600px;
	margin: 0 auto 30px;
}
  header .nav-item .dropdown-toggle {
    position: relative;
    inset: 0;
    transform: none;
    margin: 0 auto 10px;
    display: table;
}
  header .navbar-nav .dropdown-menu {
    margin: 0 auto;
    width: 100%;
    max-width: 280px;
}
  section.content.content-first.second .photo-home1 {
	display:none;
}
  .content.page-content.content-page .social {
	margin: 0 auto;
}
  .content .row > .col-lg-8 > .cont {
	padding: 0;
}
  
       h1, .h1 {
    font-size: 40px;
}
h2, .h2 {
    font-size: 30px;
}
h3, .h3 {
    font-size: 26px;
}
h4, .h4 {
    font-size: 23px;
}
h5, .h5 {
    font-size: 21px;
}
h6, .h6 {
    font-size: 19px;
}
  section.home-content ,.galerie-home ,section.Contact{
	padding: 60px 0;
}
  section.content .galerie-gal1 .grid-gallery a.link-picture {
	height: 500px;
	width: 100% !important;
	margin: 0 auto;
	text-align: center;
	display: table;
}
  section.content .galerie-gal1 {
	width: 100%;
	margin: 0 auto 20px;
}
   .galerie-home .grid-gallery {
        height: 500px;
    }
.galerie-home .link-picture:nth-child(1), .galerie-home .link-picture:nth-child(2), .galerie-home .link-picture:nth-child(3), .galerie-home .link-picture:nth-child(4) {
	position: relative;
	width: calc(50% - 20px);
	height: 250px;
	margin: 10px;
	right: 0;
	left: 0;
}
  footer.bottom .footer-address, footer.bottom .footer-tel, footer.bottom .footer-horaires {

	margin: 15px;
}
  .footer-horaires .footer-icon::before, .footer-address .footer-icon::before, .footer-tel .footer-icon::before {

	top: -15px;

	left: -10px;

}
    .galerie-home h2 {
	margin-bottom: 20px;

}
  
}
@media only screen and (max-width : 767px) {
  section.content.page-content.content-page .gb-entry span.review-date {
	float: none;
	clear: both;
	display: block;
	padding: 5px 0;
}


    section.banner .banner-wrapper h1 br {
    display: none;
}

 section.banner .box-overlay h2 {
	font-size: 19px;
	line-height: normal;
}
  section.banner .box-overlay h6 {
	letter-spacing: 0;
	line-height: normal;
	font-size: 15px;
}
  section.content .btn-home {

	padding: 12px 25px;

	gap: 20px;

	width: 400px;
}
  /* --- */

    /* --- */

.contactForm .contact-field-type_multiple .form-check-label {
	line-height: 20px;
}
:root {
	--bs-body-line-height: 24px;
	--bs-body-font-size: 16px;
}
d#form1-name_1 , #form1-address_1 {
	grid-column: 1 / 3;
}

  .swiper-wrapper {

	padding: 0 !important;
}

  section.content.content-first .photo-home::before, section.Contact .img-left::before {
	top: -35px;
	right: -2px;
	width: 70px;
	height: 175px;
}
  section.content.content-first.second .flex-home.bloc2 .photo-home::before {
	top: -25px;
	left: -10px;
	width: 60px;
	height: 130px;
}
  footer.bottom .footer-right::after {

	right: -10px;
	top: -7px;

	width: 130px;
	height: 33px;

	background-size: contain;
}
section.banner .banner-wrapper {
	margin-top: 100px;
}
  section.home-news div#AllNews .Item .nophoto, section.home-news div#AllNews .Item .photo {
	position: relative;

}
section.home-news div#AllNews .Item .nophoto, section.home-news div#AllNews .Item .photo {
	position: relative;
	margin: 0 auto;
	width: 100%;
}
  section.home-news div#AllNews .Item .news-desc {
	position: relative;
	width: 100%;
	padding: 20px;

}
  section.home-news div#AllNews .Item {
   display: block; 
  }
section.home-news div#AllNews .Item .photo img, div#AllNews .Item .nophoto img {
	height: 276px !important;
	border-radius: 20px 20px 0 0;

}
  section.home-news div#AllNews .Item {
padding: 0;
}
  /* -----------*/
  /* --------------------- */ 
  section.avis  .gb-entry  .review-date {
    display: block;
}
  section.avis .gb-entry [itemprop="author"]:after {
display: none;
}
  
  /* -----------------------------*/
  section.formhome .contactForm .contact-field-item {
    width: 100%;
    float: none;
}
  section.formhome .contactForm .contact-field-item:nth-child(odd) {
    padding-left: 0;
}
  section.formhome .contactForm .contact-field-item:nth-child(even) {
    padding-right: 0;
}
  section.formhome .contactForm .gdpr {
    text-align: left;
}
  section.formhome .contactForm .contact-submit,section.formhome .contactForm .contact-submit .btn-primary {

    width: 100%;
}
  .formhome .contactForm .contact-submit .btn-primary {

	padding: 12px 20px;

}
.formhome .contactForm .contact-submit::before {

	right: -15px;

}
    /* --- */
  	.contactForm .contact-field-item {
        width: 100%;
        float: none;
        clear: both!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;
    }
  	.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%;
  }
  /*****/
 table.table-content {
	display: block !important;
}
    
footer.bottom .logo-footer {
display: block;
padding: 20px 0;
}
 
  section.home-news div#AllNews .Item .nophoto, section.home-news div#AllNews .Item .photo {
	border-radius: 20px 20px 0 0;
}
  .three-blocks {
	gap: 20px;
}
  .three-blocks .service-card {
	flex: 0 0 calc(49% - 20px);
}
  
       h1, .h1 {
    font-size: 35px;
}
h2, .h2 {
    font-size: 28px;
}
h3, .h3 {
    font-size: 25px;
}
h4, .h4 {
    font-size: 23px;
}
h5, .h5 {
    font-size: 21px;
}
h6, .h6 {
    font-size: 19px;
}  form#contactForm_1 {
        gap: 12px;
    }

    .form-control,
    section.content .contactForm .contact-field-item .contact-field-element .form-field {
        font-size: 15px;
        padding: 10px 14px;
    }
  .contactForm .contact-field-item:nth-child(2n) {
	padding-right: 0;
	grid-column: 1/1;
}
  form#contactForm_1 {
	display: block;

}
  section.Contact .form-control {

	margin-bottom: 15px;
}
section.content .btn-home {
	padding: 12px 10px;
	gap: 10px;

	font-size: 15px;
}

}
@media only screen and (max-width : 480px) {
  
 /***/
section.modules div#AllNews .Item .nophoto, section.modules div#AllNews .Item .photo {
	height: 300px;

}
  section.modules div#AllNews .Item .news-desc span {
	font-size: 15px;
}
  section.Contact .contactForm .gdpr {

	font-size: 12px;
}
section.content.content-first .photo-home::before, section.Contact .img-left::before {
	top: -28px;
	right: -10px;
	width: 50px;
	height: 170px;
}  
  section.content.content-first.second .flex-home.bloc2 .photo-home::before {
	top: -25px;
	left: -10px;
	width: 45px;

}

  section.Contact h2 {
	font-size: 23px;

}
  section.modules div#AllNews .Item:hover .news-desc .read-more a {
	transform: none;

}
  section.Contact .contactForm .contact-submit::after , section.modules div#AllNews .Item .news-desc .read-more a:after{

	right: 35px;

}
  .contactForm .gdpr_policy label {
      display: inline !important;
  }
  /*-------*/
   
  	section.content.page-content.content-page .grid-gallery {
        grid-template-columns: 100%;
        grid-gap:10px;
    }
  section.content.page-content.content-page a.link-picture, section.content.page-content.content-page a.link-subgallery {
	width: 100%;
}
  	/*********/
  section.content.page-content.content-page .grid-img .grid-gallery {
        width: 250px;
    } 
footer.bottom .footer-horaires p {
	
	font-size: 12px;
}
         h1, .h1 {
    font-size: 28px;
}
h2, .h2 {
    font-size: 25px;
}
h3, .h3 {
    font-size: 22px;
}
h4, .h4 {
    font-size: 20px;
}
h5, .h5 {
    font-size: 18px;
}
h6, .h6 {
    font-size: 16px;
}
   .three-blocks {
	gap: 20px;
}
  .three-blocks .service-card {
	flex: 0 0 calc(99% - 20px);
}
  section.banner .box-overlay h2,section.banner .box-overlay h6 {

	margin-bottom: 10px;
}
  section.content .galerie-gal1 .grid-gallery a.link-picture {
	height: 350px;

}
  
section.content .btn-home {
	width: 235px;
	margin: 15px auto;
	display: flex;
	text-align: center;
	line-height: 20px;
}
  .galerie-home h2 {
	margin-bottom: 20px;
	font-size: 24px;
}section.Contact h2 {
	font-size: 20px;
	margin-bottom: 15px;
}
  .contactForm .contact-field-type_multiple > .form-label {

	font-size: 18px;

}
  .contactForm .contact-field-type_multiple {
	display: block;

}
}