:root {
    --color0: #FCFCEF;
    --color0_rgb: 252, 252, 239;
    --color1: #2A2C29;
    --color1_rgb: 42, 44, 41;
    --nuanceColor1: #173d2b;
    --color2: #677D63;
    --color3: #CC7F5A;
    --nuanceColor3: #f4dfc9;
    --color4: #CE133A;
    --color5: #050910;
    --color6: #40A9FF;
    --colorNew: #3474b5;
    --bg-facultatif: #DEF0FF;
    --bg-facultatif-rgba: rgb(222, 240, 255, 0.6);
    --font_family_1: 'IBMPlexSans-Regular', sans-serif;
    --font_family_1_bold: 'IBMPlexSansJP-Bold', sans-serif;
    --font_family_2: 'Poppins-Regular', sans-serif;
    --font_family_2_bold: 'Poppins-Bold', sans-serif;
    --font_family_3: 'Roboto-Regular', sans-serif;
    --font_family_3_bold: 'Roboto-Bold', sans-serif;
    --taille_font: clamp(1.4rem, 0.9vw, 1.5rem);
    --border-radius: 20px;
    --btn-size: 66px;
    --box-s: 1px 1px 50px rgb(var(--color1_rgb) , 0.8);
}
/*
body:after {
    content: url('../images/bx_loader.svg') !important;
    display: none;
}
*/
body {
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    color: var(--color1);
    font-family: var(--font_family_2);
    font-size: var(--taille_font);
    background: var(--color0)
}

.klaro .cookie-notice:not(.cookie-modal-notice) {
	left: 12px !important;
}


h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.titre,
.sous-titre {
    font-family: var(--font_family_1);
    font-weight: 600;
    color: var(--color0);
    text-transform: uppercase;
}

.corps h1,
.corps h2,
.corps h3,
.corps h4,
.corps h5,
.corps h6,
.corps .h1,
.corps .h2,
.corps .h3,
.corps .titre,
.corps .sous-titre,
.temoignages h1,
.temoignages h2,
.temoignages h3,
.temoignages h4,
.temoignages h5,
.temoignages .h1,
.temoignages .h2,
.temoignages .h3,
.temoignages .h4,
.temoignagess .titre,
.temoignages .sous-titre {
    color: var(--color3);
    text-shadow: none;
}

h1,
.h1 {
    font-size: calc(var(--taille_font) + 2.5em);
    line-height: calc(var(--taille_font) + 2em);
    margin-bottom: 20px;
    color: var(--color3);
    text-align: center;
    /*text-shadow: 1px 2px 3px rgba(0, 0, 0, 0.7);*/
    position: relative;
    background: url(../images/ico-titre.png) no-repeat center bottom;
    padding: 0;
    margin: 0 0 1em 0;
    transition: all 400ms ease
}

.body-page-1 h1,
.body-page-1 .h1 {
    padding: 0 0 0.7em 0;
    margin: 0 0 2em 0;
}

h1:before,
.h1:before {
    width: 75px;
    background: var(--nuanceColor1);
    position: absolute;
    bottom: 15%;
    left: 50%;
    margin-left: -37px;
    height: 2px;
}
.body-page-1 h1:before,
.body-page-1 .h1:before {
    content: "";
}



/*
h1:hover:before,
.h1:hover:before {
    opacity: 1;
    filter: alpha(opacity=100);
    bottom: -15px;
}
*/
.body-page-1 h1,
.body-page-1 .h1 {
    color: var(--color3);
    margin: 0;
    background: none;
    text-shadow: none;
}

.body-page-1 h1:before,
.body-page-1 .h1:before {
    cursor: default;
}

h2,
.h2 {
    font-size: calc(var(--taille_font) + 0.6rem);
}

h3,
.h3 {
    font-size: calc(var(--taille_font) + 0.3rem);
}

h4,
h5,
h6 {
    font-size: var(--taille_font);
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a,
.h1 a,
.h2 a,
.h3 a,
h1 a:link,
h2 a:link,
h3 a:link,
h4 a:link,
h5 a:link,
h6 a:link,
.h1 a:link,
.h2 a:link,
.h3 a:link,
h1 a:visited,
h2 a:visited,
h3 a:visited,
h4 a:visited,
h5 a:visited,
h6 a:visited,
.h1 a:visited,
.h2 a:visited,
.h3 a:visited {
    font-size: inherit;
    color: inherit;
    text-decoration: none
}

h1 a:hover,
h2 a:hover,
h3 a:hover,
h4 a:hover,
h5 a:hover,
h6 a:hover,
.h1 a:hover,
.h2 a:hover,
.h3 a:hover {
    text-decoration: underline
}

h1:before {
    cursor: pointer;
}

.titre-secondaire {
    position: relative;
    font-size: calc(var(--taille_font) + 0.3rem);
    line-height: calc(var(--taille_font) + 0.1rem);
    padding: 0 0 1em;
    margin: 0;
    font-weight: 200;
    color: var(--color1);
    text-align: center;
    text-wrap: balance;
    margin-bottom: 0;
    display: block;
}

a {
    color: var(--color1);
    -webkit-transition: color 300ms ease-out;
    -moz-transition: color 300ms ease-out;
    -o-transition: color 300ms ease-out;
    transition: color 300ms ease-out;
    text-decoration: none;
}

a:hover,
 a:focus,
 a:visited{
    color: var(--color0);
    text-decoration: none
}

a img {
    border: none
}

img {
    max-width: 100%
}

ul,
ol {
    list-style-position: inside;
    padding-left: 15px
}

menu,
dir {
    padding-left: 15px
}

blockquote p {
    font-size: inherit
}

main,
section,
article,
aside,
footer,
header,
nav {
    display: block
}

iframe {
    border: none
}

*[data-anim] {
    opacity: 0
}

.row {
    margin-right: 0 !important;
    margin-left: 0 !important
}

.nopad {
    padding-left: 0;
    padding-right: 0
}

.nopad-l {
    padding-left: 0
}

.nopad-r {
    padding-right: 0
}

.nomargin {
    margin: 0
}

.hide {
    display: none
}

.center {
    text-align: center
}

.right {
    text-align: right
}

.justify {
    text-align: justify
}

.clear:after {
    content: '';
    display: block;
    clear: both
}

.bold {
    font-weight: bold
}

.underline {
    text-decoration: underline
}

.relative {
    position: relative
}

.inline-block {
    display: inline-block;
    vertical-align: top
}

.noflicker {
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.retrait {
    margin-left: -15px !important;
    margin-right: -15px !important
}

.transition {
    -webkit-transition: all 400ms ease;
    -moz-transition: all 400ms ease;
    -ms-transition: all 400ms ease;
    -o-transition: all 400ms ease;
    transition: all 400ms ease;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.cover {
    -webkit-background-size: cover !important;
    -moz-background-size: cover !important;
    -o-background-size: cover !important;
    background-size: cover !important
}

hr.trait {
    height: 1px;
    margin: -0.5em 0;
    padding: 0;
    color: var(--color0);
    background-color: var(--color0);
    border: 0
}

.body-page-1 .page-contenu {
    text-align: left;
}

.page-contenu img {
    margin: 10px
}

ul li.niveau2,
ol li.niveau2 {
    margin-left: 30px
}

/* STYLE GENERAL ***********************************************************/
/* *************************************************************************/
/* Commenter ces lignes pour un site non-responsive */

b,
strong {
    font-family: var(--font_family_2);
}

/* CORPS DE LA PAGE *******************************************************/
/* *************************************************************************/
.main-page {
    position: relative;
    overflow: hidden
}

.tete {
    position: relative;
    z-index: 8001;
    height: 10vh;
}

.tete .tel {
	margin: 0;
	padding: 0.6rem 2rem 0.6rem 2rem;
	font-family: var(--font_family_1);
	font-size: calc(var(--taille_font) + 0.2rem);
	color: var(--color0);
	text-align: center;
	/* text-transform: uppercase; */
	background: var(--nuanceColor1);
    border: solid 1px var(--nuanceColor1);
	border-radius: var(--border-radius);
	font-weight: 600;
}

.tete .tel:hover {
    color: var(--nuanceColor1);
    background: var(--color0);
    border: solid 1px var(--nuanceColor1);
}

.tete .fixed .tel {
    color: var(--color0);
    background: var(--nuanceColor1);
    
}
.tete .fixed .tel:hover {
    color: var(--nuanceColor1);
    background: var(--color0);
    border: solid 1px var(--nuanceColor1)
}

.tete .tel a {
    color: inherit;
    text-decoration: none
}

.fluid-menu {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    height: 11vh;
    display: grid;
    grid-template-columns: 1fr 10fr 4fr;
    padding: 0 5%;
    -webkit-transition: all 400ms ease;
    transition: all 400ms ease;
    z-index: 9999;
}
/*
.fluid-menu:after {
  content: "";
  position: absolute;
  height: 50vh;
  inset: 0;
  z-index: -1;
  background: linear-gradient(
    to bottom,
    rgba(var(--color0_rgb), 0.5) 0%,
    rgba(var(--color0_rgb), 0.45) 25%, 
    rgba(var(--color0_rgb), 0.35) 55%, 
    rgba(var(--color0_rgb), 0.2) 80%,
    rgba(var(--color0_rgb), 0.1) 90%,
    rgba(var(--color0_rgb), 0) 100% 
  );
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px); 
}
.fixed.fluid-menu:after {
    display: none;
}
*/

.fluid-menu.fixed {
    height: 11vh;
    background: var(--color0);
    box-shadow: 1px 1px 50px rgb(var(--color1_rgb) , 0.1);
}

.fluid-menu .logo-site {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
}
.fluid-menu .logo-site a {
    position: absolute;
    top: -1em;
    left: 0;
    height: 15vh;
    aspect-ratio: 1215 / 427;
    /*background: transparent;*/
    border-radius: var(--border-radius);
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.6s ease;
}
/*
.fluid-menu .logo-site a::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgb(var(--color0_rgb), 0.9);
  border-radius: inherit;
  filter: blur(8px) brightness(0.9);
  z-index: -1;
}
.fixed.fluid-menu .logo-site a::after {
    display: none;
}
*/
.fluid-menu .logo-site a img {
    width: 20vw;
    height: 100%;
    object-fit: contain;
}
.fluid-menu.fixed .logo-site a {
    transform: translate(-6em, -0em) scale(0.85);
}
.menu_principal{
    display: flex;
    height: 100%;
    list-style-type: none;
    justify-content: end;
    align-items: center;
    gap: 4em;
    padding-right: 4em;
}

.menu-item a {
    position: relative;
    text-decoration: none;
    color: var(--nuanceColor1);
    font-family: var(--font_family_1_bold);
    font-size: calc(var(--taille_font) + 0.4rem) !important;
    padding:0 0.1vw 2vh 0.1vw;
}

.fixed .menu-item a {
    color: var(--nuanceColor1);
}

.menu-item a:after{
    content: '';
    position: absolute;
    width: 0;
    height: 3px;
    background: var(--nuanceColor1);
    left: 0;
    bottom: 0;
    transition: .5s;
}

.fixed .menu-item a:after{
    background: var(--nuanceColor1);
}

.menu-item a:hover:after,
.menu_principal li.active>a:after{
    width: 100%
}

.nav-right{
    display: flex;
    justify-content: center;
    align-items: center;
}

.banniere {
    position: fixed;
    top: 0;
    left: 0;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin: 0;
    width: 100%;
    height: 40vh;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center top;
}
.body-page-1 .banniere{
    height: 100vh;
}

.banniere:after {
    content: '';
    background: linear-gradient(rgb(var(--color0_rgb), 1) 0, rgb(var(--color0_rgb), 0.05) 45%, rgb(var(--color0_rgb), 0.01) 90%, rgb(var(--color0_rgb), 0) 100%);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    display: block
}

.body-page-1 .banniere:after {
    background: linear-gradient(rgb(var(--color0_rgb), 1) 0, rgb(var(--color0_rgb), 0.05) 13%, rgb(var(--color0_rgb), 0.01) 35%, rgb(var(--color0_rgb), 0) 100%);
}

.banniere::before {
    content: "";
    position: absolute;
    z-index: 2;
    width: 100%;
    height: 100%;
    -webkit-backdrop-filter: blur(2px);
    backdrop-filter: blur(5px);
    pointer-events: none;
}

.banniere img {
    width: 100%;
    height: auto;
}

.slogan{
    position: absolute;
    color: var(--color0);
    width: 50vw;
    max-width: 33vw;
    padding: 0;
    margin: 0;
    text-align: center;
    z-index: 2;
    top: 60%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.body-page-1 .slogan{
    left: 50%;
}

.body-pageseo .slogan{
    width: 70vw;
    max-width: 70vw;
}

.slogan .titre{
    font-size: calc(var(--taille_font) + 4rem);
    text-shadow: 3px 3px 5px var(--color1);
}
.slogan .sous-titre{
    font-size: calc(var(--taille_font) + 1.2rem);
    text-shadow: 1px 1px 1px var(--color1);
    text-wrap: balance;
}

.cta{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    margin-top: 1em;
}

.body-page-1 .cta {
    margin-top: 2em;
}

.bouton-principal{
    display: inline-block;
    vertical-align: middle;
    margin: 1rem;
    padding: 1.2rem 4rem 0.9rem 4rem;
    color: var(--color0);
    font-size: calc(var(--taille_font) + 0.1em);
    background: var(--nuanceColor1);
    border: solid 1px var(--nuanceColor1);
    border-radius: var(--border-radius);
}
button.bouton-principal{
    /*border: none;*/
}

.bouton-principal:hover,
.bouton-principal:visited:hover
{
    color: var(--nuanceColor1);
    background: var(--color0);
    border: solid 1px var(--nuanceColor1);
}


.bouton-principal:hover i {
    color: var(--nuanceColor1);
}

.bouton-principal:visited,
.bouton-principal:selection{
    color: var(--color0);
    text-decoration: none;
}

.cta .bouton-principal{
    display: flex;
    align-items: center;
    margin: 0.5em;
    padding: 0.5em 1.5em 0.6em 1.5em;
    font-family: var(--font_family_1);
    font-size: calc(var(--taille_font) + 0.5rem);
    font-weight: 600;
    line-height: normal;
}

.pied .bouton-principal,
.pied .bouton-principal.active
{
    font-size: calc(var(--taille_font));
    padding: 1.2rem 1rem 0.9rem 1rem;
}

.btn-descendre {
    position: absolute;
    top: 45vh;
    left: 50%;
    display: flex;
    width: var(--btn-size);
    height: var(--btn-size);
    text-decoration: none;
    align-items: center;
    justify-content: center;
    background: rgb(var(--color1_rgb) , 0.5);
    transform: translate(-50%, -50%);
    opacity: 0.9;
    background: url(../images/bg-descendre.png) no-repeat center top;
    -webkit-background-size: cover;
    background-size: cover;
    margin-left: calc(var(--btn-size) / -2);
    overflow: hidden;
    text-indent: 300px;
    white-space: nowrap;
}

.btn-descendre:before {
  content: "";
  width: calc(var(--btn-size) / 6);   /* taille proportionnelle au bouton */
  height: calc(var(--btn-size) / 6);
  background: var(--color1);
  border-radius: 50%;
  position: absolute;
  top: 40%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: all .4s ease;
  /*animation: bounce 1.5s infinite ease-in-out;*/
  animation: pulse 1.2s infinite ease-in-out;
}

.btn-descendre:hover:before {
    opacity: .4;
    top: 60%;
}

@keyframes bounce {
  0%, 100% { transform: translate(-50%, -50%); }
  50%      { transform: translate(-50%, -20%); }
}
@keyframes pulse {
  0%, 100% { transform: translate(-50%, -50%) scale(1); }
  50%      { transform: translate(-50%, -50%) scale(0.8); }
}
/*
.btn-descendre i {
    position: relative;
}

.btn-descendre i svg {
    width: 100%;
    height: 100%;
    fill: rgb(var(--color0_rgb) , 0.5);
    stroke: none;
}

.btn-descendre i::after {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--color0);
    mask-image: url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2016%2016%27%3E%3Cpath%20fill%3D%27black%27%20d%3D%22m6%20.5a.5.5%200%200%200%20-.5.5v9.5h-1.5a.5.5%200%200%200%20-.3535.8535l4%204a.5.5%200%200%200%20.707%200l4-4a.5.5%200%200%200%20-.3535-.8535h-1.5v-5.5a4.505%204.505%200%200%200%20-4.5-4.5zm4.793%2011-2.793%202.793-2.793-2.793h.793a.5.5%200%200%200%20.5-.5v-9.4648a3.5069%203.5069%200%200%201%203%203.4648v6a.5.5%200%200%200%20.5.5z%22%2F%3E%3C%2Fsvg%3E");
    mask-repeat: no-repeat;
    mask-size: contain;
    mask-position: center;
    clip-path: inset(0 0 100% 0);
    animation: arrowFill 3s ease-in-out infinite;
}

@keyframes arrowFill {
    0%  { clip-path: inset(0 0 100% 0); }
    70%   { clip-path: inset(0 0 0 0); }
    100%  { clip-path: inset(0 0 100% 0); }
    
}

@media (prefers-reduced-motion: reduce) {
  .btn-descendre i::after { animation: none; clip-path: inset(0 0 0 0); }
}

.btn-descendre:hover {
    opacity: 1;
    filter: alpha(opacity=100);
}
*/
/*
.btn-descendre:after {
    content: "";
    z-index: -1;
    position: absolute;
    z-index: 0;
    left: 0;
    top: 0;
    display: block;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: rgb(var(--color0_rgb) , 0.7);
    transform: translateX(-50%) translateY(-50%);
    animation: pulse-border 1.5s ease-out infinite;
}
*/
@keyframes pulse-border {
    0% {
        transform: scale(1);
        opacity: 1
    }
    100% {
        transform: scale(1.8);
        opacity: 0
    }
}

/**call Tracker**/
/*
header p.tel.callTracker span {
    text-decoration: none;
}

p.tel.callTracker span {
    text-align: center;
    font-weight: bold;
    text-decoration: underline;
}
*/
.sidebar-scroll-right .callTracker {
    width: 100%;
    height: 50px;
}

.callTracker {
    /*width: 173px; overflow: hidden;height: 33px;*/
    position: relative;
}
/*
.callTracker span,
.callTracker a {
    display: inline-block;
    text-align: left;
    min-width: 145px;
    padding: 0;
    -webkit-transition: all 500ms ease;
    -moz-transition: all 500ms ease;
    -ms-transition: all 500ms ease;
    -o-transition: all 500ms ease;
    transition: all 500ms ease;
    height: 100%;
    line-height: 1.64em;
    text-decoration: none;
}
*/
.callTracker .t_phone {
    opacity: 0;
    display: none;
}

.callTracker .t_affiche {
    cursor: pointer;
}

header .callTracker span,
header .callTracker a {
    top: 5px;
}

.callTracker.active .t_phone {
    opacity: 1;
    display: inline-block;
}

.callTracker.active .t_affiche {
    opacity: 0;
    display: none;
}

.pied .callTracker a,
.coordonnees .callTracker a {
    position: relative;
    left: 0px;
}

.pied .callTracker span.t_affiche {
    /*font-weight: bold;*/
    /*text-decoration: underline;*/
}

/**call Tracker**/
.menu-open-close {
    transition: all 400ms ease;
    position: relative;
    float: right;
    margin: 0 30px 0 0;
    height: 80px;
    width: 80px;
    border: none;
    background-color: transparent;
}

.menu-open-close.open-menu span.line1 {
    -webkit-transform: rotate(135deg);
    -moz-transform: rotate(135deg);
    -o-transform: rotate(135deg);
    transform: rotate(135deg);
    margin-top: 0;
}

.menu-open-close.open-menu span.line2 {
    opacity: 0;
    filter: alpha(opacity=0);
    width: 2px;
    margin-left: -1px;
}

.menu-open-close.open-menu span.line3 {
    -webkit-transform: rotate(-135deg);
    -moz-transform: rotate(-135deg);
    -o-transform: rotate(-135deg);
    transform: rotate(-135deg);
    margin-top: 0;
}

.menu-open-close span {
    transition: all 400ms ease;
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 40px;
    margin-left: -20px;
    height: 2px;
    background-color: var(--color0);
}

.menu-open-close span.line1 {
    margin-top: -8px;
}

.menu-open-close span.line3 {
    margin-top: 8px;
}

.menu-open-close:focus {
    outline: none;
}

.menu-mortel {
    position: fixed;
    top: 0px;
    left: 0px;
    opacity: 0;
    text-align: center;
    padding: 120px 0 0 0;
    background: rgba(255, 255, 255, 0.9);
    z-index: 9998;
    width: 100%;
    display: none;
    -webkit-transition: all 400ms ease;
    transition: all 400ms ease
}

.navh-mortel {
    margin: 0;
    z-index: 8000;
}

.navh-mortel .menu_haut_secondaire {
    margin: 0;
    padding: 0;
    list-style: outside none;
    display: block;
    /*table-layout:fixed;*/
    width: 100%
}

.navh-mortel .menu_haut_secondaire>li {
    position: relative;
    display: block;
    text-align: center;
    padding: 0px 0px;
}

.navh-mortel .menu_haut_secondaire a,
.navh-mortel .menu_haut_secondaire a:visited {
    color: var(--color1);
    display: block;
    font-size: 30px;
    padding: 10px 5px 10px 5px;
    text-decoration: none;
    font-family: 'Raleway-Light';
    text-transform: uppercase;
    -webkit-transition: all 400ms ease;
    -moz-transition: all 400ms ease;
    -o-transition: all 400ms ease;
    transition: all 400ms ease;
}

.navh-mortel .menu_haut_secondaire a:hover,
.navh-mortel .menu_haut_secondaire li.active>a {
    padding-left: 20px;
}

.navh-mortel .menu_haut_secondaire li.active>a:hover {
    cursor: default
}

.menu-mortel .btn-partage {
    text-align: center;
    padding: 30px 0px 0px 0px;
    display: inline-block;
}

.menu-mortel .btn-partage .btnp {
    margin: 0 5px;
    background-repeat: no-repeat;
    background-position: center center;
    display: inline-block;
    transition: all 400ms ease;
    width: 36px;
    height: 36px;
    border-radius: 36px;
    background-color: var(--color1);
}

.menu-mortel .btn-partage .btnp:hover {
    transform: rotate(360deg)
}

.menu-mortel .btn-partage .btnp.btn-fb {
    background-image: url(../images/ico-fb-h.png)
}

.menu-mortel .btn-partage .btnp.btn-twitter {
    background-image: url(../images/ico-twitter-h.png)
}

.menu-mortel .btn-partage .btnp.btn-google {
    background-image: url(../images/ico-google-h.png)
}

.navh {
    margin: 0;
    z-index: 8000;
}

.navh .menu_haut_principal {
    margin: 0;
    padding: 0;
    list-style: outside none;
    display: table;
    /*table-layout:fixed;*/
    display: block;
    float: right;
    width: 100%;
    text-align: center;
}

.navh .menu_haut_principal>li {
    position: relative;
    display: table-cell;
    display: inline-block;
    vertical-align: middle;
    text-align: center;
    padding: 0px 0px;
    padding: 0px 20px;
}

.navh .menu_haut_principal a,
.navh .menu_haut_principal a:visited {
    white-space: nowrap;
    color: var(--color0);
    display: block;
    font-size: 22px;
    padding: 23px 5px 10px 5px;
    text-decoration: none;
    background: url(../images/btn-h.png) center 70px no-repeat;
    font-family: 'Raleway-Light';
    text-transform: uppercase;
    -webkit-transition: all 400ms ease;
    -moz-transition: all 400ms ease;
    -o-transition: all 400ms ease;
    transition: all 400ms ease;
}

.navh .menu_haut_principal a:hover,
.navh .menu_haut_principal li.active>a {
    background: url(../images/btn-h.png) center bottom no-repeat
}

.navh .menu_haut_principal li.active>a:hover {
    cursor: default
}


.details {
    background: var(--color2);
}
.details .h1 {
    color: var(--color0);
} 
.details .contenu {
    position: relative;
    display: grid;
    grid-template-columns: 3fr 2fr;
    min-height: 40vh;
}

.details .gauche,
.details .droite {
    z-index: 1; 
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.details .droite {
    padding-top: 2em;
    background: rgba(var(--color1_rgb), 0.7);
}

.details .contenu:after {
  content: "";
  position: absolute;
  top: 40px;
  left: -40px;
  right: 40px;
  bottom: -40px;
   background: rgba(var(--color1_rgb), 0.3);
  /*border: 2px solid red;*/
  border-radius: 8px;
  z-index: 0;  
}

/* ****************************** */
/* nos Services/* ****************************** */
.isServiceList .content {
    padding: 0;
    width: 100%;
}

.services {
    position: relative;
    background-color: var(--color0);
    color: var(--color0);
}

.services .h {
    color: var(--color3);
    text-align: left;
}

.services .hicon:after {
    background-color: transparent;
    margin: 0 !important;
}

.services-grid{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2em;
}

.services .content {
    width: 100%;
}


.services ul {
    padding: 0;
}

.services .mainSectionSlider .show {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: transparent;
}

.services .mainSectionSlider .blazy {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: transparent;
}

.services .mainSectionSlider .show {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: transparent;
}

.services .mainSectionSlider .blazy {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: transparent;
}

.services .services-swipper {
    position: relative;
    width: 100%;
    margin: 0;
}

.linkList {
    width: 80%;
    margin: auto;
    padding: 0;
    list-style: none;
}

.linkList li {
    display: block;
    width: 100%;
    float: left;
}

.linkList li a {
    font-size: 18px;
    color: var(--color3);
    padding: 10px 15px 10px 50px;
    background-image: url(../images/r_arr.png);
    background-color: var(--color0);
    background-repeat: no-repeat;
    background-position: 15px 50%;
    display: inline-block;
    margin: 0 0 19px 0;
    border: 1px solid var(--nuanceColor3);
    min-width: 100%;
    text-align: left;
    text-decoration: none;
}

.linkList li a:hover {
    background-image: url(../images/r_arr_h.png);
    color: var(--color0);
    border: 1px solid var(--color0);
    background-color: var(--color3);
    text-decoration: none;
}

.body-service-list .fluid-contenu .container {
    width: 100%;
    max-width: 100%;
}



.tabb {
    display: table;
    margin: 0;
    padding: 0;
    width: 100%;
}

.tabb .cell {
    display: table-cell;
    vertical-align: top;
}

.tabb .cell.cellg {
    width: 33.3333%;
    background: url(../images/photo1.jpg) no-repeat center top;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}


/*.tabb .cell.celld{}*/
/* Tableau 2 *************** */
.tabb2 {
    position: relative;
    display: table;
    margin: 0;
    padding: 0;
    width: 100%;
    background: var(--color2);
}

.tabb2 .cell {
    display: table-cell;
    vertical-align: top;
    position: relative;
}

.tabb2 .cell.cellg {
    width: 33.3333%;
    /*background: url(../images/photo2.jpg) no-repeat center top;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;*/
}

/*.tabb2 .cell.cellc{}*/
.tabb2 .cell.celld {
    width: 33.3333%;
    /*background: url(../images/photo3.jpg) no-repeat center top;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;*/
}

.tabb2 .cell .reser {
    display: flex;
    position: absolute;
    top: 90px;
    padding: 6em 2vw;
    left: 70px;
    right: 70px;
    bottom: 90px;
    /* background:url(../images/bg-res.png) no-repeat center top;width:493px;height:468px;*/
    -webkit-transition: all 400ms ease;
    -moz-transition: all 400ms ease;
    -o-transition: all 400ms ease;
    transition:
        all 400ms ease;
    background:
        rgba(0, 0, 0, 0.5);
    /*border:7px solid var(--nuanceColor3);*/
    text-align:
        center;
    flex-wrap: wrap;
    color: var(--color0);
    flex-direction: row;
    align-content: center;
    text-align: center;
    justify-content: center;
    align-items: center;
}

.tabb2 .cell .zenchef-frame-wrap{
    height: 100%;
    min-height: 50vh;
}

.tabb2 .cell .zenchef-frame-wrap iframe{
  display: block;
  width: 100%;
  height: 100svh;
  border: 0;
}


.tabb2 .cell .reser .block {
    display: table;
    width: auto;
    height: 100%;
    text-align: center;
    font-size: 19px;
}

.tabb2 .cell .reser div a {
    vertical-align: middle;
    display: table-cell;
    color: var(--nuanceColor3);
    text-transform: uppercase;
    text-decoration: none;
    padding: 0 20px;
    font-size: 17px;
}

.tabb2 .cell .reser div p span {
    display: block;
    text-transform: uppercase;
    color: var(--nuanceColor3);
    text-align: center;
    font-size: 27px;
}

.tabb2 .cell .reser:hover {
    background: rgba(0, 0, 0, 0.7);
}

.tabb2 .cell .contt {
    padding: 10px 30px 30px 30px;
    min-height: 660px;
}

.tabb2 .cell .contt h2 {
    text-align: center;
    font-size: 32px;
    text-transform: uppercase;
    color: var(--color0);
    text-shadow: 2px 1px 1px var(--nuanceColor1);
    border-bottom: 1px solid var(--color3);
    padding: 0 0 25px 0;
}

/* Tableau 2 **************************** */
.tabb-specialites {
    display: table;
    margin: 0;
    padding: 0;
    width: 100%;
}

.tabb-specialites .cell {
    display: table-cell;
    vertical-align: top;
}

.tabb-specialites .cell.cellg {
    width: 33.3333%;
    background-position: center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

/*.tabb-specialites .cell.celld{}*/
.tabb-specialites .corps {
    padding: 40px 60px 50px 60px !important
}

.tabb-specialites h2 {
    text-align: center;
    margin-bottom: 50px;
}

/* Tableau Reservation ********************** */
.tabb-reservation {
    display: table;
    margin: 0;
    padding: 0;
    width: 100%;
}

.tabb-reservation .cell {
    display: table-cell;
    vertical-align: top;
    position: relative;
}

.tabb-reservation .cell.cellg {
    width: 37%;
    background: url(../images/photo-res.jpg) no-repeat center top;
    padding: 80px 60px;
    background-position: center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

/*.tabb-reservation .cell.celld{}*/
.tabb-reservation .cell .reser {
    display: block;
    position: static;
    -webkit-transition: all 400ms ease;
    -moz-transition: all 400ms ease;
    -o-transition: all 400ms ease;
    transition: all 400ms ease;
    background: rgba(0, 0, 0, 0.5);
}

.tabb-reservation .cell .reser:hover {
    background: rgba(0, 0, 0, 0.7);
}

.tabb-reservation .cell .contt {
    padding: 10px 30px 30px 30px;
    color: var(--color0);
    padding: 40px 30px 50px 30px;
}

.tabb-reservation .cell .contt h2 {
    text-align: center;
    font-size: 25px;
    text-transform: uppercase;
    color: var(--color0);
    font-family: 'Raleway-Light';
    margin-bottom: 40px;
}

.tabb-reservation .cell ol {
    list-style-type: decimal;
    margin: 30px 0;
}

.tabb-reservation .cell ol li {
    font-family: 'Raleway-SemiBold';
}

.tabb-reservation .corps {
    padding: 40px 60px 50px 60px !important
}

.bootstrap-timepicker-widget table td input {
    font-size: 15px;
    border: 0;
    min-width: 30px;
}

/*.ui-datepicker .ui-datepicker-title{}*/
.ui-datepicker {
    width: 100%;
    border: none;
    padding: 0;
    background: transparent;
    position: relative;
}

.ui-datepicker .ui-datepicker-header {
    position: static;
    background: transparent;
    color: var(--nuanceColor3);
    border: none;
    text-transform: uppercase;
    font-size: 28px;
    padding: 30px 0 60px 0
}

.ui-datepicker table {
    border: none;
    font-family: 'Raleway-Light'
}

.ui-datepicker th {
    text-transform: uppercase
}

.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default {
    font-weight: normal;
    background: none;
    color: var(--color1);
    text-align: center;
    padding: 30px 0;
    border: 1px solid transparent;
}

.ui-datepicker .ui-state-active {
    background: var(--nuanceColor3);
}

.ui-state-default:hover,
.ui-widget-content .ui-state-default:hover,
.ui-widget-header .ui-state-default:hover {
    color: var(--nuanceColor1);
    background: var(--nuanceColor3);
    border-radius: var(--border-radius);
}

.ui-state-highlight,
.ui-widget-content .ui-state-highlight,
.ui-widget-header .ui-state-highlight {
    background: var(--nuanceColor3);
    color: var(--color1);
    border-radius: var(--border-radius);
}

.ui-state-highlight:hover,
.ui-widget-content .ui-state-highlight:hover,
.ui-widget-header .ui-state-highlight:hover {
    background: var(--nuanceColor3);
    color: var(--nuanceColor1);
    border-radius: var(--border-radius);
}

.ui-widget-header a:hover .ui-icon {
    background-image: url("images/ui-icons_999999_256x240.png");
    opacity: 0.8;
    filter: alpha(opacity=80);
}

.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
    background: var(--nuanceColor1) !important;
    border-radius: 50%;
    top: 20px;
    cursor: pointer;
}

.ui-datepicker .ui-datepicker-prev:hover,
.ui-datepicker .ui-datepicker-next:hover {
    border: none;
}

.ui-datepicker .ui-datepicker-prev {
    left: 0px
}

.ui-datepicker .ui-datepicker-next {
    right: 0px
}

.body-page-1 .ui-datepicker .ui-datepicker-prev,
.body-page-1 .ui-datepicker .ui-datepicker-next {
    top: 29px;
    width: 1.5em;
    height: 1.5em;
    background: var(--color2);
}

.body-page-1 .ui-datepicker .ui-datepicker-prev {
    left: 0px
}

.body-page-1 .ui-datepicker .ui-datepicker-next {
    right: 0px
}

.body-page-1 .ui-state-default,
.body-page-1 .ui-widget-content .ui-state-default,
.body-page-1 .ui-widget-header .ui-state-default {
    padding: 17px 0
}

.body-page-1 .ui-datepicker .ui-datepicker-header {
    padding: 30px 0 20px 0;
}

.body-page-1 .ui-datepicker .ui-datepicker-title {
    font-size: 22px
}

.modal {
    z-index: 9000;
}

.modal-backdrop {
    z-index: 8999;
}

.modal-content {
    border-radius: 0px;
}

.modal-content .modal-header {
    border-bottom: none;
    height: 60px;
}

.modal-content .modal-header .close {
    font-size: 36px;
    line-height: 26px;
}

.modal-content .modal-body {
    border-radius: 0px;
    padding: 3em 2em;
}




.modal-content h2,
.modal-content .h,
.modal-content .h1 {
    margin: 0.5em;
    background: none;
    text-align: center;
    font-size: calc(var(--taille_font) + 1.5em);
    line-height: 1;
}

.modal-content h2:after,
.modal-content .h:after,
.modal-content .h1:after {
    display: none;
}

.modal-content .horaires {
    color: #9c9c9c;
    margin: 0 0 50px 0;
    font-size: 15px;
    text-align: center;
}

.modal-content .horaires span {
    display: block;
}

.modal-content label.checkbox.label-rgpd span.text-warning {
    position: absolute;
    bottom: -20px;
}

.modal-content .form-group:after {
    clear: both;
    display: table;
    content: " ";
}

.modal-content input {
    height: 48px;
    line-height: 1;
    line-height: 48px \9;
    padding: 0px 12px;
    box-shadow: none;
    border-radius: 0;
    border: 1px solid var(--color0);
}

.modal-content textarea {
    padding: 10px;
    box-shadow: none;
    border-radius: 0;
    border: 1px solid var(--color0);
}

.modal-content input[type=number] {
    padding-right: 0px;
}

.modal-content label {
    padding-left: 0px;
    font-size: 14px;
    padding-top: 13px;
    font-weight: normal;
}

.modal-content input[name="captchaReservation"] {
    width: 100% !important;
    height: 38px !important;
    display: inline-block;
    float: none !important;
    margin-right: 2% !important;
    vertical-align: top;
    min-width: 0;
}

.modal-content input[name="captchaReservation"]+a {
    width: 30% !important;
    display: inline-block;
    margin-right: 2%;
    vertical-align: top;
}

.modal-content #captcha3 {
    width: 100%;
    height: 38px !important;
    border-radius: 0;
    padding: 0;
}

.modal-content .btn-default {
    width: 100%;
    display: inline-block;
}

.modal-content .btn-default {
    background: var(--color0);
    border: 1px solid var(--color1);
    text-transform: uppercase;
    color: var(--color1);
    border-radius: 0px;
    font-size: 17px;
    text-decoration: none;
    transition: all 400ms ease;
    max-width: 300px;
    margin: 0 auto;
    display: block;
    height: 63px;
}

.modal-content .btn-default:hover {
    color: var(--color0);
    background: var(--color1);
}

.modal-content .description {
    margin: 20px 0 0 0;
    font-size: 14px;
    text-align: center;
}

.modal-content .obligatoire {
    font-size: 12px;
    color: #ff0000;
    font-style: italic;
    display: block;
}

.modal-content #add-review .conditionsLabel{
  display:inline-flex;
  align-items:flex-start;
  gap:.5rem;
  line-height:1.4;
}

.bootstrap-timepicker-widget {
    z-index: 9999 !important
}

.bootstrap-timepicker-widget table,
.bootstrap-timepicker-widget table td,
.bootstrap-timepicker-widget table th {
    border: none;
}

.fluid-slider {
    background: #171717
}

.fluid-contenu,
.tabb2,
.details,
.services,
.actualites,
.atouts,
.AvisClientsBg {
    position: relative;
    padding: 10vh 10%;
}

.fluid-contenu {
    z-index: 8000;
    margin-top: 30vh;
    background: var(--color0);
}

.body-page-1 .fluid-contenu {
    margin-top: 100vh;
}

/*
.fluid-contenu::before{
    content: '';
    background: linear-gradient(rgb(var(--color0_rgb) , .01) 0%, rgb(var(--color0_rgb) , .1) 10%, rgb(var(--color0_rgb) , .5) 40%, rgb(var(--color0_rgb) , 0.9) 90%, rgb(var(--color0_rgb) , 1) 100%);
    width: 100%;
    height: 10vh;
    position: absolute;
    top: -10vh;
    left: 0;
    z-index: 1;
    display: block;
    pointer-events: none;
}
*/
.body-page-1 .fluid-contenu::before{
    height: 30vh;
    top: -30vh;
}

.body-page-1 .fluid-contenu .corps {
    display: grid;
    grid-template-columns: 3fr 2fr;
}

.page-contenu-home {
    position: relative;
    display: block;
    padding: 4rem 13%;
    height: 50vh;
    overflow-y: auto;
    overflow-x: hidden;
}

.page-contenu-home h2,
.page-contenu-home h3 {
    font-family: var(--font_family_1);
    font-weight: 600;
}

.page-contenu-home::-webkit-scrollbar {
  width: 5px;
}

.page-contenu-home::-webkit-scrollbar-track {
  background: color-mix(in srgb, var(--color0) 95%, black);
  border-radius: 8px;
}

.page-contenu-home::-webkit-scrollbar-thumb {
  background: var(--color2);
  border-radius: 8px;
}
.page-contenu-home {
  scrollbar-width: thin;
  scrollbar-color: var(--color2)
                   color-mix(in srgb, var(--color0) 95%, black);
}

.body-page-1 .fluid-contenu .corps .recup-photos>div {
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}

.recup-photos .propor .propor-cont .imagecont {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0
}

.recup-photos .propor .propor-cont .imagecont img {
    object-fit: cover;
    -o-object-fit: cover;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    flex: 1;
    height: 100%
}

.recup-photos .propor {
    width: 100%;
    position: relative;
    margin-bottom: 10px;
    border-radius: var(--border-radius);
    box-shadow: var(--box-s);
    overflow: hidden
}

.recup-photos .propor:after {
    padding-top: 78%;
    display: block;
    content: ''
}

.recup-photos .propor .propor-cont {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0
}

.recup-photos .propor .propor-cont .imagecont .imagefond {
    image-rendering: optimizeQuality;
    display: block;
    height: 100%;
    width: 100%;
    overflow: hidden;
    background-position: center center;
    background-repeat: no-repeat
}

.recup-photos .propor .propor-cont .imagecont .masque {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    filter: alpha(opacity=0);
    width: 100%;
    height: 100%;
    transition: .5s;
    background-color: var(--color1);
    background-image: url(../images/ico-zoom.svg);
    background-repeat: no-repeat;
    background-position: center center
}

.recup-photos .propor .propor-cont .imagecont:hover .masque {
    opacity: .7;
    filter: alpha(opacity=70)
}

.recup-photos .propor .propor-cont .imagecont:hover .imagefond {
    -webkit-transform: scale(1.15);
    -moz-transform: scale(1.15);
    -o-transform: scale(1.15);
    -ms-transform: scale(1.15);
    transform: scale(1.15)
}

.actualites {
    display: table;
    width: 100%;
    position: relative;
    z-index: 8000;
    background-color: var(--color2);
    padding: 6em 10%
}

.actualites article {
    display: grid;
    grid-template-columns: 1fr 1fr;
    width: 100%;
    gap: 2vw;
}

.actualites:nth-child(even+1) {
    direction: rtl
}

.actualites .cell.photo {
    /*display: table-cell;*/
    vertical-align: top;
    width: 100%;
    background-position: center center;
    border-radius: var(--border-radius);
    box-shadow: var(--box-s);
}

.actualites .cell.photo a {
    display: block
}

.actualites .cell.photo.cover img {
    object-fit: cover;
    -o-object-fit: cover;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    flex: 1;
    height: 100%
}

.actualites .cell.photo:hover {
    opacity: .95;
    filter: alpha(opacity=95)
}

.actualites .cell.texte {
    width: 100%;
}

.actualites:last-child .cell.texte {
    border-bottom: none
}

.actualites .cell.texte .contenu {
    position: relative;
    padding: 3em 10%;
    color: var(--color0);
    text-align: left;
}

.actualites article .h1 {
    color: var(--color0);
    text-align: center;
}
.actualites article .titre-secondaire {
    text-align: center;
    color: var(--color0);
    line-height: calc(var(--taille_font) + 0.8rem);
}


.actualites .cell.texte .contenu ul {
    padding: 0;
    margin: 0
}

.actualites .cell.texte .contenu ul li {
    padding: 5px 0 5px 20px;
    background: url(../images/puce.svg) no-repeat 0 9px
}


.view-btn-all {
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%, -50%);
}

.view-btn-all i {
    margin-left: 8px;
    font-size: 14px
}

.news .h1, .news .h2, .news .h3, .news .h4{
    color: var(--color3);
    line-height: calc(var(--taille_font) + 1em);
    text-shadow: none;
}

.actualites .date_post,
.news .date-article {
    font-size: calc(var(--taille_font) + 0.1rem);
    color: var(--nuanceColor3)
}

.news .ligne-actus .date-article {
    margin-top: 18px;
    margin-bottom: 0
}

.news .ligne-actus .contenu-article {
    margin-top: 0
}

.news .contenu-article {
    margin-top: 21px;
}
.item-news .contenu-article ul {
    list-style-type: none !important;
}


.atouts {
    display: block;
    width: 100%;
    padding: 3em 10% 4em;
    position: relative;
    background: var(--color0);
}

.atouts .swiper-pagination-bullet-active {
    background: var(--color0);
}

.atouts .swiper-pagination-bullet {
    background: var(--color0);
}

.atouts .picto {
    margin-bottom: 0;
}

.atouts .picto i {
    width: auto;
}

.atouts .swiper-button {
    position: absolute;
    top: 45%;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 20px;
    height: 20px;
    opacity: .8;
    background: var(--nuanceColor1);
    border-radius: 50%;
    transform: translate(-50%, -50%);
}
.atouts .swiper-button i {
    color: var(--color0);
}

.atouts .swiper-button:hover {
    background: var(--color0);
    border: 1px solid var(--nuanceColor1);
}

.atouts .swiper-button:hover i {
    color: var(--nuanceColor1);
}



.atouts .swiper-button.prev {
    left: 4%;
    padding: 1.3em 1.4em 1.3em 1.2em;
}
.atouts .swiper-button.next {
    left: 96%;
    padding: 1.3em 1.2em 1.3em 1.4em;
}



.atouts .swiper-button-next i,
.swiper-button-prev i {
    font-size: 23px;
    color: var(--color2);
}

.atouts .swiper-button-next:hover,
.swiper-button-prev:hover {
    opacity: 1
}

.atouts .swiper.mySwiper {
    overflow: hidden;
    position: relative;
}

.atouts-cont {
    position: relative;
    display: block;
    padding: 2em 7% 4em;
}

.atout{
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    padding: 1em 0;
    background: var(--color0);
    border: 2px solid var(--color2);
    border-radius: var(--border-radius);
}

.atout .picto i {
    color: var(--color2);
    fill: var(--color2);
    stroke: var(--color2);
}

.atout .picto i svg{
    width: 90px;
}
.atout p.legend {
    font-size: calc(var(--taille_font));
    font-weight: bold;
    text-align: center;
    margin: 0 0 1em 0;
    color: var(--color2);
}


.AvisClientsBg {
    background: var(--color0);
}

.AvisClientsBg .bx-prev {
    left: -2vw
}

.AvisClientsBg .bx-prev:before {
    display: inline-block;
    content: "\f053";
    font-weight: 700;
    font-family: 'Font Awesome 5 Free';
    font-size: calc(var(--taille_font) + 1em);
    color: var(--nuanceColor1);
}

.AvisClientsBg .bx-next {
    right: -2vw
}

.AvisClientsBg .bx-next:before {
    display: inline-block;
    content: "\f054";
    font-weight: 700;
    font-family: 'Font Awesome 5 Free';
    font-size: calc(var(--taille_font) + 1em);
    color: var(--nuanceColor1);
}

.AvisClientsBg .bx-next,
.AvisClientsBg .bx-prev {
    text-indent: initial;
    font-size: 0;
    display: flex;
    align-items: center;
    text-decoration: none;
    justify-content: center;
    opacity: .7;
    transition: .5s
}

.AvisClientsBg .bx-prev {
    margin-top: -51px;
}

.AvisClientsBg .bx-next{
    margin-top: -56px;
}

.AvisClientsBg .bx-next:hover,
.AvisClientsBg .bx-prev:hover {
    opacity: 1
}

.AvisClientsBg .contenu .bx-viewport {
    padding: 28px 0 45px;
    display: block;
    height: auto !important
}

.AvisClientsBg.bg-optionnel-gris .h1 {
    color: var(--color0)
}

.etoiles .fa {
    color: #fc0
}

.AvisClientsList {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0;
    padding: 0
}

.AvisClientsList li {
    list-style: none;
    background: 0 0
}

.AvisClientsList li:before {
    content: none
}

.avisClientsBg .h {
    text-align: center
}

.AvisClients,
.AvisClients:link,
.AvisClients:visited {
    position: relative;
    background: var(--color0);
    padding: 2rem 9% 4rem;
    text-align: left;
    height: 100%;
    margin-top: 0;
    display: block;
    text-decoration: none;
    border: 1px solid var(--color2);
    border-radius: var(--border-radius);
}

.AvisClients:active,
.AvisClients:hover {
    background: rgb(var(--color1_rgb) , 0.1);
    border: 1px solid var(--nuanceColor1) !important;
}

.AvisClients:focus .date,
.AvisClients:visited .date {
    color: var(--color1);
}

.AvisClients:active .date,
.AvisClients:hover .date {
    color: var(--color1);
    font-weight: bold;
}

.AvisClients .h {
    font-size: 21px;
    color: var(--color2);
    text-align: left;
    text-transform: uppercase;
    font-weight: 600;
    margin-bottom: 0
}

.AvisClients p {
    font-size: 15px;
    margin-bottom: 0;
    color: var(--color3);
    padding-top: 15px
}

.AvisClients .blazy {
    font-size: 16px;
    color: var(--color0);
    width: 128px;
    margin: 0 auto;
    border-radius: 50%;
    margin-bottom: 20px;
    position: absolute;
    top: -70px;
    left: 50%;
    margin-left: -64px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-color: var(--color0)
}

.AvisClientsBg .bx-pager {
    bottom: 17px
}

.avisContent:before {
    content: '\00AB';
    display: inline-block;
    margin-right: 5px
}

.avisContent:after {
    content: '\00BB';
    display: inline-block;
    margin-left: 5px
}

.livre-ligne{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2vw;
}

.divAvis{
position: relative;
    background: var(--color0);
    padding: 2rem 9% 4rem;
    text-align: left;
    height: 100%;
    margin-top: 0;
    display: block;
    text-decoration: none;
    border: 1px solid var(--color2);
    border-radius: var(--border-radius);
}

.temoignageScroll {
    max-height: 100px;
    text-align: left;
    /*overflow: hidden*/
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.temoignageScroll .scrollbar-content {
    padding: 0 10px 0 0;
    width: 100%
}

.temoignageScroll .scrollbar-path-vertical {
    right: 0
}

.date_post {
    font-size: calc(var(--taille_font));
    padding: 4px 0
}

.date_post i {
    margin-right: 8px
}

.AvisClientsBg .bx-controls.bx-has-pager {
    display: block;
    position: relative;
    height: 70px
}


.body-service-list-0 .fluid-contenu .corps {
    padding: 0;
}

.body-page-1 .fluid-contenu .corps>article {
    padding: 20px 0px 50px 0px;
}


.sidebar {
    padding-top: 30px;
    text-align: right
}

.sidebar .photoa {
    background: url(../images/photo-accueil.jpg) right top no-repeat;
    height: 187px
}

.fluid-app {
    background: url(../images/bg-app.jpg) no-repeat center top;
    height: 730px;
    padding: 60px 0 0 0;
    position: relative;
    z-index: 8000;
}

.fluid-app h2 {
    text-align: center;
    font-size: 39px;
    text-transform: uppercase;
    color: var(--nuanceColor3);
    margin-bottom: 5px;
}

.fluid-app .soustitre {
    text-align: center;
    font-size: 22px;
    color: var(--color0);
}

.fluid-app .boutiques {
    display: block;
    list-style-image: none;
    list-style-type: none;
    margin: 0;
    padding: 50px 0 30px 0;
    text-align: center;
}

.fluid-app .boutiques li.boutique {
    display: inline-block
}

.fluid-app .services {
    display: inline-block;
    list-style-image: none;
    list-style-type: none;
    margin: 0;
    padding: 0;
}

.fluid-app .services li {
    display: block;
    background: url(../images/ico-puce.png) no-repeat 0 6px;
    padding: 0 0 15px 20px;
    font-size: 20px;
    color: var(--color0);
}

.fluid-app .qrcode {
    position: relative;
    margin: 175px 0 0 0;
    display: inline-block;
}

.fluid-app .qrcode .fleche {
    width: 97px;
    height: 67px;
    background: url(../images/fleche.png) no-repeat center top;
    position: absolute;
    top: -90px;
    left: 10px;
}

.fluid-app .application {
    position: absolute;
    top: 260px;
    left: 450px;
    width: 500px;
    height: 300px;
}

.fluid-app .application .app {
    position: absolute;
    top: 300px;
    left: 500px;
    width: 500px;
    height: 300px;
    width: 630px;
}

.fluid-app .application .app.app1 {
    top: 0px;
    left: 0px;
    height: 401px;
    background: url(../images/app1.png) no-repeat center top;
    z-index: 9995;
}

.fluid-app .application .app.app2 {
    top: 0px;
    left: 125px;
    height: 405px;
    background: url(../images/app2.png) no-repeat center top;
    z-index: 9996;
}

.fluid-app .application .app.app3 {
    top: 0px;
    left: 255px;
    height: 408px;
    background: url(../images/app3.png) no-repeat center top;
    z-index: 9997;
}


/**********/
/* Footer */
.pied {
    position: relative;
    z-index: 8000;
}

.pied .bande1 {
    padding: 70px 5% 80px ;
    background: var(--color2);
}

.pied .bande2 {
    background: var(--color2);
    /*padding-bottom: 40px;*/
}

.pied .bande3 {
    padding: 3px 0 10px 0;
    background: var(--color2);
}

.pied h2 {
    color: var(--nuanceColor3);
    text-transform: uppercase;
    font-size: 32px;
    /* text-align:center;*/
    margin-bottom: 22px;
}

.pied .bande1 h2 {
    padding: 0 0 20px 0px;
    margin: 0;
    text-align: left;
    background: url(../images/trait.png) no-repeat left bottom;
    color: var(--color0);
    font-size: calc(var(--taille_font) + 0.1em);
}

.pied .bande1 .horaires {
    margin: 1em 0;
    text-align: left;
}

.horaires .horaire-table{
    color: var(--color0) !important;
}
.body-contact .horaires .horaire-table{
    color: var(--color1) !important;
}   
.body-contact .pied  .horaires .horaire-table{
    color: var(--color0) !important;
}   

.pied .bande1 .horaires .horaires-label-closed {
    color: #FFA7A7 !important;
    /*text-shadow: 1px 1px 1px var(--color1);*/
}

.horaires-label-closed {
    color: #FFA7A7 !important;
    /*text-shadow: 1px 1px 1px var(--color1);*/
}


.pied address {
    color: var(--color0);
    padding-bottom: 2em;
}

.flex-address {
    position: relative;
    display: flex;
    flex-direction: row;
}

.flex-address .adresse {
    margin: 1em 0;
}

.pied i {
    width: 1em;
    margin: 1.1em 0.2em 0 0;
    color: var(--color0);
}

.tel i {
    margin: 0.1em 0;
}


.pied .tel .t_affiche {
    padding: 0 0.5em
}
.pied .tel .t_phone {
    padding: 0 1.65em;
    color: var(--color0);
}


/*
.pied .navf {
    text-align: center
}

.pied .navf .menu_footer {
    color: var(--color0);
    padding: 15px 0 18px 0;
    list-style-type: none;
    margin: 0
}

.pied .navf .menu_footer li {
    display: inline;
    margin-right: -4px
}

.pied .navf .menu_footer li a,
.pied .navf .menu_footer li a:visited {
    font-size: 17px;
    text-transform: uppercase;
    padding: 0 8px;
    color: inherit;
    text-decoration: none
}

.pied .navf .menu_footer li a:hover {
    text-decoration: underline
}

.pied .navf .menu_footer li.active a:hover {
    cursor: default;
    text-decoration: none
}
*/



/*.pied address p.tel.tel1{}*/
.pied address p.tel a {
    color: inherit;
    text-decoration: none
}

.pied address p a {
    text-decoration: none;
    color: inherit
}

.pied address p a:hover {
    text-decoration: underline
}

.pied .horaires {
    padding: 0;
    margin: 0;
    text-align: center;
}

.pied .smartfood {
    margin: 80px 0px 0px 0px;
    text-align: center;
}

.pied .abus {
    text-align: center;
    margin: 0;
}

.pied .abus span {
    display: inline-block;
    background: url(../images/ico-abus.png) no-repeat 0 0;
    padding: 0 0 20px 40px;
    color: var(--color0);
    font-size: 9px;
}

.pied .copyright-footer {
    margin: 25px 0px 30px 0px;
    color: var(--color0);
    font-size: 10px;
    text-align: center
}

.pied .copyright-footer a {
    color: inherit;
    text-decoration: none
}

.pied .copyright-footer a:hover {
    text-decoration: underline
}

#logoFD svg * {
    fill: var(--color0);
}

#logoFD svg {
    width: 200px;
}

.pied .btn-partage {
    text-align: center;
    padding: 10px 0px 0px 0px
}

.pied .btn-partage .btnp {
    margin: 0 5px;
    background-repeat: no-repeat;
    background-position: center center;
    display: inline-block;
    transition: all 400ms ease;
    width: 36px;
    height: 36px;
    border-radius: 36px;
    background-color: #282828;
}

.pied .btn-partage .btnp:hover {
    transform: rotate(360deg)
}

.pied .btn-partage .btnp.btn-fb {
    background-image: url(../images/ico-fb-h.png)
}

.pied .btn-partage .btnp.btn-twitter {
    background-image: url(../images/ico-twitter-h.png)
}

.pied .btn-partage .btnp.btn-google {
    background-image: url(../images/ico-google-h.png)
}

.sitemap a{
    color: var(--color3);
}

.sitemap li a:hover {
    color: var(--nuanceColor1);
}


/* SUDO SLIDER *************************************************************/
/* *************************************************************************/
/* .banniere{position:absolute;top:0px;left:50%;margin-left:-1000px;width:2000px;height:975px;background:url(../images/ban3.jpg) no-repeat center top;}
 */


/*
.body-carte .banniere {
    background-image: url(../images/ban1.jpg);
}

.body-formule-list .banniere {
    background-image: url(../images/ban6.jpg);
}

.body-gallery-22 .banniere {
    background-image: url(../images/ban2.jpg);
}

.body-page-16 .banniere {
    background-image: url(../images/ban3.jpg);
}

.body-contact .banniere {
    background-image: url(../images/ban4.jpg);
}

.body-page-21 .banniere {
    background-image: url(../images/ban5.jpg);
}
*/
.cont-slider {
    position: absolute;
    top: 0px;
    left: 50%;
    margin-left: -1000px;
    width: 2000px;
}

.sudo-slider,
.sudo-slider img {
    width: 100%
}

.cont-slider .controls {
    display: none;
}

/*.cont-slider .controls{z-index:9000;display:inline-block;position:absolute;bottom:85px;left:0;right:0;text-align:center }
.cont-slider .controls ol{margin:0;padding:0;list-style-type:none }
.cont-slider .controls ol li{display:inline-block }
.cont-slider .controls ol li a{display:block;width:20px;height:20px;background:var(--nuanceColor);margin:0 2px;border-radius:20px;}
.cont-slider .controls ol li.current a{background:var(--color0) }
.cont-slider .controls ol li a span{display:none }
*/
/*.miettes-externes{position:absolute;bottom:80px;left:0px;right:0px;text-align:center;}
.miettes-externes a{display:inline-block;width:20px;height:20px;margin:0 2px;background:var(--nuanceColor);border-radius:20px;}
.miettes-externes a:hover,.miettes-externes a.current{background:var(--color0) }
*/
/* SUDO SLIDER GAL *********************************************************/
/* *************************************************************************/
.cont-slidergal {
    position: relative
}

.sudo-slidergal,
.sudo-slidergal img {
    width: 100%
}

a.sudoliengal.precedent,
a.sudoliengal.suivant {
    z-index: 9000;
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 18px;
    height: 40px;
    margin-top: -20px;
    opacity: 0
}

a.sudoliengal.precedent {
    left: 10px;
    background: url(../images/g.png)
}

a.sudoliengal.suivant {
    right: 10px;
    background: url(../images/d.png)
}

.cont-slidergal:hover a.sudoliengal.precedent,
.cont-slidergal:hover a.sudoliengal.suivant {
    opacity: 1
}

.cont-slidergal .controls {
    display: none
}

.sudo-slidergal .propor:after {
    padding-top: 72%;
    display: block;
    content: '';
}

.sudo-slidergal .propor .propor-cont {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
}

.sudo-slidergal .propor .propor-cont .imagecont {
    height: 100%;
    display: block;
    width: 100%;
    overflow: hidden;
    position: relative;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.sudo-slidergal .propor .propor-cont .imagecont .imagefond {
    image-rendering: optimizeQuality;
    display: block;
    height: 100%;
    width: 100%;
    overflow: hidden;
    background-position: center center;
    background-repeat: no-repeat;
}

/* SCROLL PERSONNALISE ****************************************************/
/* *************************************************************************/
/*.scrollbars{width:100%;height:300px }
.scrollbar-path-vertical,.scrollbar-path-horizontal{position:absolute;background-color:#eee;background-color:rgba(220,220,220,0.5);z-index:100;}
.scrollbar-path-horizontal{bottom:5px;left:0;width:100%;height:10px;}
.scrollbar-path-vertical{right:5px;top:0;height:100%;width:10px;}
.scrollbar-path-vertical{box-shadow:inset 1px 0px 1 rgba(0,0,0,0.1) }
.scrollbar-path-horizontal{box-shadow:inset 0px 1px 1 rgba(0,0,0,0.1) }
.scrollbar-handle{position:relative;top:0;left:0;background-color:#58eebc;}
.scrollbar-path-vertical .scrollbar-handle{height:20%;width:100%;}
.scrollbar-path-horizontal .scrollbar-handle{width:20%;height:100%;}
.scrollbar-path-vertical, .scrollbar-path-horizontal, .scrollbar-handle{border-radius:5px;}
.scrollbar-content{padding:0 20px 0 0;float:none !important }
*/
/* MODULE CONTACT *********************************************************/
/* *************************************************************************/
label.checkbox.label-rgpd {
    font-size: 11px !important;
}

.form-group .label-rgpd strong,
.info-rgpd strong,
.info-rgpd a,
.info-rgpd a:visited {
    color: var(--color1)000;
}

.form-horizontal .checkbox,
.form-horizontal .radio {
    display: inline-block;
    vertical-align: top;
    margin: 0 20px 0 0;
    font-weight: normal;
}

.checkbox input[type=checkbox],
.checkbox-inline input[type=checkbox],
.radio input[type=radio],
.radio-inline input[type=radio] {
    position: static;
    width: auto;
    margin: 7px 5px 0 0;
}

.corps-contact.formulaire {
    padding: 0 0px;
}

.tabb-contact {
    display: table;
    margin: 0;
    padding: 0;
    width: 100%;
}

.tabb-contact .cell {
    display: table-cell;
    vertical-align: top;
}

.tabb-contact .cell.cellg {
    width: 33.3333%;
    background: #f5f5f5
}

/*.tabb-contact .cell.celld{}*/
.tabb-contact .corps-contact {
    padding: 90px 60px 10px 60px
}

.contact h2 {
    display: none;
    text-align: center;
    padding: 0 0 20px 0px;
    margin: 0 0 30px 0;
    background: url(../images/trait.png) no-repeat center bottom;
}

.contact .plan h2 {
    margin-top: 20px
}

.contact .plan {
    font-size: 0
}

.contact .plan .block #googlemapapi,
.contact .plan iframe {
    width: 100% !important;
    height: 350px !important
}

.contact .coordonnees {
    padding: 70px 0px 70px 0px
}

/*.contact .coordonnees h2{}
.contact .coordonnees address p{}
.contact .coordonnees address p.adresse{}
.contact .coordonnees address p.tel{}*/
.contact .coordonnees address p.tel a {
    color: inherit;
    text-decoration: none
}

/*.contact .coordonnees address p.mail{}
.contact .coordonnees address p span.intitule{}
.contact .coordonnees address p span.texte{}*/
.contact .coordonnees address p a {
    text-decoration: none;
    color: inherit
}

.contact .coordonnees address p a:hover {
    text-decoration: underline
}

/* Texte description */
.contact .description-contact {
    padding: 0px 0px 20px 0px;
    text-align: center;
}

/* Enlever padding conteneur champs */
.contact .formulaire .form-group label.col-md-4 {
    padding-left: 0 !important;
    padding-right: 0 !important
}

.contact .formulaire .form-group div.col-md-8 {
    padding-left: 0 !important;
    padding-right: 0 !important
}

/* Changement largeurs labels+champs */
.contact .formulaire .form-group .col-md-4 {
    display: none;
}

.contact .formulaire .form-group div.col-md-8 {
    width: 100% !important
}

/* Style des champs */
.contact .formulaire .control-label {
    text-align: left !important;
    font-weight: normal
}

/* Labels */
.contact .formulaire .form-group {
    margin-bottom: 14px;
    padding: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important
}

/* Espace entre lignes */
.contact .formulaire .form-group .form-control {
    background: rgb(var(--color1_rgb) , 0.05);
    border: 1px solid var(--color1);
    box-shadow: none;
    border-radius: 0px;
    font-size: inherit;
}

.contact .formulaire .form-group textarea.form-control {
    height: 104px;
    position: static;
    width: 100% !important;
}

.contact .formulaire .form-group input.form-control {
    height: 48px;
    line-height: 1;
    line-height: 48px \9;
    padding: 0px 12px;
}

/* Ne pas toucher le padding */
.contact .formulaire .form-group select.form-control {
    height: 48px;
    line-height: 48px;
    padding: 5px
}

/* Jouer avec le padding pour corriger FF */
/* Captcha + Bouton submit (MODELE 2) */
.contact .formulaire .form-group input[name="captcha"] {
    width: 41% !important;
    height: 48px !important;
    display: inline-block;
    float: none !important;
    margin-right: 2% !important;
    vertical-align: top;
}

.contact .formulaire .form-group input[name="captcha"]+a {
    width: 25%;
    display: inline-block;
    margin-right: 2%;
    vertical-align: top;
}

.contact .formulaire .form-group #captcha {
    width: 100%;
    height: 48px !important;
    border-radius: 0;
    padding: 0;
    border: 1px solid var(--color0);
}

.contact .formulaire .form-group input.btn-primary {
    width: 30%;
    display: inline-block;
}

/* Texte required */
.contact .formulaire .form-actions {
    font-size: 12px;
    color: #ff0000;
    font-style: italic;
}

/* Agrandir le plan */
.contact a.btn.btn-default {
    float: right
}

/* Bouton submit + Agrandir le plan + bouton page erreur 404 */
.body-error404 a.btn.btn-default,
.contact .formulaire input.btn-primary,
.contact a.btn.btn-default {
	display: inline-block;
	vertical-align: middle;
	padding: 1.2rem 4rem 0.9rem 4rem;
	color: var(--color0);
	font-size: calc(var(--taille_font) + 0.1em);
	background: var(--nuanceColor1);
	border: solid 1px var(--nuanceColor1);
	border-radius: var(--border-radius);
}

.body-error404 a.btn.btn-default:hover,
.body-error404 a.btn.btn-default:active,
.contact .formulaire input.btn-primary:hover,
.contact .formulaire input.btn-primary:active,
.contact a.btn.btn-default:hover,
.contact a.btn.btn-default:active {
    color: var(--nuanceColor1);
    background: var(--color0);
}

/* Couleurs des placeholder */
*::-webkit-input-placeholder {
    color: var(--color1) !important
}

*:-moz-placeholder {
    color: var(--color1) !important;
    opacity: 1 !important
}

/* FF 4-18 */
*::-moz-placeholder {
    color: var(--color1) !important;
    opacity: 1 !important
}

/* FF 19+ */
*:-ms-input-placeholder {
    color: var(--color1) !important
}

/* IE 10+ */
/* Formulaire pageseo */
.pageseo .formulaire .form-group input[name="captcha"] {
    width: 100% !important;
    margin-right: 0% !important;
    text-align: left !important;
}

.pageseo .formulaire .form-group input[name="captcha"]+a {
    position: absolute;
    width: 140px;
    top: 0;
    right: 0;
    margin-right: 0px !important;
}

.pageseo .formulaire .form-group input.btn-primary {
    width: 50%;
    margin-top: 0;
}

.flex-seoContain {
    position: relative;
    display: flex;
    width: 100%;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
}

.flex-seoContain .seo-content {
    width: 55%;
    padding-top: 1em;
    text-align: justify;
}

.flex-seoContain .seo-content a{
    text-decoration: underline;
}
.flex-seoContain .seo-content a:visited{
    color: var(--color1);
}

.flex-seoContain .seo-content a:hover,
.flex-seoContain .seo-content a:focus{
    color: var(--color3);
}

.flex-seoContain .seo-content h1,
.flex-seoContain .seo-form h2.h1 {
    text-align: left;
}

.flex-seoContain .seo-content h1:before,
.flex-seoContain .seo-form h2.h1:before {
    left: 0;
    margin-left: 0;
}

.flex-seoContain .seo-form {
    width: 43%;
    padding: 2em 2% 3em;
    background: #d6af8547;
}

.img-seo img {
    border-radius: var(--border-radius);
    width: 240px;
    height: auto;
}

/* MODULE GALERIE *********************************************************/
/* *************************************************************************/
.elemelem {
    margin: 0 0 30px 0;
}

.gallery .kikoolol {
    padding: 10px 0 30px 60px
}

.gallery .sansimage .kikoolol {
    padding: 10px 0 30px 0px
}

.gallery .description-galerie {
    padding: 0 0px 0px 0px;
    text-align: justify
}

/* Espace entre colonnes de photos */
.gallery .ligne-photos .col-md-1,
.gallery .ligne-photos .col-md-2,
.gallery .ligne-photos .col-md-3,
.gallery .ligne-photos .col-md-4,
.gallery .ligne-photos .col-md-6 {
    padding-left: 5px !important;
    padding-right: 5px !important
}

/* Espace gauche et droite des lignes de photos */
.gallery .ligne-photos {
    margin-left: -5px !important;
    margin-right: -5px !important
}

.gallery .ligne-photos .propor {
    width: 100%;
    position: relative;
    margin-bottom: 10px
}

.body-gallery .gallery .ligne-photos{
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Images en gris / en couleur au survol (il y a conflit quand galerie simple + multigalerie) */
/*.gallery .ligne-photos .propor{filter:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg'><filter id='grayscale'><feColorMatrix type='matrix' values='0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0'/></filter></svg>#grayscale");filter:gray;-webkit-filter:grayscale(100%);}
.gallery .ligne-photos .propor:hover{filter:none;-webkit-filter:grayscale(0%);}
*/
.gallery .ligne-photos .propor:after {
    padding-top: 72%;
    display: block;
    content: '';
}

.gallery .ligne-photos .propor .propor-cont {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
}

.gallery .ligne-photos .propor .propor-cont .imagecont {
    height: 100%;
    display: block;
    border: 1px solid #d4d4d4;
    width: 100%;
    overflow: hidden;
    position: relative;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.gallery .ligne-photos .propor .propor-cont .imagecont .imagefond {
    image-rendering: optimizeQuality;
    display: block;
    height: 100%;
    width: 100%;
    overflow: hidden;
    background-position: center center;
    background-repeat: no-repeat;
}

/* Effet photo */
.gallery .ligne-photos .propor .propor-cont .imagecont img {
    object-fit: cover;
    -o-object-fit: cover;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    flex: 1;
    height: 100%;
}

.gallery .ligne-photos .propor .propor-cont .imagecont .masque {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    filter: alpha(opacity=0);
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5) url('../images/ico-zoom.png') no-repeat center center
}

.gallery .ligne-photos .propor .propor-cont .imagecont:hover .masque {
    opacity: 1;
    filter: alpha(opacity=100)
}

.gallery .ligne-photos .propor .propor-cont .imagecont:hover .imagefond {
    -webkit-transform: scale(1.15);
    -moz-transform: scale(1.15);
    -o-transform: scale(1.15);
    -ms-transform: scale(1.15);
    transform: scale(1.15);
}

/* GALERIE MULTIPLE */
.gallery .nav {
    margin: 10px 0px;
    padding-right: 10px
}

.gallery .nav li {
    display: inline-block;
    width: 100%;
    margin-bottom: 10px
}

.gallery .nav li a {
    background: #222;
    display: block;
    color: var(--color0);
    padding: 10px 10px;
    text-align: center;
    border-radius: 0;
    text-decoration: none
}

.gallery .nav li a:hover,
.gallery .nav li.active a {
    background: #424445;
    color: var(--color0)
}

.gallery .nav li.active a {
    cursor: default
}

.gallery .tab-content {
    padding-top: 10px;
    padding-bottom: 10px;
}

.gallery .tab-content h2 {
    padding-left: 15px;
    margin-bottom: 20px
}

/* MODULE FORMULES ********************************************************/
/* *************************************************************************/
.tabb-formule {
    display: table;
    margin: 0;
    padding: 0;
    width: 100%;
}

.tabb-formule.sansimage {
    display: inline-table;
    width: 60%;
}

.tabb-formule .cell {
    display: table-cell;
    vertical-align: top;
    position: relative;
}

.tabb-formule .cell.cellg {
    width: 58%;
    background-position: center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

.tabb-formule .cell.cellg.cell1.pair {
    display: none;
}

.tabb-formule .cell.cellg.cell2.impair {
    display: none;
}

.tabb-formule .cell.celld .contt {
    padding: 30px 50px 30px 40px
}

.formules .formule {
    margin: 0 0 50px 0;
    text-align: center;
}

.formules .formule .haut {
    margin: 0 0 10px 0;
}

.formules .formule .haut h2 {
    margin: 0;
    padding: 5px 0 5px 0px;
    font-size: 26px;
    color: var(--nuanceColor3);
    text-align: center;
}

.formules .formule ul {
    list-style-type: none;
    list-style-image: none;
    padding: 0;
    padding: 45px 10px;
    text-align: center;
    border-top: 1px solid #e2d3c2;
    border-bottom: 1px solid #e2d3c2;
}

.formules .formule ul .item {
    padding: 5px 0 10px 0;
    font-size: 17px;
}

.formules .formule ul .item .description {
    font-size: small;
}

.formules .formule ul .item .prix-item {
    font-weight: bold;
}

.formules .formule hr {
    height: 5px;
    background: url(../images/ico-titre.png) no-repeat center top;
    border: none;
}

.formules .formule .prix {
    padding: 5px 0 0 0;
    font-size: 18px;
    font-size: 26px;
    color: var(--nuanceColor3);
    text-align: center;
}

/* MODULE CARTE ***********************************************************/
/* *************************************************************************/
/* Tableau 2 *************** */
.tabb-carte {
    display: table;
    margin: 0;
    padding: 0;
    width: 100%;
}

.tabb-carte .cell {
    display: table-cell;
    vertical-align: top;
    position: relative;
}

.tabb-carte .cell:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-size: 30vh 30vw;
    background-position: 65% 50%;
    z-index: -1;
    opacity: 0.3;
}

.carte .group:nth-child(3n+1) .tabb-carte .cell:before {
    background-image: url("../images/table.svg");
}

.carte .group:nth-child(3n+2) .tabb-carte .cell:before {
    background-image: url("../images/table2.svg");
}
.carte .group:nth-child(3n+3) .tabb-carte .cell:before {
    background-image: url("../images/verres.svg");
}

.tabb-carte .cell.cellg {
    width: 33.3333%;
    background: url(../images/photo2.jpg) no-repeat center top;
    background-position: center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

/*.tabb-carte .cell.cellc{}
.tabb-carte .cell.celld{}*/
.tabb-carte .cell.celld .contt {
    padding: 0px 0px 30px 60px;
}

.tabb-carte .cell.celld.sansimage .contt {
    padding: 0px 0px 30px 0px;
}

.carte .tableau {
    display: table;
    table-layout: fixed;
    width: 100%
}

.carte .cellule {
    display: table-cell;
    vertical-align: top
}

.carte .group {
    margin: 0 0 50px 0;
}

.carte h2 {
    padding: 10px 0;
    color: var(--color3);
}
.carte .titre {
    color: var(--color1);
}

.carte .price {
    width: 100px;
    padding: 17px 0 0 0;
    font-size: calc(var(--taille_font) + 0.2em);
}

.carte ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
    list-style-image: none
}

.carte ul li.item {
    display: table;
    table-layout: fixed;
    width: 100%;
    border-bottom: 1px solid rgb(var(--color1_rgb) , 0.1);
}

.carte ul li.item:last-child {
    border: none;
}

.carte ul li.item .item-title {
    display: table-cell;
    vertical-align: top;
    padding: 10px 0px 10px 0px;
    text-transform: uppercase;
    text-transform: uppercase;
}

.carte ul li.item .price {
    display: table-cell;
    vertical-align: top;
    text-align: right;
}

.carte ul li.item.multiprix .price {
    text-align: center;
    font-size: calc(var(--taille_font) + 0.2em);
}

.carte ul li.item small {
    display: block;
    color: var(--color2);
    text-transform: none;
    font-size: calc(var(--taille_font));
}

.carte .group .propor {
    width: 100%;
    position: relative;
    margin-bottom: 20px
}

.carte .group .propor:after {
    padding-top: 72%;
    display: block;
    content: '';
}

.carte .group .propor .propor-cont {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
}

.carte .group .propor .propor-cont .imagecont {
    height: 100%;
    display: block;
    border: 1px solid #81b836;
    width: 100%;
    overflow: hidden;
    position: relative;
    border-radius: 10px;
}

.carte .group .propor .propor-cont .imagecont .imagefond {
    image-rendering: optimizeQuality;
    display: block;
    height: 100%;
    width: 100%;
    overflow: hidden;
    background-position: center center;
    background-repeat: no-repeat;
}

.carte .group .propor .propor-cont .imagecont .masque {
    display: block;
    position: absolute;
    top: -100%;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5) url('../images/ico-zoom.png') no-repeat center center
}

.carte .group .propor .propor-cont .imagecont:hover .masque {
    top: 0
}

.carte .group .propor .propor-cont .imagecont:hover .imagefond {
    -webkit-transform: scale(1.15);
    -moz-transform: scale(1.15);
    -o-transform: scale(1.15);
    -ms-transform: scale(1.15);
    transform: scale(1.15);
}

.carte .group .noimage {
    background: var(--color0) url(../images/noim.jpg) no-repeat center center;
    background-size: auto !important;
    display: block;
    height: 100%;
    width: 100%;
    overflow: hidden;
}

/* MENU MOBILE 3 ***********************************************************/
/* *************************************************************************/
.header-sidebars,
.sidebar-left,
.sidebar-right {
    background-color: var(--color0);
    letter-spacing: 1px;
}

.sidebar-left a,
.sidebar-right a,
.sidebar-bottom-controls a,
.contactButton,
.nav-item-active,
.sidebar-form label,
.sidebar-send-button,
.sidebar-divider-text {
    color: var(--color0) !important
}

.header-sidebars {
    height: 65px;
    z-index: 9999;
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    width: 100%;
    box-shadow: 0 2px 3px 1px rgba(0, 0, 0, 0.1)
}

.header-sidebars .header-top {
    display: table;
    height: 65px;
    background: var(--color0);
    width: 100%;
}

.top-logo {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 60%;
    z-index: 9999;
}

.top-logo img {
    max-height: 65px;
    width: auto;
}

.deploy-left-sidebar {
    display: table-cell;
    background-color: var(--color2);
    background-size: auto 49%;
    background-image: url(../images/menu-mobile-3/nav.svg);
    background-repeat: no-repeat;
    height: 65px;
    width: 65px;
    background-position: center center
}

.deploy-right-sidebar {
    border-left: 1px var(--nuanceColor3) solid;
    display: table-cell;
    background-color: var(--color2);
    background-size: auto 49%;
    background-image: url(../images/menu-mobile-3/nav.svg);
    background-repeat: no-repeat;
    height: 65px;
    width: 65px;
    background-position: center center;
}

.deploy-right-mail {
    border-left: 1px var(--nuanceColor3) solid;
    display: table-cell;
    background-color: var(--color2);
    background-size: auto 49%;
    background-image: url(../images/menu-mobile-3/mail.svg);
    background-repeat: no-repeat;
    height: 65px;
    width: 65px;
    background-position: center center;
    position: absolute;
    right: 65px;
    top: 0;
}

.deploy-right-call {
    display: table-cell;
    background-color: var(--color2);
    background-size: auto 49%;
    background-image: url(../images/menu-mobile-3/telephone.svg);
    background-repeat: no-repeat;
    height: 65px;
    width: 65px;
    background-position: center 16px;
    position: absolute !important;
    right: 130px;
    top: 0;
}

.deploy-back-home {
    background-image: url(../images/menu-mobile-3/home.png);
    background-repeat: no-repeat;
    background-color: #f9fafc;
    width: 50px;
    height: 50px;
    background-position: center center;
    float: right;
    margin-top: -50px
}

.delete-right-sidebar {
    display: none;
    background-image: url(../images/menu-mobile-3/contact.png);
    background-repeat: no-repeat;
    background-color: #f9fafc;
    width: 50px;
    height: 50px;
    background-position: center center;
    float: right;
    margin-top: -50px
}

.sidebar-left {
    font-family: Helvetica !important;
    width: 270px;
    position: fixed;
    z-index: 9999;
    top: 0;
    left: -270px;
    bottom: 0;
    overflow: hidden;
    position: fixed;
    box-shadow: 3px 0px 3px 0px rgba(0, 0, 0, 0.1);
}

.sidebar-scroll-left {
    padding-right: 20px;
    left: 0;
    width: 310px;
    overflow: scroll !important;
    overflow-x: hidden !important;
    -webkit-overflow-scroll: touch !important;
    height: 100%;
    background-color: #c31c26;
}

.sidebar-scroll-right {
    width: 275px;
    overflow: auto !important;
    overflow-x: hidden !important;
    height: 100%;
    background-color: var(--color2);
}

.sidebar-right {
    font-family: Helvetica !important;
    background-repeat: repeat;
    position: fixed;
    overflow: hidden;
    z-index: 99999;
    right: -280px;
    top: 0;
    bottom: 0;
    width: 270px;
    margin-right: 10px;
    box-shadow: -2px 0px 2px 0px rgba(0, 0, 0, 0.1);
}

.sidebar-decoration {
    background-image: url(../images/menu-mobile-3/sidebar-deco.png);
    background-repeat: repeat-x;
    height: 2px;
    margin-bottom: 15px
}

.sidebar-left a,
.sidebar-right a {
    text-decoration: none;
    display: block;
    overflow: hidden;
    position: relative;
    color: var(--color0) !important;
    z-index: 1;
}

.sidebar-header-left {
    height: 65px;
    background-color: var(--color2);
    position: relative
}

.sidebar-left-logo {
    max-height: 70px;
    position: absolute;
    top: -2px;
    left: 8px;
    margin-right: 179px;
}

.sidebar-right-logo {
    margin-left: 84px;
    top: 2px;
    right: 10px;
    max-width: auto;
    float: inherit;
    max-height: 100%;
    position: relative;
    /*background: rgb(var(--color0_rgb) , 0.5);*/
}

.close-sidebar-left {
    background-image: url(../images/menu-mobile-3/left-chevron.svg);
    background-size: 45% auto;
    background-repeat: no-repeat;
    background-position: center center;
    height: 65px;
    width: 65px;
    margin-left: 205px;
    display: block
}

.sidebar-divider-text {
    font-size: calc(var(--taille_font) + 0.6em);
    font-family: var(--font_family_1_bold);
    padding-top: 15px;
    padding-left: 20px;
    padding-bottom: 15px;
    margin-bottom: 0;
    color: var(--color0) !important;
    /*background: rgb(var(--color1_rgb) , 0.1);*/
}

.home-nav {
    background-image: url(../images/menu-mobile-3/home.png)
}

.info-nav {
    background-image: url(../images/menu-mobile-3/infoabout.png)
}

.folio-nav {
    background-image: url(../images/menu-mobile-3/bendedright.png)
}

.mail-nav {
    background-image: url(../images/menu-mobile-3/mail.svg)
}

.newsletter-nav {
    background-image: url(../images/menu-mobile-3/rss.png)
}

.call-nav {
    background-image: url(../images/menu-mobile-3/phonehook.svg)
}

.text-nav {
    background-image: url(../images/menu-mobile-3/speechbubble4.png)
}

.facebook-nav {
    background-image: url(../images/menu-mobile-3/facebook.png)
}

.twitter-nav {
    background-image: url(../images/menu-mobile-3/twitter.png)
}

.sidebar-bottom-controls {
    background-color: var(--color2);
}

.sidebar-bottom-controls p {
    margin-top: 3px;
}

.sidebar-bottom-controls a {
    font-size: 12px;
    background-repeat: repeat-y;
    text-align: center;
    float: left;
    width: 33%;
    line-height: 10px;
    display: block
}

.facebook-bottom {
    display: block;
    padding-top: 26px;
    background-image: url(../images/menu-mobile-3/facebook.png);
    background-repeat: no-repeat;
    background-position: center 33px;
    background-size: 16px 16px;
    height: 50px;
    margin-top: -25px
}

.twitter-bottom {
    display: block;
    background-image: url(../images/menu-mobile-3/twitter.png);
    background-repeat: no-repeat;
    background-position: center 33px;
    background-size: 16px 16px;
    height: 50px;
    margin-top: -25px
}

.close-bottom-left,
.close-bottom-right {
    display: block;
    padding-top: 26px;
    background-image: url(../images/menu-mobile-3/accessdenied.png);
    background-repeat: no-repeat;
    background-position: center 33px;
    background-size: 16px 16px;
    height: 50px;
    margin-top: -25px
}

.nav-item {
    font-size: 16.2px;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    background-size: 22px auto;
    background-color: #c9323b;
    height: 60px;
    line-height: 61.5px;
    background-repeat: no-repeat;
    padding-left: 60px;
    background-position: 20px center;
    margin-bottom: 1px;
}

.icon-active {
    position: absolute;
    background-image: url(../images/menu-mobile-3/left-sidebar/location.png);
    background-size: 10px 15px;
    background-repeat: no-repeat;
    display: block;
    width: 10px;
    height: 15px;
    top: 19px;
    left: 240px
}

.icon-page {
    position: absolute;
    background-image: url(../images/menu-mobile-3/left-sidebar/gopage.png);
    background-size: 8px 11px;
    background-repeat: no-repeat;
    display: block;
    width: 10px;
    height: 15px;
    top: 19px;
    left: 240px
}

.icon-drop {
    position: absolute;
    background-image: url(../images/menu-mobile-3/left-sidebar/godrop.png);
    background-size: 10px 8px;
    background-repeat: no-repeat;
    display: block;
    width: 10px;
    height: 15px;
    top: 19px;
    left: 239px
}

.submenu a {
    text-shadow: 0 2px 0 rgba(0, 0, 0, 1);
    background-image: url(../images/menu-mobile-3/sidebar-deco.png);
    background-repeat: repeat-x;
    padding-top: 12px;
    padding-bottom: 12px;
    padding-left: 25px;
    font-size: 10px;
    color: #878787;
    text-transform: uppercase;
    font-weight: 900
}

.submenu a em {
    background-image: url(../images/menu-mobile-3/left-sidebar/gopage.png);
    background-size: 8px 11px;
    background-repeat: no-repeat;
    float: left;
    width: 10px;
    height: 15px;
    display: block;
    margin-top: 5px;
    padding-right: 35px
}

.submenu a:first-child {
    background-image: none !important
}

.submenu {
    display: none
}

.submenu-active {
    display: block
}

.sidebar-notifications a {
    margin-bottom: 15px;
    background-repeat: no-repeat;
    background-position: 0 center;
    padding-left: 38px;
    margin-left: 20px;
    font-size: 10px;
    color: #878787;
    font-family: 'Lato', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    line-height: 10px
}

.sidebar-header-right {
    height: 65px;
    background-color: var(--color2);
    position: relative;
}

.close-sidebar-right {
    background-image: url(../images/menu-mobile-3/right-chevron.svg);
    background-size: 45% auto;
    background-repeat: no-repeat;
    background-position: center center;
    height: 65px;
    width: 65px;
    margin-left: 0;
    display: block
}

.sidebar-left .close-sidebar-left,
.sidebar-right .close-sidebar-right {
    position: absolute !important;
}

.right-sidebar-copyright {
    margin: 20px 0
}

.footer-text a {
    padding-top: 10px;
    font-size: 10px;
    color: #8a8a8a
}

.copyright-sidebar {
    font-size: 10px;
    text-align: center;
    text-transform: uppercase
}

.menu-mobile-dynamique {
    margin: 0;
    padding: 0;
    list-style-type: none;
    list-style-position: inside;
    list-style-image: none
}

.menu-mobile-dynamique li {
    width: 100%;
    margin-bottom: 1px;
    background: var(--color2);
    padding-left: 18px;
}

.menu-mobile-dynamique .sub-menu li {
    background-color: transparent;
    margin-bottom: 0;
}

.menu-mobile-dynamique .sub-menu li a {
    height: 42px;
    text-transform: none;
}

.menu-mobile-dynamique .sub-menu {
    background-image: linear-gradient(to bottom, var(--nuanceColor3), var(--nuanceColor3));
    padding-top: 18px;
    padding-bottom: 18px;
}

.menu-mobile-dynamique li.parent {
    background-image: url(../images/menu-mobile-3/left-sidebar/gopage.svg);
    background-position: 241px 26.2px;
    background-repeat: no-repeat;
    background-size: 9px auto;
}

.menu-mobile-dynamique li a {
    display: table-cell;
    width: 270px;
    vertical-align: middle;
    text-decoration: none !important;
    line-height: 1.5;
    font-size: calc(var(--taille_font));
    background-image: url(../images/menu-mobile-3/bendedright.svg);
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    background-size: 8px auto;
    text-transform: uppercase;
    color: var(--color0);
    font-family: var(--font_family_1);
    height: 60px;
    background-repeat: no-repeat;
    padding-left: 1.5em;
    background-position: 0% 30%;;
}

.menu-mobile-dynamique ul {
    list-style-image: none;
    list-style-position: inside;
    list-style-type: none;
    padding-left: 0
}

.menu-mobile-dynamique ul li a {
    background: none;
    color: #BEBEBE
}

.small-notification p {
    margin: 10px 13px;
    padding-bottom: 2px;
    line-height: 18px
}

.text-input {
    overflow: hidden;
    position: relative;
    font-size: 11px;
    color: #666;
    width: 230px;
    margin-left: 20px;
    height: 30px;
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 10px;
    display: block;
    box-sizing: border-box;
    background-color: rgba(255, 255, 255, 0.1);
    border: solid 1px #3d3d3d
}

#contactEmail {
    margin-bottom: -5px !important
}

#contactMessage {
    display: none
}

#contactName {
    display: none;
    margin-bottom: 10px
}

#left_label_name {
    overflow: hidden;
    position: relative;
    display: none;
    text-align: left;
    margin-left: 200px;
    font-size: 11px;
    color: #8c8c8c;
    opacity: .3;
    margin-top: -20px;
    padding-bottom: 5px;
    margin-bottom: 10px
}

#name_label {
    overflow: hidden;
    position: relative;
    display: none;
    margin-top: 20px;
    margin-left: 20px;
    font-family: 'Lato', sans-serif;
    font-size: 12px;
    color: #c5c5c5
}

#email_label {
    margin-top: 20px;
    margin-left: 20px;
    font-size: 12px;
    color: #c5c5c5;
    display: block;
    overflow: hidden;
    position: relative
}

#left_label_mail {
    display: block;
    overflow: hidden;
    position: relative;
    line-height: 18px;
    text-align: left;
    margin-left: 200px;
    font-size: 11px;
    color: #8c8c8c;
    opacity: .3;
    font-family: 'Open Sans', sans-serif;
    margin-top: -20px;
    padding-bottom: 5px;
    margin-bottom: 10px
}

.contact-button-house {
    line-height: 18px;
    margin-bottom: 20px;
    font-size: 11px;
    display: block;
    overflow: hidden;
    position: relative;
    /*vertical-align:baseline;*/
    outline: none
}

.contactButton {
    display: block;
    overflow: hidden;
    position: relative;
    margin-left: 20px;
    margin-top: 30px;
    height: 36px;
    font-family: 'Lato', sans-serif;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    width: 230px;
    background-color: rgba(255, 255, 255, 0.1);
    border: solid 1px #3d3d3d
}

.buttonWrap {
    padding: 10px !important;
    min-width: 43%
}

.contactSubmitButton {
    display: block !important;
    height: 36px !important;
    margin-right: 4px;
    float: left;
    margin-bottom: 20px
}

.contactNameField {
    padding-bottom: 5px;
    font-size: 12px
}

.contactField {
    font-size: 15px;
    overflow: hidden;
    position: relative;
    color: var(--color0);
    min-width: 100%;
    display: block;
    box-sizing: border-box;
    height: 30px;
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 10px
}

.contactTextarea {
    font-size: 15px;
    overflow: hidden;
    position: relative;
    color: var(--color0);
    min-width: 100%;
    display: block;
    box-sizing: border-box;
    margin-bottom: 20px;
    line-height: 18px;
    height: 90px;
    padding: 9px 12px
}

.menu-mobile-dynamique input {
    -webkit-appearance: none;
    appearance: none;
    border-radius: 0
}

.sidebar-form {
    display: none;
    margin-left: 20px;
    width: 230px;
    box-sizing: border-box
}

.sidebar-form2 {
    display: none
}

.sidebar-form label {
    font-size: 13px;
    border-radius: 0 !important;
    color: #c5c5c5;
    text-transform: uppercase;
    padding-top: 10px;
    display: block;
    opacity: .8;
    filter: alpha(opacity=80)
}

.sidebar-form label span {
    text-transform: lowercase;
    float: right;
    opacity: .5
}

.sidebar-form input {
    background-color: rgba(255, 255, 255, 0.1);
    border: solid 1px #3d3d3d
}

.sidebar-form textarea {
    background-color: rgba(255, 255, 255, 0.1);
    border: solid 1px #3d3d3d;
    margin-bottom: 0
}

.sidebar-send-button {
    font-size: 13px;
    display: block;
    width: 100%;
    color: #d2d2d2;
    font-family: 'Lato', sans-serif;
    text-transform: uppercase;
    font-weight: 700
}

.success-subscribe {
    margin-top: 20px;
    width: 230px;
    margin-left: 20px
}

.sidebar-form {
    margin-bottom: 0 !important;
    margin-top: -10px !important
}

.sidebar-form .formSuccessMessageWrap {
    width: 230px;
    margin-top: 20px;
    margin-bottom: 0
}

.sidebar-form .small-notification {
    margin-top: 20px
}

.sidebar-form #emailError {
    margin-top: 20px;
    width: 230px;
    margin-left: 20px;
    border-radius: 0;
    height: 36px
}

.sidebar-form #emailError p {
    text-align: center;
    color: #ff8181;
    margin: 8px 0;
    display: block;
    background-image: none;
    text-transform: uppercase;
    padding-left: 0
}

.sidebar-form #emailError2 {
    margin-top: 20px;
    width: 230px;
    margin-left: 20px;
    border-radius: 0;
    height: 36px
}

.sidebar-form #emailError2 p {
    text-align: center;
    color: #ff8181;
    margin: 8px 0;
    display: block;
    background-image: none;
    text-transform: uppercase;
    padding-left: 0
}

.subscribe-notification {
    width: 230px !important;
    margin-left: 20px;
    border-radius: 0 !important;
    margin-bottom: -15px !important;
    margin-top: 20px !important;
    background-image: none !important
}

.subscribe-notification p {
    background-image: none !important;
    text-align: center;
    color: #ff8181 !important;
    margin: 8px 0;
    display: block;
    text-transform: uppercase;
    padding-left: 0;
    margin-top: 20px
}

.formValidationError {
    margin-bottom: -15px
}

.sidebar-form .formValidationError div {
    margin-top: 20px;
    width: 230px;
    border-radius: 0 !important;
    height: 36px;
    margin-top: 20px !important
}

.sidebar-form .formSubmitButtonErrorsWrap {
    overflow: visible !important;
    margin-bottom: 20px
}

.sidebar-form .formValidationError p {
    text-align: center;
    color: #ff8181 !important;
    margin: 8px 0;
    display: block;
    background-image: none;
    text-transform: uppercase;
    padding-left: 0
}

.menu-mobile-dynamique label {
    display: block;
    overflow: hidden;
    position: relative;
    border: 0;
    /*vertical-align:baseline;*/
    outline: none
}

.red-notification {
    background-color: rgba(219, 84, 84, 0.5);
    border-radius: 5px;
    border: solid 1px var(--nuanceColor3)
}

.formValidationError .red-notification p {
    background-image: none !important;
    display: block !important;
    padding-left: 0 !important;
    text-align: center !important
}

.no-bottom {
    margin-bottom: 0 !important
}

.menu-mobile-dynamique .sub-menu {
    display: none
}

/* AUTRES STYLES FIXES ****************************************************/
/* *************************************************************************/
/* Bouton remonter */
.remonter {
    text-align: center;
}

.remonter button {
    transition: all 400ms ease;
    opacity: 0.5;
    filter: alpha(opacity=50);
    border: 0;
    display: inline-block;
    width: 40px;
    height: 22px;
    background: url(../images/fleche-monter.png) no-repeat center top;
    text-align: center;
    text-indent: 150px;
    overflow: hidden;
}

.remonter button:hover {
    opacity: 1;
    filter: alpha(opacity=100)
}

/* Div IE <8
{text-align:center;color:var(--color1);background:#eee }*/
.deprecated-ie p {
    line-height: 30px;
    margin: 0
}

.deprecated-ie a {
    line-height: 30px;
    font-family: Helvetica, arial, sans-serif;
    font-size: 13px;
    color: var(--color1);
    text-decoration: underline
}


/* Costum css */
.responsive {
    margin: 10px auto 10px !important;
}

.help-block {
    font-size: 14px;
}

.description-groupe {
    margin-bottom: 30px;
}

/*Added */
#menu_referencement {
    list-style-type: disc;
    width: 100%;
    text-align: justify;
    padding: 0;
}

.menu_content {
    margin: 0;
    padding: 0;
}

.menu_content ul li {
    display: inline;
}

.menu_content ul li a {
    color: var(--color0);
    font-size: 13px;
    text-decoration: none;
    text-transform: uppercase;
}

.menu_content ul li a:hover {
    text-decoration: underline;
    color: var(--nuanceColor3);
}

.menu_content ul li:after {
    content: " - ";
    color: var(--nuanceColor3);
    /* font-size:8px;*/
}

.menu_content ul li:last-child:after {
    content: ""
}

.menu_referencement .menu-item a {
    font-size: calc(var(--taille_font)) !important;
    font-weight: 400;
}

.menu_referencement .menu-item a:hover {
    text-decoration: none;
    color: var(--nuanceColor3);
}
.menu_referencement .menu-item a:after{
    display: none;
}



/*.menu_content h2{}*/


.menu_footer {
    display: block;
}

.menu_footer ul {
    display: block;
    margin: 1em 0;
    padding: 0;
    /*text-transform: uppercase;*/
    font-size: calc(var(--taille_font));
    color: var(--nuanceColor3);
    list-style-type: none ;
}

.menu_footer .menu-item{
    position: relative;
    padding-left: 10px;
}

.menu_footer .menu-item:before{
    content: "\203A";
    position: absolute;
    left: 0;
    color: var(--color0);
    font-size: 1.5em;
}

.menu-item a{
    font-family: var(--font_family_1);
    font-weight: 600;
}

.menu_footer .menu-item a:hover {
    color: var(--nuanceColor3);
}
.menu_footer .menu-item a {
    padding-bottom: 0.2vh;
    color: var(--color0);
    font-size: calc(var(--taille_font) + 0.2rem) !important;
}
.menu_footer .menu-item a:after {
    height: 1px;
    background: var(--nuanceColor3);
}

.menu_referencement .menu-item.active a,
.menu_footer .menu-item.active a {
    color: var(--nuanceColor3);
    text-decoration: none;
}

/**********************************************/
.g-recaptcha {
    display: block;
    margin: 0 auto;
    width: 303px;
}

.contact .g-recaptcha {
    float: left;
}

.contact .btn-primary {
    float: right;
    height: 63px;
}

/*************************************************/
/* B-lazy /*************************************************/
img.blazy {
    width: 100%;
    background-image: url('../images/bx_loader.svg');
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-color: #ddd;
}

img.blazy.b-error {
    background-image: url('../images/noImage.png');
}

.blazy {
    width: 100%;
    background-image: url('../images/bx_loader.svg');
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-color: #ddd;
    -webkit-transition: none;
    -moz-transition: none;
    -ms-transition: none;
    -o-transition: none;
    transition: none;
}

.blazy[class*=col-] {
    width: initial;
}

.blazy img {
    width: 100%;
}

.blazy.b-error {
    background-image: url('../images/noImage.png');
    /* background-size:cover;*/
}

.blazy.imgLoaded {
    background-size: cover;
}



/*/
*/
/* Bouton */
.hvr-shutter-out-horizontal {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -moz-osx-font-smoothing: grayscale;
    position: relative;
    background-color: var(--nuanceColor3);
    -webkit-transition-property: color;
    transition-property: color;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
}

.hvr-shutter-out-horizontal:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: var(--color0);
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: 50%;
    transform-origin: 50%;
    -webkit-transition-property: transform;
    transition-property: transform;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
}

.hvr-shutter-out-horizontal:hover,
.hvr-shutter-out-horizontal:focus,
.hvr-shutter-out-horizontal:active {
    color: var(--nuanceColor3);
}

.hvr-shutter-out-horizontal:hover:before,
.hvr-shutter-out-horizontal:focus:before,
.hvr-shutter-out-horizontal:active:before {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
}

/*
a.bouton-principal,
button.bouton-principal {
    text-align: center;
    color: var(--color0);
    text-decoration: none;
    padding: 15px 50px;
    font-size: 14px;
    text-transform: uppercase;
    border: 0;
}
*/
.btn-service {
    text-align: center;
    margin: 10px 0;
}

.body-service-list .services .tableGrid.row {
    overflow-x: hidden;
}

.body-service-list .services .tableGrid.row:nth-of-type(odd) {
    direction: rtl;
}

.body-service-list .services .tableGrid.row:nth-of-type(even) {
    direction: ltr;
    background-color: var(--color0);
}

.body-service-list .services .tableGrid.row:nth-of-type(odd) [class*=col-] {
    direction: ltr;
    background-color: var(--color2);
    color: var(--color0);
}

.body-service-list .services .tableGrid.row .h {
    text-align: center;
    margin-bottom: 1em;
}

.body-service-list .services .tableGrid.row:nth-of-type(odd) .h {
    color: var(--color0);
}

.body-service-list .services .tableGrid.row:nth-of-type(odd) .service_sub_title {
    font-size: 22px;
    color: var(--color0);
    padding: 0 0 5px;
}

.body-service-list .services .tableGrid.row .bodyContent {
    text-align: center;
    padding: 5vw 5vw;
}

/*.body-service-list .services .tableGrid.row .bodyContent .content{}*/
.body-service-list .services .tableGrid.row .bodyContent p {
    padding: 0 0 20px;
}

.isServiceList #main {
    width: 100%;
}

.body-service-list .main_bg {
    /* padding-left:0;*/
    /* padding-right:0;*/
    padding-bottom: 0;
    padding-bottom: 80px;
    min-height: 600px;
    z-index: 1;
    position: relative;
}

.body-service-list .bodyContent .h {
    text-align: center;
    font-family: var(--font_family_1_bold);
}

.body-service-list .bodyContent .h .titre-secondaire {
    text-align: center;
    color: var(--color0);
    font-family: var(--font_family_1);
    font-size: calc(var(--taille_font) + 0.2em);
    text-transform: none;
}

.service_sub_title {
    font-size: 22px;
    color: var(--color0);
    padding: 12px 0 5px;
}


.row.ligne-photos.retrait.centerservice2 {
    margin: 0 16% !important;
}

.row.ligne-photos.retrait.centerservice {
    margin: 0 33% !important;
}

.services .bx-wrapper {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
}

.services .bx-viewport {
    position: absolute !important;
    height: 100% !important;
    width: 100% !important;
    top: 0 !important;
    left: 0 !important;
    border-radius: var(--border-radius);
    box-shadow: var(--box-s);
}

.services .mainSectionSlider {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
}

.services .bx-wrapper {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
}

.services .bx-viewport {
    position: absolute !important;
    height: 100% !important;
    width: 100% !important;
    top: 0 !important;
    left: 0 !important;
}

.services .mainSectionSlider {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    padding: 0;
    list-style: none;
}

.services .bx-viewport li,
.services .bx-viewport li {
    height: 100%;
    list-style: none;
}

.services .bx-pager,
.mainSectionSliderBg .bx-pager {
    z-index: 9999;
}

.service-list{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2vw;
}

.service-list .service {
    position: relative;
    height: 60vh;
    display: grid;
    grid-template-rows: 3fr 2fr;
    background: transparent;
    border-radius: var(--border-radius);
    box-shadow: var(--box-s);
    overflow: hidden;
}

.service-list .service .back {
    position: relative;
}


.service-list .bodyContent{
    position: absolute;
    bottom: -35%;
    left: 50%;
    z-index: 8000;
    width: 90%;
    background: var(--color2);
    border-radius: var(--border-radius);
    transform: translate(-50%, -50%);
}

.service-list .mainSectionSlider{
	position: absolute;
	height: 100%;
	width: 100%;
	top: 0;
	left: 0;
	padding: 0;
	list-style: none;
}

.service-list .mainSectionSlider .blazy {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: transparent;
}

.service-list .mainSectionSlider .show {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: transparent;
}

.service-content {
    position: relative;
    display: flex;
    align-items: end;
}

.service-content p{
    padding: 4em 5%;
}

.service-content .bouton-principal {
    position: absolute;
    margin: 0;
    top: 80%;
    right: -7%;
    transform: translate(-50%, -50%);
}

/**********/
.tableGrid>.row,
.tableGrid {
    display: table;
    margin: 0;
    padding: 0;
    position: relative;
    height: 100%;
}

.tableGrid>.table-row {
    height: 100%;
    display: table-row;
}

.tableGrid.fullWidth {
    width: 100%;
}

.tableGrid>.row>.table-row>[class*=col],
.tableGrid>.table-row>[class*=col],
.tableGrid>.row>[class*=col],
.tableGrid>[class*=col] {
    display: table-cell;
    vertical-align: top;
    float: none;
    height: 100%;
    position: relative;
}

.noPaddingCells>.row>.table-row>[class*=col],
.noPaddingCells>.table-row>[class*=col],
.noPaddingCells>[class*=col] {
    padding: 0;
}

.tableGrid.nopadding>.row>.table-row>[class*=col],
.tableGrid.nopadding>.table-row>[class*=col],
.tableGrid.nopadding>.row>[class*=col],
.tableGrid.nopadding>[class*=col] {
    padding: 0;
}

.tableGrid.va-middle>.row>.table-row>[class*=col],
.tableGrid.va-middle>.table-row>[class*=col],
.tableGrid.va-middle>.row>[class*=col],
.tableGrid.va-middle>[class*=col] {
    vertical-align: middle;
}

/***************/
.body-service-list .main_bg {
    padding: 50px 0 0 0;
}

.body-service-list .main_bg .container {
    width: 100%;
    padding: 0;
}

.dtable {
    display: table;
    margin: 0 auto;
    float: none;
}

.dtable [class*=col-] {
    display: table-cell;
    vertical-align: middle;
    float: none;
}

.dtable #submitReservation {
    width: 100%;
}

@media (max-width:1700px) {
    .fluid-menu {
        padding: 0 2%;
        grid-template-columns: 1fr 10fr 3fr;
    }
    .menu_principal {
        gap: 2em;
        padding-right: 2em;
    }
}
@media (max-width:1200px) {
    .fluid-menu {
        grid-template-columns: 1fr 10fr 1fr;
        padding: 0;
    }
    .fluid-menu .tel {
        display: none;
    }

}

@media (min-width:768px) and (max-width:979px) {
    .dtable {
        display: block;
        margin: 0 auto;
        float: none;
    }

    .dtable [class*=col-] {
        display: block;
        /*vertical-align:middle;*/
        float: left;
    }

    .dtable #submitReservation {
        width: 100%;
    }

    .row.ligne-photos.retrait.centerservice2 {
        margin: 0 0 !important;
    }

    .row.ligne-photos.retrait.centerservice {
        margin: 0 25% !important;
    }

    .tableGrid>.row,
    .tableGrid {
        display: block;
    }

    .tableGrid>.row>.table-row>[class*=col],
    .tableGrid>.table-row>[class*=col],
    .tableGrid>.row>[class*=col],
    .tableGrid>[class*=col] {
        display: block;
        /*vertical-align:top;*/
        float: left;
        height: 100%;
        position: relative;
    }

    .services .mainSectionSlider .show {
        position: relative;
        height: auto;
        width: 100%;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: transparent;
    }

    .services .mainSectionSlider .blazy {
        position: absolute;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: transparent;
    }

    .services .mainSectionSlider .show {
        position: relative;
        height: auto;
        width: 100%;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: transparent;
    }

    .services .mainSectionSlider .blazy {
        position: absolute;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: transparent;
    }

    .services .bx-wrapper {
        position: relative;
        height: auto;
        width: 100%;
        top: 0;
        left: 0;
    }

    .services .bx-viewport {
        position: relative !important;
        height: 250px !important;
        width: 100% !important;
        top: 0 !important;
        left: 0 !important;
    }

    .services .mainSectionSlider {
        position: relative;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0;
    }

    .services .bx-wrapper {
        position: relative;
        height: auto;
        width: 100%;
        top: 0;
        left: 0;
    }

    .services .bx-viewport {
        position: relative !important;
        height: 250px !important;
        width: 100% !important;
        top: 0 !important;
        left: 0 !important;
    }

    .services .mainSectionSlider {
        position: relative;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0;
        padding: 0;
        list-style: none;
    }

    .services .bx-viewport li,
    .services .bx-viewport li {
        height: 100%;
        list-style: none;
    }

    .services .bx-pager,
    .mainSectionSliderBg .bx-pager {
        z-index: 9999;
    }

    .pageseo .formulaire .form-group input.btn-primary {
        width: 100%;
        margin-top: 8px;
    }

    .tableGrid>.table-row {
        height: 100%;
        display: block;
    }
}

@media (max-width:767px) {
    .dtable {
        display: block;
        margin: 0 auto;
        float: none;
    }

    .row.ligne-photos.retrait.centerservice2 {
        margin: 0 0 !important;
    }

    .row.ligne-photos.retrait.centerservice {
        margin: 0 0 !important;
    }

    .dtable [class*=col-] {
        display: block;
        /*vertical-align:middle;*/
        float: left;
    }

    .dtable #submitReservation {
        width: 100%;
    }

    .tableGrid>.row,
    .tableGrid {
        display: block;
    }

    .tableGrid>.row>.table-row>[class*=col],
    .tableGrid>.table-row>[class*=col],
    .tableGrid>.row>[class*=col],
    .tableGrid>[class*=col] {
        display: block;
        /*vertical-align:top;*/
        float: left;
        height: 100%;
        position: relative;
    }

    .services .mainSectionSlider .show {
        position: relative;
        height: auto;
        width: 100%;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: transparent;
    }

    .services .mainSectionSlider .blazy {
        position: absolute;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: transparent;
    }

    .services .mainSectionSlider .show {
        position: relative;
        height: auto;
        width: 100%;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: transparent;
    }

    .services .mainSectionSlider .blazy {
        position: absolute;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: transparent;
    }

    .services .bx-wrapper {
        position: relative;
        height: auto;
        width: 100%;
        top: 0;
        left: 0;
    }

    .services .bx-viewport {
        position: relative !important;
        height: 250px !important;
        width: 100% !important;
        top: 0 !important;
        left: 0 !important;
    }

    .services .mainSectionSlider {
        position: relative;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0;
    }

    .services .bx-wrapper {
        position: relative;
        height: auto;
        width: 100%;
        top: 0;
        left: 0;
    }

    .services .bx-viewport {
        position: relative !important;
        height: 250px !important;
        width: 100% !important;
        top: 0 !important;
        left: 0 !important;
    }

    .services .mainSectionSlider {
        position: relative;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0;
        padding: 0;
        list-style: none;
    }

    .services .bx-viewport li,
    .services .bx-viewport li {
        height: 100%;
        list-style: none;
    }

    .services .bx-pager,
    .mainSectionSliderBg .bx-pager {
        z-index: 9999;
    }

    .pageseo .formulaire .form-group input.btn-primary {
        width: 100%;
        margin-top: 8px;
    }

    .tableGrid>.table-row {
        height: 100%;
        display: block;
    }
}

@media (max-width:980px) {
    .flex-seoContain {
        flex-wrap: wrap;
    }

    .flex-seoContain .seo-content {
        width: 100%;
        background: transparent;
    }

    .flex-seoContain .seo-form {
        width: 100%;
    }

    .img-seo img,
    a.imagecont.noflicker.img1 {
        width: 100%;
        height: auto;
        margin: 0 0 16px;
        display: block;
    }

    .bande_contact_footer .row1 {
        padding: 5rem 11%;
    }
}


/* Fix pour fond noir lightbox qui n'apparait pas sur chrome */
@media screen and (-webkit-min-device-pixel-ratio:0) {
    .lightboxOverlay {
        overflow: scroll
    }

    .lightboxOverlay::-webkit-scrollbar {
        width: 0px
    }
}

/* MEDIA QUERIES **********************************************************/
/* *************************************************************************/
/* Mobile (col-xs) */
@media (max-width:767px) {
    .dtable {
        display: block;
        margin: 0 auto;
        float: none;
    }

    .dtable [class*=col-] {
        display: block;
        /*vertical-align:middle;*/
        float: left;
    }

    .dtable #submitReservation {
        width: 100%;
    }

    .pad-xs {
        padding-left: 15px !important;
        padding-right: 15px !important
    }

    .pad-xs-l {
        padding-left: 15px !important
    }

    .pad-xs-r {
        padding-right: 15px !important
    }

    .nopad-xs {
        padding-left: 0 !important;
        padding-right: 0 !important
    }

    .nopad-xs-l {
        padding-left: 0 !important
    }

    .nopad-xs-r {
        padding-right: 0 !important
    }

    .corps-contact.formulaire {
        padding: 0 0px;
    }

    .pied .abus {
        text-align: left;
    }

    .ui-state-default,
    .ui-widget-content .ui-state-default,
    .ui-widget-header .ui-state-default {
        padding: 10px 0;
    }

    .body-page-1 .ui-state-default,
    .body-page-1 .ui-widget-content .ui-state-default,
    .body-page-1 .ui-widget-header .ui-state-default {
        padding: 10px 0;
    }

    .ui-datepicker table {
        font-size: 14px;
    }

    .body-page-1 .ui-datepicker .ui-datepicker-title {
        font-size: 18px;
        padding: 4px 0;
    }

    .tabb-reservation .cell.cellg {
        padding: 30px 15px;
    }

    .tabb-reservation .cell .contt {
        padding: 20px 15px 30px 15px;
    }

    .tabb-reservation .cell .contt h2 {
        margin-bottom: 20px;
    }

    .tabb-formule .cell.celld .contt {
        padding: 30px 15px 40px 15px !important
    }

    .formules .formule hr {
        margin: 10px 0
    }

    .formules .formule ul {
        padding: 15px 10px !important
    }

    .gallery .kikoolol {
        padding: 10px 0 10px 0px;
    }

    .contact .coordonnees address {
        margin-bottom: 50px;
    }

    .contact .coordonnees .horaires {
        margin-bottom: 50px;
    }

    .pied h2 {
        text-align: center
    }

    #contactButtonsMobile {
        bottom: 70px !important;
    }
    #contactButtonsMobile div>a{
        background: var(--nuanceColor1) !important;
        border-radius: 10px !important;
    }

}

/* Tablettes (col-sm) */
@media (min-width:768px) and (max-width:991px) {
    .pad-sm {
        padding-left: 15px !important;
        padding-right: 15px !important
    }

    .pad-sm-l {
        padding-left: 15px !important
    }

    .pad-sm-r {
        padding-right: 15px !important
    }

    .nopad-sm {
        padding-left: 0 !important;
        padding-right: 0 !important
    }

    .nopad-sm-l {
        padding-left: 0 !important
    }

    .nopad-sm-r {
        padding-right: 0 !important
    }

    .gallery .kikoolol {
        padding: 10px 0 30px 30px;
    }

    .corps-contact.formulaire {
        padding: 0 160px;
    }

    .scrolled-content {
        height: 190px;
    }
}

/* Mobile + Tablettes (col-xs + col-sm) */
@media (max-width:991px) {

    .body-page-1 .banniere{
        height: 30vh;
    }

    .slogan{
        width: 75vw;
        max-width: 75vw;
    }

    .slogan .sous-titre {
        display: none;
    }

    .fluid-contenu, .tabb2, .details, .services, .actualites, .atouts {
	position: relative;
	padding: 3vh 5%;
    }
    .body-page-1 .fluid-contenu,
    .fluid-contenu {
        margin-top: 0vh;
    }
    .body-page-1 .fluid-contenu::before,
    .fluid-contenu::before {
        height: 7vh;
        top: -7vh;
    }

    .body-page-1 .fluid-contenu .corps {
        grid-template-columns: 1fr;
        grid-template-rows: 2fr 0.6fr;
    }
    .page-contenu-home {
        padding: 0em 0.7em;
    }

    .details .contenu,
    .actualites article{
        grid-template-columns: 1fr;
        grid-template-rows: 0.5fr 1fr;
        gap: 7em;
    }

    .details .contenu:after{
        display: none;
    }

    .actualites article{
        gap: 0;
    }

    .actualites .cell.photo {
        width: auto;
        height: 100%;
    }

    .services-grid {
        grid-template-columns: 1fr;
        grid-template-rows: 1fr 0.5fr;
    }

    .linkList {
        width: 100%;
    }

    .tabb-formule.sansimage {
        display: inline-table;
        width: 100%;
    }

    .formules .formule {
        margin: 0 0 0px 0;
        text-align: center;
    }

    .tabb2 .cell .reser .block {
        display: block;
    }

    h1,
    .h1 {
        color: var(--nuanceColor3);
        margin: 0px 0 30px 0;
        text-shadow: none;
        margin: 22px 0 20px 0;
        font-size: 30px;
    }

    .pied h2,
    h1,
    .h1 {
        font-size: 30px;
    }

    .tabb2 .cell .reser div a,
    .tabb2 .cell .reser div p {
        padding: 30px 20px;
        display: block;
    }

    .container {
        max-width: none;
        width: auto
    }

    /* Changement largeurs labels+champs contact */
    .contact .formulaire .form-group .col-md-4 {
        width: 100% !important
    }

    .contact .formulaire .form-group .col-md-8 {
        width: 100% !important
    }

    /* Captcha Contact */
    .contact .formulaire .form-group input[name="captcha"] {
        width: 100% !important;
        margin-right: 0% !important;
        text-align: left !important;
    }

    .contact .formulaire .form-group input[name="captcha"]+a {
        position: absolute;
        width: 140px;
        top: 0;
        right: 0;
        margin-right: 0px !important;
    }

    .contact .formulaire .form-group input.btn-primary {
        width: 100%;
        margin-top: 8px;
    }

    /* Captcha Contact */
    .modal-content input[name="captchaReservation"] {
        width: 100% !important;
        margin-right: 0% !important;
        text-align: left !important;
    }

    .modal-content input[name="captchaReservation"]+a {
        position: absolute;
        width: 140px;
        top: 0;
        right: 0;
        margin-right: 0px !important;
    }

    .modal-content .btn-default {
        width: 100%;
        margin-top: 8px;
    }

    /* Forcer l'affichage des fleches de la lightbox car pas de hover sur mobile */
    .lb-prev {
        opacity: 1 !important;
        background: url(../images/lightbox-g.png) left 48% no-repeat;
    }

    .lb-next {
        opacity: 1 !important;
        background: url(../images/lightbox-d.png) right 48% no-repeat;
    }

    /* Desactiver la scrollbar personnalise */
    .scrollbars {
        width: 100%;
        height: auto
    }

    .scrollbar-content {
        padding: 0
    }

    body {
        font-size: calc(var(--taille_font));
    }

    .miettes-externes {
        display: none;
    }

    .btn-partage {
        padding: 40px 0px 10px 0px;
    }

    .cont-slider .controls {
        display: none;
    }

    .cont-slider {
        position: static;
        margin-left: 0;
        width: 100%;
    }

    .fluid-contenu .corps {
        padding: 30px 15px 30px 15px;
    }

    .body-page-1 .fluid-contenu .corps>article {
        padding: 20px 0px 20px 0px;
    }

    .body-page-1 h1,
    .body-page-1 .h1 {
        margin: 15px 0 5px 0;
    }

    .livre-ligne{
        grid-template-columns: 1fr;
    }

    .tabb .cell.cellg {
        display: none;
    }

    .service-list {
        grid-template-columns: 1fr;
        gap: 7vh;
    }

    .service-content .bouton-principal{
        right: 0%;
    }

    .tabb2 {
        display: block;
        margin: 0;
        padding: 0;
        width: 100%;
    }

    .tabb2 .cell {
        display: block;
        /*vertical-align:top;*/
        position: relative;
        width: 100% !important
    }

    .tabb2 .cell .reser {
        display: block;
        position: static;
        text-align: center;
    }

    .tabb2 .cell .reser p a {
        padding: 90px 20px;
    }

    .tabb2 .cell .contt {
        padding: 20px 0px 30px 0px;
        min-height: 0;
    }

    .tabb2 .cell .contt h2 {
        font-size: 24px;
        padding: 0 0 15px 0;
    }

    .modal-content .modal-body {
        border-radius: 0px;
        padding: 0px 5px 40px 5px;
    }

    .modal-content h2 {
        margin-bottom: 20px;
        font-size: 18px;
    }

    .modal-content .btn-default {
        padding: 10px 0px;
        width: 100%;
    }

    .tabb2 {
        padding: 0 0 40px 0;
    }

    .pied .smartfood {
        margin: 20px 0px 0px 0px;
    }

    .pied .smartfood img {
        max-width: 170px;
    }

    .pied .copyright-footer {
        margin: 15px 0px 20px 0px;
    }

    .pied .copyright-footer img {
        max-width: 110px;
    }

    .pied .bande2 {
        padding: 25px 0 30px 0;
    }

    .pied .bande1 {
        padding: 10px 0 80px 0;
    }

    .pied .bande1 .tel {
        margin: 10px 0 40px 0;
    }

    .pied .horaires {
        padding: 0;
        margin: 0 0 40px 0;
    }

    .tabb-contact {
        display: block;
    }

    .tabb-contact .cell {
        display: block;
        width: 100% !important;
    }

    .contact .plan .block #googlemapapi,
    .contact .plan iframe {
        height: 250px !important;
    }

    .tabb-contact .corps-contact {
        padding: 40px 15px 10px 15px;
    }

    .contact .description-contact {
        padding: 0px 0px 10px 0px;
    }

    .contact .formulaire .form-group {
        margin-bottom: 10px;
    }

    .tabb-reservation {
        display: block;
    }

    .tabb-reservation .cell {
        display: block;
        width: 100% !important;
    }

    .tabb-reservation .corps {
        padding: 10px 0px 20px 0px !important
    }

    .ui-datepicker .ui-datepicker-header {
        font-size: 22px;
    }

    .ui-datepicker .ui-datepicker-prev,
    .ui-datepicker .ui-datepicker-next {
        top: 36px;
        width: 1.3em;
        height: 1.3em;
    }

    .ui-datepicker .ui-datepicker-prev {
        left: 0px;
    }

    .ui-datepicker .ui-datepicker-next {
        right: 0px;
    }

    .tabb-specialites {
        display: block;
    }

    .tabb-specialites .cell {
        display: block;
        width: 100% !important
    }

    .tabb-specialites .corps {
        padding: 10px 15px 20px 15px !important;
    }

    .tabb-specialites h2 {
        margin-bottom: 20px;
    }

    .tabb-specialites .cell.cellg {
        height: 160px;
    }

    .tabb-specialites .cell.celld {
        padding: 0 0 30px 0;
    }

    .tabb-carte {
        display: block;
    }

    .tabb-carte .cell {
        display: block;
        width: 100% !important
    }

    .tabb-carte .corps {
        padding: 10px 15px 20px 15px !important;
    }

    .tabb-carte h2 {
        margin-bottom: 20px;
    }

    .tabb-carte .cell.cellg {
        height: 160px;
    }

    .carte .group {
        margin: 0 0 20px 0;
    }

    .tabb-carte .cell.celld {
        padding: 0 0 0px 0;
    }

    .tabb-carte .cell.celld .contt {
        padding: 0px 0px 10px 0px;
    }

    .tabb-carte h2 {
        margin-bottom: 10px;
        font-size: 23px;
    }

    .carte .price {
        width: 80px;
        font-size: calc(var(--taille_font) + 0.2em);
    }

    .carte ul li.item:last-child {
        border-bottom: none
    }

    .tabb-formule {
        display: block;
        margin: 0;
        padding: 0;
        width: 100%;
    }

    .tabb-formule .cell {
        display: block;
        /*vertical-align:top;*/
        position: relative;
    }

    .tabb-formule .cell.cellg {
        width: 100%;
        height: 150px;
    }

    .tabb-formule .cell.cellg.cell1 {
        display: block !important
    }

    .tabb-formule .cell.cellg.cell2 {
        display: none !important
    }

    .tabb-formule .cell.celld .contt {
        padding: 50px 80px 40px 80px
    }

    .banniere {
        position: relative;
        height: auto;
    }

    .service-list .h{
        line-height: 1.5;
    }
    .service-list .titre-secondaire {
        line-height: 1.3;
    }

    .atouts .swiper-button.prev {
        left: 1%;
    }
    .atouts .swiper-button.next {
        left: 99%;
    }
    .AvisClientsBg .bx-prev{
        left: -3vw;
    }
    .AvisClientsBg .bx-next{
        right: -4vw;
    }

}

/* Pc normal (col-md) */
@media (min-width:991px) and (max-width:1199px) {

    .navh .menu_haut_principal a,
    .navh .menu_haut_principal a:visited {
        font-size: 18px;
        padding: 26px 5px 10px 5px;
    }

    .pied .navf .menu_footer li a,
    .pied .navf .menu_footer li a:visited {
        font-size: 14px;
        padding: 0 12px;
    }

    .pied address {
        font-size: 16px;
    }

    .pied .horaires {
        font-size: 16px;
    }

    .tabb-reservation .cell.cellg {
        width: 50%;
    }

    .tete .logo-site {
        margin: 0;
        padding: 24px 0 10px 0;
        display: inline-block;
        width: 130px;
    }

    .corps-contact.formulaire {
        padding: 0 230px;
    }

    .scrolled-content {
        height: 190px;
    }
}

/* Mobile + Tablettes + Pc normal (col-xs + col-sm + col-md) */
@media (max-width:1199px) {
    .remonter {
        display: none !important
    }
}

/* Pc large (col-lg) */
/*

@media (min-width:992px) {
    .container {
        max-width: 970px
    }
}
@media (min-width:1200px) {
    .container {
        max-width: 1140px
    }
}
*/
@media (min-width:991px) {

    /*.tete .container{*/
    .container {
        max-width: auto;
        width: 100%;
    }

    .modal-lg {
        width: 1100px;
    }

    .scrolled-content {
        height: 190px;
    }
}



@media (max-width:480px) {
    .dtable {
        display: block;
        margin: 0 auto;
        float: none;
    }

    .dtable [class*=col-] {
        display: block;
        /*vertical-align:middle;*/
        float: left;
    }

    .dtable #submitReservation {
        width: 100%;
    }

    .tableGrid>.row,
    .tableGrid {
        display: block;
    }

    .tableGrid>.row>.table-row>[class*=col],
    .tableGrid>.table-row>[class*=col],
    .tableGrid>.row>[class*=col],
    .tableGrid>[class*=col] {
        display: block;
        /*vertical-align:top;*/
        float: left;
        height: 100%;
        position: relative;
    }

    .services .mainSectionSlider .show {
        position: relative;
        height: auto;
        width: 100%;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: transparent;
    }

    .services .mainSectionSlider .blazy {
        position: absolute;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: transparent;
    }

    .services .mainSectionSlider .show {
        position: relative;
        height: auto;
        width: 100%;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: transparent;
    }

    .services .mainSectionSlider .blazy {
        position: absolute;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: transparent;
    }

    .services .bx-wrapper {
        position: relative;
        height: auto;
        width: 100%;
        top: 0;
        left: 0;
    }

    .services .bx-viewport {
        position: relative !important;
        height: 250px !important;
        width: 100% !important;
        top: 0 !important;
        left: 0 !important;
    }

    .services .mainSectionSlider {
        position: relative;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0;
    }

    .services .bx-wrapper {
        position: relative;
        height: auto;
        width: 100%;
        top: 0;
        left: 0;
    }

    .services .bx-viewport {
        position: relative !important;
        height: 250px !important;
        width: 100% !important;
        top: 0 !important;
        left: 0 !important;
    }

    .services .mainSectionSlider {
        position: relative;
        height: 100%;
        width: 100%;
        top: 0;
        left: 0;
        padding: 0;
        list-style: none;
    }

    .services .bx-viewport li,
    .services .bx-viewport li {
        height: 100%;
        list-style: none;
    }

    .services .bx-pager,
    .mainSectionSliderBg .bx-pager {
        z-index: 9999;
    }

    .pageseo .formulaire .form-group input.btn-primary {
        width: 100%;
        margin-top: 8px;
    }

    .tableGrid>.table-row {
        height: 100%;
        display: block;
    }
}