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

/* MOBIL */
.mobilSupr { display: none !important; }
.justMobil { display: block !important; }
.mobilSuprTable { display: none !important; }
.justMobilTable { display: table !important; }
.justMobilInline { display: inline-block !important; }

/* SECTION */

.section {
	height: auto;
}

.section.demi-height {
	display: block;
	height: 50vh;
}

.section.min-height {
	min-height: 100vh;
}

.section-row, .section-row.big {
	position: relative;
	top: 0%;
	right: 0px;
	transform: translate(0, 0);
	display: flex;
	flex-direction: column;
	width: 80vw;
	margin: 0 auto;
	padding: 10vh 10vw;
	gap: 2vw;
	background-color: var(--color-gris-fonce);
	overflow: hidden;
}

.section-row.open {
	transform: translate(0, 0%);
}

.section-row .section-col {
	transform: translate(0vw, 0);
}

.section-col:nth-of-type(1) { width: 100%; }

.row-contenu { flex-direction: column; }
.row-contenu .col { padding: 1vh 0; }


.hideopen, .hideclose, a.en-savoir-moins {
	display: none;
}

a.en-savoir-plus,
p.cv-adress a,
a.btn-inline {
	padding: 1vh 4vw;
	font-size: 2.4vw;
	line-height: 2.8vw;
}

a.en-savoir-plus:hover,
p.cv-adress a:hover,
a.btn-inline:hover {
	padding: 1vh 5vw;
}

.btn-inline span {
	width: 4vw;
	height: 2vw;
	margin: 0 0 0.2vw 2vw;
}

a.en-savoir-plus {
	display: none;
}

/* H & P */

h3 {
	font-size: 8vw;
	line-height: 10vw;
}

p.legende {
	font-family: 'SansMedium', sans-serif;
	font-size: 4.5vw;
	line-height: 7vw;
}

p.normal {
	font-size: 3vw;
	line-height: 6vw;
	margin-top: 2vh;
	text-align: justify;
}

p.titre {
	text-align: left;
	margin: 2vh 0;
	font-size: 2.8vw;
	line-height: 4vw;
	letter-spacing: 1.2vw;
}

a.btn {
	font-family: 'SansMedium', sans-serif;
	display: block;
	text-transform: uppercase;
	background-color: var(--color-projet-tonique);
	color: var(--color-gris-fonce);
	transition-duration: 0.4s;
	cursor: pointer;
	font-size: 2.6vw;
	line-height: 3.4vw;
	letter-spacing: 0.1vw;
	padding: 0.6vh 2vw;
	margin: 0 4vw;
	text-align: center;
	transition-duration: 0.4s;
}

a.btn:hover {
	opacity: 0.4;
}

p.titre-distances {
	font-size: 5.2vw;
	line-height: 7vw;
	margin: 3vh 0 3vh 0;
}

p.distances {
	font-size: 3.65vw;
	line-height: 6vw;
	letter-spacing: 0.05vw;
	padding: 1vh 0 1vh 5vw;
	border-left: 1px solid var(--color-projet-tonique);
}

p.cv-client {
	font-size: 2.8vw;
	line-height: 3vw;
	letter-spacing: 1vw;
	padding: 2vh 0;
}

p.cv-phrase {
	font-size: 4.3vw;
	line-height: 6vw;
	padding: 3vh 0;
}

/* IMG */

.logo-vb {
	display: none;
}

.picto-small {
	width: 9vw;
	margin: 0 7vw 0 0;
}

.picto-medium { width: 10vw; margin: 8vh 0 1vh 0; }

.contact-img { height: 5vh; }

/* MENU PRINCIPAL */

#navigation {
	box-shadow: 0 0 10px 10px rgba(0,0,0,0.4);
}

#navigation .navigation-section {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 1vh 2vw;
}

#navigation .navigation-section:nth-last-child(-n+2) {
  display: none;
}

ul.menu-principal {
	display: table;
	width: 100%;
	text-align: center;
}

ul.menu-principal li {
	display: inline-block;
	margin: 0.5vh auto;
}

ul.menu-principal li.separation {
	display: none;
}

#menu-sections a {
	font-size: 2.6vw;
	line-height: 3.4vw;
	letter-spacing: 0.1vw;
	padding: 0.6vh;
	margin: 0 0.6vw;
	text-align: center;
}

#menu-sections tr:last-of-type td:last-of-type a { margin: 0 0.6vw; }

#menu-disponibilites ul.dispo li p {
	font-size: 2.6vw;
	line-height: 2.8vw;
	letter-spacing: 0.1vw;
}

#menu-disponibilites ul.dispo li span {
	width: 5vw;
	height: 5vw;
	margin: 0 1vw 0 2vw;
}

#menu-disponibilites a {
	font-size: 2.0vw;
	line-height: 2.6vw;
	letter-spacing: 0.1vw;
	padding: 1vw 2vw;
}

#menu-mode {
	margin: 0 0 0 10vw;
}

#menu-mode img {
	display: inline-block;
	width: 8vw;
	margin: 0 0.5vw;
	transition-duration: 0.4s;
}

/* VIGNETTES */

#galerie-vignettes {
	display: none;
}

/* SCROLL */

#scroll {
	position: fixed;
	top: 50%;
	left: 0px;
	z-index: 1000;
	transform: translate(0, -50%);
	transition-duration: 1s;
}

#scroll li a {
	font-size: 0vw;
	color: rgba(0,0,0,0);
	letter-spacing: 0.3vw;
	padding: 2vw 4vw;
	transform: translate(calc(-100% + 2vw), 0);
	height: 3vh;
	background-color: var(--color-projet-corpo);
}

#scroll li a.active {
	transform: translate(calc(-100% + 2vw), 0);
}


#scroll li a span {
	display: none;
}

#scroll li a.static {
	width: 8vw;
	height: 8vw;
}

/* SECTION */

.section-contenu table tr td:nth-child(1) { display: none; }
.section-contenu table tr td:nth-child(2) { width: 80vw; }
.section-contenu table tr td:nth-child(3) { display: none; }
.section-contenu table tr td:nth-child(4) { width: 80vw; }

.section-block {
	padding: 2vh 1vw;
}

.section-contenu table tr td {
	display: block;
}

table p.picto img {
	display: block;
	width: 6vw;
	margin: 2vh 0;
}

/* MENU MOBIL */

#navigation-mobil {
	display: table;
	background-color: var(--color-gris-fonce);
	width: 100%;
	table-layout: fixed;
}

#navigation-mobil li {
	display: table-cell;
	vertical-align: middle;
	padding: 2vh 0;
}

#navigation-mobil li p {
	text-align: center;
}

#navigation-mobil li p img {
	display: inline-block;
	width: 80%;
}

#navigation-mobil li:nth-child(3) { background-color: var(--color-bleu-cardis); }
#navigation-mobil li:nth-child(4) { background-color: var(--color-projet-tonique); }

body.index #navigation-mobil li:nth-child(2) { display: none; }
body.selecteur #navigation-mobil li:nth-child(2) { display: table-cell; }

#navigation-mobil a.retour-site {
	display: inline-block;
	font-size: 1.6vw;
	line-height: 2.2vw;
	letter-spacing: 0.2vw;
	text-transform: uppercase;
	box-shadow: inset 0 0 0 1px var(--color-projet-tonique);
	padding: 0.8vh 1.2vw;
}

/* GAL MOBIL */

ul#control-gal-mobil {
	display: table;
	table-layout: fixed;
	position: absolute;
	top: 0;
	left: 50%;
	width: auto;
	transform: translate(-50%, -150%);
	transition-duration: 0.4s;
}

ul#control-gal-mobil.off {
	transform: translate(500%, -150%);
}

ul#control-gal-mobil li {
	display: table-cell;
}

ul#control-gal-mobil li a {
	display: inline-block;
	font-family: 'SansMedium', sans-serif;
	font-size: 2.6vw;
	line-height: 3vw;
	text-transform: uppercase;
	padding: 2vw 2vw;
	margin: 0.5vw;
	color: var(--color-gris-fonce);
	background-color: var(--color-projet-tonique);
	letter-spacing: 0.4vw;
	transition-duration: 0.4s;
}

ul#control-gal-mobil li a:hover {
	padding: 2vw 3.5vw;
}

/* AXONOMETRIES */

#galerie-video a.close-vid {
  top: 85vh;
  padding: 2vw 3vw;
  font-size: 2vw;
  line-height: 3vw;
  letter-spacing: 1vw;
}

#galerie-video a.close-vid:hover {
  padding: 2vw 4vw;
}

/* ACTU */

.bloc-droit {
  justify-content: start;
  margin-top: 10vh;
}

.bloc-droit div.actu:nth-child(1) { display: none; }
.bloc-droit div.actu:nth-child(2) { width: calc(100% - 8vw); padding: 1vh 2vw 1vh 6vw; }

table.contenu-actu tr td {
  padding: 2vw;
}

.bloc-droit {
  width: 90vw;
}

p.actu-0 {
  font-size: 2.6vw;
  line-height: 3.4vw;
  letter-spacing: 2.4vw;
}

p.actu-1 {
  font-size: 6vw;
}

p.actu-2 {
  font-size: 3vw;
  line-height: 4vw;
}

table.contenu-actu p a.go {
  font-size: 2.7vw;
  line-height: 3.8vw;
  letter-spacing: 0vw;
}

a.hide-actu {
  width: 6vw;
}

a.hide-actu span {
	width: 3vw;
	height: 3vw;
}

.bloc-droit div.actu.hide {
	transform: translate(calc(100% - 8vw), 0);
}
