/*** CSS Styles  ***/


/* Général  */
::-moz-selection {
  color: #000;
  background: red;
}
::selection {
  color: #000;
  background: red;
}
html {
	cursor: none!important;
}
body {
	font-family: hero-new, sans-serif;
	font-weight: 400;
	height: 100%;
	margin:0;
	font-weight: 300;
	background: rgb(0,0,0);
	background: -moz-linear-gradient(90deg, rgba(0,0,0,1) 0%, rgba(53,51,62,1) 100%);
	background: -webkit-linear-gradient(90deg, rgba(0,0,0,1) 0%, rgba(53,51,62,1) 100%);
	background: linear-gradient(90deg, rgba(0,0,0,1) 0%, rgba(53,51,62,1) 100%);
	overflow: hidden;
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#000000",endColorstr="#35333e",GradientType=1);
}
body.gradient-red {
	background: rgb(0,0,0);
	background: -moz-linear-gradient(147deg, rgba(0,0,0,1) 16%, rgba(255,0,0,1) 100%);
	background: -webkit-linear-gradient(147deg, rgba(0,0,0,1) 16%, rgba(255,0,0,1) 100%);
	background: linear-gradient(147deg, rgba(0,0,0,1) 16%, rgba(255,0,0,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#000000",endColorstr="#ff0000",GradientType=1);
}
a {
	cursor: none;
	text-decoration: none;
}
canvas { 
	width: 100%;
	height: 100%;
}
h1 {
	padding:5px 0;
	margin:0;
	color: red;
	font-family: 'operetta-18', serif;
	font-weight: 900;
	font-size: 3em;
	line-height: 1em;
	text-align: center;
	text-transform: uppercase;
}
h2 {
	font-family: "Oswald", sans-serif;
	font-weight: 100;
	text-transform: uppercase;
	font-size: 1.3em;
	color: red;
	padding: 10px 0 0 0;
	margin-bottom:0!important;
	margin-top:0!important;	
}
h3 {
	color: #fff;
	margin: 0;
	padding-top:5px;
	font-style: italic;
	font-size: 0.4em;
}
h4 {
	font-family: operetta-18, serif;
	color: transparent;
	font-size: 2em;
	font-weight: bold;
	padding: 0;
	margin: 0 0 60px;
	-webkit-text-stroke: 1px red;
	line-height: 1.1em;
	text-align: center;
}
p {
	color:red;
	line-height: 1.5em;
}
main {
	display: flex;
    align-items: center;
    justify-content: center;
    height: 100vh;
}
.blur {
	color:#fff;
	font-size: 4em;
	width: 100vw;
	height: 100vh;
	position:absolute;
	top:0;
	right:0;
	bottom:0;
	left:0;
	display:flex;
	justify-content: center;
	align-items: center;
	mix-blend-mode:color-burn;
	pointer-events: none;
	z-index: 1;
	transition:0.3s;
	background: rgba(255, 0, 0, 1);
	border-radius: 16px;
	box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	opacity:0.3;
}

.blur h4 {
	color:transparent;
	-webkit-text-stroke: 3px #000;
	opacity:1;
	text-transform: uppercase;
	position:relative;
	background-color: red;
	padding: 5px;
	z-index: 9999;
}

.fancybox-slide--html .fancybox-close-small {
    color: red!important;
}
.fancybox-slide--html {
    padding: 40px!important;
}
.fancybox-content {
	display: inline-flex!important;
	align-items: center!important;
	height: auto!important;
}
.fancybox-content h4 {
	margin-bottom:0!important;
}

/* Menu principale */
.menu-wrapper {
	background: rgb(52,50,61);
	/*background: -moz-linear-gradient(145deg, rgba(255,0,86,1) 0%, rgba(255,0,0,1) 100%);
	background: -webkit-linear-gradient(145deg, rgba(255,0,86,1) 0%, rgba(255,0,0,1) 100%);
	background: linear-gradient(145deg, rgba(255,0,86,1) 0%, rgba(255,0,0,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ff0056",endColorstr="#ff0000",GradientType=1);*/
	position:fixed;
	right:0;
	left:0;
	top:0;
	align-items:center;
	display: flex;
	justify-content:center;
	z-index: 9;
	opacity: 0.9;
	display: block;
	height: 0;
}
.menu-wrapper .close {
	position:absolute;
	top:40px;
	right:40px;
	font-size: 2em;
	z-index: 9;
	color:red;
	display: none;
}
#menu-principale {
	display: none;
}
nav {
	font-family: operetta-18, serif;
    font-style: normal;
    line-height: 1.2em;
    font-size: 3em;
    font-weight: 700;
    text-align: center;
    text-transform: uppercase;
    opacity: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    height: 100%;
}
.menu-item a {
	color: transparent;
    -webkit-text-stroke: 1px red;
    letter-spacing: 0px;
    font-size: 1.6em;
    font-weight: 800;
    line-height: 1.1em;
}
.menu-item a:hover {
	/*background: -webkit-linear-gradient(red, #34323c);*/
	-webkit-background-clip: text;
	transition:0.3s;
	-webkit-text-stroke: 0px red!important;
	text-shadow: 0 0 10px red;
}
.menu-ouverture {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: red;
}

.nouvelle-zone {
	width: 100%!important;
	max-width: 900px;
	margin:auto;
}
.nouvelle-content p {
	font-size: 1em;
}
.nouvelle-content p:first-child {
	font-size: 1.2em;
	font-weight: 300;
}
.nouvelle-single #scene {
	/*background-color: blue;*/
	margin:auto;
	padding:0 20px;
	width: 60vw;
	height: 65vh;
	overflow-x:hidden ;
	overflow-y: scroll;
	scrollbar-color: red transparent;
	scrollbar-width: thin;
	border-bottom:solid 0px red;
}

/* Logotype */
#logo svg {
	width: 130px;
}
.st0:hover {
	transition: 0.3s;
	opacity:0.2;
}

/* Mise en page - NEW */
.boxed {
	width: 1170px;
	margin: auto;
}
.layout-flex {
	display: flex;
    justify-content: center;
    align-items: center;
}
.flex-wrap {
	flex-wrap:wrap;
}
.flex-direction-column {
	flex-direction: column;
}
.flex-direction-row {
	flex-direction: row;
}
.layout-100 {
    width: 100%;
}

.layout-95 {
    width: 95%;
}

.layout-90 {
    width: 90%;
}

.layout-85 {
    width: 85%;
}

.layout-80 {
    width: 80%;
}

.layout-75 {
    width: 75%;
}

.layout-70 {
    width: 70%;
}

.layout-66 {
    width: 66.66%;
}

.layout-65 {
    width: 65%;
}

.layout-60 {
    width: 60%;
}

.layout-55 {
    width: 55%;
}

.layout-50 {
    width: 50%;
}

.layout-45 {
    width: 45%;
}

.layout-40 {
    width: 40%;
}

.layout-35 {
    width: 35%;
}

.layout-33 {
    width: 33.33%;
}

.layout-30 {
    width: 30%;
}

.layout-25 {
    width: 25%;
}

.layout-20 {
    width: 20%;
}

.layout-15 {
    width: 15%;
}

.layout-10 {
    width: 10%;
}

.layout-5 {
    width: 5%;
}

/* Livre */
.gabarit_livre {
	width: 70%;
    height: 400px;
    margin: auto;
	display: flex;
	justify-content: center;
	align-items: flex-end;
}
.gabarit_livre img {
	/*box-shadow: 3px 3px 10px red;*/
}
.gabarit_livre:hover .cursor {
	background-color: pink!important;
}

/* Slick slideshow */
.slick-track {
	display:flex;
}
.slick-dots {
	display: flex;
	align-items: center;
	justify-content: center;
	list-style-type: none;
	padding-right: 35px;
}
.slick-dots button {
	background-color: transparent;
	border-radius: 50%;
	border:solid 1px red;
	width: 30px;
	height: 30px;
	color:red;
	padding:5px;
	margin:0 15px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition:0.7s;
}
.slick-dots button:hover {
	background-color: red;
	color:#000;
	transition:0.3s;
}

/* Informations générales */
.info_gen {
	position: fixed;
	font-weight: 300;
	text-align: center;
	text-transform: uppercase;
	font-size: 0.8em;
	color: red;
}
#top {
	top: 0;
	width: 100%;
	padding: 30px 0;
}
#right {
	right: 30px;
    height: 100%;
    text-align: center;
    margin: auto;
    display: flex;
    align-items: center;
    padding: 30px 0;
}
#bottom {
	bottom:0;
	width: 100%;
	padding: 30px 0;
}
#left {
	left: 30px;
    height: 100%;
    text-align: center;
    margin: auto;
    display: flex;
    align-items: center;
    padding: 30px 0;
}
#a-propos, #inscription {
	right: 20px;
    bottom: 30px;
    position: absolute;
    height: 55px;
    width: 55px;
    border: solid 1px red;
    padding: 20px;
    text-align: center;
    border-radius: 50%;
    transition:2s;
}
#a-propos:hover, #inscription:hover, #audio-btn:hover {
    border: solid 1px #ff3131;
    box-shadow: 0px 0px 30px red;
    transition:0.3s;
}
#inscription {
	right: 20px;
    top: 30px;
    position: absolute;
    height: 55px;
    width: 55px;
    border: solid 1px red;
    padding: 20px;
    border-radius: 50%;
}
#inscription img {
	width: 33px;
    margin-right: 5px;
}
#audio-btn {
    height: 40px;
    width: 40px;
	background-color: red;
	color:#000;
    border: solid 1px red;
    padding: 20px;
    text-align: center;
    border-radius: 50%;
	margin:auto;
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: 'operetta-18', serif;
    font-weight: 300;
    font-size: 2.6em;
	transition:0.3s;
}
#audio-btn:hover {
	transform: scale(1.1);
	transition:0.3s;
}
#audio-btn img {
	width: 40px;
	height: 40px;
	object-fit: contain;
	object-position: center;
}
.rotate_text_right {
	transform:rotate(90deg);
}
.rotate_text_left {
	transform:rotate(-90deg);
}
#ligne-haut {
	position: absolute;
    top: 50px;
    right: 117px;
    left: 110px;
    height: 40px;
    justify-content: center;
}
#ligne-bas {
	position: absolute;
	bottom: 50px;
	right: 117px;
	left: 110px;
	height: 52px;
	justify-content: center;
}
#ligne-droite {
	position: absolute;
    right: 57px;
    top: 127px;
    bottom: 126px;
    justify-content: center;
}
#ligne-gauche {
	position: absolute;
    left: 30px;
    top: 127px;
    bottom: 126px;
    justify-content: center;
}
.ligne-rouge-h {
    background-color:red;
    width: 100%;
    height: 1px;
}
.ligne-rouge-v {
    background-color:red;
    width: 1px;
    height: 100%;
}
.ligne-texte-h {
	font-weight: 300;
	letter-spacing: 1px;
	text-align: center;
	text-transform: uppercase;
	font-size: 0.7em;
	font-family: 'Oswald', sans-serif;
	color: red;
	padding:0 20px;
}
.ligne-texte-v {
	font-weight: 200;
	text-align: center;
	text-transform: uppercase;
	font-size: 0.8em;
	color: red;
	padding:20px 0;
	letter-spacing: 1px;

}

#logo svg .st0 {
	transition: fill 1s;
}

#logo svg:hover .st0 {
	fill: #fff;
	transition:0.3s;
}

@-webkit-keyframes feu {
    0%{background-position:91% 0%}
    50%{background-position:10% 100%}
    100%{background-position:91% 0%}
}
@-moz-keyframes feu {
    0%{background-position:91% 0%}
    50%{background-position:10% 100%}
    100%{background-position:91% 0%}
}
@keyframes feu {
    0%{background-position:91% 0%}
    50%{background-position:10% 100%}
    100%{background-position:91% 0%}
}


/* Jeu */
.jeux {
	width: 100%;
	text-align: center;
}
.jeu {
	border-radius: 5px;
	text-align: center;
	position: relative;
}
.jeu_info {
	text-align: center;
	width: 100%;
	transition:1s;
}
.jeu_info:hover {	
	transform:translateY(-10px);
	transition:0.3s;
}
.layout-33:hover i {
	opacity: 1!important;
	transform:scale(2)!important;
	transition:0.3s;
}
.jeu_info img {
	text-align: center;
	width: 100%;
	max-width: 280px;
	object-fit:cover;

}
.jeu .icon {
	position: absolute;
	top: -10px;
	right: 15px;
	z-index: 9;
}
.jeu .icon i {
	color: #fff;
	font-size: 3em;
	opacity: 0;
	transform:scale(0);
	transition:0.3s;
}
.jeu_info h2 {

	right: 0;
}

/* Parallax scene */
#scene {
	pointer-events:auto!important;
}

/* Cursor */ 
.cursor {
    content:"";
    width: 40px;
    height: 40px;
    position: absolute;
    top: -15px;
    left: -15px;
    pointer-events: none;
    background-image: url(../images/mouse-stupeur.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: left top;
    z-index: 9;
}
.cursor-pointer {
    background-image: url(../images/mouse-pointer-stupeur.svg)!important;
    transition: 0.3s transform;
    transform:rotate(110deg);
}
.cursor-circle {
    width: 50px;
    height: 50px;
    position: absolute;
    background-color: transparent;
    background-image: none;
    border: solid 0.5px #fff;
    border-radius: 50%;
    opacity: 1;
    top: 0px;
    left: 0px;
    pointer-events: none;
    transform:scale(1.9);
    transition: 0.3s transform ease-out;
    animation: circle 5s infinite linear;
}

.cursor-red {
    content: "";
    width: 60px;
    height: 60px;
    position: absolute;
    background-color: blue;
    border-radius: 50%;
    opacity: .5;
    top: -15px;
    left: -15px;
    pointer-events: none;
    animation: cursorAnim 0.5s infinite alternate;
}

/*
.cursor::after {

}*/
.sms {
	position: absolute;
	top: 40px;
	right: 40px
}

/* SMS */
.sms i {
	font-size: 2em;
	color: red;
}

@keyframes circle {

   	0% {
        border: solid 0.5px #fff;
    }
    50% {
        border: solid 0.5px red;
        border-box: 0px 0px 30px #fff;
    }
    100% {
        border: solid 0.5px #fff;
    }
}


@keyframes cursorAnim {

   	0% {
        transform: scale(1);
    }
    50% {
        transform: scale(.5);
    }
}


.expand {
    animation: cursorAnim3 .5s forwards;
    border: 1px solid red;
}

/* Musique */
#music {
	position: fixed;
	left: 30px;
	bottom: 30px;
	z-index: 99;
}
#music i {
	transition:1s;
}
#music i:hover {
	transition:0.3s;
	transform:scale(1.3);
}

#music .fa-play-circle {
	color: #fff;
    font-size: 2em;
}
#music .fa-volume-mute {
	color: #fff;
    font-size: 1.8em;
}

/* FancyBox */
.fancybox-content {
	background: rgb(0,0,0)!important;
	background: -moz-linear-gradient(90deg, rgba(0,0,0,1) 0%, rgba(53,51,62,1) 100%);
	background: -webkit-linear-gradient(90deg, rgba(0,0,0,1) 0%, rgba(53,51,62,1) 100%);
	background: linear-gradient(90deg, rgba(0,0,0,1) 0%, rgba(53,51,62,1) 100%)!important;
	width: 650px;
	height: 400px;
}
.fancybox-content:hover .cursor {
    width: 100px;
    height: 100px;
}

/* Formulaire */
input {
	width: 100%;
    background-color: transparent;
    border: solid 1px red;
    height: 50px;
    padding: 10px;
    color: red;
    outline: none;
    text-align: center;
    font-family: new-hero;
    font-weight: 100;
    font-size: 1.1em;
    font-style: italic;
    letter-spacing: 1px;
}
input[type="submit"] {
	background-color: red;
	font-family: operetta-18, serif;
	-webkit-text-stroke: 1px #34323d;
	text-transform: uppercase;
	font-size: 1.5em;
	letter-spacing: 0px;
	font-weight: 900;
	cursor: pointer;
	transition: 1s;
}

input[type="submit"]:hover {
	-webkit-text-stroke: 1px red;
	color: #000;
	transition: 0.3s;
}

@media screen and (max-width: 920px) {
	h1 {
		font-size: 2em;
	}

	#logo svg {
		width: 90px;
	}

	.nouvelle-content p:first-child {
		font-size: 1.1em;
	}

	.nouvelle-content p {
		font-size: 0.9em;
	}

	#ligne-gauche {
		left: 5px;
	}

	#ligne-droite {
		right: 40px;
	}
	html {
		cursor:auto!important;
	}
	
  }

  @media screen and (max-width: 600px) {
	html {
		cursor:cell;
	}
	body {
		width: 100vw;
		overflow-x: hidden;
	}
	h1 {
		font-size: 1.6em;
	}
	h4 {	
		font-size: 1.4em;
		font-weight: 700;
		color:red;
		-webkit-text-stroke: 1px red;
		line-height: 1.1em;
		text-align: center;
	}
	#inscription {
		display: none;
	}
	.cursor {
		display:none;
	}
	#logo svg {
        width: 50px;
    }
	#ligne-haut {
		top: 10px;
		right: 30px;
		left: 30px;
	}
	.ligne-texte-h {
		font-size: 0.5em;
		padding: 0 20px;
		width: 200%;
	}
	#ligne-gauche {
		left: 5px;
		top: 30px;
		bottom: 30px;
	}
	#ligne-droite {
		right: 25px;
		top: 30px;
		bottom: 30px;
	}
	.nouvelle-single #scene {
		height: 80vh;
		width: 65vw;
	}
	.nouvelle-content {
        padding-bottom:100px;
    }
	.nouvelle-content p:first-child {
        font-size: 1em;
    }
	.nouvelle-content p {
        font-size: 0.9em;
		line-height: 1.8;
    }
	#a-propos {
		right: 4px;
		bottom: 4px;
		background: #33313c;
		height: 40px;
		width: 40px;
		display: flex;
		align-items: center;
		justify-content: center;
		padding:20px;
		z-index: 9;
	}
	#a-propos svg {
		width: 40px;
		height: 40px;
	}
	#ligne-bas {
		position: absolute;
		bottom: 4px;
		right: 30px;
		left: 30px;
		height: 52px;
		justify-content: center;
		z-index: 9;
	}
	.blur {
		display:none;
	}
	#audio-btn {
		height: 60px;
		width: 60px;
		margin-top: -20px;
		margin-top: -90px;
	}

	

}