/*
Theme Name: Le Portage
Description: Theme custom pour Le Portage
Author: Bourrasque
Author URI: http://bourrasque.ca/
Version: 0.1.0
*/

/* *********** RESET CSS ***********************/
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, img, ins, kbd, q, s, samp, small, strike, sub, sup, tt, var, b, u, i, center, dl, dt, dd, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,  figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: top;
	box-sizing: border-box;
	outline: none;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* ************* default wordpress ************** */
.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}

.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

/*img.alignleft,
img.alignright {
	float: none;
	margin: 0;
}*/

img,
video {
	height: auto; /* Make sure images are scaled correctly. */
	max-width: 100%; /* Adhere to container width. */
}

embed,
iframe,
object {
	margin-bottom: 1.5em;
	max-width: 100%;
}

hr {
	background-color: #bbb;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

p:not(:last-child), ul:not(:last-child) {
	margin-bottom: 1em;
}

a {
	text-decoration: none;
}

/* *************** Le Portage ******************** */
:root {
  --main-dark-grey: #242424;
  --main-red: #fe0000;
  --main-dark-red: #760204;
  --main-beige: #cbc4a8;
  --main-dark-blue: #001d35;
  --main-light-blue: #002e51;
}

body {
	font-size: 20px;
	line-height: 1.4em;
	color: #000000;
	font-family: 'Segoe UI';
	background-color: var(--main-beige);
}

h1 {
	font-size: 3em;
	margin-bottom: 1em;
	line-height: 1.1em;
	position: relative;
}

h2 {
	font-size: 3em;
	margin-bottom: 1em;
	line-height: 1.3em;
	position: relative;
}

h3 {
	font-size: 2em;
	margin-bottom: 1em;
	line-height: 1.1em;
}


h4 {
	font-size: 1.75em;
	margin-bottom: 1em;
	line-height: 1.1em;
}

p + h4, ul + h4, ol + h4 {
	margin-top: 1em;
}

p>a:hover {
	text-decoration: underline;
}

i {
	vertical-align: middle;
}

.container {
	margin: 0 auto;
	max-width: min(1600px, 82%)
}

.dark h1, .dark h2, .dark h3, .dark h4, .dark p, .dark div.wpcf7-validation-errors, .dark div.wpcf7-acceptance-missing, .dark a, .dark li, .dark {
	color: #fff;
}

.dark h1, .dark h2, .dark h3, .dark h4 {color: #fff!important;}

div.elementor>.e-flex.e-con-boxed.e-con.e-parent>.e-con-inner {padding-top: 60px; padding-bottom: 60px;}


/* *********** HEADER *************** */
#header {
	text-align: center;
	position: relative;
	display: flex;
	flex-direction: row;
	z-index: 2;
	-webkit-box-shadow: 0px 0px 10px 10px rgba(00,00,00,0.2);
	-moz-box-shadow: 0px 0px 10px 10px rgba(00,00,00,0.2);
	box-shadow: 0px 0px 10px 10px rgba(00,00,00,0.2);
	background-color: var(--main-dark-grey);
}

.header-logo {
}

.header-desktop {
	text-align: center;
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
}

.menu-principal {
	height: 100%;
	margin-bottom: 25px;
}

.menu-principal, .menu-secondaire {
	display: flex;
	flex-direction: row;
	justify-content: center;
}

.menu-principal ul {
	display: flex;
	flex-direction: row;
	justify-content: center;
	height: 100%;
	list-style-type: none; margin: 0; padding: 0;
}

.menu-principal, .menu-principal ul li {
	position: relative;
}

.menu-principal ul li {
	/*display: inline-block;*/
	font-size: 1.4em;
}

.menu-principal ul li a {
	display: block;
	-webkit-transition: all 0.2s ease-in-out; /* Safari */
  	transition: all 0.2s ease-in-out;
}

.menu-principal>div {
	width: 100%;
}

.menu-principal ul.menu>li>a {
	position: relative;
	height: 100%;
	padding: 15px 15px;
	font-weight: 600;
}


.menu-principal ul li:not(:first-child):before {
  display: inline-block;
  vertical-align: middle;
  height: 100%;
  content: '';
  width: 2px;
  background-color: var(--main-red);
  position: absolute;
  left: -1px;
  top: 0;
  z-index: 1;
}

.menu-principal ul.menu>li.current-menu-item>a, .menu-principal ul.menu>li.current-menu-parent>a {
	font-weight: bold;
	color: var(--main-dark-red);
}

.menu-principal ul.menu>li:hover>a{
	background-color: var(--main-dark-red);
	color: #fff;
}

.header-social {text-align: right;}
.menu-secondaire {font-size: 1.2em; padding: 25px 0; text-align: left;}
.menu-secondaire>* {flex: 1 0 40%;}
.menu-secondaire .header-logo {flex: 0 1 20%; }
.header-slogan {font-weight: light;}
.header-fb {margin-top: 2em;}
.header-fb a {display: inline-block; background-image:url('images/fb-icon.png'); background-repeat: no-repeat; width: 63px; height: 63px; transition: all 0.35s;}
.header-fb a:hover {opacity: 0.6;}
.header-meta a:hover {text-decoration: underline;}

/* menu mobile */
.menu-mobile { 
	display: none;
	position: relative; 
	background-color: var(--main-dark-grey);
	width: 100%;
	/*display: flex;*/
	-webkit-flex-direction: row;
	flex-direction: row;
	justify-content: center;
    align-items: center;
}
.menu-mobile-block {
	display: none;
	position: absolute;
	left: 0;
	top: 100%;
	width: 100%;
	background-color: var(--main-dark-grey);
	z-index: 9;
}

.menu-mobile a.link-menu-icon{
	color: #fff;
	font-size: 2.5em;
	padding: 15px;
	display: block;
}

.menu-mobile-block ul {list-style-type: none; margin: 0; padding: 0;}

.menu-mobile>*:not(.menu-mobile-block) {
	flex: 1 1 auto;
	width: 50%;
	text-align: right;
}

.menu-mobile .header-logo {
	max-width: 180px;
	-webkit-box-shadow: none;
	box-shadow: none;
}

.btn-mobile-menu.open a i, .menu-mobile a.link-menu-icon i{
	color: #fff;
}


.link-menu-icon {background-image:url('images/menu-bars.svg'); background-repeat: no-repeat; background-size: contain; width: 80px; height: 80px;}

.menu-mobile-block li a {
	color: #fff;
	display: block;
	font-weight: bold;
	font-size: 1.3em;
	line-height: 1em;
	padding: 15px 0;
}

.menu-mobile-block li:not(:last-child) a {
	border-bottom: 1px solid var(--main-beige);
}

#menu-menu-mobile>li>a{
	padding: 18px;
	font-size: 2.5em;
}

#menu-menu-mobile ul>li>a{
	padding: 10px;
	font-size: 1.9em;
}

#menu-menu-mobile ul {
	position: relative;
}

.menu-mobile-block-btn {
	display: flex;
	flex-direction: row;
	padding: 8px;
}

.header-mobile-link {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	justify-content: flex-end;
	padding-right: 30px;
}

.menu-mobile-block .header-social {margin: 1em 10px; text-align: center;}

/* ********** entete page title ********* */
.single-page-header {padding: 60px 0; text-align: center; background: #4B0000; background: linear-gradient(180deg,rgba(75, 0, 0, 1) 0%, rgba(59, 0, 0, 1) 100%);}
.single-page-header h1 {margin: 0; font-size: 3.5em;}


/* *************** home ******************* */



/* form */
.wpcf7-form {
	width: 100%;
	margin: 0 auto;
}

.form-row {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	width: 100%;
}

.form-row>p {width: 100%;}

.form-row:not(:last-child) {
	margin-bottom: 12px;
}

.form-col {
	flex: 1 1 50%;
}

.form-col + .form-col {
	margin-left: 15px;
}

.wpcf7-form .wpcf7-form-control-wrap {width: 100%; display: block;}

.form-col>div {
	background-color: #ffffff;
	position: relative;
}

.wpcf7-form label {margin-bottom: 8px; display: inline-block;}

.wpcf7-form input[type=text], .wpcf7-form input[type=tel], .wpcf7-form input[type=url], .wpcf7-form input[type=email], .wpcf7-form textarea {
	padding: 18px 15px 15px 18px;
	border: none;
	width: 100%;
	font-size: 0.85em;
	line-height: 1.1em;
	box-sizing: border-box;
	-webkit-appearance: none;
  -moz-appearance: none;
  border-radius: 0;
  outline: none;
}

::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  font-style: italic;
  color: #253846;
  opacity: 1; /* Firefox */
}
:-ms-input-placeholder { /* Internet Explorer 10-11 */
  font-style: italic;
  color: #253846;
}
::-ms-input-placeholder { /* Microsoft Edge */
  font-style: italic;
  color: #253846;
}

button[type=submit] {
	margin: 0 auto;
	text-align: center;
	text-transform: uppercase;
	width: 100%;
	font-weight: 400;
	color: #fff;
	font-size: 1em;
	background-color: #004877;
	border: none;
	box-sizing: border-box;
	cursor: pointer;
	-webkit-appearance: none;
  -moz-appearance: none;
	transition: all 0.25s;
}

.col-submit {
	text-align: center;
	margin-top: 10px;
}

div.wpcf7-response-output {
	font-weight: bold;
	color: #000;
}

.dark div.wpcf7-response-output {
	color: #fff;
}

span.wpcf7-not-valid-tip {
	text-align: center;
	border-top: 1px solid #ccc;
	font-size: 0.8em;
}

/* ************** single page **************** */
.single-banner {margin-top: 60px; margin-bottom: 60px; text-align: center;}
.single-banner img {box-shadow: 5px 5px 10px 3px rgba(0,0,0,0.7);}
.page-content {padding-bottom: 60px;}

/* ************ single chambre ************* */
.chambre-meta {display: flex; justify-content: center; flex-direction: row; gap: 50px; margin-bottom: 35px;}
.chambre-meta-bloc {display: flex; flex-direction: column; background-color: var(--main-dark-blue); padding: 20px; font-size: 1.4em; line-height: 1.2em; font-weight: bold; align-items: center;}
.icon-meta-chambre {color: #fff; max-width: 60px; margin-bottom: 10px; filter: invert(1);}

/* *************** chambres ***************** */

/* slier chambres */
.tns-slider {display: flex;}
.tns-item {flex: 1 1 100%;}
.home-list-chambres-slider-wrapper {position: relative;}
.list-chambres-slider-nav .prev, .list-chambres-slider-nav .next { background-repeat: no-repeat; background-size: contain; width: 80px; height: 89px; top: 50%; transform: translateY(-50%); position: absolute; cursor: pointer; transition: all 0.35s;}
.list-chambres-slider-nav .prev[aria-disabled="true"], .list-chambres-slider-nav .next[aria-disabled="true"]  {opacity: 0.5; cursor: not-allowed;}
.list-chambres-slider-nav .prev { left: -6%!important; background-image:url('images/icon-arrow-left.png');}
.list-chambres-slider-nav .next { right: -6%!important; background-image:url('images/icon-arrow-right.png');}

.list-chambre-infos {padding: 20px;}
.list-chambre-infos h4 {margin-bottom: 15px;}
.list-chambre-infos .btn-portage {background-color: #890205; font-size: 2em; line-height: 1.1em; padding: 20px 25px; text-align: center; display: inline-block; margin-top: 25px; transition: all 0.35s;}
.list-chambre-infos .btn-portage:hover {opacity: 0.6;}
.list-chambres-slider-bloc-img img {width: 100%;}

.activites-bloc {}
.activites-bloc a {display: flex; flex-direction: column; height:100%; }
.activites-bloc .list-chambre-infos {background-color: var(--main-dark-grey); flex: 1 1 auto; display: flex; flex-direction: column;}
.activites-bloc .list-chambres-slider-bloc-btn {margin-top: auto;}

/* flex list chambre */
.list-chambres-slider-wrapper {display: flex; gap: 50px; flex-direction: row; flex-wrap: wrap;}
.list-chambres-slider-wrapper>* {flex: 0 0 calc(100% / 3 - 50px);}

/* ************** footer *************** */
#footer {background-color: var(--main-dark-grey); padding: 65px 0;}

.footer-img { height: 540px; background-position: bottom center; background-repeat: no-repeat; background-size: cover; box-shadow: 0 15px 15px rgba(0,0,0,0.7); position: relative; z-index: 1;}

.footer-content { display: flex; flex-direction: row; justify-content: space-between; padding-bottom: 50px; font-size: 1.2em; position: relative;}
.footer-content a:hover { text-decoration: underline;}
.footer-content ul.menu { list-style-type: none; margin: 0; padding: 0;}

.footer-content-bottom {align-items: center; justify-content: left;}
.footer-content .header-fb { flex: 0 0 20%; text-align: center;}
.footer-content .footer-slogan { flex: 0 0 60%; font-size: 1.6em; font-weight: 300; line-height: 1.1em;}

.copyright {text-align: center;	padding: 15px;}

/* ********************* galerie ************************* */
.rl-basicgrid-gallery .rl-gallery-caption {position: static!important; flex: 1 1 auto; background-color: var(--main-dark-blue)!important;}
.rl-basicgrid-gallery.rl-gallery  .rl-gallery-link {display: flex; flex-direction: column; height: 100%;}
.galerie-btn {margin-top: 10px;}
.galerie-btn a {fill: var(--main-dark-red); color: var(--main-dark-red)!important; background-color: var(--main-dark-blue)!important;}

/* pdf viewer */
.dark .df-ui-download {color: #777;}


/* *************** mews widget ****************** */
.footer-mews-widget-wrapper {background-color: #fff; border-top: 4px solid #890205; border-bottom: 4px solid #890205; box-shadow: 0 0 1px 1px #fff; padding: 15px 0; margin: 1px 0; position: fixed; bottom: 0; width: 100%; z-index: 10;}
.footer-mews-widget-wrapper h2 {color: var(--main-dark-red); font-weight: bold; font-size: 2em; line-height: 1.1em; margin-bottom: 10px; text-align: center; padding: 0 150px;}
.footer-mews-widget-wrapper label {color: var(--main-dark-red);}
.footer-mews-widget-wrapper input {background-color: transparent; outline: none; border: none;}
.footer-mews-logo {/*margin-top: -40px;*/ max-width: 80px;}
.footer-mews-widget-wrapper form {display: flex; flex-direction: row; justify-content: space-between; align-items: center;}
.footer-mews-widget-wrapper form>*:not(:last-child) {margin-right: 5px;}
.mews-input-nb {display: flex; flex-direction: column; align-items: center; }
.mews-input-nb label {margin-bottom: 5px; font-size: 0.8em;}
.mews-input-nb input {border-bottom: 1px solid var(--main-dark-red);}
.mews-input-date {display: flex; flex-direction: row; align-items:center; }
.mews-input-date label {margin-right: 10px; font-size: 1.6em; line-height: 1.1em;}
.mews-input-date input {font-size: 1.2em; border-bottom: 2px solid var(--main-dark-red);}
.mews-submit {font-size: 1.5em!important; padding: 10px 15px!important; cursor: pointer; color: #fff; background-color: var(--main-dark-red)!important; transition: all 0.35s;}
.mews-submit:hover {opacity: 0.6;}