@font-face {
	font-family: 'routed-narrow';
	src: url('./fonts/routed-gothic-narrow.ttf');
}

@font-face {
	font-family: 'routed-regular';
	src: url('./fonts/routed-gothic.ttf');
}



/* :root{

	--color1 : hsl(0, 0%, 84%);
	--color2 : rgb(84, 82, 82);
	--color3 : rgb(119, 106, 106);
	--leftTxtPie: 2vh;
	--rightTxtPie: 2vh;
	--mtxtPie : 1vh;
	--leftCtnP: 4vh;
	--bttmCtnP: 4vh;
	
} */


html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;

}

.disable-scrollbars::-webkit-scrollbar {
	background: transparent; /* Chrome/Safari/Webkit */
	width: 0px;
  }
	  
  .disable-scrollbars {
	scrollbar-width: none; /* Firefox */
	-ms-overflow-style: none;  /* IE 10+ */
  }

body{
	width: 100vw;
	height: 100vh;
	overflow-x: hidden;
	font-family: 'routed-narrow', sans-serif;
	background-color: var(--color1);
	color: var(--color3);
}
li{
	list-style-type: none;
}
a{
	text-decoration: none;
	color: inherit;
	cursor: pointer;
	position: relative;
}
#siteTitle{

	z-index: 100;
	position: relative;

}
/*//////////////////////////////////// Home ////////////////////////////////////////*/

#home{
	width: 100vw;
	box-sizing: border-box;
	padding: 5px;
}

/*//////////////////////////////////// Menu ////////////////////////////////////////*/

#menu{

	width: fit-content;
	max-height: 8vw;
	display: flex;
	flex-direction: row;
	gap: 1vw;
	z-index: 2;
	box-sizing: border-box;
	padding: 1vh;
	align-items: center;
	position: fixed;
	line-height: 1.3;
}
#menu li :hover {
	color: var(--color3);
}
#menu ul {
	width: 7vw;
	font-size: 1.2vw;
}

#logo{
	max-height: 7vh;
	width: 18vw;
	top: -0.5vw;
	position: relative;
}
/*//////////////////////////////////// Menu home ////////////////////////////////////////*/

#menuHome {

	display: grid;
	grid-template-columns: repeat(4, 12vw);
	width: fit-content;
	position: absolute;
	bottom: 2vh;
	left: 2vw;
	gap: 4vw;
	height: fit-content;
	align-items: center;


}
#menuHome li {
	background-color: white;
	width: fit-content;
	mix-blend-mode: multiply;
	height: fit-content;

}
#menuHome a {
	position: relative;
	width: fit-content;
	height: 100%;
	display: flex;
	flex-direction: row;
	align-items: flex-end;
	justify-content: center;
	
}
#menuHome span {
	display: block;
	position: fixed;
	visibility: hidden;
	bottom: 1vh;
	right: 1vw;
	font-size: 4vw;
}
#menuHome img{
	width: auto;
	height: 18vh;
	position: relative;
	display: block;
	align-self: flex-end;
	transition: ease-in 0.15s;
}
#menuHome li div{
	position: absolute;
	mix-blend-mode: lighten !important;
	pointer-events: none;
	cursor: pointer;
	
}
#menuHome li:hover a > img{
	filter: invert(1);
}
#menuHome li:hover a > span{
	visibility: visible;
	color: var(--color2);
}
/*//////////////////////////////////// Pièces ////////////////////////////////////////*/
#pieces{
	display: flex;
	flex-direction: row;
	width: 100vw;
	height: 90vh;
	align-items: flex-end;
	position: absolute;
	bottom: 0px;
}

#thumbs{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 5px;
	box-sizing: border-box;
	padding: 5px;
	overflow-y: auto;
	width: 50vw;
	height: 60vh;
	align-items: flex-end;
}
#previews{
	position: absolute;
	right: 5px;
	bottom: 5px;
	width: 50vw;
	height: 90vh;
}
.preview {
	width: fit-content;
	height: fit-content;
}
.previewPiece{
	position: relative;
	width: 10vw;
	height: 13vw;
	border-radius: 20%;
	overflow: hidden;
	display: block;
}
.previewPiece>*{
	position: absolute;
}
.previewPiece img{
	max-width: 100%;
	height: auto;
	filter: brightness(90%) grayscale(100%) contrast(1000%)  invert(0);
	transition: ease 0.5s;
	object-fit: fill;
}

.bigP{
	max-width: 50vw;
	max-height: 80vh;
	position: relative;
	bottom: 0px;
	right: 0px;
	border-radius: 5vh;
}

.duotoneA{
	background-color: var(--color1);
	mix-blend-mode: darken;
	display: block;
	z-index: 2;
	width: 100%;
	height: 100%;
	visibility: visible;
}

.duotoneB{
	background-color: var(--color2);
	mix-blend-mode: lighten;
	display: block;
	z-index: 1;
	width: 100%;
	height: 100%;
	visibility: visible;
}

#pTitle{
	position: absolute;
	bottom: 1vh;
	right: 4vh;
	font-size: 3vw;
	width: fit-content;
	height: fit-content;
	z-index: 3;
	color: var(--color2);
}
.pieceTitleM{
	display: none;
}

#containerImagePiece{
	
	box-sizing: border-box;
	padding: 10px;
	position: relative;
	width: 100vw;
	top: 0px;
	overflow: hidden;
}

#imagePiece{

	position: absolute;
	overflow: hidden;
	bottom: 0px;
	/* pointer-events: none; */
	width: 80%;
	display: flex;
	flex-wrap: wrap;
	right: 0px;
	box-sizing: border-box;
	padding: 20vh 3vh 3vh 3vh ;
	line-height: 1.3;
	transform-origin: bottom center;
}
.imgPCntr{
	width: fit-content;
	height: auto;
	position: relative;
	pointer-events: auto;

}
#imagePiece img{
	max-height: 60vh;
	max-width: 30vw;
	
}
#imagePiece video {
	width: 75vw;
	z-index: 6;
	box-shadow: 0px 0px 15px var(--color2);
	/* pointer-events: auto; */
	margin-bottom: 5vh;
	
}
/* .imgPCntr:hover > img{

	cursor: pointer;
	
} */

#contain{
	overflow-y: auto;
	overflow-x: hidden;
	height: 100vh;
	width: 100vw;
	position: absolute;
	top: 0px;
	z-index: 1;
}

.pieceTexte{
	position: fixed;
	bottom: calc(var(--bttmCtnP) - var(--mtxtPie));
	left: calc(var(--leftCtnP) - var(--mtxtPie));
	font-size: 1.3vw;
	width: 30vw;
	max-height: 40vw;
	z-index: 5;
	text-align: center;
	font-family: 'routed-regular';

}

.pieceCredits{
	position: absolute;
	color: var(--color2);
	height: fit-content;
	align-self: flex-end;
	box-sizing: border-box;
	top: 3vh;
	right: 15%;
	width: 70%;
}


#containTextPiece{
  width: auto;
  height: fit-content;
  position: fixed;
  left: calc(var(--leftCtnP) - var(--mtxtPie));
  bottom: calc(var(--bttmCtnP) - var(--mtxtPie));
  display: flex;
  flex-direction: column;
  align-items: center;
  z-index: 2;
}
#containTextPiece .box{
	background-color: var(--color1);
	border-radius: calc(var(--leftCtnP) * 0.5);
	height: fit-content;
	width: fit-content;
	font-size: 1.3vw;
	color: transparent;
	font-family: 'routed-regular';
	padding: var(--mtxtPie);
	margin: calc(var(--mtxtPie) * -1);
}





/*//////////////////////////////////// Agenda   /////////////////////////////////////////*/



#agenda{
	font-size: 1.7vw;
	display: grid;
	width: 88vw;
	height: 76vh;
	position: absolute;
	overflow: hidden;
	left: 6vw;
	top: 16vh;
	gap: 3vw;
	grid-template-columns: 55vw 30vw;
	box-sizing: border-box;
	/* background-color: lightblue; */
}
#agenda>div{
	display: flex;
	flex-direction: column;
	align-items: center;
	overflow-y: auto;
	overflow-x: hidden;
}

#aVenir{
	height: 2vw;
	line-height: 3vw;
}
.colAg{
	display: flex;
	flex-direction: column;
	gap: 1vh;
	box-sizing: border-box;
	padding: 2vw 0px;
	align-items: center;
	width: fit-content;
	height: fit-content;
	scrollbar-width: none;
	line-height: 1.3;
}
.colAg::-webkit-scrollbar { 
    display: none;  /* Safari and Chrome */
}
#ps{
	color: var(--color3);
	opacity: 0.75;
}
.passe{
	color: var(--color3);
	opacity: 0.75;
	
}
.passe .ev{
	border-bottom: 1px solid var(--color3) !important;
	font-size: 1vw;
	height: 2vw;
	width: 30vw;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	opacity: 0.75;
}
.avenir .ev{
	width: 55vw;
	height: 3vw;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-between;
}
.avenir .ev > .infoEvent{
	width: 100%;
	display: grid;
	grid-template-columns: auto auto 13% 10% 2.5%;
	align-items: center;
	z-index: 5;
	gap: 1%;
	
}
.infoEvent .date, .infoEvent .heure, .infoEvent .lieu {
	justify-self: right;
} 
.infoEvent .date, .infoEvent .heure{ 
	font-size: 1vw;
	justify-self: center;
}
.infoEvent button {
	border: 0px;
	border-radius: 30%;
	display: flex;
	align-items: baseline;
	cursor: pointer;
	width: 1.5vw;
	align-self: center;
	padding: 5%;
	justify-content: space-around;
	background-color: var(--color4);
}

.colAg .ev{
	
	border-bottom: 1px solid black;
	box-sizing: border-box;
	padding: 0px 0.5vw;
	transition: ease 0.2s;
}
.colAg button span{
	box-sizing: border-box;
	padding: 5%;
	font-size: 1vw;
}

.chidden{
	visibility: hidden;
	opacity: 0;
	transition: opacity ease-out 0.1s, visibility ease-out 0.2s;
	
}
.cvisible{
	visibility: visible !important;
	opacity: 1;
	transition: opacity ease-in 0.2s;
	
}
.piecePreview{
	height: 100%;
	width: 100%;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	position: absolute;
	align-items: flex-end;
}

.pieceTitle{
	z-index: 10;
	height: fit-content;
	box-sizing: border-box;
	padding: 1vh 0;
	font-size: 2.5vw;
	max-width: 40vw;
}
.infoEvText{
	opacity: 0;
	transition: ease 0.5s;
	box-sizing: border-box;
	padding: 2vh;
}
.infoEvText p {
	font-size: 1.2vw;
	margin: 1vh 0;
	font-family: 'routed-regular';
}

/*/////////////////////////////// Le collectif  //////////////////////////////////////////*/


#mainCol{
	display: grid;
	grid-template-columns: 8vw 82vw;
	width: 90vw;
	height: 80vh;
	box-sizing: border-box;
	position: fixed;
	top: 15vh;
	left: 3vw;
	z-index: 1;
	gap: 1vw;
	
}
#colContent{
	display: grid;
	grid-template-columns: 40% 60%;
	grid-template-rows: 5vh 75vh;
	height: 100%;
	box-sizing: border-box;
	position: relative;
	gap: 2vw;
	grid-column: 2/3;
	width: 79vw;
	
}
#colContent>img{
	max-height: 80vh;
	justify-self: left;
	border-radius: 10%;
	grid-row: 1/3;
	max-width: 100%;
	animation: 'appear' 0.5s;
}

@keyframes appear {
	from{
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

#colLink{
	position: relative;
	z-index: 3;
}
.bd{
	grid-column: 2/3;
	grid-row: 1/2;
	position: absolute;
	right: 0px;
	top: 0px;
	width: fit-content;
	height: fit-content;
}
.nom{
	grid-column: 2/3;
	grid-row: 1/2;
	position: absolute;
	left: 0px;
	top: 0px;
	width: fit-content;
	height: fit-content;
}
.bio{
	grid-column: 2/3;
	grid-row: 2/3;
	position: relative;
	left: 0px;
	top: 0px;
	width: fit-content;
	height: fit-content;
	font-size: 2vh;
	line-height: 2.5vh;
	text-align: center;
	box-sizing: border-box;
	padding: 2vw;
	padding-bottom: 3vw;
	font-family: 'routed-regular', sans-serif;
	
}
#members{
	display: flex;
	flex-direction: column;
	gap: 1.5vh;
	grid-column: 1/2;
	grid-row: 1/2;
	height: fit-content;
}

#members li {
	display: flex;
	flex-direction: column;
	align-items: center;
	font-size: 0.8vw;
	height: fit-content;
	white-space: nowrap;

}
#members li a {
display: flex;
position: relative;
height: fit-content;
}
#members li a div{
	position: absolute;
	border-radius: 15%;
}

#members img{
	height: auto;
	max-height: 13vh;
	border-radius: 15%;
	filter: brightness(115%) grayscale(100%) contrast(1000%)  ;

	
}

.memInfo{
	height: 100%;
	overflow-y: scroll;
	grid-row: 2/3;
	box-sizing: border-box;
	padding-bottom: 5vh;
}
.memInfo .overf{
	width: 100%;
	position: fixed;
	bottom: 0px;
	height: 10px;
	background-color: var(--color1);
	box-shadow: 0px -2px 24px 21px var(--color1);
}
#cont{
	grid-column: 2/3;
	grid-row: 2/3;
	align-self: flex-end;
	justify-self: start;
}

#contact{
	grid-column: 2/3;
	grid-row: 2/3;
	align-self: flex-end;
	justify-self: end;
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	justify-content: center;
	width: 100%;
	font-size: 1.7vw;
	margin-bottom: 5vh;
}
#contact li {
	display: grid;
	/* flex-direction: row; */
	box-sizing: border-box;
	margin: 0vh 2vw 1vh 2vw;
	grid-template-columns: 40% 60%;
	
}
#contact li span:nth-of-type(1){
	margin-right: 5vw;
}

.memBonus{
	height: fit-content;
	display: grid;
	grid-template-rows: auto 5vh auto;
	gap: 1vh;
}
.memBonus h2{
	grid-row: 2/3;
	align-self: flex-end;
}
.memRes{
	grid-row: 1/2;
	display: flex;
	flex-direction: row;
	gap: 1vw;	
}
.memActulist{
	grid-row: 3/4;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
}
.memActu {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	gap: 1vh;
	font-size: 1.5vh;
	font-family: 'routed-regular';
	box-sizing: border-box;
	padding: 2vh 0 1.5vh 0;
	border-bottom: solid 1px var(--color2);
}

.memActu div{
	display: flex;
	flex-direction: row;
	gap: 1vh;
	justify-content: flex-start;
}
.memActuText {
	display: flex;
	flex-direction: column !important;
}
.memActu img {
	height: auto;
	max-height: 9vh;
}
/*///////////////////////////////////// Presse Galerie //////////////////////////////////////////*/


#galerie{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	width: 90vw;
	height: fit-content;
	position: absolute;
	top: 10vh;
	right: 5vw;
	gap: 10vh;
	justify-content: space-around;
}

#galerie div{

	align-self: center;

}
.imgGal{
	position: relative;
	display: block;
	background-color: var(--color1);
	filter: blur(15px) opacity(0.5);
	transition:  ease-in 0.5s;
	max-width: 35vw;
	height: 20vw;
	
	height: auto;
	
	
}

#coupures {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	gap: 1vh;
	position: fixed;
	bottom: 5vh;
	height: fit-content;
	max-width: 60vw;
	right: 3vw;
	align-items: center;
	z-index: 2;
	
}
#coupures li{
	background-color: var(--color1);
	border-radius: 5vh;
	height: fit-content;
	box-sizing: border-box;
	padding: 1vh 1vw;
	width: fit-content;
	display: flex;
	align-items: center;
	font-size: 1.5vw;
	gap: 1vw;
	
	border: 1px solid var(--color2);
}
#coupures li a:nth-of-type(2){
	color: var(--color2);
	opacity: 0.5;
	transition:  ease-in 0.1s;
}
#coupures li a:nth-of-type(2):hover{
	opacity: 1;
}



/*//////////////////////////////////////////////////////////////////////////////////*/


#containerFullScreen{
	width: 100vw;
	height: 100vh;
	background-color: rgba(0, 0, 0, 0.7);
	position: fixed;
	z-index: 10;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
#containerFullScreen img{

	max-height: 95vh;

}
#containerFullScreen img:hover{
	cursor: default;
}

/*/////////////////////////// languages //////////////////////////////////////*/

.languages{
 pointer-events: auto;
 z-index: 10;
 position: fixed;
 top: 1vh;
 right: 1vh;
 color: var(--color2);
}
.languages ul li{
	opacity: 0.2;
	transition: ease-in 0.1s;
}
.languages ul li:hover{
	color: var(--color3);
	opacity: 1;
}

.languages ul{
	display: flex;
	flex-direction: row;
	gap: 5px;
}



#mobile{
	display: none;
}