/*
Theme Name: lasoufflerie_V3
Theme URI: https://lasoufflerie.org
Author: Maxime Bichon
Author URI: https://maximebichon.net
Description: lasoufflerie_V3
*/

/* @import url('main.css'); */

/* RESET */

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

/* FONTS */

@font-face {
	font-family: 'GintoGRK';
	src: url('f/ABCGintoGRKNormal-Light.woff2') format('woff2'),
		url('f/ABCGintoGRKNormal-Light.woff') format('woff');
	font-weight: 300;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'GintoGRK';
	src: url('f/ABCGintoGRKNormal-LightItalic.woff2') format('woff2'),
		url('f/ABCGintoGRKNormal-LightItalic.woff') format('woff');
	font-weight: 300;
	font-style: italic;
	font-display: swap;
}
@font-face {
	font-family: 'GintoGRK';
	src: url('f/ABCGintoGRKNormal-Medium.woff2') format('woff2'),
		url('f/ABCGintoGRKNormal-Medium.woff') format('woff');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'GintoGRK';
	src: url('f/ABCGintoGRKNormal-MediumItalic.woff2') format('woff2'),
		url('f/ABCGintoGRKNormal-MediumItalic.woff') format('woff');
	font-weight: 500;
	font-style: italic;
	font-display: swap;
}
@font-face {
	font-family: 'GintoGRK';
	src: url('f/ABCGintoGRKNormal-Regular.woff2') format('woff2'),
		url('f/ABCGintoGRKNormal-Regular.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'GintoGRK';
	src: url('f/ABCGintoGRKNormal-RegularItalic.woff2') format('woff2'),
		url('f/ABCGintoGRKNormal-RegularItalic.woff') format('woff');
	font-weight: normal;
	font-style: italic;
	font-display: swap;
}
@font-face {
	font-family: 'GintoNord';
	src: url('f/ABCGintoNord-Black.woff2') format('woff2'),
		url('f/ABCGintoNord-Black.woff') format('woff');
	font-weight: 900;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'GintoNord';
	src: url('f/ABCGintoNord-MediumItalic.woff2') format('woff2'),
		url('f/ABCGintoNord-MediumItalic.woff') format('woff');
	font-weight: 500;
	font-style: italic;
	font-display: swap;
}
@font-face {
	font-family: 'GintoNord';
	src: url('f/ABCGintoNord-Regular.woff2') format('woff2'),
		url('f/ABCGintoNord-Regular.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'AntoPlot';
	src: url('f/BVHAntoPlotTrial-Lab02.woff2') format('woff2'),
		url('f/BVHAntoPlotTrial-Lab02.woff') format('woff');
	font-weight: bold;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'AntoPlot';
	src: url('f/BVHAntoPlotTrial-Light.woff2') format('woff2'),
		url('f/BVHAntoPlotTrial-Light.woff') format('woff');
	font-weight: 300;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'AntoPlot';
	src: url('f/BVHAntoPlotTrial-Medium.woff2') format('woff2'),
		url('f/BVHAntoPlotTrial-Medium.woff') format('woff');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'AntoPlot';
	src: url('f/BVHAntoPlotTrial-Regular.woff2') format('woff2'),
		url('f/BVHAntoPlotTrial-Regular.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

.anto{
	font-family: 'AntoPlot';
}

.ginto{
	font-family: 'GintoGRK';
}

.ginto_nord{
	font-family: 'GintoNord';
	hyphens: auto;
}

.medium{
	font-weight: 500;
}

.light{
	font-weight: 300;
}

.mega_bold{
	font-weight: 900;
}

/* LAZY */

img:not([src]):not([srcset]) {
	visibility: hidden;
}

img.lazy{
	opacity: 0;
	transition: opacity 750ms;
}

img.lazy.loaded{
	opacity: 1;
}

/*/////////*/
/* GENERAL */
/*/////////*/

body{
	color: black;
	font-family: 'GintoGRK';
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-backface-visibility: hidden;
}

a{
	text-decoration: none;
	color: black;
}

p{
	margin-bottom: 1em;
}

p:last-of-type{
	margin-bottom: 0;
}

img{
	width: 100%;
	height: auto;
	vertical-align: middle;
}

.left{
	float: left;
}

.right{
	float: right;
}

.clear{
	clear: both;
}

.alignright{
	text-align: right;
}

.center{
	text-align: center;
}

.upper{
	text-transform: uppercase;
}

.lower{
	text-transform: lowercase
}

.capi,
.first_capi:first-letter{
	text-transform: capitalize;
}

.first_capi:first-letter{
	white-space:nowrap;
}

.borderbox{
	box-sizing: border-box;
}

.inline{
	display: inline;
}

.inline-block{
	display: inline-block;
}

.relative{
	position: relative;
}

.absolute{
	position: absolute;
}

.fixed{
	position: fixed;
}

.flex{
	display: flex;
}

.flex-wrap{
	flex-wrap: wrap;
}

.flex-column{
	flex-direction: column;
}

.space-between{
	justify-content: space-between;
}

.flex-center{
	align-items: center;
	justify-content: center;
}

.cover{
	object-fit: cover;
}

i,
em,
.italic{
	font-style: italic;
}

.bold,
strong{
	font-weight: 500;
}

.hyphens{
	-webkit-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
}

.overflow{
	overflow: auto;
}

.width10{
	width: 10%;
}

.width12{
	width: 12.5%;
}

.width20{
	width: 20%;
}

.width25{
	width: 25%;
}

.width30{
	width: 30%;
}

.width33{
	width: 33.33%;
}

.width40{
	width: 40%;
}

.width50{
	width: 50%;
}

.width60{
	width: 60%;
}

.width65{
	width: 65%;
}

.width66{
	width: 66.66%;
}

.width70{
	width: 70%;
}

.width75{
	width: 75%;
}

.width80{
	width: 80%;
}

.width90{
	width: 90%;
}

.width100{
	width: 100%;
}

.height100{
	height: 100%;
}

.pointer{
	cursor: pointer;
}

.border{
	border-bottom: 1px solid;
}

.border2px{
	border-bottom: 1px solid;
}

.responsive-video{
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
}

.responsive-video iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.column_2{
	column-count: 2;
}

.column_4{
	column-count: 4;
	column-gap: 2vw;
}

.column_5{
	column-count: 5;
}

.nobreak{
	break-inside: avoid;
	position: relative; 
	width: 100%;
	display: inline-block;
}

.nobreak .inner{
	position: relative; 
	width: 100%;
	display: inline-block;
}

/* .column_2 > *,
.column_3 > *{
  display: inline-block;
  width: 100%;
} */

.greyscale_hover_img:hover img,
.greyscale{
	filter: grayscale(100%);
}

.nowrap{
	white-space: nowrap;
}

/*////////*/
/* LAYOUT */
/*////////*/

.underline{
	text-decoration: underline;
}

.size17{
	font-size: 0.66vw;
}

.size24{
	font-size: 0.93vw;
	line-height: 1.25em;
	font-size: clamp(13px, 0.93vw, 0.93vw);
	min-height: 0vw;
}

.size34{
	font-size: 1.33vw;
	line-height: 1.18em;
	font-size: clamp(18px, 1.33vw, 1.33vw);
	min-height: 0vw;
}

.size50{
	font-size: 2.01vw;
	line-height: 1.18em;
	font-size: clamp(27px, 2.01vw, 2.01vw);
	min-height: 0vw;
}

.size66{
	font-size: 2.66vw;
	line-height: 1.18em;
	font-size: clamp(36px, 2.66vw, 2.66vw);
	min-height: 0vw;
}

.size69{
	font-size: 2.5vw;
	line-height: 1.08em;
	font-size: clamp(36px, 2.5vw, 2.5vw);
	min-height: 0vw;
}

.marg1em{
	margin-bottom: 1em;
}

.neg_marg1em{
	margin-top: -1em;
}

.marg2em{
	margin-bottom: 2em;
}

.marg5{
	margin-bottom: 0.15vw;
}

.marg8{
	margin-bottom: 0.25vw;
}

.marg10{
	margin-bottom: 0.31vw;
}

.marg12{
	margin-bottom: 0.375vw;
}

.marg17{
	margin-bottom: 0.5vw;
}

.marg24{
	margin-bottom: 0.93vw;
}

.marg30{
	margin-bottom: 1.17vw;
}

.marg48{
	margin-bottom: 1.875vw;
}

.marg60{
	margin-bottom: 2.34vw;
}

.paddright30{
	padding-right: 2vw;
}

.main_color,
.main_color a:hover,
.main_color_hover a:hover,
#calendrier-saison-nav .slick-active,
.dropdown-link{
	color: black;
}

.dropdown-link{
	border-bottom: 1px solid black;
	padding-bottom: 15px;
}

.text_links p a{
	color: black;
	font-weight: normal!important;
	font-style: normal!important;
	text-decoration: underline;
}

.external_links:after{
	content: url('i/ext_links.svg');
	display: inline-block;
	width: 0.8em;
	height: 0.8em;
	margin-left: 0.3em;
	position: relative;
	top: 0.1em;
}

.external_links:hover:after{
	content: url('i/ext_links_black.svg');
}

.hover_italic a:hover,
.dropdown-link_menu:hover{
	font-style: italic;
}

/* .black,
.active,
.main_color .active,
.dropdown-link:hover,
.hover_black a:hover,
#calendrier-saison-nav .slick-current,
.nav-calendrier-saison:hover,
#toggle_menu:hover{
	color: #e84910;
}

.hover_svg:hover svg path{
	fill: #e84910;
} */

.lightblue_bg{
	background-color: #ffff00;
}

.wrapper{
	margin-top: 3.125vw;
	/* margin-left: 11.7vw; */
	/* margin-right: 11.7vw; */
	margin-bottom: 3.125vw;
	margin-left: 18.4vw;
	margin-right: 18.4vw;
}

.wrapper.wider{
	margin-left: 3.9vw;
	margin-right: 3.9vw;
}

.wrapper.wider.wider_2024{
	margin-left: 18.4vw;
	margin-right: 1.16vw;
	margin-top: 4.125vw;
}

.dropdown-link{
	cursor: pointer;
}

.dropdown-container{
	display: none;
}

/* BICHROMIE */

.duo_svg{
	display: none;
}

/* .duo img,
.duo_fixed img,
.duo.duo_nohover:hover img{
	-webkit-filter: url(#duotone);
	filter: url(i/duotone.svg#duotone);
}

.duo:hover img{
	-webkit-filter: none;;
	filter: none;
}

.duo_2 img{
	-webkit-filter: url(#duotone_2);
	filter: url(i/duotone_2.svg#duotone_2);
} */

.duo:hover{
	opacity: 0.5;
}

/* FILTERS & SUBMENUS */

.submenus_header li{
	margin-left: 0.585vw;
	margin-right: 0.585vw;
}

#brochure{
	position: absolute;
	right: 0;
	top: 0.15vw;
}

/* GRIDS */

.grid{
	margin-left: -0.9375vw;
	margin-right: -0.9375vw;
}

.grid .item{
	padding-left: 0.9375vw;
	padding-right: 0.9375vw;
}

.ratio{
	/* padding-bottom: 56.25%; */
	padding-bottom: 64.91%;
	height: 0;
	overflow: hidden;
	width: 100%;
	position: relative;
}

.ratio_wrap{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	display: flex;
}

/* SINGLES */

.side_logos .one_logo{
	padding-right: 1.17vw;
	box-sizing: border-box;
	display: flex;
}

.side_logos .one_logo img{
	object-fit: contain;
}

/* CALENDRIER */

#calendrier-saison,
#calendrier-saison-nav{
	visibility: hidden;
}

#calendrier-saison-nav :focus{
	outline: 0;
}

#calendrier-saison-nav .slick-track{
	transform: none!important;
	display: flex;
	justify-content: center;
}

#calendrier-saison-nav .slick-slide{
	width: auto!important;
}

/* #calendrier-saison-nav{
	padding-top: 0.93vw;
} */

.nav-calendrier-saison{
	box-sizing: border-box;
	padding: 0 0.5vw 0 0.5vw;
}

.empty{
	display: none;
}

.onemonth{
	overflow: hidden;
}

.onemonth.month-empty .empty{
	display: block;
}

/* MENU */

main{
	min-height: calc(100vh - 3.15vw);
}

#menu{
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	transition: top 0.5s ease;
	z-index: 2;
}

#menu.scrolled{
	top: -5vw;
}

#main_menu,
#footer{
	padding-left: 18.36vw;
	padding-right: 18.36vw;
	padding-top: 0.8vw;
	padding-bottom: 0.8vw;
	width: 100%;
	box-sizing: border-box;
	position: relative;
}

#logo{
	width: 15.12vw;
	position: fixed;
	top: 0.75vw;
	left: 1vw;
	transition: width 0.5s ease;
	z-index: 4000;
	mix-blend-mode: multiply;
}

#logo.scrolled{
	width: 9vw;
}

#billets_svg{
	width: 2vw;
	height: auto;
	position: absolute;
	margin-left: 0.4vw;
}

.single_billets_svg #billets_svg{
	position: relative;
	top: 0.3vw;
	width: 1.5vw;
}

#loupe_svg:hover svg path,
#buy_tickets:hover #billets_svg path{
	stroke: #e84910;
	fill: #e84910;
}

.single_billets_svg #billets_svg path{
	stroke: #e84910;
	fill: #e84910;
}

.single_billets_svg a:hover #billets_svg path{
	stroke: black;
	fill: black;
}

#left_menu{
	position: fixed;
	top: 0;
	bottom: 0;
	transform-origin: left top;
	transform: rotate(-90deg) translateX(-100%);
	width: 100vh;
	z-index: 3;
	height: 3.5vw;
}

#left_menu_wrap{
	height: 3.5vw;
	align-items: center;
	padding-left: 1.17vw;
	padding-right: 1.17vw;
	box-sizing: border-box;
}

.socials{
	display: inline-flex;
	margin-top: 0.2vw;
	margin-left: 0.4vw;
}

.one_social{
	width: 1.3vw;
	height: 1.25vw;
	transform: rotate(90deg);
	margin-right: 0.55vw;
}

.one_social:hover svg path{
	fill: #e84910!important;
}

#right_menu{
	position: fixed;
	top: 0;
	bottom: 0;
	-webkit-transform: rotate(-90deg);
	-ms-transform: rotate(-90deg);
	transform: rotate(-90deg);
	width: 100vh;
	left: calc(100vw - 3.24vw);
}

#right_menu_wrap{
	height: 3.24vw;
	align-items: center;
	padding-left: 1.17vw;
	padding-right: 4.68vw;
	box-sizing: border-box;
}

#sub_menu_left{
	width: 11.8vw;
}

#toggle_menu{
	position: absolute;
	top: 1vw;
	right: 1.17vw;
	z-index: 4;
}

#toggle_menu .size17{
	padding-top: 0.2vw;
}

#side_menu{
	top: 0;
	right: -50vw;
	bottom: 0;
	position: fixed;
	box-sizing: border-box;
	padding: 0.55vw 1.17vw 1.17vw 1.17vw;
	overflow-x: hidden;
	overflow-y: scroll;
	z-index: 5;
	width: 28vw;
}

#side_menu.open{
	right: 0;
}

.sub_side_menus{
	display: none;
	margin-left: 
}

#cross_side_menu{
	position: absolute;
	top: 0;
	right: 1.1vw;
	width: 2.8vw;
	cursor: pointer;
}

.hamburger{
	display: flex;
	height: 1.1vw;
	width: 2.87vw;
	border-top: 2px solid;
	border-bottom: 2px solid;
	cursor: pointer;
	position: relative;
	align-items: center;
}

.hamburger .line{
	position: relative;
	top: 0;
	border-bottom: 2px solid;
	width: 100%;
}

.cross{
	width: 30px;
	height: 30px;
	overflow: hidden;
	cursor: pointer;
	position: relative;
	z-index: 100;
}

.cross::before, 
.cross::after {
	content: '';
	position: absolute;
	height: 2px;
	width: 100%;
	top: 50%;
	right: 0;
	background: black;
}

.cross::before {
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

.cross::after {
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

/* Search */

#loupe_svg{
	height: auto;
	width: 1.45vw;
	cursor: pointer;
	z-index: 2;
}

#search_wrap{
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 3;
	display: none;
	flex-direction: column;
	justify-content: center;
}

#search_wrap.open{
	display: flex;
}

#search_box{
	padding-bottom: 0.25vw;
	padding-left: 11.7vw;
	padding-right: 11.7vw;
	box-sizing: border-box;
	height: 93px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

#search_box input{
	font-family: inherit;
	color: inherit;
	font-size: inherit;
	background: transparent;
	font-weight: 500;
}

#search_box input[type="text"]{
	border: none;
	border-bottom: 1px solid black;
	margin: 0;
	padding: 0;
	margin-left: 0.8vw;
	margin-right: 0.8vw;
	position: relative;
	top: 0.17vw;
	height: 1.8vw;
}

#cross_search{
	position: absolute;
	top: 1vw;
	right: 0.6vw;
	width: 30px;
	cursor: pointer;
}

/* SLIDERS */

.slider_autour,
.slider{
	/* padding-bottom: 56.25%; */
	padding-bottom: 64.95%;
	height: 0;
	overflow: hidden;
	width: 100%;
	position: relative;
}

.slider,
.slider_home,
.slider_home_img{
	visibility: hidden;
}

.slider_home_img.slick-initialized,
.slider_home.slick-initialized,
.slider.slick-initialized{
	visibility: visible;
}

.slider_autour .slick-list,
.slider .slick-list{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

.slider_autour .slick-track,
.slider .slick-track{
	height: 100%;
}

.slider_autour .slide,
.slider .slide{
	height: 100%;
	display: flex!important;
}

.slick-dots{
	position: absolute;
	right: 0;
	top: 0;
}

.slick-dots button{
	border-radius: 0;
	border: none;
	-webkit-appearance: none;
	background-color: transparent;
	font-family: inherit;
	padding: 0;
	margin: 0;
	font-size: 0.93vw;
	line-height: 1.25em;
	padding-left: 0.19vw;
	padding-right: 0.19vw;
	cursor: pointer;
	color: black;
}

.slick-dots li{
	display: inline;
}

.slick-dots li.slick-active button{
	color: #e84910;
}

/* MISC */

#book{
	width: 1.4vw;
	margin-right: 0.4vw;
}

input[type="password"]{
	border: none;
	border-bottom: 1px dashed black;
	font-family: inherit;
	font-size: inherit;
	-webkit-appearance: none;
	border-radius: 0;
	margin-bottom: 1em;
	color: inherit;
}

input[type="submit"]{
	border: none;
	font-family: inherit;
	font-size: inherit;
	-webkit-appearance: none;
	border-radius: 0;
	background-color: white;
	color: inherit;
	cursor: pointer;
}

/* AUDIO */

.wp-playlist{
	padding: 0!important;
	border: 0!important;
	margin-bottom: 2vw!important;
	font-size: inherit!important;
	line-height: inherit!important;
}

.wp-playlist-current-item{
	display: none!important;
}

.wp-playlist-caption,
.wp-playlist-item,
.wp-playlist-item-title,
.wp-playlist-item-length{
	color: black!important;
	font-size: inherit!important;
	line-height: inherit!important;
	border: none!important;
	font-weight: normal!important;
}

.wp-playlist-playing,
.wp-playlist-playing .wp-playlist-caption,
.wp-playlist-playing .wp-playlist-item,
.wp-playlist-playing .wp-playlist-item-title,
.wp-playlist-playing .wp-playlist-item-length{
	color: #e84910!important;
	font-size: inherit!important;
	line-height: inherit!important;
	border: none!important;
	font-weight: normal!important;
}

/* CARTE AUX PIANOS */

#fond_de_carte{
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

#fond_de_carte_wrap{
	overflow: hidden;
	position: relative;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

#map_image{
	position: absolute;
	cursor: move;
	max-width: none;
	max-height: none;
}

#zoom_buttons{
	position: fixed;
	bottom: 1.2vw;
	left: 4.5vw;
}

#pluz_zoom{
	width: 3vw;
	height: 3vw;
	position: relative;
}

#plus_zoom:after{
	width: 2vw;
	border-bottom: 1px solid black;
	display: block;
	content: '';
	position: absolute;
	margin-left: -1vw;
}

#plus_zoom:before{
	height: 2vw;
	border-right: 1px solid black;
	display: block;
	content: '';
	position: absolute;
	margin-top: -1vw;
}

#minus_zoom:after{
	width: 2vw;
	border-bottom: 1px solid black;
	display: block;
	content: '';
	position: absolute;
	margin-left: -1vw;
}

.zoom_text{
	margin-left: 0.55vw;
	margin-top: 0.4vw;
}

#zoom_out{
	margin-left: 2vw;
}

.pianos_markers{
	position: absolute;
	width: 2vw;
	height: auto;
	min-height: 3vw;
	margin-top: -3vw;
	margin-left: -1vw;
}

.pianos_markers:hover svg path{
	fill: white;
}

#main_panel_carte,
.panel_lieux{
	top: 0;
	right: -50vw;
	bottom: 0;
	position: fixed;
	box-sizing: border-box;
	padding: 0.55vw 1.17vw 1.17vw 1.17vw;
	overflow-x: hidden;
	overflow-y: scroll;
	z-index: 5;
	width: 28vw;
}

#main_panel_carte{
	right: 0;
}

.panel_lieux.open{
	right: 0;
}

.panel_lieux button.playerTrigger{
	background-color: transparent!important;
}

.cross_side_panel_lieux{
	position: absolute;
	top: 1.35vw;
	right: 1.17vw;
	width: 2.8vw;
	cursor: pointer;
}

.legende_audio_lieux{
	margin-left: 3vw;
	margin-top: 1em;
}

/* ACCESSIBILITE */

#text_zoom{
	color: black;
	display: none;
}

#text_zoom span{
	margin-right: 0.2vw;
}

#text_zoom span{
	color: #b2b2b2;
}

#text_zoom span.active,
#text_zoom span:hover{
	color: black;
}

@media screen and (min-width: 1200px) {

	.content.text_zoom_big .size24{
		font-size: 1.33vw;
		line-height: 1.18em;
		font-size: clamp(18px, 1.33vw, 1.33vw);
		min-height: 0vw;
	}
	
	.content.text_zoom_big .size34,
	.content.text_zoom_bigger .size24{
		font-size: 2.01vw;
		line-height: 1.18em;
		font-size: clamp(27px, 2.01vw, 2.01vw);
		min-height: 0vw;
	}
	
	.content.text_zoom_bigger .size34{
		font-size: 2.66vw;
		line-height: 1.18em;
		font-size: clamp(36px, 2.66vw, 2.66vw);
		min-height: 0vw;
	}

}

/*//////*/
/* 2024 */
/*//////*/

.wrapper.calendrier{
	margin-top: 5vw;
}

#left_sub_menus{
	position: absolute;
	top: 6vw;
	left: 7vw;
	width: 9vw;
	z-index: 1000;
}

.wp-playlist-light,
.wp-playlist-item:hover *{
	color: #e84910!important;
}

.full_dashed,
.dashed_dropdown{
	box-sizing: border-box;
}

.full_dashed{
	border-bottom: 1px solid black;	
}

.minus_sign_2024,
.plus_sign_2024{
	font-size: 2.3vw;
	line-height: 0;
	position: relative;
	top: 0.4vw;
}

.chevron_rotated,
.chevron{
	width: 20px;
	height: auto;
	position: relative;
}

.chevron_rotated{
	transform: rotate(180deg);
}

.chevron_rotated{
	display: none;
}

.minus_sign_2024{
	display: none;
	margin-right: 0.1vw;
}

.dropdown-link.open .chevron_rotated,
.dropdown-link.open .minus_sign_2024{
	display: block;
}

.dropdown-link.open .chevron,
.dropdown-link.open .plus_sign_2024{
	display: none;
}

.password_form form{
	border: 1px solid black;
	box-sizing: border-box;
	padding: 1vw 4vw;
	margin-top: 4vw;
	display: inline-block;
}

.hover_vignette{
	display: none;
}

.item-hover_vignette:hover .vignette{
	display: none;
}

.item-hover_vignette:hover .hover_vignette{
	display: block;
}

/* PLAYER PLAYLIST 2024 */

.player-container .play-list,
.player-container .player{
	width: auto;
}

.player-container *{
	font-size: 1.33vw!important;
	line-height: 1.18em!important;
	font-size: clamp(18px, 1.33vw, 1.33vw)!important;
	min-height: 0vw!important;
}

.player-container .player .large-toggle-btn .large-pause-icon,
.player-container .player .large-toggle-btn .large-play-icon{
	font-size: 0.7vw!important;
}

.track-title-text,
.player-container .player .controls-box .next-track-btn,
.player-container .player .controls-box .previous-track-btn,
.player-container .play-list .play-list-row .small-toggle-btn{
	display: none!important;
}

.player-container .player .large-toggle-btn{
	border: none;
}

.player-container .player .info-box{
	bottom: auto;
	left: auto;
	position: relative;
	top: auto;
	width: 100%;
}

.player-container .player{
	height: auto;
	display: flex;
	margin-bottom: 0.6vw;
}

.player-container .player .progress-container,
.player-container .player .info-box .track-info-box{
	float: none;
	margin: 0;
	width: 100%;
	min-width: auto;
}

.player-container .player .info-box .track-info-box .audio-time{
	width: auto;
	padding: 0;
}

.player-container .play-list{
	margin: 0 0 0 3vw;
}

/* FALC */

.one_falc{
	display: flex;
	align-items: center;
}

.picto_falc img{
	height: 100px;
	width: auto;
}

/*//////*/
/* 2026 */
/*//////*/

.yellow_bg{
	background-color: #ffff00;
}

.size17{
	font-size: 17px;
	line-height: 1.2em;
}

.size18{
	font-size: 18px;
	line-height: 1.2em;
}

.size19{
	font-size: 19px;
	line-height: 34px;
}

.size20{
	font-size: 20px;
	line-height: 1.2em;
}

.size22{
	font-size: 22px;
	line-height: 1.2em;
}

.size25{
	font-size: 25px;
	line-height: 1.2em;
}

.size30{
	font-size: 30px;
	line-height: 1.2em;
}

.size33{
	font-size: 33px;
	line-height: 1.2em;
}

.size36{
	font-size: 36px;
	line-height: 1em;
}

.size40{
	font-size: 40px;
	line-height: 42px;
}

.size48{
	font-size: 48px;
	line-height: 1em;
}

.size50{
	font-size: 50px;
	line-height: 1em;
}

.size55{
	font-size: 55px;
	line-height: 1em;
}

.size60{
	font-size: 60px;
	line-height: 1em;
}

.size65{
	font-size: 65px;
	line-height: 1em;
}

.size92{
	font-size: 92px;
	line-height: 1.1em;
}

.size125{
	font-size: 90px;
	line-height: 1em;
	hyphens: auto;
}

.marg10{
	margin-bottom: 10px;
}

.marg15{
	margin-bottom: 15px;
}

.marg22{
	margin-bottom: 22px;
}

.marg44{
	margin-bottom: 44px;
}

.marg88{
	margin-bottom: 88px;
}

.marg111{
	margin-bottom: 111px;
}

.round_fx_hover,
.round_fx span,
.round_fx_big{
	position: relative;
}

.round_fx_hover span:after,
.round_fx span:after{
	content: '';
	border: 1px solid black;
	border-radius: 100%;
	position: absolute;
	top: -16px;
	left: -15px;
	right: -15px;
	bottom: -16px;
}

.round_fx_big:after{
	content: '';
	border: 1px solid black;
	border-radius: 100%;
	position: absolute;
	top: -23px;
	left: -37px;
	right: -37px;
	bottom: -23px;
}

.round_fx_hover span:after{
	visibility: hidden;
}

.round_fx_hover.round_fx span:after,
.round_fx_hover:hover span:after {
	visibility: visible;
}

.wrapper,
.max_width{
	margin-left: auto;
	margin-right: auto;
	max-width: 1440px;
	width: 100%;
	padding-left: 32px;
	padding-right: 32px;
	box-sizing: border-box;
}

.wrapper{
	margin-top: 145px;
}

.item-evenements {
	position: relative;
}

.card_link {
	position: absolute;
	inset: 0;
	z-index: 1;
}

.reserver_item {
	z-index: 2;
	position: relative;
}


.reserver_item{
	position: absolute;
	bottom: 0;
	right: 0;
	padding: 8px 22px;
}


.button_2026{
	text-align: center;
	font-size: 14px;
	border-radius: 28px;
	min-height: 43px;
	padding: 13px 27px 11px 27px;
	border: 1px solid black;
	font-family: 'AntoPlot';
	display: inline-block;
	box-sizing: border-box;
}

.button_2026_big{
	font-size: 18px;
	padding-bottom: 13px;
}

.button_2026:hover{
	background: #dcddde
}

.mini_picto{
	height: 27px;
	width: 27px;
	position: absolute;
	left: 20px;
	top: 7px;
}

.button_2026_with_picto{
	position: relative;
	padding-left: 55px;
}

/* PROGRAMME */

.menu_saison_2026_right{
	padding: 0 47px 0 70px;
	box-sizing: border-box;
}

.menu_saison_2026_left{
	padding: 0 70px 0 47px;
	box-sizing: border-box;
}

.filter_dropdown {
	position: relative;
	display: inline-block;
}

.filter_dropdown_toggle {
	display: flex;
	align-items: center;
	gap: 10px;
	border: 1px solid black;
	border-radius: 24px;
	padding: 10px 18px;
	cursor: pointer;
	background: #fff;
	font-size: 15px;
}

.filter_dropdown_chevron svg{
	width: 14px;
	position: relative;
}

.filter_dropdown_list {
	display: none;
	position: absolute;
	top: calc(100% + 4px);
	left: 0;
	background: #f0f0f0;
	border: 1px solid black;
	border-radius: 24px;
	box-shadow: 0 4px 16px rgba(0,0,0,0.10);
	z-index: 10;
	min-width: 220px;
	padding: 0;
	list-style: none;
	margin: 0;
}

.filter_dropdown_list.open {
	display: block;
}

.filter_dropdown_list li a {
	display: block;
	padding: 10px 20px;
	font-size: 15px;
	color: black;
	text-decoration: none;
}

.filter_dropdown_list li a:hover {
	background: black;
	color: white;
}

.filter_dropdown_list li:first-child a:hover {
	border-radius: 18px 18px 0 0;
}
.filter_dropdown_list li:last-child a:hover {
	border-radius: 0 0 18px 18px;
}
.filter_dropdown_list li:only-child a:hover {
	border-radius: 18px;
}

.filter_dropdown_list li a.active {
	background: black;
	color: white;
}
.filter_dropdown_list li:first-child a.active {
	border-radius: 18px 18px 0 0;
}
.filter_dropdown_list li:last-child a.active {
	border-radius: 0 0 18px 18px;
}
.filter_dropdown_list li:only-child a.active {
	border-radius: 18px;
}

/* NEW */

.menu_headers_2026{
	justify-content: center;
}

.menu_headers_2026 .button_2026{
	/* min-width: 220px; */
	margin-left: 16px;
	margin-right: 16px;
	margin-bottom: 16px;
}

.menu_headers_2026 .active .button_2026{
	background: black;
	color: white;
}

.dropdown.width50{
	padding-right: 20px;
	box-sizing: border-box;
}

/* SINGLES */

.header_2026 .width66{
	padding-right: 30px;
	box-sizing: border-box;
}

.round_pictos_2026{
	height: 50px;
	width: 50px;
}

.pictos_access_2026 img{
	margin-left: 10px;
}

.side .round_pictos_2026{
	margin-right: 30px;
}

.side_info_picto_txt{
	margin-top: 12px;
}

.single_evenements .content .main_content{
	border-left: 1px solid black;
	box-sizing: border-box;
	padding-left: 60px;
}

.plus_lieu{
	margin-left: 20px;
	position: relative;
	top: -3px;
}

.plus_lieu img{
	height: 40px;
	width: 40px;
}

.lieu_popup{
	position: absolute;
	top: 40px;
	right: 40px;
	z-index: 100;
	box-sizing: border-box;
	padding: 33px 100px;
	border-radius: 33px;
	display: none;
}

body.lieu_popup_open .lieu_popup{
	display: block;
}

.cross_lieu{
	position: absolute;
	top: 22px;
	right: 30px;
	height: 23px;
	width: 23px;
}

/* PAGES */

.col_2_2026{
	column-count: 2;
	column-gap: 38px;
}

.col_2_2026 p{
	break-inside: avoid;
}

/* HOME */

.slider_home{
	margin-top: 94px;
}

.one_slide_home_2026{
	height: calc(100vh - 188px);
	position: relative;
}

.one_slide_home_2026_wrap{
	max-width: 1440px;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

.one_slide_2026_info{
	position: absolute;
	right: 0;
	top: 0;
	width: 500px;
	padding: 35px;
	box-sizing: border-box;
}

.fake_arrows_home{
	align-items: center;
}

.dot_home{
	width: 20px;
	height: 20px;
	background: #e3e3e3;
	border-radius: 100%;
	margin-left: 5px;
	margin-right: 5px;
}

.dot_home.active{
	background: black;
}

#bandeau_home{
	position: fixed;
	top: 94px;
	left: 0;
	right: 0;
	min-height: 76px;
	z-index: 888;
	border-bottom: 1px solid black;
	background: white;
	box-sizing: border-box;
	padding: 16px;
}

#bandeau_home_wrap{
	align-items: center;
}

#bandeau_home .button_2026{
	margin-left: 16px;
}

/* MENU */

#menu{
	height: 94px;
	padding-top: 16px;
	padding-bottom: 16px;
	box-sizing: border-box;
	border-bottom: 1px solid black;
}

#main_menu, #footer{
	max-width: 1440px;
	margin: 0 auto;
	padding: 0 32px;
}

.logo_2026{
	width: 290px;
}

#main_menu{
	align-items: center;
	height: 100%;
}

#loupe_svg{
	height: 50px;
	width: 50px;
}

#access_svg{
	height: 33px;
	width: 40px;
	margin-right: 25px;
}

.main_menu_section{
	padding-left: 45px;
	padding-right: 45px;
}

/* FOOTER */

#footer{
	border-top: 1px solid black;
	border-bottom: 1px solid black;
	margin-bottom: 36px;
	margin-top: 36px;
	padding-top: 17px;
	padding-bottom: 17px;
	box-sizing: border-box;
	padding-left: 0;
	padding-right: 0;
}

.footer_links a{
	margin-right: 80px;
	text-decoration: underline;
}

.footer_links a:hover{
	text-decoration: none;
}

.png_footer a{
	margin-left: 10px;
}

.png_footer img{
	width: 50px;
	height: 50px;
}

/*////////////*/
/* RESPONSIVE */
/*////////////*/

.mobile,
.mobile_flex,
.mobile_inline,
.mobile_inline_block{
	display: none;
}

@media screen and (max-width: 1300px) {
	
	.logo_2026{
		width: 200px;
	}
	
	#loupe_svg{
		width: 35px;
		height: 35px;
	}
	
	#main_menu, #footer{
		padding: 15px;
	}
	
	.wrapper, .max_width{
		padding-left: 15px;
		padding-right: 15px;
	}
	
}

@media screen and (max-width: 1220px) {
	
	.mobile{
		display: block;
	}
	
	.mobile_flex{
		display: flex;
	}
	
	.mobile_inline{
		display: inline;
	}
	
	.mobile_inline_block{
		display: inline-block;
	}
	
	.desktop{
		display: none;
	}
	
	.block_mob{
		display: block;
	}
	
	/* GENERAL */
	
	.width50,
	.width33,
	.width40,
	.width60,
	.width25,
	.width75{
		width: 100%;
	}
	
	.width25_mob{
		width: 25%;
	}
	
	.width33_mob{
		width: 33.33%;
	}
	
	.width50_mob{
		width: 50%;
	}
	
	.width66_mob{
		width: 66.66%;
	}
	
	.width75_mob{
		width: 75%;
	}
	
	.width100_mob{
		width: 100%;
	}
	
	.paddright30{
		padding-right: 10px;
	}
	
	.paddleft10_mob{
		padding-left: 10px;
	}
	
	.padd30_mob{
		padding-bottom: 30px;
	}
	
	.size16_mob,
	.size24,
	.equipe .content .size34,
	.slick-dots button{
		font-size: 16px;
		line-height: 19px;
	}
	
	.size20{
		font-size: 18px;
	}
	
	.size18{
		font-size: 16px;
	}
	
	.size25,
	.size34,
	.size17_mob{
		font-size: 20px;
		line-height: 24px;
	}
	
	.size33{
		font-size: 20px;
	}
	
	.size50{
		font-size: 30px;
	}
	
	.size60{
		font-size: 35px;
	}
	
	.size24_mob{
		font-size: 24px;
		line-height: 1.54em;	
	}
	
	.size55{
		font-size: 26px;
	}
	
	.size69{
		font-size: 34px;
		line-height: 37px;
	}
	
	.size92{
		font-size: 48px
	}
	
	.size125{
		font-size: 37px;
	}
	
	.marg3_mob{
		margin-bottom: 3px;
	}
	
	.marg17{
		margin-bottom: 5px;
	}
	
	.marg15{
		margin-bottom: 10px;
	}
	
	.marg15_mob{
		margin-bottom: 15px;
	}
	
	.marg24{
		margin-bottom: 10px;
	}
	
	.marg30{
		margin-bottom: 17px;
	}
	
	.marg30_mob{
		margin-bottom: 30px;
	}
	
	.marg44,
	.marg48{
		margin-bottom: 20px;
	}
	
	.marg60{
		margin-bottom: 20px;
	}
	
	.wrapper{
		margin-top: 87px;
	}
	
	.col_2_2026,
	.column_2{
		column-count:1;
	}
	
	.column_4{
		column-count: 1;
	}
	
	.column_5{
		column-count: 1;
	}
	
	.button_2026{
		min-height: 28px;
		padding: 8px 20px 8px 20px;
	}
	
	.button_2026_big{
		font-size: 14px;
		padding-bottom: 9px;
	}
	
	.menu_headers_2026 .button_2026{
		margin-left: 7px;
		margin-right: 7px;
	}
	
	.slider_home{
		margin-top: 67px;
	}
	
	.width100_mob{
		width: 100%;
	}
	
	/* CARTE AUX PIANOS */
	
	body.page-id-2311{
		overflow: hidden;
	}
	
	#main_panel_carte, 
	.panel_lieux{
		width: 100vw;
		padding: 60px 20px 20px 20px;
	}
	
	.panel_lieux{
		right: -100vw;
	}
	
	.cross_side_panel_lieux{
		right: 10px;
		width: 47px;
		top: 13px;
	}
	
	#zoom_buttons{
		left: 10px;
		right: 10px;
		bottom: 15px;
		justify-content: space-around;
	}
	
	#plus_zoom:after{
		width: 11px;
		margin-left: -5px;
	}
	
	#plus_zoom:before{
		height: 11px;
		margin-top: -5px;
	}
	
	#minus_zoom:after{
		width: 11px;
		margin-left: -5px;
	}
	
	.zoom_text {
		margin-left: 10px;
		margin-top: 5px;
	}
	
	.pianos_markers{
		width: 12px;
	}
	
	/* PLAYER 2024 */
	
	button.playerTrigger{
		width: 50px;
		height: 50px;
	}
	
	.songPlayTimer,
	.songDuration{
		margin-top: 20px;
	}
	
	.player-container .player .large-toggle-btn{
		width: 40px;
	}
	
	.player-container .play-list{
		margin: 0 0 0 40px;
	}
	
	.player-container .player .large-toggle-btn .large-pause-icon, .player-container .player .large-toggle-btn .large-play-icon {
		font-size: 10px!important;
	}
	
	.brochures_fix{
		font-size: 14px;
		line-height: 1.2em;	
		text-align: center;
	}
	
	.brochures_fix_wrap{
		display: flex;
		justify-content: space-around;
	}
	
	/* MENU */
	
	#menu_mob_header{
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		height: 67px;
		z-index: 6666;
		display: flex;
		box-sizing: border-box;
		padding: 15px;
	}
	
	#main_menu{
		position: fixed;
		top: 67px;
		left: 0;
		right: 0;
		bottom: 0;
		box-sizing: border-box;
		background: white;
		flex-direction: column;
	}
	
	.main_menu_section{
		padding: 0;
		display: flex;
		flex-direction: column;
		text-align: right;
	}
	
	.main_menu_section a{
		display: block;
		height: 54px;
		border-bottom: 1px solid black;
		line-height: 54px;
		padding-right: 10px;
		box-sizing: border-box;
	}
	
	.main_menu_section a span:after{
		background: none;
		content:'';
	}
	
	#main_menu .round_fx_hover span:after{
		display: none!important;
	}
	
	#main_menu .round_fx_hover:hover,
	#main_menu .round_fx{
		background-color: #e3e3e3
	}
	
	.footer_mobile_menu{
		align-self: flex-start;
		width: 100%;
		margin-top: 40px; 
	}
	
	.footer_section{
		flex-direction: column;
		display: flex;
		text-transform: none;
	}
	
	.footer_section_social_mob{
		display: flex;
		flex-direction: row;
		margin-bottom: 60px;
		margin-top: 40px; 
	}
	
	.logo_2026{
		width: 190px;
	}
	
	#main_menu{
		padding: 0 15px 15px 15px;
		z-index: 7777;
		overflow: scroll;
	}
	
	#menu{
		top: 67px;
		display: none;
		z-index: 7777;
	}
	
	#cross_menu_mob{
		display: none;
	}
	
	#hamburger_menu_mob{
		top: 7px;
		height: 16px;
		width: 30px;
	}
	
	body.main_menu_open_mob #cross_menu_mob{
		display: block;
	}
	
	body.main_menu_open_mob #hamburger_menu_mob{
		display: none;
	}
	
	body.main_menu_open_mob #menu,
	body.main_menu_open_mob #main_menu{
		display: flex;
	}
	
	.menu_headers_2026{
		display: block;
		text-align: center;
	}
	
	.dropdown.width50{
		padding-right: 0;
	}
	
	.border_mob{
		border-bottom: 1px solid black;
	}
	
	.plus_lieu img {
	height: 30px;
	width: 30px;
	}
	
	.plus_lieu{
		top: -1px;
		margin-left: 10px;
	}
	
	.round_pictos_2026{
		height: 35px;
		width: 35px;
		margin-right: 20px;
	}
	
	.side_info_picto_txt{
		margin-top: 6px;
	}
	
	.alignleft_mob{
		text-align: left;
	}
	
	.one_slide_2026_info{
		top: auto;
		padding: 15px;
		width: auto;
		position: relative;
	}
	
	.slick-initialized .slick-slide{
		display: flex;
		flex-direction: column;
	}
	
	.one_slide_home_2026{
		height: auto;
	}
	
	.one_slide_home_2026_wrap{
		height: auto;
		position: relative;
	}
	
	.slider_home .marg22{
		margin-bottom: 15px;
	}
	
	.size48{
		font-size: 32px;
	}
	
	#loupe_svg_mob{
		width: 35px;
		height: 35px;
		margin-right: 15px;
		cursor: pointer;
	}
	
	#search_wrap.open{
		z-index: 11111111;
	}
	
	#search_box{
		height: 67px;
		padding: 10px;
	}
	
	#cross_search {
		position: absolute;
		top: 16px;
		right: 10px;
		width: 30px;
		cursor: pointer;
	}
	
	#search_mob_fix{
		width: calc(100vw - 60px);
	}
	
	#search_box input[type="text"]{
		height: 30px;
		margin: 0;
		margin-right: 10px;
		top: auto;
	}
	
	
	.menu_saison_2026_left,
	.menu_saison_2026_right{
		padding: 0;
		width: 100%;
		flex-direction: column;
		align-items: center;
	}
	
	.menu_saison_2026 .button_2026{
		height: 40px;
		line-height: 22px;
		min-width: 230px;
		min-height: auto;
	}
	
	body.lieu_popup_open .lieu_popup{
		position: relative;
		top: auto;
		right: auto;
		margin-bottom: 30px;
		padding: 33px;
	}
	
}

@media screen and (max-width: 500px) {
	
	.brochures_fix{
		font-size: 12px;
	}
	
}