.wp-block-buttons{
	gap:20px;
}

.button-base,
.wp-block-button a{
	display: inline-block;
	color: #fff;
	font-size: 1em;
	line-height: 1.3em;
	padding: 12px 30px;
	background: #E30613;
	margin-top: 20px;
	border-radius: 12px;
	letter-spacing: 0em;
	font-family: "Town80-Bold", Arial, sans-serif !important;
	transition: all .3s;
}

.button-base::after,
.wp-block-button a::after{
	content:'';
	display: inline-block;
	height: 10px;
	width: 6px;
	background: url(../img/arrow-button-blanc.svg) no-repeat center / contain;
	margin-left: 10px;
	transition: all .3s;
}

.button-base:hover,
.wp-block-button a:hover{
	background: #000;
}

.button-base.button-blanc,
.wp-block-button.button-blanc a{
	background: #fff;
	color: #000;
}

.button-base.button-blanc::after,
.wp-block-button.button-blanc a::after{
	background: url(../img/arrow-button-noir.svg) no-repeat center / contain;
}

.button-base.button-blanc:hover::after,
.wp-block-button.button-blanc a:hover::after{
	background: url(../img/arrow-button-blanc.svg) no-repeat center / contain;
}

.button-base.button-blanc:hover,
.wp-block-button.button-blanc a:hover{
	background: #000;
	color: #fff;
}

.wrap_content{
	max-width: 1500px;
	margin: auto;
	padding: 0 10px;
}

.wrap_small_content{
	max-width: 1200px;
	margin: auto;
	padding: 0 10px;
}

.has-small-font-size {
	font-size: 16px !important;
	font-family: "Nexa-Light", Arial, sans-serif !important;
}

i{
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
}

p.font-icon{
	font-family: 'Font Awesome 5 Free' !important;
	font-weight: 900;
	color: #000 !important;
}

.has-text-align-center{
	text-align: center;
}

#content-main .wp-block-list li a,
p a{
	color: #E30613;
	text-decoration: none;
	border-bottom: 1px solid #E30613;
	transition: all .3s;
}

#content-main .wp-block-list li a:hover,
p a:hover{
	color: #F9B233;
	border-color: #F9B233;
}

.pt20{padding-top: 20px !important;}
.pt30{padding-top: 30px !important;}
.pt40{padding-top: 40px !important;}
.pt60{padding-top: 60px !important;}
.pt80{padding-top: 80px !important;}
.pt100{padding-top: 100px !important;}
.pt120{padding-top: 120px !important;}
.pt140{padding-top: 140px !important;}
.pt160{padding-top: 160px !important;}
.pt180{padding-top: 180px !important;}
.pt200{padding-top: 200px !important;}
.pt220{padding-top: 220px !important;}

.pb20{padding-bottom: 20px !important;}
.pb30{padding-bottom: 30px !important;}
.pb40{padding-bottom: 40px !important;}
.pb60{padding-bottom: 60px !important;}
.pb80{padding-bottom: 80px !important;}
.pb100{padding-bottom: 100px !important;}
.pb120{padding-bottom: 120px !important;}
.pb140{padding-bottom: 140px !important;}
.pb160{padding-bottom: 160px !important;}
.pb180{padding-bottom: 180px !important;}
.pb200{padding-bottom: 200px !important;}
.pb220{padding-bottom: 220px !important;}

.mt0{margin-top: 0px !important;}
.mt20{margin-top: 20px !important;}
.mt30{margin-top: 30px !important;}
.mt40{margin-top: 40px !important;}
.mt60{margin-top: 60px !important;}
.mt80{margin-top: 80px !important;}
.mt100{margin-top: 100px !important;}
.mt120{margin-top: 120px !important;}
.mt140{margin-top: 140px !important;}
.mt160{margin-top: 160px !important;}
.mt180{margin-top: 180px !important;}
.mt200{margin-top: 200px !important;}
.mt220{margin-top: 220px !important;}

.mb0{margin-bottom: 0px !important;}
.mb10{margin-bottom: 10px !important;}
.mb20{margin-bottom: 20px !important;}
.mb30{margin-bottom: 30px !important;}
.mb40{margin-bottom: 40px !important;}
.mb60{margin-bottom: 60px !important;}
.mb80{margin-bottom: 80px !important;}
.mb100{margin-bottom: 100px !important;}
.mb120{margin-bottom: 120px !important;}
.mb140{margin-bottom: 140px !important;}
.mb160{margin-bottom: 160px !important;}
.mb180{margin-bottom: 180px !important;}
.mb200{margin-bottom: 200px !important;}
.mb220{margin-bottom: 220px !important;}

/* HEADER *//* HEADER *//* HEADER *//* HEADER */
/* HEADER *//* HEADER *//* HEADER *//* HEADER */
/* HEADER *//* HEADER *//* HEADER *//* HEADER */

#header-main{
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	top: 50px;
	max-width: 90%;
	z-index: 999;
}

.container_header_main{
	position: relative;
	text-align: center;
}

.left_menu{
	position: absolute;
	left: 0;
	top: -6px;
	text-align: left;
}

#main_menu {
	display: inline-block;
}

.liste_reseaux_header{
	position: absolute;
	right: 0;
	top: 0;
	display: flex;
	align-items: center;
	gap: 15px;
}

.liste_reseaux_header a{
	display: inline-block;
	font-size: 20px;
}

#main_menu ul{
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 10px;
}

#main_menu ul li a{
	display: inline-block;
	font-family: "Town80-Bold", Arial, sans-serif !important;
	color: #fff;
	font-size: 1em;
	letter-spacing: 0.05em;
	padding: 0 20px;
	text-align: center;
	transition: all .3s;
}

#main_menu ul li a:hover{
	color: #E30613;
}

#main_menu ul li.btn-billeterie a{
	padding: 12px 20px;
	background: #E30613;
	color: #fff;
}

#main_menu ul li.btn-billeterie a:hover{
	background: #000;
}

#main_menu ul.menu li.current-menu-item:not(.menu-item-has-children) > a,
#main_menu ul.menu li.current-menu-ancestor > a{
	color: #E30613;
	position: relative;
}

#main_menu ul.menu li.current-menu-item:not(.menu-item-has-children) > a::before,
#main_menu ul.menu li.current-menu-ancestor:not(.menu-item-has-children) > a::before{
	content:'';
	display: block;
	width: 12px;
	height: 3px;
	background: #E30613;
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	bottom: -2px;
}

#main_menu ul li.menu-item-has-children{
	position: relative;
}

#main_menu ul li.menu-item-has-children > a{
	cursor: pointer;
}

#main_menu ul li.menu-item-has-children > a::after {
	content:'\f078';
	display: inline-block;
	font-size: 10px;
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	bottom: -20px;
}

#main_menu ul li.menu-item-has-children ul.sub-menu {
	display: none;
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	top: 50px;
	background: #fff;
	z-index: 999;
	border-radius: 6px;
	overflow: hidden;
}

#main_menu ul li.menu-item-has-children ul.sub-menu li a{
	padding: 10px 35px;
	font-size: 16px;
	display: block;
	width: 100%;
	padding: 12px 0;
	border-bottom: 1px solid #CFCFCF;
	color:#333;
	background: #fff;
	letter-spacing: 0;
	font-family: "Town80-Bold", Arial, sans-serif !important;
}

#main_menu ul li.menu-item-has-children ul.sub-menu li.current-menu-item a{
	border-color: #E30613;
	color: #E30613;
}

#main_menu ul li.menu-item-has-children ul.sub-menu li a:hover,
#main_menu ul li.menu-item-has-children ul.sub-menu li.current-menu-item a:hover{
	background: #E30613;
	color: #fff;
	border-color: #E30613;
}

#main_menu ul li.menu-item-has-children ul.sub-menu li.current-menu-item a::before{
	display: none;
}

/* --- */

.liste_reseaux_header a{
	color: #fff;
	transition: all .3s;
}

.liste_reseaux_header a:hover{
	color: #E30613;
}

.wrap_burger{
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 15px;
	cursor: pointer;
}

.burger{
	position: relative;
	width: 40px;
	height: 40px;
	background: #fff;
	border-radius: 5px;
	transition: all .3s;
}

.barre{
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	width: 12px;
	height: 2px;
	border-radius: 10px;
	background: #E30613;
	transition: all .3s;
}

.barre1{
	top: 14px;
}

.barre3{
	bottom: 14px;
}

.barre2{
	width: 22px;
	top: 50%;
	transform: translateY(-50%);
}

.wrap_burger > span{
	font-family: "Town80-Bold", Arial, sans-serif !important;
	letter-spacing: 0.05em;
	color: #fff;
	font-size: 20px;
	text-transform: uppercase;
	transition: all .3s;
}

.wrap_burger:hover .burger{
	background: #E30613;
}

.wrap_burger:hover .barre{
	background: #fff;
	width: 22px;
}

.wrap_burger:hover > span{
	color: #E30613;
}

#wrap_nav_burger{
	position: fixed;
	top: 0;
	left: -420px;
	width: 420px;
	height: 100%;
	background: #fff;
	overflow-y: scroll;
	z-index: 9999;
	transition: all ease-in-out .6s;
}

.wrap_menu_plus.isOpen #wrap_nav_burger{
	animation: AnimMenuRight ease-in-out .6s forwards;
}

.isOpen #wrap_nav_burger{
	left: 0;
}

.alphaclose{
	position: fixed;
	left: 0;
	top: 0;
	z-index: 9991;
	background: #000;
	width: 0;
	height: 100vh;
	opacity: .8;
	transition: all ease-in-out .6s;
}

.isOpen .alphaclose{
	width: 100%;
}

.fermer_menu{
	padding: 20px 35px;
	font-size: .8em;
	text-transform: uppercase;
	font-family: "Town10-Black", Arial, sans-serif !important;
	letter-spacing: 0.05em;
	color: #000;
	border-bottom: 1px solid #CFCFCF;
	cursor: pointer;
	transition: all .3s;
}

.fermer_menu:hover{
	color: #E30613;
}

#wrap_nav_burger ul li a {
	display: block;
	padding: 20px 35px;
	font-size: .9em;
	font-family: "Town80-Bold", Arial, sans-serif !important;
	letter-spacing: 0.02em;
	color: #000;
	border-bottom: 1px solid #CFCFCF;
	transition: all .3s;
	cursor: pointer;
}

#wrap_nav_burger ul li a:hover{
	background: #E30613;
	padding-left: 50px;
	color: #fff;
}

#wrap_nav_burger ul li.menu-item-has-children > a::after {
	content:'\f078';
	display: inline-block;
	font-size: 10px;
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	margin-left: 10px;
	position: relative;
	top: 1px;
}

#wrap_nav_burger ul li.menu-item-has-children ul.sub-menu {
	display: none;
}

#wrap_nav_burger ul li.menu-item-has-children ul.sub-menu li a {
	padding: 10px 50px;
	font-size: 16px;
	color: #333;
	cursor: pointer;
	font-family: "Town80-Book", Arial, sans-serif !important;
}

#wrap_nav_burger ul li.menu-item-has-children ul.sub-menu li a:hover{
	color: #fff;
}

#wrap_nav_burger ul li.menu-item-has-children > a.active {
	background: #CFCFCF;
	padding-left: 50px;
	color: #333;
}

/* ACCUEIL *//* ACCUEIL *//* ACCUEIL *//* ACCUEIL */
/* ACCUEIL *//* ACCUEIL *//* ACCUEIL *//* ACCUEIL */
/* ACCUEIL *//* ACCUEIL *//* ACCUEIL *//* ACCUEIL */

.wrap_top_home{
	position: relative;
}

.wrap_top_home::before{
	content:'';
	display: block;
	width: 100%;
	height: 220px;
	background: linear-gradient(to bottom, rgba(0,0,0,1) 0%,rgba(0,0,0,0) 100%);
	position: absolute;
	left: 0;
	top: 0;
	opacity: .5;
	pointer-events: none;
}

.buttons_top_home{
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	bottom: 50px;
}

.buttons_top_home a{
	font-size: 1em;
	color: #E30613;
	background: #fff;
	border-radius: 12px;
	position: relative;
	overflow: hidden;
	font-family: "Town80-Bold", Arial, sans-serif !important;
	text-align: center;
	display: inline-block;
	width: 380px !important;
	z-index: 10;
	transition: all .3s;
}

.buttons_top_home a:hover{
	width: 420px;
	background: #E30613;
	color: #fff;
}

.buttons_top_home a::after{
	content:'';
	display: inline-block;
	height: 10px;
	width: 6px;
	background: url(../img/arrow-button-rouge.svg) no-repeat center / contain;
	margin-left: 10px;
	transition: all .3s;
}

.buttons_top_home a:hover::after{
	background: url(../img/arrow-button-blanc.svg) no-repeat center / contain;
}

.button-date a::before {
	content: '';
	display: inline-block;
	height: 45px;
	width: 45px;
	background: url(../img/button-date.svg) no-repeat center / contain;
	position: absolute;
	right: 10px;
	bottom: -8px;
	transform: rotate(-10deg);
	opacity: 1;
	filter: brightness(100%);
	z-index: -1;
	transition: all .3s;
}

.button-ville a::before{
	content:'';
	display: inline-block;
	height: 45px;
	z-index: -1;
	width: 45px;
	background: url(../img/button-ville.svg) no-repeat center / contain;
	position: absolute;
	right: 10px;
	bottom: -5px;
	transform: rotate(-10deg);
	opacity: 1;
	filter: brightness(100%);
	transition: all .3s;
}

.button-date a:hover::before,
.button-ville a:hover::before{
	filter: brightness(300%);
	opacity: .4;
}

body {
	background: #181818 url(../img/texture-grunge.png) center / contain repeat;
	height: auto;
	transition: background-color 0.6s ease-in-out, background-image 0.6s ease-in-out;
}

body p:not(.has-text-color){
	color: #A09F9F;
}

body p:not(.has-text-color) strong{
	color: #fff;
}

body.bodyWhite,
body.page-template-page-fondblanc,
body.error404 {
	background-color: #FBFBFB;
	background-image: none;
}

p,h1,h2,h3{
	color: #fff;
}

body.bodyWhite h1,
body.bodyWhite h2,
body.bodyWhite h3,
body.page-template-page-fondblanc h1,
body.page-template-page-fondblanc h2,
body.page-template-page-fondblanc h3,
body.error404 h1{
	color: #181818;
}

body.bodyWhite p:not(.has-text-color),
body.page-template-page-fondblanc p:not(.has-text-color),
body.error404 p:not(.has-text-color){
	color: #A09F9F;
}

body.bodyWhite p:not(.has-text-color) strong,
body.page-template-page-fondblanc p:not(.has-text-color) strong,
body.error404 p:not(.has-text-color) strong{
	color: #181818;
}

body.page-template-page-fondblanc #content-main::before,
body.error404 #content-main::before{
	content:'';
	display: block;
	width: 100%;
	height: 130px;
	background: #181818 url(../img/texture-grunge.png) center / contain repeat;
}

body.page-template-page-fondblanc #page-presentation,
body.error404 #page-presentation{
	padding-top: 100px;
}

body.bodyWhite #content-main .wp-block-list li strong{
	color: #000;
}

h2{
	font-size: 2.2em;
	font-family: "Town10-Black", Arial, sans-serif !important;
	line-height: 1.1em;
	margin-bottom: 30px;
}

h2 span{
	color: #E30613;
	line-height: 1.1em;
	letter-spacing: 0.05em;
	text-transform: none;
	display: block;
	font-family: "Town80-Bold", Arial, sans-serif !important;
	font-size: 20px;
	margin-bottom: 20px;
	text-transform: uppercase;
}

.home h2 span{
	text-transform: none;
}

h2 span::before{
	content:'';
	display: inline-block;
	width: 90px;
	height: 1px;
	background: #E30613;
	margin-right: 22px;
}

h2 span::after{
	content:'';
	display: inline-block;
	width: 90px;
	height: 1px;
	background: #E30613;
	margin-left: 22px;
}

h2.left_titre span::before{
	display: none;
}

.sliderTempsForts{
	border-radius: 15px;
	width: 100%;
	height: 650px;
}

.sliderTempsForts .swiper-slide::after{
	content:'';
	display: block;
	background: linear-gradient(to top, rgba(0,0,0,1) 0%,rgba(0,0,0,0) 100%);
	width: 100%;
	height: 100%;
	opacity: .5;
	position: absolute;
	left: 0;
	bottom: 0;
}

.sliderTempsForts .swiper-slide img{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.lien_vers_term{
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	bottom: 40px;
	text-align: center;
	z-index: 20;
}

.lien_vers_term h3{
	font-size: 1.6em;
	font-family: "Town10-Black", Arial, sans-serif !important;
}

.lien_vers_term .button-base{
	font-size: 1.5em;
	text-transform: uppercase;
	padding: 15px 60px;
}

.swiper-button-prev-tempsforts {
	position: absolute;
	left: 20px;
	top: 50%;
	transform: translateY(-50%);
	z-index: 10;
	color: #000;
	background: #fff;
	padding: 12px 25px;
	border-radius: 12px;
	font-size: 24px;
	cursor: pointer;
	font-family: "Town10-Black", Arial, sans-serif !important;
	transition: all .3s;
}

.swiper-button-next-tempsforts {
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	z-index: 10;
	color: #000;
	background: #fff;
	padding: 12px 25px;
	border-radius: 12px;
	cursor: pointer;
	font-size: 24px;
	font-family: "Town10-Black", Arial, sans-serif !important;
	transition: all .3s;
}

.swiper-button-prev-tempsforts:hover,
.swiper-button-next-tempsforts:hover{
	background: #000;
	color: #fff;
}

.swiper-button-prev-tempsforts::before{
	content:'\f053';
	display: inline-block;
	font-size: .8em;
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	margin-right: 10px;
}

.swiper-button-next-tempsforts::after{
	content:'\f054';
	display: inline-block;
	font-size: .8em;
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	margin-left: 10px;
}

.swiper-button-disabled{
	display: none;
}

/* PROGRAMMATION *//* PROGRAMMATION *//* PROGRAMMATION *//* PROGRAMMATION */
/* PROGRAMMATION *//* PROGRAMMATION *//* PROGRAMMATION *//* PROGRAMMATION */
/* PROGRAMMATION *//* PROGRAMMATION *//* PROGRAMMATION *//* PROGRAMMATION */

.wrap_all_programmation{
	padding: 120px 80px;
	background: #212121;
	max-width: 92%;
	margin: auto;
	overflow: hidden;
	border-radius: 30px 30px 0 0;
}

.titre_term_programmation{
	display: flex;
	align-items: center;
	gap: 40px;
	margin-bottom: 40px;
}

.wrap_all_programmation h3{
	font-family: "Town10-Black", Arial, sans-serif !important;
	color: #fff;
	font-size: 1.5em;
	white-space: nowrap;
	margin: 0;
}

.titre_term_programmation hr{
	flex: 1;
	height: 2px;
	background-color: #D9D9D9;
}

.sliderProgrammation{
	position: relative;
}

.item_programmation_info {
	width: 100%;
	height: auto;
	border-radius: 12px;
	overflow: hidden;
	min-height: 420px;
	position: relative;
	padding: 50px 35px 60px 35px;
	z-index: 10;
}

.item_programmation_info::before{
	content:'';
	display: block;
	width: 100%;
	height: 100%;
	background: #000;
	opacity: .5;
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
	transition: all .3s;
}

.item_programmation_info img{
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: -2;
}

.wrap_all_programmation h4{
	font-family: "Town80-Bold", Arial, sans-serif !important;
	font-size: 1.1em;
	line-height: 1.4em;
	color: #fff;
}

.heure_item{
	position: absolute;
	left: 0;
	padding: 0 35px;
	bottom: 25px;
	font-family: "Town80-Book", Arial, sans-serif !important;
	letter-spacing: 0.05em;
	color: #fff;
}

.heure_item i{
	font-size: .9em;
}

.item_programmation_lieu{
	position: relative;
	z-index: 10;
}

.item_programmation_lieu p{
	color: #F9B233;
	font-family: "Town80-Book", Arial, sans-serif !important;
	font-size: 1.1em;
	padding: 20px 20px 0 20px;
}

.item_programmation_lieu p i{
	display: inline-block;
	margin-right: 5px;
}

.item_programmation:not(:last-of-type){
	padding-bottom: 80px;
}

.wrap_all_programmation .swiper-button-next {
	right: -80px;
	color: #fff;
	background: #212121;
	width: 65px;
	height: 100%;
	top: 0;
	font-size: .9em;
	opacity: .9;
	margin-top: 0;
	transition: all .3s;
}

.wrap_all_programmation .swiper-button-prev{
	left: -80px;
	color: #fff;
	background: #212121;
	width: 80px;
	height: 100%;
	top: 0;
	font-size: .9em;
	opacity: .9;
	margin-top: 0;
	transition: all .3s;
}

.wrap_all_programmation .swiper-button-prev:hover,
.wrap_all_programmation .swiper-button-next:hover{
	opacity: 1;
	color: #F9B233;
}

.wrap_all_programmation .swiper-button-prev::after{
	content:'\f053';
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	top: -5%;
	position: relative;
	font-size: 1.6em;
}

.wrap_all_programmation .swiper-button-next::after{
	content:'\f054';
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	top: -5%;
	position: relative;
	font-size: 1.6em;
}

.bottom_all_programmation {
	padding: 60px;
	text-align: center;
	background: #1E1E1E;
	max-width: 92%;
	margin: auto;
	border-radius: 0 0 30px 30px;
}

.bottom_all_programmation h2{
	color: #fff !important;
}

.button_all_programmation{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 40px;
}

.link_programmation:hover .item_programmation_info::before{
	opacity: .2;
}

#content-main p:not(:last-of-type){
	margin-bottom: 20px;
}

.wrap_infos_pratiques .wp-block-column > a {
	display: block;
	width: 240px;
	height: 240px;
	border: 6px solid #fff;
	border-radius: 12px;
	background: linear-gradient(135deg, #840008 0%, #E30613 100%);
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
}

.wrap_infos_pratiques .wp-block-column:nth-of-type(3) > a,
.wrap_infos_pratiques .wp-block-column:nth-of-type(4) > a{
	background: linear-gradient(-135deg, #840008 0%, #E30613 100%);
}

.wrap_infos_pratiques .wp-block-column > a:hover{
	background: #E30613;
}

.wrap_infos_pratiques .wp-block-column > a img {
	display: block;
	width: 70px;
	height: 70px;
	object-fit: contain;
	filter: invert(1) brightness(2);
	margin: 0 auto 25px auto;
}

.wrap_infos_pratiques .wp-block-column > a:hover img{
	filter: invert(1) brightness(2);
}

.wrap_infos_pratiques .wp-block-column > a p{
	font-size: 16px;
	text-transform: uppercase;
	font-family: "Town80-Bold", Arial, sans-serif !important;
	color: #fff;
	line-height: 1.1em;
}

.wrap_infos_pratiques .wp-block-column > a:hover p{
	color: #fff;
}

.wp-block-embed__wrapper {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%; /* = 9 / 16 * 100 */
  height: 0;
  overflow: hidden;
}

.wp-block-embed__wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
  border: 0;
}

.wp-block-media-text,
.wp-block-columns{
	gap: 80px;
}

.wp-block-media-text > .wp-block-media-text__content{
	padding: 60px 0;
}

.wp-block-media-text__media img{
	border-radius: 12px;
}

.wrap_devenir_mecene > a{
	width: 100%;
	padding: 60px 80px;
	background: url(../img/texture-grunge-orange.jpg) no-repeat center / cover;
	position: relative;
	z-index: 10;
	display: block;
	color: #fff;
	font-size: 1.5em;
	line-height: 1.4em;
	border-radius: 10px;
	font-family: "Town80-Bold", Arial, sans-serif !important;
}

.wrap_devenir_mecene > a::before{
	content:'';
	display: block;
	width: 50%;
	height: 100%;
	background: linear-gradient(to right, rgba(24, 24, 24, 1) 0%, rgba(24, 24, 24, 0) 45%);
	position: absolute;
	left: 0;
	top: 0;
	border-radius: 10px;
	z-index: -1;
	opacity: .8;
	transition: all .3s;
}

.wrap_devenir_mecene > a:hover::before{
	opacity: .5;
}

.wrap_devenir_mecene > a span {
	display: block;
	border-radius: 12px;
	background: #fff;
	font-size: 16px;
	font-family: "Town80-Bold", Arial, sans-serif !important;
	color: #181818;
	padding: 15px 0;
	text-align: center;
	width: 300px;
	line-height: 1em;
	margin-top: 15px;
	transition: all .3s;
}

.wrap_devenir_mecene > a span::after{
	content:'';
	display: inline-block;
	height: 10px;
	width: 6px;
	background: url(../img/arrow-button-noir.svg) no-repeat center / contain;
	margin-left: 10px;
	transition: all .3s;
}

.wrap_devenir_mecene > a:hover span{
	background: #E30613;
	color: #fff;
}

.wrap_devenir_mecene > a:hover span::after{
	background: url(../img/arrow-button-blanc.svg) no-repeat center / contain;
}


/* FOOTER *//* FOOTER *//* FOOTER *//* FOOTER */
/* FOOTER *//* FOOTER *//* FOOTER *//* FOOTER */
/* FOOTER *//* FOOTER *//* FOOTER *//* FOOTER */

.wrap_confiance{
	text-align: center;
	background: #fff;
}

.wrap_confiance p strong{
	color: #A09F9F;
}

.titre_confiance{
	font-size: 1.6em;
	color: #181818 !important;
	font-family: "Town10-Black", Arial, sans-serif !important;
	line-height: 1.1em;
	margin-bottom: 30px;
}

.sliderPartenaires {
	width: 100%;
	height: 100%;
	position: relative;
}

.sliderPartenaires .swiper-wrapper {
	transition-timing-function: linear !important;
	position: relative;
}

.sliderPartenaires .swiper-slide {
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 300px;
	position: relative;
	overflow: hidden;
}

.sliderPartenaires .swiper-slide img {
	width: 100%;
	display: block;
	height: 90px;
	object-fit: contain;
	max-width: 140px;
	filter: grayscale(100%);
	transition: all .3s;
	opacity: .6;
}

.sliderPartenaires .swiper-slide a:hover img{
	opacity: 1;
	filter: grayscale(0%);
}

#footer-main {
	background: #fff;
	position: relative;
	overflow: hidden;
	padding-top: 60px;
}

.top_footer{
	padding: 60px 360px 90px 0;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	flex-wrap: wrap;
	border-top: 1px solid #E9E9E9;
}

.titre_footer{
	font-size: 16px;
	font-family: "Town10-Bold", Arial, sans-serif !important;
	line-height: 1.4em;
	letter-spacing: 0.05em;
	color: #181818 !important;
	display: block;
	margin-bottom: 20px;
	text-transform: uppercase;
}

.top_footer ul li:not(:last-of-type){
	margin-bottom: 10px;
}

.top_footer ul li a,
.top_footer ul li p{
	font-family: "Town80-Book", Arial, sans-serif !important;
	font-size: 16px;
	line-height: 1.4em;
	color: #181818;
}

.liste_reseaux_footer > a{
	font-size: 20px !important;
}

.liste_reseaux_footer > a:not(:last-of-type){
	margin-right: 10px;
}

#footer-main a{
	transition: all .3s;
}

#footer-main a:hover{
	color: #E30613;
}

.bottom_footer{
	border-top: 1px solid #E9E9E9;
	padding: 20px 0;
}

.second_footer_menu ul{
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 30px;
}

.second_footer_menu ul li a{
	display: inline-block;
	font-family: "Town80-Book", Arial, sans-serif !important;
	font-size: 14px;
	line-height: 1.4em;
	color: #181818;
}

.second_footer_menu ul li:first-of-type a{
	background: #f5f5f5;
	padding: 10px 15px;
	border-radius: 10px;
}

.second_footer_menu ul li:first-of-type a:hover{
	background: #E30613;
	color: #fff !important;
}

.map_footer{
	display: block;
	width: 545px;
	height: 534px;
	background: url(../img/map-lens.svg) no-repeat center / contain;
	position: absolute;
	right: -60px;
	bottom: -120px;
}

body.page #content-main{
	padding-bottom: 200px;
}

.wrap_top_page_image {
	position: relative;
	min-height: 850px;
	z-index: 10;
}

.wrap_top_page_image::after{
	content:'';
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	background: linear-gradient(to bottom, rgba(0,0,0,1) 0%,rgba(0,0,0,0) 100%);
	top: 0;
	opacity: .5;
	pointer-events: none;
}

.wrap_top_page_image img{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	position: absolute;
	left: 0;
	top: 0;
}

.content_top_page_image {
	position: absolute;
	z-index: 10;
	left: 0;
	right: 0;
	margin: auto;
	bottom: 40px;
	padding: 0 50px;
}

h1{
	font-size: 3em;
	line-height: 1.1em;
	font-family: "Town10-Black", Arial, sans-serif !important;
}

body.home h1{
	font-size: 2.2em;
}

.content_top_page_image hr{
	border-top: 1px solid #d9d9d9;
	margin: 40px auto;
}

.content_top_page_image .wp-block-group > div{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 60px;
}

.content_top_page_image .wp-block-group p{
	color: #fff;
	font-size: 1.1em;
	line-height: 1.3em;
	font-family: "Town80-Book", Arial, sans-serif !important;
}

.content_top_page_image .wp-block-group .wp-block-button a{
	margin-top: 0;
	min-width: 340px;
}

.wrap_col_image{
	gap: 80px;
}

.wrap_col_image img{
	border-radius: 12px;
}

.col_bloc_jaune{
	padding: 35px 45px;
	background: #F9B233;
	position: relative;
	z-index: 10;
	max-width: 90%;
	margin: -150px auto 0 auto;
	border-radius: 12px;
}

.col_bloc_jaune p{
	color: #fff !important;
}

.wp-block-cover {
	min-height: 850px;
}

.wp-block-cover .wp-block-group{
	max-width: 750px;
	margin: auto;
}

.wp-block-cover .wp-block-group h2{
	color: #fff;
	text-align: center;
}

.wp-block-cover .wp-block-group p{
	color: #fff !important;
}

.button-base.button-play::after,
.wp-block-button.button-play a::after{
	display: none;
}

.button-base.button-play::before,
.wp-block-button.button-play a::before{
	content:'\f144';
	display: inline-block;
	font-size: 1em;
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	margin-right: 10px;
}

@keyframes animquote {
	0%{transform: rotate(45deg) scale(0.5); border-radius: 0;}
	70%{transform: rotate(765deg) scale(1); border-radius: 12px;}
	100%{transform: rotate(765deg) scale(0.5); border-radius: 0px;}
}

.wp-block-quote{
	max-width: 1140px;
	margin-left: auto;
	margin-right: auto;
}

.wp-block-quote::before{
	content:'';
	display: block;
	width: 25px;
	height: 25px;
	background: #E30613;
	margin: 0 auto 30px auto;
	animation: animquote cubic-bezier(.96,-0.03,0,.98) 5s infinite;
}

.wp-block-quote::after{
	content:'';
	display: block;
	width: 180px;
	height: 2px;
	background: #E30613;
	margin: 40px auto 0px auto;
}

.wp-block-quote p{
	font-size: 1.4em;
	line-height: 1.8em;
	font-style: italic;
	color: #181818 !important;
	font-family: "Town80-MediumItalic", Arial, sans-serif !important;
}

/* .wp-block-quote p:first-of-type::before{
	content:'"';
	display: inline-block;
	margin-right: 3px;
}

.wp-block-quote p:last-of-type::after{
	content:'"';
	display: inline-block;
	margin-left: 3px;
} */

/* PAGE SANS FOND *//* PAGE SANS FOND *//* PAGE SANS FOND *//* PAGE SANS FOND */
/* PAGE SANS FOND *//* PAGE SANS FOND *//* PAGE SANS FOND *//* PAGE SANS FOND */
/* PAGE SANS FOND *//* PAGE SANS FOND *//* PAGE SANS FOND *//* PAGE SANS FOND */

.wrap_top_sansfond h1{
	margin-bottom: 20px;
}

.triple_colonne_degrade{
	gap: 10px;
}

.triple_colonne_degrade .wp-block-column {
	display: block;
	padding: 30px;
	border: 6px solid #fff;
	border-radius: 12px;
	background: linear-gradient(135deg, #FAFAFA 0%, #F2F2F2 100%)
}

#content-main .wp-block-list{
	list-style: inside square;
}

#content-main .wp-block-list li:not(:last-of-type){
	margin-bottom: 8px;
}

#content-main .wp-block-list li{
	color: #A09F9F;
}

#content-main .wp-block-list li strong{
	color: #fff;
}

.triple_colonne_degrade .wp-block-column p,
.triple_colonne_degrade .wp-block-column li{
	font-size: .9em;
	line-height: 1.5em;
	color: #000 !important;
}

.liste_restaurants .wp-block-columns{
	flex-wrap: wrap !important;
}

.liste_restaurants .wp-block-columns .wp-block-column{
	flex-basis: 46%;
	max-width: 46%;
}

.liste_restaurants .wp-block-columns .wp-block-column figure img{
	display: block;
	width: 100%;
	height: 420px;
	border-radius: 12px;
	object-fit: cover;
}

.liste_restaurants .wp-block-columns .wp-block-group{
	padding: 20px;
}

.liste_restaurants .wp-block-columns .wp-block-group p{
	font-size: .9em;
}

.liste_restaurants .wp-block-columns .wp-block-group a:hover{
	color: #F9B233;
	border-color: #F9B233;
}

.liste_restaurants .wp-block-columns h3{
	color: #F9B233;
	margin-bottom: 10px;
	font-size: 1.1em;
}

.manger-menu p{
	font-size: .9em;
}

.manger-adresse::before{
	content:'\f3c5';
	display: inline-block;
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	margin-right: 8px;
	color: #000;
}

.manger-tel::before{
	content:'\f095';
	display: inline-block;
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	margin-right: 8px;
	color: #000;
}

.manger-horaire::before{
	content:'\f017';
	display: inline-block;
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	margin-right: 8px;
	color: #000;
}

.manger-site p:first-of-type::before{
	content:'\f0c1';
	display: inline-block;
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	margin-right: 8px;
	color: #000;
}

.manger-facebook p:first-of-type::before {
	content: '';
	display: inline-block;
	width: 20px;
	height: 20px;
	position: relative;
	top: 4px;
	background: url(../img/facebook.svg) no-repeat center / contain;
	margin-right: 8px;
	color: #000;
}

/* CONTACT */

/* formulaire */
.wpcf7-form {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.wpcf7 {
	max-width: 100%;
	margin: auto;
	width: 100%;
	background: #FAFAFA;
	padding: 40px 50px 20px 50px;
	position: relative;
	z-index: 10;
	border-radius: 20px;
	border: 1px solid #F2F2F2;
}

.wpcf7 label {
	width: 48%;
	margin: 0 0 40px 0;
	text-transform: uppercase;
	color: #131313;
	line-height: 1.2em;
	font-size: .9em;
	letter-spacing: 0.05em;
	font-weight: 400;
	display: block;
	padding-bottom: 5px;
	border-bottom: 1px solid #131313;
	font-family: "Town80-Book", Arial, sans-serif !important;
}
.wpcf7 input {
	width: 100%;
	padding: 8px 15px;
	background: #fff;
	border: none;
	margin-top: 10px;
	color: #131313;
	font-family: "Town80-Book", Arial, sans-serif !important;
	font-size: 1em;
	line-height: 1.3em;
}
.wpcf7 label.textarea-label{
	width: 100%;
}
.wpcf7 textarea {
	width: 100%;
	height: 120px;
	resize: none;
	background: #fff;
	border: none;
	color: #131313;
	padding: 8px 15px;
	margin-top: 10px;
	font-family: "Town80-Book", Arial, sans-serif !important;
	font-size: 1em;
	line-height: 1.3em;
}
.wpcf7 input::placeholder,
.wpcf7 textarea::placeholder{
	color: #888;
}
.wpcf7 input.wpcf7-submit {
	display: inline-block;
	background: #E30613;
	color: #fff;
	text-transform: uppercase;
	border: none;
	font-size: 1.1em;
	line-height: 1.3em;
	margin-bottom: 0;
	cursor: pointer;
	border-radius: 30px;
	font-family: "Town80-Bold", Arial, sans-serif !important;
	padding: 12px 25px;
	transition: all .3s;
}
.wpcf7 input.wpcf7-submit:hover {color: #fff; background: #000;}
.wpcf7-not-valid-tip {
	color: #dc3232;
	font-size: .9em;
	font-weight: normal;
	display: block;
}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
	padding: 20px;
	text-align: center;
}
.wpcf7 form.sent .wpcf7-response-output {
	border-color: #E30613;
	width: 100%;
	padding: 40px 20px;
	background: #131313;
	color: #fff;
	text-align: center;
	border-bottom: 10px solid #E30613;
}
.wpcf7 .wpcf7-acceptance label {
	width: 100%;
	margin: 2% 0 20px 0;
	padding-bottom: 0;
	text-align: left;
	text-transform: none;
	letter-spacing: 0;
	display: block;
	border: none;
}

.wpcf7-acceptance > .wpcf7-list-item{
	margin: 0;
}

.wpcf7-acceptance > .wpcf7-list-item label{
	font-size: .9em;
}

.wpcf7 .wpcf7-acceptance input {
	width: 15px !important;
	height: 15px !important;
	padding: 0;
	margin: 0 8px -1px 0;
	border: 1px solid #DBDBDB;
}

.radius{
	border-radius: 12px;
}

/* fin formulaire */

.bloc_rouge_encart{
	padding: 40px;
	background: #E30613;
	border-radius: 12px;
}

.bloc_rouge_encart p,
.bloc_rouge_encart p strong,
.bloc_rouge_encart li{
	color: #fff !important;
	line-height: 1.5em;
}

.bloc_rouge_encart ul{
	list-style: none !important;
}

.bloc_rouge_encart li:not(:last-of-type){
	margin-bottom: 20px !important;
}

.bloc_rouge_encart li::before{
	content:'\f058';
	display: inline-block;
	font-size: .9em;
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	margin-right: 10px;
}

.swiper-pagination-bullet{
	background: #fff;
}

.swiper-pagination-bullet.swiper-pagination-bullet-active{
	background: #F9B233;
}

#content-main .triple_colonne_degrade .wp-block-list li strong{
	color: #000;
}

/* VILLE *//* VILLE *//* VILLE *//* VILLE */
/* VILLE *//* VILLE *//* VILLE *//* VILLE */
/* VILLE *//* VILLE *//* VILLE *//* VILLE */

.wrap_all_programmation_tax{
	padding: 60px;
}

.wrap_content_archive_manif{
	padding-top: 160px;
}

.wrap_content_archive_manif h1{
	text-align: center;
	max-width: 94%;
	margin: 0 auto 40px auto;
}

.wrap_liste_sans_slider {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 60px 30px;
}

.item-manifestation{
	width: 22%;
}

.wrap_all_villes_capsules {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
	margin-top: 40px;
	justify-content: center;
}

.capsule_ville {
	display: inline-block;
	background: #fff;
	border-radius: 12px;
	padding: 20px 25px;
	color: #000;
	text-decoration: none;
	font-family: "Town80-Bold", Arial, sans-serif;
	font-size: 1em;
	transition: all 0.2s ease;
	min-width: 200px;
	text-align: center;
}

.capsule_ville:hover {
	background: #c40030;
	color: #fff;
}

.btn-edition .active a{
	background: #F9B233;
}

/* SINGLE PROGRAMMES *//* SINGLE PROGRAMMES *//* SINGLE PROGRAMMES *//* SINGLE PROGRAMMES */
/* SINGLE PROGRAMMES *//* SINGLE PROGRAMMES *//* SINGLE PROGRAMMES *//* SINGLE PROGRAMMES */
/* SINGLE PROGRAMMES *//* SINGLE PROGRAMMES *//* SINGLE PROGRAMMES *//* SINGLE PROGRAMMES */

.left_single_programmes h1{
	font-size: 1.6em;
	margin-bottom: 20px;
}

.right_single_programmes img{
	display: block;
	width: 100%;
	height: auto;
	margin: auto;
}

.bandeau_sans_image.bandeau_single_programmes {
	padding-bottom: 30px;
}

.wrap_content_single_programmes{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 80px;
	padding-top: 200px;
}

.left_single_programmes{
	width: 66%;
}

.right_single_programmes{
	width: 33%;
}

.info_single_programmes{
	margin-bottom: 30px;
}

.left_single_programmes .sans_reservation{
	margin-top: 20px;
}

.back_button_single{
	text-align: center;
}

.date_programmes{
	color: #E30613 !important;
}

.date_programmes::before {
	content: '\f783';
	display: inline-block;
	font-size: 1em;
	width: 16px;
	font-family: 'Font Awesome 5 Free';
	margin-right: 4px;
	font-weight: 900;
}

.heure_programmes::before {
	content: '\f017';
	display: inline-block;
	font-size: 1em;
	font-family: 'Font Awesome 5 Free';
	margin-right: 8px;
	font-weight: 400;
}

.lieu_programmes::before {
	content: '\f3c5';
	display: inline-block;
	font-size: 1em;
	font-family: 'Font Awesome 5 Free';
	margin-right: 8px;
	font-weight: 900;
}

.single-manifestations #content-main{
	padding-bottom: 120px;
}

.left_single_programmes .excerpt_programmes p{
	color: #fff;
	font-size: .9em;
}

.left_single_programmes .content p{
	color: #fff;
}

.content{
	padding-top: 20px;
	border-top: 1px solid #fff;
}

/* Galerie single manifestations */
.gallery-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.gallery-grid a {
  position: relative;
  aspect-ratio: 1 / 1;          /* carré parfait */
  overflow: hidden;
  border-radius: 8px;
  background: #f6f6f6;
  box-shadow: 0 1px 2px rgba(0,0,0,.06);
}

.gallery-grid img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;             /* crop propre, vignettes homogènes */
  transition: transform .25s ease, opacity .2s ease;
}

.gallery-grid a:hover img {
  transform: scale(1.04);
}

.wrap_all_programmation .swiper-horizontal > .swiper-pagination-bullets,
.wrap_all_programmation .swiper-pagination-bullets.swiper-pagination-horizontal,
.wrap_all_programmation .swiper-pagination-custom,
.wrap_all_programmation .swiper-pagination-fraction {
	bottom: -40px;
	top: var(--swiper-pagination-top,auto);
	left: 0;
	width: 100%;
}

/* optionnel : sur mobile on peut passer à 2 colonnes */
@media (max-width: 640px) {
  .gallery-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.error404 .center{
	text-align: center;
}

#cookie_footer{
	cursor: pointer;
}

/* --- */

.retour{
	display: block;
	width: 100%;
	clear: both;
}

/* 

	font-family: 'Outfit', sans-serif;	
	
	Rouge : #E30613;
	Jaune : #F9B233;
	
*/


#none{
	display: none;
}