/*
Theme Name: MCES
Author: Brocoli Agency
Author URI: https://brocoli-agency.fr
Description: MCES's THeme
*/

@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600;1,700&display=swap');

@font-face {
	font-family: BilboINC;
	src: url(./fonts/BilboINC.ttf);
}

@font-face {
	font-family: Buchery;
	src: url(./fonts/Buchery.ttf);
}

:root {
    --light-gray:#F0F0F0;
    --gray:#AEAEAE;
    --dark-gray:#D8D8D8;
    --blue:#AEE6FA;
}

html {
	font-family: Montserrat;
}

body {
	margin: 0;
	min-height: 100vh;
	position: relative;
	background: white;
	background-image: radial-gradient(var(--dark-gray) 2px, transparent 0);
	background-size: 100px 100px;
	background-position: -10px 40px;
}

hr {
	border: none;
	background-color: black;
	height: 1px;
	margin: 0;
}

nav {
	display: flex;
    justify-content: space-around;
}

section	{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	height: fit-content;
	position: relative;
	width: 100%;
}

section:last-child	{
	margin-bottom: 120px !important;
}

a {
	text-decoration: none;
}

.remind_price {
		margin-top: 45px !important;
	}

#top-bar {
	display: grid;
	grid-template-columns: 55px 281px auto 100px 150px;
	height: 57px;
	background-color: white;
}

#top-bar > div {
	display: flex;
	justify-content: center;
	align-items: center;

	border-right: solid 1px var(--light-gray);
	border-bottom: solid 1px var(--light-gray);
}

#top-bar > a {
	display: flex;
	justify-content: center;
	align-items: center;
	color: black;
	border-bottom: solid 1px var(--light-gray);
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
}
#top-bar > a:hover {
	background-color: var(--blue);
	color: white;
}

#lang-switch {
	flex-direction: column;
}

#lang-switch a {
	color: black;
	margin: 2px 0;
	line-height: 20px;
	transition: all 0.5s;
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
}

#lang-switch a hr {
	width: 0;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
}

#lang-switch a:hover hr {
	width: 100%;
}

#lang-switch .selected hr {
	width: 100%;
}

.contact-links img {
	width: 22px;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
}

.contact-links img:hover {
	opacity: 50%;
}

.contact-links a {
	padding: 0 6px;
}

#sponsors-links {
	padding-right: 195px;
}

#sponsors-links a {
	padding: 0 20px;
	-webkit-filter: grayscale(100%); /* Safari 6.0 - 9.0 */
  	filter: grayscale(100%);
  	transition: all 0.3s;
}
#sponsors-links a:hover {
	-webkit-filter: grayscale(0%); /* Safari 6.0 - 9.0 */
  	filter: grayscale(0%);
}

#sponsors-links a:first-child img {
	width: 41px;
}#sponsors-links a:nth-child(3) img {
	width: 88px;
	height: 25px;
}#sponsors-links img {
	width: 60px;
}

.menu-mobile {
	display: none !important;
}
#logo-mobile {
	display: none !important;
}
#logo-mobile img {
	width: 47px; 
}

.burger {
	position: relative;
	top: 37px;
	display: block;
	width: 35px;
	height: 4px;
	margin: 0 auto;
	background: black;
	transition: all .275s;
}

.burger:after,
.burger:before {
	content: '';
	display: block;
	height: 100%;
	background: black;
	transition: all .275s;
}

.burger:after {
	transform: translateY(-15px);
}

.burger:before {
	transform: translateY(-22px);
}

#shop-link {
	display: flex;
	justify-content: center;
	align-items: center;
	font-family: Buchery;
	font-size: 37px;
}

#shop-link div {
    width: 75px;
    height: 38px;
    text-align: center;
    margin-right: 5px;
    position: relative;
    left: 3px;
}

#shirts {
	width: 57px !important;
	height: 56px !important;
	overflow-y: hidden;
}

#shirts img {
	width: 51px;
	position: relative;
	top: 5px;

	transition: all 0.3s;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
}

/*
#white-shirt {
	background-image: url(./images/icon_shop_mces_maillotblanc.png);
    width: 57px !important;
    height: 51px !important;
    position: relative;
    top: 2px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    transition: all 0.2s;
}
*/

#top-bar > a:hover #shirts img:nth-child(1) {
	top: 56px;
}

#top-bar > a:hover #shirts img:nth-child(2) {
	top: -69px;
}

#nav-container {
	background-color: white;
	width: 100%;
	z-index: 200;
}

#nav-container.fixed {
	top: 0;
	position: fixed;
}

.menu-elem {
	width: 100%;
	height: 90px;
    border-bottom: solid 1px var(--light-gray);
    border-right: solid 1px var(--light-gray);
}
.menu-elem:last-child {
	border-right: none;
}

.menu-elem > a {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.menu-titre {
	font-weight: 500;
	color: black;
	font-size: 20px;
}

.menu-elem:hover {
	border-bottom: none;
}

.menu-elem > a:hover .menu-titre {
	font-weight: 700;
}

.menu-content {
	position: absolute;
	top: 148px;
	left: 0;
	z-index: 200;
	padding: 0 1% 0 5%;
	box-sizing: border-box;
	width: 100%;
	height: 375px;
	/* passer en fit-content quand ca shrink ? */
	background-color: white;
	display: flex;
	visibility: hidden;
	justify-content: space-around;
	align-items: center;
}
.menu-elem:hover .menu-content {
	display: flex;
	visibility: visible;
}

.menu-content > div {
	z-index: 100;
}

.titre-index {
	font-weight: 700;
	font-size: 20px;
}

.content-index {
	width: 25%;
	min-width: 190px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.content-index ul {
	padding: 0;
	list-style-type:none;
}

.content-index li > a {
	color: var(--gray);
	font-size: 17px;
	position: relative;
	line-height: 22px;
}
.content-index li > a:before {
	content: "";
	position: absolute;
	width: 100%;
	height: 1px;
	bottom: -1px;
	left: 0;
	background-color: var(--blue);
	visibility: hidden;
	transform: scaleX(0);
	transition: all 0.3s ease-in-out;
}
.content-index li > a:hover:before {
  visibility: visible;
  transform: scaleX(1);
}

.sub-index {
	display: flex;
	flex-direction: column;
}

.sub-index a {
	color: var(--gray);
	font-size: 15px;
	margin-left: 10px;
	display: flex;
	align-items: center;
	position: relative;
	width: fit-content;
}
.sub-index a:before {
	content: "";
	position: absolute;
	width: 100%;
	height: 1px;
	bottom: 0;
	left: 0;
	background-color: var(--blue);
	visibility: hidden;
	transform: scaleX(0);
	transition: all 0.3s ease-in-out;
}
.sub-index a:hover:before {
  visibility: visible;
  transform: scaleX(1);
}

.sub-index img {
	padding-right: 8px;
}

.menu-subcontent {
    display: flex;
    flex-wrap: wrap;
    max-width: 932px;
    align-items: center;
    height: fit-content;
}

.subcontent-elem {
	width: 185px;
    height: 95px;
    margin: 10px 10px 10px 10px;
    border: solid 4px var(--blue);
    overflow: hidden;
    position: relative;
    transition: background-color 0.3s;
}

.subcontent-elem-text {
	z-index: 20;
}

.subcontent-elem-bg {
	width: 210px;
	height: 100%;
	font-family: Buchery;
	font-style: normal;
    position: absolute;
    color: var(--blue);
}

.subcontent-elem:hover {
	background-color: var(--blue);
}
.subcontent-elem:hover .subcontent-elem-bg {
	color: white;
}

.subcontent-elem a {
	color: black;
    font-size: 22px;
    font-weight: 700;
    font-style: italic;
    text-align: center;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
	position: relative;
}

#nav-container.fixed ~ .page-content {
	margin-top: 91px;
}

.page-content {
	display: flex;
    flex-direction: column;
}

.swiper-container {
  width: 100%;
  margin-top: 85px;
}

.swiper-slide {
  background: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
}

.swiper-slide img {
	width: 100%;
    max-width: 1600px;
}

.swiper-button-next, .swiper-button-prev {
	color: var(--blue) !important;
}

.calendar {
	background-color: var(--blue);
    background-image: url(./images/plus-symbol-white.svg);
    background-size: 25px;
	padding: 20px 0 60px 0;
	margin-top: 60px;
	flex-direction: column-reverse;
	width: 95%;
	margin: auto;
}
.calendar.home {
	margin-top: 70px;
}

#calendar-title {
	margin: 0;
    position: absolute;
    top: -43px;
}
#calendar-title img {
	width: 100px;
}

.calendar-content {
	display: flex;
	min-height: 120px;
	margin: 15px 0;
	background-color: white;
}
.calendar-content > div {
	border: solid 1px black;
}

.versus {
    min-width: 570px;
    display: flex;
    justify-content: space-around;
    align-items: center;
    padding: 0 20px;
}

.versus img {
	margin: 0 15px;
	width: 33px;
}

.match-details {
	min-width: 630px;
	border-left: none !important; 
}

.match-details > div {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 60px;
	padding: 0 0 0 15px;
}

.match-details > div:first-child {
	border-bottom: solid 1px black;
}

.competition-name {
	text-align: left;
	width: 100%;
	color: black;
	font-size: 33px;
	font-weight: 700;
}

.game-icon-container {
	border-left: solid 1px black;
	height: 100%;
	min-width: 100px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.game-icon-container img {
	width: 70px;
	margin: 0 10px;
}

.calendar-date {
	width: 100%;
	text-align: left;
	font-size: 19px;
	display: flex;
	align-items: center;
}

.calendar-date img {
	margin-right: 25px;
	width: 25px;
}

.team-1, .team-2 {
	font-size: 22px;
    font-weight: 600;
    display: flex;
    align-items: center;
    width: 220px;
    display: flex;
    justify-content: center;
}

.team-1 {
	position: relative;
	top: -10px;
}
.team-2 {
	position: relative;
	top: 10px;
}

.versus-icon {
	font-size: 31px;
	font-weight: 700;
	color: white;
	position: relative;
}

.versus-icon img {
	position: relative;
    margin: 0;
    z-index: 20;
    width: 40px;
}

.calendar-score {
	min-width: 100px;
    border-left: 1px solid black;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    font-weight: 600;
}

.line {
    width: 70px;
    border-bottom: 1px solid black;
    transform: rotate(-45deg);
    position: absolute !important;
    top: 16px;
    left: -14px;
    z-index: 10 !important;
}

.control-arrows {
	margin-top: 50px;
	width: 200px;
    display: flex;
    align-items: center;
    justify-content: space-around;
}

.control-arrows a:first-child img {
	transform: rotate(180deg);
}

#shop-content > div:last-child a {
	color: black;
	width: 180px;
	font-weight: 500;
	display: flex;
	justify-content: space-between;
}

#shirts-container {
	display: flex;
	flex-direction: column;
}
#images-maillot {
	display: flex;
	justify-content: space-around;
}
#images-maillot a {
	display: flex;
	justify-content: space-around;
}
#images-maillot img {
	width: 70%;
	min-width: 300px;
	height: intrinsic;
}
#images-maillot a:nth-child(2) img {
	position: relative;
    top: 40px;
}
#texte-maillot {
	width: 70%;
	margin: 80px auto 30px auto;
	font-size: 18px;
}
#texte-maillot *:nth-child(1), #texte-maillot *:nth-child(2), #texte-maillot *:nth-child(3) {
	display: inline;
}

#news a {
	color: black;
	font-weight: 500;
}

.news-container {
	display: flex;
	margin-bottom: 30px;
}

.news-elem {
	display: flex;
	flex-direction: column;
	width: 270px;
	margin: 0 5px;
	background-color: white;
	overflow: hidden;
	transition: all .3s;
	box-shadow: 0px 5px 80px 0px rgba(0,0,0,0.05);
}

.news-elem-img-container {
	height: 150px;
	width: 100%;
	position: relative;
	overflow: hidden;
}

.news-elem-img {
	width: 100%;
    height: 100%;
	background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    background-color: black;
	transition: all .3s;
}

.news-elem-content {
	padding: 20px;
	top: 0px;
	position: relative;
	background-color: white;
	transition: all .3s;
	height: 140px;
}

.news-elem-date {
	margin-bottom: 15px;
	color: var(--gray);
	font-size: 15px;
	display: none;
}

.news-elem-title {
	font-weight: 500;
	margin-bottom: 20px;
	color: black;
}

.news-elem-tags {
	display: flex;
	flex-wrap: wrap;
}
.news-elem-button {
	background-color: var(--blue);
    width: 130px;
    height: 33px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: Buchery;
    position: relative;
    bottom: 25px;
    left: 21px;
} .news-elem-button a {
    color: black;
}
.tag {
	color: var(--gray);
	box-shadow: 0px 0px 7px 0px rgba(0,0,0,0.05);
	width: fit-content;
	margin: 2px 5px;
	padding: 0 3px;
	transition: .3s;
}
.tag a {
	color: var(--gray);
}

.news-elem:hover .news-elem-img {
	transform: scale(1.1);
}
.news-elem:hover .news-elem-content {
	top: -10px;
	bottom: -10px;
}
.news-elem:hover .news-elem-content, .news-elem:hover {
	background-color: black;
}
.news-elem:hover .news-elem-title {
	color: white;
}
.news-elem:hover .tag {
	background-color: white;
	color: black;
}

footer {
	background-color: white;
    position: absolute;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    height: auto;
    border-top: solid 1px var(--light-gray);
}

footer > div {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}

#footer-logos > a {
	padding: 0 30px 0 0;
	-webkit-filter: grayscale(100%); /* Safari 6.0 - 9.0 */
  	filter: grayscale(100%);
  	transition: all .3s;
} #footer-logos > a:hover {
	-webkit-filter: grayscale(0%); /* Safari 6.0 - 9.0 */
  	filter: grayscale(0%);
}
#footer-logos a:nth-of-type(1) img {
	width: 37px;
}
#footer-logos a:nth-of-type(2) img {
	width: 60px;
}
#footer-logos a:nth-of-type(3) img {
	width: 88px;
    height: 25px;
}
#footer-logos a:nth-of-type(4) img {
	width: 70px;
    height: 15px;
}
#footer-logos a:nth-of-type(5) img {
	width: 58px;
}
#footer-logos a:nth-of-type(6) img {
	width: 58px;
}

#mces-logo {
	display: flex;
	justify-content: center;
	height: 100%;
	align-items: center;
	border-right: solid 1px var(--light-gray);
	padding: 0 30px 0 30px;
	margin-right: 30px;
}

#footer-rights > * {
	padding: 0 15px;
}

#footer-rights a, #footer-rights p {
	font-size: 13px;
	font-style: italic;
	font-weight: 400;
	color: black;
}

.basic-title {
	color: black;
    font-family: Buchery;
    font-size: 50px;
    font-weight: 400;
    width: 100%;
    margin: 50px 0 50px 0;
    text-align: center;
}

.basic-title.big {
	font-size: 100px;
}

.team-display {
	flex-direction: row;
	margin-bottom: 60px;
}

.team-slider {
    overflow-x: scroll;
    display: flex;
    /*justify-content: flex-start !important;*/
    flex-direction: row;
    width: auto;
    padding: 0 52px;
/*    position: relative;
    left: 15px;*/
}

.team-slider::-webkit-scrollbar {
  display: none;
}

.team-slider {
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.team-slide {
	height: 450px;
	min-width: 170px;
	background-color: var(--light-gray);
	margin: 0px 30px 0 0;
	transition: min-width .6s ease .5s;
    transform: skew(-13deg);
    overflow: hidden;
}
.team-slide:first-child {
}
.team-slide:hover, .concept-slide:hover {
	min-width: 600px;
	transition: min-width .6s ease .2s;
}
.team-slide:hover .team-slide-content {
	left: 0px;
	transition-delay: .3s;
}
.team-slide:hover .team-slide-name {
	opacity: 1;
	transition-delay: .5s;
}

.team-slide:hover .team-slide-infos {
	opacity: 1;
	transition-delay: .5s;
	position: absolute;
    z-index: 30;
}

@supports (-webkit-text-stroke: 1px white) {
	.team-slide-name-shadow {
		-webkit-text-stroke: 1px white;
		-webkit-text-fill-color: var(--light-gray);    
		position: absolute;
		bottom: -10px;
		left: 10px;
		z-index: 9;
		font-family: Buchery;
		height: 250px;
		width: 520px;
		opacity: 0;
		transition: all .8s;
	}

	.team-slide:hover .team-slide-name-shadow {
		opacity: 1;
	}
}

.team-slide-content {
	transform: skew(13deg);
	height: calc(100% - 3px);
	position: relative;
	left: -58px;
	transition: all .6s;
}

.team-slide-photo {
}

.team-slide-photo img {
	height: 95%;
	position: absolute;
	left: 45px;
	bottom: -3px;
	z-index: 20;
}

.team-slide-name {
	position: absolute;
    bottom: 0px;
    color: white;
    z-index: 10;
    font-family: Buchery;
    height: 250px;
    width: 520px;
    opacity: 0;
    transition: all .8s;
}

.team-slide-name-shadow {
    opacity: 0;
}

.team-slide-infos {
	position: absolute;
    opacity: 0;
    top: 30px;
    right: 8px;
    line-height: 30px;
    transition: opacity .4s ease-in-out;
    transform: skew(0deg);
}

.team-slide-infos > div {
	font-size: 27px;
	font-weight: 700;
	text-align: right;
	margin-bottom: 10px;
}

/* CONCEPT */

#video-intro {
	display: flex;
	align-items: center;
	justify-content: center;
}
#video-intro video {
	width: 100%;
	max-width: 1920px;
}
#video-intro h1 {
	font-family: Buchery;
    color: var(--blue);
    font-size: 160px;
    font-weight: 500;
    margin-top: -100px;
    z-index: 20;
    margin-bottom: 70px;
}
#video-intro .subtitle {
	font-size: 21px;
	font-weight: 600;
	text-align: center;
	max-width: 550px;
	width: 90%;
	line-height: 35px;
}

#quote-bloc {
	background-color: white;
	margin-top: 190px;
	background-image: linear-gradient(black 1px, transparent 1px),linear-gradient(to right, black 1px, transparent 1px);
    background-size: 140px 140px;
    background-position-x: 70px;
    height: 561px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.quote-container {
	display: flex;
	position: relative;
	flex-direction: row;
    background-color: white;
    height: 360px;
    border: 1px solid black;
}
.quote-container > img {
	position: absolute;
	width: 185px;
	left: -50px;
	top: -70px;
}
.quote-container .quote{
	width: 480px;
	border-right: 1px solid black;
	font-size: 19px;
	padding: 0 100px 0 100px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 500;
	font-style: italic;
}
.member-card{
	width: 205px;
}
.member-card .member-img{
	width: 100%;
	height: 295px;
	display: flex;
	justify-content: center;
}
.member-card img{
    height: calc(100% - 5px);
    position: relative;
    bottom: -5px;
}
.member-card .member-details{
	display: flex;
	flex-direction: column;
	justify-content: center;
	border-top: 1px solid black;
	height: 65px;
	padding-left: 10px;
}
.member-card .member-details div:nth-child(1){
	color: var(--gray);
	font-size: 16px;
	font-weight: 500;
	position: relative;
	top: -4px;
}.member-card .member-details div:nth-child(2){
	font-weight: 600;
	font-size: 20px;
	position: relative;
	bottom: -2px;
}

#philosophy {
	margin-top: 150px;
	overflow-x: scroll;
}

.title-superposed {
	font-family: Buchery;
	color: black;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	width: 70%;
	margin: 30px 0;
}
.title-superposed h2 {
	font-size: 56px;
	font-weight: 400;
	z-index: 20;
	/*min-width: 115px;*/
}
.title-superposed-bg {
	color: var(--blue);
	position: absolute;
	font-size: 133px;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 60%;
	margin-top: 18px;
	max-width: 400px;
}
.title-superposed-bg.white {
	color: white;
}
.title-superposed hr {
	height: 2px;
	width: 500px;
	z-index: 20;
	margin: 0 0 0 25px;
}.title-superposed hr:nth-child(1) {
	margin: 0 25px 0 0;
}
.title-superposed.left, .title-superposed.right {
    width: 85%;
    margin: 0;
    height: 0px;
}.title-superposed.left hr, .title-superposed.right hr {
    width: 100%;
}
.title-superposed.left .title-superposed-bg {
	left: -30px;
	max-width: 600px;
}
.title-superposed.right .title-superposed-bg {
	right: -60px;
	max-width: 600px;
}
.title-superposed.main {
	width: 100%;
}

.concept-slide {
	height: 450px;
	min-width: 170px;
	background-color: var(--light-gray);
	margin: 0px 30px 0 0;
	transition: min-width .6s ease .5s;
    transform: skew(-13deg);
    overflow: hidden;
}

.concept-slide::before {
	content: "";
    transform: skewX(13deg);
    background-position: center;
    background-size: 805px 100%;
    background-repeat: no-repeat;
    position: absolute;
    width: 274px;
    left: -52px;
    height: 100%;
    transition: all .6s ease .5s;
} .concept-slide:nth-child(1)::before {
    background-image: url(./images/philosophie1.png);
} .concept-slide:nth-child(2)::before {
    background-image: url(./images/philosophie2.png);
} .concept-slide:nth-child(3)::before {
    background-image: url(./images/philosophie3.png);
}

.concept-slide-content {
	transform: skew(13deg);
	height: calc(100% - 3px);
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
}

.expand-anim {
	width: 40px;
	height: 35px;
	position: relative;
	opacity: 1;
	transition: all .6s ease;
	transition-delay: .8s;
	/*animation: expandanim 1.3s infinite ease;*/
}
.expand-anim img {
	position: absolute;
}
.expand-anim img:nth-child(1) {
	top: 0;
	left: 0;
	animation: expandanim-topleft 1.6s infinite;
}.expand-anim img:nth-child(2) {
	transform: translate(0, 0) rotate(90deg);
	top: 0;
	right: 0;
	animation: expandanim-topright 1.6s infinite;
}.expand-anim img:nth-child(3) {
	transform: translate(0, 0) rotate(-90deg);
	left: 0;
	bottom: 0;
	animation: expandanim-bottomleft 1.6s infinite;
}.expand-anim img:nth-child(4) {
	transform: translate(0, 0) rotate(180deg);
	right: 0;
	bottom: 0;
	animation: expandanim-bottomright 1.6s infinite;
}

@keyframes expandanim-topleft {
    0% { 
    	transform: translate(0, 0);
    }
    50% { 
    	transform: translate(-5px, -5px);
    }
    100% { 
    	transform: translate(0, 0);
    }
}@keyframes expandanim-topright {
    0% { 
    	transform: translate(0, 0) rotate(90deg);
    }
    50% { 
    	transform: translate(5px, -5px) rotate(90deg);
    }
    100% { 
    	transform: translate(0, 0) rotate(90deg);
    }
}@keyframes expandanim-bottomleft {
    0% { 
    	transform: translate(0, 0) rotate(-90deg);
    }
    50% { 
    	transform: translate(-5px, 5px) rotate(-90deg);
    }
    100% { 
    	transform: translate(0, 0) rotate(-90deg);
    }
}@keyframes expandanim-bottomright {
    0% { 
    	transform: translate(0, 0) rotate(180deg);
    }
    50% { 
    	transform: translate(5px, 5px) rotate(180deg);
    }
    100% { 
    	transform: translate(0, 0) rotate(180deg);
    }
}

.concept-content {
	opacity: 0;
	position: absolute;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	color: white;
	transition: all .6s;
}
.concept-content h3 {
	font-size: 45px;
	margin: 0;
	font-style: italic;
}
.concept-content > div {
	text-align: center;
    width: 90%;
}

.concept-slide:hover .expand-anim {
	opacity: 0;
	transition: all .6s;
}
.concept-slide:hover .concept-content {
	opacity: 1;
	transition: all .6s;
	transition-delay: .8s;
}
.concept-slide:hover:before {
	width: 805px;
	transition: all .6s ease .2s;
	background-size: 805px 100%;
}

.bloc-corner-border {
	border: 1px solid black;
	width: 600px;
	padding: 30px 70px;
	margin: 90px 0;
	display: flex;
	flex-direction: column;
	text-align: left;
	justify-content: center;
	align-items: center;
	position: relative;
}
.bloc-corner-border p {
	font-size: 18px;
	font-weight: 500;
	margin: 10px 0 10px 0;
}

.bloc-corner-border img:nth-child(1) {
	position: absolute;
	top: -16px;
	left: -16px;
}
.bloc-corner-border img:nth-child(2) {
	position: absolute;
	bottom: -16px;
	right: -16px;
    transform: rotate(180deg);
}

.article-content {
	width: 60%;
	background-color: white;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	box-shadow: 0px 5px 80px 0px rgba(0,0,0,0.05);
	/* adn */
	position: relative;
    top: -200px;
    margin-bottom: -100px;
}
.mailchimp-content {
	width: 50%;
	background-color: white;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	box-shadow: 0px 5px 80px 0px rgba(0,0,0,0.05);
	margin: auto;
	/* adn */
	position: relative;
}
.mailchimp-content h2 {
	font-size: 46px;
} .mailchimp-content .title-superposed-bg {
	font-size: 80px;
}
.mailchimp-content p {
	margin-bottom: 18px !important;
	margin-top: 22px !important;
}
.mc4wp-success > p  {
	text-align: center !important;
    margin: 20px auto 20px auto !important;
}
.mces-newsletter {
	display: flex;
    flex-direction: column;
    margin-bottom: 20px;
    width: 300px;
} .mces-newsletter p {
	margin-top: 8px !important;
	margin-bottom: 8px !important;
	width: 100% !important;
}
#mc4wp-form-1 {
	width: 100%;
}
.article-content .title-superposed {
	width: 90%;
}
.article-content h2 {
	min-width: 620px;
}

#adn p {
	margin: 60px 0 60px 0;
	width: 60%;
	min-width: 200px;
	font-weight: 500;
	text-align: center;
	font-size: 19px;
}

#bloc-adn {
	border: 1px solid black;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 840px;
	position: relative;
}

.bloc-adn-elem {
	width: 33.3%;
	height: 280px;
	border-right: 1px solid black;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
}
.bloc-adn-elem:last-child {
	border-right: none;
}
.bloc-adn-elem div:nth-child(1) {
	color: var(--blue);
	font-weight: 700;
	position: absolute;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 70px;
	width: 85%;
	top: 40px;
	font-size: 30px;
	line-height: 30px;
}
.bloc-adn-elem div:nth-child(2) {
	color: black;
	font-style: italic;
	position: absolute;
	height: 70px;
	width: 80%;
	bottom: 35px;
	font-size: 17px;
	font-weight: 500;
}
.bloc-adn-elem hr {
	height: 1px;
	color: black;
	width: 40px;
	position: absolute;
}.bloc-adn-elem:nth-child(1) hr {
	right: -20px;
}.bloc-adn-elem:nth-child(2) hr {
	right: -20px;
}

.img-bg {
	height: 700px;
    width: 100%;
    background-size: cover;
    background-position-x: center;
}

.big-title {
	font-family: Buchery;
	font-size: 160px;
	color: var(--blue);
	font-weight: 400;
	margin: 60px 0;
}

.member-container {
	display: grid;
    grid-template-columns: repeat(auto-fill, 271px);
    grid-gap: 30px;
    justify-content: center;
    width: 100%;
    max-width: 1180px;
}
.member-container .member-card {
	border: 1px solid black;
	width: 271px;
	position: relative;
}
.member-container .member-img {
	height: 389px;
	background-color: white;
	position: relative;
}
.card-angle {
	position: absolute !important;
	height: 25px !important;
	width: 25px;
}
.member-img .card-angle:nth-child(2), .member-infos .card-angle:nth-child(2) {
	top: 15px;
	left: 15px;
	-webkit-transform: rotate(0deg);
            transform: rotate(0deg);
} .member-img .card-angle:nth-child(3), .member-infos .card-angle:nth-child(3) {
	top: 15px;
	right: 15px;
	-webkit-transform: rotate(90deg);
            transform: rotate(90deg);
} .member-img .card-angle:nth-child(4) {
	bottom: 15px;
	left: 15px;
	-webkit-transform: rotate(-90deg);
            transform: rotate(-90deg);
} .member-img .card-angle:nth-child(5) {
	bottom: 15px;
	right: 15px;
	-webkit-transform: rotate(180deg);
            transform: rotate(180deg);
}
.member-infos .card-angle:nth-child(4) {
	top: 349px;
	left: 15px;
	-webkit-transform: rotate(-90deg);
            transform: rotate(-90deg);
}
.member-infos .card-angle:nth-child(5) {
	top: 349px;
	right: 15px;
	-webkit-transform: rotate(180deg);
            transform: rotate(180deg);
}
.member-container .member-infos {
	display: flex;
	justify-content: center;
	width: 100%;
	height: 0px;
	margin-top: 389px;
    background-color: var(--blue);
	justify-content: center;
	transition: all .4s;
	position: absolute;
	overflow: hidden;
	top: 0;
	left: 0;
}
.member-container .member-infos > div {
	padding: 40px 40px 0 40px;
	font-weight: 600;
	font-size: 19px;
}
.member-container .member-details {
	height: 74px;
	background-color: white;
}

.member-card:hover .member-infos {
	height: 389px;
	margin-top: 0px;
	transition: all .4s;
}

.dotted-bg {
   	background-image:
		linear-gradient(black 1px, transparent 1px),
		linear-gradient(to right, black 1px, transparent 1px),
		radial-gradient(#212121 6%, transparent 2px);

	background-size: 39px 39px;
	background-position-x: -1px;
	background-position-y: -1px;
}
.dotted-bg-small {
   	background-image:
		linear-gradient(black 1px, transparent 1px),
		linear-gradient(to right, black 1px, transparent 1px),
		radial-gradient(#212121 6%, transparent 2px);

	background-size: 33px 33px;
	background-position-x: -1px;
	background-position-y: -1px;
}

#supporter-container {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	margin: 150px 0 80px 0;
	padding: 30px 0 90px 0;
	width: 90%;
	max-width: 1175px;
	background-color: var(--blue);
	background-image: url("./images/plus-symbol-white.svg");
	background-size: 25px;
}

#supporter-container .title-superposed {
	width: 90%;
}

#supporter-container .title-superposed hr {
	width: 220px;
}

#supporter-names {
	background-color: var(--blue);
	width: 70%;
	font-size: 20px;
	font-weight: 500;
	padding: 25px;
	position: relative;
	text-align: justify;
	margin-top: 45px;
}
#supporter-names .plus-icon {
	font-weight: 700;
	margin: 0 5px;
	display: inline;
}

.supporter-angle {
	position: absolute;
	width: 29px;
	height: 29px;
}

.supporter-angle:nth-of-type(1) {
	top: 0px;
	left: 0px;
	-webkit-transform: rotate(0deg);
            transform: rotate(0deg);
}.supporter-angle:nth-of-type(2) {
	top: 0px;
	right: 0px;
	-webkit-transform: rotate(90deg);
            transform: rotate(90deg);
}.supporter-angle:nth-of-type(3) {
	bottom: 0px;
	left: 0px;
	-webkit-transform: rotate(-90deg);
            transform: rotate(-90deg);
}.supporter-angle:nth-of-type(4) {
	bottom: 0px;
	right: 0px;
	-webkit-transform: rotate(180deg);
            transform: rotate(180deg);
}

#palmares {
	width: 100%;
	margin-top: 120px;
}

.palmares-game {
	width: 100%;
	display: flex;
	justify-content: center;
	flex-direction: column;
	align-items: center;
}

.palmares-container {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 550px;
	width: 100%;
	background-color: var(--light-gray);
	position: relative;
	z-index: -1;
	flex-wrap: wrap;
	overflow: hidden;
}

.blue-bottom {
    height: 3px;
    width: 870px;
    top: 345px;
    background-color: var(--blue);
    position: absolute;
}

.palmares-game:nth-child(2n) .palmares-container {
	background-color: #f0f0f000;
}

.palmares-elem {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	border: 1px solid black;
	width: 170px;
	height: 140px;
	background-color: white;
	margin: 0 20px;
}.palmares-elem.big {
	height: 160px;
	position: relative;
	bottom: 10px;
}
.palmares-elem .result {
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 600;
	color: var(--blue);
	width: 100%;
	border-bottom: 1px solid black;
	font-size: 19px;
}
.palmares-elem .context {
	height: 100px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
} .palmares-elem.big .context {
	height: 120px;
}
.palmares-elem .context-date {
	font-size: 14px;
} .palmares-elem hr {
	height: 1px;
	width: 40px;
	margin-bottom: 10px;
	margin-top: 3px;
} .palmares-elem .context-event {
	font-weight: 600;
	font-size: 14px;
	text-align: center;
}

#teams {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	margin: auto;
	justify-content: center;
	max-width: 760px;
}

.teams-elem {
	display: flex;
	margin: 30px;
	align-items: center;
	justify-content: center;
	background-color: var(--blue);
	background-image: url("./images/plus-symbol-white.svg");
	background-size: 25px;
	transform: skew(-7deg);

	height: 300px;
	width: 130px;
}
.teams-elem div {
	color: white;
	font-family: Buchery;
	font-size: 28px;
	text-align: center;
}
.teams-elem img {
	width: 105px;
}

#gc-locations {
	display: flex;
	flex-direction: row;
} #gc-locations:hover .gc-location {
	width: 30%;
}
.gc-location {
	display: flex;
	position: relative;
	flex-direction: column;
	align-items: center;
	width: 50%;
	height: 600px;
	background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    transition: all .3s;
}
.gc-location:hover {
	width: 70% !important;
}
.gc-location .title-superposed hr {
    width: 100px;
}
.gc-location:nth-child(1) .arrow-grow {
	position: absolute;
	right: 40px;
	bottom: 30px;
} .gc-location:nth-child(2) .arrow-grow {
	position: absolute;
	left: 40px;
	bottom: 30px;
	transform: rotate(180deg);
}
.gc-infos-link {
	position: absolute;
	bottom: 30px;
} .gc-infos-link a {
	color: white;
	font-weight: 500;
	font-size: 19px;
}

#gc-more-infos .bloc-corner-border {
	border: none;
	background-color: white;
	width: 70%;
	box-shadow: 0px 5px 80px 0px rgba(0,0,0,0.05);
	padding: 30px 70px;
	margin: 160px 0;
}

.gc-content-elem {
	width: 80%;
}
.gc-content-elem .title-superposed {
	width: 100%;
} .gc-content-elem .title-superposed-bg {
	width: 30%;
} .gc-content-elem hr {
	width: 30%;
}
.gc-slider-img-container {
	width: 90%;
	display: flex;
	flex-direction: row;
	margin: auto;
	align-items: center;
	justify-content: center;
	margin-top: 120px;
	margin-bottom: 170px;
	position: relative;
}
.gc-content-elem.reverse .gc-slider-img-container {
	flex-direction: row-reverse;
}.gc-content-elem.reverse .gc-content-img {
	margin-left: 40px;
	margin-right: 0px;
}.gc-content-elem.reverse .swiper-container {
	margin-right: 40px;
	margin-left: 0px;
}
.gc-content-elem .swiper-container {
	height: 450px;
	margin-top: 0;
	margin-left: 40px;
	position: relative;
	bottom: -150px;
} .gc-content-elem .swiper-slide {
	background-color: rgba(0,0,0,0.00) !important;
	position: relative;
	width: 99%;
}
.gc-content-img {
	position: relative;
	margin-right: 40px;
	width: 70%;
} .gc-content-img img:nth-child(1) {
	position: absolute;
	top: -20px;
	right: -20px;
	width: 70px;
	transform: rotate(90deg);
} .gc-content-img img:nth-child(2) {
	position: absolute;
	bottom: -20px;
	left: -20px;
	width: 70px;
	transform: rotate(-90deg);
} .gc-content-img img:nth-child(3) {
	width: 100%;
}

.slide-text {
	bottom: -30px;
	font-size: 19px;
    line-height: 36px;
}

.birthday-2-container {
	background-color: var(--blue);
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: 0px 30px 30px 30px;
}
.birthday-2-container div:nth-child(1) {
	color: black;
	font-weight: 600;
	font-size: 22px;
} .birthday-2-container div:nth-child(1) nbr {
	color: white;
	font-family: Buchery;
	font-size: 90px;
	height: 30px;
	margin-right: 10px;
	font-weight: 300;
}
.birthday-2-container div:nth-child(2) {
	display: flex;
	align-items: center;
	justify-content: center;
}
.birthday-2-elem {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: left;
	width: 135px;
	height: 135px;
	border: 1px solid black;
	background-color: white;
	margin: 0 20px;
	padding: 10px;
	font-weight: 700 !important;
	font-size: 35px !important;
	text-shadow: 2px 2px var(--blue);
	box-shadow: 0px 5px 80px 0px rgba(0,0,0,0.05);
}
.birthday-2-subline {
	margin-top: 20px;
	font-weight: 500;
}

.team-building-2 {
	display: flex;
	flex-direction: column;
}
.team-building-2 div:nth-child(1) {
	font-weight: 600;
	font-size: 20px;
	text-align: left;
} .team-building-2 div:nth-child(3), .bootcamp-2 div:nth-child(3) {
	text-align: center;
	color: var(--blue);
	font-style: italic;
	font-size: 18px;
}
.team-building-2 ul, .bootcamp-2 ul, .birthday-3 ul {
	margin: 50px 0;
	width: 95%;
	font-size: 18px;
	list-style: none;
} .team-building-2 ul li, .bootcamp-2 ul li, .birthday-3 ul li {
	margin-bottom: 5px;
} .team-building-2 ul li::before, .bootcamp-2 ul li::before, .birthday-3 ul li::before {
	content: "\2022";
	font-weight: bold;
	display: inline-block;
	width: 1em;
	margin-left: -1em;
	color: var(--blue);
}

.bootcamp-2 {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
.bootcamp-2 div:nth-child(1) {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
}
.bootcamp-2-elem {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: left !important;
	width: 111px;
	height: 111px;
	border: 1px solid black;
	background-color: white;
	margin: 5px 10px;
	padding: 10px;
	color: black!important;
	font-weight: 700 !important;
	font-size: 23px !important;
	font-style: normal !important;
	text-shadow: 2px 2px var(--blue);
	box-shadow: 0px 5px 80px 0px rgba(0,0,0,0.05);
}

.bootcamp-2 ul {
	text-align: center;
	padding: 0;
}
.birthday-3 {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
.birthday-3 > div:nth-child(1) {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
.birthday-3 > div:nth-child(2) {
	color: var(--blue);
	font-style: italic;
	text-align: center;
}
.birthday-3-elem {
	display: flex;
	flex-direction: column;
}
.birthday-3 ul {
	margin-top: 10px;
}.birthday-3 ul li {
	font-size: 17px;
	width: 180px;
}.birthday-3 nbr {
	color: var(--blue);
	font-weight: 500;
}
.birthday-3-elem div:nth-child(1) {
	font-weight: 600;
}

#stage {
	width: 70%;
	justify-content: center;
	align-items: center;
	margin: auto;
	box-shadow: 0px 5px 80px 0px rgba(0,0,0,0.05);
	background-color: white;
	padding: 0 30px;
	position: relative;
    top: -210px;
}
.ticket-price {
	display: none;
}
.form-container {
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
.form-container .title-superposed hr {
    width: 200px;
}

.mces-mailchimp label {
	position: relative;
    left: 12px;
    background: white;
    padding: 0px 4px;
    font-size: 19px;
    width: fit-content;
    top: 18px;
    font-weight: 500;
    z-index: 100;
}
.mces-mailchimp input[type=email] {
    border: 1px solid black;
    height: 40px;
    width: 100%;
    padding: 0 10px;
    box-sizing: border-box;
}
.mces-mailchimp input[type=submit] {
    font-family: Buchery;
    display: flex;
    align-items: center;
    font-size: 22px;
    justify-content: center;
    border-radius: 5px;
    color: white !important;
    background-color: var(--blue) !important;
    height: 50px;
    padding: 0 22px;
    border: none !important;
}

.etape {
	width: 100%;
	padding: 15px 5px;
	margin-top: 20px;
	font-weight: 600;
}
.etape > div:nth-child(1) {
	display: flex;
	flex-direction: row;
}
.etape-title {
	color: var(--blue);
	margin-right: 5px;
}
.em-form-container {
	width: 100%;
}
.input-text, .input-user_email {
	width: 49%;
}
.input-select {
	width: calc(49% + 8px);
}
.input-field-enfant_telephone {
	margin-right: 30px;
}
.input-field-parent_lien, .input-dbem_address, .input-dbem_phone, .input-field-enfant_observations, .input-field-autorisation_parentale, .input-field-data_privacy_consent, .input-field-autorisation_decharge_epilepsie {
	width: 100% !important;
}
.input-field-autorisation_parentale, .input-field-autorisation_decharge_epilepsie {
	margin-bottom: 50px !important;
}
.input-field-autorisation_parentale label {
	position: relative !important;
    top: 0px !important;
    left: 12px !important;
}
.input-field-autorisation_decharge_epilepsie label {
	position: relative !important;
    top: 0px !important;
    left: 12px !important;
}

.form-container input[type="text"], .form-container select {
	width: 100%;
	height: 100%;
	padding-left: 10px;
}
.form-container select {
	height: 36px;
}
.form-container textarea {
	width: 100%;
	height: 60px;
	padding-left: 10px;
    padding-top: 10px;
}

.form-container input, .form-container select, .form-container select, .form-container textarea {
	border: 1px solid black;
}

.input-group, .input-dbem_address, .input-dbem_phone, .input-user_email, .input-name {
	position: relative;
	height: 30px;
	width: 49%;
}
.input-field-enfant_observations {
	height: 100px;
}
.form-container label {
	position: absolute;
	top: -10px;
	left: 10px;
	background-color: white;
	padding: 0 5px;
	width: auto !important;
}
.form-container p {
	margin-bottom: 25px;
}
.input-radio {
	margin-bottom: 50px !important;
	width: 100%;
} .input-radio .input-group {
	top: 20px;
    left: 20px;
} #autorisation_parentale {
	position: relative;
    left: 15px;
    display: block;
} #autorisation_decharge_epilepsie {
	position: relative;
    left: 15px;
    display: block;
}
.em-booking-form-details {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 96%;
}
.em-booking-message-success {
	color: #01b001;
    position: absolute;
    top: -30px;
    font-size: 18px;
}

.em-bs-row.em-bs-row-item {
	margin-bottom: 15px !important;
}
#em-booking-gateway-paypal {
	display: none;
}
.input-field-droit_images .input-group {
	position: relative;
	top: 30px;
}
.input-field-autorisation_parentale .input-group {
	position: relative;
	top: 40px;
}
.input-field-autorisation_decharge_epilepsie .input-group {
	position: relative;
	top: 40px;
}
.input-field-data_privacy_consent {
	margin-top: 40px;
}
.stage-container {
	display: flex;
	align-items: center;
	justify-content: space-around;
	width: 90%;
}
.stage-container img {
	width: 170px;
}
.stage-container price {
	color: var(--blue);
	margin-left: 5px;
}
#stage_tarif > div:nth-child(1) {
	margin-bottom: 15px;
	font-weight: 600;
}
#stage_tarif > div:nth-child(2) > div {
	font-weight: 600;
}

#stage_tarif ul {
  list-style: none;
}
#stage_tarif ul li::before {
  content: "\2022";
  color: var(--blue);
  font-weight: bold;
  display: inline-block;
  width: 1em;
  margin-left: -1em;
}
#stage_tarif ul li {
	margin-bottom: 5px;
}
#stage_journee > div {
	display: flex;
	position: relative;
	flex-direction: row;
	width: 90%;
}
#stage_journee > div > div:nth-child(1){
	min-width: 120px;
	margin-right: 100px;
	background-color: white;
	z-index: 1;
}#stage_journee > div > div:nth-child(2){
	text-align: left;
	z-index: 1;
	background-color: white;
}
#stage_journee hr {
	position: absolute;
    height: 1px;
    width: 100%;
    top: 10px;
    background-color: var(--blue);
    width: 212px;
    z-index: 0;
}
#stage-intro {
	display: flex;
	justify-content: space-around;
	align-items: center;
	width: 90%;
	margin-top: 50px;
}

#stage-intro > div:nth-child(1) {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 320px;
}

#stage-intro > div:nth-child(2) {
	background-color: white;
	box-shadow: 0px 5px 80px 0px rgba(0,0,0,0.05);
	padding: 10px;
}

#stage-intro > div:nth-child(2) ul {
  list-style: none;
  margin-left: 40px;
}
#stage-intro > div:nth-child(2) ul li::before {
  content: "\2022";
  color: var(--blue);
  font-weight: bold;
  display: inline-block;
  width: 1em;
  margin-left: -1em;
}
#stage-intro > div:nth-child(2) ul li {
	margin-bottom: 5px;
}

#stage-intro > div img:nth-child(1) {
	position: absolute;
	top: -20px;
	left: -20px;
	width: 50px;
}#stage-intro > div img:nth-child(2) {
	position: absolute;
	bottom: -20px;
	right: -20px;
	transform: rotate(180deg);
	width: 50px;
}#stage-intro > div img:nth-child(3) {
	width: 320px;
}
.stage-text-intro p, .stage-text-intro div {
	display: inline;
}
.stage-text-intro p {
	line-height: 30px;
}
.stage-text-intro {
	margin-top: 30px;
}
.title-superposed.small {
	width: 370px;
}.title-superposed.small h2 {
	font-size: 43px;
}.title-superposed.small .title-superposed-bg {
	font-size: 103px;
}
.periode {
	margin-left: 40px;
	font-weight: 600;
}

.em-tickets-spaces {
	display: none;
}

.em-booking-gateway-form p {
	position: relative;
	height: 30px;
}
.em-booking-gateway {
	width: 100%;
	position: relative;
}.em-booking-gateway select {
	width: 210px;
}
#em-booking-gateway-emp_stripe {
	width: 100%;
}
#em-booking-gateway-emp_stripe > p input {
	width: 298px;
}
.em-booking-submit {
	width: 210px;
    font-family: Buchery;
    display: flex;
    align-items: center;
    font-size: 22px;
    justify-content: center;
    border-radius: 5px;
    color: white;
    background-color: var(--blue);
    height: 50px;
    margin-bottom: 60px;
    border: none !important;
}
.notice-error p {
	font-weight: 600;
	color: red;
	margin: 10px 0px;
}
.notice-success p {
	font-weight: 600;
	color: #a7e5af;
	margin: 40px 0px 0px 0px;
}
.notice-success input {
	border: none;
	background-color: #a7e5af;
	color: black;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 30px;
}

.stages-links {
	display: flex;
	max-width: 960px;
	width: 95%;
	justify-content: center;
	flex-wrap: wrap;
	margin-bottom: 100px;
}
.image-link {
	width: 250px;
    height: 250px;
    background-size: cover;
    margin: 20px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
} .image-link > img {
	position: absolute;
	width: 30px;
}.image-link > img:nth-child(1) {
	top: -10px;
	left: -10px;
}.image-link > img:nth-child(2) {
	top: -10px;
	right: -10px;
	transform: rotate(90deg);
}.image-link > img:nth-child(3) {
	left: -10px;
	bottom: -10px;
	transform: rotate(-90deg);
}.image-link > img:nth-child(4) {
	right: -10px;
	bottom: -10px;
	transform: rotate(180deg);
}
.image-link div {
	color: white;
    font-family: Buchery;
    font-size: 47px;
    text-align: center;
}
.image-link a {
	position: absolute;
    bottom: 10px;
    font-size: 13px;
    color: white;
}
.image-link.blank {
    padding: 0 20px;
    box-sizing: border-box;
}
.image-link.blank a {
	position: relative;
    bottom: 0px;
    font-family: Buchery;
    font-size: 47px;
    color: white;
}

.image-link:hover > img:nth-child(1) {
	animation: expandanim-topleft 1.6s infinite;
}.image-link:hover > img:nth-child(2) {
	animation: expandanim-topright 1.6s infinite;
}.image-link:hover > img:nth-child(3) {
	animation: expandanim-bottomleft 1.6s infinite;
}.image-link:hover > img:nth-child(4) {
	animation: expandanim-bottomright 1.6s infinite;
}
.image-link .sub-text {
	position: absolute;
	bottom: 10px;
	font-size: 16px;
	font-family: Montserrat;
}

.planning-container {
	width: 80%;
	display: flex;
	position: relative;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background-color: white;
	box-shadow: 0px 5px 80px 0px rgba(0,0,0,0.05);
}
.planning-container > img {
	position: absolute;
	width: 60px;
}.planning-container > img:nth-child(1) {
	left: -5px;
	top: -5px;
}.planning-container > img:nth-child(2) {
	right: -5px;
	bottom: -5px;
	transform: rotate(180deg);
}
.planning-container > a {
	width: 150px;
    font-family: Buchery;
    display: flex;
    align-items: center;
    font-size: 22px;
    justify-content: center;
    border-radius: 5px;
    color: white;
    background-color: var(--blue);
    height: 50px;
    margin-bottom: 60px;
}
.planning-elem {
	width: 80%;
	display: flex;
	align-items: center;
	margin-bottom: 60px;
}
.planning-elem img {
	width: 200px;
	margin-right: 50px;
}
.planning-text {
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.planning-text div:nth-child(1) {
	font-weight: 600;
	margin-bottom: 20px;
	font-size: 19px;
}.planning-text div:nth-child(2) {
	line-height: 33px;
	font-size: 18px;
}

.cover-image {
	height: 450px;
	background-size: cover;
}
#single_news {
	width: 85%;
	background-color: white;
	box-shadow: 0px 5px 80px 0px rgba(0,0,0,0.05);
	margin: auto;
	padding: 30px 40px 60px 40px;
	display: flex;
    flex-direction: column;
    justify-content: left;
    align-items: flex-start;
    top: -70px;
    position: relative;
    box-sizing: border-box;
}
#single_news .date {
	color: var(--blue);
	margin-bottom: 20px;
}
#single_news a {
	color: black;
	text-decoration: underline;
} #single_news a:hover {
	text-decoration: none;
}
.tags {
	position: absolute;
	bottom: 15px;
	left: 15px;
}

.news {
	display: flex;
    flex-direction: column;
    max-width: 930px;
    margin: auto;
    justify-content: left;
} .news > div:nth-child(1) {
} .news > div:nth-child(2) {
	display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
.news .news-elem {
	margin: 20px;
}
.tags-filter {
	display: flex;
	flex-direction: column;
	width: 100%;
	padding-left: 20px;
	margin-bottom: 20px;
	margin-top: 40px;
	box-sizing: border-box;
}
.filter-title {
	margin-bottom: 10px;
}
.tags-list {
	display: flex;
	flex-wrap: wrap;
}

.success-message {
	color: #a7e5af;
    text-align: center;
    width: fit-content;
    margin: auto;
    margin-top: 60px;
    padding: 5px;
    border: 1px solid #a7e5af;
}

#gaming-center {
	width: 80%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	background-color: white;
	margin: auto;
	box-shadow: 0px 5px 80px 0px rgba(0,0,0,0.05);
	margin-bottom: 140px;
	padding-bottom: 80px;
    position: relative;
    top: -210px;
}
#gaming-center .title-superposed-bg {
	font-size: 103px;
}
.gc-container {
	width: 80%;
	display: flex;
	flex-wrap: wrap;
	font-size: 19px;
} .gc-container > div {
	width: 50%;
	margin-bottom: 40px;
} .gc-container > div > div {
	width: fit-content;
	min-width: 290px;
	margin: auto;
} .gc-container > div > img {
	width: 80%;
}
.gc-container a img {
	width: 20px;
	margin-top: 5px;
}
.gc-text {
	margin-top: 40px;
	display: flex;
	flex-direction: column;
	justify-content: center;
} .gc-text strong {
	color: var(--blue);
	font-weight: 500;
} .gc-text a {
	color: var(--blue);
	font-weight: 500;
} .gc-text a img {
	position: relative;
    width: 35px;
    bottom: 1px;
    left: 8px;
}
.gc-container-double {
	display: flex;
	flex-direction: row;
	justify-content: space-around;
	width: 90%;
} .gc-elem {
	width: 330px;
	display: flex;
	align-items: center;
	display: flex;
	flex-direction: column;
} .gc-elem > div:nth-child(2) {
	width: 100%;
    font-size: 19px;
    margin-bottom: 20px;
} .gc-elem > div:nth-child(4) {
	width: 100%;
    font-size: 19px;
    margin-top: 20px;
} .gc-elem a {
	color: var(--blue);
} .gc-elem a img {
	position: relative;
    width: 30px;
    bottom: 0px;
    left: 8px;
} .gc-elem-content {
	width: 100%;
} .horaire {
	display: flex;
	position: relative;
	margin-bottom: 10px;
	font-size: 18px;
} .horaire > div:nth-child(1) {
	width: 100px;
	margin-right: 90px;
} .horaire > div:nth-child(2) {
	padding-left: 5px;
} .horaire > div {
	background-color: white;
	z-index: 1;
} .horaire hr {
	position: absolute;
	background-color: var(--blue);
	height: 1px;
	width: 200px;
	bottom: 8px;
    left: 5px;
}

.partenaires-container {
	display: flex;
    flex-direction: column;
    width: 80%;
}
.partenaires-container > div {
	display: flex;
    flex-direction: column;
    box-sizing: border-box;
    width: 100%;
    align-items: center;
    margin-bottom: 100px;
    margin-top: 100px;
    padding: 0px 20px 100px 20px;
    box-shadow: 0px 5px 80px 0px rgba(0,0,0,0.05);

    background-color: white;
    background-image: url(./images/plus-symbol.svg);
    background-size: 25px;
}
.partenaires-container > div:nth-child(2n) {
	background-color: var(--blue);
    background-image: url(./images/plus-symbol-white.svg);
    background-size: 25px;
}
.partenaires-container > div:nth-child(2n) > .sponsors-container > div{
	background-color: var(--blue) !important;
}
.sponsors-container {
	display: flex;
	flex-direction: row;
	justify-content: space-around;
	width: 90%;
	margin-top: 40px;
}
.sponsors-container > div{
	background-color: white;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	width: 230px;
	height: 230px;
}
.sponsors-container > div > img:nth-child(1) {
	width: 30px;
	top: 0;
	left: 0;
	position: absolute;
}.sponsors-container > div > img:nth-child(2) {
	width: 30px;
	transform: rotate(90deg);
	top: 0;
	right: 0;
	position: absolute;
}.sponsors-container > div > img:nth-child(3) {
	width: 30px;
	transform: rotate(-90deg);
	left: 0;
	bottom: 0;
	position: absolute;
}.sponsors-container > div > img:nth-child(4) {
	width: 30px;
	transform: rotate(180deg);
	right: 0;
	bottom: 0;
	position: absolute;
}.sponsors-container .img_logo {
	width: 190px;
}

.references-elem {
	box-sizing: border-box;
	display: flex;
	width: 75%;
	background-color: white;
	padding: 40px;
	margin-bottom: 60px;
	box-shadow: 0px 5px 80px 0px rgba(0,0,0,0.05);
	font-size: 19px !important;
}
.references-elem > div:nth-child(1) img{
	max-width: 250px;
}
.references-elem > div:nth-child(2) {
	width: 100%;
    margin-left: 50px;
    position: relative;
}
.references-elem > div:nth-child(2) > div:nth-child(1) {
	font-weight: 600;
	margin-bottom: 30px;
}
.references-elem > div:nth-child(2) a {
	position: absolute;
	bottom: 0;
	color: var(--blue);
	font-weight: 600;
} .references-elem > div:nth-child(2) a > img{
	margin-left: 15px;
}

.partenaire-container {
	display: flex;
	align-items: center;
	width: 1050px;
	position: relative;
	margin-top: 100px;
	margin-bottom: 100px;
}
.partenaire-container .logo-container {
	min-width: 250px;
	width: 250px;
    height: 250px;
	border: 1px solid black;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: white;
	margin-right: 200px;
}
.partenaire-container .logo-container img {
	width: 90%;
}
.partenaire-container hr {
	width: 224px;
    transform: rotate(-26deg);
    position: absolute;
    left: 340px;
}
.partenaire-container .text-container {
	width: 600px;
	padding: 30px;
	border: 1px solid black;
	display: flex;
	justify-content: center;
	background-color: white;
	font-size: 19px;
	line-height: 40px;
}

#formations .bloc-corner-border p {
	font-size: 19px;
	line-height: 38px;
}
#formations > div {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 100%;
}
#formations > div > p {
	font-size: 19px;
	line-height: 38px;
	width: 70%;
}
#formations .title-superposed {
	width: 90%;
}

#formations-diplomantes {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.bloc-formations-diplomantes {
	display: flex;
    justify-content: space-around;
    align-items: center;
    width: 85%;
    max-width: 1300px;
    margin: 60px 0;
}
.bloc-formations-diplomantes > div {
	width: 520px;
	font-size: 20px;
	line-height: 26px;
}
.bloc-formations-diplomantes > div p {
	margin-top: 0px;
}
.bloc-formations-diplomantes a {
	color: black;
	font-weight: 600;
}
.bloc-formations-diplomantes a img {
	margin-left: 15px;
}
#formations-diplomantes .img-bloc {
	position: relative;
	height: 300px;
	display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0px 5px 80px 0px rgba(0,0,0,0.05);
}
#formations-diplomantes .bloc-formations-diplomantes:nth-of-type(1) .img-bloc {
	background-color: var(--blue);
	color: white;
}#formations-diplomantes .bloc-formations-diplomantes:nth-of-type(2) .img-bloc {
	background-color: white;
	color: var(--blue);
}
#formations-diplomantes .img-bloc img:nth-child(1){
	position: absolute;
	left: 30px;
	top: 30px;
	width: 70px;
} #formations-diplomantes .img-bloc img:nth-child(2){
	position: absolute;
	transform: rotate(180deg);
	bottom: 30px;
	right: 30px;
	width: 70px;
}
.img-bloc-content {
	display: flex;
    flex-direction: column;
    align-items: center;
    font-family: Buchery;
    font-size: 100px;
}
.img-bloc-content .title {
	line-height: 70px;
    position: relative;
    z-index: 10;
}.img-bloc-content .title:nth-child(1) {
	left: -30px;
}.img-bloc-content .title:nth-child(3) {
	right: -70px;
}
.feat-x {
	color: #f4777c;
    font-size: 180px;
    position: relative;
    z-index: 0;
    top: 20px;
    left: -30px;
}
#contenu-graphique > div:nth-child(2) {
	background-color: white;
} #contenu-graphique > div:nth-child(3) {
	background-color: var(--blue);
}
#contenu-graphique > div:nth-child(3) .rg-elem-button:hover a {
	color: var(--blue);
	transition: all .3s;
}
#contenu-graphique > div:nth-child(2) .rg-elem-button:hover a {
	color: white;
	transition: all .3s;
}
.bloc-contenu-graphique {
	position: relative;
	display: flex;
    margin: 30px 0;
    box-shadow: 0px 5px 80px 0px rgba(0,0,0,0.05);
    padding: 45px 80px;
}
.bloc-contenu-graphique .titre {
	font-size: 27px;
	font-weight: 700;
}
.bloc-contenu-graphique > div:nth-child(1) {
	margin: 0px 70px 0px 0px;
}.bloc-contenu-graphique > div:nth-child(2) {
	margin: 0px 30px 0px 70px;
	width: 250px;
}
.logo-container {
	position: relative;
	padding: 50px;
}
.bloc-contenu-graphique img:nth-child(1) {
	position: absolute;
	top: 0;
	left: 0;
}.bloc-contenu-graphique img:nth-child(2) {
	position: absolute;
	top: 0;
	right: 0;
	transform: rotate(90deg);
}.bloc-contenu-graphique img:nth-child(3) {
	position: absolute;
	left: 0;
	bottom: 0;
	transform: rotate(-90deg);
}.bloc-contenu-graphique img:nth-child(4) {
	position: absolute;
	right: 0;
	bottom: 0;
	transform: rotate(180deg);
}
.bloc-contenu-graphique .logo {
	width: 150px;
}
.bloc-contenu-graphique .content div:nth-child(3) {
	margin-top: 20px;
}
.rg-elem-button {
    width: fit-content;
    height: 33px;
    display: flex;
    align-items: center;
    font-family: Buchery;
    padding: 0 20px;
    position: relative;
    bottom: -135px;
    transition: all .3s;
} .rg-elem-button a {
	color: black;
}

.bloc-locations {
	display: flex;
	justify-content: center;
}
.location {
	display: flex;
	justify-content: center;
	align-content: center;
	flex-direction: column;
	width: 320px;
	background-color: white;
	padding: 10px 50px 50px 50px;
	box-shadow: 0px 5px 80px 0px rgba(0,0,0,0.05);
}
.location .title-superposed, .product .title-superposed {
	width: 100%;
	margin: 0px 0 30px 0;
} .location .title-superposed h2, .product .title-superposed h2 {
	font-size: 40px;
} .location .title-superposed .title-superposed-bg, .product .title-superposed .title-superposed-bg {
	font-size: 75px;
	margin-top: 10px;
}
.location-text {
	display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-size: 19px;
}
.location-text p {
	margin: 0px;
}.location-text > div {
	margin: 10px 0;
}.location-text .location-title {
	font-weight: 600;
	margin-top: 40px;
}.location-text img {
	width: 27px;
}
.location-contact p {
	margin: 10px 0;
}
.wpcf7-response-output, .screen-reader-response p {
	background: var(--blue);
    height: 50px;
    padding: 0 15px;
    display: flex;
    align-items: center;
    color: white;
    width: fit-content;
    margin: 20px 0;
}
.screen-reader-response a {
	color: black;
}
.screen-reader-response p:empty {
	padding: 0px;
	height: 0px;
}
[aria-hidden=true] {
	padding: 0px;
	height: 0px;
}

#academy-intro .bloc-corner-border {
	border: none;
    background-color: white;
    width: 70%;
    box-shadow: 0px 5px 80px 0px rgba(0,0,0,0.05);
    padding: 30px 70px;
    line-height: 35px;
}

.tgl {
  display: none;
}
.tgl + .tgl-btn {
  outline: 0;
  display: block;
  width: 50px;
  height: 1px;
  position: relative;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  background: #c6c5c5;
  border-radius: 2em;
  padding: 2px;
  -webkit-transition: all .4s ease;
  transition: all .4s ease;
}
.tgl + .tgl-btn:after,
.tgl + .tgl-btn:before {
  position: relative;
  display: block;
  content: "";
  width: 50%;
  height: 100%;
}
.tgl + .tgl-btn:after {
  	left: -2px;
    top: -8px;
    position: absolute;
    height: 21px;
    width: 21px;
    border-left: 3px solid white;
    border-right: 3px solid white;
    border-radius: 50%;
    background: #aee6fa;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}
.tgl + .tgl-btn:before {
  display: none;
}
.tgl:checked + .tgl-btn:after {
  left: 52%;
}

#academy-toggle {
	display: flex;
    width: 350px;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 70px;
}
#academy-toggle div {
	font-size: 20px;
    font-weight: 600;
}

.bloc-products {
	display: flex;
    justify-content: space-between;
    width: 900px;
}
.product {
	display: flex;
    justify-content: center;
    align-content: center;
    flex-direction: column;
    width: 320px;
    background-color: white;
    padding: 10px 50px 50px 50px;
    box-shadow: 0px 5px 80px 0px rgba(0,0,0,0.05);
}

.form-line {
	display: flex;
	width: 100%;
	gap: 20px;
}
.form-line > p {
    position: relative;
    width: 100%;
    height: 35px;
}
.form-line > p input {
    box-sizing: border-box;
    width: 100%;
    height: 100%;
}
.form-line .half-line {
	width: calc(50% - 10px);
}
.billing_alone_rights_field {
	margin: 0;
	margin-bottom: 0 !important;
}
.billing_alone_rights_field label {
	position: inherit;
}

.billing_image_rights_field {
	margin: 0;
	margin-bottom: 0 !important;
}
.billing_image_rights_field label {
	position: inherit;
}
#checkout {
	width: 80%;
	justify-content: center;
	align-items: center;
	margin: auto;
	box-shadow: 0px 5px 80px 0px rgba(0,0,0,0.05);
	background-color: white;
	padding: 0 30px;
	position: relative;
}
#checkout .title-superposed {
	width: 100%;
}
#checkout-header {
	width: 100%;
}
.woocommerce-info {
	display: none;
}
.summary .price {
	display: none;
}
.woocommerce-variation-price .price {
	display: block !important;
	margin: 25px 0px;
}
.woocommerce td.product-name .wc-item-meta dd, .woocommerce td.product-name dl.variation dd {
    margin: 0px 0px 0px 20px !important;
    width: fit-content !important;
    font-weight: 600 !important;
}
.cart-subtotal.recurring-total, .cart-subtotal, .recurring-totals {
	display: none !important;
}
.order-total.recurring-total th {
	visibility: hidden;
    position: relative;
} .order-total.recurring-total th:after {
	visibility: visible;
    position: absolute;
    top: 23px;
    left: 13px;
    content: 'Montant des mensualités';
}
.woocommerce-Price-amount {
	font-weight: 600;
}
.reset_variations {
	display: none;
}
.sub-etape {
    width: 100%;
    font-weight: 500;
    margin-top: 20px;
}
#payment_method_paypal, #payment_method_stripe {
	width: 40px;
    margin: 0 10px 0 10px !important;
}
.payment_method_paypal p {
	margin: 0;
}
.checkbox-container {
	margin: 10px 0px 10px 10px;
	width: 95%;
}
.academy-header {
	background-color: var(--blue);
    width: 100vw;
    position: relative;
    left: calc(-10% - 28px);
    top: 100px;
    height: 400px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.type-product {
	align-items: center;
    justify-content: center;
    width: 50%;
    max-width: 600px;
    margin: 90px auto 90px auto;
}
.variations select {
	border: 1px solid black;
	height: 36px;
	margin-left: 45px;
    width: 240px;
}
.quantity, .product_meta {
	display: none;
}
.single_add_to_cart_button {
	font-family: Buchery;
    display: flex;
    align-items: center;
    font-size: 22px;
    justify-content: center;
    border-radius: 5px;
    color: white;
    background-color: var(--blue);
    height: 50px;
    padding: 0 22px;
    border: none !important;
    margin-top: 15px;
}
.em-form-required {
	color: var(--blue);
}
.form-container ul, .billing_image_rights_field {
	width: 100%;
}
.form-container ul, .billing_alone_rights_field {
	width: 100%;
}
.shop-table {
	display: flex;
    flex-direction: column;
    align-items: center;
}
.entry-summary {
	width: 100%;
}
#reset_variations {
	color: var(--blue);
    margin-left: 10px;
}

#default {
	margin: 70px 10% 150px 10%;
}
#default h1 {
	text-align: center;
	margin-bottom: 70px;
}

.woocommerce form .form-row-first, .woocommerce form .form-row-last, .woocommerce-page form .form-row-first, .woocommerce-page form .form-row-last {
    width: 45% !important;
}

.woocommerce-form-login input, .woocommerce-EditAccountForm input {
	height: 36px;
	padding-left: 8px;
}
.woocommerce-MyAccount-navigation {
	margin-bottom: 70px;
}
.woocommerce-MyAccount-navigation ul {
	display: flex;
	list-style: none;
	padding: 0;
}
.woocommerce-MyAccount-navigation li {
	margin: 0px 19px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
} .woocommerce-MyAccount-navigation li a {
	color: black;
} .woocommerce-MyAccount-navigation li a:hover {
	color: var(--blue);
}
.woocommerce-MyAccount-navigation-link--downloads {
	display: none !important;
}

#twitch-home {
	flex-direction: row;
    margin-top: 30px;
    height: 290px;
    padding: 0 10%;
    box-sizing: border-box;
}
#twitch-home > div {
	width: 50%;
	max-width: 720px;
}
#twitch-text {
	font-family: 'Montserrat';
    color: black;
    text-align: right;
    font-size: 55px;
    padding: 0 5% 0 5%;
    box-sizing: border-box;
}
#twitch-embed {
	display: flex;
    justify-content: center;
    height: 100%;
    align-items: center;
}
#twitch-embed2 {
	position: fixed;
    bottom: -152px;
    z-index: 1000;
    right: 5px;
    height: 169px;
    transition: all 1s;
}
#twitch-embed2.opened {
    bottom: 25px;
    transition: all 1s;
}
#twitch-toggle {
	width: 25px;
	height: 25px;
	position: relative;
	left: 260px;
	top: -5px;
	transform: rotate(-45deg);
	transition: 0.4s ease;
} #twitch-toggle.toggled {
	transform: rotate(135deg);
	transition: 0.4s ease;
	top: -15px;
}
#twitch-toggle::before {
	content: "";
	width: 100%;
	height: 100%;
	border-width: 3px 3px 0 0;
	border-style: solid;
	border-color: black;
	transition: 0.2s ease;
	display: block;
	transform-origin: 100% 0;
}

.blink {
	animation: blinker 1.5s cubic-bezier(.5, 0, 1, 1) infinite alternate;  
	height: 10px;
  	width: 10px;
  	background-color: red;
  	border-radius: 50%;
  	display: inline-block;
}
@keyframes blinker {  
	from { opacity: 1; }
	to { opacity: 0; }
}

/* Menu Mobile */

.menu-icon {
  height: 14px;
  width: 30px;
  display: block !important;
  z-index: 2;
  left: 50px;
  top: 30px;
  cursor: pointer;
}
.menu-icon__line {
  height: 2px;
  width: 30px;
  display: block;
  background-color: #000000;
  margin-bottom: 4px;
  -webkit-transition: background-color .5s ease, -webkit-transform .2s ease;
  transition: background-color .5s ease, -webkit-transform .2s ease;
  transition: transform .2s ease, background-color .5s ease;
  transition: transform .2s ease, background-color .5s ease, -webkit-transform .2s ease;
}
.menu-icon__line-left {
  width: 15px;
}
.menu-icon__line-right {
  width: 15px;
  float: right;
}

.nav-active .menu-icon__line {
  background-color: #000;
  -webkit-transform: translateX(0px) rotate(-45deg);
          transform: translateX(0px) rotate(-45deg);
}
.nav-active .menu-icon__line-left {
  -webkit-transform: translateX(1px) rotate(45deg);
          transform: translateX(1px) rotate(45deg);
}
.nav-active .menu-icon__line-right {
  -webkit-transform: translateX(-2px) rotate(45deg);
          transform: translateX(-2px) rotate(45deg);
}

.nav-content {
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 0px;
	overflow-y: hidden;
	transition: height 0.5s;
	background-color: var(--blue);
	z-index: 1;
}

.menu-mobile.nav-active .nav-content {
	height: 100vh;
	overflow-y: scroll;
}

.menu-mobile-container {
	display: flex;
	flex-direction: column;
	padding: 80px 9%;
}

.menu-mobile-elem {
	margin-bottom: 15px;
}

.menu-mobile-title {
	font-family: Buchery;
	text-transform: lowercase;
	font-size: 70px;
	color: white;
	display: flex;
    align-items: center;
}

.menu-mobile-title a {
	color: white;
}

.menu-mobile-submenu {
    display: flex;
    flex-direction: column;
    padding-left: 12px;
    height: auto;
    max-height: 0px;
    overflow-y: hidden;
    transition: max-height 0.5s;
}

.menu-mobile-submenu a {
	color: black;
}

.arrow {
	border: solid white;
	border-width: 0 2px 2px 0;
	margin-left: 20px;
	margin-bottom: 8px;
    display: inline-block;
    padding: 6px;
	transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
	transition: transform 0.4s;
}

.menu-mobile-title.opened .arrow {
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
}

.menu-mobile-title.opened ~ .menu-mobile-submenu {
	max-height: fit-content;
}

.lang-switch-mobile {
	position: absolute;
    top: 15px;
    right: 25px;
    font-size: 26px;
    font-family: Buchery;
    color: white;
} .lang-switch-mobile a {
	color: white;
}

.contact-form-container {
	width: 900px;
	margin-bottom: 100px;
}
.contact-form-container .title-superposed {
	width: 100%;
	margin: 70px 0 40px 0;
}
.contact-form-elem {
	position: relative;
	margin: 22px 0;
}
.contact-form-elem #email, .contact-form-elem #sujet {
	border: 1px solid black;
    height: 40px;
    width: 100%;
    padding: 0 10px;
    box-sizing: border-box;
}
.contact-form-elem #message {
	border: 1px solid black;
    height: 200px;
    width: 100%;
    padding: 10px;
    box-sizing: border-box;
}
.contact-form-elem label {
	position: absolute;
    left: 12px;
    background: white;
    padding: 0px 4px;
    font-size: 19px;
    top: 8px;
    font-weight: 500;
    z-index: 100;
}
.contact-submit input[type=submit] {
    font-family: Buchery;
    display: flex;
    align-items: center;
    font-size: 22px;
    justify-content: center;
    border-radius: 5px;
    color: white !important;
    background-color: var(--blue) !important;
    height: 50px;
    padding: 0 22px;
    border: none !important;
}

.academy-button {
	font-family: Buchery;
    display: flex;
    align-items: center;
    font-size: 22px;
    justify-content: center;
    border-radius: 5px;
    color: white;
    background-color: var(--blue);
    height: 50px;
    margin: 0 0 0 0;
    padding: 0 22px;
    border: none !important;
    cursor: pointer;
}
#button-start, #button-plus {
	width: fit-content;
    margin: auto;
}
.academy-price {
	margin: auto;
	font-size: 20px;
	font-weight: 600;
	margin-bottom: 50px;
} .academy-freq {
	margin: auto;
	font-size: 20px;
	font-weight: 600;
	margin-bottom: 12px;
}
.academy-price b, .academy-freq b {
	color: var(--blue);
}
.academy-item {
	display: flex;
	flex-direction: row;
	justify-content: space-around;
	align-items: center;
	margin: 30px 0;
}
.academy-item img {
	width: 100px;
}
.academy-item div {
	width: 140px;
    border: 1px solid #e9e9e9;
    padding: 5px;
}
.academy-detail {
	margin: auto;
	margin-top: 7px;
}
.contact-links .rs-ultra {
	margin-right: 10px;
}
.rs-ultra {
	position: relative;
	height: 26px;
    min-width: 22px;
}
#ultra-1 {
}#ultra-2 {
	opacity: 0;
}
.rs-ultra:hover > #ultra-2 {
	opacity: 1;
}.rs-ultra:hover > #ultra-1 {
	opacity: 0;
}
.rs-ultra img {
    width: 30px;
    position: absolute;
    top: 1px;
}

.twitch_visual {
	height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.twitch_visual > div {
	margin: 0 5px 0 5px;
}
.viewer_count {
	color: white;
    font-size: 13px;
}
.viewer_count, .blink {
	position: relative;
	top: 10px;
}
#stream-title {
	position: absolute;
    color: white;
    top: 8px;
}

#twitch_visual_mobile .twitch_visual {
	height: 56px;
    width: 100px;
    position: relative;
    top: -80px;
    left: 9%;
}

/* RESPONSIVE */

@media screen and (max-width: 1320px) {
	footer > div {
	    padding-top: 5px;
	    padding-bottom: 5px;
	}
	#sponsors-links {
		padding-right: 0;
	}
}

@media screen and (max-width: 1230px) {
	#bloc-adn {
		flex-direction: column;
	    width: 90%;
    	max-width: 330px;
	}

	.bloc-adn-elem {
		width: 100%;
		border-bottom: 1px solid black;
		border-right: none;
	}
	.bloc-adn-elem hr {
		display: none;
	}

	.gc-slider-img-container {
	    flex-direction: column;
	}
	.gc-content-elem.reverse .gc-slider-img-container {
		flex-direction: column;
	}
	.gc-content-elem.reverse .gc-content-img {
		margin-left: 0px;
		margin-right: 0px;
	}.gc-content-elem.reverse .swiper-container {
		margin-right: 0px;
		margin-left: 0px;
	}

	.gc-content-elem .swiper-container {
	    margin-left: 0px;
	}

	.gc-content-img {
	    margin-right: 0px;
	    width: 80%;
	}

	#gc-locations {
		flex-direction: column;
	}
	.gc-location {
		width: 100%;
		height: 400px;
	}
	.arrow-grow {
		display: none;
	}

	#gc-locations:hover .gc-location {
		width: 100%;
	}
	.gc-location:hover {
		width: 100% !important;
	}

	.sponsors-container {
		flex-direction: column;
		align-items: center;
	}
	.sponsors-container > div {
		margin: 30px 0;
	}

	.bloc-formations-diplomantes {
	    flex-direction: column;
	}
	#formations-diplomantes > div:nth-child(3) {
	    flex-direction: column-reverse;
	}
	.img-bloc {
		margin: 50px 0;
	}
	/* CALENDAR */
	.calendar-content {
		flex-direction: column;
		width: 90%;
	}
	.calendar-content > div {
		max-width: 100%;
	}
	.versus {
		min-height: 80px;
	}
	.match-details {
    	border-top: none !important;
    	border-left: 1px solid black !important;
    	min-width: 200px; 
	}
	.match-details > div {
	}
}

@media screen and (max-width: 1053px) {
	#top-bar {
		grid-template-columns: 80px auto 80px !important;
		position: fixed;
    	width: 100%;
    	z-index: 99999;
	}

	.menu-mobile {
		display: flex !important;
	}

	#top-bar .contact-links {
		display: none;
	}	

	#top-bar #sponsors-links {
		display: none;
	}

	#nav-container {
		display: none;
	}

	#lang-switch {
		display: none !important;
	}

	#burger-mobile {
		display: block !important;
		border-right: none !important;
	}
	#logo-mobile {
		display: flex !important;
	}

	#shop-link div:nth-child(1) {
		display: none;
	}
	#shirt {
		margin-right: 0;
	}
	/* QUOTE */
	#quote-bloc {
		background-size: 105px 105px;
		background-position-x: 20px;
		height: 736px;
	}

	.quote-container {
		height: auto;
		flex-direction: column-reverse;
		align-items: center;
		width: 60%;
	}

	.quote-container .quote {
	    height: 85%;
	    width: 85%;
	    border: none;
	    padding: 0;
	}

	.quote-container .member-card {
		width: 100%;
		height: 250px;
		display: flex;
		flex-direction: row-reverse;
		justify-content: center;
		align-items: center;
		border-bottom: 1px solid black;
	}

	.quote-container .member-card .member-details{
		width: 50%;
		border: none;
		text-align: center;
	}.quote-container .member-card .member-img{
		height: 100%;
		width: 50%;
		overflow: hidden;
	}

	.quote-container .member-card img{
		display: block;
	}

	.team-game-title {
		margin-top: 150px;
	}

	.big-title {
		font-size: 120px;
		margin-top: 110px;
	}

	.basic-title.big {
	    margin-top: 100px;
	}

	.stage-container {
		flex-direction: column;
		width: 100%;
		font-size: 15px;
	} .stage-container > div:nth-child(1){
		margin-bottom: 40px;
	}

	#images-maillot {
	    flex-direction: column;
	}
	#images-maillot img {
	   	max-width: 280px;
	}

	.news-container {
		flex-direction: column;
	}
	.news-elem {
		margin-bottom: 15px;
	}
	#news {
		margin-bottom: 180px !important;
	}

	.gc-container {
		flex-direction: column;
	}
	.gc-container > div {
	    width: 100%;
	    margin-bottom: 40px;
	}
	.gc-infos > div, .gc-carac > div {
	    display: flex;
	    justify-content: center;
	}
	.gc-container-double {
		flex-direction: column;
		justify-content: center;
    	align-items: center;
	}
	#gaming-center .title-superposed-bg, #partenaires .title-superposed-bg {
	    font-size: 83px;
	}

	.references-elem {
		flex-direction: column;
	}
	.references-elem > div {
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	.references-elem > div:nth-child(1) {
	    margin-bottom: 40px;
	}
	.references-elem > div:nth-child(2) {
	    margin-left: 0px;
	    padding-bottom: 70px;
	}

	#partenaire .title-superposed {
		margin-top: 100px;
	}

	.partenaire-container {
		flex-direction: column;
		justify-content: center;
		width: 100%;
		margin-top: 50px;
	}
	.partenaire-container .logo-container {
		margin-right: 0px;
		margin-bottom: 50px;
	}
	.partenaire-container .text-container {
		max-width: 70%;
		font-size: 17px;
	}
	.partenaire-container hr {
		display: none;
	}

	.bloc-locations {
		flex-direction: column;
		align-items: center;
		width: auto;
	}
	.location {
		margin-bottom: 50px;
	}
	.contact-form-container {
	    width: 90%;
	    margin-bottom: 170px;
	}

	#twitch_visual_desktop {
		display: none !important;
	}

	footer {
		flex-direction: column-reverse;
		height: fit-content;
		padding: 20px 0;
		z-index: 10;
	}
}

@media screen and (max-width: 850px) {
	.team-slider {
		flex-direction: column;
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 0;
	}

	.concept-slide {
		transform: skew(0deg);
		width: 90%;
		margin: 20px 0px 20px 0;
		max-height: 400px;
	}

	.concept-slide-content {
    	transform: skew(0deg);
    	min-width: 100%;
    }
    .expand-anim {
    	display: none;
    }
    .concept-slide::before {
	    transform: skewX(0deg);
	    background-size: cover;
	    width: 100%;
	    height: 100%;
	    left: 0;
	}

	.concept-content h3 {
		text-align: center;
		width: 90%;
	}
	.concept-content > div {
		text-align: center;
		width: 90%;
	}

	.concept-content {
		opacity: 1;
		position: relative;
	}

	.team-slide:hover, .concept-slide:hover {
		min-width: inherit;
	}
	.concept-slide:hover:before {
		width: 100%;
		background-size: cover;
	}

	.bloc-corner-border {
	    width: 50%;
	}

	.article-content .title-superposed h2 {
		font-size: 45px;
	}
	.article-content-bg {
	    font-size: 100px;
	}

	.team-slide {
		transform: skew(0deg);
		width: 90%;
		margin: 20px 0px 20px 0;
		max-height: 400px;
	}

	.team-slide-content {
    	transform: skew(0deg);
    	min-width: 100%;
		left: 0px;
    }
    .expand-anim {
    	display: none;
    }
    .team-slide::before {
	    transform: skewX(0deg);
	    background-size: cover;
	    width: 100%;
	    height: 100%;
	    left: 0;
	}
	.team-slide-name {
		opacity: 1;
	}
	.team-slide-name-shadow{
		opacity: 1;
	}
	.team-slide-infos {
		opacity: 1;
		transform: skew(0deg);
		right: 28px;
	}
	.team-slide-photo img {
		width: auto;
		height: 83%;
	}

	.big-title {
		font-size: 100px;
	}

	.blue-bottom {
		display: none;
	}

	.palmares-container {
		height: 400px;
		padding: 100px 0;
	}
	#stage {
    	width: 100%;
    }
    #stage-intro {
    	flex-direction: column;
    }
    #stage-intro > div:nth-child(2){
    	margin-top: 40px;
    }

    .planning-elem {
	    flex-direction: column;
	    margin-bottom: 60px;
	}
	.planning-elem img {
	    width: 100%;
	    margin-right: 0px;
	    margin-bottom: 20px;
	}
	#gaming-center .title-superposed-bg, #partenaires .title-superposed-bg {
	    font-size: 63px;
	}

	.bloc-contenu-graphique {
	    flex-direction: column;
	}
	.bloc-contenu-graphique .logo-container {
	    margin: 0px 0px 40px 0px !important;
	}
	.bloc-contenu-graphique .content {
	    margin: 0px !important;
	    text-align: center;
	}
	.rg-elem-button {
	    bottom: -25px;
	}

	#academy-content {
	    flex-direction: column;
	    width: 95%;
	    margin-bottom: 160px !important;
	}
	.bloc-products {
		flex-direction: column;
	    width: 100%;
	    align-items: center;
	} .bloc-products .product {
		margin-bottom: 30px;
		width: 300px;
	    padding: 10px 30px 50px 30px;
	}

	#academy-intro .bloc-corner-border {
	    border: none;
	    background-color: white;
	    width: 70%;
	    box-shadow: 0px 5px 80px 0px rgb(0 0 0 / 5%);
	    padding: 30px 30px;
	    line-height: 35px;
	}

	#adn p {
    	width: 90%;
	}
	.mailchimp-content {
		width: 90%;
	}
}

@media screen and (max-width: 720px) {
	.quote-container {
		height: auto;
		flex-direction: column-reverse;
		align-items: center;
		width: 80%;
	}

	#video-intro h1 {
		font-size: 110px;
	}

	.quote-container > img {
	    position: absolute;
	    width: 115px;
	    left: -35px;
	    top: -50px;
	}

	.concept-content h3 {
		font-size: 80px;
	}

	.title-superposed h2 {
		font-size: 42px;
	}
	.title-superposed-bg {
		font-size: 93px;
	}

	#video-intro h1 {
	    margin-top: -60px;
	}

	.article-content .title-superposed h2 {
		font-size: 35px;
	}
	.article-content-bg {
	    font-size: 80px;
	}

	.article-content h2 {
	    min-width: 300px;
	}

	.team-slide-name {
		width: 100%;
	}.team-slide-name-shadow {
		width: 100%;
	}

	.big-title {
		font-size: 80px;
	}

	#teams {
		margin-bottom: 180px !important;
	}

	.gc-content-elem .swiper-container {
	    height: 500px;
	}

	.team-building-2 ul, .bootcamp-2 ul, .birthday-3 ul {
	    margin: 20px 0 20px 0;
	}

	.gc-slider-img-container {
	    width: 100%;
	}

	.birthday-2-container div:nth-child(2) {
		flex-direction: column;
	}

	.birthday-2-elem {
		margin-bottom: 5px;
	}

	#gc-more-infos .bloc-corner-border {
	    width: 60%;
	    padding: 30px 8%;
	}

	.bloc-formations-diplomantes > div {
	    width: 100%;
	}
	.img-bloc-content {
	    font-size: 70px;
	}
	.img-bloc-content .title {
	    line-height: 50px;
	}
	.img-bloc-content .title:nth-child(1) {
	    left: 0px; 
	}
	.img-bloc-content .title:nth-child(3) {
	    right: 0px; 
	}

	.versus {
	    min-width: 200px;
	}

	.mailchimp-content .title-superposed-bg {
	    font-size: 80px;
	}
}

@media screen and (max-width: 520px) {
	#sponsors-links a {
	    padding: 0 15px;
	}

	#top-bar #sponsors-links {
		padding-right: 0px;
		padding-left: 0px;
	}

	.competition-name {
	    font-size: 23px;
	}

	.versus {
		flex-direction: column;
	}
	.team-1 {
	    top: 0px;
	    margin: 25px 0 35px 0;
	}
	.team-2 {
	    top: 0px;
	    margin: 25px 0;
	}

	#footer-rights {
		flex-direction: column;
		margin: 10px 0 14px 0;
	}

	#footer-rights p {
		margin: 0;
	}

	#video-intro h1 {
		font-size: 65px;
	}

	.concept-content h3 {
		font-size: 54px;
	}

	.title-superposed h2 {
		font-size: 32px;
	}
	.title-superposed-bg {
		font-size: 63px;
	}

	#video-intro h1 {
	    margin-top: -40px;
	}

	.article-content .title-superposed h2 {
		font-size: 30px;
	}
	.article-content-bg {
	    font-size: 70px;
	}

	.team-slide {
	    width: 100%;
	}

	.big-title {
		font-size: 50px;
	}

	.palmares-container {
		height: 740px;
		padding: 100px 0;
	}

	.basic-title.big {
	    font-size: 50px;
	    margin-bottom: 0px;
	}

	.birthday-3 > div:nth-child(1) {
		justify-content: center;
		align-items: center;
	}

	.birthday-2-container div:nth-child(1) {
	    font-size: 17px;
	}

	.gc-content-elem .swiper-container {
	    height: 700px;
	    margin-bottom: 50px;
	}

	#mces-logo {
		margin-right: 10px;
		padding-right: 10px; 
	}
	#footer-logos > a {
	    padding: 4px 10px 4px 0;
	}

	#single_news {
		padding: 30px 20px 60px 20px;
	}
	#single_news .content {
		font-size: 14px;
	}
	.menu-mobile-title {
	    font-size: 48px;
	}

	.input-field-droit_images {
		height: 110px;
	}
	.input-field-autorisation_parentale {
		height: 120px;
		margin-bottom: 10px;
	}
	.input-field-autorisation_decharge_epilepsie {
		height: 120px;
		margin-bottom: 10px;
	}
	.input-field-droit_images .input-group {
		position: relative;
		top: 110px;
	}
	.input-field-autorisation_parentale .input-group {
		position: relative;
		top: 40px;
	}
	.input-field-autorisation_decharge_epilepsie .input-group {
		position: relative;
		top: 40px;
	}
	.remind_price {
		margin-top: 45px !important;
	}
	#gaming-center .title-superposed-bg, #partenaires .title-superposed-bg{
	    font-size: 43px;
	}
	#gaming-center {
	    width: 100%;
	}
	.bloc-contenu-graphique {
	    padding: 45px 20px;
	}
	.location {
	    width: 200px;
	}
	.location .title-superposed .title-superposed-bg, .product .title-superposed .title-superposed-bg {
	    font-size: 65px;
	    margin-top: 10px;
	    padding: 10px 20px 20px 20px;
	}
	.calendar-date {
	    font-size: 17px;
	}
	#default {
		min-height: 830px;
	}

	.all-news {
		margin-bottom: 20px;
	}

	.mailchimp-content .title-superposed-bg {
	    font-size: 50px;
	}
}

@media screen and (max-width: 390px) {
	.quote-container .member-card .member-details{
		width: 40%;
		border: none;
		text-align: center;
	}.quote-container .member-card .member-img{
		height: 100%;
		width: 60%;
		overflow: hidden;
	}

	#quote-bloc {
		background-size: 70px 70px;
		background-position-x: 20px;
		height: 841px;
	}

	.quote-container > img {
	    position: absolute;
	    width: 75px;
	    left: -35px;
	    top: -50px;
	}

	.title-superposed h2 {
		font-size: 26px;
	}
	.title-superposed-bg {
		font-size: 53px;
	}

	.bloc-corner-border {
	    padding: 30px 40px;
	}

	.birthday-2-container div:nth-child(1) {
	    font-size: 14px;
	}

	.birthday-2-container div:nth-child(1) nbr {
		font-size: 70px;
	}

	.stage-container {
		flex-direction: column;
		width: 100%;
		font-size: 12px;
	}
	#stage_journee > div > div:nth-child(1) {
	    min-width: 100px;
	    margin-right: 50px;
	    background-color: white;
	    z-index: 1;
	}
	#stage_journee hr {
	    width: 142px;
	}
	#gaming-center .title-superposed-bg, #partenaires .title-superposed-bg {
	    font-size: 33px;
	}

	.partenaires-container {
	    width: 90%;
	}

	.all-news {
		margin-bottom: 30px;
	}
}