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

html::-webkit-scrollbar, body::-webkit-scrollbar  { display: none !important; }
html, body { -ms-overflow-style: none !important; scrollbar-width: none !important; }

.mobilOnly { display: none !important; }
.mobilSupr { display: default !important; }
.mobilCenter { text-align: default !important; }
.tableCellMobil { display: none !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;
	overflow: visible;
	vertical-align: middle;
}

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

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

.width-max.tiroir-vertical { display: none; }
.width-max.tiroir-vertical.active { display: table; }

.width-max.with-side {
	display: inline-table;
	width: 80%;
	margin: 0 5% 0 10%;
	vertical-align: middle;
}

.width-max.is-side {
	display: inline-table;
	width: 5%;
	margin: 0;
	vertical-align: middle;
	background-color: var(--color-projet-corpo);
	background-image: url('../svg/trame-derham-2.svg');
	background-repeat: repeat-x;
	background-position: left bottom;
	background-size: 20px;
	padding-bottom: 60px;
}

.width-max.with-side.open {
	width: 60%;
	margin: 0 5% 0 10%;
}

.width-max.is-side.open {
	width: 25%;
	margin: 0;
}

/* MARGES */

.padding-top { padding-top: 120px; }
.padding-bottom { padding-bottom: 120px; }
.padding-left { padding-left: 80px; }
.padding-right { margin-right: 6%; }
.margin-top { margin-top: 80px; }
.margin-bottom { margin-bottom: 80px; }

.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-jaune { background-color: #e6c54f; }
.color-background-vert { background-color: #8a974b; }
.color-background-orange { background-color: #b69e3f; }
.color-background-rouge { background-color: #c90b19; }

/* COLOR // TYPO */
.color-typo-black { color: rgba(63,63,63,1); }
.color-typo-gris { color: rgba(0,0,0,0.6); }
.color-typo-vert { color: #8a974b; }
.color-typo-jaune { color: #e6c54f; }
.color-typo-orange { color: #e8bb79; }
.color-typo-rouge { color: #c90b19; }
.color-typo-white { color: var(--color-white); }

/* BORDER */
.border-radius { border-radius: 16px; 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) - 60px); padding: 0px 30px; }
.quart-full {width: calc((100% / 4) - 0px); padding: 0px 0px; }
.troisquart {width: calc(3*(100% / 4) - 60px); padding: 0px 30px; }
.troisquart-full {width: calc(3*(100% / 4) - 0px); padding: 0px 0px; }
.cinquieme {width: calc((100% / 5) - 60px); padding: 0px 30px; }
.deuxcinquieme {width: calc(2*(100% / 5) - 60px); padding: 0px 30px; }
.deuxcinquieme-full {width: calc(2*(100% / 5) - 30px); padding: 0px 15px; }
.troiscinquieme {width: calc(3*(100% / 5) - 60px); padding: 0px 30px; }
.sixieme {width: calc((100% / 6) - 60px); padding: 0px 30px; }
.huitieme {width: calc((100% / 8) - 60px); padding: 0px 30px; }
.douzieme {width: calc((100% / 12) - 60px); padding: 0px 30px; }
.douzieme-full {width: calc((100% / 12) - 0px); padding: 0px 0px; }

/* FONT // FAMILY */

.font-light { font-family: 'light', sans-serif; }
.font-medium { font-family: 'medium', sans-serif; }
.font-regular { font-family: 'regular', sans-serif; }
.font-heavy, b { font-family: 'bold', sans-serif; }
.font-black { font-family: 'black', sans-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; }

.size-petit { font-size: 70%; }

/* 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-40 { height: 40px; 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 { height: 20vh; }
.bande-30 { height: 30vh; }
.bande-40 { height: 40vh; }
.bande-50 { height: 50vh; }
.bande-70 { height: 70vh; }

.img-back {
	background-image: cover;
	background-position: center;
}

.border-right-bottom { box-shadow: inset -20px -20px 0 20px var(--color-white); }
.border-left-bottom { box-shadow: inset 20px -20px 0 20px var(--color-white); }
.border-right-top { box-shadow: inset -20px 20px 0 20px var(--color-white); }

/* H */

p {
	position: relative;
	font-family: 'light', sans-serif;
	color: var(--color-gris-fonce);
}

p.paragraphe {
	font-size: 16px;
	line-height: 28px;
	text-align: justify;
}

p.paragraphe.colonnes {
	columns: 2;
	column-gap: 6%;
}

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

sup { line-height: 0px; }

h1 {

}

h2 {
	position: relative;
	font-family: 'light', sans-serif;
	color: var(--color-gris-fonce);
	font-size: 40px;
	line-height: 46px;
	padding: 20px 0;
}

h3 {
	position: relative;
	font-family: 'light', sans-serif;
	color: var(--color-gris-fonce);
	font-size: 30px;
	line-height: 48px;
	padding: 20px 0;
}
/*
h3:before {
	content: "";
	position: absolute;
	bottom: 0px;
	left: 0px;
	width: 200%;
	height: 2px;
	transform: translateX(-105%) translateY(-34px);
	background-color: var(--color-gris-fonce);
}
*/
h4 {
	position: relative;
	font-family: 'light', sans-serif;
	color: var(--color-gris-moyen);
	font-size: 18px;
	line-height: 22px;
	text-transform: uppercase;
	padding: 20px 0;
}

a.bouton {
	font-family: 'regular', sans-serif;
	display: inline-block;
	padding: 14px 30px 12px 30px;
	box-shadow: inset 0 0 0 var(--border) var(--color-projet-tonique);
	color: var(--color-projet-tonique);
	text-align: center;
	text-transform: uppercase;
	font-size: 13px;
	line-height: 16px;
	letter-spacing: 2px;
	cursor: pointer;
	transition-duration: 0.2s;
	transition-timing-function: ease-in;
}

a.bouton.plus {
	font-family: 'regular', sans-serif;
	display: inline-block;
	padding: 14px 30px 12px 30px;
	box-shadow: inset 0 0 0 var(--border) var(--color-projet-corpo);
	color: var(--color-projet-corpo);
	text-align: center;
	text-transform: uppercase;
	font-size: 13px;
	line-height: 16px;
	letter-spacing: 2px;
	cursor: pointer;
	transition-duration: 0.2s;
	transition-timing-function: ease-in;
}

a.bouton.gris {
	box-shadow: inset 0 0 0 var(--border) var(--color-gris-fonce);
	color: var(--color-gris-fonce);
}

a.bouton.block {
	display: block;
}

a.bouton:hover {
	box-shadow: inset 0 0 0 var(--border-hover) var(--color-projet-tonique);
	/*color: var(--color-white);*/
}

a.bouton.gris:hover {
	box-shadow: inset 0 0 0 var(--border-hover) var(--color-gris-fonce);
}

a.bouton.plus:hover {
	box-shadow: inset 0 0 0 var(--border-hover) var(--color-projet-corpo);
	/*color: var(--color-white);*/
}

span.picto {
	display: inline-block;
	width: 50px;
	height: 50px;
	box-shadow: inset 0 0 0 var(--border) var(--color-gris-fonce);
	background-position: center;
	background-size: 90%;
	background-repeat: no-repeat;
}

span.picto-big {
	display: inline-block;
	width: 100px;
	height: 100px;
	background-position: center;
	background-size: 100%;
	background-repeat: no-repeat;
}

a.ouverture {
	display: inline-block;
	width: 36px; height: 36px;
	box-shadow: inset 0 0 0 var(--border) var(--color-gris-moyen);
	background-image: url('../svg/bouton-ouverture.svg');
	background-size: 100%;
	background-position: center 100%;
	background-repeat: no-repeat;
	transition-duration: 0.4s;
	cursor: pointer;
}

a.ouverture.active { background-position: center 0%; }
a.ouverture:hover { background-position: center 50%; }
a.ouverture.active:hover { background-position: center 50%; }

div.disponibilite {
	position: absolute;
	bottom: 0%;
	left: 50%;
	background-color: white;
	padding: 16px 30px;
	transform: translateX(-50%);
	background-color: var(--color-projet-gris);
	border-top: 10px solid var(--color-projet-tonique);
}

div.disponibilite p {
	text-align: center;
	color: var(--color-projet-tonique);
	text-transform: uppercase;
	letter-spacing: 1px;
	font-size: 16px;
	line-height: 22px;
}

/* INTRIDUCTION */

#introduction {
	position: relative;
	width: 100vw;
	height: 80vh;
	background-image: url('../image/galerie-image-exter-01.jpg');
	background-size: cover;
	background-position: center;
	min-height: 700px;
}

/* ACTUALITE */

#barre-actu {
	position: absolute;
	top: 5%;
	right: 0px;
	width: calc( 100% / 3 );
	background-color: var(--color-gris-fonce);
	transform: translateX(calc(100% - 40px));
	transition-duration: 0.6s;
}

#barre-actu.open {
	transform: translateX(0%);
}

#barre-actu table {
	width: calc(100% - 80px);
	margin: 20px 40px;
}

#barre-actu table tr td {
	padding: 0.5vw;
	vertical-align: middle;
}

p.actu-titre {
	color: white;
	font-family: 'medium', sans-serif;
	font-size: 2vw;
	line-height: 2.6vw;
}

p.actu-sousTitre {
	color: white;
	text-transform: uppercase;
	font-size: 0.9vw;
	line-height: 1.2vw;
	letter-spacing: 0.02vw;
}

#barre-actu table td p a {
	position: relative;
	background-color: white;
	padding: .6vw 1vw;
	color: var(--color-gris-fonce);
	font-family: 'medium', sans-serif;
	text-transform: uppercase;
	font-size: 0.65vw;
	letter-spacing: 0.1vw;
	cursor: pointer;
	transition-duration: 0.4s;
}

#barre-actu table td p a:hover {
	background-color: var(--color-projet-tonique);
}

#toggle-actu {
	position: absolute;
	top: 30px;
	left: 20px;
	background-color: white;
	box-shadow: inset 0 0 0 2px var(--color-gris-fonce);
	color: var(--color-gris-fonce);
	transform: translate(-100%, 0);
}

#toggle-actu p {
	vertical-align: middle;
	padding: 0.6vw 1vw;
	font-family: 'medium', sans-serif;
	text-transform: uppercase;
	font-size: 0.65vw;
	letter-spacing: 0.1vw;
}

#barre-actu.hide #toggle-actu p { padding: 0.6vw 1vw; }
#barre-actu.open #toggle-actu p { padding: 0.6vw; }

#toggle-actu p span.mot {
	margin: 0 0.4vw 0 0;
}

#toggle-actu p span.fleche {
	display: inline-block;
	width: 0.8vw;
	height: 0.8vw;
	vertical-align: middle;
	background-image: url('../svg/picto-left-fat.svg');
	background-position: center;
	background-size: cover;
}

#barre-actu.hide p span.mot { display: inline-block; }
#barre-actu.open p span.mot { display: none; }

#barre-actu.hide p span.fleche { transform: rotate(180deg); }
#barre-actu.open p span.fleche { transform: rotate(0deg); }

/* CHART */

.pie-chart {
	display: block;
	position: relative;
	width: 70px;
	height: 70px;
	border-radius: 50%;
	margin: 0 auto;
	transform: rotate(135deg);
	background: conic-gradient(
		from 0deg,
		/*var(--color-gris-moyen) 0, var(--color-gris-moyen) 25%,*/
		var(--color-gris-clair) 0, var(--color-gris-clair) 0%,
		var(--color-vert) 0, var(--color-vert) 100%
	);
}

.pie-chart::before {
	content: "";
	position: absolute;
	background-color: var(--color-body-back);
	border-radius: 50%;
}

.pie-chart div.pie-chart-recap {
	display: table;
	position: relative;
	text-align: center;
	vertical-align: middle;
}

.pie-chart::before, .pie-chart div.pie-chart-recap {
	width: calc(100% - 20px);
	height: calc(100% - 20px);
	left: 10px;
	top: 10px;
}

.pie-chart div.pie-chart-recap p {
	position: relative;
	display: table-cell;
  vertical-align: middle;
	font-size: 20px;
	line-height: 0px;
	font-family: 'regular', sans-serif;
	transform: rotate(-135deg);
}

.pie-chart div.pie-chart-recap p span { display: none; }

/* PROJETS CLIENT */

#projets-client {
	position: relative;
	width: 100vw;
	height: auto;
	background-color: var(--color-projet-corpo);
	border-bottom: 10px solid var(--color-projet-tonique);
	z-index: 10000000;
}

ul#projets-client-bouton {
	position: relative;
	display: table;
	width: 94%;
	margin: 0 auto;
}

ul#projets-client-bouton li {
	display: table-cell;
	position: relative;
	padding: 26px 10px;
	vertical-align: bottom;
}

ul#projets-client-bouton li:nth-child(1) {
	/*background-image: url('../svg/trame-derham-1.svg');*/
	background-size: contain;
	background-position: bottom left;
	width: 0px;
}

ul#projets-client-bouton li:nth-child(2) { cursor: pointer;}
ul#projets-client-bouton li:nth-child(2) span {
	display: inline-block;
	width: 14px;
	height: 14px;
	background-image: url('../svg/fleche-small.svg');
	background-position: center;
	background-repeat: no-repeat;
	transition-duration: 0.4s;
	transform: rotate(180deg);
}
ul#projets-client-bouton li:nth-child(2):hover span { transform: rotate(0deg); }
#projets-client.open ul#projets-client-bouton li:nth-child(2) span { transform: rotate(0deg); }
#projets-client.open ul#projets-client-bouton li:nth-child(2):hover span { transform: rotate(180deg); }

ul#projets-client-bouton li:nth-child(3) { text-align: right; }
ul#projets-client-bouton li:nth-child(3) img { margin-right: 30px; }

ul#projets-client-bouton li:nth-child(4) { text-align: center; padding: 10px 4px; }
ul#projets-client-bouton li:nth-child(4) p span {
	display: inline-block;
	position: relative;
	width: 2px;
	height: 30px;
	background-color: var(--color-white);
}

ul#projets-client-bouton li:nth-child(5) {
	width: 60px;
	text-align: center;
	padding: 10px 6px 10px 4px;
}

ul#projets-client-bouton li p {
	color: var(--color-white);
	font-size: 14px;
	line-height: 18px;
	letter-spacing: 2px;
	text-transform: uppercase;
}

ul#projets-client-bouton li p.commercialiser-par {
	font-size: 10px;
	line-height: 16px;
}

/**/

ul#resume-logement {
	position: relative;
	display: table;
	width: 100%;
}

ul#resume-logement li {
	display: table-cell;
	position: relative;
	padding: 20px 0px;
	vertical-align: middle;
	text-align: center;
}

ul#resume-logement li:nth-child(2) p {
	font-family: 'regular', sans-serif;
	text-transform: uppercase;
	font-size: 14px;
	line-height: 20px;
	letter-spacing: 1px;
	text-align: left;
}

/* MENU PRINCIPAL */

#menu-mobil {
	display: none;
}

#barre-menu {
	position: relative;
	width: 100%;
	margin: 0 auto;
	background-color: red;
	z-index: 10000000;
}

#barre-menu.fixed {
	position: fixed;
	top: 0px;
}

body#selecteur #barre-menu.fixed {
	position: relative;
	top: 0px;
}

#barre-menu-contenu {
	width: 100%;
	margin: 0 auto;
	display: table;
	table-layout: fixed;
}

#barre-menu-gauche, #barre-menu-droite {
	display: table-cell;
}

#barre-menu-gauche {
	background-color: var(--color-gris-fonce);
	text-align: center;
}

#barre-menu-droite {
	width: calc( 100% / 3 );
	background-color: var(--color-projet-tonique);
}

ul.menu-principal {
	display: inline-table;
	width: auto;
	padding: 0 auto;
	margin: 20px 0;
}

ul.menu-principal li {
	position: relative;
	display: table-cell;
	text-align: center;
}

ul.menu-principal li:nth-child(1) p a { background-color: var(--color-gris-fonce); }
ul.menu-principal li:nth-child(1) p a img {
	display: inline-block;
	vertical-align: middle;
	width: 10vw;
	padding: 0 20px;
}

ul.menu-principal li.lien p { transition-duration: 0.4s; transform: translate(0, 0%); }

ul.menu-principal li p a {
	position: relative;
	background-color: white;
	padding: .6vw 1vw;
	margin: 0 .2vw;
	color: var(--color-gris-fonce);
	font-family: 'medium', sans-serif;
	text-transform: uppercase;
	font-size: 0.65vw;
	letter-spacing: 0.1vw;
	cursor: pointer;
	transition-duration: 0.4s;
	transform: translate(50%, 50%);
}

ul.menu-principal li { cursor: pointer; }

ul.menu-principal li.lien:hover p a { background-color: var(--color-projet-tonique); }
ul.menu-principal li.lien:hover p { transform: translate(0, 80%); }

ul.menu-principal li span.survol {
	position: absolute;
	width: 1vw;
	height: 1vw;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background-repeat: no-repeat;
	background-size: contain;
	transition-duration: 0.4s;
}

ul.menu-principal li span.survol.scr { background-image: url('../svg/picto-menu-scr.svg'); }
ul.menu-principal li span.survol.pag { background-image: url('../svg/picto-menu-pag.svg'); }
ul.menu-principal li span.survol.gal { background-image: url('../svg/picto-menu-gal.svg'); }
ul.menu-principal li span.survol.ope { background-image: url('../svg/picto-menu-ope.svg'); }

ul.menu-principal li.lien:hover span.survol {
	transform: translate(-50%, -180%);
}

ul.menu-principal li span.compte {
	position: relative;
	display: inline-block;
	width: 6px;
	height: 1.2vw;
	background-color: var(--color-gris-light);
	vertical-align: middle;
	margin: 1px;
	transform: none;
	top: 0px;
	left: 0px;
}

ul.menu-principal li span.compte:first-of-type {
	margin-left: 10px;
}

ul.menu-principal li span.compte i {
	position: absolute;
	bottom: 0px;
	left: 0px;
	width: 100%;
	height: 50%;
}

ul.menu-principal li span.compte.dispo i { background-color: var(--color-selecteur-dispo); }
ul.menu-principal li span.compte.reser i { background-color: var(--color-selecteur-reser); }
ul.menu-principal li span.compte.vendu i { background-color: var(--color-selecteur-vendu); }

/* TIROIR CONTACT */

#tiroir-contact {
	display: none;
	background-color: var(--color-projet-corpo);
	padding: 40px 0;
	z-index: 1000000000;
	background-image: url('../svg/logo-derham-blanc-10.svg');
	background-position: 90% 10%;
	background-size: 50%;
}

#tiroir-contact.open {
	display: block;
}

#tiroir-contact h2 {
	position: relative;
	font-family: 'derhamBold', serif;
	color: white;
	font-size: 2.4vw;
	line-height: 3vw;
	padding: 20px 0;
}

#tiroir-contact h3 {
	position: relative;
	font-family: 'derhamRegular', serif;
	color: white;
	font-size: 2.2vw;
	line-height: 2.6vw;
	padding: 20px 0;
	color: white;
}

#tiroir-contact h4 {
	position: relative;
	font-family: 'bold', serif;
	color: white;
	font-size: 1.2vw;
	line-height: 1.6vw;
	padding: 20px 0;
	color: white;
	text-transform: none;
}

#tiroir-contact p.sous-titre {
	position: relative;
	font-family: 'derhamRegular', serif;
	color: white;
	font-size: 1vw;
	line-height: 1.4vw;
	padding: 10px 0;
	color: white;
}

#tiroir-contact p.tiroir-info {
	position: relative;
	font-family: 'medium', serif;
	color: white;
	font-size: 1vw;
	line-height: 1.4vw;
	padding: 20px 0;
	color: white;
}

#tiroir-contact p {
	color: var(--color-white);
	padding: 10px 0;
	font-size: 0.8vw;
	line-height: 1.2vw;
}

#tiroir-contact span.ligne {
	display: block;
	width: 100%;
	height: 1px;
	background-color: white;
	margin: 0 0 10px 0;
}

#tiroir-contact p.chiffre {
	display: block;
	width: 2vw;
	height: 2vw;
	border-radius: 50%;
	box-shadow: inset 0 0 0 1px white;
	margin: 0 20px 0 0;
	padding: 0px;
	text-align: center;
	font-size: 0.8vw;
	line-height: 2vw;
}

#tiroir-contact table.tuto tr td {
	padding: 6px 0;
}

#tiroir-contact ul#carte-visite {
	display: table;
	width: 100%;
	table-layout: fixed;
}

#tiroir-contact ul#carte-visite li {
	display: table-cell;
	vertical-align: bottom;
}

#tiroir-contact ul#carte-visite li:nth-child(1) { width: 60%; }
#tiroir-contact ul#carte-visite li:nth-child(2) { width: 40%; }

#tiroir-contact ul#carte-visite li table tr td {
	vertical-align: top;
	padding: 0.6vw;
}

#tiroir-contact ul#carte-visite p.photo-courtier {
	display: inline-block;
	width: 4vw;
	height: 4vw;
	background-color: red;
	vertical-align: middle;
	padding: 0;
	border-top-left-radius: 20%;
	border-bottom-right-radius: 20%;
	background-position: center;
	background-size: cover;
}

#tiroir-contact ul#carte-visite p.courtier {
	position: relative;
	font-family: 'medium', serif;
	color: white;
	font-size: 0.8vw;
	line-height: 1.2vw;
	padding: 0 0 20px 0;
}

#tiroir-contact ul#carte-visite span.trait {
	display: block;
	width: 40%;
	height: 1px;
	background-color: white;
}

ul#carte-visite p.logo-client {
	width: 10vw;
	padding: 0;
}

ul#carte-visite p.contact-client {
	font-size: 100%;
	padding: 20px 0;
}

ul#carte-visite p.contact-client i {
	font-size: 50%;
}

#bloc-compte-lot {
	position: relative;
	margin: 40px 0 0 0;
	background-color: white;
	border-top-right-radius: 30px;
	border-bottom-left-radius: 30px;
}

#bloc-compte-lot span.picto-compte {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 3vw;
	height: 3vw;
	background-color: #fbb195;
	border-radius: 50%;
	transform: translate(-50%, -50%);
	background-image: url('../svg/picto-coeur-blanc.svg');
	background-position: center;
	background-size: 50%;
}

table#compte-lot {
	width: 80%;
	margin: 0 10%;
}

table#compte-lot tr td {
	padding: 1vw;
}

table#compte-lot p {
	padding: 0px;
	color: var(--color-projet-corpo);
}

table#compte-lot p.compte-titre {
	font-family: 'medium', sans-serif;
	font-size: 1.4vw;
	line-height: 1.4vw;
	padding: 10px 0 0 0;
}

table#compte-lot p.compte-compte {
	font-family: 'extra', sans-serif;
	font-size: 1.6vw;
	line-height: 1.6vw;
	padding: 0 0 10px 0;
}

table#compte-lot p.compte-legende {
	font-family: 'light', sans-serif;
	font-size: 0.6vw;
	line-height: 0.8vw;
	letter-spacing: 0.2vw;
	text-transform: uppercase;
	padding: 0 0 10px 0;
}

#tiroir-contact p.compte-btn {
	font-family: 'light', sans-serif;
	font-size: 0.6vw;
	line-height: 0.6vw;
	letter-spacing: 0.1vw;
	text-transform: uppercase;
	padding: 20px 0 10px 0;
	text-align: right;
}

#tiroir-contact p.compte-btn img {
	 height: 0.6vw;
	 vertical-align: middle;
	 margin-right: 10px;
}

#tiroir-contact p.compte-btn a { transition-duration: 0.4s; color: white; }
#tiroir-contact p.compte-btn a:hover { color: #fbb195; }

#tiroir-contact #croix-fermeture-dr {
	position: absolute;
	top: 50px;
	right: 50px;
	width: 60px;
	height: 60px;
	background-color: white;
	border-radius: 50%;
	cursor: pointer;
	transition-duration: 0.4s;
	transform: rotate(0deg);
}

#tiroir-contact #croix-fermeture-dr:hover {
	transform: rotate(180deg);
	background-color: #fbb195;
}

#tiroir-contact #croix-fermeture-dr span {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 50%;
	height: 1px;
	background-color: var(--color-projet-corpo);
}

#tiroir-contact #croix-fermeture-dr span:nth-child(1) { transform: translate(-50%, -50%) rotate(45deg); }
#tiroir-contact #croix-fermeture-dr span:nth-child(2) { transform: translate(-50%, -50%) rotate(-45deg); }

/* INTRO */
/*
#picto-scroll {
	position: absolute;
	width: 80px;
	height: 80px;
	bottom: 30px;
	left: 30px;
	background-color: var(--color-white);
	cursor: pointer;
	background-image: url('../svg/picto-big-souris.svg');
	background-position: center;
	background-size: 100%;
}

#bouton-video {
	position: absolute;
	height: 80px;
	bottom: 30px;
	left: 30px;
	background-color: var(--color-white);
	cursor: pointer;
	vertical-align: middle;
	transition-duration: 0.4s;
}

#bouton-video-mobil {
	position: absolute;
	height: 80px;
	bottom: 30px;
	right: 30px;
	background-color: var(--color-white);
	cursor: pointer;
	vertical-align: middle;
	transition-duration: 0.4s;
	z-index: 100;
}

#picto-scroll:hover, #bouton-video:hover {
	background-color: rgba(255,255,255,0.8);
}

#bouton-video p, #bouton-video-mobil p {
	font-family: 'regular',sans-serif;
	padding: 0 30px;
	margin: 0;
	display: inline-block;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
	font-size: 14px;
	line-height: 16px;
	letter-spacing: 3px;
	text-transform: uppercase;
}

#bouton-video p img, #bouton-video-mobil p img {
	width: 40px;
	vertical-align: middle;
	margin-right: 10px;
}
*/
/* BULLET BIG */

ul.bullet-big {
	display: table;
	vertical-align: bottom;
	margin: 50px 0;
}

ul.bullet-big li {
	display: table-cell;
	vertical-align: bottom;
	padding: 20px;
}

ul.bullet-big li.pic { width: 20%; }
ul.bullet-big li.txt { width: 80%; }

/* BULLET POINT */

ul.bullet-point {
	display: table;
	vertical-align: middle;
	margin: 30px 0;
	width: 100%;
}

ul.bullet-point li {
	display: table-cell;
	vertical-align: middle;
}

ul.bullet-point li.pic { width: 70px; }
ul.bullet-point li.num { width: 13%; box-shadow: }

ul.bullet-point li.num p {
	font-family: 'black', sans-serif;
	font-size: 28px;
	line-height: 30px;
	letter-spacing: 1px;
	text-transform: uppercase;
	text-align: left;
	padding: 0 10px 0 0;
	text-align: center;
}

ul.bullet-point li.txt p {
	font-family: 'regular', sans-serif;
	font-size: 13px;
	line-height: 18px;
	letter-spacing: 1px;
	text-transform: uppercase;
}

/* TIROIRS */

.bouton-ouverture-tiroir {
		position: absolute;
		bottom: calc(50% - 30px);
		left: 0%;
		width: 40px;
		height: 40px;
		background-color: var(--color-white);
		box-shadow: inset 0 0 0 var(--border) var(--color-gris-fonce);
		transform: translateY(-50%) translateX(-50%);
		background-image: url('../svg/picto-message.svg');
		background-size: 90%;
		background-position: center;
		cursor: pointer;
		z-index: 1000;
}

.bouton-ouverture-tiroir.open {
		background-image: url('../svg/picto-close.svg');
		bottom: 20%;
}

.bouton-ouverture-tiroir::before {
	content: "";
	display: block;
	top: 10%;
	left: 0%;
	position: absolute;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background-color: var(--color-projet-tonique);
	transform: translateX(-50%);
}

p.side-txt {
	color: var(--color-white);
	font-size: 1.3vw;
	line-height: 2vw;
	padding: 30px 20px 20px 80px;
}

p.side-nom {
	color: var(--color-white);
	font-size: 14px;
	line-height: 22px;
	text-transform: uppercase;
	padding: 20px 20px 20px 80px;
	text-align: right;
}

.width-max.is-side .photo-equipe-tiroir {
	position: absolute;
	top: 50%;
	left: 0%;
	width: 140px;
	height: 140px;
	background-color: var(--color-white);
	box-shadow: inset 0 0 0 10px var(--color-white);
	transform: translateY(-50%) translateX(-50%);
	background-position: center;
	cursor: pointer;
	background-size: cover;
	z-index: 900;
	opacity: 0;
}

.width-max.is-side.open .photo-equipe-tiroir {
	top: 30%;
	opacity: 1;
}

.width-max.is-side p { display: none; }
.width-max.is-side.open p { display: block; }

/* PRE-SELECTION */

ul.selection {
	display: table;
	margin: 0 auto;
	text-align: center;
}

ul.selection li {
	position: relative;
	display: block;
	margin: 10px;
	box-shadow: inset 0 0 0 var(--border) var(--color-gris-clair);
	transition-duration: 0.6s;
	cursor: pointer;
}

ul.selection li.active {
	position: relative;
	display: block;
	margin: 10px;
	box-shadow: inset 0 0 0 var(--border) var(--color-gris-moyen);
}

ul.selection li::before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: 0%;
	width: 20px;
	height: 20px;
	box-shadow: inset 0 0 0 var(--border) var(--color-gris-moyen);
	border-radius: 50%;
	background-color: var(--color-white);
	transform: translateX(-50%) translateY(-50%) rotate(180deg);
	background-image: url('../svg/picto-etoile.svg');
	background-size: 70%;
	background-position: center;
	background-repeat: no-repeat;
	opacity: 0;
	transition-duration:  0.6s;
}

ul.selection li.active::before {
	opacity: 1;
	transform: translateX(50%) translateY(-50%) rotate(0deg);
}

ul.selection li p {
	font-family: 'regular', sans-serif;
	display: block;
	padding: 14px 20px 10px 20px;
	text-transform: uppercase;
	font-size: 15px;
	line-height: 20px;
	letter-spacing: 2px;
	text-align: center;
	color: var(--color-gris-clair);
}

ul.selection li.active p { color: var(--color-gris-moyen); }
ul.selection li p sup { font-size: 50%; font-family: 'black', sans-serif; }

p.selection-categorie {
	display: block;
	font-family: 'regular', sans-serif;
	font-size: 13px;
	line-height: 18px;
	letter-spacing: 2px;
	text-transform: uppercase;
	text-align: center;
	padding: 20px 0;
}

p.selection-legende {
	position: relative;
	display: table;
	width: 100%;
	font-family: 'regular', sans-serif;
	font-size: 9px;
	line-height: 12px;
	letter-spacing: 2px;
	text-transform: uppercase;
	text-align: center;
	margin: 30px 0 0 0;
	padding: 32px 0 10px 0;
}

p.selection-legende::before {
	content: "";
	display: block;
	position: absolute;
	top: 0%;
	left: 50%;
	width: 20px;
	height: 20px;
	box-shadow: inset 0 0 0 var(--border) var(--color-gris-moyen);
	border-radius: 50%;
	background-color: var(--color-white);
	transform: translateX(-50%);
	background-image: url('../svg/picto-etoile.svg');
	background-size: 70%;
	background-position: center;
	background-repeat: no-repeat;
	transition-duration:  0.6s;
}

/* FOOTER */

#footer {
	background-size: 1400px;
	background-position: center top;
	background-repeat: no-repeat;
}

#footer p {
	font-size: 10px;
	line-height: 14px;
	text-transform: uppercase;
	letter-spacing: 2px;
}

/* JPO */

table.jpo {
	display: inline-table;
	vertical-align: middle;
	width: 90%;
	margin: 0 5%;
}

table.jpo td {
	padding: 0.2vw 1vw;
	vertical-align: middle;
}

.jpo-titre {
	font-family: 'regular', sans-serif;
	text-transform: uppercase;
	letter-spacing: .3vw;
	font-size: 0.6vw;
	line-height: 1.4vw;
	color: white;
}

.jpo-sousTitre {
	font-family: 'regular', sans-serif;
	text-transform: uppercase;
	letter-spacing: 0vw;
	font-size: 0.9vw;
	line-height: 1.2vw;
}

table.jpo td p a {
	position: relative;
	background-color: white;
	padding: .6vw 1vw;
	color: var(--color-gris-fonce);
	font-family: 'medium', sans-serif;
	text-transform: uppercase;
	font-size: 0.65vw;
	letter-spacing: 0.1vw;
	cursor: pointer;
	transition-duration: 0.4s;
}

table.jpo td p a:hover {
	background-color: var(--color-gris-fonce);
	color: white;
}

/* DECORATION */

.decoration-top, .decoration-bot {
	display: block;
	top: 0px;
	left: 0px;
	position: absolute;
	width: 100%;
	height: 100%;
	word-spacing: 0em;
	z-index: -1;
}

.decoration-top p, .decoration-bot p {
	display: block;
	position: absolute;
	font-family: 'extra', sans-serif;
	font-size: 16vw;
	color: var(--color-gris-light);
}

.decoration-top p {
	top: 0px;
	transform: translateY(-20%);
}

.decoration-bot p {
	bottom: 0px;
	right: 0px;
	transform: translateY(30%);
}

.decoration-img {
	position: absolute;
	width: 400px;
	height: 400px;
	background-repeat: no-repeat;
	background-position: center;
}

.image-fond {
	position: absolute;
	width: calc(100% - 30px);
	height: calc(100% - 30px);
	background-size: cover;
	background-position: center;
}

.image-fond.top-right { right: 0px; }
.image-fond.bottom-left { bottom: 0px; left: 0px; }

.decalage {
	transform: translateX(0%);
	transition-duration: 1s;
}

.decalage.hide {
	transform: translateX(-200%);
}


/* GALERIE VIDEO */
/*
#galerie-video {
	width: 100vw;
	height: 0vh;
	position: fixed;
	top: 0px;
	left: 0px;
	z-index: 100000000000;
	background-color: #2e2d2c;
	overflow: hidden;
	transition-duration: 0.6s;
}

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

#myVideo { position: relative; width: 100vw; height: 100vh; }

#bouton-stop {
	position: absolute;
	width: 50px;
	height: 50px;
	right: 30px;
	top: 30px;
	background-color: white;
	background-image: url('../svg/picto-close.svg');
	background-size: 80%;
	background-position: center;
	opacity: 1;
	transform: rotate(0deg);
	transition-duration: 0.4s;
	cursor: pointer;
} #bouton-stop:hover { transform: rotate(90deg); }
*/
/* GALERIE IMAGE */

#galerie {
  position: fixed;
  top: -100vh;
  transition-duration: 1s;
	width: 100vw;
	height: 100vh;
	z-index: 10000000000000000;
	background-color: var(--color-gris-fonce);
}

#galerie.active {
  top: 0vh;
}

#galerie ul#images {
	position: absolute;
	display: block;
	top: 0px;
	width: 100%;
	height: 100%;
}

#galerie ul#images li {
	position: absolute;
	display: none;
	top: 0px;
	width: 100%;
	height: 100%;
	background-size: contain;
	background-position: center;
	background-color: var(--color-gris-fonce);
}

#galerie ul#images li.active { display: block; }

#galerie ul#vignettes {
	position: absolute;
	text-align: center;
	bottom: 5%;
	display: table;
	width: 100%;
	height: 100px;
}

#galerie ul#vignettes li {
	display: inline-flex;
	width: 100px;
	height: 100px;
	box-shadow: inset 0 0 0 8px white;
	margin: 5px 10px;
	background-size: cover;
	background-position: center;
	transition-duration: 0.4s;
	cursor: pointer;
}

#galerie ul#vignettes li:hover {
	box-shadow: inset 0 0 0 12px white;
}

#galerie ul#vignettes li.active {
	box-shadow: inset 0 0 0 8px var(--color-projet-tonique);
	cursor: default;
}

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

#galerie #bouton-avant:hover { background-position: 40% center; }
#galerie #bouton-apres:hover { background-position: 60% center; }

#galerie #bouton-avant {
	left: 20px;
	background-image: url('../svg/picto-prev.svg');
}

#galerie #bouton-apres {
	right: 20px;
	background-image: url('../svg/picto-next.svg');
}

#galerie #bouton-close {
  position: absolute;
	display: block;
  top: 20px;
  right: 20px;
	width: 60px;
	height: 60px;
  background-color: white;
  cursor: pointer;
  background-image: url('../svg/picto-close.svg');
  background-size: 70%;
  background-position: center;
	transform: rotate(0deg);
	transition-duration: 0.4s;
} #galerie #bouton-close:hover { transform: rotate(90deg); }

/* GOOGLE */

.grecaptcha-badge { display: none; }

/* ANIMATION */

.photoDownToUp {
	/*margin-top: 200px;*/
	margin-top: 0px;
	opacity: 0;
	transition-duration: 0.8s;
	transition-timing-function: ease-out;
}

.transDelai { transition-delay: 0.5s; }

.decoLeftToRight {
	opacity: 0;
	margin-left: -500px;
	transition-duration: 0.8s;
	transition-timing-function: ease-out;
}

.decoRightToLeft {
	opacity: 0;
	margin-left: 500px;
	transition-duration: 0.8s;
	transition-timing-function: ease-out;
	transition-delay: 0.5s;
}

.photoUpToDown.visible, .photoDownToUp.visible {
	margin-top: 0px;
	opacity: 1;
}

.decoLeftToRight.visible {
	opacity: 1;
	margin-left: 0px;
}

.decoRightToLeft.visible {
	opacity: 1;
	margin-left: 0px;
}

/* LISTE PICTO ANNIM */

ul.picto-vertical {
	display: table;
	width: 100%;
	box-shadow: inset 0 0 0 1px red;
	padding: 20px 0;
	box-shadow: inset 0 0px 0 0 var(--color-gris-fonce);
	transform: scale(1);
	transition-duration: 0.5s;
}

ul.picto-vertical:hover {
	box-shadow: inset 0 -2px 0 0 var(--color-gris-fonce);
	transform: scale(1.1);
}

ul.picto-vertical li p {
	text-align: center;
	font-family: 'bold', sans-serif;
	font-size: 14px;
	line-height: 18px;
	text-transform: uppercase;
	color: var(--color-gris-fonce);
	padding: 5px 0;
	margin: 0 10%;
}

ul.picto-vertical li p.liste-nombre {
	font-family: 'light', sans-serif;
	text-transform: none;
	font-size: 50px;
	line-height: 55px;
}

ul.picto-vertical li p.liste-legende {
	font-family: 'light', sans-serif;
	text-transform: none;
}

ul.picto-vertical li p img, img.picto-big-contour {
	width: 50%;
	max-width: 140px;
	border: 2px solid var(--color-gris-fonce);
	margin: 10px 0;
}

/* TELECHARGEMENTS */

table#tableau-telechargement {
	width: 100%;
	table-layout: fixed;
	margin: 20px 0 100px 0;
}

table#tableau-telechargement p.telechargements {
	box-shadow: inset 0 0 0 2px var(--color-gris-fonce);
	padding: 20px 10px;
	margin: 10px;
	text-align: center;
	font-size: 11px;
	line-height: 14px;
	text-transform: uppercase;
	letter-spacing: 2px;
	color: var(--color-gris-fonce);
	transition-duration: 1s;
}

table#tableau-telechargement p.telechargements:hover {
	box-shadow: inset 0 0 0 4px var(--color-gris-fonce);
}

table#tableau-telechargement p.telechargements img {
	height: 80px;
}
