/*
	Theme Name: Structure
	Theme URI: https://structure.com
	Description: NM  WordPress Theme
	Version: 1.0
	Author: NM
	Author URI: https://nicolasmetivier.fr

	License: Open source
*/

/*------------------------------------*\
    MAIN
\*------------------------------------*/

/* global box-sizing */
*,
*:after,
*:before {
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	-webkit-font-smoothing:antialiased;
	font-smoothing:antialiased;
	text-rendering:optimizeLegibility;
}
*:focus{
	outline: none!important;
}

mark{
	background-color: transparent!important;
}
.mark{
	background-color: transparent!important;
	font-weight: bolder;
}
/* html element 62.5% font-size for REM use */
html {
	font-size:62.5%;
	scroll-behavior: smooth;
}
body {
	color:#5C5C5C;
	font-size: 16px;
	line-height: 1.6;
	word-break: normal;
	font-family: sans-serif;
	background-color: #FBFBFB;
}
h1{
	margin-bottom: 30px;
	font-family: sans-serif;
}
h2, h3, h1{
	font-size: inherit;
	font-weight: inherit;
	color: #404040;
}
h2{
	font-family: sans-serif;
	font-weight: 400;
}
h3{
	font-family: sans-serif;
	font-weight: 400;
}
/* clear */
.clear:before,
.clear:after {
    content:' ';
    display:table;
}
.clear:after {
    clear:both;
}
.clear {
    *zoom:1;
}
img {
	max-width:100%;
	height: auto;
	vertical-align:bottom;
}
a {
	text-decoration:none!important;
	-webkit-transition: all 300ms ease-out;
	-moz-transition: all 300ms ease-out;
	-ms-transition: all 300ms ease-out;
	-o-transition: all 300ms ease-out;
	transition: all 300ms ease-out;
}
a:hover{
	color: #444;
}

a:focus {
	outline:0;
}
a:hover,
a:active {
	outline:0;
}
input:focus {
	outline:0;
	border:1px solid #04A4CC;
}
strong{
	font-weight: 525;
}
.anim-300{
	-webkit-transition: all 300ms ease-out;
	-moz-transition: all 300ms ease-out;
	-ms-transition: all 300ms ease-out;
	-o-transition: all 300ms ease-out;
	transition: all 300ms ease-out;
}
.anim-500{
	-webkit-transition: all 500ms ease-out;
	-moz-transition: all 500ms ease-out;
	-ms-transition: all 500ms ease-out;
	-o-transition: all 500ms ease-out;
	transition: all 500ms ease-out;
}
.anim-700{
	-webkit-transition: all 700ms ease-out;
	-moz-transition: all 700ms ease-out;
	-ms-transition: all 700ms ease-out;
	-o-transition: all 700ms ease-out;
	transition: all 700ms ease-out;
}
.zi-9{z-index: 9!important;}
.zi-99{z-index: 99!important;}
.zi-999{z-index: 999!important;}
.zi-9999{z-index: 9999!important;}
.zi-99999{z-index: 99999!important;}

.o-hidden{
	overflow: hidden;
}
.opacity0{
	opacity: 0;
}


.p-relative{position: relative;}
.p-absolute{position: absolute;}

 .fs-8{font-size: 8px;}
 .fs-10{font-size: 10px;}
 .fs-11{font-size: 11px;}
 .fs-12{font-size: 12px;}
 .fs-14{font-size: 12px;}
 .fs-15{font-size: 13px;}
 .fs-12{font-size: 12px;}
 .fs-13{font-size: 13px;}
 .fs-16{font-size: 16px;}
 .fs-17{font-size: 17px;}
 .fs-18{font-size: 18px;}
 .fs-20{font-size: 20px;}
 .fs-22{font-size: 22px;}
 .fs-24{font-size: 15px;}
 .fs-28{font-size: 28px;}
 .fs-30{font-size: 30px;}
 .fs-32{font-size: 32px;}
 .fs-36{font-size: 36px;}
 .fs-40{font-size: 40px;}
 .fs-42{font-size: 42px;}
 .fs-44{font-size: 44px;}
 .fs-48{font-size: 48px;}
 .fs-52{font-size: 52px;}
 .fs-60{font-size: 60px;}
 .fs-66{font-size: 66px;}
 .fs-72{font-size: 72px;}
 .fs-80{font-size: 80px;}
 .fs-90{font-size: 90px;}
 .fs-100{font-size: 100px;}
 .fs-110{font-size: 110px;}
 .fs-120{font-size: 120px;}
 .fs-130{font-size: 130px;}
 .fs-150{font-size: 150px;}
 .fs-180{font-size: 180px;}

.uppercase{text-transform: uppercase!important;}
.lowercase{text-transform: lowercase!important;}
.italic{font-style: italic!important;}

.btn-white{
	background: #FFFFFF;
  border: none;
  color: #222222!important;
  display: inline-block;
  padding: 0.71em 1.5em 0.69em;
  width: auto;
	text-transform: uppercase;
  font-size: 1.1em;
  letter-spacing: 3px;
  font-weight: 500;
	padding: 0.5em 2.5em;
}
.object-contain{object-fit: contain;}
.object-cover{object-fit: cover;}

.text-white{color: #FFF;}
.text-grey{color: #757575!important;}
.text-darkgrey{color: #3D3D3D!important;}


.white-bkg{background-color: #FFFFFF;}
.dark-grey-bkg{background-color: #313131!important;}
.light-grey-bkg{background-color: #EAEAEA;}

.w-80{width: 80%;}
.w-95{width: 95%;}

.mw-30{max-width: 30%;}
.mw-40{max-width: 40%;}
.mw-50{max-width: 50%;}
.mw-60{max-width: 60%;}
.mw-70{max-width: 70%;}
.mw-80{max-width: 80%;}
.mw-90{max-width: 90%;}

.lh-10{line-height: 10px;}
.lh-16{line-height: 16px;}
.lh-18{line-height: 18px;}
.lh-22{line-height: 22px;}
.lh-24{line-height: 24px;}
.lh-26{line-height: 26px;}
.lh-28{line-height: 28px;}
.lh-32{line-height: 32px;}
.lh-50{line-height: 50px;}
.lh-72{line-height: 72px;}
.lh-100{line-height: 100px;}

.ls-05{letter-spacing: 0.5px;}
.ls-1{letter-spacing: 1px;}
.ls-2{letter-spacing: 2px;}
.ls-3{letter-spacing: 3px;}
.ls-4{letter-spacing: 4px;}
.ls-5{letter-spacing: 5px;}
.ls-6{letter-spacing: 6px;}
.ls-8{letter-spacing: 8px;}
.ls-10{letter-spacing: 10px;}
.ls-12{letter-spacing: 12px;}
.ls-15{letter-spacing: 15px;}
.ls-20{letter-spacing: 20px;}

.fw-300{font-weight: 300;}
.fw-400{font-weight: 400;}
.fw-500{font-weight: 500;}
.fw-600{font-weight: 600;}
.fw-700{font-weight: 700;}

.lighter{font-weight:  300;}

.m-0{margin: 0!important;}
.m-auto-0{margin: auto 0;}
.m-0-auto{margin: auto 0;}

.mw-30{max-width: 30%;}
.mw-40{max-width: 40%;}
.mw-50{max-width: 50%;}
.mw-60{max-width: 60%;}
.mw-70{max-width: 70%;}
.mw-80{max-width: 80%;}

.mt-0{margin-top: 0px!important;}
.mt-5{margin-top: 5px;}
.mt-10{margin-top: 10px;}
.mt-15{margin-top: 15px;}
.mt-20{margin-top: 20px;}
.mt-30{margin-top: 30px;}
.mt-40{margin-top: 40px;}
.mt-50{margin-top: 50px;}
.mt-80{margin-top: 80px;}
.mt-100{margin-top: 100px;}
.mt-120{margin-top: 120px;}
.mt-130{margin-top: 130px;}
.mt-140{margin-top: 140px;}
.mt-150{margin-top: 150px;}
.mt-200{margin-top: 200px;}
.mt-250{margin-top: 250px;}
.mt-350{margin-top: 350px;}

.mb-0{margin-bottom: 0px;}
.mb-5{margin-bottom: 5px;}
.mb-10{margin-bottom: 10px;}
.mb-15{margin-bottom: 15px;}
.mb-20{margin-bottom: 20px;}
.mb-30{margin-bottom: 30px;}
.mb-40{margin-bottom: 40px;}
.mb-50{margin-bottom: 50px;}
.mb-80{margin-bottom: 80px;}
.mb-100{margin-bottom: 100px;}
.mb-120{margin-bottom: 120px;}
.mb-130{margin-bottom: 130px;}
.mb-140{margin-bottom: 140px;}
.mb-150{margin-bottom: 150px;}
.mb-250{margin-bottom: 250px;}
.mb-350{margin-bottom: 350px;}

.ml-0{margin-left: 0px;}
.ml-5{margin-left: 5px!important;}
.ml-10{margin-left: 10px;}
.ml-15{margin-left: 15px;}
.ml-20{margin-left: 20px;}
.ml-30{margin-left: 30px;}
.ml-35{margin-left: 35px;}
.ml-40{margin-left: 40px;}
.ml-50{margin-left: 50px;}
.ml-80{margin-left: 80px;}
.ml-100{margin-left: 100px;}
.ml-120{margin-left: 120px;}
.ml-130{margin-left: 130px;}
.ml-140{margin-left: 140px;}
.ml-150{margin-left: 150px;}
.ml-350{margin-left: 350px;}

.mr-0{margin-right: 0px;}
.mr-5{margin-right: 5px;}
.mr-10{margin-right: 10px;}
.mr-15{margin-right: 15px;}
.mr-20{margin-right: 20px;}
.mr-30{margin-right: 30px;}
.mr-40{margin-right: 40px;}
.mr-50{margin-right: 50px;}
.mr-80{margin-right: 80px;}
.mr-100{margin-right: 100px;}
.mr-120{margin-right: 120px;}
.mr-130{margin-right: 130px;}
.mr-140{margin-right: 140px;}
.mr-150{margin-right: 150px;}
.mr-350{margin-right: 350px;}

.p-0{padding: 0!important;}
.p-5{padding: 5px;}
.p-10{padding: 10px;}
.p-15{padding: 15px;}
.p-20{padding: 20px;}
.p-30{padding: 30px;}
.p-40{padding: 40px;}
.p-50{padding: 50px;}
.p-80{padding: 80px;}
.p-100{padding: 100px;}

.pb-0{padding-bottom: 0px!important;}
.pb-5{padding-bottom: 5px;}
.pb-10{padding-bottom: 10px;}
.pb-15{padding-bottom: 15px;}
.pb-20{padding-bottom: 20px;}
.pb-30{padding-bottom: 30px;}
.pb-40{padding-bottom: 40px;}
.pb-50{padding-bottom: 50px;}
.pb-80{padding-bottom: 80px;}
.pb-100{padding-bottom: 100px;}
.pb-150{padding-bottom: 150px;}
.pb-200{padding-bottom: 200px;}
.pb-250{padding-bottom: 250px;}
.pb-300{padding-bottom: 300px;}

.pt-5{padding-top: 5px;}
.pt-10{padding-top: 10px;}
.pt-15{padding-top: 15px;}
.pt-20{padding-top: 20px;}
.pt-30{padding-top: 30px;}
.pt-40{padding-top: 40px;}
.pt-50{padding-top: 50px;}
.pt-80{padding-top: 80px;}
.pt-100{padding-top: 100px;}
.pt-150{padding-top: 150px;}
.pt-200{padding-top: 200px;}
.pt-250{padding-top: 250px;}
.pt-300{padding-top: 300px;}

.pt-15vh{padding-top: 15vh;}
.pb-15vh{padding-bottom: 15vh;}

.pl-0{padding-left: 0!important;}
.pl-5{padding-left: 5px;}
.pl-10{padding-left: 10px;}
.pl-15{padding-left: 15px;}
.pl-20{padding-left: 20px;}
.pl-30{padding-left: 30px;}
.pl-40{padding-left: 40px;}
.pl-50{padding-left: 50px;}
.pl-60{padding-left: 60px;}
.pl-80{padding-left: 80px;}
.pl-100{padding-left: 100px;}

.pr-0{padding-right: 0px;}
.pr-5{padding-right: 5px;}
.pr-10{padding-right: 10px;}
.pr-15{padding-right: 15px;}
.pr-20{padding-right: 20px;}
.pr-30{padding-right: 30px;}
.pr-40{padding-right: 40px;}
.pr-50{padding-right: 50px;}
.pr-80{padding-right: 80px;}
.pr-100{padding-right: 100px;}
/*------------------------------------*\
    STRUCTURE
\*------------------------------------*/
/* wrapper */
.wrapper {
}
/* header */
.header {
	width: 100%;
	z-index: 99991;
	position: fixed;
	top: 0px;
}
.subheader{
	background-color: #000;
	color: #FFF;
}
.subheader ul{
	text-align: right!important;
}
.subheader .wpml-ls-link span{
	display: none;
}
.menu-container{
	max-width: 1110px;
	margin: 0 auto;
	border-radius: 0 0 8px 15px;

}
.wpml-ls-legacy-list-horizontal.wpml-ls-statics-footer{
	margin: 0px!important;
}
.wpml-ls-legacy-list-horizontal a {
	display: block;
	text-decoration: none;
	padding: 5px 0px 5px 0px;
	margin-left: 15px;
	line-height: 1;
}
.header .cta-buytickets{
	border-radius: 0 0 8px 0;
	position: absolute;
	right: 0px;
	padding: 1em 2em;
}
.header .cta-buytickets img{
	height: 20px;
	margin-right: 10px;
}
header a{
	color: #FFFFFF!important;
}
.large-menu nav ul li a{
	color: #FFF!important;
}
.header.nav-up {
  top: -42px;
}
.header.nav-up .container-logo-menu{
	padding: 0.5em 1em;
    height: 100%;
    border-radius: 0em 0 0em 8px;
}
.container-logo-menu img{
	width: 150px;
}
.cta-buytickets img{
	height: 20px;
	margin-right: 10px;
}
.header.nav-up .container-logo-menu img{
	transform: scale(0.7);
}
.header.logo-up .container-logo-menu{
	padding: 0.5em 1em;
    height: 100%;
    border-radius: 0em 0 0em 8px;
}
.header.logo-up .container-logo-menu img{
	transform: scale(0.7);
}
body.fixed header{
	background-color: #F6F5F1;
	border-bottom: solid 1px rgba(150,150,150,0.3);
}
body.fixed .large-menu nav ul li{
	padding: 1.5em 0em;
}
body.fixed header a{
	color: #2C2C2B;
}
.home-main{
	overflow: hidden;
}
/* burger menu */
#menu-btn:hover{
	cursor: pointer;
}
.resize-menu #menu-btn:before{
	top: -65px;
}
/* MENU OPEN */
#menu-nav-mobile{
	margin-top: 60px;
}
.nav-mobile {
	background: rgba(0,0,0,0.95);
	width: 100%;
	height: auto;
	top: 0;
	left: 0;
	position: fixed;
	z-index: 9999;
    overflow-y: hidden;
    display: none;
}

.nav-mobile ul{
	padding: 15vh 10vw 50px 5vw;
	width: 100%;
}
.nav-mobile ul li{
	opacity: 1;
	line-height: 50px;
	margin-left: 15px;
	text-align: left;
	display: block;
	border-bottom: solid 1px rgba(255,255,255,0.1);
}
.nav-mobile ul li a{
	color: #EAEAEA;
	font-size: 18px;
	text-decoration: none;
	font-weight: 700;
	display: flex;
	align-items: center;
}
.nav-mobile ul li a .material-icons{
	opacity: 0.6;
}
.responsive .site-branding span{
	color: #222222!important;
}
.nav-mobile .row{
	margin-left: 25px;
}


button {
    position: relative;
    display: inline-block;
    padding: 0;
    height: 25px;
    width: 20px;
    background: none;
    border: none;
    cursor: pointer;
    outline: 0;
    margin-left: 10px;
}
button span {
  position: absolute;
  display: block;
  height: 2px;
  width: 100%;
  background: #333333;
  transition: top 0.2s 0.2s linear, opacity 0.1s 0.2s linear, transform 0.2s linear; }
  button span:nth-child(1) {
    top: 0;
  }
  button span:nth-child(2) {
    top: 8px;
    width: 60%;
    text-align: right;
 }
  button span:nth-child(3) {
    top: 16px;
 }
.resize-menu button span {
	background: #3D3D3D!important;
}
.resize-menu #menu-btn span{
	color: #3D3D3D!important;
}
button.menu-open span {
  top: 7px;
  background-color: #EAEAEA!important;
  transition: top 0.2s linear, opacity 0.1s 0.2s linear, transform 0.2s 0.2s linear; }
  button.menu-open span:nth-child(1) {
    transform: rotate(45deg); }
  button.menu-open span:nth-child(2) {
    opacity: 0; }
  button.menu-open span:nth-child(3) {
    transform: rotate(-45deg); }
/* logo */

/* nav */
.nav {
margin-left: auto;
}
.large-menu nav ul{
	display: flex;
	padding-left: 0px;
	justify-content: space-between;
	width: 100%;
	margin-bottom: 0px;
}
.large-menu nav ul li{
	list-style-type: none;
	font-size: 15px;
	font-weight: 700;
	padding: 1em 2.5em
}
.large-menu a{
	display: flex;
	align-items: center;
}
.large-menu a .material-icons{
	color: rgba(0,0,0,0.25);
}
.main-navigation-zone  ul li{
	list-style: none;
	padding: 5px 15px 5px 15px;
}
.main-navigation-zone a{
	color: #fff;
	text-decoration: none;
}
.container-logo-menu{
	position: absolute;
	top: 0px;
	padding: 0em 0em;
	border-radius: 0 0 25px 25px;
}
#menu-btn{
	/* opacity: 1;
	display: inline-block; */
	display: none;
}
/*------------------------------------*\
    PAGES
\*------------------------------------*/

/* HOME */
#home-top{
	height: 480px;
	background-position: 100% 70%!important;
}
.home-top-content{
	padding-bottom: 120px;
}
.structure-content{
	transform: translateY(-80px);
}
/* SIDEBAR */
.home-tickets, .home-map{
	border-radius: 5px;
	box-shadow: 0px 3px 18px rgba(0,0,0,0.1);
	overflow: hidden;
	background-color: #FFFFFF;
}
.home-tickets h3, .home-map h3{
	padding: 1em;
	display: flex;
	align-items: center;
	justify-content: center;
}
.home-ticket-content{
	background-color: #F2F2F2;
	padding: 0.2em 1.5em;
	margin: 1.5em;
	border-radius: 5px;
}
.home-ticket-content img {
    object-fit: contain;
}
.home-ticket-input{
	margin: 1.5em 1.5em 2em;
}
.home-row-ticket{
	padding: 0.75em 0.25em;
	border-bottom: solid 1px rgba(0,0,0,0.05);
}
.home-row-ticket > div{
	line-height: 1;
}
.home-tickets header img{
	height: 20px;
	margin-right: 10px;
}
.tab-content > div{
	display: none;
}
.tab-content .cta-buytickets{
	padding: 1em!important;
}
.tab-content > div:first-child{
	display: block;
}
.tab-group{
	list-style: none;
	padding: 0;
	border: solid 1px rgba(0,0,0,0.05);
 }
.tab-group:after{
	content: "";
	display: table;
	clear: both;
 }
.tab-group li a{
	display: block;
	text-decoration: none;
	background: #F4F4F4;
	font-size: 12px;
	text-transform: uppercase;
	float: left;
	width: 50%;
	text-align: center;
	cursor: pointer;
	transition: .5s ease;
	padding: 1em 0;
 }
.tab-group li a:hover{
	background: #FFFFFF;
 }
.tab-group .active a{
	background: #FFFFFF;
	font-weight: 700;
 }
 .icon-paiement img{
	 margin: 8px;
 }
 /* MAP */
 #map{
	 height: 500px;
 }
 .home-map .cta-buytickets{
	position: absolute;
	bottom: 20px;
	width: 80%;
	margin-left: 10%;
	padding: 0.8em;
 }
/* CONTENT */
.home-content{
	border-radius: 5px;
	background-color: #FFFFFF;
	padding: 4em;
	margin-bottom: 30px;
	overflow: auto;
}
.home-content:last-of-type{
	margin-bottom: 80px!important;
}
.home-content img{
	object-fit: contain;
}
.tag-anchor{
	position: absolute;
	top: 0px;
	right: 0px;
	padding: 0.7em 1.5em;
	font-size: 13px;
	font-weight: 700;
	color: #FFF;
	border-radius: 0 5px 0 5px;
}
.home-content h2{
	font-size: 36px;
	margin-bottom: 30px;
}.home-content h3{
	font-size: 23px;
	margin-bottom: 20px;
	margin-top: 20px;
}
.home-content iframe{
	margin: 30px 0;
	display: flex;
	justify-content: center;
	width: 100%;
}
.horaires-infos img{
	max-width: 90px;
	margin: 0 auto 30px;
}
.horaires-infos::before{
	content: '';
	background-color: #EAEAEA;
	height: 80%;
	width: 1px;
	display: block;
	position: absolute;
	top: 10%;
	left: 50%;
}

/* FAQ */
.faq h3 {
	color: #5C5C5C;
}
.accordion-content {
	display: grid;
	grid-template-rows: 0fr;
	transition: grid-template-rows 500ms;
}

.accordion button{
	position: initial;
	display: flex;
	height: fit-content;
	width: 100%;
	margin-left: 1rem;
}
  
.accordion-content[aria-hidden="false"] {
	grid-template-rows: 1fr;
}

.accordion-content > div {
	overflow: hidden;
	margin-left: 1rem;
}

.wrapper {
	margin-inline: auto;
}

.accordion {
	background: initial;
	color: #5c5c5c;
}

.accordion-panel {
	padding: 1rem;
	border-top: 0.5px solid rgba(92, 92, 92, 0.3);
}
.accordion-panel:last-child {
	border-bottom: 0.5px solid rgba(92, 92, 92, 0.3);
}

.accordion #panel1-title{
	position: relative;
	margin-left: 2rem;
	margin-top: 5px;
	font-weight: 600;
}
.accordion p {
	position: relative;
	margin-left: 2rem;
	margin-top: 5px;
}

.accordion-trigger {
	background: transparent;
	border: 0;
	font: inherit;
	color: inherit;
}

/* .accordion-trigger::before,
.accordion-trigger::after {
	position: absolute;
	right: 1em;
	top: 50%;
	transform: translateY(-50%);
	content: "";
	display: block;
	width: 1em;
	height: 5px;
	background: currentcolor;
	transition: transform 500ms;
} */
.accordion-trigger span::before,
.accordion-trigger span::after {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	content: "";
	display: block;
	width: 1em;
	height: 2px;
	background: rgba(92, 92, 92, 0.3);
	transition: transform 500ms;
	z-index: 1;
}
.accordion-trigger span {
	position: absolute;
	left: -2.35em;
	top: 50%!important;
	transform: translateY(-50%);
	content: "";
	display: block;
	width: 1.5em;
	height: 1.5em;
	background: transparent;
	border-radius: 100%;
	transition: transform 500ms;
}

.accordion-trigger span::after {
	rotate: 90deg;
	transform: translate(-1px, 0.5em); 
}

.accordion-trigger[aria-expanded="true"] span {
	transform: translateY(-50%) rotate(45deg);
}
.accordion-trigger[aria-expanded="true"] span::before {
	/* transform: translateY(-50%) rotate(45deg); */
}

/* FORM */
input{
	background: rgba(255,255,255,0.19);
	border-radius: 5px;
	color: #FFFFFF;
	border: none;
	height: 30px;
	margin-bottom: 6px;
	padding: 5px 10px;
	width: 100%;
	font-size: 12px;
}
textarea{
	height: 90px;
	width: 100%;
	margin-bottom: 6px;
	padding: 5px 10px;
	background: rgba(255,255,255,0.19);
	border-radius: 5px;
	color: #FFFFFF;
	font-size: 13px;
	border: none;
}
input[type="submit"]{
	margin-bottom: 0px!important;
	background: #CDAD7D;
	border: 1px solid rgba(205,173,125,0.51);
	border-radius: 5px;
	text-transform: uppercase;
	letter-spacing: 2px;
	font-weight: 600;
}
.footer-contacter{
	padding-left: 15px;
	border-left: solid 1px rgba(255,255,255,0.4);
}
.footer-contacter a span, .footer-contacter a{
	color: #FFFFFF;
}
footer{
	padding: 1em 0;

}
.cn-button.bootstrap{
	background: #FFFFFF;
	color: #4d9cac;
	box-shadow: none;
	border: none;
	text-shadow: none;
}
/*********** PAGE 404 *************/
body.error404{
	background-color: #FFF;
}
#page-404 section{
	height: calc(100vh - 50px);
}
#page-404 .btn-back-home{
	display: inline-block;
	padding: 12px 25px;
}

/*------------------------------------*\
	TYPOGRAPHY
\*------------------------------------*/

.open-sans{
	font-family: sans-serif;
}
.futura-bold{
	font-family: sans-serif;
	font-weight: 200;
}
.futura-medium{
	font-family: sans-serif;
	font-weight: 350;
}
/*------------------------------------*\
    RESPONSIVE
\*------------------------------------*/
@media only screen and (min-width:1440px) {

}
@media only screen and (max-width:1280px) {

}

@media only screen and (max-width:992px) {
	/* HEADER */
	.container-logo-menu{
		position: relative;
		padding: 15px 25px;
		border-radius: 0 0 15px 15px;
  }
  .large-menu nav ul li {
	list-style-type: none;
	font-size: 15px;
	font-weight: 700;
	padding: 0.8em 0.8em;
	}
  .container-logo-menu img{
	  max-width: 150px;
  }
  .header .cta-buytickets {
		display: flex;
		height: 100%;
	}
}
@media only screen and (max-width:768px) {

	button span{
		background: #FFF;
	}
	.container-logo-menu img {
		max-width: 100px;
  }
  .header.nav-up .container-logo-menu {
	padding: 0.75em 0.4em;
	}
  .header .cta-buytickets {
		padding: 1em 1.55em;
  }
	/* SIDEBAR */
	.home-tickets{
		transform: translateY(0px)!important;
		margin-top: 0px!important;
	}
	/* HOME */
	.structure-content-row{
		flex-direction: column-reverse;
	}
	#home-top{
		background-position: center!important;
	}
	.large-menu{
		 margin: auto!important;
	}
	.home-content h2 {
    font-size: 28px;
    margin-top: 30px;
    margin-bottom: 0px;
    text-align: left!important;
	}
	.home-content h3 {
    font-size: 26px;
    margin-bottom: 10px;
    margin-top: 20px;
		text-align: left!important;
	}

}
@media only screen and (max-width:420px) {
	#menu-btn{
		display: block;
	}
	#menu-btn span{
		color: #FFFFFF;
	}
	.container-logo-menu{
		display: none;
	}
	.header .cta-buytickets{
		position: relative;
	}
	.large-menu nav ul{
		display: none;
	}
	.mw-60{
		max-width: 100%;
	}
	/* HOME */
	.home-content img {
		object-fit: contain;
		height: auto;
	}
	.horaires-infos{
		flex-wrap: wrap;
	}
	.horaires-infos::before{
		display: none;
	}
	#home-top h1{
		font-size: 31px;
	}
	.home-content{
		padding: 3em 2em;
	}
	/* FOOTER */
	footer p{
		font-size: 14px!important;
	}
	/* MENU OPEN */
	ul#menu-menu-mobile {
		padding-left: 15px;
	}
	.nav-mobile .row{
		margin-left: 0px!important;
		margin-right: 0px!important;
	}
	/* 404 */
	#page-404 h1{
		font-size: 30px;
	}
	#page-404 h2{
		font-size: 16px;
	}
	/* FAQ */
	.accordion-trigger::before, .accordion-trigger::after {
		left: -1.25em;
		width: 1em;
	}
	.accordion-trigger::after {
		transform: translate(-2.5px, 0px);
	}
	.accordion-trigger span {
		left: -1.5em;
		width: 1em;
		height: 1em;
	}
	.accordion-trigger[aria-expanded="true"]::before {
		transform: translateY(-50%) rotate(45deg);
	}
	.accordion-trigger[aria-expanded="true"]::after {
		transform: translate(-2.5px, 0px) rotate(45deg);
	}
}
/* iPhone 6 */
@media only screen and (max-width:380px) {

}
/* iPhone 5 */
@media only screen and (max-width:320px) {

}
/*------------------------------------*\
    MISC
\*------------------------------------*/

::selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}
::-webkit-selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}
::-moz-selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}

/*------------------------------------*\
    WORDPRESS CORE
\*------------------------------------*/

.alignnone {
	margin:5px 20px 20px 0;
}
.aligncenter,
div.aligncenter {
	display:block;
	margin:5px auto 5px auto;
}
.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}
a img.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
a img.alignnone {
	margin:5px 20px 20px 0;
}
a img.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}
a img.aligncenter {
	display:block;
	margin-left:auto;
	margin-right:auto;
}
.wp-caption {
	background:#FFF;
	border:1px solid #F0F0F0;
	max-width:96%;
	padding:5px 3px 10px;
	text-align:center;
}
.wp-caption.alignnone {
	margin:5px 20px 20px 0;
}
.wp-caption.alignleft {
	margin:5px 20px 20px 0;
}
.wp-caption.alignright {
	margin:5px 0 20px 20px;
}
.wp-caption img {
	border:0 none;
	height:auto;
	margin:0;
	max-width:98.5%;
	padding:0;
	width:auto;
}
.wp-caption .wp-caption-text,
.gallery-caption {
	font-size:11px;
	line-height:17px;
	margin:0;
	padding:0 4px 5px;
}
.sticky {

}
/*------------------------------------*\
    PRINT
\*------------------------------------*/

@media print {
	* {
		background:transparent !important;
		color:#000 !important;
		box-shadow:none !important;
		text-shadow:none !important;
	}
	a,
	a:visited {
		text-decoration:underline;
	}
	a[href]:after {
		content:" (" attr(href) ")";
	}
	abbr[title]:after {
		content:" (" attr(title) ")";
	}
	.ir a:after,
	a[href^="javascript:"]:after,
	a[href^="#"]:after {
		content:"";
	}
	pre,blockquote {
		border:1px solid #999;
		page-break-inside:avoid;
	}
	thead {
		display:table-header-group;
	}
	tr,img {
		page-break-inside:avoid;
	}
	img {
		max-width:100% !important;
	}
	@page {
		margin:0.5cm;
	}
}
/*----------------- ANIMATION ------------------*/

.apparition,
.apparition-2,
.apparition-3 {
	opacity: 0;
}
.animation-fade-in {
	animation: animation-fade-in ease-out .8s;
	animation-iteration-count: 1;
	transform-origin: 50% 50%;
	animation-fill-mode:forwards; /*when the spec is finished*/
	-webkit-animation: animation-fade-in ease-out .8s;
	-webkit-animation-iteration-count: 1;
	-webkit-transform-origin: 50% 50%;
	-webkit-animation-fill-mode:forwards; /*Chrome 16+, Safari 4+*/
	-moz-animation: animation-fade-in ease-out .8s;
	-moz-animation-iteration-count: 1;
	-moz-transform-origin: 50% 50%;
	-moz-animation-fill-mode:forwards; /*FF 5+*/
	-o-animation: animation-fade-in ease-out .8s;
	-o-animation-iteration-count: 1;
	-o-transform-origin: 50% 50%;
	-o-animation-fill-mode:forwards; /*Not implemented yet*/
	-ms-animation: animation-fade-in ease-out .8s;
	-ms-animation-iteration-count: 1;
	-ms-transform-origin: 50% 50%;
	-ms-animation-fill-mode:forwards; /*IE 10+*/
}

@keyframes animation-fade-in {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
@-moz-keyframes animation-fade-in {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
@-webkit-keyframes animation-fade-in {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
@-o-keyframes animation-fade-in {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
@-ms-keyframes animation-fade-in {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

.animation-fade-up {
	animation: animation-fade-up ease-out 0.3s;
	animation-iteration-count: 1;
	transform-origin: 50% 50%;
	animation-fill-mode: forwards; /*when the spec is finished*/
	-webkit-animation: animation-fade-up ease-out 0.3s;
	-webkit-animation-iteration-count: 1;
	-webkit-transform-origin: 50% 50%;
	-webkit-animation-fill-mode: forwards; /*Chrome 16+, Safari 4+*/
	-moz-animation: animation-fade-up ease-out 0.3s;
	-moz-animation-iteration-count: 1;
	-moz-transform-origin: 50% 50%;
	-moz-animation-fill-mode: forwards; /*FF 5+*/
	-o-animation: animation-fade-up ease-out 0.3s;
	-o-animation-iteration-count: 1;
	-o-transform-origin: 50% 50%;
	-o-animation-fill-mode: forwards; /*Not implemented yet*/
	-ms-animation: animation-fade-up ease-out 0.3s;
	-ms-animation-iteration-count: 1;
	-ms-transform-origin: 50% 50%;
	-ms-animation-fill-mode: forwards; /*IE 10+*/
}
.animation-fade-down {
	animation: animation-fade-down ease-out 0.3s;
	animation-iteration-count: 1;
	transform-origin: 50% 50%;
	animation-fill-mode: forwards; /*when the spec is finished*/
	-webkit-animation: animation-fade-down ease-out 0.3s;
	-webkit-animation-iteration-count: 1;
	-webkit-transform-origin: 50% 50%;
	-webkit-animation-fill-mode: forwards; /*Chrome 16+, Safari 4+*/
	-moz-animation: animation-fade-down ease-out 0.3s;
	-moz-animation-iteration-count: 1;
	-moz-transform-origin: 50% 50%;
	-moz-animation-fill-mode: forwards; /*FF 5+*/
	-o-animation: animation-fade-down ease-out 0.3s;
	-o-animation-iteration-count: 1;
	-o-transform-origin: 50% 50%;
	-o-animation-fill-mode: forwards; /*Not implemented yet*/
	-ms-animation: animation-fade-down ease-out 0.3s;
	-ms-animation-iteration-count: 1;
	-ms-transform-origin: 50% 50%;
	-ms-animation-fill-mode: forwards; /*IE 10+*/
}

@keyframes animation-fade-up {
	0% {
		opacity:0;
		transform:  translate(0, 100px);
	}
	100% {
		opacity:1;
		transform:  translate(0, 0);
	}
}
@-moz-keyframes animation-fade-up {
	0% {
		opacity:0;
		transform:  translate(0, 100px);
	}
	100% {
		opacity:1;
		transform:  translate(0, 0);
	}
}
@-webkit-keyframes animation-fade-up {
	0% {
		opacity:0;
		transform:  translate(0, 100px);
	}
	100% {
		opacity:1;
		transform:  translate(0, 0);
	}
}
@-o-keyframes animation-fade-up {
	0% {
		opacity:0;
		transform:  translate(0, 100px);
	}
	100% {
		opacity:1;
		transform:  translate(0, 0);
	}
}
@-ms-keyframes animation-fade-up {
	0% {
		opacity:0;
		transform:  translate(0, 100px);
	}
	100% {
		opacity:1;
		transform:  translate(0, 0);
	}
}
/*******FADE DOWN********/

@keyframes animation-fade-down {
	0% {
		opacity:1;
		transform:  translate(0, 0);
	}
	100% {
		opacity:0;
		transform:  translate(0, 100px);
	}
}
@-moz-keyframes animation-fade-down {
	0% {
		opacity:1;
		transform:  translate(0, 0);
	}
	100% {
		opacity:0;
		transform:  translate(0, 100px);
	}
}
@-webkit-keyframes animation-fade-down {
	0% {
		opacity:1;
		transform:  translate(0, 0);
	}
	100% {
		opacity:0;
		transform:  translate(0, 100px);
	}
}
@-o-keyframes animation-fade-down {
	0% {
		opacity:1;
		transform:  translate(0, 0);
	}
	100% {
		opacity:0;
		transform:  translate(0, 100px);
	}
}
@-ms-keyframes animation-fade-down {
	0% {
		opacity:1;
		transform:  translate(0, 0);
	}
	100% {
		opacity:0;
		transform:  translate(0, 100px);
	}
}

/* scroll animation*/
.box-parent{
  position: absolute;
	top: 85vh;
	width: 100%;
}
.box span {
  display: block;
  width: 10px;
  height: 10px;
  border-bottom: 1px solid #FFFFFF;
  border-right: 1px solid #FFFFFF;
  transform: rotate(45deg);
  animation: animate 2s infinite;
  margin: -10px;
}

  .box span:nth-child(2)
  {
    animation-delay: -0.2s;

  }
   .box span:nth-child(3) {
    animation-delay: -0.4s;
     transform: rotate(45deg) translate(-20px, -20px)
  }

@keyframes animate {
  0% {
    opacity: 0;
    transform: rotate(45deg) translate(-20px, -20px)
  }

  50% {
    opacity: 1;
  }

  100%
  {
    opacity: 0;
    transform: rotate(45deg) translate(20px, 20px);
  }
}
