/*
Theme Name: Les toues cabannées
Author: PUShAUNE
Author URI: https://www.pushaune.com
Description: The 2020 les toues cabannées theme.
Version: 1.1
License: http://creativecommons.org/licenses/by-nc-nd/3.0/
*/

/* =Reset default browser CSS. Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {border: 0;font-family: inherit;font-size: 100%;font-style: inherit;font-weight: inherit;margin: 0;outline: 0;padding: 0;vertical-align: baseline;} :focus {outline:0;}body {background: #fff;line-height: 1;}ol, ul {list-style: none;}table {border-collapse: separate;border-spacing: 0;}caption, th, td {font-weight: normal;text-align: left;}blockquote:before, blockquote:after, q:before, q:after {content: "";}blockquote, q {quotes: "" "";}a img {border: 0;}article, aside, details, figcaption, figure,footer, header, hgroup, menu, nav, section {display: block;} a{text-decoration: none;}figure{margin: 0;}

button {
  appearance: none;
  background: transparent;
  /* Other styles */
}

/* = Here it goes!
----------------------------------------------- */
@font-face {
    font-family: 'aestetico';
    src: url('fonts/Aestetico-Thin.woff2') format('woff2'),
         url('fonts/Aestetico-Thin.woff') format('woff');
    font-weight: 100;
    font-style: normal;
}
@font-face {
    font-family: 'aestetico';
    src: url('fonts/Aestetico-ThinIt.woff2') format('woff2'),
         url('fonts/Aestetico-ThinIt.woff') format('woff');
    font-weight: 100;
    font-style: italic;
}
@font-face {
    font-family: 'aestetico';
    src: url('fonts/Aestetico-ExtraLight.woff2') format('woff2'),
         url('fonts/Aestetico-ExtraLight.woff') format('woff');
    font-weight: 200;
    font-style: normal;
}
@font-face {
    font-family: 'aestetico';
    src: url('fonts/Aestetico-ExtraLightIt.woff2') format('woff2'),
         url('fonts/Aestetico-ExtraLightIt.woff') format('woff');
    font-weight: 200;
    font-style: italic;
}
@font-face {
    font-family: 'aestetico';
    src: url('fonts/Aestetico-Light.woff2') format('woff2'),
         url('fonts/Aestetico-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
}
@font-face {
    font-family: 'aestetico';
    src: url('fonts/Aestetico-LightIt.woff2') format('woff2'),
         url('fonts/Aestetico-LightIt.woff') format('woff');
    font-weight: 300;
    font-style: italic;
}
@font-face {
    font-family: 'aestetico';
    src: url('fonts/Aestetico-Regular.woff2') format('woff2'),
         url('fonts/Aestetico-Regular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: 'aestetico';
    src: url('fonts/Aestetico-RegularIt.woff2') format('woff2'),
         url('fonts/Aestetico-RegularIt.woff') format('woff');
    font-weight: 400;
    font-style: italic;
}
@font-face {
    font-family: 'aestetico';
    src: url('fonts/Aestetico-Medium.woff2') format('woff2'),
         url('fonts/Aestetico-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
}
@font-face {
    font-family: 'aestetico';
    src: url('fonts/Aestetico-MediumIt.woff2') format('woff2'),
         url('fonts/Aestetico-MediumIt.woff') format('woff');
    font-weight: 500;
    font-style: italic;
}
@font-face {
    font-family: 'aestetico';
    src: url('fonts/Aestetico-SemiBold.woff2') format('woff2'),
         url('fonts/Aestetico-SemiBold.woff') format('woff');
    font-weight: 600;
    font-style: normal;
}
@font-face {
    font-family: 'aestetico';
    src: url('fonts/Aestetico-SemiBoldIt.woff2') format('woff2'),
         url('fonts/Aestetico-SemiBoldIt.woff') format('woff');
    font-weight: 600;
    font-style: italic;
}
@font-face {
    font-family: 'aestetico';
    src: url('fonts/Aestetico-Bold.woff2') format('woff2'),
         url('fonts/Aestetico-Bold.woff') format('woff');
    font-weight: 700;
    font-style: normal;
}
@font-face {
    font-family: 'aestetico';
    src: url('fonts/Aestetico-Bold.woff2') format('woff2'),
         url('fonts/Aestetico-Bold.woff') format('woff');
    font-weight: 700;
    font-style: italic;
}
@font-face {
    font-family: 'aestetico';
    src: url('fonts/Aestetico-ExtraBold.woff2') format('woff2'),
         url('fonts/Aestetico-ExtraBold.woff') format('woff');
    font-weight: 800;
    font-style: normal;
}
@font-face {
    font-family: 'aestetico';
    src: url('fonts/Aestetico-ExtraBoldIt.woff2') format('woff2'),
         url('fonts/Aestetico-ExtraBoldIt.woff') format('woff');
    font-weight: 800;
    font-style: italic;
}
@font-face {
    font-family: 'aestetico';
    src: url('fonts/Aestetico-Black.woff2') format('woff2'),
         url('fonts/Aestetico-Black.woff') format('woff');
    font-weight: 900;
    font-style: normal;
}
@font-face {
    font-family: 'aestetico';
    src: url('fonts/Aestetico-BlackIt.woff2') format('woff2'),
         url('fonts/Aestetico-BlackIt.woff') format('woff');
    font-weight: 900;
    font-style: italic;
}
/*  Variables */
:root{
	--main_column: 1638px;
	--gutter: 30px;
	--main_color: #E74B0F;
	--main_black: #163155;
	--green: #00483F;
	--grey: #8D9CB2;
	--light_grey: #F4F4F4;
}
html, body{
  height: 100%;
  width: 100%;
}
*,
*:after,
*:before{
	box-sizing: border-box;
	-webkit-transition: all 0.4s ease;
	-moz-transition: all 0.4s ease;
	-o-transition: all 0.4s ease;
	transition: all 0.4s ease;
}
::selection {
    background: var(--main_color);
    color:#fff;
}
::-moz-selection {
    background: var(--main_color);
    color:#fff;
}
img{
	max-width: 100%;
	height: auto;
}
.show_menu_mobile,
#btn_reservation_mobile{
	display: none;
}
a{
    color: inherit;
}
svg{
    color: inherit;
    display: block;
}
em, i{
    font-style: italic;
}
b, strong{
    font-weight: bold;
}
hr.clear{
	height: 1px;
	display: block;
	margin: 0;
	padding: 0;
	clear: both;
	width: 100%;
	border: none;
	background: none;
}
/* Infobulles GMaps */
.gm-style-iw h2{
    font-weight: bold;
    margin-bottom: 15px;
}
.gm-style-iw > div{
    width: auto !important;
}
.gm-style-iw p{
    margin-bottom: 5px;
}
.gm-style img{
    max-width: inherit;
}

/* Vidéo responsive */
.video-container {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px; height: 0; overflow: hidden;
    clear: both;
    padding-bottom: 56.25%;
}
.video-container iframe,
.video-container object,
.video-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* = Grille
----------------------------------------------- */
#content{
	padding-top: 118px;
}
.center{
	max-width: var(--main_column);
	margin: auto;
	display: block;
}
.container{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: stretch;
}
.container.missing::after {
  content: "";
  flex: auto;
}
.container.missing > *:last-child {
	margin-left: var(--gutter);
}
.container > .all_width {
	margin-left: 0;
}
.container.align_bottom{
	align-items: flex-end;
}
.container.align_top{
	align-items: flex-start;
}
.container.align_center{
	align-items: center;
}
.all_width{ width: 100%; }
.demi{ width: calc(50% - calc(var(--gutter)/2) ); }
.tiers{ width: calc(calc(100%/3) - calc(var(--gutter)*2/3 )); }
.quart{ width: calc(25% - calc(var(--gutter)*3/4) ); }
.sixieme{ width: calc(calc(100%/6) - calc(var(--gutter)*3/4) ); }
.trois-quart{ width: calc(75% - calc(
	calc(var(--gutter)/2 - 
		calc(var(--gutter)/6))
	) ); }
.deux-tiers{ width: calc(calc(100%*calc(2/3)) - calc(
	calc(var(--gutter)/2 - calc(var(--gutter)/6))
	) ); }
.cinq_douzieme{ width: calc(calc(100%*calc(5/12)) - calc(
	calc(var(--gutter)/2 - calc(var(--gutter)/6))
	) ); }
.sept_douzieme{ width: calc(calc(100%*calc(7/12)) - calc(
	calc(var(--gutter)/2 - calc(var(--gutter)/6))
	) ); }

/* Valeures absolues */
.all_width.abs{ width: var(--main_column); }
.demi.abs{ width: calc(calc(var(--main_column)/2) - calc(var(--gutter)/2) ); }
.tiers.abs{ width: calc(calc(var(--main_column)/3) - calc(var(--gutter)*2/3 )); }
.quart.abs{ width: calc(calc(var(--main_column)/4) - calc(var(--gutter)*3/4) ); }
.sixieme.abs{ width: calc(calc(var(--main_column)/6) - calc(var(--gutter)*3/4) ); }
.trois-quart.abs{ width: calc(var(--main_column)*calc(3/4) - calc(
	calc(var(--gutter)/2 - 
		calc(var(--gutter)/6))
	) ); }
.deux-tiers.abs{ width: calc(calc(var(--main_column)*calc(2/3)) - calc(
	calc(var(--gutter)/2 - calc(var(--gutter)/6))
	) ); }
.cinq_douzieme.abs{ width: calc(calc(var(--main_column)*calc(5/12)) - calc(
	calc(var(--gutter)/2 - calc(var(--gutter)/6))
	) ); }
.sept_douzieme.abs{ width: calc(calc(var(--main_column)*calc(7/12)) - calc(
	calc(var(--gutter)/2 - calc(var(--gutter)/6))
	) ); }

/* float */
.container.float{
	display: block;
}
.container.float .all_width,
.container.float .demi,
.container.float .tiers,
.container.float .quart,
.container.float .sixieme,
.container.float .trois-quart,
.container.float .deux-tiers,
.container.float .cinq_douzieme,
.container.float .sept_douzieme{
	float: left;
	margin-right: var(--gutter);
}
.container.float .demi:nth-child(2n),
.container.float .tiers:nth-child(3n),
.container.float .quart:nth-child(4n),
.container.float .quart + .trois-quart,
.container.float .trois-quart + .quart,
.container.float .tiers + .deux-tiers,
.container.float .deux-tiers + .tiers{
	margin-right: 0px !important;
}
.container.float .demi:nth-child(2n+1),
.container.float .tiers:nth-child(3n+1),
.container.float .quart:nth-child(4n+1){
	clear: both;
}
hr.clear{
	height: 1px;
	display: block;
	margin: 0;
	padding: 0;
	clear: both;
	width: 100%;
	border: none;
	background: none;
}
/* Padding and margin */
.padding_right{ padding-right: calc(var(--main_column)/12); }
.padding_left{ padding-left: calc(var(--main_column)/12); }
.margin_right{ margin-right: calc(var(--main_column)/12); }
.margin_left{ margin-left: calc(var(--main_column)/12); }


/* = Typo
----------------------------------------------- */
body{
    color: var(--main_black);
    font-family: "aestetico",Helvetica,Arial,sans-serif;
    font-size: 16px;
  overflow-x: hidden;
}
p{
    line-height: 1.6em;
    margin-bottom: 1.4em;
}
h1,
h2{
	font-weight: 200;
	text-transform: uppercase;
	font-size: 54px;
	margin-bottom: 30px;
}
p.chapeau,
#bandeau_hp .inside_bandeau p{
	font-size: 18px;
	font-weight: 200;
	letter-spacing: 5px;
}
.text h3{
  font-weight: bold;
  text-transform: uppercase;
  margin-bottom: 5px;
}
.text p ~  h2,
.text ul ~ h2,
.text ol ~ h2{
	margin-top: 45px;
}
.text li{
    line-height: 1.6em;
    margin-bottom: 0px;
    position: relative;
    padding-left: 20px;
}
.text ul,
.text ol{
	margin-bottom: 1.2em;
}
.text p ~ ul,
.text p ~ ol{
	margin-top: -1.2em;
}
.text ul li:before{
	content: "";
	display: block;
	width: 8px;
	height: 8px;
	background-color: var(--main_black);
	border-radius: 50%;
	position: absolute;
	top: 8px;
	left: 5px;
}
.text ol{
  counter-reset: repas;
}
.text ol li{
  counter-increment: repas;
}
.text ol li:before{
	content: counter(repas);
	font-weight: bold;
	display: block;
	position: absolute;
	top: 1px;
	left: 5px;
}
.text p.wp-caption-text{
	margin-top: 5px;
	font-style: italic;
	line-height: 1.2em;
	font-size: 14px;
	color: #646464;
	margin-bottom: 60px;
	text-align: left;
}
.text p a{
	text-decoration: underline;
	color: var(--main_color);
}
.text p a:hover{
	background: var(--main_color);
	color: #fff;
	text-decoration: none;
}


/* = Form
----------------------------------------------- */
.btn,
input[type=submit]{
    display: inline-block;
	padding: 18px 30px 15px;
	text-transform: uppercase;
	font-weight:  700;
	font-size: 15px;
	cursor: pointer;
	border-radius: 0;
	-webkit-appearance: none;
    transition: all 0.4s ease;
    border: none;
    margin: auto;
    text-align: center;
	background-color: var(--main_black);
	color: #fff;
}
.btn .icon{
	display: inline-block;
	margin-top: -4px;
	width: 24px;
	height: 24px;
	margin-right: 3px;
	vertical-align: middle;
	fill: #fff;
}
.btn:hover{
	background-color: var(--main_color);
}
.btn.orange,
input[type=submit]{
	background-color: var(--main_color);
	color: #fff;
}
.btn.orange:hover,
input[type=submit]:hover{
	background-color: var(--main_black);
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="password"],
input[type="date"],
input[type="search"],
input[type="number"],
textarea{
	display: block;
	background: var(--light_grey);
	border: 2px solid var(--light_grey);
	color: var(--main_black);
	padding: 13px 13px 14px 13px;
	width: 100%;
    font-family: "aestetico",Helvetica,Arial,sans-serif;
	font-size: 14px;
	border-radius: none;
	-webkit-appearance: none;
	height: inherit;
    transition: all 0.4s ease;
}
textarea{
	resize: vertical;
}
input[type="text"]:hover,
textarea:hover,
input[type="tel"]:hover,
input[type="password"]:hover,
input[type="email"]:hover,
input[type="date"]:hover,
input[type="search"]:hover,
input[type="number"]:hover{
	border: 2px solid var(--main_black);
}
input[type="text"]:focus,
input[type="email"]:focus,
textarea:focus,
input[type="tel"]:focus,
input[type="password"]:focus,
input[type="date"]:focus,
input[type="search"]:focus,
input[type="number"]:focus{
	border: 2px solid var(--main_color);
}

/* Contact form 7 */
form.wpcf7-form{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: flex-start;
	position: relative;
}
.wpcf7-form-control-wrap{
	display: block;
	margin-bottom: 10px;
	width: 100%;
}
.wpcf7-form-control-wrap.Nom,
.wpcf7-form-control-wrap.Prenom,
.wpcf7-form-control-wrap.Telephone,
.wpcf7-form-control-wrap.Email{
	width: calc(calc(100%/2) - 5px);
}
.wpcf7-form-control-wrap.quizz{
	display: inline-block;
	width: auto;
}
.wpcf7-form-control-wrap.quizz label{
	display: flex;
	justify-content: flex-start;
	align-items: center;
}
.wpcf7-form-control-wrap.quizz label input[type="text"]{
	width: 70px;
	margin-left: 5px;
}
body .wpcf7 form.invalid .wpcf7-response-output,
body .wpcf7 form.unaccepted .wpcf7-response-output{
	margin: 20px 0 0 0;
	padding: 10px;
	width: 100%;
}
div.wpcf7 .ajax-loader{
	position: absolute;
	bottom: 0;
	right: 0;
}
form.wpcf7-form input[type=submit]{
	background-color: var(--main_black);
	width: calc(calc(100%/2) - 5px);
	align-self: flex-end;
}
form.wpcf7-form input[type=submit]:hover{
	background-color: var(--main_color);
}

.wpcf7-form-control-wrap.capital-quiz{
	display: inline-block;
	width: auto;
}
.wpcf7-form-control-wrap.capital-quiz label{
	display: flex;
	justify-content: flex-start;
	align-items: center;
}
.wpcf7-form-control-wrap.capital-quiz label input[type="text"]{
	width: 70px;
	margin-left: 5px;
}
#footer input{
	margin-bottom: 5px;
}


/* = Header
----------------------------------------------- */
#header{
	position: fixed;
	width: 100%;
	z-index: 50;
	background-color: #fff;
	top: 0;
	left: 0;
	padding: 13px 0 18px 0;
	box-shadow: 0 0 50px rgba(0, 0, 0, 0.10);
}
.admin-bar #header{
	top: 32px;
}
#menu_mobile > ul.menu > li{
	display: inline-block;
	margin-left: 30px;
	position: relative;
}
#menu_mobile > ul.menu > li > a{
	text-transform: uppercase;
	font-size: 14px;
	font-weight: 700;
}
#menu_mobile > ul > li.current-menu-item > a,
#menu_mobile > ul > li.current-post-ancestor > a,
#menu_mobile > ul > li.current-menu-parent > a,
#menu_mobile > ul > li.current-category-ancestor > a,
#menu_mobile > ul > li.current-menu-ancestor > a,
#menu_mobile > ul > li.current-page-ancestor > a,
#menu_mobile > ul > li.current-guide-ancestor > a,
#menu_mobile > ul li.current-menu-parent > a{
	color: var(--main_color);
}
#menu_mobile > ul.menu > li > a:hover{
	color: var(--main_color);
}
#menu_mobile > ul.menu > li > ul.sub-menu{
	display: none;
	background-color: var(--light_grey);
	padding: 20px 10px 10px 10px;
	position: absolute;
	right: 0;
	transition: all 0.4s ease;
}
#menu_mobile > ul.menu > li:hover > ul.sub-menu{
	display: block;
	width: 100px;
}
#menu_mobile > ul.menu > li > ul.sub-menu li{
	margin-bottom: 5px;
	text-align: right;
}
#menu_mobile > ul.menu > li > ul.sub-menu li a{
	font-size: 14px;
	font-weight: 500;
}
#menu_mobile > ul.menu > li > ul.sub-menu li a:hover{
	color: var(--main_color);
}
#menu_mobile > ul.menu > li.bouton a{
	background-color: var(--main_color);
	color: #fff;
	padding: 14px 30px 12px 30px;
	display: inline-block;
}
#menu_mobile > ul.menu > li.bouton a:hover{
	background-color: var(--main_black);
}

/* = Footer
----------------------------------------------- */
#footer{
	background-color: var(--main_black);
	color: #fff;
	padding: 80px 0;
}
#footer h4{
	font-weight: 700;
	font-size: 16px;
	text-transform: uppercase;
	margin-bottom: 20px;
}
#footer .sixieme li{
	line-height: 1.6em;
	font-weight: 400;
}
#footer a:hover{
	color: var(--main_color);
}
.social_list.container{
	justify-content: flex-start;
}
.social_list .social{
	height: 30px;
	width: 30px;
	margin-right: 5px;
}
.social_list .social .icon{
	fill: #fff;
	height: 30px;
	width: 30px;
}
.social_list .social a:hover .icon{
	fill: var(--main_color);
}


/* = HP
----------------------------------------------- */
.bandeau{
	position: relative;
	overflow: hidden;
	padding: 100px 0;
}
.bandeau > img,
.bandeau > video{
	object-fit: cover;
	object-position: center center;
	width: 100%;
	height: 100%;
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
}
#bandeau_hp{
	height: calc(100vh - 264px);
	margin-bottom: 90px;
}
#bandeau_hp h1,
#bandeau_hp h2{
	font-size: 44px;
}
.bandeau .inside_bandeau{
	position: relative;
	z-index: 5;
}
#bandeau_hp{
	padding: 0;
}
#bandeau_hp .inside_bandeau{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	max-width: 1082px;
}
#bandeau_hp .inside_bandeau.centre{
	right: 50%;
	transform: translate(50%, -50%);
	text-align: center;
}
#bandeau_hp .inside_bandeau.gauche{
	left: 50px;
	text-align: left;
}
#bandeau_hp .inside_bandeau.droite{
	right: 50px;
	text-align: right;
}
#bandeau_hp .inside_bandeau.centre_bas{
	right: 50%;
	top: inherit;
	bottom: 50px;
	transform: translateX(50%);
	text-align: center;
}
#bandeau_hp .inside_bandeau.gauche_bas{
	left: 50px;
	top: inherit;
	bottom: 50px;
	transform: translate(0);
	text-align: left;
}
#bandeau_hp .inside_bandeau.droite_bas{
	right: 50px;
	top: inherit;
	bottom: 50px;
	transform: translate(0);
	text-align: right;
}
#bandeau_hp .inside_bandeau .logo{
	max-width: 300px;
	margin-bottom:20px;
	display: inline-block;
}
#bandeau_hp .inside_bandeau.blanc{
	color: #fff;
}
.swiper-button-next::after,
.swiper-button-prev::after{
	display: none;
}
.swiper-button-next,
.swiper-container-rtl .swiper-button-prev{
	width: 40px;
	height: 40px;
	background-repeat: no-repeat;
	background-image: url(images/arrow-right-s-line.svg);
	background-size: 40px 40px;
}
.swiper-button-prev,
.swiper-container-rtl .swiper-button-next{
	width: 40px;
	height: 40px;
	background-repeat: no-repeat;
	background-image: url(images/arrow-left-s-line.svg);
	background-size: 40px 40px;
}
.icones_reassurance{
	margin-bottom: 80px;
	justify-content: center;
}
.icone_reassurance{
	text-align: center;
}
.icone_reassurance .icon{
	max-width: 120px;
	display: inline-block;
	margin-bottom: 10px;
}
.icone_reassurance p{
	text-transform: uppercase;
	font-weight: 700;
	font-size: 16px;
	line-height: 1.2em;
}
#introduction{
	margin-bottom: 80px;
}
#cabanes{
	margin-bottom: 80px;
	color: #fff;
}
#cabanes .inside_bandeau{
	display: flex;
	justify-content: flex-end;
}
#paillote .gallery{
	margin-top: var(--gutter);
	margin-bottom: var(--gutter);
}
#paillote .gallery img{
	height: 300px;
	display: block;
	width: 100%;
	object-fit: cover;
	object-position: center center;
}
#bandeau-contact{
	background-color: #ADB9B7;
	height: 712px;
	position: relative;
	display: flex;
	align-items: center;
}
#bandeau-contact .carte{
	position: absolute;
	height: 100%;
	width: auto;
	right: 0;
	top: 0;
	z-index: 1;
}
#bandeau-contact .demi{
	position: relative;
	z-index: 5;
}
#intagram{
	padding: 80px 0;
}
#intagram h2{
	text-align: center;
}
#activites{
	background-color: var(--main_black);
	padding: 80px 0;
	text-align: center;
	color: #fff;
}


/* = Cabanes
----------------------------------------------- */
#content.cabanes #bandeau{
	position: relative;
	padding: 140px 0 290px 0;
}
#content.cabanes #bandeau:after{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	background-color: rgba(22, 49, 85, 0.6);
	width: 100%;
	height: 100%;
	z-index: 5;
}
#content.cabanes #bandeau > img{
	object-fit: cover;
	object-position: center center;
	width: 100%;
	height: 100%;
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
}
#content.cabanes #bandeau h1{
	position: relative;
	z-index: 10;
	text-align: center;
	color: #fff;
	margin: 0;
}
#content.cabanes #introduction{
	margin-top: -188px;
	position: relative;
	z-index: 10;
}
#content.cabanes #introduction .text{
	padding-top: 300px;
}
#amenagements{
	margin-bottom: 80px;
}
p.amenagement{
	position: relative;
	padding-left: 30px;
	margin-bottom: 15px;
}
p.amenagement .icon{
	display: block;
	width: 24px;
	height: 24px;
	fill: var(--green);
	position: absolute;
	top: 0;
	left: 0;
}
#experiences{
	background-color: var(--light_grey);
	padding: 80px 0;
}
 .sur_titre{
	font-style: italic;
	font-size: 16px;
	margin-bottom: 0;
}
#experiences .text{
	padding: 20px;
	background-color: #fff;
}
#experiences .text .btn{
	width: 100%;
}
.grid-item{
	margin-bottom: 20px;
}


/* = Contact
----------------------------------------------- */
#content.contact #bandeau{
	position: relative;
	padding: 140px 0 110px 0;
}
#content.contact #bandeau:after{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	background-color: rgba(22, 49, 85, 0.6);
	width: 100%;
	height: 100%;
	z-index: 5;
}
#content.contact #bandeau > img{
	object-fit: cover;
	object-position: center center;
	width: 100%;
	height: 100%;
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
}
#content.contact #bandeau h1{
	position: relative;
	z-index: 10;
	text-align: center;
	color: #fff;
	margin: 0;
}
.contact_inside iframe{
	width: 100%;
	display: block;
	height: 500px;
	margin-bottom: 30px;
}
.contact_inside p.telephone .icon,
p.icon_inside svg{
	display: inline-block;
	vertical-align: middle;
	margin-top: -3px;
	margin-right: 2px;
	width: 24px;
	height: 24px;
	fill: var(--main_black);
}
.inside_comment_venir{
	padding: 20px;
	background-color: var(--light_grey);
	margin-bottom: 8px;
	margin-top: -50px;
	position: relative;
	z-index: 10;
}
.inside_comment_venir h2{
	text-transform: uppercase;
	font-weight: 700;
	font-size: 16px;
	margin-bottom: 20px;
}
.inside_comment_venir .moyen{
	padding-left: 30px;
	position: relative;
}
.inside_comment_venir .icon{
	position: absolute;
	top: 0;
	left: 0;
	width: 24px;
	height: 24px;
	fill: var(--main_black);
}
.inside_comment_venir h3{
	text-transform: uppercase;
	font-weight: 700;
	font-size: 16px;
	margin-bottom: 0px;
	line-height: 1.6em;
}
.inside_comment_venir hr{
	display: block;
	border: none;
	height: 2px;
	background-color: #fff;
	margin: 0 0 30px 0;
	padding: 0;
}
.aside .btn{
	width: 100%;
}
#lanceur{
	margin: 80px 0;
	padding: 80px 0;
	background-color: var(--light_grey);
}


/* = Guide touristique
----------------------------------------------- */
#content.guide h1{
	margin-top: 90px;
	text-align: center;
	margin-bottom: 10px;
}
nav.menu-guide-container,
nav.menu-guide-anglais-container{
	margin-bottom: 50px;
	text-align: center;
}
nav.menu-guide-container li,
nav.menu-guide-anglais-container li{
	display: inline-block;
	font-size: 18px;
	font-weight: 400;
}
nav.menu-guide-container li:after,
nav.menu-guide-anglais-container li:after{
	content: " - ";
}
nav.menu-guide-container li:last-child:after,
nav.menu-guide-anglais-container li:last-child:after{
	content: "";
}
nav.menu-guide-container li a:hover,
nav.menu-guide-anglais-container li a:hover{
	color: var(--main_color);
}
nav.menu-guide-container li.current-menu-item a,
nav.menu-guide-container li.current-guide-parent a,
nav.menu-guide-anglais-container li.current-menu-item a,
nav.menu-guide-anglais-container li.current-guide-parent a{
	font-weight: 700;
}
article.activite{
	margin-bottom: var(--gutter);
}
article.activite a{
	display: block;
	position: relative;
	overflow: hidden;
}
article.activite a:after{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	background-color: rgba(0, 0, 0, 0.4);
	width: 100%;
	height: 100%;
	z-index: 5;
}
article.activite a .title{
	position: absolute;
	z-index: 10;
	text-transform: uppercase;
	font-size: 16px;
	font-weight: 700;
	margin: 0;
	left: 20px;
	bottom: 20px;
	right: 20px;
	color: #fff;
}
article.activite a img{
	display: block;
}
article.activite a:hover img{
	transform: scale(1.1);
}


/* = Single activité
----------------------------------------------- */
#content.single.activite{
	padding-top: 200px;
}
#content.single.activite nav.menu-guide-container,
#content.single.activite nav.menu-guide-anglais-container{
	position: fixed;
	width: 100vw;
	left: 0;
	top: 117px;
	background-color: var(--main_black);
	color: #fff;
	padding: 15px;
	z-index: 30;
}
.admin-bar #content.single.activite nav.menu-guide-container,
.admin-bar #content.single.activite nav.menu-guide-anglais-container{
	top: 149px;
}
h2.related{
	padding-top: 80px;
}
#content.single.activite #lanceur{
	margin-top: 0;
}
.fiche_pratique h2{
	background-color: var(--light_grey);
	padding: 24px;
	text-transform: uppercase;
	font-weight: 700;
	font-size: 16px;
	margin-bottom: 0;
}
.fiche_pratique iframe{
	width: 100%;
	height: 230px;
}
.fiche_pratique .fiche{
	background-color: var(--light_grey);
	padding: 24px;
	margin-bottom: 8px;
}
.fiche_pratique .fiche hr{
	display: block;
	border: none;
	height: 2px;
	background-color: #fff;
	margin: 20px 0 20px 0;
	padding: 0;
}
.fiche_pratique .fiche p{
	margin-bottom: 0;
}
.fiche_pratique .fiche h3.horaires{
	border-bottom: 2px solid #fff;
	padding-bottom: 5px;
	margin-top: 30px;
	margin-bottom: 3px;
	font-weight: 700;
}


/* = Single page
----------------------------------------------- */
#content.single-page h1{
	margin-top: 50px;
}
#content.single-page.text h2{
	font-size: 30px;
}
#content.single-page .inside{
	max-width: 780px;
}



/* #Media Queries
================================================== */
 
/* Smaller than standard 960 (devices and browsers) */
@media only screen and (max-width: 1698px ) {
	.center{
		width: 100%;
		padding-right: 30px;
		padding-left: 30px;
	}
}
@media only screen and (max-width: 1350px ) {
	#bandeau-contact{
		height: 520px;
	}
}
@media only screen and (max-width: 1260px ) {
	h1, h2{
		font-size: 40px;
		margin-bottom: 20px;
	}
	.padding_right{
		padding-right: 0;
	}
	.padding_left{
		padding-left: 0;
	}
	.margin_left{
		margin-left: 0;
	}
	.margin_right{
		margin-right: 0;
	}
	#paillote .gallery img{
		height: 200px;
	}
	#bandeau-contact .demi{
		margin-left: 30px;
	}
	#content.cabanes #introduction .text {
	    padding-top: 210px;
	}
}
@media only screen and (max-width: 1100px ) {
	#bandeau_hp .inside_bandeau{
		width: 90%;
	}
	.sixieme{
		width: calc(25% - calc(var(--gutter)*3/4) );
	}
	#bandeau-contact{
		height: 460px;
	}
	#content.cabanes #introduction{
		margin-top: -78px;
	}
	#content.cabanes #introduction .text {
	    padding-top: 100px;
	}
	#content.cabanes #bandeau{
	    padding: 140px 0 150px 0;
	}
	h1, h2{
		font-size: 30px;
		margin-bottom: 10px;
	}
	#introduction,
	#amenagements{
	    margin-bottom: 20px;
	}
	#experiences{
		padding: 50px 0 30px 0;
	}
	#footer{
		padding: 30px 0;
	}
	#footer .quart.logo{
		width: 100%;
		margin-bottom: 50px;
		text-align: center;
	}
	#footer .quart.logo img{
		width: 300px;
	}
	#footer .quart,
	#footer .sixieme{
		width: calc(25% - calc(var(--gutter)*3/4) );
	}
	.tiers.activite{
		width: calc(50% - calc(var(--gutter)*1/2) );
	}
	.container.float .tiers.activite:nth-child(3n){
		margin-right: var(--gutter) !important;
	}
	.container.float .tiers.activite:nth-child(2n){
		margin-right: 0px !important;
	}
	.container.float .tiers.activite:nth-child(2n+1){
		clear: both;
	}
	#content.guide h1{
		margin-top: 50px;
	}
}

 
/* All Mobile Sizes (devices and browser) */
@media only screen and (max-width: 767px) {
	/* réserver */
	#btn_reservation_mobile{
		align-items: center;
		position: fixed;
		right: 0;
		bottom: 0;
		height: 80px;
		width: calc(100% - 80px);
		border-top: 2px solid #fff;
		background: var(--main_color);
		z-index: 100;
		display: flex;
		color: #fff;
	}
	#btn_reservation_mobile span{
		margin: auto;
		text-transform: uppercase;
		font-weight: 700;
		font-size: 18px;
	}
	/* Icon burger menu */
	.show_menu_mobile{
		align-items: center;
		position: fixed;
		left: 0;
		bottom: 0;
		height: 80px;
		width: 80px;
		border-top: 2px solid #fff;
		background: var(--main_black);
		z-index: 100;
		display: flex;
	}
	.show_menu_mobile .icon{
		margin: auto;
		display: block;
		fill: #fff;
		width: 45px;
	}
	.show_menu_mobile .icon .lines{
		height: 4px;
		background: #fff;
		width: 100%;
		position: relative;
		display: block;
	}
	.show_menu_mobile .icon .lines:after,
	.show_menu_mobile .icon .lines:before{
		position: absolute;
		height: 4px;
		background: #fff;
		width: 100%;
		content: "";
		display: block;
		transform-origin: center center;
	}
	.show_menu_mobile .icon .lines:after{
		bottom: 0;
		margin-bottom: -10px;
	}
	.show_menu_mobile .icon .lines:before{
		top: 0;
		margin-top: -10px;
	}
	.show_menu_mobile .icon.close .lines{
		background: var(--main_black);
	}
	.show_menu_mobile .icon.close .lines:after{
		transform: rotate(-45deg);
		margin-bottom: 0px;
		margin-top: 30px;
	}
	.show_menu_mobile .icon.close .lines:before{
		transform: rotate(45deg);
		margin-top: 0px;
		margin-bottom: 30px;
	}

	/* Menu */
	header#header nav#menu_mobile{
		display: flex;
		align-items: center;
		width: 100%;
		float: none;
		position: fixed;
		left: 0;
	    top: 0;
	    bottom: 0;
	    right: 0;
	    background: #fff;
		padding: 0;
		font-size: 16px;
		margin-left: -100%;
		z-index: 100;
	}
	header#header nav#menu_mobile.show{
    	margin-left: -0;
	}
	header#header nav#menu_mobile ul{
		margin: auto;
		width: 100%;
	}
	header#header nav#menu_mobile ul li{
		display: block;
		text-align: center;
		padding: 0;
		margin: 20px 0;
		float: none;
	}
	header#header nav#menu_mobile ul li.bouton{
		display: none;
	}
	header#header nav#menu_mobile ul li a{
		color: var(--main_black);
		font-size: 20px;
	}
	#menu_mobile > ul.menu > li > ul.sub-menu{
		position: relative;
		display: block;
		width: 100%;
		padding-top: 1px;
		margin-top: 5px;
		padding-bottom: 1px; 
	}
	/* Header */
	header#header{
		position: relative;
		height: auto;
		display: block;
		z-index: 50;
		padding: 0;
	}
	.admin-bar #header{
		top: 0;
	}
	#logo{
		display: none;
	}
	/* Grille */
	.center {
	    padding-right: 15px;
	    padding-left: 15px;
	}
	.demi,
	.tiers,
	.quart,
	.trois-quart,
	.deux-tiers,
	.cinq_douzieme,
	.sept_douzieme,
	.tiers.activite{
		float: none;
		width: 100%;
		margin-right: 0px;
	}
	#content{
		padding-top: 0;
	}
	.inside_comment_venir{
		margin-top: 0;
	}
	#lanceur {
	    margin: 30px 0;
	    padding: 30px 0;
	}
	.icones_reassurance{
		margin-bottom: 30px;
	}
	.sixieme,
	#footer .quart, #footer .sixieme{
	    width: calc(50% - calc(var(--gutter)*1/2) );
	}
	#footer .quart, #footer .sixieme{
		margin-bottom: 40px;
	}
	footer#footer{
		padding-bottom: 80px;
	}
	#bandeau_hp{
		height: 60vh;
		margin-bottom: 20px; 
	}
	#bandeau_hp .inside_bandeau .logo{
		max-width: 200px;
	}
	#bandeau_hp h1, #bandeau_hp h2{
		font-size: 28px;
	}
	p.chapeau,
	#bandeau_hp .inside_bandeau p {
	    font-size: 16px;
	    letter-spacing: inherit;
	}
	#cabanes{
		margin-bottom: 30px;
	}
	#paillote .demi{
		margin-bottom: 30px;
	}
	#paillote .gallery{
		margin: 0;
	}
	#paillote .gallery img{
		height: inherit;
	}
	#paillote .gallery .quart{
		margin-bottom: 30px;
	}
	#bandeau-contact{
		height: auto;
		flex-direction: column-reverse;
		padding-top: 50px;
	}
	#bandeau-contact > *{
		width: 100%;
	}
	#bandeau-contact .carte{
		position: relative;
		top: inherit;
		right: inherit;
		height: auto;
	}
	#bandeau-contact .demi {
	    padding-left: 15px;
	    padding-right: 15px;
	    margin-left: 0;
	}
	#amenagements .tiers{
		margin-top: 30px;
	}
	#lanceur .demi img{
		margin-top: 30px;
	}
	nav.menu-guide-container li,
	nav.menu-guide-anglais-container li{
		line-height: 1.6em;
	}
	#content.single.activite nav.menu-guide-container,
	#content.single.activite nav.menu-guide-anglais-container{
	    position: relative;
	    width: 100vw;
	    left: 0;
	    top: inherit;
	    margin-bottom: 30px;
	    width: 100%;
	}
	#content.single.activite {
	    padding-top: 0px;
	}
	.fiche_pratique.aside{
		margin-top: 30px;
	}
}

/* Mobile Landscape Size to Tablet Portrait (devices and browsers) */
@media only screen and (min-width: 480px) and (max-width: 767px) {}
 
/* Mobile Portrait Size to Mobile Landscape Size (devices and browsers) */
@media only screen and (max-width: 479px) {}