/*
 Theme Name:     Music Festival Promo
 Theme URI:      http://www.festivalpromo.ch
 Description:    Music Festival Promo Theme
 Author:         New Slang
 Author URI:     https://www.newslang.ch
 Template:       generatepress
 Version:        1.0.0
*/
 
@font-face {
	font-family: "Single Sleeve";
	font-style: normal;
	font-weight: 400;
	src: url('fonts/single-sleeve.woff2') format('woff2'),
		url('fonts/single-sleeve.woff') format('woff'),
		url('fonts/single-sleeve.ttf') format('ttf');
}

@import url("css/theme.css");

a {
	transition: 0.3s;
}

.et_pb_text_inner h3 {
	font-family: "Lato";
	text-transform: uppercase;
	font-weight: 700;
	font-size: 16px;
    margin-top: 10px;
}

.et_pb_text a:hover {
	text-decoration: underline;
	color: black;
}

input[type=text], input[type=email], input[type=number], input[type=password], input[type=tel], input[type=search], select, textarea, .select2-container--default .select2-selection--single {
	width: 100%;
    padding: 10px 12px !important;
    font-size: 16px;
    border: 1px solid #ddd;
	box-sizing: border-box;
}

.select2-container--default .select2-selection--single {
	height: 40px;
    padding-top: 5px!important;
    font-size: 1em;
    border-radius: 0px;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
	top: 7px;
    right: 7px;
}

input[type=number] {
	text-align: right;
}

input[type=submit] {
	border: 0;
    border-radius: 3px;
    text-transform: uppercase;
    color: white;
    background-color: #04378B;
    font-size: 13px;
    font-weight: 600;
    padding: 13px 20px;
    margin-top: 1em;
	transition: all 0.5s;
	width: auto;
}

input[type=submit]:hover {
    background-color: black;
    color: white;
}

.page-header input[type=submit] {
	border: 1px solid #FFF;
    padding: 10px 16px;
    text-transform: uppercase;
    color: #FFF;
    background-color: transparent;
}

.page-header input[type=submit]:hover {
	text-decoration: none !important;
	background-color: rgba(255, 255, 255, 0.1);
}

span.wpcf7-not-valid-tip {
    color: white;
    font-size: 12px;
    padding-left: 3px;
    opacity: 0.7;
}

.button, .tml-button {
	border: 1px solid #04378B;
    padding: 10px 16px;
    border-radius: 5px;
    margin-top: 0;
    display: inline-block;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 0.75em;
    color: #04378B;
}

.button:hover, .tml-button:hover {
	border-color: black;
	color: black;
	text-decoration: none !important;
	background-color: #E8EAF6;
}

.text-two-columns {
    column-count: 2;
    column-gap: 64px;
}

@media (max-width: 768px) {

	.text-two-columns {
		column-gap: 32px;
	}

}

@media (max-width: 520px) {

	.text-two-columns {
		column-count: 1;
	}

}

/* MENU */

.et_pb_fullwidth_menu .et_pb_menu__wrap, .et_pb_menu .et_pb_menu__wrap {
	justify-content: flex-end;
}

header .et_pb_menu .et-menu-nav>ul ul, header .nav li li {
	padding:0;
}

header .nav li ul {
	width: auto;
	box-shadow: none;
}

header .et_pb_menu_0_tb_header.et_pb_menu ul > li ul li a {
	text-transform: none;
	color: #666 !important;
}

header .et_pb_menu_0_tb_header.et_pb_menu ul > li ul li a:hover {
	color: #000 !important;
}

@media ( max-width: 980px ) {

	#et_mobile_nav_menu {
		padding-right: 32px;
	}

	#et_mobile_nav_menu .mobile_menu_bar {
		padding-top: 12px;
	}

	.et_header_style_left #logo, .et_header_style_split #logo {
		max-width: 100%;
		max-height: 80px;
	}

	.mobile_menu_bar::before {
		/*color: rgba(255, 255, 255, 0.7) !important;*/
	}

	.mobile_menu_bar {
		z-index: 999999;
		transition: all 0.5s;
	}

	.opened .mobile_menu_bar {
		background: transparent;
	}

	.opened .mobile_menu_bar:before {
		color: white;
		content: "\4d";
	}

	.opened .mobile_menu_bar {
		position: fixed;
	    top: 38px;
	    right: 24px;
	}

	.et_mobile_menu {
		position: fixed;
		top: 0 !important;
		bottom: 0;
		border: 0;
		padding-top: 80px !important;
		font-size: 0.9em;
	}

	.et_mobile_menu .menu-item {
		text-align: center;
	}

	.et_mobile_menu li a {
		color: rgba(255, 255, 255, 0.8) !important;
		border: 0;
		font-size: 1.1em;
		line-height: 1.7em;
		/*font-weight: 400;*/
		text-transform: uppercase;
		margin-left: -10%;
    	margin-right: -10%;
		padding: 7px !important; 
	}

	.et_mobile_menu li a:hover {
		color: white!important;
		opacity: 1;
	}

	.et_mobile_menu li.current_page_item a {
		color: white !important;
	}

	.et_mobile_menu .sub-menu {
		padding: 0 !important;
		margin: 0;
	}

	.et_mobile_menu .menu-item {
		padding: 0;
	}

	#main-menu .et_mobile_menu li.store a {
		display: inline-block;
	    margin-top: 12px;
	    width: 100%;
	}

}

/* HOME */

#home-header {
	
}

#home-icons .button {
	font-size: 1em;
}

.home-icons .et_pb_image_wrap {
	background: #E8EAF6;
    border: 4px solid white;
    border-radius: 100%;
    padding: 18px;
}

form.inf-form input[type=submit] {
	margin-top: 0;
}

.inf-content {
	display: flex;
}

.inf-input {
	flex: 1;
	padding-right: 16px;
}

.inf-submit {
	width: 120px;
}

.inf-submit input[type=submit] {
	border: 1px solid #FFF;
    padding: 10px 16px;
    text-transform: uppercase;
    color: #FFF;
    background-color: transparent;
}

.inf-submit input[type=submit]:hover,
.inf-submit input[type=submit]:focus {
	background: rgb(4, 55, 139, 0.3);
}

/*body.home  #main-content .button {
	text-decoration: none;
	background: white;
	color: rgb(4, 55, 139) !important;
	font-size: 0.9em;
}*/

.inf-success h4 {
	font-family: "Lato";
	font-size: 1em;
    color: white;
    font-weight: 600;
    margin-bottom: 10px;
}

.inf-success a {
	display: none;
}

@media (max-width: 520px) {

	body.home  #main-content .button {
		width: 100%;
		display: block;
		text-align: center;
	}

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

	.inf-input {
		padding-right: 0;
	}

	.inf-submit {
		width: 100%;
    	margin-top: 15px;
	}

	form.inf-form input[type=submit] {
		width:100%;
	}

}

/* HEADER */

.page-header .et_pb_row, .page-header .et_pb_row .et_pb_column {
	position: static;
}

.page-header .et_pb_row .et_pb_column_1_tb_body {
	position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 50%;
    background-color:transparent;
    background-image: url(images/header-decoration.svg);
    background-position: top;
    background-size: 700px;
    z-index: 1;
    background-position: 90% 0;
}

/* EDITION */

.editions_menu {
	margin: 0!important;
	margin-top: -2em !important;
	padding: 0!important;
}

.edition_link {
	float:left;
	list-style-type: none;
	margin-right: 8px;
	padding-right: 8px;
}

.edition_link a {
	color: #FFF;
	opacity: 0.7;
}

.edition_link.current a,
.edition_link a:hover {
	opacity: 1;
	text-decoration: none;
}

#edition_lineup .et_pb_image_wrap, #edition_lineup img {
	width: 100%;
}

#edition_lineup h3 {
	font-family: "Lato";
    text-transform: uppercase;
    font-weight: 600;
    font-size: 1em;
    margin-bottom: 0.5em;
    margin-top: 1em;
}

/* CONCERT */

.single-concert h1 {
	padding: 0;
	margin: 0 0 24px 0;
	text-shadow: 0 4px 0 rgba(0, 0, 0, 0.1);
	color: var(--heading-3);
	line-height: 0.9em;
}

.artist-back-link {
    margin: -64px 0 32px 0;
    font-weight: normal;
    font-size: 0.8em;
}

.artist-back-link:before {
	content: "<";
	margin-right: 8px;
	transition: all 0.5s;
}

.artist-back-link:hover:before {
	margin-right: 4px;
}

.artist-meta {
	padding-bottom: 0;
	margin: 0;
	font-weight: 700;
}

.artist-image {
	box-shadow: 0 0 20px rgba(0,0,0,0.25);
	height: 280px;
	background-position: top center;
    background-size: cover;
}

.artist-actions {
	margin-top: 16px;
}

.artist-actions .button {
    display: flex;
    align-items: center;
	margin-bottom:12px;
	text-align: left;
	font-size: 1em;
}

.artist-actions .button:before {
	content: "";
	width: 20px;
	height: 20px;
	background-position: center;
	background-repeat: no-repeat;
    display: inline-block;
	margin-right: 6px;
    background-size: contain;
}

.artist-actions .button.artist-website:before {
	background-image: url("data:image/svg+xml,%3Csvg width='458' height='458' viewBox='0 0 458 458' fill='white' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M421.51 207.074L335.716 292.841C288.364 340.221 211.547 340.221 164.187 292.841C156.727 285.402 150.891 277.02 145.766 268.376L185.63 228.515C187.525 226.604 189.865 225.509 192.101 224.219C194.857 233.635 199.668 242.549 207.073 249.955C230.721 273.622 269.201 273.589 292.835 249.955L378.603 164.19C402.269 140.526 402.269 102.055 378.603 78.409C354.968 54.763 316.498 54.763 292.835 78.409L262.336 108.941C237.586 99.304 210.921 96.713 184.963 100.517L249.954 35.528C297.334 -11.843 374.13 -11.843 421.51 35.528C468.867 82.897 468.867 159.706 421.51 207.074ZM194.706 348.104L164.186 378.636C140.54 402.27 102.057 402.27 78.4075 378.636C54.7595 354.969 54.7595 316.498 78.4075 292.841L164.186 207.074C187.851 183.412 226.306 183.412 249.952 207.074C257.34 214.464 262.157 223.376 264.939 232.78C267.188 231.473 269.499 230.411 271.393 228.514L311.254 188.669C306.162 179.991 300.296 171.639 292.833 164.192C245.485 116.821 168.66 116.821 121.289 164.192L35.5245 249.96C-11.8415 297.345 -11.8415 374.132 35.5245 421.513C82.8955 468.869 159.702 468.869 207.072 421.513L272.079 356.51C246.107 360.336 219.435 357.723 194.706 348.104Z'/%3E%3C/svg%3E");
    background-size: 16px;
}

.artist-actions .button.artist-listen:before {

	background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='white' d='m10.65 15.75l4.875-3.125q.35-.225.35-.625t-.35-.625L10.65 8.25q-.375-.25-.763-.038t-.387.663v6.25q0 .45.388.663t.762-.038ZM12 22q-2.075 0-3.9-.788t-3.175-2.137q-1.35-1.35-2.137-3.175T2 12q0-2.075.788-3.9t2.137-3.175q1.35-1.35 3.175-2.137T12 2q2.075 0 3.9.788t3.175 2.137q1.35 1.35 2.138 3.175T22 12q0 2.075-.788 3.9t-2.137 3.175q-1.35 1.35-3.175 2.138T12 22Zm0-2q3.35 0 5.675-2.325T20 12q0-3.35-2.325-5.675T12 4Q8.65 4 6.325 6.325T4 12q0 3.35 2.325 5.675T12 20Zm0-8Z'/%3E%3C/svg%3E");
}

@media (max-width: 1024px) {

	.artist-back-link {
		margin: -32px 0 16px 0;
	}

	.single-concert h1 {
		margin-bottom: 16px;
	}

}

/* LINE UP */

.lineup_artists_wrapper {
	display: flex;
	flex-direction: column;
	row-gap: 84px;
}

.lineup_artist {
	display: flex;
	row-gap: 32px;
	column-gap: 48px;
	align-items: center;
}

.lineup_artist_image, .lineup_artist_meta {
	width: 45%;
	transition: all 0.8s;
}

.lineup_artist_meta {
	width: 40%;
}

.lineup_artist_image img {
	box-shadow: 0 0 20px rgba(0,0,0,0.2);
	transition: all 0.8s;
	height: 450px;
	object-fit: cover;
	width: 100%;
}

.lineup_artists_wrapper > .lineup_artist:nth-child(even) .lineup_artist_image {
	order: 1;
}

.lineup_artists_wrapper > .lineup_artist:nth-child(odd) .lineup_artist_image {
	margin-left: 5%;
}

.lineup_artist_meta h2 {
	margin: 0;
	color: var(--heading-3);
	font-size: 3em;
}

.lineup_artist_meta p {
	padding-bottom: 0;
	margin-bottom: 0;
	font-weight: 900;
	font-size: 18px;
}

p.lineup_artist_meta__genre {
	text-transform: uppercase;
	color: var(--light-text);
	font-size: 0.9rem;
}

.lineup_artist_meta .gb-button-secondary {
	margin-top: 32px;
}

.lineup_artist:hover .lineup_artist_image {
	width: 50%;
}

.lineup_artist:hover .lineup_artist_meta {
	width: 35%;
}

.lineup_artist:hover img {
	box-shadow: 0 0 20px rgba(0,0,0,0.4)
}

@media (max-width: 1024px) {

	.lineup_artists_wrapper > .lineup_artist:nth-child(odd) .lineup_artist_image {
		margin: 0;
	}

	.lineup_artist_image, .lineup_artist_meta {
		width: 60%;
	}
	
	.lineup_artist_meta {
		width: 40%;
	}

}

@media (max-width: 768px) {

	.lineup_artist {
		flex-direction: column;
		row-gap: 0;
	}

	.lineup_artist:hover .lineup_artist_image,
	.lineup_artist:hover .lineup_artist_meta {
		width: 100%;
	}

	.lineup_artist_image, .lineup_artist_meta {
		width: 100%;
		transition: all 0.8s;
	}

	.lineup_artist_meta {
		order: 1;
		text-align: center;	
		padding: 32px;
		background: var(--background-2);
		margin-top: -84px;
		max-width: 90%;
		border: 5px solid var(--background-1);
	}

}

@media (max-width: 479px) {

	.lineup_artists_wrapper {
		row-gap: 32px;
	}

	.lineup_artist_meta h2 {
		font-size: 2.5em;
	}

	.lineup_artist_meta {
		padding: 24px 0 32px 0;
		background: transparent;
		margin-top: 0;
		max-width: 100%;
		border: 0;
	}

}

/* SHOWS */

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

.show_artist {
  	width: 33%;
  	padding: 24px;
}

.show_artist .lineup_artist_image, .show_artist .lineup_artist_meta {
	width: 100%;
}

.show_artist .lineup_artist_meta {
	padding: 16px;
	font-size: 1em;
}

.show_artist .lineup_artist_meta p {
	font-size: 1em;
}

.show_artist .lineup_artist_meta .meta_dates > p:not(.place) {
	font-size: 1em;
    line-height: 1.4em;
    text-transform: uppercase;
    font-weight: 700;
}

.show_artist .lineup_artist_meta .meta_dates > p.place {
	font-weight: normal;
}

.show_artist .lineup_artist_image img {
	height: 250px;
}

.show_artist .lineup_artist_meta h2 {
	font-size: 2.5em;
    line-height: 0.9em;
	margin-bottom: 8px;
}

/* MAP */

#map {
	width: 100%;
	height: 450px;
}

.map-legends {
	margin: 0;
	padding: 0!important;
	list-style: none;
}

.map-legends li {
	margin: 0;
	padding-left: 24px!important;
	list-style: none;
	font-weight: 600;
	background-position: center left;
	background-repeat: no-repeat;
	background-size: 16px
} 

.map-legends #grande-scene-legend {
	background-image: url(images/grande-scene.png);
}

.map-legends #espace-jeunesse-legend {
	background-image: url(images/espace-jeunesse.png);
}

.map-legends #samaritains-legend {
	background-image: url(images/samaritains.png);
}

.map-legends #toilets-legend {
	background-image: url(images/toilets.png);
}


/* ORGANISATION */

.comity-members {
	display: flex;
	flex-direction: column;
}

.comity-member {
	display: flex;
	column-gap: 16px;
	padding: 12px 6px;
	border-bottom: 1px solid var(--border);
	transition: all 0.3s;
}

.comity-member.header {
	text-transform: uppercase;
	font-size: 0.9rem;
	font-weight: 700;
	border-bottom: 2px solid var(--border);
}

.comity-member div {
	flex: 1;
}

.comity-member .name {
	font-weight: 700;
}

.comity-member:not(.header):hover {
	background-color: #F5F5F5;
}

@media(max-width: 768px) {

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

	.comity-member.header {
		border: 0;
	}

	.comity-member.header div {
		display: none;
	}

}

/* SPONSORS */

.page-id-78 .et_pb_section_1_tb_body .et_pb_image_wrap img {
	mix-blend-mode: multiply;
}

.page-id-78 .et_pb_section_1_tb_body .et_pb_image {
	background: transparent;
    border: 2px solid #F5F5F5;
}

/* CONTACT */

.grecaptcha-badge {
	display: none;
}

.wpcf7-form input, .wpcf7-form select, .wpcf7-form textarea {
	width:100%;
}

.wpcf7-form label {
	text-transform: uppercase;
	color: #000;
	font-weight: 600;
	display: inline-block;
    margin-bottom: 0.5em;
}

.wpcf7-form input[type=submit] {
	float:right;
}

.wpcf7-form input.wpcf7-not-valid {
	background: #e8b7b7;
}

.wpcf7-form .full {
    position:relative;
    clear: both;
}

span.wpcf7-not-valid-tip {
    display: block;
}

div.wpcf7-response-output {
	border: 0;
    clear: both;
    margin-top: 4em;
	color: black;
    font-family: "Lato";
    font-size: 14px;
    background: rgba(0,0,0,0.1);
    padding: 14px 18px;
}

div.wpcf7-validation-errors {
	background-color: rgba(247, 231, 0, 0.30);
}

div.wpcf7-mail-sent-ok {
	background-color: rgba(12, 189, 29, 0.5);
}

div.wpcf7 .ajax-loader {
    width: 32px;
    height: 32px;
    background-image: url(/images/loading.svg);
    position: absolute;
    right: 140px;
    top: 17px;	
}

/* FOOTER */

footer .et_pb_menu__menu, footer .et-menu-nav, #menu-pied-de-page {
	width: 100%;
}

#menu-pied-de-page {
	display:flex;
}

#menu-pied-de-page .menu-item-has-children>a:first-child:after {
	content: none;
}

#menu-pied-de-page > li {
	width: 25%;
	display: block;
}

#menu-pied-de-page > li > a {
	text-transform: uppercase;
	font-weight: 600;
	color: #04378B;
}

#menu-pied-de-page li ul {
	position:static;
	visibility: visible;
	opacity: 1;
	z-index: 0;
	width: auto;
	box-shadow: none;
	padding-top: 0;
}

#menu-pied-de-page li li {
	padding:0;
}

#menu-pied-de-page > li li a {
	padding:0;
	color: black;
}

#menu-pied-de-page > li li a:hover {
	color: #04378B;
	background-color: transparent;
	opacity: 1;
}

footer a {
	color: black;
}

footer a:hover {
	color: #04378B;	
}

.footer-cta, .footer-cta .svg-icon {
	transition: all 0.3s;
}

.footer-cta svg {
	fill: #7B7A7A;
}

.footer-cta {
	cursor: pointer;
	border: 2px solid #C8C8C8;
    border-radius: 5px;
    text-align: center;
    text-transform: uppercase;
    font-size: 0.9em;
    font-weight: 600;
    color: #7B7A7A;
    padding: 16px 8px 12px 8px;
}

.footer-cta:hover {
	color: #04378B;
	border-color: #04378B;
}

.footer-cta:active {
	background-color: rgba(0,0,0,0.05);
}

.footer-cta.benevoles:hover {
	color: #622181;
	border-color: #622181;
}


.footer-cta svg {
	fill: #7B7A7A;
}

.footer-cta p:nth-child(2) {
	display: none;
}

.footer-cta svg {
	width: 48px;
}

.footer-cta.lineup svg {
	width: 40px;
}

.footer-cta.tenir-stand p,
.footer-cta.boutique p {
	padding-top:3px;
}

.footer-cta:hover svg {
	fill: #04378B;
}

.footer-cta.benevoles:hover .svg-icon {
	fill: #622181;
}

@media (max-width: 2000px) {

	#home-header {
		padding-top: 800px;
   		background-position: 50% -420px;
	}

} 

@media (max-width: 1440px) {

	#home-header {
   		background-position: 50% -320px;
	}

	.page-header .et_pb_row .et_pb_column_1_tb_body {
			background-size: 500px;
	}

} 

@media (max-width: 1024px) {

	#home-header {
		padding-top: 600px;
	}

} 

@media (max-width: 980px) {

	header .et_pb_column_0_tb_header {
		margin-bottom: 0 !important;
	}

	header .et_pb_column_1_tb_header {
		position: absolute;
	    background: transparent;
	    right: 0;
	    width: 26px;
	}

	header .et_pb_menu_0_tb_header .mobile_nav .mobile_menu_bar {
		margin-top: 8px;
	}

	header .et_pb_menu_0_tb_header .mobile_nav .mobile_menu_bar:before {
		color: #04378B;
	}

	#home-header {
		background-size: 1500px;
	}

	/* SHOWS */

	.show_artist {
	  	width: 50%;
	}

	.show_artist .lineup_artist_meta {
		text-align: left;
	}

}

@media (max-width: 860px) {

	#home-header {
		padding-top: 450px;
		background-size: 1260px;
	}

	.show_artist h2 {
		font-size: 30px !important;
	}

	.show_artist .lineup_artist_meta p {
		text-transform: none;
	}

}

@media (max-width: 768px) {

	#home-header {
		background-position-y: -220px;
		background-size: 1160px;
	}

	#acf-form .one_half, #acf-form .one_third, #acf-form .one_fourth, #acf-form .two_fourth {
		width: 100%;
	}

	.show_artist {
		display: flex;
		flex-direction: column;
		align-items: center;
	}

	.show_artist .lineup_artist_meta {
		width: 90%;
		position: relative;
		z-index: 1;
	}

}

@media (max-width: 600px) {

	p {
		font-size: 0.9em;
	}

	#home-header {
		padding-top: 300px;
		background-position-y: -160px;
		background-size: 890px;
	}

	/* SHOWS */

	.show_artist {
		padding: 0;
		padding-bottom: 24px;
	}

	.show_artist {
	  	width: 100%;
	}

	.show_artist .lineup_artist_image {
		text-align: center;
	}

	.show_artist .lineup_artist_meta {
		text-align: center;
	}

}

@media (max-width: 480px) {

	header .et_pb_column_1_tb_header {
	    width: 26px!important;
	}

	#home-header {
		padding-top: 240px;
		background-size: 720px;
   		background-position-y: -128px;
	}

}

@media (max-width: 350px) {

	#home-header {
		padding-top: 240px;
	    background-size: 520px;
	    background-position-y: 0px;
	}

}

/* LOGIN, ETC. */

.tml-action .tml {
	padding: 0 24px;
}

.tml-action h1 {
	font-size: 50px;
}

.tml-button {
	width: 100%;
	font-size: 1em;
	padding: 12px;
	border-width: 0;
	background: #03378B;
	color: white;
	transition: all 0.5s;
	cursor: pointer;
	margin-top: 12px;
}

.tml-button:hover, .tml-button:active, .tml-button:focus {
	background: black;
	color: white;
}

.tml .tml-action-confirmaction .success, .tml .tml-error, .tml .tml-message, .tml .tml-success {
	text-align: center;
	border-radius: 3px;
	background: #F5F5F5;
	border-color: #03378B;
	box-shadow: none;
}

.tml-links {
	list-style: none;
	padding: 0;
	width: 100%;
	text-align: center;
	margin: 0;
}

.si_captcha_small {
	height: 70px !important;
	width: 100% !important;
}

/* Boutique */

.woocommerce-no-products-found.woocommerce-info {
	display: none;
}

.woocommerce table.shop_attributes td {
	font-style: normal;
}

.woocommerce table.shop_attributes,
.woocommerce table.shop_attributes th,
.woocommerce table.shop_attributes td {
	border: 0;
	margin-bottom: 0;
}

.woocommerce div.product {
	padding: 0 24px;
}

.woocommerce div.product div.images img {
	border: 4px solid white;
}

.woocommerce div.product p.price,
.woocommerce div.product form.cart.variations_form .single_variation_wrap .price {
	font-weight: 700;
	color: #03378B;
}

.woocommerce-tabs  {
	width: 100%;
}

.woocommerce-tabs h2 {
	display: none;
}

body.single-product h1.page-hero-title {
	display: none;
}

.woocommerce div.product .stock {
	color: #03378B;
}

.woocommerce div.product form.cart .button,
.woocommerce div.product form.cart .button:hover {
	padding: 20px 32px;
	background-color: #03378B;
	color: white;
	padding-right: 32px !important;
}

.woocommerce div.product form.cart {
	display: flex;
	align-items: center;
}

.woocommerce div.product form.cart::after {
	content: none;
}

.woocommerce div.product form.cart.variations_form {
	display: flex;
	flex-direction: column;
	align-items: stretch;
}

.woocommerce div.product form.cart .variations td, 
.woocommerce div.product form.cart .variations th {
	padding: 0;
	text-align: left;
	vertical-align: middle;
}

.woocommerce div.product form.cart.variations_form .reset_variations {
	display: none !important;
}

.woocommerce div.product form.cart.variations_form .single_variation_wrap {
	padding-top: 1em;
	border-top: 1px solid var(--border);
}

.woocommerce-variation-add-to-cart {
	display: flex;
	align-items: center;
	column-gap: 12px;
	margin-top: 1em;
}

/* Panier */

#main-menu li.store a {
	padding: 12px;
    margin-top: -14px;
    border: 2px solid #04378B;
    border-radius: 5px;
    font-size: 0.9em;
}

#main-menu li.store a:hover {
	background: #E7EAF6;
	opacity: 1;
}

#menu-right {
	display: flex;
    justify-content: flex-end;
}

#menu-right .cart-link {
	width: 16px;
    margin: 20px 0 0px 14px;
}

#menu-right .cart-link svg {
	fill: #08388C;
}

#menu-right .cart-link a {
	position: relative;
}

#menu-right .cart-link a:after {
	content: attr(data-count);
    font-size: 10px;
    background: #04378B;
    border-radius: 100px;
    color: white;
    display: block;
    position: absolute;
    top: -7px;
    right: -6px;
    line-height: 13px;
    width: 13px;
    text-align: center;
}

@media (max-width: 980px) {

	#menu-right .cart-link {
		margin-top: 30px;
	}

}

/*************************************
*
*	WOOCOMMERCE
*
*************************************/

/*************************************
*	-- STYLES OVERRIDE
*************************************/

.woocommerce .quantity input.qty, 
.woocommerce-page .quantity input.qty, 
.woocommerce #content .quantity input.qty,
.woocommerce-page #content .quantity input.qty, 
.woocommerce-cart table.cart td.actions .coupon .input-text, 
.woocommerce form .form-row input.input-text, 
.woocommerce form .form-row textarea, 
.et_pb_wc_cart_totals .select2-container--default .select2-selection--single, 
.et_pb_wc_checkout_billing .select2-container--default .select2-selection--single, 
.et_pb_wc_checkout_shipping .select2-container--default .select2-selection--single {
	background-color: white;
	border: 1px solid #DDD;
	transition: all 0.3s;
}

.woocommerce .quantity input.qty:focus, 
.woocommerce-page .quantity input.qty:focus, 
.woocommerce #content .quantity input.qty:focus,
.woocommerce-page #content .quantity input.qty:focus, 
.woocommerce-cart table.cart td.actions .coupon .input-text:focus, 
.woocommerce form .form-row input.input-text:focus, 
.woocommerce form .form-row textarea:focus, 
.et_pb_wc_cart_totals .select2-container--default .select2-selection--single:focus, 
.et_pb_wc_checkout_billing .select2-container--default .select2-selection--single:focus, 
.et_pb_wc_checkout_shipping .select2-container--default .select2-selection--single:focus {
	border-color:rgb(4, 55, 139);
}

.woocommerce #content input.button, 
.woocommerce #content input.button.alt, 
.woocommerce #respond input#submit, 
.woocommerce #respond input#submit.alt, 
.woocommerce-page #content input.button, 
.woocommerce-page #content input.button.alt, 
.woocommerce-page #respond input#submit, 
.woocommerce-page #respond input#submit.alt, 
.woocommerce-page a.button, 
.woocommerce-page a.button.alt, 
.woocommerce-page button.button, 
.woocommerce-page button.button.alt, 
.woocommerce-page button.button.alt.disabled, 
.woocommerce-page input.button, 
.woocommerce-page input.button.alt, 
.woocommerce a.button, 
.woocommerce a.button.alt, 
.woocommerce button.button, 
.woocommerce button.button.alt, 
.woocommerce button.button.alt.disabled, 
.woocommerce input.button, 
.woocommerce input.button.alt,
.woocommerce button.button:disabled, .woocommerce button.button:disabled[disabled] {
	font-size: 0.9em;
    padding: 10px 18px;
    font-weight: 600;
    border-radius: 5px;
}

.woocommerce a.button.alt, .woocommerce-page a.button.alt {
    border-color: #04378B;
}

.woocommerce #content input.button.alt:hover, 
.woocommerce #content input.button:hover, 
.woocommerce #respond input#submit.alt:hover, 
.woocommerce #respond input#submit:hover, 
.woocommerce-page #content input.button.alt:hover, 
.woocommerce-page #content input.button:hover, 
.woocommerce-page #respond input#submit.alt:hover, 
.woocommerce-page #respond input#submit:hover, 
.woocommerce-page a.button.alt:hover, 
.woocommerce-page a.button:hover, 
.woocommerce-page button.button.alt.disabled:hover, 
.woocommerce-page button.button.alt:hover, 
.woocommerce-page button.button:hover,
.woocommerce-page input.button.alt:hover, 
.woocommerce-page input.button:hover,
.woocommerce a.button.alt:hover, 
.woocommerce a.button:hover, 
.woocommerce button.button.alt.disabled:hover, 
.woocommerce button.button.alt:hover, 
.woocommerce button.button:hover, 
.woocommerce input.button.alt:hover, 
.woocommerce input.button:hover,
.woocommerce #content input.button.alt:active, 
.woocommerce #content input.button:active, 
.woocommerce #respond input#submit.alt:active, 
.woocommerce #respond input#submit:active, 
.woocommerce-page #content input.button.alt:active, 
.woocommerce-page #content input.button:active, 
.woocommerce-page #respond input#submit.alt:active, 
.woocommerce-page #respond input#submit:active, 
.woocommerce-page a.button.alt:active, 
.woocommerce-page a.button:active, 
.woocommerce-page button.button.alt.disabled:active, 
.woocommerce-page button.button.alt:active, 
.woocommerce-page button.button:active,
.woocommerce-page input.button.alt:active, 
.woocommerce-page input.button:active,
.woocommerce a.button.alt:active, 
.woocommerce a.button:active, 
.woocommerce button.button.alt.disabled:active, 
.woocommerce button.button.alt:active, 
.woocommerce button.button:active, 
.woocommerce input.button.alt:active, 
.woocommerce input.button:active,
.woocommerce #content input.button.alt:focus, 
.woocommerce #content input.button:focus, 
.woocommerce #respond input#submit.alt:focus, 
.woocommerce #respond input#submit:focus, 
.woocommerce-page #content input.button.alt:focus, 
.woocommerce-page #content input.button:focus, 
.woocommerce-page #respond input#submit.alt:focus, 
.woocommerce-page #respond input#submit:focus, 
.woocommerce-page a.button.alt:focus, 
.woocommerce-page a.button:focus, 
.woocommerce-page button.button.alt.disabled:focus, 
.woocommerce-page button.button.alt:focus, 
.woocommerce-page button.button:focus,
.woocommerce-page input.button.alt:focus, 
.woocommerce-page input.button:focus,
.woocommerce a.button.alt:focus, 
.woocommerce a.button:focus, 
.woocommerce button.button.alt.disabled:focus, 
.woocommerce button.button.alt:focus, 
.woocommerce button.button:focus, 
.woocommerce input.button.alt:focus, 
.woocommerce input.button:focus {
    padding: 10px 18px;
    background: #E7EAF6;
    border-color: #04378B;
    color: #04378B;
    padding-right: 30px;
}

.comment-reply-link:after, 
.woocommerce #content input.button.alt:after, 
.woocommerce #content input.button:after, 
.woocommerce #respond input#submit.alt:after, 
.woocommerce #respond input#submit:after, 
.woocommerce-page #content input.button.alt:after, 
.woocommerce-page #content input.button:after, 
.woocommerce-page #respond input#submit.alt:after, 
.woocommerce-page #respond input#submit:after, 
.woocommerce-page a.button.alt:after, 
.woocommerce-page a.button:after, 
.woocommerce-page button.button.alt:after, 
.woocommerce-page button.button:after, 
.woocommerce-page input.button.alt:after, 
.woocommerce-page input.button:after,
.woocommerce a.button.alt:after, 
.woocommerce a.button:after, 
.woocommerce button.button.alt:after, 
.woocommerce button.button:after, 
.woocommerce input.button.alt:after, 
.woocommerce input.button:after {
	font-size: 22px;
}

.woocommerce a.button.alt:hover:after, 
.woocommerce-page a.button.alt:hover:after, 
.woocommerce button.button.alt:hover:after, 
.woocommerce-page button.button.alt:hover:after,
.woocommerce input.button.alt:hover:after, 
.woocommerce-page input.button.alt:hover:after, 
.woocommerce #respond input#submit.alt:hover:after, 
.woocommerce-page #respond input#submit.alt:hover:after, 
.woocommerce #content input.button.alt:hover:after, 
.woocommerce-page #content input.button.alt:hover:after, 
.woocommerce a.button:hover:after,
.woocommerce-page a.button:hover:after, 
.woocommerce button.button:hover:after, 
.woocommerce-page button.button:hover:after, 
.woocommerce input.button:hover:after, 
.woocommerce-page input.button:hover:after, 
.woocommerce #respond input#submit:hover:after, 
.woocommerce-page #respond input#submit:hover:after, 
.woocommerce #content input.button:hover:after, 
.woocommerce-page #content input.button:hover:after,
.woocommerce #respond input#submit.disabled:hover:after, 
.woocommerce #respond input#submit:disabled:hover:after, 
.woocommerce #respond input#submit:disabled[disabled]:hover:after, 
.woocommerce a.button.disabled, .woocommerce a.button:disabled:hover:after, 
.woocommerce a.button:disabled[disabled]:hover:after, 
.woocommerce button.button.disabled:hover:after, 
.woocommerce button.button:disabled:hover:after, 
.woocommerce button.button:disabled[disabled]:hover:after, 
.woocommerce input.button.disabled:hover:after, 
.woocommerce input.button:disabled:hover:after, 
.woocommerce input.button:disabled[disabled]:hover:after,
.woocommerce button.button:hover,
.woocommerce-page a.button.alt:hover, .woocommerce-page a.button:hover,
.woocommerce a.button.alt:hover, .woocommerce a.button:hover {
	content: none;
	padding-right: 18px !important;
}

.woocommerce-error, .woocommerce-info, .woocommerce-message {
	font-size: 1em !important;
	display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
	padding: 12px;
    border-radius: 5px;
    border-top: 0;
}

.woocommerce-info a:hover, .woocommerce-message a:hover {
	color: white;
}

.woocommerce-error:before, .woocommerce-info:before, .woocommerce-message:before,
.woocommerce-error::after, .woocommerce-info::after, .woocommerce-message::after {
	content: none;
}


.woocommerce-info a {
	flex: 1;
    text-align: right;
}

.woocommerce-info .button {
    flex: unset;
    order: 2;
}

.woocommerce-info .button:hover {
	color: #04378b !important;
}

.woocommerce-message a.button.wc-forward, 
.woocommerce-message a.button.wc-forward:hover {
	order: 1;
    margin-left: 16px;
}

.woocommerce table.shop_table td,
.woocommerce table.shop_table th {
	border: 0;
}

.woocommerce table.shop_table.cart th {
	border-bottom: 1px solid #DDD;
}

.woocommerce table.shop_table .cart_item td {
	border-bottom: 1px solid #DDD;
}

.woocommerce table.shop_table th {
	text-transform: uppercase;
	font-size: 0.9em;
}

.woocommerce table.shop_table {
	border: 0;
	border-radius: 0;
}

.woocommerce #content .quantity input.qty, 
.woocommerce-cart table.cart td.actions .coupon .input-text, 
.woocommerce-page #content .quantity input.qty, 
.woocommerce-page .quantity input.qty, 
.woocommerce .quantity input.qty {
	background: transparent !important;
	border: 1px solid #DDD !important;
	border-radius: 0;
	color: black !important;
	font-size: 14px !important;
}

.woocommerce #content .quantity input.qty::placeholder, 
.woocommerce-cart table.cart td.actions .coupon .input-text::placeholder, 
.woocommerce-page #content .quantity input.qty::placeholder, 
.woocommerce-page .quantity input.qty::placeholder, 
.woocommerce .quantity input.qty::placeholder {
	color: #AAA !important;
}

.woocommerce .quantity .qty {
	min-width: 64px;
}

.woocommerce a.remove {
	color: #622081 !important;
	height: 24px;
    width: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.woocommerce a.remove:hover {
	background: #622081;
	text-decoration: none;
}

.woocommerce form .form-row input.input-text, 
.woocommerce form .form-row textarea {
	border-radius: 0;
}

.et_pb_wc_add_to_cart .et_pb_module_inner {
	display:  flex;
	flex-direction: column;
}

.woocommerce div.product .et_pb_wc_add_to_cart .et_pb_module_inner p.stock {
	order:  1;
    color: black;
    font-weight: 700;
	margin-top: 16px;
    font-size: 1em;
}

@media (max-width: 520px) {

	.woocommerce-page div.product form.cart div.quantity,
	.woocommerce-page div.product form.cart div.quantity input {
		width: 100%;
	    display: block;
	    max-width: none;
	}

	.woocommerce div.product form.cart .button {
		margin-top: 10px;
   		width: 100%;
	}

}

/*************************************
*	-- PANIER
*************************************/

.cart_totals h2 {
	display: none;
}

.cart-collaterals tr td {
	text-align: right;
}

@media (max-width: 768px) {

	.woocommerce a.remove {
	    width: 100%;
	    display: flex;
	    justify-content: flex-start;
	    text-align: left;
	    height: 20px;
	    align-items: center;
	}

	.woocommerce a.remove:after {
		content: attr(aria-label);
	    width: 100%;
	    display: block;
	    font-size: 12px;
	    text-transform: uppercase;
	    margin-left: 5px;
	    margin-top: 3px;
	}

}

/*************************************
*	-- COMMANDE
*************************************/

body.woocommerce-checkout form.checkout_coupon, 
body.woocommerce-checkout .woocommerce form.login, .woocommerce table.shop_table td
body.woocommerce-checkout .woocommerce form.register {
	margin-top: -30px;
    border-radius: 0;
    margin-bottom: 64px;
}

body.woocommerce-checkout h3 {
	font-size: 20px;
    border-bottom: 1px solid #DDD;
	padding-bottom: 16px;
    margin-bottom: 16px;
    color: #642481;
	font-family: "Lato";
	text-transform: uppercase;
	font-weight: 700;
}

.woocommerce form .form-row label {
	font-weight: 600;
	margin-bottom: 4px;
}

#order_review_heading {
	margin-top: 64px;
}

.woocommerce table.shop_table .product-total,
.woocommerce table.shop_table tr.cart-subtotal td,
.woocommerce table.shop_table tr.woocommerce-shipping-totals td,
.woocommerce table.shop_table tr.order-total td {
	text-align: right;
}

.woocommerce table.shop_table dl.variation {
    font-size: 0.9em;
    opacity: 0.6;
}

.woocommerce-checkout #payment {
	background: transparent;
}

.woocommerce-checkout #payment ul.payment_methods {
	padding: 0;
}

.woocommerce-checkout #payment div.payment_box::before {
	border-bottom-color: #f5f5f5;
}

.woocommerce-checkout #payment div.payment_box {
	background: #F5F5F5;
}

#add_payment_method #payment ul.payment_methods, 
.woocommerce-cart #payment ul.payment_methods, 
.woocommerce-checkout #payment ul.payment_methods {
	padding-bottom: 16px;
}

.woocommerce-checkout #payment ul.payment_methods label {
	font-weight: 600;
	text-transform: uppercase;
}

.woocommerce-checkout #payment ul.payment_methods li.payment_method_TwintCw_Twint img {
	border-radius: 3px;
}

@media (max-width: 980px) {

	.woocommerce-checkout .checkout .col-2 h3#ship-to-different-address {
		float:none;
		width: 100%;
	}

}



/*************************************
*	-- COMMANDE
*************************************/

.woocommerce-order {
	margin-top: -32px;
}

.woocommerce-thankyou-order-received {
	font-weight: 600;
    font-size: 1.2em;
    margin-bottom: 38px;
}

.woocommerce ul.order_details {
	padding: 12px;
    background: #F5F5F5;
    border-radius: 5px;
}

.woocommerce .woocommerce-customer-details address {
	padding: 12px 20px;
    border: 0;
    background: #f5f5f5;
}

.woocommerce .woocommerce-customer-details .woocommerce-customer-details--email, 
.woocommerce .woocommerce-customer-details .woocommerce-customer-details--phone {
	padding-bottom: 0;
}

.woocommerce .woocommerce-customer-details .woocommerce-customer-details--phone {
	margin-top: 1em;
}

.woocommerce .woocommerce-customer-details .woocommerce-customer-details--phone::before,
.woocommerce .woocommerce-customer-details .woocommerce-customer-details--email::before {
	color: #04378B;
}

.woocommerce .woocommerce-customer-details td:last-child, 
.woocommerce .woocommerce-order-details td:last-child, 
.woocommerce .woocommerce-order-downloads td:last-child {
	text-align: right;
}

.woocommerce-order-details tr .product-name ul.wc-item-meta {
    opacity: 0.7;
    font-size: 0.9em;
    margin: 0;
}

@media ( max-width: 1200px ) {

	.woocommerce ul.order_details {
		display: flex;
		flex-wrap: wrap;
		padding-top: 0;
		padding-bottom: 10px;
	}

	.woocommerce ul.order_details li {
		margin-top: 10px;
		width: 30%;
	}

	.woocommerce ul.order_details li:nth-child(3) {
		border-right: 0;
	}


}

@media ( max-width: 768px ) {

	.woocommerce ul.order_details {
		flex-direction: column;
	}

	.woocommerce ul.order_details li {
		border-right: 0;
		border-bottom: 1px dashed #DDD;
		padding-bottom: 10px;
	}

	h2.woocommerce-column__title {
		margin-top: 32px;
	}

}
 
/*************************************
*	-- MON COMPTE
*************************************/

.woocommerce-MyAccount-navigation ul {
	padding: 0;
	list-style: none;
}

body.woocommerce-edit-address h3,
.woocommerce-account .addresses .title h3 {
	font-family: "Lato";
    font-weight: 800;
    text-transform: uppercase;
    font-size: 15px;
    margin-top: 8px;	
}

.woocommerce-MyAccount-content button[type=submit] {
	float:right;
	margin-top: 16px;
}

.woocommerce-MyAccount-navigation-link.is-active a {
	font-weight: 700;
	color: black;
}

.woocommerce table.my_account_orders .button {
	padding: 6px 16px;
}

body.woocommerce-view-order .woocommerce-MyAccount-content > p {
	margin-bottom: 32px;
	font-size: 1em;
	font-weight: 600;
}

body.woocommerce-view-order .woocommerce-MyAccount-content > p mark {
	background: #e7ebf6;
    padding: 3px 7px;
    border-radius: 3px;
    color: black;
}

@media ( max-width: 768px ) {

	.woocommerce-MyAccount-navigation {
		margin-bottom: 32px;
	}

	.woocommerce-page table.shop_table_responsive tr td.woocommerce-orders-table__cell-order-actions::before {
		content: none;
	}

	.woocommerce-page table.shop_table_responsive tr td.woocommerce-orders-table__cell-order-actions a {
		width: 100%;
	    text-align: center;
	    margin-bottom: 25px;
	}

}

@media ( max-width: 520px ) {

	.woocommerce-MyAccount-content button[type=submit] {
		float: none;
		width: 100%;
	}
}

/**********************************************************
/
/ 					PRESS
/
/**********************************************************/

.press-articles {
	display: flex;
	flex-direction: column;
}

.press-article {
	display: flex;
	padding: 12px;
}

.press-article:nth-child(even) {
	background-color: #F5F5F5;
}

.press-article .title {
	flex: 0 0 60%;
	font-weight: 700;
	display: flex;
	align-items: center;
	font-size: 1.1em;
}

.press-article .date {
	flex: 0 0 10%;
	display: flex;
	align-items: center;
}

.press-article .description {
	flex: 0 0 20%;
	display: flex;
	align-items: center;
}

.press-article .links {
	flex: 0 0 10%;
	font-weight: 700;
	display: flex;
    align-items: center;
    justify-content: flex-end;
}

.press-article .links svg {
	width: 20px;
	fill: #03378B;
	transform: all 0.3s;
	margin-left: 8px;
}

.press-article .links a:hover svg {
	fill: #000;
}

@media (max-width: 1024px) {

	.press-article .title {
		flex: 0 0 50%;
	}
	
	.press-article .date {
		flex: 0 0 20%;
	}
	
}

@media (max-width: 767px) {

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

	.press-article .title,
	.press-article .date,
	.press-article .description,
	.press-article .links
	 {
		flex: 0 0 100%;
	}

	.press-article .title {
		order: 1;
	}

	.press-article .links {
		justify-content: flex-start;
		margin-top: 6px;
		order: 1;
	}

	.press-article .links svg {
		margin-left: 0;
		margin-right: 8px;
	}

	.press-article .description {
		font-weight: bold;
		text-transform: uppercase;
		font-size: 0.9em;
	}

	.press-article .date {
		color: #888;
		font-size: 0.9em;
		margin-bottom: 0;
	}

}


/**********************************************************
/
/ 				SEATING MAP + LP
/
/**********************************************************/

.icon-title .et_pb_code_inner {
	display: flex;
}

.icon-title h2,
.icon-title h3 {
	flex: 1;
    margin-left: 12px;
}

.icon-title h2 {
	font-size: 40px;
}

.icon-title svg {
	width: 30px;
}

#seating-map {
	border-radius: 10px;
	border: 2px solid #DDD;
	display: flex;
}

#seating-map .table {
	fill: transparent;
}

#seating-map .selectable {
	cursor: pointer;
}

#seating-map .selectable .fond {
	fill: white;
	transition: all 0.3s;
}

#seating-map .selectable:hover .fond {
	fill: #E6EAF6;
}

#seating-map .selectable.selected .fond {
	fill: #FFF192;
}

#seating-map .selectable.unavailable {
	cursor: not-allowed;
}

#seating-map .selectable.unavailable .fond {
	fill: #aa222f47;
}

#seating-map .selectable.selected.unavailable .fond {
	fill: red;
}

#add_product_to_cart .reset_variations {
	display: none !important;
}

#add_product_to_cart .variations {
	margin-bottom: 0;
}

#add_product_to_cart .variations tr,
#add_product_to_cart .single_variation_wrap, 
#add_product_to_cart .single_variation_wrap .single_variation {
	display: flex;
	flex-direction: column;
}

#add_product_to_cart .woocommerce-variation-description {
	order: 1;
	margin-top: 12px;
	font-size: 1.1em;
}

#add_product_to_cart .woocommerce-variation-price {
	font-weight: 700;
	font-size: 1.3em;
}

#add_product_to_cart .woocommerce-variation-price span.price {
	color: #AA222F;
}

#add_product_to_cart .woocommerce-variation-availability .stock {
	margin-top: 0;
}

#add_product_to_cart label {
	font-weight: 700;
}

#add_product_to_cart .woocommerce-variation-add-to-cart {
	display: flex;
    flex-wrap: wrap;
    align-items: center;
}

#add_product_to_cart #meals_wrapper {
	margin-bottom: 12px;
	padding-bottom: 12px;
	border-bottom: 1px solid #DDD;
	width: 100%;
	border-top: 1px solid #DDD;
}

#add_product_to_cart .woocommerce-variation-add-to-cart .button {
	flex: 1;
}

/*
 *
 * Sponsors
 *
 */

.sponsors-grid {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	grid-column-gap: 10px;
	grid-row-gap: 10px;
}

.sponsors-grid .sponsors-image {
	display: flex;
    border: 2px solid #EEE;
	justify-content: center;
	align-items: center;
	height: 140px;
	padding: 2px;
	transition: all 0.3s;
}

.sponsors-grid .sponsors-image img {
	width: 100%;
	max-width: 80%;
}

.home-sponsors .sponsors-grid {
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
}

.home-sponsors .sponsors-grid .sponsors-image {
	border: 0;
	height: 120px;
}

.sponsors-grid a.sponsors-image:hover {
	border-color: var(--light-text);
} 

@media (max-width: 1024px) {

	.sponsors-grid,
	.home-sponsors .sponsors-grid {
		grid-template-columns: 1fr 1fr 1fr;
	}

}

@media (max-width: 768px) {

	.sponsors-grid,
	.home-sponsors .sponsors-grid {
		grid-template-columns: 1fr 1fr;
	}

	.sponsors-grid .sponsors-image img {
		max-height: 100%;
		object-fit: contain;
	}

}

@media (max-width: 479px) {

	.sponsors-grid {
		grid-template-columns: 1fr;
	}

	.sponsors-grid .sponsors-image {
		height: auto;
	}

}

/*******************************
 * 
 *
 * GP Rebuild
 *
 *
 ******************************/

 /*
  *
  * General
  *
  */

.gb-button-primary:hover, .gb-button-secondary:hover, .gb-button-light:hover {
	text-decoration: none;
}

 /*
  *
  * Header
  *
  */

#master-header .wp-block-navigation__container {
	column-gap: 20px;
}

#master-header .wp-block-navigation a:where(:not(.wp-element-button)) {
	color: var(--link);
}

#master-header .wp-block-navigation a:where(:not(.wp-element-button)):hover {
	color: var(--text);
	text-decoration: none;
}

#master-header .wp-block-navigation__submenu-container {
	border: 0;
	box-shadow: 0 5px 5px rgba(0, 0, 0, 0.1);
}

#master-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	padding: 12px 16px;
}

#master-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover {
	background-color: var(--background-2);
}

 /*
  *
  * Page hero
  *
  */

.page-hero:after {
	background-image: url(images/header-decoration.svg);
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    bottom: 0;
    background-repeat: no-repeat;
    background-position-x: 98%;
}


@media (max-width: 1400px) {

	.page-hero:after {
		opacity: 0.5;
	}

	body.home .page-hero:after {
		opacity: 1;
	}

}

@media (max-width: 1024px) {

	.page-hero:after {
		content: none
	}

}

 /*
  *
  * Édition
  *
  */

.edition_lineup p {
	margin-bottom: 12px;
}

/*
 * 
 *  Transports
 * 
 */

.wp-block-table.transports tr td:first-child {
	width: 84px;
    background: var(--background-2);
}

.edition-presse {
	margin-bottom: 32px;
}

/*
 *  
 * Home
 * 
 */

.home-video figure {
	width: 100%;
}

body.home .page-hero:after {
	background-image: radial-gradient(#6b73a754 0, #27348bcf 60%);
}

/*
 *
 * Product bundles 
 *
 */
 
.woosb-products .woosb-product .woosb-thumb,
.woosb-item-product .woosb-price {
	display: none;
}

.woosb-products .woosb-product .woosb-title {
	display: flex;
    justify-content: space-between;
}

.woosb-products .woosb-product .woosb-name {
	font-weight: 700;
}

.woosb-products .woosb-product .woosb-title .stock.in-stock {
	font-size: 1em;
	color: var(--text);
}

.woosb-wrap.woosb-bundled + .stock {
	display: none;
}

/* Hidden for the exclusiv package */
article.product.post-5913 .woosb-wrap.woosb-bundled {
	display: none;
}

/*
 *
 * Home 2025
 *
 */

.home-2025-photo {
	border-radius: 100%;
    border: 4px solid #E4C4A1;
    outline: 4px solid #8D7D6C;
    overflow: hidden;
    box-shadow: 0 0 0px 8px #E4C4A1;
}