html { margin: 0px; overflow-x: hidden; }
body {
	margin: 0px 0px 0 0px;
	overflow-x: hidden;
	background-color: var(--color-body-back);
	border-top: 6px solid var(--color-projet-tonique);
}

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

/* WIDTH */

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

/* PAGE ACCUEIL */

.width-full {
	display: table;
	position: relative;
	width: 100%;
	height: auto;
	background-color: rgba(0,0,0,0);
	table-layout: fixed;
	word-spacing: -4em;
	margin: 0px auto;
	overflow: visible;
	box-shadow: inset 0 0 0 0px #E57F7F;
	vertical-align: middle;
}

.width-max {
	display: table;
	position: relative;
	width: 80%;
	margin: 0 auto;
	table-layout: fixed;
	word-spacing: -4em;
	overflow: visible;
	box-shadow: inset 0 0 0 0px #7EC1AA;
	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); }
.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; }
.justMobil { display: none !important; }
.justScreen { display: inline-block !important; }

/* COLONNES */
.deuxColones { column-count: 2; column-gap: 40px; }

/* COLOR // BACKGROUND */
.color-background-white { background-color: rgba(255,255,255,0.5); }
.color-background-grey { background-color: var(--color-gris-fonce); }
.color-background-tonique { background-color: var(--color-projet-tonique); }

/* COLOR // TYPO */
.color-typo-green { color: var(--color-selecteur-dispo); }

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

/* BOX // WIDTH */
.entier {width: calc((100% / 1) - 60px); padding: 0px 30px; }
.entier-full {width: calc((100% / 1) - 0px); padding: 0px 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; }
.cinquieme-full {width: calc((100% / 5) - 0px); padding: 0px 0px; }
.troiscinquieme { width: calc(3*(100% / 5) - 60px); padding: 0px 30px; }
.troiscinquieme-full { width: calc(3*(100% / 5) - 0px); padding: 0px 0px; }
.sixieme {width: calc((100% / 6) - 60px); padding: 0px 30px; }
.huitieme {width: calc((100% / 8) - 60px); padding: 0px 30px; }

/* FONT // FAMILY */
.font-bold, b { font-family: 'medium', sans-serif; }
.font-medium { font-family: 'medium', sans-serif; }
.font-regular { font-family: 'regular', sans-serif; }
.font-light { font-family: 'light', sans-serif; }

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

.left { text-align: left !important; }
.justify { text-align: justify; }
.center { text-align: center; }
.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-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; }

/* SEPARATION */
.espace-vide-20 { display: block; height: 20px; }
.espace-vide-30 { display: block; height: 30px; }
.espace-vide-40 { display: block; height: 40px; }
.espace-vide-60 { display: block; height: 60px; }

/* BANDES */
.bande-20 {	height: 20vh; min-height: 200px; padding: 0 0; transition-duration: 0.4s; }
.bande-30 {	height: 30vh; min-height: 300px; padding: 0 0; transition-duration: 0.4s; }
.bande-40 {	height: 40vh; min-height: 400px; padding: 0 0; transition-duration: 0.4s; }
.bande-50 {	height: 50vh; min-height: 500px; padding: 0 0; transition-duration: 0.4s; }

@media screen and (min-width: 1300px) {
	.bande-20 {	height: 20vh; min-height: 200px; padding: 0 0; }
	.bande-30 {	height: 30vh; min-height: 300px; padding: 0 0; }
	.bande-40 {	height: 40vh; min-height: 400px; padding: 0 0; }
	.bande-50 {	height: 80vh; min-height: 500px; padding: 0 0; }
}

/* PAGES */

html.selecteur #menu-principal ul:nth-child(2) li:nth-child(3) table tr td:nth-child(1) { display: none; }

/* TEXTES */

p, a, h1, h2, h3, h4, h5 { color: var(--color-gris-fonce); }

p {
	font-family: 'light', sans-serif;
	color: var(--color-gris-fonce);
	padding: 10px 0;
	font-size: 16px;
	line-height: 32px;
}

a { text-decoration: none; color: unset; cursor: pointer; transition-duration: 0.4s; }

h2 {
	font-family: 'regular', sans-serif;
	display: inline-block;
	font-size: 13px;
	line-height: 15px;
	letter-spacing: 2px;
	padding: 10px 0 30px 0px;
	text-transform: uppercase;
	border-bottom: 2px solid var(--color-gris-fonce);
	margin-bottom: 30px;
}

h2.right { float: right; }


h3 {
	font-family: 'Medium', sans-serif;
	display: inline-block;
	font-size: 24px;
	line-height: 30px;
	letter-spacing: 0px;
	text-transform: uppercase;
	padding-bottom: 20px;
}

h3 { padding-right: 20px; }
h3.right { padding-right: 0px; }

h4 {
	font-family: 'Medium', sans-serif;
	display: inline-block;
	font-size: 30px;
	line-height: 36px;
	letter-spacing: 0px;
	text-transform: uppercase;
}

p.legende {
	font-size: 14px;
	line-height: 18px;
	font-family: 'Medium', sans-serif;
	letter-spacing: 4px;
	text-transform: uppercase;
	color: var(--color-selecteur-dispo);
}

img.feuille-droite { width: 12px; margin-right: 16px; }
img.feuille-haut { width: 12px; margin-top: 16px; }

.ligne-separation {
	display: block;
	border-bottom: 2px solid var(--color-gris-fonce);
	margin-bottom: 30px;
}

sup {
	line-height: 0px;
	font-size: 50%;
}

p.citation-picto {
	margin: 20px 0 40px 0;
	text-align: center;
}

p.citation-phrase {
	font-family: 'light', sans-serif;
	text-align: center;
	text-transform: uppercase;
	font-size: 2.5vw;
	line-height: 3vw;
	padding: 0 6vw;
}

p.citation-auteur {
	font-family: 'Medium', sans-serif;
	text-align: right;
	margin: 60px 100px 0 0;
	text-transform: uppercase;
	font-size: 14px;
	line-height: 20px;
}

/* MENU PRINCIPAL */

#menu-principal {
	display: inline-block;
	width: 100vw;
	padding: 6vh 0 2vh 0;
}

#menu-principal ul {
	display: table;
	table-layout: fixed;
	width: 90%;
	margin: 0 auto;
}

#menu-principal ul li {
	display: table-cell;
	table-layout: fixed;
	width: 100%;
	text-align: center;
	vertical-align: top;
}

#menu-principal ul:nth-child(1) li:nth-child(2) img {
	display: inline-block;
	width: 100%;
	max-width: 300px;
}

#menu-principal ul:nth-child(1) li:nth-child(3) {
	text-align: right;
}

#menu-principal ul:nth-child(1) li:nth-child(3) img {
	display: inline-block;
	width: 100%;
	max-width: 180px;
	margin-bottom: 6px;
}

#menu-principal ul:nth-child(1) li:nth-child(3) p {
	font-size: 11px;
	line-height: 13px;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: var(--color-gris-clair);
}

#menu-principal ul:nth-child(2) {
	margin: 30px auto 0 auto;
}

#menu-principal ul:nth-child(2),
#menu-principal ul:nth-child(2) li,
#menu-principal ul:nth-child(2) li p {
	vertical-align: middle;
}

/* //// */

#menu-principal ul:nth-child(2) li:nth-child(1) table {
	width: auto;
	float: left;
	position: relative;
}

#menu-principal ul:nth-child(2) li:nth-child(1) table p { color: var(--color-gris-clair); padding: 0 12px; }
#menu-principal ul:nth-child(2) li:nth-child(1) table td { position: relative; }
#menu-principal ul:nth-child(2) li:nth-child(1) table td:first-of-type p { padding: 0 12px 0 0; }

#menu-principal ul:nth-child(2) li:nth-child(1) table p a svg {
	display: inline-block;
	height: 28px;
	vertical-align: middle;
}

#menu-principal ul:nth-child(2) li:nth-child(1) table p a svg .cls-1 { fill: var(--color-gris-clair); transition-duration: 0.4s; }
#menu-principal ul:nth-child(2) li:nth-child(1) table p a svg .cls-2 { fill: var(--color-selecteur-dispo); }
#menu-principal ul:nth-child(2) li:nth-child(1) table p a:hover svg .cls-1 { fill: var(--color-gris-fonce); }


#bulle-actu {
	position: absolute;
	top: 0%;
	left: 0%;
	width: 30vw;
	max-width: 400px;
	transform: translate(-400%, -120%);
	transition-duration: 0.4s;
	box-shadow: 0 0 0 2px var(--color-selecteur-dispo);
	z-index: 1;
	background-color: white;
}

#bulle-actu.open {
	transform: translate(0%, -120%);
}

#bulle-actu p { color: var(--color-gris-fonce) !important; text-align: left !important; }
#bulle-actu p:nth-child(1) {
	font-family: 'medium', sans-serif;
	text-transform: uppercase;
	font-size: 16px;
	line-height: 20px;
	padding: 10px 20px 5px 20px !important;
}

#bulle-actu p:nth-child(2) {
	font-family: 'light', sans-serif;
	text-transform: uppercase;
	font-size: 12px;
	line-height: 15px;
	padding: 5px 20px !important;
}

#bulle-actu p:nth-child(3) {
	padding: 5px 20px 10px 20px !important;
	background-color: white;
}

#bulle-actu p:nth-child(3) a {
	font-family: 'medium', sans-serif;
	text-transform: uppercase;
	font-size: 15px;
	line-height: 18px;
	padding: 14px 17px !important;
	background-color: var(--color-selecteur-dispo);
	letter-spacing: 1px;
	transition-duration: 0.4s;
}

#bulle-actu p:nth-child(3) a:hover {
	background-color: var(--color-gris-clair);
}

#bulle-actu span {
	position: absolute;
	width: 16px;
	height: 16px;
	background-color: var(--color-selecteur-dispo);
	top: 100%;
	left: 0%;
	transform: translate(3px, -50%) rotate(45deg);
	z-index: -1;
}

#bulle-actu div.switch-actu {
	position: absolute;
	width: 40px;
	height: 40px;
	bottom: 0px;
	right: 0px;
	cursor: pointer;
}

#bulle-actu div.switch-actu svg {
	position: absolute;
	width: 20px;
	height: 20px;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%) rotate(45deg);
}

/* //// */

#menu-principal ul:nth-child(2) li:nth-child(2) {
	width: 150%;
}

#menu-principal ul:nth-child(2) li:nth-child(2) table {
	width: 100%;
	table-layout: fixed;
}

#menu-principal ul:nth-child(2) li:nth-child(2) table p {
	display: inline-block;
	font-size: 13px;
	line-height: 15px;
	letter-spacing: 2px;
	text-transform: uppercase;
}

#menu-principal ul:nth-child(2) li:nth-child(2) table p a {
	display: inline-block;
	padding: 20px 0;
	border-top: 2px solid rgba(0,0,0,0);
}

#menu-principal ul:nth-child(2) li:nth-child(2) table p a:hover {
	border-top: 2px solid rgba(0,0,0,1);
}

/* //// */

#menu-principal ul:nth-child(2) li:nth-child(3) table {
	position: relative;
	width: auto;
	float: right;
}

#menu-principal ul:nth-child(2) li:nth-child(3) table p { color: var(--color-gris-clair); padding: 0 12px; }
#menu-principal ul:nth-child(2) li:nth-child(3) table td { position: relative; }
#menu-principal ul:nth-child(2) li:nth-child(3) table td:last-of-type p:last-of-type { padding: 0 0 0 12px; }

#menu-principal ul:nth-child(2) li:nth-child(3) table p a svg {
	display: inline-block;
	height: 28px;
	vertical-align: middle;
}

#menu-principal ul:nth-child(2) li:nth-child(3) table p a svg .cls-1 { fill: var(--color-gris-clair); transition-duration: 0.4s; }
#menu-principal ul:nth-child(2) li:nth-child(3) table p a:hover svg .cls-1 { fill: var(--color-gris-fonce); }

#menu-principal ul:nth-child(2) li:nth-child(3) table td .detail-bouton {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -110%);
	opacity: 0;
	transition-duration: 0.4s;
}

#menu-principal ul:nth-child(2) li:nth-child(3) table td:hover .detail-bouton {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -160%);
	opacity: 1;
}

/* SI - ouvert pas défaut */

#menu-principal ul:nth-child(2) li:nth-child(3) table td.open .detail-bouton {
	transform: translate(-50%, -160%);
	opacity: 1;
}

#menu-principal ul:nth-child(2) li:nth-child(3) table td.open p a svg .cls-1 { fill: var(--color-gris-fonce); }

/* SI - end */

#menu-principal ul:nth-child(2) li:nth-child(3) table td .detail-bouton.senzi { transform: translate(calc(-50% + 6px), -110%); }
#menu-principal ul:nth-child(2) li:nth-child(3) table td:hover .detail-bouton.senzi { transform: translate(calc(-50% + 6px), -160%); }

#menu-principal ul:nth-child(2) li:nth-child(3) table .detail-bouton p,
#menu-principal ul:nth-child(2) li:nth-child(3) table td:last-of-type .detail-bouton p:last-of-type {
	position: relative;
	display: inline-block;
	width: 160px;
	font-size: 13px;
	line-height: 17px;
	text-transform: uppercase;
	padding: 10px 10px;
	font-family: 'medium', sans-serif;
	color: var(--color-gris-fonce);
	background-color: white;
	box-shadow: 0 0 0 2px var(--color-selecteur-dispo);
	z-index: 1;
}

#menu-principal ul:nth-child(2) li:nth-child(3) table .detail-bouton p i {
	font-size: 10px;
	line-height: 14px;
	color: var(--color-selecteur-dispo);
}

#menu-principal ul:nth-child(2) li:nth-child(3) table .detail-bouton span {
	position: absolute;
	width: 16px;
	height: 16px;
	background-color: var(--color-selecteur-dispo);
	top: 100%;
	left: 50%;
	transform: translate(-50%, -50%) rotate(45deg);
	z-index: 0;
}

#menu-principal ul:nth-child(2) li:nth-child(3) table .detail-bouton.senzi p { box-shadow: 0 0 0 2px var(--color-projet-tonique) !important; }
#menu-principal ul:nth-child(2) li:nth-child(3) table .detail-bouton.senzi span { background-color: var(--color-projet-tonique) !important; }
#menu-principal ul:nth-child(2) li:nth-child(3) table .detail-bouton.senzi p i { color: var(--color-projet-tonique) !important; }

#menu-principal ul:nth-child(2) li:nth-child(3) table p span.legende-mobile {
	display: none;
}

/* INTRODUCTION */

#introduction {
	position: relative;
	height: 60vh;
	min-height: 300px;
	width: 100vw;
	background-image: url('../image/galerie-image-exter-1.jpg');
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}

#bouton-play {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 130px;
	height: 130px;
	box-shadow: inset 0 0 0 2px var(--color-white);
	border-radius: 50%;
	transform: translate(-50%, -50%);
	background-image: url('../svg/picto-play.svg');
	background-position: 55% 50%;
	background-size: 40%;
	background-repeat: no-repeat;
	transition-duration: 0.4s;
	overflow: visible;
}

#bouton-play:hover {
	width: 230px;
	height: 230px;
	box-shadow: inset 0 0 0 2px var(--color-white);
	background-position: 175% 50%;
	cursor: pointer;
}

#bouton-play div.message {
	position: absolute;
	top: 0%;
	left: 50%;
	background-color: var(--color-white);
	transform: translate(-50%, -100%);
	width: 180px;
	text-align: center;
	text-transform: uppercase;
	box-shadow: 0 -6px 0 0 var(--color-selecteur-dispo);
	opacity: 0;
	transition-duration: 0.6s;
}

#bouton-play:hover div.message { top: -30%; opacity: 1; }

#bouton-play div.message p {
	font-size: 11px;
	line-height: 13px;
	letter-spacing: 2px;
	display: block;
	text-align: center;
	padding: 15px;
}

span.fleche-bas-centre {
	display: block;
	position: absolute;
	width: 20px;
	height: 20px;
	background-color: var(--color-white);
	left: 50%;
	top: 100%;
	transform: translate(-50%, -50%) rotate(45deg);
}

#annonce {
	position: absolute;
	left: 50%;
	transform: translate(-50%, 0);
	width: 40%;
	min-width: 400px;
	margin: 0 auto;
	bottom: 0%;
	background-color: white;
}

#annonce table {
	position: relative;
	width: 100%;
}

#annonce table tr:nth-child(2) {
	background-color: var(--color-gris-fonce);
}

#annonce table tr td {
	padding: 5px 10px 0px 10px;
	text-align: center;
}

#annonce table tr:nth-child(1) td p {
	color: var(--color-gris-fonce);
	font-family: 'regular', sans-serif;
	text-transform: uppercase;
	font-size: 1.1vw;
	line-height: 1.4vw;
	letter-spacing: 0.05vw;
	padding: 10px 40px 0px 40px;
}

#annonce table tr:nth-child(2) td {
	background-color: var(--color-gris-fonce);
	padding: 10px;
}

#annonce table tr:nth-child(2) td p {
	color: white;
	font-family: 'medium', sans-serif;
	text-transform: uppercase;
	font-size: 0.8vw;
	line-height: 1vw;
	letter-spacing: 0.05vw;
}

#annonce table tr:nth-child(2) td:nth-child(1) { text-align: right; }
#annonce table tr:nth-child(2) td:nth-child(2) { text-align: left; }

#annonce table tr:nth-child(2) td p a.en-savoir-plus {
	display: inline-block;
	text-align: center;
	background-color: var(--color-selecteur-dispo);
	padding: 10px;
	color: var(--color-gris-fonce);
	transition-duration: 0.4s;
}

#annonce table tr:nth-child(2) td p a.en-savoir-plus:hover {
	background-color: white;
}

#annonce span {
	position: absolute;
	width: 16px;
	height: 16px;
	background-color: white;
	top: 0%;
	left: 50%;
	transform: translate(-50%, -50%) rotate(45deg);
}

/* TYPOLOGIES */

ul#typologie-gauche-01 li {
	display: none;
	overflow: hidden;
}

ul#typologie-gauche-01 li.active {
	display: block;
}

ul#typologie-gauche-01 li img.plan {
	transform: scale(1) translate(0%, 0%);
}

ul#typologie-gauche-02 {
	display: table;
	table-layout: fixed;
	width: 120px;
	margin: 20px auto;
}

ul#typologie-gauche-02 li {
	display: table-cell;
	vertical-align: middle;
	width: 100%;
	padding: 0 5px;
	text-align: center;
	cursor: pointer;
	transition-duration: 0.4s;
}

ul#typologie-gauche-02 li svg { height: 16px; }

ul#typologie-gauche-02 li svg .cls-1 { fill: var(--color-gris-fonce); }

ul#typologie-gauche-02 li.bull {
	font-size: 30px;
	color: var(--color-gris-clair);
}

ul#typologie-gauche-02 li.bull.active { color: var(--color-selecteur-dispo); }
ul#typologie-gauche-02 li:hover { color: var(--color-gris-fonce); }

#typologie-droite ul li {
	position: relative;
}

#typologie-droite ul li span {
	position: absolute;
	width: 20px;
	height: 20px;
	top: 50%;
	left: 50%;
	background-color: var(--color-selecteur-dispo);
	transform: translate(-50%, -50%) rotate(45deg);
	transition-duration: 0.4s;z-index: 0;
}

#typologie-droite ul li.active span {
	left: 0%;
}

#typologie-droite ul li table { position: relative; border: 2px solid rgba(0,0,0,0); transition-duration: 0.4s; cursor: pointer; width: 100%; background-color: white; z-index: 1; }
#typologie-droite ul li.active table { border: 2px solid var(--color-selecteur-dispo); cursor: default; }

#typologie-droite ul li table tr td { vertical-align: middle; padding: 20px 10px; }
#typologie-droite ul li.active table tr td { vertical-align: middle; padding: 20px 30px; }

#typologie-droite ul li table tr td:nth-child(1),
#typologie-droite ul li table tr td:nth-child(2) { display: table-cell; }
#typologie-droite ul li.active table tr td:nth-child(1),
#typologie-droite ul li.active table tr td:nth-child(2) { display: none; }

#typologie-droite table tr td:nth-child(2) p {
	color: var(--color-gris-clair);
}

#typologie-droite p svg {
	height: 16px;
}

#typologie-droite p svg .cls-1 {
	fill: var(--color-gris-fonce)
}

#typologie-droite ul li table p {
	font-size: 14px;
	line-height: 20px;
	color: var(--color-gris-fonce);
	text-transform: uppercase;
	letter-spacing: 1px;
}

#typologie-droite ul li.active table p {
	font-size: 20px;
	line-height: 28px;
	color: var(--color-gris-fonce);
	text-transform: uppercase;
	letter-spacing: 1px;
}

#typologie-droite ul li table p.bull {
	font-size: 14px;
	line-height: 20px;
	color: var(--color-gris-fonce);
	text-transform: uppercase;
	letter-spacing: 1px;
	padding: 5px 0 0 0;
}

#typologie-droite ul li.active table p.bull {
	font-size: 18px;
	line-height: 24px;
}

/* LIEN BULL */

a.bulle-lien {
	position: relative;
	display: block;
}

a.bulle-lien span {
	position: absolute;
	width: 20px;
	height: 20px;
	top: 50%;
	left: 100%;
	background-color: var(--color-gris-fonce);
	transform: translate(-50%, -50%) rotate(45deg);
	transition-duration: 0.4s;
	z-index: 0;
}

a.bulle-lien:hover span { background-color: var(--color-selecteur-dispo); }

#typologie-droite ul li.active span { left: 0%; }

a.bulle-lien table {
	position: relative;
	width: 100%;
	border: 2px solid var(--color-gris-fonce);
	text-align: center;
	background-color: white;
	transition-duration: 0.4s;
}

a.bulle-lien:hover table { border: 2px solid var(--color-selecteur-dispo); }

a.bulle-lien table svg { height: 28px; }
a.bulle-lien table svg .cls-1 { fill: var(--color-gris-fonce); }

a.bulle-lien table tr td { vertical-align: middle; }
a.bulle-lien table tr td p {
	font-family: 'medium';
	font-size: 13px;
	line-height: 20px;
	text-transform: uppercase;
	letter-spacing: 2px;
}

a.bulle-lien table tr td:first-of-type { padding: 14px 10px 6px 30px; }
a.bulle-lien table tr td:last-of-type { padding: 10px 30px 10px 10px; }

/* TELECHARGEMENTS */

ul.tableau-telechargements {
	display: table;
	table-layout: fixed;
	width: 100%;
}

ul.tableau-telechargements li {
	display: table-cell;
	padding: 0 10px;
}

ul.tableau-telechargements li:first-of-type { padding: 0 10px 0 0; }
ul.tableau-telechargements li:last-of-type { padding: 0 0 0 10px; }

p.telechargement a {
	position: relative;
	display: block;
	border-bottom: 2px solid var(--color-gris-fonce);
	font-family: 'medium';
	font-size: 13px;
	line-height: 20px;
	text-transform: uppercase;
	letter-spacing: 2px;
	color: var(--color-gris-fonce);
	text-align: center;
	padding: 20px 0;
	overflow: hidden;
	transition-duration: 0.4s;
}

p.telechargement:hover a {
	border-bottom: 2px solid var(--color-selecteur-dispo);
}

p.telechargement a svg {
	height: 34px;
	padding: 0 0 10px 0;
}

p.telechargement a svg .cls-1 { fill: var(--color-gris-fonce); transition-duration: 0.4s;; }
p.telechargement:hover a svg .cls-1 { fill: var(--color-selecteur-dispo); }

p.telechargement a span {
	position: absolute;
	top: 140%;
	left: 50%;
	width: 16px;
	height: 16px;
	background-color: var(--color-gris-fonce);
	transform: translate(-50%, -50%) rotate(45deg);
	transition-duration: 0.4s;
}

p.telechargement:hover a span {
	top: 100%;
	background-color: var(--color-selecteur-dispo);
}

/* GALERIE LIGNE */

table.control-galerie-ligne {
	width: 100%;
}

table.control-galerie-ligne tr:nth-child(1) td { text-align: right; }
table.control-galerie-ligne tr:nth-child(1) td svg { height: 16px; }
table.control-galerie-ligne tr:nth-child(1) td svg .cls-1 { fill: var(--color-gris-fonce); }

table.control-galerie-ligne tr:nth-child(2) td { vertical-align: middle; }

table.control-galerie-ligne tr:nth-child(2) td:nth-child(1) { padding: 10px 20px 10px 0; border-right: 2px solid var(--color-gris-fonce); }

table.control-galerie-ligne tr:nth-child(2) td:nth-child(1) ul li { display: none; }
table.control-galerie-ligne tr:nth-child(2) td:nth-child(1) ul li.active { display: block; }

table.control-galerie-ligne tr:nth-child(2) td:nth-child(1) ul li p {
	font-size: 13px;
	line-height: 16px;
	letter-spacing: 1px;
	font-family: 'medium';
}

table.control-galerie-ligne tr:nth-child(2) td:nth-child(2) ul li { display: none; }
table.control-galerie-ligne tr:nth-child(2) td:nth-child(2) ul li.active { display: block; }

table.control-galerie-ligne tr:nth-child(2) td:nth-child(2) ul li p {
	text-align: right;
	font-size: 16px;
	line-height: 19px;
	text-transform: uppercase;
	letter-spacing: 1px;
	font-family: 'medium';
}

table.control-galerie-ligne tr:nth-child(3) td { text-align: right; }
table.control-galerie-ligne tr:nth-child(3) td ul { display: inline-block; }

table.control-galerie-ligne tr:nth-child(3) td ul li {
	display: inline-block;
	float: left;
	padding: 0 0 0 5px;
	cursor: pointer;
}

table.control-galerie-ligne tr:nth-child(3) td ul li p {
	font-size: 30px;
	color: var(--color-gris-clair);
}

table.control-galerie-ligne tr:nth-child(3) td ul li.active p { color: var(--color-selecteur-dispo); }
table.control-galerie-ligne tr:nth-child(3) td ul li:hover p { color: var(--color-gris-fonce); }

ul.galerie-photo-enligne {
	display: inline-block;
	position: relative;
	width: 100%;
	height: 500px;
}

ul.galerie-photo-enligne li {
	position: absolute;
}

ul.galerie-photo-enligne li.active {
	display: none;
	position: absolute;
	width: 100%;
	height: 100%;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}

ul.galerie-photo-enligne li.active {
	display: block;
}

ul.galerie-photo-enligne li span {
	position: absolute;
	display: inline-block;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}

ul.galerie-photo-enligne li span.a {
	top: 0px; left: 0px;
	width: 50%; height: 100%;
}

ul.galerie-photo-enligne li span.b {
	top: 0px; left: 50%;
	width: 50%; height: 50%;
}

ul.galerie-photo-enligne li span.c {
	top: 50%; left: 50%;
	width: 50%; height: 50%;
}

/* CHIFFRES */

p.chiffres-picto {
	position: relative;
	text-align: center;
	margin: 0 auto 20px auto;
	padding: 0;
}

p.chiffres-picto span.picto {
	display: block;
	position: relative;
	border: 2px solid var(--color-selecteur-dispo);
	width: 60px;
	height: 60px;
	background-color: white;
	margin: 0 auto;
}

p.chiffres-picto span.picto svg {
	display: inline-block;
	position: absolute;
	height: 26px;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

p.chiffres-picto span.picto svg .cls-1 { fill: var(--color-gris-fonce); }

p.chiffres-picto span.fleche {
	position: absolute;
	width: 16px;
	height: 16px;
	background-color: var(--color-selecteur-dispo);
	left: 50%;
	top: 100%;
	transform: translate(-50%, -50%) rotate(-45deg);
}

p.chiffres-temps {
	display: block;
	text-align: center;
	font-size: 20px;
	line-height: 24px;
	text-transform: uppercase;
	font-family: 'medium';
	letter-spacing: 2px;
}

p.chiffres-detail {
	display: block;
	text-align: center;
	font-size: 13px;
	line-height: 18px;
	text-transform: uppercase;
	letter-spacing: 2px;
	padding: 5px 0;
}

/* FOOTER */

#footer {
	box-shadow: inset 0 0 0 30px #265487;
}

#footer .logo-contact {
	width: 50%;
	max-width: 300px;
}

#footer span.mini {
	font-size: 60%;
	font-family: 'medium';
	letter-spacing: 2px;
}

#footer p.titre {
	font-size: 13px;
	line-height: 18px !important;
	font-family: 'light';
	text-transform: uppercase;
	letter-spacing: 2px;
	padding: 0 0 30px 0;
}


#footer table.equipe {
	position: relative;
	width: 100%;
}

#footer table.equipe tr td {
	vertical-align: middle;
}

#footer table.equipe tr td:nth-child(1) {
	width: 30%;
}

#footer table.equipe tr td:nth-child(1) img {
	position: relative;
	width: 100%;
}

#footer table.equipe p.nom {
	display: block;
	font-size: 26px;
	line-height: 34px;
	text-transform: uppercase;
	font-family: 'regular';
	letter-spacing: 2px;
	padding: 10px 20px;
}

#footer table.equipe p.fonction {
	display: block;
	font-size: 13px;
	line-height: 18px;
	text-transform: uppercase;
	letter-spacing: 2px;
	padding: 10px 20px;
}

/* SENZI */

#footer-senzi {
	border-top: 30px solid var(--color-projet-tonique);
}

p.logo-senzi {
	display: block;
	width: 100%;
}

a.senzi-promo {
	position: relative;
	display: block;
	font-family: 'regular';
	font-size: 0.7vw;
	line-height: 1.1vw;
	color: white;
	text-transform: uppercase;
	padding: 10px;
	margin-top: 20px;
	background-color: var(--color-projet-tonique);
	text-align: center;
}

a.senzi-promo span {
	position: absolute;
	top: 0%;
	left: 50%;
	background-color: var(--color-projet-tonique);
	width: 16px;
	height: 16px;
	transform: translate(-50%, -50%) rotate(-45deg);
}

a.senzi-site {
	display: block;
	font-family: 'medium';
	font-size: 0.7vw;
	line-height: 1.1vw;
	color: var(--color-gris-fonce);
	text-transform: uppercase;
	padding: 10px;
	text-align: center;
	box-shadow: inset 0 0 0 1px var(--color-gris-fonce);
	letter-spacing: 2px;
}

p.senzi-h1 {
	font-size: 1.8vw;
	line-height: 2.8vw;
	font-family: 'medium';
	color: var(--color-projet-tonique);
	padding: 0 0 30px 0;
}

p.senzi-h2 {
	font-size: 0.8vw;
	line-height: 1.2vw;
	font-family: 'regular';
	color: var(--color-gris-fonce);
	letter-spacing: 0.2vw;
	text-transform: uppercase;
}

table.senzi {
	width: 100%;
	table-layout: fixed;
}

table.senzi tr td p:nth-child(1) {
	display: inline-block;
	padding: 10px 20px;
	font-size: 2vw;
	line-height: 2.6vw;
	font-family: 'medium';
	color: var(--color-gris-fonce);
	text-align: center;
	text-transform: uppercase;
	box-shadow: inset 0 0 0 2px var(--color-gris-fonce);
	margin: 0 0 10px 0;
}

table.senzi tr td p:nth-child(1) span {
	font-size: 1vw;
	line-height: 1.6vw;
}

table.senzi tr td p:nth-child(2) {
	display: inline-block;
	font-family: 'regular';
	font-size: 0.8vw;
	line-height: 1.3vw;
	text-transform: uppercase;
	padding: 10px 40px 0 0;
}

#footer-adm p {
	font-family: 'regular';
	display: inline-block;
	font-size: 10px;
	line-height: 13px;
	text-transform: uppercase;
	letter-spacing: 2px;
	vertical-align: bottom;
}

#footer-adm p img {
	display: inline-block;
	width: 70px;
}

/* SELECTEUR */

#selecteur-visuel {
	position: relative;
}

#selecteur-visuel-image {
	position: relative;
}

#selecteur-visuel-image img {
	width: 100%;
}

#selecteur-visuel #selecteur-visuel-svg {
	top: 0px;
	position: absolute;
	width: 100%;
	height: 100%;
}

#selecteur-visuel #selecteur-visuel-svg svg { position: relative; }

#selecteur-visuel #selecteur-visuel-svg rect,
#selecteur-visuel #selecteur-visuel-svg #poly polygon { fill: rgba(0,0,0,0); opacity: 0; cursor: pointer; }
#selecteur-visuel #selecteur-visuel-svg circle { transition-duration: 0.4s; }
#selecteur-visuel #selecteur-visuel-svg circle.cercleDispo { fill: var(--color-selecteur-dispo); }
#selecteur-visuel #selecteur-visuel-svg circle.cercleReser { fill: var(--color-selecteur-reser); }
#selecteur-visuel #selecteur-visuel-svg circle.cercleVendu { fill: var(--color-selecteur-vendu); }
#selecteur-visuel #selecteur-visuel-svg g#circle polygon { fill: rgba(0,0,0,0); transition-duration: 0.4s; }

#selecteur-visuel #selecteur-visuel-svg g#circle g.survol circle.cercleDispo { stroke: var(--color-selecteur-dispo); stroke-width: 10; }
#selecteur-visuel #selecteur-visuel-svg g#circle g.survol circle.cercleReser { stroke: var(--color-selecteur-reser); stroke-width: 10; }
#selecteur-visuel #selecteur-visuel-svg g#circle g.survol circle.cercleVendu { stroke: var(--color-selecteur-vendu); stroke-width: 10; }

#selecteur-visuel #selecteur-visuel-svg g#circle g.survol polygon { fill: var(--color-gris-fonce); }

ul#selecteur-visuel-tables {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
}

ul#selecteur-visuel-tables table {
	position: absolute;
	border: 1px solid var(--color-gris-fonce);
	text-align: center;
	transform: translate(-50%, -170%);
}

ul#selecteur-visuel-tables table tr td:last-of-type { display: none; }
ul#selecteur-visuel-tables table.survol tr td:last-of-type { display: table-cell; }

ul#selecteur-visuel-tables table tr td {
	padding: 0.4vw 0.5vw;
	background-color: white;
	vertical-align: middle;
}

ul#selecteur-visuel-tables table tr td p {
	padding: 0;
}

ul#selecteur-visuel-tables table tr td:nth-child(1) {
	background-color: var(--color-gris-fonce);
}

ul#selecteur-visuel-tables table tr td:nth-child(3) { text-align: right; }

ul#selecteur-visuel-tables table tr td p {
	font-size: 0.9vw;
	line-height: 0.9vw;
	font-family: 'medium';
	padding: 0 6px;
}

ul#selecteur-visuel-tables table tr td p span {
	font-size: 0.5vw;
	line-height: 0.8vw;
	text-transform: uppercase;
	letter-spacing: 1px;
	font-family: 'regular';
}

ul#selecteur-visuel-tables table tr td:nth-child(1) p {
	color: white;
	font-family: 'medium';
	font-size: 1.4vw;
	line-height: 1.4vw;
	padding: 0 10px;
}

ul#selecteur-visuel-tables table:before {
	content: "";
	display: block;
	position: absolute;
	width: 16px;
	height: 16px;
	background-color: var(--color-gris-fonce);
	left: 50%;
	top: 100%;
	transform: translate(-50%, -50%) rotate(45deg);
	z-index: -1;
}

/* TABLEAU SELECTEUR INFO */

#selecteur-info table.info-lot {
	position: relative;
	width: calc(100% - 1px);
	table-layout: fixed;
	border: 1px solid var(--color-gris-fonce);
	text-align: center;
	margin-bottom: 20px;
	border: 0px;
}

#selecteur-info ul#selecteur-info-tableau li { display: none; }
#selecteur-info ul#selecteur-info-tableau li.active { display: block; }

#selecteur-info table.info-lot:before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 0px;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	transform: translate(-170%, -50%);
}

#selecteur-info table.info-lot.disponible:before  { background-color: var(--color-selecteur-dispo); }
#selecteur-info table.info-lot.réservé:before  { background-color: var(--color-selecteur-reser); }
#selecteur-info table.info-lot.vendu:before  { background-color: var(--color-selecteur-vendu); }

#selecteur-info table.info-lot:after {
	content: '';
	display : block;
	position: absolute;
	left: 100%;
	top: calc(50% - 10px);
	height : 0;
	width : 0;
	border-top : 10px solid transparent;
	border-bottom : 10px solid transparent;
	border-left : 10px solid var(--color-gris-fonce);
}

#selecteur-info table.info-lot tr td {
	padding: 0.2vw 0.1vw 0.4vw 0.1vw;
	background-color: white;
	vertical-align: middle;
	border: 2px solid var(--color-gris-fonce);
}

#selecteur-info table.info-lot tr td p {
	font-size: 0.9vw;
	line-height: 1.2vw;
	font-family: 'medium';
	padding: 0 6px;
}

#selecteur-info table.info-lot tr td p span {
	display: inline-block;
	font-size: 0.4vw;
	line-height: 0.5vw;
	text-transform: uppercase;
	letter-spacing: 0.05vw;
	font-family: 'regular';
} #selecteur-info table.info-lot tr td:last-of-type p span { line-height: 0.8vw; }

#selecteur-info table.info-lot tr td:last-of-type { transition-duration: 0.4s; }
#selecteur-info table.info-lot tr td:last-of-type:hover {
	background-color: var(--color-gris-light);
	cursor: pointer;
}

#selecteur-info table.info-lot tr:nth-child(1) td:nth-child(1) {
	background-color: var(--color-gris-fonce);
	padding: 0.4vw;
}

#selecteur-info table.info-lot tr:nth-child(1) td:nth-child(1) p {
	color: white;
	font-family: 'medium';
	font-size: 1.4vw;
	line-height: 1.4vw;
	padding: 0 10px;
}

#selecteur-info svg { display: block; width: 26px; vertical-align: bottom; padding-top: 4px; margin: 0 auto; }
#selecteur-info svg .cls-1 { fill: var(--color-gris-fonce); }

/* AXO */

.survol-selecteur {
	margin-top: -10vw;
	margin-bottom: -3vw;
}

.decalage-axo {
	transform: translate(0, -5vw);
}

ul.selecteur-axo {
	display: inline-block;
	width: 100%;
	margin: 0%;
}

ul.selecteur-axo li img {
	width: 100%;
}

ul.selecteur-axo li {
	position: relative;
}

ul.selecteur-axo li { display: none; }
ul.selecteur-axo li.active { display: block; }

ul.selecteur-axo li span {
	position: absolute;
	width: 50px;
	height: 50px;
	background-color: white;
	box-shadow: inset 0 0 0 1px var(--color-gris-fonce);
	z-index: 1;
	cursor: pointer;
}

ul.selecteur-axo li span:before {
	content: "";
	position: absolute;
	top: 100%;
	left: calc(50% - 10px);
	display : inline-block;
 	height : 0;
 	width : 0;
 	border-top : 10px solid var(--color-gris-fonce);
 	border-right : 10px solid transparent;
 	border-left : 10px solid transparent;
}

ul.selecteur-axo li span svg {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

ul.selecteur-axo li span svg .cls-1 { fill: var(--color-gris-fonce); }

table#selection-tableau {
	width: 100%;
}

table#selection-tableau tr td {
	vertical-align: middle;
}

table#selection-tableau tr td li.bull {
	display: inline-block;
	float: left;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background-color: var(--color-gris-clair);
	margin: 0.1vw;
	transition-duration: 0.4s;
	cursor: pointer;
	font-family: 'medium', sans-serif;
	text-align: center;
	font-size: 10px;
	line-height: 21px;
	color: white;
}

table#selection-tableau tr td li.bull:hover { background-color: var(--color-gris-fonce); }

table#selection-tableau tr td li.bull.disponible.active { background-color: var(--color-selecteur-dispo); }
table#selection-tableau tr td li.bull.réservé.active { background-color: var(--color-selecteur-reser); }
table#selection-tableau tr td li.bull.vendu.active { background-color: var(--color-selecteur-vendu); }

table#selection-tableau tr td:last-of-type { cursor: pointer; }
table#selection-tableau tr td:last-of-type p {
	display: inline-block;
	vertical-align: middle;
	text-align: right;
	float: right;
	letter-spacing: 1px;
	font-size: 12px;
	line-height: 12px;
	text-transform: uppercase;
}

table#selection-tableau tr td:last-of-type p svg {
	display: inline-block;
	width: 8px;
	margin: 0 0 0 10px;
	padding: 0px;
	transition-duration: 0.4s;
}

table#selection-tableau tr td:last-of-type:hover p svg { margin: 0 0 0 20px; }

/* FILTRES */

#selecteur-filtres {
	position: relative;
	width: 100vw;
	padding: 0 0 10px 0;
}

table#tableau-filtres {
	width: 90%;
	margin: 0 auto;
	text-align: center;
}

table#tableau-filtres tr td {
	vertical-align: middle;
}

table#tableau-filtres tr.left { text-align: left; }
table#tableau-filtres tr .center { text-align: center; }
table#tableau-filtres tr .right { text-align: right; }

table#tableau-filtres tr td p svg {
	display: inline-block;
	width: 24px;
	vertical-align: middle;
}

table#tableau-filtres ul {
	display: inline-block;
}

table#tableau-filtres ul li {
	display: inline-block;
	vertical-align: middle;
	padding: 0 10px;
	border-left: 2px solid var(--color-gris-fonce);
}

table#tableau-filtres ul#filtre-dispo li { border-left: none; }

table#tableau-filtres ul li:first-of-type { border-left: none; }

table#tableau-filtres ul li p {
	display: inline-block;
	vertical-align: middle;
	font-size: 20px;
	line-height: 20px;
	text-transform: uppercase;
	letter-spacing: 1px;
	font-family: 'medium', sans-serif;
}

table#tableau-filtres ul li.titre-filtre p {
	font-size: 0.7vw;
	text-transform: uppercase;
	letter-spacing: 0.1vw;
	font-family: 'regular', sans-serif;
}

table#tableau-filtres ul li span {
	display: inline-block;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background-color: var(--color-gris-clair);
}

table#tableau-filtres p a {
	display: block;
	font-size: 1vw;
	line-height: 1vw;
	letter-spacing: 0.1vw;
	text-transform: uppercase !important;
	font-family: 'medium', sans-serif;
}

table#tableau-filtres p.filtre-legende {
	display: none !important;
	font-size: 2vw;
	line-height: 2vw;
	letter-spacing: 0.3vw;
}

table#tableau-filtres ul li.filtre-dispo.active span { background-color: var(--color-selecteur-dispo); }
table#tableau-filtres ul li.filtre-reser.active span { background-color: var(--color-selecteur-reser); }
table#tableau-filtres ul li.filtre-vendu.active span { background-color: var(--color-selecteur-vendu); }

table#tableau-filtres ul li.switch { cursor: pointer; }
table#tableau-filtres ul li.switch p { cursor: pointer; color: var(--color-gris-clair); transition-duration: 0.4s; }
table#tableau-filtres ul li.switch.active p { cursor: pointer; color: var(--color-gris-fonce); }

.hideSvg { display: none; }
.hidePiece { display: none; }
.hideEtage { display: none; }
.hideOrientation { display: none; }
.hideDisponibilite { display: none; }

/* GALERIE IMAGE */

#galerie-image {
	position: fixed;
	top: 0px;
	width: 100vw;
	height: 100vh;
	z-index: 10000;
	transform: translateY(-200vh);
	transition-duration: 0.3s;
	background-color: var(--color-gris-fonce);
}

#galerie-image.open {
	transform: translateY(0vh);
}

#galerie-image ul#images {
	position: absolute;
	display: block;
	top: 0px;
	width: 100%;
	height: 100%;
	background-color: var(--color-gris-fonce);
}

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

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

#galerie-image ul#vignettes {
	position: absolute;
	text-align: center;
	bottom: 0px;
	display: table;
	width: 80%;
	margin: 0 10%;
	height: 80px;
	border: none;
	transform: translateY(3px);
}

#galerie-image ul#vignettes li {
	display: inline-flex;
	width: 60px;
	height: 60px;
	margin: 0 10px;
	background-size: cover;
	background-position: center;
	transition-duration: 0.4s;
	cursor: pointer;
	border: none;
	border-radius: 50%;
	box-shadow: inset 0 0 0 5px var(--color-gris-fonce);
}

#galerie-image ul#vignettes li:hover {
	box-shadow: inset 0 0 0 5px var(--color-selecteur-dispo);
}

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

#galerie-image #bouton-avant, #galerie-image #bouton-apres {
	position: absolute;
	display: block;
	bottom: 20px;
	width: 60px;
	height: 60px;
	border-radius: 50%;
	background-color: var(--color-gris-fonce);
	cursor: pointer;
	background-position: 50% center;
	background-size: 30px;
	transition-duration: 0.4s;
	box-shadow: inset 0 0 0 5px var(--color-gris-fonce);
}

#galerie-image #bouton-avant:hover, #galerie-image #bouton-apres:hover { box-shadow: inset 0 0 0 5px var(--color-projet-tonique) }

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

div.bouton-close {
	position: absolute;
	top: 20px;
	right: 20px;
	width: 60px;
	height: 60px;
	background-color: var(--color-gris-fonce);
	background-image: url('../svg/picto-close.svg');
	background-size: 30px;
	background-position: center;
	box-shadow: inset 0 0 0 5px var(--color-gris-fonce);
	cursor: pointer;
	transition-duration: 0.4s;
	border-radius: 50%;
}

div.bouton-close:hover {
	box-shadow: inset 0 0 0 5px var(--color-projet-tonique);
}

/* ANIMATION */

.apparition-bas-haut {
	margin-top: 200px;
	opacity: 0;
	transition-duration: 0.8s;
	transition-timing-function: ease-out;
}

.apparition-bas-haut.visible {
	margin-top: 0px;
	margin-bottom: 0px;
	opacity: 1;
}

.transDelai-1 { transition-delay: 0.2s; }
.transDelai-2 { transition-delay: 0.4s; }
.transDelai-3 { transition-delay: 0.6s; }
.transDelai-4 { transition-delay: 0.8s; }
.transDelai-5 { transition-delay: 1.0s; }

.animation-texte {
	opacity: 0;
	transition-duration: 0.6s;
}

.animation-texte.visible-text {
  opacity: 1;
}

/* PLAN DE MASSE */

ul#legende-masse {
	width: 80%;
	margin: 0 10%;
}

ul#legende-masse li {
	width: 100%;
}

ul#legende-masse li p {
	text-transform: uppercase;
	color: var(--color-gris-fonce);
	font-family: 'medium', sans-serif;
	margin: 0.2vh 0;
}

ul#legende-masse li p span {
	display: inline-block;
	width: 30px;
	height: 30px;
	vertical-align: middle;
	margin: 0 20px 0 0;
	text-align: center;
	font-family: 'medium', sans-serif;
}

ul#legende-masse li p span.round { border-radius: 50%; }
ul#legende-masse li p span.border {  box-shadow: inset 0 0 0 1px var(--color-gris-fonce); }

ul#legende-masse li:nth-child(1) p span { background-color: #adcf77; }
ul#legende-masse li:nth-child(2) p span { background-color: #a1b776; }

ul#legende-masse li:nth-child(3) p span { background-color: #505735; }
ul#legende-masse li:nth-child(4) p span { background-color: #667246; }
ul#legende-masse li:nth-child(5) p span { background-color: #809259; }
ul#legende-masse li:nth-child(6) p span { background-color: #eef4da; }
ul#legende-masse li:nth-child(7) p span { background-color: #eceaea; }
ul#legende-masse li:nth-child(8) p span { background-color: #cfcfa7; }

/* SCROLL ANIM */

.scroll-anim-reference {
	position: relative;
	/*box-shadow: inset 0 0 0 3px pink;*/
}

ul.scroll-anim {
	display: block;
	position: relative;
	/*box-shadow: inset 0 0 0 3px yellow;*/
}

ul.scroll-anim li {
	display: block;
	position: absolute;
	width: 100%;
	top: 0px;
	left: 0px;
	opacity: 1;
	transition-duration: 0s;
	/*box-shadow: inset 0 0 0 3px red;*/
}

ul.scroll-anim li.active {
	opacity: 1;
}

ul.scroll-anim li img.fond {
	position: relative;
	width: 100%;
	height: 100%;
	opacity: 0;
	transform: translate(0%, 0vh);
	transition-duration: 1s;
	/*border: 3px solid blue;*/
}

ul.scroll-anim li.active img.fond {
	opacity: 1;
	transform: translate(5%, 0vh);
	transition-duration: 1s;
}

ul.scroll-anim li img.survol {
	position: relative;
	width: 100%;
	height: 100%;
	opacity: 0;
	transform: translate(0vw, 0vh);
	transition-duration: 1s;
}

ul.scroll-anim li.active img.survol {
	opacity: 1;
	transform: translate(0vw, 0vh);
	transition-duration: 1s;
}

ul.scroll-anim li span {
	display: block;
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
}

/* GALERIE AXO */

#galerie-axo-photo, #galerie-axo-video, #galerie-axo-round {
	position: fixed;
	top: -200vh;
	left: 0px;
	width: 100vw;
	height: 100vh;
	box-shadow: inset 0 0 0 50px var(--color-gris-fonce);
	background-color: white;
	z-index: 10;
	transition-duration: 1s;
	background-size: cover;
	background-position: 50%;
	background-color: var(--color-gris-fonce);
}

#galerie-axo-photo.open, #galerie-axo-video.open, #galerie-axo-round.open {
	top: 0vh;
}

#galerie-axo-photo a.fermeture, #galerie-axo-video a.fermeture, #galerie-axo-round a.fermeture {
	position: absolute;
	top: 20px;
	right: 20px;
	width: 60px;
	height: 60px;
	background-color: var(--color-gris-fonce);
	background-image: url('../svg/picto-close.svg');
	background-size: 30px;
	background-position: center;
	box-shadow: inset 0 0 0 5px var(--color-gris-fonce);
	cursor: pointer;
	transition-duration: 0.4s;
	border-radius: 50%;
}

#galerie-axo-photo a.fermeture:hover, #galerie-axo-video a.fermeture:hover, #galerie-axo-round a.fermeture:hover {
	box-shadow: inset 0 0 0 5px var(--color-projet-tonique);
}

#galerie-axo-round iframe {
	position: absolute;
	width: calc(100% - 100px);
	height: calc(100% - 100px);
	top: 50px;
	left: 50px;
	z-index: -1;
	box-shadow: inset 0 0 0 50px var(--color-gris-fonce);
}

#galerie-axo-video video {
	position: absolute;
	width: 100%;
	height: 100%;
	z-index: -1;
}

/* GOOGLE */

.grecaptcha-badge { display: none; }
