/*** fonts **/
/*** https://fonts.google.com/ 
 * télécharger la version complète variable 
 * **/
@font-face {
	font-family: "ElMessiri";
	src: url(/style/font/ElMessiri.ttf);
	font-display: swap;
}
@font-face {
	font-family: "ReenieBeanie";
	src: url(/style/font/ReenieBeanie.ttf);
	font-display: swap;
	font-weight: 400;
}

/*** default styles */
* {box-sizing : border-box;  padding: 0;margin: 0;}
select * {padding: 0 0.5em;}
ul, ol {list-style: none;}
a img, :link img, :visited img, object, fieldset {border: none;}
/*a:focus, a:hover {text-decoration: underline;}*/
a:active {outline: none;}
a {outline: none;}
address {font-style: normal;}
iframe {line-height : 1em; display: block;}
:link, :visited {text-decoration: none;}
legend {position: relative;left: -6px;/* ie */}
/*** font size : http://www.knacss.com/ */
html {font-size: 62.5%;}
body {background-color: #fff;color: #000;font-family: "ElMessiri", serif;font-size: 1.8em; /* equiv 14px */line-height: 1.5em; /* adapt to your design */}
input, select, textarea {font-size: 100%;}
/*** Float containers (http://www.csscreator.com/attributes/containedfloat.php) */
.clearfix:after {content: ".";display: block;height: 0;font-size:0;clear: both;visibility: hidden;}
.clearfix{display: inline-block;}
/* Hides from IE-mac \*/
* html .clearfix{height: 1%;}
.clearfix{display: block;}
/* End hide from IE-mac */
/*** Image Replacement */
.mir {letter-spacing : -1000em;}
/*\*/
* html .mir {text-indent: -999em;overflow: hidden;}
html>body .mir {letter-spacing: normal;text-indent: -999em;overflow: hidden;}/**/
/*** generic style */
.clear {clear: both;}
div.clear {height: 0;}
.no-wrap {white-space:nowrap;}
/*** error */
.errorOutput {font-weight: bold;padding: 0.5em 20px;border-top: 2px solid #eee;	border-bottom: 2px solid #eee;background: transparent url(/style/alert.gif) no-repeat left center;}
a:link, a:visited {color : #008cd9;}

body{ overflow-x: hidden; }

:root {
	--padding : 30px;
	--gris-clair: #f3f2ea;
	--gris-clair-rgb: 244, 243, 236;
	--gris-fonce: #58585a;
	--rose: #efd5c8;
	--rose-rgb: 239, 213, 200;
	--marron: #ac7c66;
	--marron-rgb: 173, 125, 103;
	--degrade-clair1: 231, 192, 172;
	--degrade-clair2: 247, 234, 228;
	--degrade-fonce1: 162, 93, 109;
	--degrade-fonce2: 213, 180, 188;
}

.page, .page_min {
	width : 100%;
	max-width : 1300px;
	margin : 0 auto;
}

.page_min {max-width : 800px;}

.page1-3 { max-width: calc(1300px / 3);}
.page2-3 { max-width: calc(1300px / 3 * 2);}

.col1-2,
.col1-3,
.col2-3,
.col3-4,
.col1-4 {float : left;}

.col{width: 100%; }
.col3-4{width: 75%;}
.col1-2{width: 50%;}
.col1-3{width: 33.33%;}
.col2-3{width: 66.66%;}
.col1-4{width: 25%;}

.section2-3 { width: calc(50% + 1300px * 1 / 6 + var(--padding) * 3); }
.section1-3 { width: calc(50% - 1300px / 6 - var(--padding) * 3); }

.flexParent {
    display: flex;
    flex-wrap: wrap;
}

.flex,
.flex1-1,
.flex1-2,
.flex1-3,
.flex2-3,
.flex3-4,
.flex1-4 { 
    display: flex;
}

.flex1-1{width: 100%;}
.flex3-4{width: 75%;}
.flex1-2{width: 50%;}
.flex1-3{width: 33.33%;}
.flex2-3{width: 66.66%;}
.flex1-4{width: 25%;}


.flexColumn {
	flex-direction: column;
	display: flex;
}

.flex_between {
    justify-content: space-between;
}

.flex_start_center {
    justify-content: flex-start;
    align-items: center;
}

.flex_center {
    justify-content: center;
}

.flex_center_center {
    justify-content: center;
    align-items: center;
}

.flex_between_center {
    justify-content: space-between;
    align-items: center;
}

.flex_end_center {
    justify-content: flex-end;
    align-items: center;
}

.flex_around_center {
    justify-content: space-around;
    align-items: center;
}

.flex_evenly_center {
    justify-content: space-evenly;
    align-items: center;
}

.column2 {
	column-gap: var(--padding);
	-moz-column-gap: var(--padding);
	-moz-columns: 2 auto;
	-webkit-column-gap:var(--padding);
	-webkit-columns: 2 auto;
	columns: 2;
}

.column3 {
	column-gap: var(--padding);
	-moz-column-gap: var(--padding);
	-moz-columns: 3 auto;
	-webkit-column-gap: var(--padding);
	-webkit-columns: 3 auto;
	columns: 3;
}

.padding{ padding: var(--padding); }
.paddingMin{ padding: calc(var(--padding) / 2); }
.paddingBig{ padding: calc(var(--padding) * 2); }
.paddingLR{ 
	padding-left: var(--padding);
	padding-right: var(--padding);
}
.paddingBigLR{ 
	padding-left: calc(var(--padding) * 2);
	padding-right: calc(var(--padding) * 2);
}
.paddingExtrabigLR{ 
	padding-left: calc(var(--padding) * 4);
	padding-right: calc(var(--padding) * 4);
}
.paddingBigTB{ 
	padding-top: calc(var(--padding) * 2);
	padding-bottom: calc(var(--padding) * 2);
}
.paddingExtrabigTB{ 
	padding-top: calc(var(--padding) * 4);
	padding-bottom: calc(var(--padding) * 4);
}
.paddingTB{ 
	padding-top: var(--padding);
	padding-bottom: var(--padding);
}
.paddingNoTop { padding-top: 0; }
.paddingNoBottom { padding-bottom: 0; }

.noMargin { margin: 0 !important; }

.position_relative { position: relative; }

.oHidden { overflow: hidden; }

/*gestion des couleurs et des fonds  */

.bg {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

.bg_gris_fonce {background-color : var(--gris-fonce); color : #fff;}
.bg_gris_clair {background-color : var(--gris-clair); color : #000;}
.bg_blanc {background-color : #fff; color : #000;}
.bg_rose {background-color : var(--rose); color : #000;}


.bg_rose a:link, .bg_rose a:visited, 
.bg_gris_clair a:link, .bg_gris_clair a:visited, 
.bg_blanc a:link, .bg_blanc a:visited {color : #000;} 
.bg_gris_fonce a:link, .bg_gris_fonce a:visited,
.bgDegrade2 a:link, .bgDegrade2 a:visited,
.bg_marron a:link, .bg_marron a:visited {color : #fff;} 

.bgAccueil {
	background-image: url(/style/accueil/mains-sages-slide.jpg);
	min-height: 800px;
}

.bgPropos {
	background-image: url(/style/propos/slide.jpg);
	min-height: 400px;
}

.bgMassages {
	background-image: url(/style/massages/massages-mains-sages.jpg);
	min-height: 400px;
}

.bgActualites {
	background-image: url(/style/actualites/slide.jpg);
	min-height: 400px;
}

.bgContact {
	background-image: url(/style/contact/reunion.jpg);
	min-height: 400px;
}

.bgDegrade1 { background: linear-gradient(45deg, rgba(var(--degrade-clair2),1) 0%, rgba(var(--degrade-clair1),1) 100%); }
.bgDegrade2 { background: linear-gradient(45deg, rgba(var(--degrade-fonce2),1) 0%, rgba(var(--degrade-fonce1),1) 100%); color: #fff; }

.gris_clair { color: var(--gris-clair); }
.rose { color: var(--rose); }
.marron { color: var(--marron) !important; }
.blanc { color: #fff; }

.section {padding : 60px 0; position: relative;}
.section_top {padding-top : 47px;}

.margin_auto{margin: 0 auto;}

.relative{position : relative;}

.float_right {float : right;}
.float_left {float : left;}

.align_center {text-align : center;}
.align_right {text-align : right;}

.maj { text-transform: uppercase; }
.italic { font-style: italic; }
.noItalic { font-style: normal; }

.thin { font-weight: 100; }
.extralight { font-weight: 200; }
.light { font-weight: 300; }
.normal { font-weight: 400; }
.medium { font-weight: 500; }
.semibold { font-weight: 600; }
.bold { font-weight: 700; }
.extrabold { font-weight: 800; }
.black { font-weight: 900; }

.big { font-size: 130%; line-height: 1.2; }
.extrabig { font-size: 150%; line-height: 1.2; }
.small { font-size: 80%; }
.extrasmall { font-size: 60%; }

.block { display: block; }

.svg  { width: 40px; height: 40px; padding-right: 10px; }
.svg * { fill: var(--marron)!important; width: 100%; height: 100%; }

/*** animations ***********************************/

.zoom_container {
	display: block;
	overflow: hidden;
	line-height: 0;
}

.zoomup { transition: 0.4s; }
.zoomup:hover {transform: scale(1.2);}

.zoomdown { transition: 0.4s; }
.zoomdown:hover {transform: scale(0.8);}

.zoomtourne { transition: 0.4s;}
.zoomtourne:hover {transform: rotate(15deg) scale(0.9);}

.zoominfini:hover {
	animation-duration: 0.8s;
	animation-name: zoominfini;
	animation-iteration-count: infinite;
	animation-direction: alternate;
	animation-timing-function: ease-in-out;
}

@keyframes zoominfini {
  from { transform: scale(1); }
  to   { transform: scale(1.2); }
}

.fade {
	opacity: 0;
	transition: 1s;
}

.fondu_top {
	opacity: 0;
	position: relative;
	margin-top: 200px;
	transition: all 1s, width 0s;
}

.fondu_left {
	opacity: 0;
	position: relative;
	left: -1000px;
	transition: all 1s, width 0s;
}

.fondu_right {
	opacity: 0;
	position: relative;
	left: 1000px;
	transition: all 1s, width 0s;
}

.fondu_revele {
	opacity: 1;
	top: 0;
	left: 0;
	z-index: 100;
	margin-top: 0;
}

.fondu_intro {
	opacity : 0;
	overflow : hidden; 
	-webkit-animation: anim-opa-grid 3s ease-in-out forwards; /* Safari 4+ */
	-moz-animation:    anim-opa-grid 3s ease-in-out forwards; /* Fx 5+ */
	-o-animation:      anim-opa-grid 3s ease-in-out forwards; /* Opera 12+ */
	animation:         anim-opa-grid 3s ease-in-out forwards; /* IE 10+, Fx 29+ */
}

@-webkit-keyframes anim-opa-grid {
  from { opacity: 0; }
    to { opacity: 1; }
  
}
@-moz-keyframes anim-opa-grid {
   from { opacity: 0; }
    to { opacity: 1; }
}
@-o-keyframes anim-opa-grid {
   from { opacity: 0; }
    to { opacity: 1; }
}
@keyframes anim-opa-grid {
  from { opacity: 0; }
    to { opacity: 1; }
}

.duree_transition1 { transition: 0.5s; }
.duree_transition2 { transition: 1s; }
.duree_transition3 { transition: 1.5s; }
.duree_transition4 { transition: 2s; }
.duree_transition5 { transition: 2.5s; }

.mainHaut { animation-name: mainHaut; }
.mainBas { animation-name: mainBas; }
.mainHaut, .mainBas {
	animation-duration: 1s;
	animation-iteration-count: 1;
	animation-direction: forwards;
	animation-timing-function: ease-in-out;
}
@keyframes mainHaut {
	from { opacity: 0; transform: translateY(-300%); }
	to   { opacity: 1; transform: none; }
}
@keyframes mainBas {
	from { opacity: 0; transform: translateY(300%); }
	to   { opacity: 1; transform: none; }
}


/*** header  *****************************************/
	header {
		position: fixed; 
		width : 100%; 
		z-index : 1000;
		top : 0; 
		left : 0;
		display: flex;
		justify-content: space-between;
		align-items: center;
		box-shadow: 0 0 20px rgba(0,0,0,0.2);
	}

	a#logo .img_100{
		display : block;
	}
	
	#slider {padding : 50px; }
	
/*** menu *****************************************/
	nav li { display : inline-block; padding: 0 10px; }
		nav li a {
			position: relative;
			display : block;
			padding : 10px;
			font-size: 110%;
			color: var(--marron) !important;
		}

		nav li a span {
			position: relative;
			z-index: 2;
		}

		nav li a::before {
			content: '';
			background-color: var(--gris-clair);
			border-bottom-left-radius: 20px;
			border-bottom-right-radius: 20px;
			height: calc(100% - 5px);
			width: 100%;
			position: absolute;
			top: 0;
			left: 50%;
			transform: translate(-50%,-100%);
			transition: 0.5s;
			z-index: 1;
		}
		
		nav li a:focus::before, nav li a:hover::before,
		#accueil nav li#nav-accueil a::before,
		#a-propos nav li#nav-a-propos a::before,
		#les-massages nav li#nav-les-massages a::before,
		#actualites nav li#nav-actualites a::before,
		#contact nav li#nav-contact a::before {
			transform: translateX(-50%);
		}
			
/*** accueil ****************************************************/

.border {
	border-radius: 20px;
}

.borderRight {
	border-top-right-radius: 20px;
	border-bottom-right-radius: 20px;
}

.accueilMassages {
	position: absolute;
	bottom: calc(var(--padding) * 2);
	left: calc(0px - var(--padding) * 2);
	padding: 60px 30px;
	border-radius: 20px;
	font-size: 160%;
	line-height: 1;
	color: var(--marron);
	width: 100%;
	max-width: calc(1300px / 3 - var(--padding) * 2);
}

.citation { font-size: 300%; line-height: 1.2; }
.citationAuteur { font-size: 200%; line-height: 1.2; }
.small .citation { font-size: 280%; }

#actualites .uneActu.col1-2 { width: 33%; }


/*** massages ***/
.massageLien {
	padding: 0 10px;
	border-right: 1px solid;
	position: relative;
	line-height: 1;
	margin-bottom: 10px;
}
.massageLien:last-child { border-right: 0px; }
.massageLien::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	height: 1px;
	width: 0;
	transform: translateX(-50%);
	background-color: var(--marron);
	transition: 0.5s;
}
.massageLien.actif::after, .massageLien:hover::after {
	width: calc(100% - 20px);
}

.detailMassage { flex-direction: row-reverse; }

.imgMassage {
	width: 100% !important;
}


/*** liste + paragrahe  *****************************************/
	ul.list{
		list-style-type : disc;
		margin-left : 20px;
		color: var(--marron);
	}
	ul.list li span {
		color: #000;
	}

	ul.inline li{
		display : inline-block;
		padding : 0 10px;
	}
	
	.section p, .section_top p {margin-bottom : 30px;}
	
	.img_100 {
		max-width : 100%;
		display : block; 
		line-height : 1; 
		width : auto;
	}

	.img_cover {
		display: block;
		width: 100%;
		height: 100%;
		object-position: center;
		object-fit: cover;
	}


/*** footer  *****************************************/ 

footer.bg_rose { background-color: #fff2ec;}
	.nav-mentions li, .nav_rs li{
		display : inline-block;
	}

		.nav-mentions li a, .nav_rs li a{padding : 0 5px;}

		.nav-mentions li a {font-size : 75%; border-left : 1px solid; }

			.nav-mentions li:first-child a{
				border-left : none; 
			}
			
	.titre_footer {
		display :  block; 
		text-transform : uppercase; 
		font-size : 110%;
		font-weight : 600;
		margin-bottom : 5px;
	}

/*** titre *****************************************/
.bigTitre {
	font-size: 220%;
	color: var(--marron);
	line-height: 1.2;
}

h1 {
	font-size: 350%;
	font-weight: 400;
	color: var(--marron);
	line-height: 1.2;
	font-family: "ElMessiri";
}

h2, .like_h2 {
	font-size : 400%;
	line-height: 1;
	color: var(--marron);
	margin-bottom: var(--padding);
	font-family: "ReenieBeanie";
	font-weight: 400;
}
.bg_rose h2, .bg_rose .like_h2 { color: var(--marron); }
.bgDegrade2 h2, .bgDegrade2 .like_h2 { color: #fff; }

h3, .like_h3 {
	font-size : 140%;
	line-height: 1.2;
	font-weight: 600;
	font-family: "ElMessiri";
}

h4, .like_h4 {
	font-size : 120%;
	line-height: 1.2;
	font-family: "ElMessiri";
}

.reenieBeanie { font-family: "ReenieBeanie"; }
.elmessiri { font-family: "ElMessiri"; }


/*** lien *****************************************/

.btn_suite, .btn_suite.ico {
	display : inline-block;
	padding : 5px 15px;
	text-align: center;
	width: 100%;
	max-width: 200px;
	font-size: 110%;
	font-weight: 300;
	background : var(--marron);
	border-radius: var(--padding);
	color : #fff !important;
	border: none;
	appearance:none;
	-moz-appearance:none; /* Firefox */
	-webkit-appearance:none; /* Safari and Chrome */
	transition: all 0.5s;
	cursor : pointer;
	font-family: "ElMessiri";
}

.ico.btn_suite::before, .btn_suite::before, .btn_header.ico::before { color:#fff; }
.ico.btn_suite:hover::before, .btn_suite:hover::before, .btn_header.ico:hover::before { color:var(--marron); }

	
	.btn_suite:hover,		
	.btn_suite:focus,
	.bgDegrade2 .btn_suite:hover,
	.bgDegrade2 .btn_suite:focus {		
		background : #000!important;
		color : #fff!important;
	}

.bgDegrade2 .btn_suite {
	background-color: #fff;
	color: rgb(var(--degrade-fonce1)) !important;
}


.btn_header {
	display: inline-flex;
	align-items: center;
	background-color: var(--marron);
	color: #fff !important;
	font-size: 120%;
	padding: 10px 15px;
	transition: 0.5s;
}
.btn_header.ico-mobile { font-size: 150%;}
.btn_header:hover {
	background-color: #fff;
	color: var(--marron) !important;
}
	

/*** actualites  *****************************************/

	.imgActu {
		display : block;
		height : 150px;
		overflow : hidden;
		position : relative;
	}	

		.imgActu img {
			max-height : 100%;
			margin : 0 auto;	
			position : absolute; 
			top : 50%; 
			left : 50%; 
			transform : translate(-50%,-50%);
		}
		
		
			.imgActu span{
				position : absolute; 
				top : 50%; 
				left : 50%; 
				transform : translate(-50%,-50%);
				text-transform : uppercase; 
				color : rgba(146,143,143,0.5);
				font-weight : 300;
				text-align : center;
				font-size : 95%;
			}
			
			.imgActu span::before{
				content : '\f030';
				font-family : "Font Awesome 5 Free"; 
				font-weight: bold;
				display : block;
				font-size : 200%;
				color : rgba(146,143,143,0.5);
			}

		.video-responsive {
			overflow:hidden;
			padding-bottom:56.25%;
			position:relative;
			height:0;
		}

		.video-responsive iframe {
			left:0;
			top:0;
			height:100%;
			width:100%;
			position:absolute;
		}

/*** icone  *****************************************/

	.ico { display: flex; }

	.ico::before{
		font-family : 'Font Awesome 5 Free'; 
		font-size : 120%; 
		padding-right : 5px; 
		font-weight: bold;
		color: var(--marron);
	}
	.ico-regular::before{
		font-weight: normal;
	}
	
	 p.ico span{overflow : hidden; display : inline;}
	 p.ico::before{display : inline;}
	
	.ico-eye::before { content : "\f06e";}
	.ico-map::before { content : "\f3c5";}
	.ico-map-marker::before { content : "\f041";}
	.ico-mobile::before { content : "\f3cd";}
	.ico-phone::before { content : "\f095";}
	.ico-web::before { content : "\f0ac";}
	.ico-mail::before { content : "\f0e0";}
	.ico-recherche::before { content : "\f002";}
	.ico-compte::before { content : "\f2bd";}
	.ico-pdf::before { content : "\f1c1";}
	.ico-print::before { content : "\f02f";}
	.ico-streetview::before {content : "\f21d";}
	.ico-nav::before {content : "\f0c9";}
	.ico-clock::before {content : "\f017";}
	.ico-star::before {content : "\f005"; }
	.ico-laptop::before {content : "\f109"; }
	.ico-store::before {content : "\f54e"; }
	.ico-exchange::before {content : "\f362"; }
	.ico-desktop::before {content : "\f108"; }

	.ico-mobile:hover::before {
		-webkit-animation: anim-mobile 0.3s ease-in-out; /* Safari 4+ */
		-moz-animation:    anim-mobile 0.3s ease-in-out; /* Fx 5+ */
		-o-animation:      anim-mobile 0.3s ease-in-out; /* Opera 12+ */
		animation:         anim-mobile 0.3s ease-in-out; /* IE 10+, Fx 29+ */
	}
		
	@-webkit-keyframes anim-mobile {
		0% { transform: rotate(0deg); }
		25% { transform: rotate(15deg); }
		75% { transform: rotate(-15deg); }
		100% { transform: rotate(0deg); }
	}

	@-moz-keyframes anim-mobile {
		0% { transform: rotate(0deg); }
		25% { transform: rotate(15deg); }
		75% { transform: rotate(-15deg); }
		100% { transform: rotate(0deg); }
	}
	@-o-keyframes anim-mobile {
		0% { transform: rotate(0deg); }
		25% { transform: rotate(15deg); }
		75% { transform: rotate(-15deg); }
		100% { transform: rotate(0deg); }
	}
	@keyframes anim-mobile {
		0% { transform: rotate(0deg); }
		25% { transform: rotate(15deg); }
		75% { transform: rotate(-15deg); }
		100% { transform: rotate(0deg); }
	}


/*** masonry ****************/

.masonry {
	column-gap: 0px;
	column-count: 3;
}

.masonry > .item {
	display: block;
  	break-inside: avoid-column;
	transition : all 0.5s;
	/* margin: 0 0 1em;*/
}

/* Masonry-css on medium-sized screens */
@media only screen and (max-width: 1000px) {
	.masonry {
		column-count: 2;
	}
}

/* Masonry-css on medium-sized screens */
@media only screen and (max-width: 800px) {
	.masonry {
		column-count: 1;
	}
}


/* magnific popup */
.mfp-bg{top:0;left:0;width:100%;height:100%;z-index:1042;overflow:hidden;position:fixed;background:#0b0b0b;opacity:.8;filter:alpha(opacity=80)}.mfp-wrap{top:0;left:0;width:100%;height:100%;z-index:1043;position:fixed;outline:0!important;-webkit-backface-visibility:hidden;backface-visibility:hidden;}.mfp-container{text-align:center;position:absolute;width:100%;height:100%;left:0;top:0;padding:0 8px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.mfp-container:before{content:'';display:inline-block;height:100%;vertical-align:middle}.mfp-align-top .mfp-container:before{display:none}.mfp-content{position:relative;display:inline-block;vertical-align:middle;margin:0 auto;text-align:left;z-index:1045}.mfp-ajax-holder .mfp-content,.mfp-inline-holder .mfp-content{width:100%;cursor:auto}.mfp-ajax-cur{cursor:progress}.mfp-zoom-out-cur,.mfp-zoom-out-cur .mfp-image-holder .mfp-close{cursor:-moz-zoom-out;cursor:-webkit-zoom-out;cursor:zoom-out}.mfp-zoom{cursor:pointer;cursor:-webkit-zoom-in;cursor:-moz-zoom-in;cursor:zoom-in}.mfp-auto-cursor .mfp-content{cursor:auto}.mfp-arrow,.mfp-close,.mfp-counter,.mfp-preloader{-webkit-user-select:none;-moz-user-select:none;user-select:none}.mfp-loading.mfp-figure{display:none}.mfp-hide{display:none!important}.mfp-preloader{color:#ccc;position:absolute;top:50%;width:auto;text-align:center;margin-top:-.8em;left:8px;right:8px;z-index:1044}.mfp-preloader a{color:#ccc}.mfp-preloader a:hover{color:#fff}.mfp-s-error .mfp-content,.mfp-s-ready .mfp-preloader{display:none}button.mfp-arrow,button.mfp-close{overflow:visible;cursor:pointer;background:0 0;border:0;-webkit-appearance:none;appearance:none;display:block;outline:0;padding:0;z-index:1046;-webkit-box-shadow:none;box-shadow:none}button::-moz-focus-inner{padding:0;border:0}.mfp-close{width:44px;height:44px;line-height:44px;position:absolute;right:0;top:0;text-decoration:none;text-align:center;opacity:.65;filter:alpha(opacity=65);padding:0 0 18px 10px;color:#fff;font-style:normal;font-size:28px;font-family:Arial,Baskerville,monospace}.mfp-close:focus,.mfp-close:hover{opacity:1;filter:alpha(opacity=100)}.mfp-close:active{top:1px}.mfp-close-btn-in .mfp-close{color:#333}.mfp-iframe-holder .mfp-close,.mfp-image-holder .mfp-close{color:#fff;right:-6px;text-align:right;padding-right:6px;width:100%}.mfp-counter{position:absolute;top:0;right:0;color:#ccc;font-size:12px;line-height:18px}.mfp-arrow{position:absolute;opacity:.65;filter:alpha(opacity=65);margin:-55px 0 0;top:50%;padding:0;width:90px;height:110px;-webkit-tap-highlight-color:transparent}.mfp-arrow:active{margin-top:-54px}.mfp-arrow:focus,.mfp-arrow:hover{opacity:1;filter:alpha(opacity=100)}.mfp-arrow .mfp-a,.mfp-arrow .mfp-b,.mfp-arrow:after,.mfp-arrow:before{content:'';display:block;width:0;height:0;position:absolute;left:0;top:0;margin-top:35px;margin-left:35px;border:inset transparent}.mfp-arrow .mfp-a,.mfp-arrow:after{border-top-width:13px;border-bottom-width:13px;top:8px}.mfp-arrow .mfp-b,.mfp-arrow:before{border-top-width:21px;border-bottom-width:21px;opacity:.7}.mfp-arrow-left{left:0}.mfp-arrow-left .mfp-a,.mfp-arrow-left:after{border-right:17px solid #fff;margin-left:31px}.mfp-arrow-left .mfp-b,.mfp-arrow-left:before{margin-left:25px;border-right:27px solid #3f3f3f}.mfp-arrow-right{right:0}.mfp-arrow-right .mfp-a,.mfp-arrow-right:after{border-left:17px solid #fff;margin-left:39px}.mfp-arrow-right .mfp-b,.mfp-arrow-right:before{border-left:27px solid #3f3f3f}.mfp-iframe-holder{padding-top:40px;padding-bottom:40px}.mfp-iframe-holder .mfp-content{line-height:0;width:100%;max-width:900px}.mfp-iframe-holder .mfp-close{top:-40px}.mfp-iframe-scaler{width:100%;height:0;overflow:hidden;padding-top:56.25%}.mfp-iframe-scaler iframe{position:absolute;display:block;top:0;left:0;width:100%;height:100%;box-shadow:0 0 8px rgba(0,0,0,.6);background:#000}img.mfp-img{width:auto;max-width:100%;height:auto;display:block;line-height:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:40px 0;margin:0 auto}.mfp-figure{line-height:0}.mfp-figure:after{content:'';position:absolute;left:0;top:40px;bottom:40px;display:block;right:0;width:auto;height:auto;z-index:-1;box-shadow:0 0 8px rgba(0,0,0,.6);background:#444}.mfp-figure small{color:#bdbdbd;display:block;font-size:12px;line-height:14px}.mfp-figure figure{margin:0}.mfp-bottom-bar{margin-top:-36px;position:absolute;top:100%;left:0;width:100%;cursor:auto}.mfp-title{text-align:left;line-height:18px;color:#f3f3f3;word-wrap:break-word;padding-right:36px}.mfp-image-holder .mfp-content{max-width:100%}.mfp-gallery .mfp-image-holder .mfp-figure{cursor:pointer}@media screen and (max-width:800px) and (orientation:landscape),screen and (max-height:300px){.mfp-img-mobile .mfp-image-holder{padding-left:0;padding-right:0}.mfp-img-mobile img.mfp-img{padding:0}.mfp-img-mobile .mfp-figure:after{top:0;bottom:0}.mfp-img-mobile .mfp-figure small{display:inline;margin-left:5px}.mfp-img-mobile .mfp-bottom-bar{background:rgba(0,0,0,.6);bottom:0;margin:0;top:auto;padding:3px 5px;position:fixed;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.mfp-img-mobile .mfp-bottom-bar:empty{padding:0}.mfp-img-mobile .mfp-counter{right:5px;top:3px}.mfp-img-mobile .mfp-close{top:0;right:0;width:35px;height:35px;line-height:35px;background:rgba(0,0,0,.6);position:fixed;text-align:center;padding:0}}@media all and (max-width:900px){.mfp-arrow{-webkit-transform:scale(0.75);transform:scale(0.75)}.mfp-arrow-left{-webkit-transform-origin:0;transform-origin:0}.mfp-arrow-right{-webkit-transform-origin:100%;transform-origin:100%}.mfp-container{padding-left:6px;padding-right:6px}}.mfp-ie7 .mfp-img{padding:0}.mfp-ie7 .mfp-bottom-bar{width:600px;left:50%;margin-left:-300px;margin-top:5px;padding-bottom:5px}.mfp-ie7 .mfp-container{padding:0}.mfp-ie7 .mfp-content{padding-top:44px}.mfp-ie7 .mfp-close{top:0;right:0;padding-top:0}

/*! #######################################################################

	MeanMenu 2.0.7
	--------

	To be used with jquery.meanmenu.js by Chris Wharton (http://www.meanthemes.com/plugins/meanmenu/)

####################################################################### */

/* hide the link until viewport size is reached */
a.meanmenu-reveal {
	display: none;
}

/* when under viewport size, .mean-container is added to body */
.mean-container .mean-bar {
	float: left;
	width: 100%; 
	position: fixed;
	background: transparent;
	/*padding: 4px 0;*/
	/*min-height: 42px;*/
	z-index: 999999;
}

.mean-container a.meanmenu-reveal {
	padding : 6px 10px;
	position: absolute;
	top: 0px;
	right: 0;
	cursor: pointer;
	color: #fff;
	text-decoration: none;
	font-size: 80%;
	/*text-transform : uppercase;*/
	display: block;
	font-weight: 300;
	background : var(--marron);
	z-index: 800;
	text-align : center;
}

a.meanmenu-reveal::before {
	content : "\f0c9"; 
	font-family : "Font Awesome 5 Free"; 
	font-weight : bold;
	text-align : center;
	padding-right : 5px;
	font-size : 200%; 
}

.mean-container a.meanclose::before { display : none;}

.mean-container a.meanmenu-reveal span {
	background : var(--marron);
	position : relative;
	top : -5px;
}


.mean-container .mean-nav {
	float: left;
	width: 100%;
	background: var(--gris-clair);
	box-shadow: 0 0 20px rgba(0,0,0,0.2);
	/*margin-top: 44px;*/
}

.mean-container .mean-nav ul {
	padding: 0;
	margin: 0;
	width: 100%;
	list-style-type: none;
}

.mean-container .mean-nav ul li {
	position: relative;
	float: left;
	width: 100%;
}

.mean-container .mean-nav ul li a {
	display: block;
	float: left;
	width: 100%;
	box-sizing : border-box; 
	padding: 1em 5%;
	margin: 0;
	text-align: left;
	color: #000;
	/*border-top: 1px solid #383838;
	border-top: 1px solid rgba(255,255,255,0.5);*/
	text-decoration: none;
	/*text-transform: uppercase;*/
}

.mean-container .mean-nav ul li li a {
	width: 80%;
	padding: 1em 10%;
	border-top: 1px solid #f1f1f1;
	border-top: 1px solid rgba(255,255,255,0.25);
	opacity: 0.75;
	filter: alpha(opacity=75);
	text-shadow: none !important;
	visibility: visible;
}

.mean-container .mean-nav ul li.mean-last a {
	border-bottom: none;
	margin-bottom: 0;
}

.mean-container .mean-nav ul li li li a {
	width: 70%;
	padding: 1em 15%;
}

.mean-container .mean-nav ul li li li li a {
	width: 60%;
	padding: 1em 20%;
}

.mean-container .mean-nav ul li li li li li a {
	width: 50%;
	padding: 1em 25%;
}

.mean-container .mean-nav ul li a:hover {
	background: #252525;
	background: rgba(255,255,255,0.1);
}

.mean-container .mean-nav ul li a.mean-expand {
	margin-top: 1px;
	width: 26px;
	height: 32px;
	padding: 12px !important;
	text-align: center;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 2;
	font-weight: 700;
	background: rgba(255,255,255,0.1);
	border: none !important;
	border-left: 1px solid rgba(255,255,255,0.4) !important;
	border-bottom: 1px solid rgba(255,255,255,0.2) !important;
}

.mean-container .mean-nav ul li a.mean-expand:hover {
	background: rgba(0,0,0,0.9);
}

.mean-container .mean-push {
	float: left;
	width: 0;/*100%;*/
	padding: 0;
	margin: 0;
	clear: both;
}

.mean-nav .wrapper {
	width: 100%;
	padding: 0;
	margin: 0;
}

/* Fix for box sizing on Foundation Framework etc. */
.mean-container .mean-bar, .mean-container .mean-bar * {
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
}

/* popup gestion cookies */

body.cn-cookie-overlay {overflow: hidden; height: 100vh;}

.cn-cookie {
	display: block;
	position: fixed;
	width: 100%;
	height: 100vh;
	z-index: 99999;
	top : 0;
	left: 0;
	background : rgba(0,0,0,.5);
	
}

.cn-cookie-content {
   display: block;
   position: fixed;
   max-width: 500px;
   min-width: 320px;
   height: auto;
   z-index: 100000;
   font-size: 16px;
   line-height: 18px;
   top : 50%;
   left: 50%;
   padding : 20px; 
   color: #000;
   background : #fff;
   transform : translate(-50%,-50%);
}

.cn-cookie strong {font-size : 30px; display : block; padding-bottom : 20px; line-height: 1.2em;}

.cn-cookie p {padding-bottom : 20px;}
.cn-cookie a.btnDenyCookies {
	text-decoration: underline; 
	padding-bottom : 10px;	
	display: block;
	color : #8c8c8c!important;
  text-align: center;
}
.cn-cookie a.btnAcceptCookies,
.cn-cookie a.btnDetailsCookies { 
  display: block;
  width : 100%;
  margin-bottom : 10px;
  color: #fff; 
  text-align: center;
  padding: 5px 10px;
  text-decoration: none;
  outline: none;
}
.cn-cookie a.btnAcceptCookies {
  background : #000;
  color : #fff!important; 
}

.cn-cookie a.btnDetailsCookies {
  border : 1px solid;
  color : #000!important; 
}


/*********************** responsive  ***************************************/

@media all and (max-width: 1500px) {

	.w100-1500 { width: 100%; max-width: 100%; }
	.w50-1500 { width: 50%; }

}

@media all and (max-width: 1400px) {

	.w100-1400 { width: 100%; }
	.w50-1400 { width: 50%; }
	.accueilMassages {
		left: 50%;
		bottom: 50%;
		transform: translate(-50%,50%);
	}

}

@media all and (max-width: 1300px) {

	

}

@media all and (max-width: 1200px) {

	.l1-1 { width: 100%; }
	.l1-2, #actualites .uneActu.l1-2 { width: 50%; }
	.l1-3 { width: 33.33%; }
	.l1-4 { width: 25%; }
	.lColumnReverse { flex-direction: column-reverse; }
	.lCache { display: none; }

}

@media all and (max-width: 1100px) {

	header.bg_rose { justify-content: flex-end; background-color: var(--marron); }
	nav li a::before { display: none; }
	.w100-1100 { width: 100%; }
	.bgAccueil { min-height: 600px; }

}

@media all and (max-width: 1000px) {
	
	.m1-1 { width: 100%; max-width: 100%; }
	.m1-2 { width: 50%; }
	.m1-3 { width: 33.33%; }
	.m1-4 { width: 25%; }
	.mColumnReverse { flex-direction: column-reverse; }
	.mCache { display: none; }

	img.img_100.imgMassage { width: auto !important; padding: 0; }

	.cn-cookie a.btnAccept, .cn-cookie a.btnDeny {
		position : relative;
		top : inherit;
		display : block;
		right : inherit;
		margin : 10px auto 0 auto;
		max-width : 200px;
		transform : translateY(0);
	}
	
}

@media all and (max-width: 620px) {

	.sColumnReverse { flex-direction: column-reverse; }
	.sCache { display: none; }

	html, body { overflow-x: hidden; }

	.col1-2, .col1-3, .col2-3, .col1-4, .col3-4 { float : none; width : 100%; }
	
	.flex1-2, .flex1-3, .flex2-3, .flex1-4, .flex3-4  {width : 100%;}

	#actualites .uneActu.l1-2, .s1-1 { width: 100%; }
	.s1-2 { width: 50%; }
	.s1-3 { width: 33.33%; }
	.s1-4 { width: 25%; }	
	
}

