html { margin: 0px; overflow-x: hidden; }
body {
	margin: 0px;
	overflow-x: hidden;
	background-color: var(--color-body-back);
}

.mobilOnly { display: block !important; }
.mobilSupr { display: none !important; }
.mobilCenter { text-align: center !important; }
.tableCellMobil { display: table-cell !important; }

/* WIDTH */

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

/* PAGE CONTENU */

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

.width-max {
	display: table;
	position: relative;
	width: 100vw;
	margin: 0 0vw 0 0vw;
	table-layout: fixed;
	word-spacing: -4em;
	overflow: visible;
	padding: 0;
}

.width-max.separation {
	height: 3px;
	box-shadow: inset 30px 0px 0 0 var(--color-white);
	background-color: var(--color-projet-corpo);
}

/* MARGES */

.padding-top { padding-top: 80px; }
.padding-bottom { padding-bottom: 80px; }

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

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

/* BOX // WIDTH */
.entier,
.demi,
.tier,
.deuxtier,
.quart,
.troisquart,
.cinquieme,
.deuxcinquieme,
.troiscinquieme,
.sixieme,
.huitieme,
.troishuitieme,
.douzieme { width: calc((100% / 1) - 60px); padding: 0px 30px; }

.entier-full,
.demi-full,
.tier-full,
.deuxtier-full,
.quart-full,
.troisquart-full,
.deuxcinquieme-full,
.sixieme-full,
.troishuitieme-full,
.douzieme-full {width: calc((100% / 1) - 0px); padding: 0px 0px; }

/* FONT // FAMILY */

.font-titre { font-family: 'AvecRegular', serif; }
.font-light { font-family: 'SansLight', sans-serif; }
.font-regular { font-family: 'SansRegular', sans-serif; }
.font-bold, b { font-family: 'SansBold', sans-serif; }

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

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

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

/* ESPACE VIDE */

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

/*BANDES IMAGES*/

.bande-20 { min-height: 20vh; }
.bande-30 { min-height: 30vh; }
.bande-40 { min-height: 40vh; }
.bande-50 { min-height: 50vh; }
.bande-70 { min-height: 70vh; }

/* P */

p {
	font-size: 4vw;
	line-height: 6.4vw;
}

h1 {
	font-size: 8vw;
	line-height: 9vw;
	letter-spacing: 5px;
	text-align: center;
}

h4 {
	padding: 50px 0;
	font-size: 5vw;
	line-height: 6.5vw;
}

h4 span {
	font-size: 3vw;
	line-height: 4vw;
}

/* */

body.page #introduction {
	height: 40vh;
	min-height: 440px;
}

#introduction {
	height: 100vh;
	min-height: 600px;
	max-height: 700px;
}

#introduction::before {
	content: "";
	position: absolute;
	top: 0px;
	right: 0px;
	height: 100%;
	width: 50vw;
	background-color: var(--color-projet-corpo);
}

#introduction ul#partie-principale li {
	display: inline-block;
	vertical-align: top;
	width: 100%;
}

#introduction ul#partie-principale li:nth-child(1) {
	background-color: white;
	padding-bottom: 20px;
}

body.selecteur #introduction ul#partie-principale li:nth-child(1) { width: 60%; }
body.selecteur #introduction ul#partie-principale li:nth-child(3) { width: 40%; }

/* LISTES */

ul.en-chiffre li:nth-child(1) p {
	font-family: 'AvecRegular', serif;
	font-size: 25vw;
	line-height: 30vw;
	padding: 0 2vw 0 0;
}

ul.en-chiffre li:nth-child(2) p:nth-child(1) {
	font-size: 5vw;
	line-height: 5.3vw;
}

ul.en-chiffre li:nth-child(2) p:nth-child(1) span {
	font-size: 5vw;
	line-height: 5.3vw;
}

ul.en-chiffre li:nth-child(2) p:nth-child(2) {
	font-size: 2.6vw;
	line-height: 3.6vw;
}


.fenetre-laterale ul li:nth-child(1) {
	width: 35%;
}


.fenetre-laterale ul li:nth-child(1) p {
	font-size: 12vw;
	line-height: 12vw;
}

.fenetre-laterale p {
	color: var(--color-white);
	font-family: 'SansLight', serif;
	font-size: 3.2vw;
	line-height: 3.6vw;
}

.fenetre-laterale ul li:nth-child(2) p span {
	font-size: 1.8vw;
	line-height: 2vw;
}

/* MENU PRINCIPAL */

#menu-principal {
	position: fixed;
	right: 0px;
	top: 0px;
	height: 100vh;
	background-color: var(--color-projet-corpo);
	width: 100%;
	background-image: url('../svg/deco-vagues.svg');
	background-size: 80%;
	background-position: 400% 80%;
	transition-duration: 0.6s;
	z-index: 100000;
}

#menu-principal li p a { font-size: 3.4vw; }

/* GALERIE IMAGE */

#galerie ul#vignettes { display: none; }

#galerie #bouton-avant, #galerie #bouton-apres {
	position: absolute;
	display: block;
	top: calc(100% - 80px);
	width: 80px;
	height: 80px;
	background-color: white;
	cursor: pointer;
	background-position: 50% center;
	background-size: 60px;
	transition-duration: 0.4s;
}

#galerie #bouton-avant {
	left: 0px;
	background-image: url('../svg/picto-prev.svg');
	box-shadow: 30px 0 0 0 var(--color-projet-corpo);
}

#galerie #bouton-apres {
	right: 0px;
	background-image: url('../svg/picto-next.svg');
	box-shadow: -30px 0 0 0 var(--color-projet-corpo);
}

#galerie #bouton-close {
	top: 0px;
}

#introduction #bouton-video {
	bottom: 0%;
}


/* POPUP */

#popup {
		position: fixed;
		top: 50%;
		left: 50%;
		width: 90vw;
		max-width: none;
		background-color: white;
		transform: translateX(-50%) translateY(-50%);
		z-index: 1000000000;
		border: 2px solid var(--color-projet-corpo);
		box-shadow: 0 0 0 5vw white, 0 0 0 2000px rgba(255,255,255,1);
		transition-duration: 1s;
}

#popup.hide {
	top: -3000px;
	box-shadow: 0 0 0 40px white, 0 0 0 2000px rgba(255,255,255,0);
}

#popup p {
	text-align: justify;
	padding: 10px 60px;
	font-family: 'SansLight', sans-serif;
	font-size: 2.8vw;
	line-height: 3.6vw;
	color: var(--color-projet-corpo);
}

#popup p:first-of-type {
	padding-top: 60px;
	font-family: 'AvecRegular', serif;
	font-size: 4vw;
	line-height: 5vw;
	text-transform: uppercase;
	text-align: center;
}

#popup p:last-of-type { padding-bottom: 90px; }

#popup div.close-pop {
	position: absolute;
	width: 48px;
	height: 48px;
	background-color: white;
	box-shadow: inset 0 0 0 2px var(--color-projet-corpo);
	border-radius: 50%;
	right: 50%;
	top: 100%;
	transform: translateX(50%) translateY(-50%) rotate(45deg);
	background-image: url('../svg/picto-plus.svg');
	background-position: center;
	background-size: 80%;
	transition-duration: 0.4s;
	cursor: pointer;
}

/* ANNONCE */

#annonce p {
	color: white;
	font-family: 'SansRegular', serif;
	font-size: 4.0vw;
	line-height: 5.4vw;
}
