/*
Theme Name: Ergopix - Ville - V2
Theme URI: https://www.ergopix.com
Update URI: https://www.ergopix.com
Description: Ergopix thème commun pour les différents marchés
Author: ergopix sàrl
Version: 1.0
*/

:root {
	--bs-blue: #0d6efd;
	--bs-indigo: #6610f2;
	--bs-purple: #6f42c1;
	--bs-pink: #d63384;
	--bs-red: #dc3545;
	--bs-orange: #fd7e14;
	--bs-yellow: #ffc107;
	--bs-green: #198754;
	--bs-teal: #20c997;
	--bs-cyan: #0dcaf0;
	--bs-black: #000;
	--bs-white: #fff;
	--bs-gray: #6c757d;
	--bs-gray-dark: #343a40;
	--bs-gray-100: #f8f9fa;
	--bs-gray-200: #e9ecef;
	--bs-gray-300: #dee2e6;
	--bs-gray-400: #ced4da;
	--bs-gray-500: #adb5bd;
	--bs-gray-600: #6c757d;
	--bs-gray-700: #495057;
	--bs-gray-800: #343a40;
	--bs-gray-900: #212529;
	--bs-primary: #0d6efd;
	--bs-secondary: #6c757d;
	--bs-success: #198754;
	--bs-info: #0dcaf0;
	--bs-warning: #ffc107;
	--bs-danger: #dc3545;
	--bs-light: #f8f9fa;
	--bs-dark: #212529;
	--bs-primary-rgb: 13, 110, 253;
	--bs-secondary-rgb: 108, 117, 125;
	--bs-success-rgb: 25, 135, 84;
	--bs-info-rgb: 13, 202, 240;
	--bs-warning-rgb: 255, 193, 7;
	--bs-danger-rgb: 220, 53, 69;
	--bs-light-rgb: 248, 249, 250;
	--bs-dark-rgb: 33, 37, 41;
	--bs-primary-text-emphasis: #052c65;
	--bs-secondary-text-emphasis: #2b2f32;
	--bs-success-text-emphasis: #0a3622;
	--bs-info-text-emphasis: #055160;
	--bs-warning-text-emphasis: #664d03;
	--bs-danger-text-emphasis: #58151c;
	--bs-light-text-emphasis: #495057;
	--bs-dark-text-emphasis: #495057;
	--bs-primary-bg-subtle: #cfe2ff;
	--bs-secondary-bg-subtle: #e2e3e5;
	--bs-success-bg-subtle: #d1e7dd;
	--bs-info-bg-subtle: #cff4fc;
	--bs-warning-bg-subtle: #fff3cd;
	--bs-danger-bg-subtle: #f8d7da;
	--bs-light-bg-subtle: #fcfcfd;
	--bs-dark-bg-subtle: #ced4da;
	--bs-primary-border-subtle: #9ec5fe;
	--bs-secondary-border-subtle: #c4c8cb;
	--bs-success-border-subtle: #a3cfbb;
	--bs-info-border-subtle: #9eeaf9;
	--bs-warning-border-subtle: #ffe69c;
	--bs-danger-border-subtle: #f1aeb5;
	--bs-light-border-subtle: #e9ecef;
	--bs-dark-border-subtle: #adb5bd;
	--bs-white-rgb: 255, 255, 255;
	--bs-black-rgb: 0, 0, 0;
	--bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	--bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
	--bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
	--bs-body-font-family: var(--bs-font-sans-serif);
	--bs-body-font-size: 1rem;
	--bs-body-font-weight: 400;
	--bs-body-line-height: 1.5;
	--bs-body-color: #212529;
	--bs-body-color-rgb: 33, 37, 41;
	--bs-body-bg: #fff;
	--bs-body-bg-rgb: 255, 255, 255;
	--bs-emphasis-color: #000;
	--bs-emphasis-color-rgb: 0, 0, 0;
	--bs-secondary-color: rgba(33, 37, 41, 0.75);
	--bs-secondary-color-rgb: 33, 37, 41;
	--bs-secondary-bg: #e9ecef;
	--bs-secondary-bg-rgb: 233, 236, 239;
	--bs-tertiary-color: rgba(33, 37, 41, 0.5);
	--bs-tertiary-color-rgb: 33, 37, 41;
	--bs-tertiary-bg: #f8f9fa;
	--bs-tertiary-bg-rgb: 248, 249, 250;
	--bs-link-color: #0d6efd;
	--bs-link-color-rgb: 13, 110, 253;
	--bs-link-decoration: underline;
	--bs-link-hover-color: #0a58ca;
	--bs-link-hover-color-rgb: 10, 88, 202;
	--bs-code-color: #d63384;
	--bs-highlight-bg: #fff3cd;
	--bs-border-width: 1px;
	--bs-border-style: solid;
	--bs-border-color: #dee2e6;
	--bs-border-color-translucent: rgba(0, 0, 0, 0.175);
	--bs-border-radius: 0.375rem;
	--bs-border-radius-sm: 0.25rem;
	--bs-border-radius-lg: 0.5rem;
	--bs-border-radius-xl: 1rem;
	--bs-border-radius-xxl: 2rem;
	--bs-border-radius-2xl: var(--bs-border-radius-xxl);
	--bs-border-radius-pill: 50rem;
	--bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
	--bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
	--bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);
	--bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);
	--bs-focus-ring-width: 0.25rem;
	--bs-focus-ring-opacity: 0.25;
	--bs-focus-ring-color: rgba(13, 110, 253, 0.25);
	--bs-form-valid-color: #198754;
	--bs-form-valid-border-color: #198754;
	--bs-form-invalid-color: #dc3545;
	--bs-form-invalid-border-color: #dc3545;
	--margin-menu: 80px;
	
	--header-height: 112px;
	--bottom-hero-height: 120px;
	
	--font-montserrat: "Montserrat";
	--font-nunito: "Nunito", Arial, sans-serif;
	
	--black-color: #333333;
	--black-color-hover: #4e4e4e;
	
	--sand-color: #F6F2EB;
	
	--small-hero-height: 550px;
	
}

body {
	font-family: var(--font-montserrat);
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

body.menu-opened {
	overflow: hidden;
}

.aspect-ratio-picture.picture-hover-zoom {
	max-height: 40vh;
}

a {
	text-decoration: none;
	color: var(--primary);
}

a:hover {
	color: var(--black-color-hover);
}

.btn {
	--bs-btn-padding-x: 2rem;
	--bs-btn-padding-y: 0.375rem;
	--bs-btn-border-radius: 10rem;
}

.btn-secondary {
	  --bs-btn-color: #fff;
	  --bs-btn-bg: var(--secondary);
	  --bs-btn-border-color: var(--secondary);
	  --bs-btn-hover-color: #fff;
	  --bs-btn-hover-bg: var(--primary);
	  --bs-btn-hover-border-color: var(--primary);
	  --bs-btn-focus-shadow-rgb: 130, 138, 145;
	  --bs-btn-active-color: #fff;
	  --bs-btn-active-bg: var(--primary);
	  --bs-btn-active-border-color: var(--primary);
	  --bs-btn-active-shadow: none;
	  --bs-btn-disabled-color: #fff;
	  --bs-btn-disabled-bg: #6c757d;
	  --bs-btn-disabled-border-color: #6c757d;
}

main h1 {
	margin-top: 1.5rem;
	font-size: 2.5rem;
	color: var(--secondary);
	font-family: var(--font-nunito);
	font-weight: 900;
}

h1, 
h2,
h3 {
	font-family: var(--font-nunito);
	font-weight: 900;
	margin-bottom: 0.5em;
}


/* ---------------------------------------------------- */
/* ---------------- NEW DEV JUIN 2025 ----------------- */
/* --------------------------------------------------- */

.no-results {
	display: none;
	font-size: 1.25rem;
	font-weight: 600;
	margin-bottom: 3rem;
	text-align: center;
}

.grid-element-logo {
	height: 300px;
	background-repeat: no-repeat!important;
	background-size: cover!important;
}

.button-group.js-radio-button-group {
	display: flex;
	align-items: center;
	column-gap: 0.5rem;
	margin-bottom: 2rem;
}

body .select2-container .select2-selection--single {
  height: auto;
}

body .select2-container .select2-selection--single .select2-selection__rendered {
	display: block;
	padding-left: .75rem;
	padding-right: 20px;
	padding-block: .33rem;
	font-family: "Montserrat", Arial, sans-serif;
	font-weight: 600;
	font-size: 1.15rem;
	color: white;
	background: var(--primary);
}

body .select2-container--default .select2-selection--single .select2-selection__arrow b {
  border-color: #fff transparent transparent transparent;
  border-style: solid;
  border-width: 0;
}

body .select2-container--default .select2-selection--single .select2-selection__arrow::after {
	content: "\f078";
	font-family: "Font Awesome 6 Pro";
	font-weight: 900;
	font-style: normal;
	font-variant: normal;
	line-height: 1;
	text-rendering: auto;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	color: #fff;
	font-size: 0.75rem;
}

body .select2-container--default .select2-selection--single .select2-selection__arrow {
	width: 30px;
}


body .select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {
	background-color: var(--secondary);
	color: white;
}

body .select2-container--default .select2-results__option--selected {
  background-color: var(--bs-gray-300);
	color: #444;
}

body .select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 100%;
}

body .select2-container--default .select2-selection--single {
  background-color: #fff;
  border: 1px solid var(--primary);
  border-radius: 4px;
}

body .select2-results__option {
  padding-block: .33rem;
  padding-inline: .75rem;
}

.filter-label {
	font-weight: 900;
	font-size: 1.5rem;
}

/* .event-grid .grid-element {
	width: 30%;
} */

.date-label {
	background-color: var(--sand-color);
	padding: 0.33rem 1rem;
	border-radius: 100rem;
	bottom: 1rem;
	left: 1rem;
	z-index: 2;
}

.menu-item.all-sites .fa-chevron-down.open {
	transform: rotate(180deg);
}

.menu-item.all-sites .fa-chevron-down {
	transition: transform 0.2s;
}

header {
	position: relative;
}

.col-menu-second:nth-child(odd) .grid-menu-second {	
	padding-right: 5rem;
}

.col-menu-second:nth-child(even) .grid-menu-second {	
	padding-left: 5rem;
}

.timetable-footer span.chevron {
  width: 100%;
}

.col-menu-second {
	height: 100%;
}

.grid-menu {
  border-right: 1px solid white;
}

.col-menu-second:nth-child(2) .grid-menu-second {
	border-right: 0
}

.grid-menu.grid-menu-second {
	max-width: 800px;
}

.header-menu .wpml-ls-legacy-dropdown-click {
  width: auto;
  margin-right: .5rem;
}

.header-menu .all-sites a {
	font-weight: 500;
	font-size: 1.25rem;
}

.header-even {
	background: var(--bs-gray-200);
	padding: 1.5rem;	
}

.header-even p.date-article {
	font-size: 1.25rem;
	margin-bottom: 0.5rem;
}

.articles-slider.slick-dotted.slick-slider {
  margin-bottom: 60px;
}

.articles-slider .slick-dots {
  bottom: -40px;
}

/* ----------------------------------------- */
/* ---------------- HELPERS ---------------- */
/* ----------------------------------------- */

.primary {
	color: var(--primary);
}

.secondary {
	color: var(--secondary);
}

.primary-bg {
	background-color: var(--primary);
}

.black-color {
	color: #333333;
}

.aspect-ratio-picture {
	aspect-ratio: 1.65;
}

.picture-hover-zoom {
	overflow: hidden;
}

.picture-hover-zoom > img,
article.linkedcard:hover .picture-hover-zoom img {
	transition: transform 0.2s ease;
}

a:hover .picture-hover-zoom > img,
article.linkedcard:hover .picture-hover-zoom img {
	transform: scale(1.08)
}

@keyframes fade-in-delay {
  0%   {opacity: 0}
  100% {opacity: 1}
}

@keyframes fade-out-fast {
  0%   {opacity: 1}
  100% {opacity: 0}
}

@keyframes redanimation {
  0%   {color: blue}
  100% {color: red}
}

@keyframes blur-delay {
  0%   {backdrop-filter: blur(0px);}
  100% {backdrop-filter: blur(42px);}
}

/* -------------------------------------- */
/* ---------------- MENU ---------------- */
/* -------------------------------------- */

.menu-side-panel-outside {
	position: absolute;
	top: 0;
	z-index: 9;
	transform: translateY(calc(var(--header-height) - 100%));
	width: 100%;
	color: white;
}

.col-menu-second:nth-child(1) {
	justify-content: end;
}

.col-menu-second:nth-child(2) {
	justify-content: start;
}

#second-panel .bellows.bellows-skin-blue-material .bellows-nav .bellows-target, .bellows.bellows-skin-blue-material .bellows-nav .bellows-custom-content {
  color: var(--primary);
}

#second-panel .menu-side-panel .bellows.bellows-skin-blue-material .bellows-nav .bellows-item-level-0, .bellows.bellows-skin-blue-material .bellows-nav .bellows-item-level-0 {
  border-bottom: solid 1px var(--primary);
}

.menu-side-panel > div {
	background-color: var(--primary);
	height: calc(100vh - var(--header-height));
}

#second-panel.menu-side-panel-outside .menu-side-panel > div {
	background-color: rgba(255,255,255,0.8);
	backdrop-filter: blur(18px);
	color: var(--primary);
}

.menu-side-panel {
	transition: transform 0.4s ease-in-out;
	height: calc(100vh - var(--header-height));
}

.menu-side-panel.open {
	transform: translateY(100%);
	animation-name: blur-delay;
	  animation-duration: 0.15s;
	  animation-delay: 0.4s;
	  animation-fill-mode: forwards;
}

.menu-side-panel .tab-content {
	opacity: 0;
}

.menu-side-panel.open .tab-content {
	animation-name: fade-in-delay;
	animation-duration: 0.3s;
	animation-delay: 0.3s;
	animation-fill-mode: forwards;
}


.menu-side-panel .nav-link {
	color: var(--primary);
	width: 200px;
	padding: 0;
}

.menu-side-panel .nav-link.active {
	color: white;
}

.nav-link.active .fill-button {
	fill:var(--primary);
}

.nav-link .fill-button {
	fill: var(--bs-gray-300);
	transition: fill 0.5s;
}

.menu-side-panel .nav-link .city-name {
	z-index: 2;
	inset: 0;
	font-size: 1.25rem;
	padding-top: 0.25rem;
}

.menu-side-panel .nav-link,
.menu-side-panel .nav-link.active,
.menu-side-panel .nav-tabs .nav-link:hover {
	background-color: transparent;
	border: none;
}

#nav-tab {
	position: absolute;
	right: 100%;
	top: 0;
	width: auto;
	transform: rotate(270deg) translateY(-100%) translateX( calc(-1 * var(--header-height)));
	transform-origin: top right;
	flex-wrap: nowrap;
	border:none;
}

#close-menu {
	position: absolute;
	top: 1.5rem;
	left: 2rem;
	color: white;
	font-size: 1.75rem;
	line-height: 1;
}

.grid-menu {
	max-width: 1000px;
	width: 100%;
	display: block;
	column-gap: 2rem;
	border-right: 1px solid var(--primary);
}

.grid-element-menu {
	height: calc(100% - 300px);
	overflow: auto;
}

.side-bar-footer {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.menu-side-panel .bellows {
  --bellows-item-padding-v: 20px;
  --bellows-item-padding-h: 20px;
  --bellows-sub-item-padding-v: 0.5rem;
  --bellows-indent: 30px;
  --bellows-indent-level-offset: 1;
  --bellows-toggle-width: 70px;
  --bellows-level: 0;
  --bellows-tree-toggle-w: 0px;
  --bellows-focus-outline: none;
  --bellows-focus-visible-outline: auto;
}

.menu-side-panel .bellows .bellows-nav .bellows-submenu {
	margin-bottom: 1.5rem;
	font-size: 0.8em;
}

.menu-side-panel .bellows.bellows-skin-blue-material {
	background: transparent;
	box-shadow: none;
}

.menu-side-panel .bellows.bellows-skin-blue-material .bellows-nav .bellows-item-level-0.bellows-active > .bellows-target,
.menu-side-panel .bellows.bellows-skin-blue-material .bellows-nav .bellows-item-level-0 > .bellows-target:hover,
.menu-side-panel .bellows.bellows-skin-blue-material .bellows-nav .bellows-item-level-0 > .bellows-target .bellows-subtoggle,
.menu-side-panel .bellows.bellows-skin-blue-material .bellows-nav .bellows-item-level-0.bellows-current-menu-item > .bellows-target, 
.menu-side-panel .bellows.bellows-skin-blue-material .bellows-nav .bellows-item-level-0.bellows-current-menu-ancestor > .bellows-target,
.menu-side-panel .bellows.bellows-skin-blue-material .bellows-nav .bellows-submenu .bellows-current-menu-item > .bellows-target, 
.menu-side-panel .bellows.bellows-skin-blue-material .bellows-nav .bellows-submenu .bellows-current-menu-ancestor > .bellows-target,
.menu-side-panel .bellows.bellows-skin-blue-material .bellows-nav .bellows-submenu,
.menu-side-panel .bellows.bellows-skin-blue-material .bellows-nav .bellows-submenu .bellows-target:hover  {
  background: transparent;
}

.menu-side-panel__dates {
	height: 200px;
	font-size: 1.5rem;
}

.menu-side-panel .bellows.bellows-skin-blue-material .bellows-nav .bellows-item-level-0, 
.bellows.bellows-skin-blue-material .bellows-nav .bellows-item-level-0 {
	font-family: var(--font-nunito);
	font-weight: 900;
	border-bottom: solid 1px white;
	padding-left: 0;
	font-size: 1.5rem;
}
.menu-side-panel .bellows.bellows-skin-blue-material .bellows-nav .bellows-item-level-0 > .bellows-target, 
.bellows.bellows-skin-blue-material .bellows-nav .bellows-item-level-0 > .bellows-target {
	border-bottom: none ;
	padding-left: 0;
}

.menu-side-panel .bellows.bellows-skin-blue-material .bellows-nav .bellows-submenu .bellows-target,
.menu-side-panel .bellows.bellows-skin-blue-material .bellows-nav .bellows-submenu .bellows-target:hover {
	border-bottom: 0;
	color: white;
}

.menu-side-panel .bellows-subtoggle-icon-expand,
.menu-side-panel .bellows-subtoggle-icon-collapse  {
	font-size: 0.75em;
}

.menu-side-panel .bellows-submenu .bellows-target-title.bellows-target-text {
	padding-left: 1rem;
}

.menu-side-panel .bellows .bellows-nav .bellows-subtoggle {
	height: 100%;
	width: 100%;
	display: flex;
	justify-content: end;
	align-items: center;
	position: absolute;
	left: 0;
	top: 0;
	border-radius: 0;
	color: inherit;
}

.menu-side-panel .searchbar__form {
	width: 100%;
	max-width: 1170px;
	height: 32px;
	background: #fff;
	box-shadow: none;
	display: block;
	transition: .3s linear;
	border-radius: 50rem;
}

.menu-side-panel .searchbar__field {
	padding-left: 2ch;
	height: 30px;
	font-size: 1em;
	width: calc(100% - 4ch);
}

.menu-side-panel .searchbar {
	background-color: transparent;
	opacity: 1;
}

.menu-side-panel .searchbar__button {
	position: relative;
	height: 30px;
	width: 30px;
}

.menu-side-panel .searchbar__button .far {
	font-size: 1em;
	color: var(--primary);
}

ul.menu-side-panel__quicklinks {
	padding: 0;
	margin: 0;
	list-style: none;
	column-gap: 1rem;
}

ul.menu-side-panel__quicklinks > li  {
	display: flex;
	flex-direction: column;
	align-items: center;
	row-gap: 0.5rem;
} 

ul.menu-side-panel__quicklinks > li > span {
	font-size: 12px;
}

ul.menu-side-panel__quicklinks > li > a  {
	background: rgba(0, 0, 0, 0.2);
	color: white;
	width: 45px;
	height: 45px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: white;
	font-size: 1.2em;
} 

.title-articles {
	font-size: 2.5rem;
	margin-bottom: clamp(1rem, calc(2.9vw - 41px) ,2rem);
}

.article-slider,
.article-slider:hover {
	color: white;
}

.article-slider__date {
	font-size: 1.25rem;
	text-transform: capitalize;
	margin-bottom: 1rem;
}

.col-articles {
	max-width: 1000px;
}

.article-slider .aspect-ratio-picture  {
	margin-bottom: 1.5rem;
}

.article-slider__title {
	font-size: 1.75rem;
	margin-bottom: clamp(1rem, calc(2.9vw - 41px) ,2rem);
}

.article-slider__resume {
	font-size: 1.2rem;
}

.articles-slider .slick-dots li, 
.articles-slider .slick-dots li button, 
.articles-slider .slick-next, 
.articles-slider .slick-prev {
  width: 40px;
  height: 40px;
  cursor: pointer;
}

.articles-slider .slick-dots li button::before {
  font-size: 18px;
  line-height: 40px;
  width: 40px;
  height: 40px;
  opacity: .5;
  color: #555;
}

.bellows-wpml-ls-slot-2 {
	display: none;
}

@media (max-width: 1800px) {
	.grid-menu {
		grid-template-columns: 180px 1fr 280px;
	}
	.grid-element-dates {
		grid-column: 2 / span 2;
	}
	
	.grid-element-menu {
		grid-column: 2 / span 2;
		margin-right: 4rem;
	}
	
	.col-menu-second .grid-element-menu {
		margin-right: 0;
	}
	
	.grid-element-search {
		grid-column: 2 / span 1;
		grid-row: 3 / span 1;
		align-self: end;
	}
	
	.grid-element-shortlinks {
		grid-column: 3 / span 1;
		grid-row: 3 / span 1;
		align-self: end;
	}
	
	.article-slider__title {
		font-size: 1.5rem;
	}
	
	.article-slider__resume {
		font-size: 1.1rem;
	}
	
	.title-articles {
		font-size: 2.25rem;
	}
	
	.article-slider .aspect-ratio-picture {
		aspect-ratio: 1.85;
	}
}

@media (max-width: 1600px) {
	
	.grid-menu {
		grid-template-columns: 140px 1fr 260px;
		grid-template-rows: 140px minmax(1px, auto) min-content;
	}
	
	.article-slider__title {
		font-size: 1.25rem;
	}
	
	.article-slider__resume {
		font-size: 1rem;
	}
	
	.title-articles {
		font-size: 2rem;
	}
	
	ul.menu-side-panel__quicklinks > li > a  {
		width: 36px;
		height: 36px;
		font-size: 1em;
	} 
	
	.articles-slider .slick-dots li, 
	.articles-slider .slick-dots li button, 
	.articles-slider .slick-next, 
	.articles-slider .slick-prev {
	  width: 32px;
	  height: 32px;
	}
	
	.articles-slider .slick-dots li button::before {
	  font-size: 16px;
	  line-height: 32px;
	  width: 32px;
	  height: 32px;
	}
	
	.articles-slider .slick-dots {
	  bottom: -30px;
	}
	
	.grid-element-menu .bellows .bellows-nav .bellows-custom-content.bellows-custom-content-padded, 
	.grid-element-menu .bellows .bellows-nav .bellows-target, 
	.grid-element-menu .bellows .bellows-nav .bellows-target.bellows-target-w-image > .bellows-image.bellows-image-padded, 
	.grid-element-menu .bellows .bellows-nav .bellows-target.bellows-target-w-image > .bellows-target-text {
	  padding: 16px 16px 16px 0;
	}
	
	.grid-element-menu .bellows {
		margin: 0;
	}	
}

@media (max-width: 1400px) {
	
	#primary-panel .grid-menu {
		border-right: none;
	}
	
	.grid-menu {
		grid-template-columns: 140px 1fr 5% 280px;
		grid-template-rows: 140px minmax(1px, auto) min-content;
		
	}
	
	.grid-element-logo {
		grid-column: 1 / span 1;
		grid-row: 1 / span 1;
	}
	
	.grid-element-dates {
		grid-column: 2 / span 1;
		grid-row: 1 / span 1;
		align-self: center;
	}
	
	.grid-element-menu {
		grid-column: 2 / span 1;
		grid-row: 2 / span 1;
		margin-right: 2rem;
	}
	
	.grid-element-search {
		grid-column: 4 / span 1;
		grid-row: 1 / span 1;
		align-self: center;
		
	}
	
	.grid-element-shortlinks {
		grid-column: 4 / span 1;
		grid-row: 3 / span 1;
		align-self: center;
	}
	
	.menu-side-panel .nav-link {
		width: 160px;
	}
	
	.menu-side-panel .nav-link .city-name {
		font-size: 1rem;
	}
		
}

@media (max-width: 1200px) {
	
	.col-menu-second .grid-menu {
		padding-left: 0px;
	}
	
	.col-menu-second:nth-child(1) {
		justify-content: center;
	}
	
	.col-menu-second:nth-child(2) {
		justify-content: center;
	}
	
	
	.col-menu-second {
		height: auto;
	}
	
	.grid-menu {
		grid-template-columns: 140px 1fr 280px;
		grid-template-rows: 140px minmax(1px, auto) min-content;
	}
	
	.grid-element-search {
		grid-column: 3 / span 1;
	}
	
	.grid-element-shortlinks {
		grid-column: 3 / span 1;
	}
	
	.menu-side-panel__dates {
		font-size: 1.25rem;
	}
}

@media (max-width: 992px) {
	

	
	.grid-menu {
		grid-template-columns: 1fr;
		grid-template-rows: min-content minmax(1px, auto) min-content;
		max-width: 100%;
		padding-left: 0px;
		border-right: 0;
	}
	.grid-element-menu {
	  height: 50vh;
	  overflow: auto;
	}
	
	.grid-element-search {
		grid-column: 1 / span 1;
		grid-row: 1 / span 1;
	}
	
	.grid-element-menu {
		grid-column: 1 / span 1;
		grid-row: 2 / span 1;
		margin-right: 0;
	}
	
	
	.grid-element-shortlinks {
		grid-column: 1 / span 1;
		grid-row: 3 / span 1;
		margin-left: 2rem;
		max-width: 320px;
		margin-right: 2rem;
		padding-left: 0;
		padding-right: 0;
	}
	
	.menu-side-panel__dates {
		font-size: 1.25rem;
	}
}

.articles-slider .slick-dots li.slick-active button::before {
	opacity: 1;
	color: white;
}

.responsive-toolbar {
	display: none;
}

/* ---------------------------------------- */
/* ---------------- HEADER ---------------- */
/* ---------------------------------------- */

header:not(.mainsite) {
	background-color: white;
	z-index: 10;
	height: var(--header-height);
}

header .logo {
	top: 0;
	z-index: 1;
}

header > .container {
	position: relative;
	z-index: 10;
	background-color: white;
}

.header-dates {
	padding-left: calc(200px + 1.5rem);
	font-size: 1.5rem;
	line-height: 1.25;
}

.header-menu ul {
	display: flex
}
.menu-icon-type {
	width: 40px;
	height: 40px;	
}

.header-menu.mainsite {
	position: absolute;
	right: 0;
}

body .wpml-ls-legacy-dropdown {
  width: 50px;
  max-width: 50px;
}

.menu-icon-type a,
.header-menu .wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle,
.header-menu .wpml-ls-legacy-dropdown-click .wpml-ls-sub-menu a {
	display: inline-block;
	border-radius: 10rem;
	text-align: center;
	width: 40px;
	height: 40px;
	line-height: 40px;
	transition: background-color 0.2s ease-in, color 0.2s ease-in;
	position: static;
	padding: 0;
	border: none;
}

.menu-icon-type a {
	color: var(--bs-gray-600);
	background-color: var(--bs-gray-300);
	font-size: 1.25em;
}

.menu-icon-type a:hover {
	color: white; 
	background-color: var(--secondary);
}

.menu-icon-type a > i {
	line-height: 40px;
}

.header-menu .wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle::after {
	content: none;
}

.header-menu .wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle,
.header-menu .wpml-ls-legacy-dropdown-click .wpml-ls-sub-menu a {
	background-color: var(--primary);
	color: white; 
	font-size: 14px;
	font-family: var(--font-montserrat);
	font-weight: 700;
}

.header-menu  .wpml-ls-legacy-dropdown-click .wpml-ls-sub-menu {
	border: none;
	padding-top: 5px;
	display: flex;
	flex-direction: column;
	row-gap: 5px;
	opacity: 0;
	transition: opacity 0.3s;
}

.header-menu .wpml-ls-legacy-dropdown-click .wpml-ls-current-language:hover .wpml-ls-sub-menu {
	opacity: 1;
}

.snow-flake.left {
	bottom: 2.5rem;
	left: calc(((50vw - 800px) / 2) + 0.5rem)
}

.gold-point.left {
	bottom: 1rem;
	left: calc(((50vw - 800px) / 5) + 0.25rem)
}

.snow-flake.right {
	top: 2rem;
	right: calc(((50vw - 800px) / 2) + 0.5rem);
}

.gold-point.right {
	bottom: 1rem;
	right: calc(((50vw - 800px) / 5) + 0.25rem)
}

@media ((max-width: 1760px) and (min-width: 1700px)) {
	.gold-point,
	.snow-flake {
		display:none;
	}	
}

@media (max-width: 1250px) {
	.gold-point,
	.snow-flake {
		display:none;
	}	
}

.menu-icon-type.open-menu a {
	background-color: var(--primary);
}

.menu-icon-type.open-menu > a {
	color: white;
}

.separator {
	color: white;
	flex-grow:1;
	cursor: defaut;
}

.anniversary {
	z-index: 11;
	width: 120px;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
}

/* ------------------------------------------- */
/* ---------------- HORAIRES ----------------- */
/* ------------------------------------------- */

.timetable-cont {
	position: absolute;
	top: 0;
	z-index: 8;
	transform: translateY(calc(var(--header-height) - 100%));
}

.timetable {
	background-color: var(--secondary);
	border-bottom-left-radius: 15px;
	border-bottom-right-radius: 15px;
	transform: translateY(2.5rem);
	transition: transform 0.4s ease-in-out;
}

.timetable-inside {
	padding: 1.5rem 2.5rem 0rem 2.5rem;
	opacity: 0;
}

.timetable.open {
	transform: translateY(100%);
}

.timetable-tabs {
	border-bottom: solid 2px white;
}

.timetable-header {
	font-size: 1.75rem;
}

#timetable-tabs {
	row-gap: 1rem;
}

#timetable-tabs.nav-pills .nav-link.active {
	background-color: white;
	color: var(--secondary);
}

#timetable-tabs.nav-pills .nav-link {
	background-color: var(--secondary);
	color: white;
	font-size: 1.25rem;
	border-radius: 1rem;
	padding: 0.25rem 3rem;
	border: solid 2px white;
}

.timetable-table {
	display: table;
	background: transparent;
	width: 100%;
	color: #fff;
	text-align: center;
	table-layout: fixed;
	border-collapse: separate;
}

.timetable.open #open-timetable {
	opacity: 0;
	transition: opacity 0.1s ease-in;
}

.timetable.close #open-timetable {
	opacity: 1;
	transition-property: opacity;
	transition-duration: 0.3s;
	transition-delay: 0.3s;
	transition-timing-function: ease-in;
}

.timetable.open .timetable-inside {
	animation-name: fade-in-delay;
	animation-duration: 0.3s;
	animation-delay: 0.3s;
	animation-fill-mode: forwards;
}

.timetable-table .row-table {
	display: table-row;
}

.timetable-table .tbody {
	display: table-row-group;
}

.timetable-table .cell {
	display: table-cell;
	font-size: 1.1rem;
}

.timetable-table .cell div {
	padding: 0.5rem;
}

.timetable-table .thead {
	display: table-header-group;
}

.timetable-table .row-table.active .cell {
	color: var(--secondary);
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
}

.timetable-table .row-table.active .cell:first-child div {
	border-top-left-radius: 1rem;
	border-bottom-left-radius: 1rem;
	margin-left: -0.5rem;
	padding-left: 1rem;
}

.timetable-table .row-table.active .cell div {
	background-color: white;
	font-weight: 700;
}

.timetable-table .row-table.active .cell:last-child div {
	border-top-right-radius: 1rem;
	border-bottom-right-radius: 1rem;
	margin-right: -0.5rem;
	padding-right: 1rem;
}

.timetable-footer {
	height: 2.5rem;
	width: 100%;
	display: block;
}

.timetable-footer span {
	background-color: white;
	border-radius: 10rem;
	text-align: center;
	width: 24px;
	height: 24px;
	line-height: 24px;
	color: var(--secondary);
	font-size: 14px;
}

.responsive-timetable-day {
	height: 3rem;
	background: var(--secondary);
	flex-shrink: 0;
	margin-top: -3rem;
	  border-top-left-radius: 2rem;
	  border-top-right-radius: 2rem;
}

/* ---------------------------------------- */
/* ---------------- HEROS ----------------- */
/* ---------------------------------------- */


section.hero {
	height: calc(100dvh - var(--header-height) - var(--bottom-hero-height));
	min-height: 850px;
}

section.hero.small-hero {
	height: var(--small-hero-height);
	min-height: 0;
}

section.hero > img {
	height: 100%
}

section.hero > video {
	object-fit: cover;
}

.hero-box {
	width: 40%;
	min-width: 400px;
	border-radius: 16px;
	padding: 2rem 2.5rem;
	backdrop-filter: blur(18px);
	background-color: rgba(255, 255, 255, 0.7);
}

.hero-box h2 {
	font-family: var(--font-nunito);
	color: #4d4d4d;
	text-transform: uppercase;
	font-weight: 900;
	font-size: 2.25rem;
	margin-bottom: 1.25rem;
}

.hero-box h3 {
	font-family: var(--font-nunito);
	font-weight: 600;
	color: var(--secondary);
	line-height: 1.5;
	margin-bottom: 1.5rem;
}

.hero-box-container {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.hero-box {
	font-size: 1.25rem;
	line-height: 1.75;
}

/* --------------------------------------------- */
/* ---------------- FRONT-PAGE ----------------- */
/* --------------------------------------------- */

#front-tabs {
	column-gap: 2rem;
	height: var(--bottom-hero-height);
}

#front-tabs.nav-pills .nav-link {
	color: #333333;
	font-size: 1.5rem;
	border-radius: 100rem;
	padding: 0.5rem 3rem;
}

#front-tabs.nav-pills .nav-link:hover {
	color: var(--primary);
}

#front-tabs.nav-pills .nav-link.active {
	background-color: var(--primary);
	color: white;
}

#front-tabs-content .accordion-header {
	border-bottom: 2px solid var(--bs-gray-300);
	position: relative;
}

#front-tabs-content .accordion-button {
	font-size: 2.5rem;
	line-height: 1;
	padding: 1.5rem 3rem;
}

#front-tabs-content .accordion-button::before {
	position: absolute;
	font-family: "Font Awesome 6 Pro";
	content: "\f078";
	width: 30px;
	height: 30px;
	left:0;
	font-size: 30px;
	transition: transform 0.2s;
}

#front-tabs-content .accordion-button.collapsed::before {
	transform: rotate(180deg);
}

/* --------------------------------------------- */
/* ------------------ Layouts ------------------ */
/* --------------------------------------------- */

section.flexible {
	margin-top: 4rem;
	margin-bottom: 5rem;
}

.grid-content,
ul.grid-content {
	display: grid;
	column-gap: 1rem;
	grid-template-columns: 1fr 1fr 1fr;
	grid-template-rows: 1fr;
	padding-left: 0;
}

.select2-selection__clear {
	display: none;
}

.grid-element {
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 5;
	border-radius: 16px;
	  overflow: hidden;
}

.to-discover a.grid-element,
.to-discover .grid-element {
	background: white;
}

.to-discover {
	background-color: var(--sand-color); 
}

section.flexible.to-discover {
  padding-top: 4rem;
  margin-bottom: 0;
  padding-bottom: 5rem;
}

.item-gallery {
  border-radius: 16px;
  overflow: hidden;
}

a.grid-element,
article.linkedcard { 
	background-color: var(--sand-color);
}

.grid-element .location-cat {
	font-size: 0.8rem;
}

.grid-element .knowmore {
	font-size: 0.9rem;
}

.grid-element .title {
	font-size: 1.5rem;
}

.attraction-detail.grid-element .title {
	font-size: 1.75rem;
}

.grid-element .subtitle,
.restauration .content p,
.restauration .content,
.page-template-page-single-evenement .subtitle {
	font-size: 1.25rem;
}

.gallery-slider {
	margin-top: 1rem;
}

.gallery .gallery-slider img {
	border: none;
}

.gallery-slider .slider.odd a:nth-child(2) .picture-hover-zoom,
.gallery-slider .slider.even a:nth-child(1) .picture-hover-zoom {
	aspect-ratio: 1.8;
}

.gallery-slider .slider.odd a:nth-child(1) .picture-hover-zoom,
.gallery-slider .slider.even a:nth-child(2) .picture-hover-zoom {
	aspect-ratio: 0.95;
}

.gallery-slider .slick-arrow {
	z-index: 2;
}

.gallery-slider .slick-prev {
	left: 18%;
}

.gallery-slider .slick-next {
	right: 18%;
}

.gallery-slider .slick-next::before, 
.gallery-slider .slick-prev::before {
	font-family: "Font Awesome 6 Pro";
	font-size: 2rem;
	color: white;
	opacity: 1;
	background-color: var(--primary);
	width: 3rem;
	display: block;
	line-height: 1.5;
	border-radius: 50%;
}

.gallery-slider .slick-next,
.gallery-slider .slick-prev {
	width: 3rem;
	height: 3rem;
}

.gallery-slider .slick-slide {
	transition: filter 0.3s;
}

.gallery-slider .slick-slide:not(.slick-active) {
	filter: brightness(0.5);
}

.gallery-slider .slick-next::before {
	content: "\f054";
}

.gallery-slider .slick-prev::before {
	content: "\f053";
}

.one-column,
.one-column p,
.the-content,
.the-content p {
	font-size: 1.2rem;
}

.date-article {
	font-size: 1.5rem;
	text-transform: capitalize;
}

/* -------------------------------------------- */
/* ------------------ GFORMS ------------------ */
/* -------------------------------------------- */


.table-primary {
  --bs-table-color: white;
  --bs-table-bg: var(--secondary);
  --bs-table-border-color: white;
  --bs-table-striped-bg: #c5d7f2;
  --bs-table-striped-color: #000;
  --bs-table-active-bg: #bacbe6;
  --bs-table-active-color: #000;
  --bs-table-hover-bg: #bfd1ec;
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

body .gform_wrapper.gravity-theme .gf_progressbar_percentage.percentbar_blue {
  background-color: var(--primary);
  color: #fff;
}

body .gravity-para {
	font-size: 1rem;
}

body .gform_wrapper.gravity-theme .gsection {
	  padding: 1.25rem 16px 8px 0;
	  margin-bottom: 1rem;
}

body .gform_wrapper.gravity-theme .gfield_radio label {
	font-size: 1rem;
}

body .gform_button_select_files {
  border: none;
  background-color: var(--secondary);
  color: white;
  padding: 0.75rem 1.5rem;
  font-size: 1.2rem;
}

.gform_required_legend {
	display: none;
}

footer .gform_wrapper.gravity-theme .gform_fields {
	grid-row-gap: 8px;
}

footer .gform_wrapper.gravity-theme .gform_fields input,
footer .gform_wrapper.gravity-theme .gform_fields textarea {
	background-color: #dccfad;
	border: none;
}

footer .gform-field-label {
	display:none;
}

footer .newsletter-input input {
	background-color: white!important;
	border-top-left-radius: 50rem;
	border-bottom-left-radius: 50rem;
	padding-left: 2ch!important;
}

footer .social-newsletter .gform_wrapper > form {
	display: flex;
}

footer .social-newsletter .gform_wrapper.gravity-theme .gform_footer, 
footer .social-newsletter .gform_wrapper.gravity-theme .gform_page_footer {
	margin: 0;
	padding: 0;
}

footer .social-newsletter .gform_wrapper.gravity-theme #field_submit input, 
footer .social-newsletter .gform_wrapper.gravity-theme .gform_footer input {
	align-self: normal;
	margin-bottom: 0px;
	border: none;
	border-top-right-radius: 50rem;
	border-bottom-right-radius: 50rem;
	background-color: var(--secondary);
}

.to-discover .knowmore:hover i {
	margin-left: 1em;
}

.to-discover .knowmore i {
	margin-left: 0.5em;
	transition: margin-left 0.2s ease-in;
}

/* --------------------------------------------------- */
/* ------------------ Page Sponsors ------------------ */
/* --------------------------------------------------- */

.grid-sponsor {
	display: grid;
	max-width: 1200px;
	margin: auto;
	padding: 1rem 2rem;
	grid-template-columns: repeat(4, 1fr);
	grid-auto-rows: 100px;
	row-gap: 2.5rem;
	column-gap: 5rem;
}

@media (max-width: 991.98px) {
	.grid-sponsor { 
		grid-template-columns: repeat(2, 1fr); 
		column-gap: 3rem;
		row-gap: 2rem;
		grid-auto-rows: 80px;
	}
 }
 
 @media (max-width: 400px) {
	 .grid-sponsor { 
		grid-template-columns: repeat(1, 1fr); 
		column-gap: 2rem;
		row-gap: 2rem;
	}
  }


.sponsor-item {
	align-self: strech;
	justify-self: center;
}

.sponsor-logo {
	max-height: 100%;
}

/* --------------------------------------------- */
/* ------------------ GRAVITY ------------------ */
/* --------------------------------------------- */

.gform_wrapper.gravity-theme input[type="color"], .gform_wrapper.gravity-theme input[type="date"], .gform_wrapper.gravity-theme input[type="datetime-local"], .gform_wrapper.gravity-theme input[type="datetime"], .gform_wrapper.gravity-theme input[type="email"], .gform_wrapper.gravity-theme input[type="month"], .gform_wrapper.gravity-theme input[type="number"], .gform_wrapper.gravity-theme input[type="password"], .gform_wrapper.gravity-theme input[type="search"], .gform_wrapper.gravity-theme input[type="tel"], .gform_wrapper.gravity-theme input[type="text"], .gform_wrapper.gravity-theme input[type="time"], .gform_wrapper.gravity-theme input[type="url"], .gform_wrapper.gravity-theme input[type="week"], .gform_wrapper.gravity-theme select, .gform_wrapper.gravity-theme textarea {
	font-size: 16px;
	margin-bottom: 0;
	margin-top: 0;
	padding: 8px;
	border: solid 1px var(--black-color);
	border-radius: 4px;
}

/* -------------------------------------------- */
/* ------------------ Footer ------------------ */
/* -------------------------------------------- */

section.partners {
	padding: 3rem 4rem;
	width: 100%;
	margin: auto;
}

section.partners .slick-track {
	display: flex;
	align-items: center;
}

section.partners .slick-track img {
	max-height: 100px;
}

section.partners .slick-next::before, 
section.partners .slick-prev::before {
	font-size: 30px;
	color: var(--black-color);
}

section.partners .slick-dots li, 
section.partners .slick-dots li button, 
section.partners .slick-next, 
section.partners .slick-prev {
	width: 30px;
	height: 30px;
}

section.contact {
	padding: 2rem 0;
}

section.social-newsletter {
	padding: 1.5rem 0;
}

section.contact {
	background-color: var(--secondary);	
}

section.social-newsletter {
	background-color: var(--black-color);
	color: white
}
	
.contact__title {
	font-size: 1.1rem;
}


ul.nav-footer,
ul.social-medias {
	padding: 0;
	margin: 0;
	list-style: none;
}

ul.social-medias > li {
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background-color: white;
}

ul.social-medias > li > a  {
	color: var(--black-color);
	font-size: 1.1rem;
	width: 30px;
	height: 30px;
}

ul.nav-footer > li {
	border-bottom: solid 1px #a8a8a8;
	font-size: 0.9rem;
	padding: 0.25rem 0;
}

section.contact a,
section.contact {
	color: var(--black-color);
	font-size: 0.9rem;
}

section.contact .bureau__content {
	border-bottom: solid 1px #a8a8a8;
}

section.partners .slick-next {
	right: -2rem;
}

section.partners .slick-prev {
	left: -2rem;
}

.btn-search {
	font-size: 1.500rem;
	cursor: pointer;
}

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

.list-inline li:not(:last-child) {
	margin-right: .5rem;
}

.main-menu li a {
	display: inline-block;
	text-decoration: none;
}

.accordion-button {
	cursor: pointer;
	font-size: inherit;
}

.accordion-body .the-content p:last-child, .content-with-bg p:last-child{
	margin-bottom: 0;
}

#chatbase-bubble-button {
	animation-name: tilt-shaking;
	animation-duration: .25s;
	animation-iteration-count: 8;
	animation-timing-function: ease-in-out;
	animation-delay: 3s;
}

@keyframes tilt-shaking {
  0% { transform: rotate(0deg); }
  25% { transform: rotate(5deg); }
  50% { transform: rotate(0eg); }
  75% { transform: rotate(-5deg); }
  100% { transform: rotate(0deg); }
}

form.newsletter .email {
	border-radius: 50rem;
	padding-left: 1.25rem;
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
	border-width: 0px;
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
	line-height: 2;
}
form.newsletter .submit {
	width: 3ch;
	height: 100%;
	padding-top: 0.65rem;
	padding-bottom: 0.85rem;
	border-width: 0px;
	border-top-right-radius: 50rem;
	border-bottom-right-radius: 50rem;
	font-size: 1.5em;
	line-height: 1;
	background-color: var(--secondary);
	color: white;
}

.page-template-page-single-evenement-php .hero.small-hero {
	text-align: center;
}

.page-template-page-single-evenement-php .hero.small-hero img {
	max-width:1642px;
	margin-left:auto;
	margin-right: auto;
}

/* #Villeneuve-tab-timetable {
	display:none !important;
} */

/* --------------------------------------------------- */
/* ------------------ MEDIA QUERIES ------------------ */
/* --------------------------------------------------- */

@media (max-width: 1700px) {
	
	:root {
		--header-height: 80px;
	}
	
	.header-dates {
	  padding-left: calc(140px + 1.5rem);
	  font-size: 1.25rem;
	}
	
	.logo > img {
		width: 140px;
	}
	
	.snow-flake.left {
	  left: calc(((50vw - 700px) / 2) + 0.5rem);
	}
	
	.snow-flake.right {
	  right: calc(((50vw - 700px) / 2) + 0.5rem);
	}
	
	.gold-point.left {
		left: 0.25rem;
	}
	
	.gold-point.right {
		right: 0.25rem;
	}
	
	.anniversary {
	  transform: translateX(-100%);
	}
	
	.hero-box {
		width: 60%;
	}
	
	.hero-box h2 {
		font-size: 1.6rem;
		margin-bottom: 1.1rem;
	}
	
	h3, .h3 {
		font-size: 1.5rem;
	  }
	
}

@media (max-width: 1399.98px)  {
	
	section.hero {
		min-height: 750px;
	}
	
	section.hero.small-hero {
		height: var(--small-hero-height);
		min-height: 0;
	}
	
	.snow-flake.left {
	  left: calc(((50vw - 600px) / 2) + 0.5rem);
	}
	
	.snow-flake.right {
	  right: calc(((50vw - 600px) / 2) + 0.5rem);
	}
	
	.gold-point.left {
		left: 0.25rem;
	}
	
	.gold-point.right {
		right: 0.25rem;
	}
	
	.anniversary {
	  width: 90px;
	  transform: translateX(-150%);
	}
	
	.hero-box {
		font-size: 1.1rem;
		padding: 1.75rem 2.25rem;
	}
	.hero-box h3 {
		font-size: 1.5rem;
		margin-bottom: 1.25rem;
	}
	
	.hero-box h2 {
		font-size: 2rem;
	}
	
}

@media (max-width: 1199.98px) {
	
	.grid-content,
	ul.grid-content {
		grid-template-columns: 1fr 1fr;
	}
	
	.anniversary {
		width: 80px;
		transform: translateX(-105%);
	  }
	
	.timetable {
		font-size: 0.9em;
	}
	
	#timetable-tabs.nav-pills .nav-link {
	  font-size: 1.15rem;
	  padding: 0.25rem 2.5rem;
	}
	
	.timetable-table .cell {
	  display: table-cell;
	  font-size: 1rem;
	}
	
	.timetable-inside {
	  padding: 1.75rem 2rem 0rem 2rem;
	  opacity: 0;
	}
	
	.hero-box {
		font-size: 1rem;
		padding: 1.5rem 2rem;
	}
	.hero-box h3 {
		font-size: 1.25rem;
		margin-bottom: 1.1rem;
	}
	
	.hero-box h2 {
		font-size: 1.6rem;
		margin-bottom: 1.1rem;
	}
	
	li.separator {
	  display: none;
	}
}



@media (max-width: 991.98px) {
	
	.button-group.js-radio-button-group {
	  flex-direction: column;
	  align-items: stretch;
	  row-gap: 0.75rem;
	}
	
	
	.all-sites.menu-item {
		position: absolute;
		  bottom: 0;
		  transform: translate(-50%,100%);
		  left: calc(50% - 1px);
		  background-color: var(--secondary);
		  padding: 0.5rem 1rem;
		 width: 100vw;
		 text-align: center;
		 
	}
	.all-sites.menu-item a {
		color: white;
	}

	
	.col-menu-second:nth-child(2n+1) .grid-menu-second {
	  padding-right: 0;
	}
	
	.col-menu-second:nth-child(2n) .grid-menu-second {
	  padding-left: 0;
	  margin-bottom: 50px;
	}
	
	#second-panel .menu-side-panel,
	#second-panel .menu-side-panel > div {
		height: auto;
		max-height: calc(100vh - var(--header-height));
		min-height: calc(100vh - var(--header-height));
		overflow-y: auto; 
	}
	
	header {
		position: fixed;
		width: 100%;
		filter: drop-shadow(0 1px 2px rgb(0 0 0 / 0.1)) drop-shadow(0 1px 1px rgb(0 0 0 / 0.06));
	}
	
	.menu-side-panel-outside {
		position: fixed;
	}
	
	
	
	.anniversary {
		transform: translateX(-50%) translateY(118%);
		left: 70px;
		z-index: 0;
	}
	
	.grid-content,
	ul.grid-content {
		grid-template-columns: 1fr;
	}
	
	#front-tabs-content.tab-content >.tab-pane {
		display: block;
		opacity: 1;
	}
	
	.header-menu .menu-icon-type {
		display: none;
	}
	
	.timetable-cont {
		position: fixed;
		top: 0;
		height: 100dvh;
		opacity: 0;
		background-color: var(--primary);
		z-index: -1;
		transform: none;
	}
	
	.timetable-inside {
		opacity: 1;
	}
	
	.timetable.open,
	.timetable {
	  transform: translateY(100px);
	  border-radius: 15px;
	}
	
	section.partners {
	  padding: 2rem 3rem;
	}
	
	body.timetable-opened .timetable-cont {
		display: block;
		opacity: 1;
		z-index: 55;
		transition: opacity 0.5s
	}
	
	body.timetable-opened .responsive-toolbar {
		z-index: 56;
	}
	
	.timetable.open .timetable-inside {
	  	animation-name: none;
	}
	
	section.hero {
		height: auto;
		min-height: unset;
		display: flex;
		flex-direction: column;
	}
	
	section.hero.small-hero {
		height: var(--small-hero-height);
		min-height: 0;
	}
	
	section.hero > img {
		height: 100%;
		min-height: 50dvh;
		flex-grow:1;
	}
	
	section.hero.small-hero > img {
		height:100%;
		min-height: 0;
	}
	
	.hero-box {
		width: 100%;
		min-width: fit-content; 
	  }
	
	.responsive-toolbar {
		position: fixed;
		z-index: 20;
		display: block;
		bottom: 1rem;
		left: 50%;
		max-width: 95vw;
		transform: translateX(-50%);
		background-color: white;
		padding: 0.75rem 2.5rem;
		border-radius: 50rem;
		box-shadow: 0px 0px 16px 10px rgba(0,0,0,0.33)
	}
	
	a.responsive-toolbar__item {
		width: 90px;
		font-size: 1.5rem;
		color: var(--bs-gray-500);
	}
	
	.responsive-toolbar__item span {
		font-size: 12px;
	}
	
	a.responsive-toolbar__item.spacer {
		margin-right: calc(90px + 2rem);
	}
	
	a.responsive-toolbar__item.menu-item {
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		height: 90px;
		width: 90px;
		background-color: var(--primary);
		border-radius: 50%;
		font-size: 2.5rem;
		color: white;
	}
	
	.hero-box-container {
		position: static;
		width: 100%;
		height: auto;
	}
	
	.hero-box {
		padding: 2.5rem 0;
	}
	
	.gallery-slider .slider.odd a:nth-child(2) .picture-hover-zoom,
	.gallery-slider .slider.even a:nth-child(1) .picture-hover-zoom {
		aspect-ratio: 1;
	}
	
	.gallery-slider .slider.odd a:nth-child(1) .picture-hover-zoom,
	.gallery-slider .slider.even a:nth-child(2) .picture-hover-zoom {
		aspect-ratio: 1;
	}
	
	.gallery-slider .slider .item-gallery:last-child {
		margin-bottom: 1rem;
	}
	
	section.contact {
		padding-bottom: 7rem;
	}
	
	main h1 {
	  height: auto;
	}
	
}

@media (max-width: 767.98px) {
	
	.select2 {
		width:100%!important;
	}
	
	body .select2-container .select2-selection--single .select2-selection__rendered {
	 text-align: center;
	}
	
	.header-menu .all-sites a {
	  font-size: 1.1rem;
	}
	
	.menu-side-panel .bellows.bellows-skin-blue-material .bellows-nav .bellows-item-level-0, .bellows.bellows-skin-blue-material .bellows-nav .bellows-item-level-0 {
	  font-size: 1.2rem;
	}
	
	.grid-element-menu {
		height: 50vh;
		overflow: auto;
	  }
	
	#second-panel .grid-element-menu {
		height: auto;
		overflow: auto;
	  }
	
	.grid-element-menu .bellows .bellows-nav .bellows-custom-content.bellows-custom-content-padded, 
	.grid-element-menu .bellows .bellows-nav .bellows-target, 
	.grid-element-menu .bellows .bellows-nav .bellows-target.bellows-target-w-image > .bellows-image.bellows-image-padded, 
	.grid-element-menu .bellows .bellows-nav .bellows-target.bellows-target-w-image > .bellows-target-text {
	  padding: 12px 12px 12px 0;
	}
	
	.grid-element-logo img {
		width: 80px;
	}
	
	:root {
		--margin-menu: 50px;
	}
	
	section.contact {
		padding-bottom: 5.5rem;
	}
	
	.timetable.open, .timetable {
		transform: translateY(2rem);
	  }
	
	#front-tabs-content .accordion-button {
	  font-size: 2rem;
	  line-height: 1;
	  padding: 1.5rem 2rem;
	}
	
	#front-tabs-content .accordion-button::before {
	  width: 20px;
	  height: 20px;
	  font-size: 20px;
	}
	
	.responsive-toolbar {
		padding: 0.75rem 2rem;
	}
	
	a.responsive-toolbar__item {
		width: 70px;
		font-size: 1.2rem;
	}
	
	.responsive-toolbar__item span {
		font-size: 10px;
	}
	
	a.responsive-toolbar__item.spacer {
		margin-right: calc(75px + 1.5rem);
	}
	
	a.responsive-toolbar__item.menu-item {
		height: 75px;
		width: 75px;
		font-size: 2rem;
	}
	
	.attraction-detail.grid-element .title {
		font-size: 1.5rem;
	}
	
	main h1 {
	  font-size: 2rem;
	}
	
	#close-menu {
	  position: absolute;
	  top: 1rem;
	  left: 1.5rem;
	}
	
	#chatbase-bubble-button {
		bottom:6rem !important;
		right: 2.5rem !important;
		/* width: 40px !important;
		height: 40px !important; */
	}
	
	#chatbase-bubble-button img {
		/* width: 40px !important;
		height: 40px !important; */
	}
	
}

@media (max-width: 575.98px) {
	
	.side-bar-footer {
	  display: flex;
	  flex-direction: column;
	}
	
	section.contact {
	  padding-bottom: 9rem;
	}
	
	body #moove_gdpr_save_popup_settings_button:not(.gdpr-floating-button-custom-position) {
	  bottom: 6rem;
	}
	
	.menu-side-panel .nav-link .city-name {
		font-size: 1rem;
		padding-top: 0.2rem;
	}
	
	.menu-side-panel .nav-link {
		width: 150px;
	}
	
	.logo > img {
		width: 100px;
	}
	
	.header-dates {
		padding-left: 100px;
		font-size: 0.9rem;
	 }
	  
	#front-tabs-content .accordion-button {
		font-size: 1.5rem;
		padding: 1rem 1.5rem;
	}
	
	#front-tabs-content .accordion-button::before {
		width: 15px;
		height: 15px;
		font-size: 15px;
	}
	
	.responsive-toolbar {
		padding: 0.75rem 1.5rem;
		width: 100%;
	}
	
	.responsive-toolbar > div {
		justify-content: space-between;
	}
	
	.responsive-toolbar__item span {
		display: none;
	}
	
	a.responsive-toolbar__item.menu-item {
		height: 65px;
		width: 65px;
		font-size: 2rem;
	}
	
	a.responsive-toolbar__item.spacer {
		margin-right: calc(65px + 1.5rem);
	}
	
	a.responsive-toolbar__item {
		width: 65px;
		font-size: 1.5rem;
	 }
	 
	 .hero-box {
		 padding: 1.5rem 0;
	 }
	 
	.responsive-timetable-day {
		font-size: 0.75rem;
	}
	
	.grid-element-search {
		width: 100%;
	}
	
		
	.timetable-table .cell div {
	  padding: 0.25rem;
	}
	
	#timetable-tabs.nav-pills .nav-link {
		font-size: 1rem;
		padding: 0.25rem 1.75rem;
	}
	
	.timetable-table .cell {
		display: table-cell;
		font-size: 0.85rem;
	}
	
	.timetable-inside {
		padding: 1.25rem 1rem 0rem 1rem;
	}
	
	#timetable-tabs {
	  row-gap: 0.75rem;
	}
	
	.timetable-footer {
	  height: 1.25rem;
	}
	  
	.anniversary {
		transform: translateX(-50%) translateY(92%);
		width: 70px;
		left: 50px;
		z-index: 0;
	}
	
	section.partners {
		padding: 1rem 0.5rem;
	 }
	 
	 .grid-element .title {
	   font-size: 1.25rem;
	 }
	 
	 .grid-element .subtitle,
	 .restauration .content p,
	 .restauration .content {
	   font-size: 1.1rem;
	 }
	 
	 .menu-side-panel .bellows.bellows-skin-blue-material .bellows-nav .bellows-item-level-0, .bellows.bellows-skin-blue-material .bellows-nav .bellows-item-level-0 {
	   font-family: var(--font-nunito);
	   font-weight: 900;
	   border-bottom: solid 1px white;
	   padding-left: 0;
	   font-size: 1.15rem;
	 }
	 
	 .menu-side-panel .bellows-submenu .bellows-target-title.bellows-target-text {
	   padding-left: 0rem;
	 }
	 
	#close-menu {
	  position: absolute;
	  top: .9rem;
	  left: 1.25rem;
	  font-size: 1.5rem;
	} 
	
}

@media (max-width: 400px) {
	#timetable-tabs.nav-pills .nav-link {
		padding: 0.25rem 1.25rem;
	}
}