html { margin: 0px; overflow-x: hidden; }
body { margin: 0px; overflow-x: hidden;}

/* DECO */
#decoDroite {
	position: fixed;
	top: 60px;
	right: 0px;
	width: 10px;
	background-color: black;
	height: calc(100% - 60px);
	z-index: 10001;
	transition-duration: 1s;
}

#decoGauche {
	position: fixed;
	top: 60px;
	left: 0px;
	width: 10vw;
	max-width: 130px;
	background-image: url("../svg/deco-gauche.svg");
	background-size: 160%;
	background-position: top right;
	background-repeat: repeat-y;
	height: calc(100% - 60px);
	z-index: 10000;
	transition-duration: 1s;
}

.up {
	z-index: 10000;
}

/* MOBIL */
.mobilSupr { display: inline-block !important; }
.justMobil { display: none !important; }
.tableMobil { display: none !important; }

/* WIDTH */

.contenu {
	position: relative;
	display: inline-block;
	background-color: #fff;
	background-size: cover;
	background-position: center;
	vertical-align: middle;
  word-spacing: 0em;
	overflow: hidden;
}

.visible { overflow: visible; }

/* PAGE CONTENU */

.width-full {
	display: table;
	position: relative;
	width: 100vw;
	height: auto;
	min-width: 100vw;
	background-color: rgba(0,0,0,0);
	table-layout: fixed;
	word-spacing: -4em;
	margin: 0 auto;
	overflow: visible;
	vertical-align: middle;
}

.width-max {
	display: table;
	position: relative;
	width: 80%;
	margin: 0 auto;
	table-layout: fixed;
	word-spacing: -4em;
	overflow: visible;
	padding: 20px 0;
}

/* MARGES */
.margin-top { border-top: 50px solid rgba(0, 0, 0, 0); }
.margin-bottom { border-bottom: 50px solid rgba(0, 0, 0, 0); }

.margin-left {
	padding-left: 60px !important;
}

.margin-right {
	padding-right: 60px !important;
}

.padding-top { padding-top: 50px; }
.padding-top-mobil { padding-top: 0px; }
.padding-bottom { padding-bottom: 50px; }
.padding-left { padding-left: 80px; }
.padding-right { margin-right: 6%; }
@media screen and (max-width: 1000px) { .padding-top, .padding-top { padding-top: 30px; } }

.no-padding { padding: 0 !important; }
.no-margin { margin: 0 !important; }
.no-background-mobil { background-image: default; }

/* COLOR // BACKGROUND */
.color-background-white { background-color: rgba(255,255,255,1); }
.color-background-grey { background-color: rgba(0,0,0,0.1); }
.color-background-black { background-color: #3e3f3f; }
.color-background-blue { background-color: #B1A586; }

/* BACKGROUND // VAGUE */
.image-ronde { border: 10px solid white; border-radius: 50%; overflow: hidden; margin: 0 0 30px 0; width: 300px; height: 300px; margin: 0 auto 40px auto; transition-duration: 1s; } .image-ronde img { padding: 0; margin: 0; width: 100%;  }
.image-ronde:hover { border: 10px solid rgba(115,168,139,1); border-radius: 50%; overflow: hidden; margin: 0 0 30px 0; width: 300px; height: 300px; margin: 0 auto 40px auto; }
.image-back { background-size: cover; background-position: center; float: left; width: 100%; height: 80vh; }

/* COLOR // TYPO */
.color-typo-white { color: rgba(255,255,255,1) !important; }
.color-typo-grey { color: rgba(0,0,0,0.5); }
.color-typo-black { color: rgba(63,63,63,1); }
.color-typo-blue { color: #B1A586; }

/* BORDER */
.border-radius { border-radius: 0px; overflow: hidden;}

/* BOX // WIDTH */
.entier {width: calc((100% / 1) - 60px); padding: 10px 30px; }
.entier-full {width: calc((100% / 1) - 0px); padding: 10px 0px; }
.demi {width: calc((100% / 2) - 60px ); padding: 0px 30px; }
.demi-full {width: calc((100% / 2) - 0px ); padding: 0px 0px; }
.tier {width: calc((100% / 3) - 60px); padding: 0px 30px; }
.tier-full {width: calc((100% / 3) - 0px); padding: 0px 0px; }
.deuxtier {width: calc(2*(100% / 3) - 60px); padding: 0px 30px; }
.deuxtier-full {width: calc(2*(100% / 3) - 0px); padding: 0px 0px; }
.quart {width: calc((100% / 4) - 120px); padding: 0px 60px; }
.quart-full {width: calc((100% / 4) - 0px); padding: 0px 0px; }
.troisquart {width: calc(3*(100% / 4) - 120px); padding: 0px 60px; }
.troisquart-full {width: calc(3*(100% / 4) - 0px); padding: 0px 0px; }
.cinquieme {width: calc((100% / 5) - 60px); padding: 0px 30px; }
.sixieme {width: calc((100% / 6) - 60px); padding: 0px 30px; }
.huitieme {width: calc((100% / 8) - 60px); padding: 0px 30px; }

/* FONT // FAMILY */

.font-light { font-family: 'light', sans-serif; }
.font-regular { font-family: 'regular', sans-serif; }
.font-bold, b { font-family: 'bold', sans-serif; }
.serif-light { font-family: 'lightSerif', serif; }
.serif-regular { font-family: 'regularSerif', serif; }


.font-cap { text-transform: uppercase; }
.font-underline { text-decoration: underline; }
.font-italique { font-style: italic; }

.para-left { text-align: left !important; }
.para-justify { text-align: justify; }
.para-center, .center { text-align: center; }
.para-right { text-align: right; }

.para-center-mobil { text-align: default; }
@media screen and (max-width: 1000px) { .para-center-mobil { text-align: center !important; } }

.no-background-mobil { background: default; }
@media screen and (max-width: 1000px) {	.no-background-mobil { background: none !important; } }

.size-mini { font-size: 10px !important; line-height: 16px !important; }
.size-petit { font-size: 12px !important; line-height: 14px !important; }
.size-normal { font-size: 15px !important; line-height: 26px !important; }
.size-grand { font-size: 20px !important; line-height: 30px !important; }
.size-big { font-size: 30px !important; line-height: 40px !important; }
.size-ultra { font-size: 80px !important; line-height: 70px !important; }

.letter-spacing-1 { letter-spacing: 1px; }
.letter-spacing-2 { letter-spacing: 2px; }
.letter-spacing-4 { letter-spacing: 4px; }

/* ALIGNEMENT */
.vertical-align-top { vertical-align: top; }
.vertical-align-bottom { vertical-align: bottom; }

/* ESPACE VIDE */

.espace-vide-30 { height: 30px; width: 100%; }
.espace-vide-50 { height: 50px; width: 100%; }
.espace-vide-100 { height: 100px; width: 100%; }

/* H */

h1 {

}

h2 {
	font-family: 'regularSerif', serif;
	font-size: 18px;
	line-height: 30px;
	text-transform: uppercase;
	letter-spacing: 10px;
	color: #8c8164;
	padding: 0 0 20px 0;
}

h3 {
	font-family: 'lightSerif', serif;
	font-size: 22px;
	line-height: 30px;
	color: #8c8164;
	letter-spacing: 2px;
	text-transform: uppercase;
	padding: 20px 0 30px 0;
}

h4, p.h4 {
	font-family: 'light', sans-serif;
	font-size: 24px;
	line-height: 36px;
	color: rgba(0,0,0,0.65);
	padding-top: 20px;
	padding-bottom: 20px;
}

p {
	font-family: 'light', sans-serif;
	font-size: 16px;
	line-height: 26px;
	color: rgba(0,0,0,0.80);
	padding: 0 0 10px 0;
}

p.legende-carte {
	font-size: 20px;
	line-height: 36px;
	font-family: 'light';
}

a { text-decoration: none; color: inherit; cursor: pointer;}

.bouton {
	display: inline-block;
	background-color: white;
	font-size: 14px;
	font-family: "bold", sans-serif;
	text-transform: uppercase;
	padding: 8px;
	text-align: center;
	margin: 30px 0 10px 0;
	color: #333;
	letter-spacing: 4px;
	transition-duration: 0.4s;
	box-shadow: inset 0 0 0 2px #333;
	padding: 10px 20px;
	cursor: pointer;
}

.bouton:hover {
	box-shadow: inset 0 0 0 2px #8c8164;
}

ul.paragraphe {
	font-family: 'light', sans-serif;
	font-size: 15px;
	line-height: 26px;
}

ul.paragraphe li {
	padding: 5px 0;
	list-style: circle inside;
}

/* IMAGE */

.image-fond {
	background-size: cover;
}

.image-legende {
	position: absolute;
	top: 0px;
	padding: 15px 20px 15px 20px;
	background-color: #333;
	color: #E3E1CD;
	font-family: 'light', sans-serif;
	text-transform: uppercase;
	font-size: 13px;
	line-height: 22px;
	letter-spacing: 1px;
}

p.hide { display: none; }
p.show { display: inline-block; }

/* VIDEO */

#video-introduction {
	position: relative;
	width: 100vw;
	height: calc( (100vw*9)/18 );
	overflow: hidden;
	background-size: cover;
	background-position: center;
}

#myVideo {
	position: reletive;
	width: 100%;
}

#video-introduction #introduction-legende {
	position: absolute;
	background-color: #333;
	right: 0px;
	top: 10%;
	width: 30vw;
}

#video-introduction #introduction-legende p {
	display: block;
	color: #E3E1CD;
	font-family: 'light', sans-serif;
	text-transform: uppercase;
	font-size: 2vw;
	line-height: 3vw;
	letter-spacing: 1px;
	padding: 15px 20px 15px 20px;
	text-align: right;
}

p.introduction-mobil {
	display: block;
	background-color: #333;
	font-family: 'light', sans-serif;
	text-transform: uppercase;
	font-size: 5vw;
	line-height: 6vw;
	letter-spacing: 1px;
	color: #E3E1CD;
	padding: 2vh 2vw;
	text-align: center;
}

/* LISTE */

img.liste-pictogramme {
	position: absolute;
	top: -50px;
	left: -6px;
	width: 100px;
}

.liste { cursor: pointer; }

.liste img.liste-pictogramme.voiture { content: url('../svg/picto-voiture-beige.svg'); }
.liste img.liste-pictogramme.ville { content: url('../svg/picto-ville-beige.svg'); }
.liste img.liste-pictogramme.bus { content: url('../svg/picto-bus-beige.svg'); }
.liste img.liste-pictogramme.sac { content: url('../svg/picto-sac-beige.svg'); }
.liste img.liste-pictogramme.pied { content: url('../svg/picto-pied-beige.svg'); }
.liste.active img.liste-pictogramme.voiture { content: url('../svg/picto-voiture-noir.svg'); }
.liste.active img.liste-pictogramme.ville { content: url('../svg/picto-ville-noir.svg'); }
.liste.active img.liste-pictogramme.bus { content: url('../svg/picto-bus-noir.svg'); }
.liste.active img.liste-pictogramme.sac { content: url('../svg/picto-sac-noir.svg'); }
.liste.active img.liste-pictogramme.pied { content: url('../svg/picto-pied-noir.svg'); }

p.trait-vertical {
	display: block;
	width: 20%;
	height: 2px;
	background-color: #8c8164;
	padding: 0;
	margin: 10px 0 20px 0;
}

p.trait-horizontal {
	display: block;
	width: 2px;
	height: 40px;
	background-color: #8c8164;
	padding: 0;
	margin: 10px 0 20px 0;
}

p.liste-chiffre {
	font-family: 'lightSerif', serif;
	color: #8c8164;
	font-size: 140px;
	line-height: 160px;
	letter-spacing: -2px;
}

p.liste-titre {
	font-family: 'lightSerif', serif;
	color: #8c8164;
	font-size: 16px;
	line-height: 22px;
	letter-spacing: 6px;
	text-transform: uppercase;
}

p.liste-texte {
	font-family: 'regular', sans-serif;
	font-size: 16px;
	line-height: 26px;
	letter-spacing: 2px;
	text-transform: uppercase;
}

/* LISTE DOT */

ul.liste-dot-image {
	display: table;
}

ul.liste-dot-image.centre { margin: 80px auto 0 auto; }

ul.liste-dot-image li {
	display: inline-block;
	width: 30px;
	height: 2px;
	margin: 0 4px;
	cursor: pointer;
	background-color: #333;
}

ul.liste-dot-image li.active { background-color: #8c8164;}

/* CONTENU SWIPE */

.swipe {
	overflow: visible;
}

.swipe span.flecheDroite {
	content: "";
	display: block;
	width: 60px;
	height: 60px;
	background-image: url("../svg/picto-fleche-droite.svg");
	background-size: 100%;
	position: absolute;
	right: -30px;
	top: calc(50% - 30px);
	z-index: 100000;
	transition-duration: 0.4s;
	transform: rotate(90deg);
	cursor: pointer;
}

.swipe span.flecheDroite:hover { transform: rotate(0deg); }

/* FOOTER */

ul#contact {
	position: relative;
	display: table;
	width: 100%;
}

ul#contact li {
	display: table-cell;
	width: 50%;
}

.carteVisite {
	text-transform: uppercase;
	font-size: 14px;
	line-height: 20px;
	letter-spacing: 1px;
}

.carteVisite sup { font-size: 8px; }

.credits {
	font-size: 11px;
	line-height: 15px;
	text-transform: uppercase;
	padding: 50px 0;
	letter-spacing: 2px;
}

.indications {
	font-size: 8px;
	font-family: 'bold', sans-serif;
	line-height: 11px;
	text-align: justify;
	letter-spacing: 4px;
	text-transform: uppercase;
	padding: 20px 0;
}

/* GALERIE */

.gal {
	cursor: pointer;
	margin: 20px 0;
}

.gal::before {
	content: "";
	display: block;
	position: absolute;
	width: 60px;
	height: 60px;
	left: calc(50% - 30px);
	top: calc(150% - 30px);
	background-image: url('../svg/picto-open-galerie.svg');
	background-size: center;
	background-repeat: no-repeat;
	transition-duration: 0.6s;
	transform: rotate(180deg);
	opacity: 0;
}

.gal:hover::before {
	top: calc(50% - 30px);
	transform: rotate(0deg);
	opacity: 1;
}

#galerie-pop {
	position: fixed;
	width: 100%;
	height: 0vh;
	background-color: white;
	background-size: cover;
	z-index: 100000;
	background-image: url('../image/galerie-image-exter-02.jpg');
	overflow: hidden;
	transition-duration: 0.4s;
	background-position: center;
}

#galerie-pop.open {
	height: 100vh;
}

#galerie-pop #fermeture-pop {
	position: absolute;
	width: 60px; height: 60px;
	top: 60px;
	right: 60px;
	background-image: url('../svg/picto-close-galerie.svg');
	background-size: center;
	background-repeat: no-repeat;
	cursor: pointer;
}

/* POPUP */

#popup {
	position: fixed;
	top: -100vh;
	left: 50%;
	transform: translate(-50%, -50%);
	background-color: #333;
	z-index: 100000000;
	max-width: 500px;
	transition-duration: 1s;
}

#popup.open {
	top: 50%;
}

#popup span.image {
	display: block;
	position: relative;
	height: 20vh;
	width: 100%;
	background-image: url('../image/galerie-image-exter-02.jpg');
	background-size: cover;
	background-position: center;
}

#popup span.close {
	position: absolute;
	top: 20px;
	right: 20px;
	background-color: #333;
	width: 40px;
	height: 40px;
	background-image: url('../svg/picto-pop-close.svg');
	background-position: center;
	background-size: 60%;
	transform: rotate(0deg);
	transition-duration: 0.4s;
	cursor: pointer;
}

#popup span.close:hover {
	transform: rotate(90deg);
}

#popup p.popup-message {
	color: white;
	padding: 20px 40px;
	text-transform: uppercase;
	font-family: 'light', sans-serif;
	text-align: center;
	font-size: 20px;
	line-height: 26px;
}

#popup p.popup-message a {
	display: inline-block;
	background-color: white;
	padding: 14px 30px;
	color: #333;
	margin: 20px 0 10px 0;
	font-family: 'regular', sans-serif;
	letter-spacing: 2px;
	transition-duration: 0.4s;
	font-size: 14px;
	line-height: 20px;
}

#popup p.popup-message a:hover {
	background-color: #E3E0CE;
}

/* NEWSLETTER */

#mc_embed_signup form { padding: 10px 0 0px 3% !important; }
#mc_embed_signup input { margin: 6px 0px !important; }
#mc_embed_signup_scroll h2 { margin: 0px 0px !important; }
#mc_embed_signup_scroll .indicates-required { display: none !important;}

/* GOOGLE */

.grecaptcha-badge {
	display: none !important;
}
