@import url("variable.css");

* {
	outline-color: var(--bl-red) !important;
	outline-offset: 2px;
}

button {
	min-width: none;
	min-width: unset;
}

input:focus-visible,
select:focus-visible,
textarea:focus-visible,
.label-contact-radio input:focus-visible ~ .checkmark {
	outline: 1px auto var(--bl-red) !important;
}

.label-contact-radio input:focus-visible ~ .checkmark {
	outline-offset: 2px;
}

label.label-contact {
	text-transform: uppercase;
}

.list-style-lower-alpha {
	list-style-type: lower-alpha;
}

#ms-designer-ribbon {
	position: relative;
	z-index: 1000;
}

.ms-webpart-cell-horizontal {
	display: block;
}

.ms-webpartzone-cell {
	margin: 0;
}

h2,
h3,
.ms-h2,
.ms-h3,
.ms-headerFont {
	font-family: var(--bl-title-font);
	color: var(--bl-grey);
}

h1,
h2,
h3,
h4,
h5,
h6,
.ms-h1,
.ms-h2,
.ms-h3,
.ms-h4,
.ms-h5,
.ms-h6 {
	margin: unset;
}

input[type="button"]:active,
input[type="reset"]:active,
input[type="submit"]:active,
button:active {
	background-color: transparent;
	border-color: transparent;
}

input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover,
button:hover {
	background-color: transparent;
	border-color: transparent;
}

html {
	font-size: 15px;
	font-family: var(--bl-base-font);
}

.main {
	height: 100vh;
	font-family: var(--bl-base-font);
}

/*? GENERAL STYLE */
a {
	text-decoration: none !important;
}

a:visited {
	color: inherit !important;
}

button {
	min-width: unset !important;
	min-width: auto !important;
}

.title {
	color: var(--bl-white);
	font-family: var(--bl-title-font);
	font-size: 3.25rem;
	font-weight: 900;
	font-style: italic;
	line-height: 2.5rem;
}

h2.internal-headings {
	font-family: var(--bl-title-font) !important;
	color: var(--bl-red) !important;
}

.h-auto {
	height: auto;
	height: unset;
}

.no-uderline,
.no_underline * {
	text-decoration: none !important;
}

.desc {
	line-height: 1.5rem;
	margin-bottom: 0;
}

.bg-grey,
button.bg-grey,
button.bg-grey:active,
button.bg-grey:hover {
	position: relative;
	background-color: var(--bl-grey);
	color: var(--bl-white);
}

.bg-red {
	position: relative;
	background-color: var(--bl-red);
	color: var(--bl-white);
}

.bg-lighten-grey {
	position: relative;
	background-color: var(--bl-lighten-grey);
	color: var(--bl-grey);
}

.big-title {
	font-size: 3.75rem;
	line-height: 3rem;
}

.text-grey {
	color: var(--bl-grey) !important;
}

.text-white {
	color: var(--bl-white);
}

.img-panzoom {
	cursor: default !important;
}

.boxed-container {
	max-width: 1440px;
	margin-left: auto;
	margin-right: auto;
}

.object-fit-cover {
	object-fit: cover;
}

.object-fit-contain {
	object-fit: contain;
}

.object-fit-auto {
	object-fit: auto;
}

.object-position-left-top {
	object-position: left top;
}

.object-position-center-top {
	object-position: center top;
}

.object-position-right-top {
	object-position: right top;
}

.object-position-center-center {
	object-position: center top;
}

.object-position-left-bottom {
	object-position: left bottom;
}

.object-position-center-bottom {
	object-position: center bottom;
}

.object-position-right-bottom {
	object-position: right bottom;
}

/*? SPACING */

.spacing {
	padding: 8rem 2rem;
}

.spacing-l {
	padding-left: 2rem;
}

.spacing-r {
	padding-right: 2rem;
}

.spacing-x {
	padding-right: 2rem;
	padding-left: 2rem;
}

.spacing-y {
	padding-top: 8rem;
	padding-bottom: 8rem;
}

a.btn-wrapper {
	outline-offset: -1px;
}

a.btn-wrapper:focus-visible button {
	border-radius: 2px !important;
}

/*? BTN */

.btn {
	box-shadow: none !important;
	outline: none !important;
}

.btn:focus-visible {
	outline: 1px auto var(--bl-red) !important;
}

.btn-custom {
	width: 100%;
	border: 1px solid;
	border-color: var(--bl-red) !important;
	border-radius: 0;
	background-color: transparent !important;
	color: var(--bl-white);
	font-weight: 700;
	font-size: 0.7rem;
	line-height: 1rem;
	letter-spacing: 1.83px;
	padding: 1.5rem 3rem;
	transition: background-color 200ms ease-in;
}

.btn-custom:hover,
.btn-wrapper:focus-visible .btn-custom,
.btn-custom:active {
	border-color: var(--bl-red) !important;
	background-color: var(--bl-red) !important;
	color: var(--bl-white) !important;
	transition: background-color 200ms ease-in;
}

.btn-custom.btn-borderless {
	border-width: 1px;
	border-color: transparent !important;
	transition: border-color 200ms ease-in;
}

.btn-custom.btn-borderless:hover,
.btn-custom.btn-borderless:focus-visible,
.btn-custom.btn-borderless:active {
	border-color: var(--bl-red) !important;
	transition: border-color 200ms ease-in;
}

.carousel-control-next:focus-visible,
.carousel-control-next:active,
.carousel-control-next:hover,
.carousel-control-prev:focus-visible,
.carousel-control-prev:active,
.carousel-control-prev:hover {
	background-color: transparent !important;
	opacity: 0.9;
}

/*? ARROW-LINK */

.arrow-link {
	display: inline-flex;
	position: relative;
	align-items: center;
	margin: 1.75rem 0 4.25rem;
	color: var(--bl-white);
	text-decoration: none;
	font-size: 0.7rem;
	font-weight: 700;
	line-height: 1rem;
	letter-spacing: 2px;
}

.arrow-link:hover {
	color: var(--bl-white) !important;
}

.arrow-link:active {
	color: var(--bl-white) !important;
}

.arrow-link:visited {
	color: var(--bl-white) !important;
}

.arrow-link.grey {
	color: var(--bl-grey) !important;
}

.arrow-link.grey:hover {
	color: var(--bl-grey) !important;
}

.arrow {
	width: 3.25rem;
	height: 0.5rem;
	background-image: url("../assets/long-arrow-right.svg");
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	margin-left: 1rem;
}

.arrow-below {
	width: 0.75rem;
	height: 6rem;
	background-image: url("../assets/Freccia-below.svg");
	background-position: bottom;
	background-size: cover;
	background-repeat: no-repeat;
}

.mouse-icon {
	width: 1rem;
	height: 1.75rem;
	background-image: url("../assets/mouse-icon.svg");
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}

.arrow-link.grey .arrow {
	background-image: url("../assets/long-arrow-right-grey.svg");
}

/*? LAYER-FLAG */

.flag-layer-menu {
}

/*? LAYER-PLAY */
.layer-play {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	padding-right: 1rem;
	display: flex;
	align-items: center;
	justify-content: center;
}

/*? GREY MASK */

/*? BORDER TOP*/

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

/*? FONT STYLE */

.no-text {
	font-size: 0;
	line-height: 0;
	color: transparent;
}

.f-weight-900 {
	font-weight: 900;
}

/*? NOTIFICATION PANEL  */
.notification-panel {
	border-radius: 8px;
	text-align: center;
	font-size: 16px;
	font-size: 1rem;
	padding: 10px 6px;
	padding: 1rem 0.6rem;
}

.notification-panel.notification-error {
	color: #a94442;
	background-color: #f2dede;
	border: 1px solid #a94442;
}

.notification-panel.notification-success {
	color: #3c763d;
	background-color: #dff0d8;
	border-color: #d6e9c6;
}

/*! XS */

/*? HEADER */

.header {
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	height: 64px;
	color: var(--bl-white);
	font-weight: 600;
	z-index: 99;
	transition: background-color 200ms ease-in;
}

.header::after {
	content: "";
	height: 1px;
	width: 100%;
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 99;
	background-color: #c3c0c0;
}

.header-container {
	height: 100%;
	position: relative;
	padding: 0 2rem;
}

.header-container > a {
	width: min-content;
	padding: 0 4px !important;
}

.header-container > a:focus-visible {
	outline-offset: -2px;
	z-index: 100;
}

.header .logo {
	position: relative;
	z-index: 99;
	max-width: 188px;
	min-width: 184px;
	background-image: url("../assets/logo-white.svg");
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
}

.header.scroll {
	background-color: var(--bl-white);
	transition: background-color 200ms ease-in;
}

.header.scroll .trigger-offcanvas-menu-mobile .diagonal {
	background-color: var(--bl-grey);
}

.header.scroll .offcanvas-menu-md .offcanvas-menu-md-item label,
.header.scroll .offcanvas-menu-md .offcanvas-menu-md-item a,
.header.scroll .offcanvas-menu-md .offcanvas-menu-md-item .lang-select {
	color: var(--bl-grey) !important;
	transition: color 200ms ease-in, font-weight 200ms ease-in;
}

.header.scroll .offcanvas-menu-md .offcanvas-menu-md-item li a:hover,
.header.scroll .offcanvas-menu-md .offcanvas-menu-md-item .lang-select:hover,
.header.scroll .offcanvas-menu-md .offcanvas-menu-md-item li a:focus-visible,
.header.scroll .offcanvas-menu-md .offcanvas-menu-md-item .lang-select:focus-visible {
	font-weight: 600;
	transition: color 200ms ease-in, font-weight 200ms ease-in;
}

.header.scroll .logo {
	background-image: url("../assets/logo-colored.svg");
}

/*? BTN COLLAPSE */

.btn-collapse {
	position: relative;
	margin: 0.375rem 0;
	padding: 0;
}

.btn-collapse:first-of-type {
	margin-top: 0;
}

.btn-collapse:last-of-type {
	margin-bottom: 0;
}

/*? SOCIAL CONTAINER */

.social-container a {
	color: var(--bl-white) !important;
	font-size: 1.2rem;
	text-decoration: none;
}

.social-container a + a {
	margin-left: 1rem;
}

/*? HERO IMG */

.hero-container {
	position: relative;
}

.hero-container .hero-img-container {
	height: 100vh;
}

.hero-container .hero-img {
	width: 100%;
	height: 100vh;
	object-fit: cover;
}

.hero-container .hero-caption {
	position: absolute;
	left: 0;
	padding-top: 2rem;
	padding-bottom: 2rem;
	bottom: 4.25rem;
	color: var(--bl-white);
}

.hero-container .hero-caption > img {
	width: 240px;
}

.hero-container .hero-caption .title {
	margin-bottom: 0.75rem;
}

/*? CAROUSEL-CUSTOM-INDICATOR */
.carousel-custom-indicators {
	margin-left: 1rem;
	flex-wrap: nowrap;
}

.carousel-custom-indicators button,
.carousel-custom-indicators button:hover {
	padding: 0 0.5rem;
	border-radius: 0;
	flex: auto;
	flex: max-content;
	border: none;
	border-color: transparent;
}

.carousel-custom-indicators button:focus-visible {
	position: relative;
	z-index: 1;
	outline-offset: -2px;
}

.carousel-custom-indicators button:last-of-type {
	padding-right: 1rem;
}

.carousel-custom-indicators button span {
	color: var(--bl-grey-subtitle);
	font-size: 0.65rem;
	font-weight: 700;
	line-height: 1;
}

.carousel-custom-indicators button .slides-number {
	position: absolute;
	top: 2px;
	left: 4px;
	font-weight: 400;
}

.carousel-custom-indicators button .btn-content {
	pointer-events: none;
	padding: 1rem 0;
}

.carousel-custom-indicators button .btn-title {
	position: relative;
	display: inline-block;
	padding: 0 4px;
	text-align: center;
}

.carousel-custom-indicators button .btn-title::after {
	content: "";
	width: 0;
	height: 2px;
	position: absolute;
	bottom: -6px;
	left: 0px;
	right: 0px;
	background-color: var(--bl-red) !important;
	transition: width 200ms ease-in;
}

.carousel-custom-indicators button.active span {
	color: var(--bl-white);
}

.carousel-custom-indicators button.active .btn-title::after {
	width: 100%;
}

/*? CARD */

.card-container .card-description {
	height: 100%;
	padding-top: 2rem;
	padding-bottom: 2rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.card-container .card-description .up-title {
	font-size: 0.65rem;
	font-weight: 700;
	letter-spacing: 1.67px;
}

.card-container .reverse-row .card-description {
	padding-bottom: 0;
}

.card-container .card-description > p.desc {
	margin-bottom: 1rem !important;
}

.card-container .card-description > p:last-of-type {
	margin-bottom: 3rem !important;
}

.card-container .card-description .desc {
	line-height: 1.4rem;
	text-align: justify;
}

.card-container .card-description .row-btn > * {
	margin-bottom: 2rem;
}

.card-container .card-description .btn-card {
	color: var(--bl-grey);
}

.card-container .card-description .btn-card:hover {
	color: var(--bl-white);
}

.card-container .card-img-container {
	position: relative;
}

.card-container .card-img-container .card-img {
	height: 200px;
	object-fit: cover;
	object-position: center;
	border-radius: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}

.card-container .reverse-row .card-img-container .card-img {
	object-position: top;
}

/*? DATA */

.data-container {
	padding: 6rem 2rem;
	overflow: hidden;
}

.data-container .data-content {
	border-top: 2px solid;
	border-color: var(--bl-red);
}

.data-container .data-content + .data-content {
	margin-top: 3rem;
}

.data-container .data {
	position: relative;
	display: inline-block;
}

.data-container .data .value {
	font-size: 3.5rem;
	line-height: 3.75rem;
	position: relative;
}

.data-container .data .value span {
	position: static;
	font-size: 1.65rem;
	line-height: 1.5rem;
	top: 1rem;
	left: calc(100% + 0.3rem);
}

.data-container .data .sub-title,
.data-container .data .up-title {
	font-family: var(--bl-base-font);
	font-size: 0.75rem;
	font-weight: 700;
	line-height: 1rem;
	letter-spacing: 0.84px;
	color: var(--bl-grey-subtitle);
}

.data-container .data .up-title {
	font-size: 0.65rem;
	letter-spacing: 0.7px;
}

/*? OFFCANVAS MENU MOBILE */

#gearOffcanvasMenuMobile {
	transition: all 0.3s;
	box-sizing: border-box;
	display: none;
}

.trigger-offcanvas-menu-mobile {
	width: 40px;
	height: 40px;
	position: absolute;
	color: transparent;
	font-size: 0;
	line-height: 0;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	z-index: 99;
	cursor: pointer;
	transition: all 0.3s;
}

.trigger-offcanvas-menu-mobile .icon-offcanvas-menu-mobile {
	position: absolute;
	width: 100%;
	height: 1px;
	background-color: var(--bl-white);
	transition: all 0.3s;
}

.trigger-offcanvas-menu-mobile .horizontal {
	position: relative;
	margin-top: 1px;
	background-color: transparent;
	transition: all 0.3s;
}

.trigger-offcanvas-menu-mobile .diagonal.part-1 {
	position: relative;
	transition: all 0.3s;
}

.trigger-offcanvas-menu-mobile .diagonal.part-2 {
	position: relative;
	margin-top: 4px;
	transition: all 0.3s;
}

input[type="checkbox"]:checked ~ .trigger-offcanvas-menu-mobile > .horizontal {
	opacity: 0;
	transition: all 0.3s;
}

input[type="checkbox"]:checked ~ .trigger-offcanvas-menu-mobile > .diagonal.part-1 {
	margin-top: 2px;
	background-color: var(--bl-grey);
	transition: all 0.3s;
	transform: rotate(135deg);
}

input[type="checkbox"]:checked ~ .trigger-offcanvas-menu-mobile > .diagonal.part-2 {
	margin-top: -3px;
	background-color: var(--bl-grey);
	transition: all 0.3s;
	transform: rotate(-135deg);
}

input[type="checkbox"]:checked ~ .offcanvas-menu-mobile-content {
	transform: translateX(0);
}

.offcanvas-menu-mobile-content {
	height: calc(100% - 64px);
	position: fixed;
	right: 0;
	width: 100%;
	bottom: 0;
	padding-top: 0rem;
	transform: translateX(100%);
	transition: transform 250ms ease-in-out;
	background-color: var(--bl-grey);
	background-image: url("../assets/Bandiera.png");
	background-position: left top;
	background-size: cover;
	background-repeat: no-repeat;
	overflow-y: auto;
}

.offcanvas-menu-mobile-content .btn-offcanvas-section {
	color: var(--bl-white);
	font-weight: 600;
	font-size: 1.2rem;
}

.offcanvas-menu-mobile-content a {
	color: var(--bl-white);
	text-decoration: none;
	font-size: 1.2rem;
}

/*? OFFCANVAS MENU-MD */

.offcanvas-menu-md .offcanvas-menu-md-item {
	display: flex;
	height: 100%;
	align-items: center;
	position: relative;
	font-size: 0.8rem;
	font-weight: 700;
	z-index: 100;
	margin-left: 0.5rem;
}

.offcanvas-menu-md .offcanvas-menu-md-item::after {
	content: "";
	width: 0;
	height: 2px;
	position: absolute;
	right: 0;
	bottom: 1px;
	left: 4px;
	background-color: var(--bl-red);
	transition: all 200ms ease-in;
}

.offcanvas-menu-md .offcanvas-menu-md-item.default-active:not(.active):after {
	background-color: var(--bl-red-50);
}

.offcanvas-menu-md .offcanvas-menu-md-item.active::after,
.offcanvas-menu-md .offcanvas-menu-md-item.default-active::after {
	width: calc(100% - 8px);
	transition: all 200ms ease-in;
}

.offcanvas-menu-md .offcanvas-menu-md-item label,
.offcanvas-menu-md .offcanvas-menu-md-item a,
.offcanvas-menu-md .offcanvas-menu-md-item .lang-select {
	height: 100%;
	display: flex;
	align-items: center;
	cursor: pointer;
	text-decoration: none;
	color: var(--bl-white);
	padding-right: 4px;
	padding-left: 4px;
}

.offcanvas-menu-md .offcanvas-menu-md-item label:focus-visible,
.offcanvas-menu-md .offcanvas-menu-md-item a:focus-visible,
.offcanvas-menu-md .offcanvas-menu-md-item .lang-select:focus-visible {
	outline-offset: -2px;
}

.offcanvas-menu-md .offcanvas-menu-md-item .pages-list {
	width: 400%;
	position: absolute;
	top: 100%;
	right: 0;
	left: 0;
	list-style: none;
	padding: 0;
	opacity: 0;
	display: none;
	pointer-events: none;
	transition: opacity 200ms ease-in;
}

.offcanvas-menu-md .offcanvas-menu-md-item .pages-list li {
	margin-bottom: 0.5rem;
}

.offcanvas-menu-md .offcanvas-menu-md-item .pages-list a {
	color: var(--bl-grey);
	text-decoration: none;
	font-weight: 500;
	letter-spacing: 1.03px;
	cursor: pointer;
	display: inline;
	padding: 0;
}

.offcanvas-menu-md .offcanvas-menu-md-item .pages-list a:focus-visible {
	outline-offset: 2px;
}

.offcanvas-menu-md .offcanvas-menu-container {
	width: 100%;
	height: 220px;
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	z-index: 98;
	background-color: var(--bl-white);
	opacity: 0;
	pointer-events: none;
	transition: opacity 200ms ease-in;
}

.offcanvas-menu-md .offcanvas-backdrop {
	width: 100%;
	height: 100vh;
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	z-index: 97;
	background-color: transparent;
	opacity: 0;
	pointer-events: none;
	transition: opacity 200ms ease-in;
}

.offcanvas-menu-md input[type="checkbox"]:checked ~ .offcanvas-menu-md-item label {
	color: var(--bl-grey);
}

.offcanvas-menu-md input[type="checkbox"]:checked ~ .offcanvas-menu-container {
	opacity: 1;
	pointer-events: all;
	transition: opacity 200ms ease-in;
}

.offcanvas-menu-md input[type="checkbox"]:checked ~ .offcanvas-backdrop {
	opacity: 1;
	pointer-events: all;
	transition: opacity 200ms ease-in;
}

.offcanvas-menu-md .lang-select {
	position: relative;
	background: transparent;
	border: none;
	border-radius: 0;
	font-weight: 700;
	color: var(--bl-white);
}

.offcanvas-menu-md .lang-select option {
	color: var(--bl-grey);
}

/*? CAROUSEL */

#primaryCarousel.carousel .carousel-item .desc {
	padding-left: 0;
}

.carousel .carousel-indicators {
	margin: 0 2rem 6rem;
}

.carousel .carousel-indicators button {
	position: relative;
	width: 44px;
	margin: 0;
}

.carousel .carousel-indicators button + button {
	margin-left: 0.3rem;
}

.carousel .carousel-indicators button.active {
	width: 88px;
}

.carousel-indicators [data-bs-target] {
	text-indent: unset;
}

.carousel .carousel-indicators button .slides-number {
	position: absolute;
	top: 0.5rem;
	left: 0rem;
	color: var(--bl-white);
	font-size: 0.65rem;
	line-height: 1;
	font-weight: 700;
	display: none;
}

.carousel .carousel-indicators button.active .slides-number {
	display: block;
}

.carousel .custom-element {
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 2;
}

.carousel .custom-element .row-btn {
	width: auto;
	padding-top: 0;
	padding-bottom: 1rem;
}

.carousel .custom-element .social-container {
	padding-right: 3.2rem;
	padding-bottom: 1.1rem;
}

.carousel .custom-element .social-container a {
	opacity: 0.8;
	transition: opacity 200ms ease-in;
}

.carousel .custom-element .social-container a:hover {
	opacity: 1;
	transition: opacity 200ms ease-in;
}

.carousel .custom-element .carousel-control {
	position: static;
	width: 62px;
	height: 62px;
}

.carousel .custom-element .carousel-control + .carousel-control {
	margin-left: 1rem;
}

.carousel-control-prev:focus-visible .carousel-control-prev-icon,
.carousel-control-next:focus-visible .carousel-control-next-icon {
	outline: -webkit-focus-ring-color auto 1px;
}

.carousel .custom-element .carousel-control span {
	height: 62px;
	width: 100%;
	background-image: url("../assets/Arrow_sn.svg");
	background-size: contain;
	background-position: center left;
}

.carousel .custom-element .carousel-control .carousel-control-next-icon {
	transform: rotate(180deg);
}

/*? OFFERS */

.offers-section .offers-container {
	position: relative;
	margin-top: 5rem;
}

.offers-section .bg-b-big {
	min-height: 280px;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	z-index: 0;
	object-fit: contain;
}

.offers-section .offers-content {
	z-index: 1;
	padding: 60% 2rem 0;
	margin: 0;
}

.offers-section .offers-content .desc {
	margin-bottom: 2rem;
	line-height: 1.4rem;
}

.offers-section .offers-content .btn-wrapper:focus-visible button {
	border-color: var(--bl-red) !important;
	background-color: var(--bl-red) !important;
	color: var(--bl-white) !important;
	transition: background-color 200ms ease-in;
}

/*? CAROUSEL SLICK */

.carousel-slick-section .slick-slides {
	position: relative;
	padding-left: 2rem;
}

.carousel-slick-section + .carousel-slick-section > div {
	background-color: var(--bl-white) !important;
}

.carousel-slick-section + .carousel-slick-section .slick-slides {
	padding-top: 5rem;
}

.carousel-slick-section .slick-slides .slick-carousel {
	margin-bottom: 0;
	z-index: 2;
}

.carousel-slick-section .slick-slides .slick-slides-title {
	font-size: 2rem;
	line-height: 3.75rem;
	margin-bottom: 1rem;
	padding-left: 2rem;
}

.carousel-slick-section .slick-slide {
	position: relative;
}

.carousel-slick-section .slick-slide > img {
	height: 500px;
	width: 100%;
	position: relative;
	padding: 3px;
	padding-right: 1rem;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}

.carousel-slick-section .slick-slide:focus-visible {
	outline-offset: -2px;
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
}

.carousel-slick-section .slick-slide .slide-caption {
	position: absolute;
	right: 2rem;
	bottom: 2.75rem;
	left: 2rem;
}

.carousel-slick-section .slick-slide .slide-caption > div {
	margin-bottom: 2.8rem;
}

.carousel-slick-section .slick-slide .slide-caption .slides-control {
	margin-bottom: 0;
}

.carousel-slick-section .slick-slide .slide-caption .title {
	font-size: 2.5rem;
	line-height: 3.75rem;
	margin-bottom: 0;
	white-space: nowrap;
}

.carousel-slick-section .slick-slide .slide-caption .desc {
	width: 75%;
	font-size: 1.25rem;
	line-height: 1.45rem;
}

.carousel-slick-section .slick-slide .slide-caption a {
	display: inline-flex;
	position: relative;
	align-items: center;
	color: var(--bl-white);
	text-decoration: none;
	font-size: 0.65rem;
	font-weight: 700;
	line-height: 1rem;
	letter-spacing: 1.67px;
	padding-left: 1px;
}

.carousel-slick-section .slick-slide .slide-caption a .arrow {
	width: 5.4rem;
	margin-left: 1rem;
}

.carousel-slick-section .slick-carousel .slick-list {
	padding: 0 3% 0 0 !important;
	max-width: 90vw;
}

.carousel-slick-section .slick-slides .slick-footer {
	position: relative;
	z-index: 3;
	margin-top: 1rem;
	margin-bottom: 1rem;
	row-gap: 0.5rem;
	padding: 0 2rem;
	margin-right: calc(3% + 1.5rem);
}

.carousel-slick-section .slick-footer .slides-control .slides-arrow {
	width: 62px;
	height: 62px;
	background-color: transparent;
	background-image: url("../assets/Arrow_grey_sn.svg");
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
	border: none;
	font-size: 0;
	opacity: 0.5;
	transition: opacity 200ms ease-in;
}

.carousel-slick-section .slick-footer .slides-control .slides-arrow:hover,
.carousel-slick-section .slick-footer .slides-control .slides-arrow:focus-visible {
	opacity: 1;
	transition: opacity 200ms ease-in;
}

.carousel-slick-section .slick-footer .slides-control .slides-next {
	left: 5rem;
	transform: rotate(180deg);
}

.carousel-slick-section .slick-footer .slides-control .slides-arrow + .slides-arrow {
	margin-left: 1rem;
}

.carousel-slick-section .slick-slides .slick-footer .slick-slide-desc {
	color: var(--bl-grey-text);
}

.carousel-slick-section .slick-slides .slick-footer .slick-slide-desc p {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.carousel-slick-section .slick-slides .slick-footer .slick-slide-desc p.active {
	opacity: 1;
	transition: opacity 200ms ease-in;
}

.carousel-slick-section .slick-carousel-dots {
	position: relative;
	margin-left: 1.5rem;
}

.carousel-slick-section .slick-dots {
	display: flex;
	justify-content: end;
	bottom: unset;
}
.carousel-slick-section .dots-multiline {
	align-items: flex-start !important;
}

.carousel-slick-section .dots-multiline .slick-dots {
	flex-wrap: wrap;
	justify-content: flex-start !important;
}

.carousel-slick-section .dots-multiline .slick-dots .slick-active {
	max-width: 55px;
}

.carousel-slick-section .dots-multiline .slick-dots li:first-of-type {
	margin-left: 0.5rem;
}

.carousel-slick-section .slick-dots li {
	width: 75%;
	max-width: 55px;
	transition: all 250ms ease-in;
	margin: 0;
}

.carousel-slick-section .slick-dots li + li {
	margin-left: 0.5rem;
}

.carousel-slick-section .slick-dots li button:focus-visible {
	outline: -webkit-focus-ring-color auto 1px;
}

.carousel-slick-section .slick-dots li button::before {
	content: "";
	width: 100%;
	flex: 1;
	height: 2px;
	top: 50%;
	transform: translateY(-50%);
	background-color: var(--bl-grey);
	transition: all 250ms ease-in;
	opacity: 0.5;
}

.carousel-slick-section .slick-dots li button {
	width: 10px;
	padding: 0px 28px;
}

.carousel-slick-section .slick-dots li button span {
	position: absolute;
	font-size: 0.65rem;
	line-height: 0.8rem;
	color: var(--bl-grey);
	bottom: -6px;
	left: 0;
	opacity: 0;
	transition: opacity 200ms ease-in;
}

.carousel-slick-section .slick-dots .slick-active {
	width: 100%;
	max-width: 70px;
	transition: all 250ms ease-in;
}

.carousel-slick-section .slick-dots .slick-active button {
	padding: 0px 36px 28px;
}

.carousel-slick-section .slick-dots .slick-active button::before {
	width: 100%;
	opacity: 1;
	transition: all 250ms ease-in;
}

.carousel-slick-section .slick-dots .slick-active button::before {
	background-color: var(--bl-red) !important;
}

.carousel-slick-section .slick-dots .slick-active button span {
	opacity: 1;
	transition: opacity 200ms ease-in;
}

.carousel-slick-section .slick-slides .bg-white {
	height: 50%;
	width: 100%;
	position: absolute;
	bottom: 0;
	left: 0;
	background-color: var(--bl-white);
	z-index: 1;
}

/*? EVENTS, CONTACTS, MAP */

.events-section .events-container .title,
.red-section .red-container .title,
.map-section .map-container .title {
	font-size: 2.5rem;
	line-height: 2rem;
}

.events-section .events-container .bg-events,
.red-section .red-container .bg-red,
.map-section .map-container .bg-grey {
	width: 100%;
	background-image: url("../assets/Events.jpg");
	background-position: top left;
	background-size: cover;
	background-repeat: no-repeat;
}

.events-section .events-container .events-content,
.red-section .red-container .red-content,
.map-section .map-container .map-content {
	padding: 5rem 1.5rem;
	align-items: flex-end;
}

.events-section .events-container .events-content a {
	width: auto;
}

.events-section .events-container .events-content .desc,
.red-section .red-container .red-content .desc,
.map-section .map-container .map-content .desc {
	margin-bottom: 0;
}

.events-section .events-container .events-content .btn-wrapper:focus-visible .btn-events,
.events-section .events-container .events-content .btn-events:hover,
.events-section .events-container .events-content .btn-events:active,
.red-section .red-container .red-content .btn-wrapper:focus-visible .btn-red,
.red-section .red-container .red-content .btn-red:hover,
.red-section .red-container .red-content .btn-red:active,
.map-section .map-container .map-content .btn-wrapper:focus-visible .btn-grey,
.map-section .map-container .map-content .btn-grey:hover,
.map-section .map-container .map-content .btn-grey:active {
	background-color: var(--bl-white) !important;
	color: var(--bl-red) !important;
	transition: all 200ms ease-in;
}

.events-section .events-container .events-content .logo-container,
.red-section .red-container .red-content .logo-container,
.map-section .map-container .map-content .logo-container {
	display: flex;
	justify-content: flex-end;
	flex-direction: column;
}

.events-section .events-container .events-content .logo,
.red-section .red-container .red-content .logo,
.map-section .map-container .map-content .logo {
	margin-bottom: -6.5rem;
	max-width: 280px;
}

.red-section .red-container .red-content .btn-red,
.map-section .map-container .map-content .btn-grey {
	border: 1px solid;
	border-color: var(--bl-white) !important;
	border-radius: 0;
	background-color: var(--bl-red) !important;
	color: var(--bl-white);
	font-weight: 700;
	font-size: 0.7rem;
	letter-spacing: 1.83px;
	padding: 1.5rem 3rem;
	transition: background-color 200ms ease-in, color 200ms ease-in;
}

/*? EVENTS */

.events-section .events-container .events-content > div.row > * {
	margin-bottom: 3.5rem;
}

.events-section .events-container .events-content .btn-events {
	border-color: var(--bl-white) !important;
	background-color: var(--bl-red) !important;
	transition: background-color 200ms ease-in, color 200ms ease-in;
}

.info-section .card-container .card-description {
	padding-right: 2rem;
	padding-left: 2rem;
}

.card-section .card-container .card-description .title {
	font-size: 3.25rem;
	line-height: 3rem;
}

/*? CONTACTS */

.red-section .red-container {
	color: var(--bl-white);
}

.red-section .red-container .bg-red {
	background-image: none;
	background-color: var(--bl-red);
}

.red-section .red-container .red-content {
	padding: 3rem 1.5rem 5rem;
}

.red-section .red-container .desc {
	line-height: 1.4rem;
}

.red-section .red-container .red-content .d-flex {
	flex-direction: column;
}

.red-section .red-container .red-content .btn-red-container + .btn-red-container {
	margin-top: 2.2rem;
}

.red-section .red-container .red-content > div.row > * {
	padding-bottom: 1.2rem;
}

/*? MAP  */
.map-section .map-container .bg-grey {
	background-image: none;
	background-color: var(--bl-grey);
}

.map-section .map-container .map-content {
	padding: 3rem 1.5rem 0rem;
}

.map-section .map-container .map-content .btn-grey:hover {
	color: var(--bl-grey);
}

.map-section .map-container .map-content .btn-grey {
	background-color: var(--bl-grey) !important;
	position: relative;
}

.map-section .map-container .map-content .btn-grey .maps-icon {
	height: 30px;
	width: auto;
	padding: 0 !important;
}

.map-section .map-container .img-map {
	width: 100%;
	height: 100%;
}
.btn-map-container {
	outline-offset: 2px !important;
}

.btn-map-container span {
	padding-left: 0.5rem;
}

.map-section .map-container .map-content > div.row > * {
	padding-bottom: 1.2rem;
}

/*? CLICKABLE-CARD */

.clickable-card .card {
	background-color: transparent;
	border: none;
	justify-content: center;
	align-items: center;
	cursor: default;
	transition: background-color 250ms;
}

.clickable-card .card:link {
	cursor: pointer;
}

.clickable-card .card:link:hover {
	background-color: var(--bl-white);
	transition: background-color 250ms;
}

.clickable-card .card .card-img {
	width: 82px;
	height: 82px;
}

.clickable-card .card .card-title {
	font-size: 2rem;
	line-height: 1.5rem;
	min-height: 3rem;
}

.clickable-card .card .card-text {
	font-size: 1rem;
	line-height: 1.25rem;
	color: var(--bl-grey-text);
}

/*? PRE-FOOTER */

.pre-footer-container {
	margin-top: 0rem;
}

.pre-footer-container .pre-footer-content {
	position: relative;
}

.pre-footer-container .pre-footer-content .pre-footer-img {
	width: 100%;
	max-height: 400px;
	object-fit: cover;
}

.pre-footer-container .pre-footer-content .pre-footer-caption {
	position: absolute;
	z-index: 2;
	bottom: 0;
	width: 100%;
	padding-bottom: 3rem;
}

.pre-footer-container .pre-footer-content .pre-footer-caption .title {
	font-size: 3.2rem;
	line-height: 3.75rem;
}

.pre-footer-container .pre-footer-content .pre-footer-caption .arrow-link {
	margin-bottom: 0;
	letter-spacing: 1.83px;
}

.pre-footer-container .pre-footer-content .pre-footer-caption .arrow {
	width: 5.5rem;
}

/*? FOOTER */

.footer .footer-container {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	padding-top: 4.5rem;
	margin-bottom: 4.5rem;
}

.footer .footer-container .pages-list-container {
	font-size: 0.65rem;
}

.footer .footer-container .btn-collapse,
.footer .footer-container a {
	color: var(--bl-white);
	font-size: 0.65rem;
	font-weight: 700;
	letter-spacing: 1.54px;
	text-decoration: none;
	margin-bottom: 2rem;
	opacity: 1;
	transition: opacity 200ms ease-in;
}

.footer .footer-container .btn-collapse:hover,
.footer .footer-container a:hover {
	opacity: 0.8;
	transition: opacity 200ms ease-in;
}

.footer .footer-container .pages-list-container .pages-list.link {
	font-size: 0.65rem;
}

.footer .footer-container .btn-collapse i {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}

.footer .footer-container img {
	width: 250px;
	padding-bottom: 4rem;
}

.footer .footer-container .social-container a {
	font-size: 1.2rem;
}

.footer .copyright-container {
	background-color: var(--bl-dark-grey);
	padding: 1.2rem 0;
	font-size: 0.7rem;
	letter-spacing: 1.03px;
}

/*? MODAL-GALLERY */

.modal-gallery .modal-dialog {
	max-width: 100%;
	margin: 0;
}

.modal-gallery .modal-dialog .modal-content {
	height: 100vh;
	border: 0;
	border-radius: 0;
}

.modal-gallery .modal-dialog .modal-content .modal-header {
	position: absolute;
	width: 100%;
	border: 0;
	z-index: 2;
}

.modal-gallery .modal-header .btn-close,
.modal-gallery .modal-header .slider-indicators-container {
	height: 70px;
	width: 70px;
	background: var(--bl-grey) !important;
	padding: 0;
	margin: 0;
	font-size: 25px;
	color: var(--bl-white);
	border-radius: 0;
	opacity: 1;
	line-height: 1.5rem;
	border: 1px solid var(--bl-white);
}

.modal-gallery .modal-header .btn-close:focus-visible {
	box-shadow: none;
	outline: 1px auto var(--bl-red) !important;
}

.modal-gallery .modal-header .slider-indicators-container {
	width: 72px;
	height: 72px;
	font-size: 1rem;
	box-sizing: border-box;
	background-color: var(--bl-white) !important;
	color: var(--bl-grey);
}

.modal-gallery .carousel-control-next,
.modal-gallery .carousel-control-prev {
	width: auto;
	padding: 0 2rem;
}

.modal-gallery .carousel-control-next-icon,
.modal-gallery .carousel-control-prev-icon {
	width: 4rem;
	height: 4rem;
	background-image: url("../assets/Arrow_sn.svg");
	background-color: rgba(0, 0, 0, 0.24);
	border-radius: 100%;
}

.modal-gallery .carousel-control-next-icon {
	transform: rotate(180deg);
}

.modal-gallery .hero-img {
	object-fit: contain;
	display: flex;
	align-items: center;
	justify-content: center;
}

/*! A11Y */
.carousel-control:focus-visible {
	outline-offset: 3px;
}

.card-description .btn-wrapper:focus-visible {
	outline-color: var(--bl-grey) !important;
}

/*! PORTRAIT QUERY */

/*? IPAD */
@media only screen and (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {
	.apple .hero-container .hero-img {
		height: -webkit-fill-available !important;
	}

	.offers-section .offers-content {
		margin: 0 !important;
		padding-left: 2rem !important;
		padding-right: 1rem !important;
	}
}

/*! SM QUERY */
@media screen and (min-width: 576px) {
	.object-fit-sm-cover {
		object-fit: cover;
	}

	.object-fit-sm-contain {
		object-fit: contain;
	}

	.object-fit-sm-auto {
		object-fit: auto;
	}

	.object-position-sm-left-top {
		object-position: left top;
	}

	.object-position-sm-center-top {
		object-position: center top;
	}

	.object-position-sm-right-top {
		object-position: right top;
	}

	.object-position-sm-center-center {
		object-position: center top;
	}

	.object-position-sm-left-bottom {
		object-position: left bottom;
	}

	.object-position-sm-center-bottom {
		object-position: center bottom;
	}

	.object-position-sm-right-bottom {
		object-position: right bottom;
	}

	/*? EVENTS, CONTACTS, MAP */

	.events-section .events-container .events-content .logo,
	.red-section .red-container .red-content .logo,
	.map-section .map-container .map-content .logo {
		margin-bottom: -7rem;
		width: 324px;
	}
}

/*! MD QUERY */
@media screen and (min-width: 768px) {
	.object-fit-md-cover {
		object-fit: cover;
	}

	.object-fit-md-contain {
		object-fit: contain;
	}

	.object-fit-md-auto {
		object-fit: auto;
	}

	.object-position-md-left-top {
		object-position: left top;
	}

	.object-position-md-center-top {
		object-position: center top;
	}

	.object-position-md-right-top {
		object-position: right top;
	}

	.object-position-md-center-center {
		object-position: center top;
	}

	.object-position-md-left-bottom {
		object-position: left bottom;
	}

	.object-position-md-center-bottom {
		object-position: center bottom;
	}

	.object-position-md-right-bottom {
		object-position: right bottom;
	}

	.spacing {
		padding: 8rem 4rem;
	}

	.spacing-md-x,
	.spacing-x {
		padding-right: 4rem;
		padding-left: 4rem;
	}

	.spacing-l-md-x,
	.spacing-l {
		padding-left: 4rem;
	}

	.spacing-r-md-x,
	.spacing-r {
		padding-right: 4rem;
	}

	.title {
		font-size: 4.65rem;
	}

	.big-title {
		font-size: 4.5rem;
		line-height: 1;
	}

	.btn-custom {
		width: auto;
		letter-spacing: 1.5px;
	}

	/*? HEADER */
	.header-container {
		padding: 0 1.25rem;
	}

	.header::after {
		content: "";
		height: 1px;
		width: 100%;
		position: absolute;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 99;
		background-color: #c3c0c0;
	}

	/*? HERO IMAGE */

	.hero-container .hero-caption {
		top: 50%;
		transform: translateY(-50%);
		padding-top: 2rem;
		padding-bottom: 2rem;
		bottom: auto;
	}

	.hero-container .hero-caption > img {
		width: 320px;
	}

	.hero-container .hero-caption .title {
		line-height: 4rem;
		margin-bottom: 0.5rem;
	}

	/*? CARD */

	.card-container .card-description .row-btn > * {
		width: unset;
	}

	.card-container .card-description {
		padding-top: 2rem;
		padding-bottom: 1rem;
		min-height: 592px;
	}

	.card-container .card-description .btn-card {
		width: auto;
		padding: 1.5rem;
	}

	.card-container .reverse-row .card-img-container .card-img {
		object-position: right;
	}

	.card-container .card-img-container .card-img {
		height: 100%;
		position: absolute;
		top: 0;
	}

	/*? DATA */

	.data-container {
		padding: 6rem;
		row-gap: 2rem;
	}

	.data-container .data-content + .data-content {
		margin-top: 0;
	}

	.data-container .sub-title {
		font-size: 0.65rem;
		line-height: 1rem;
		letter-spacing: 0.4px;
	}

	.data-container .data.data-small.title {
		line-height: 1px;
	}

	.data-container .data.data-small .up-title {
		line-height: 1;
	}

	.data-container .data.data-small .value {
		white-space: normal;
		line-height: 1px;
		font-size: 1.5rem;
	}

	/*? CAROUSEL */

	.carousel .carousel-indicators {
		flex-direction: column;
		bottom: unset;
		left: unset;
		top: 50%;
		right: 0;
		transform: translateY(-50%);
		margin: 0 3rem 2.4rem;
	}

	.carousel .carousel-indicators button {
		width: 1px;
		height: 116px;
		border: 0;
	}

	.carousel .carousel-indicators button + button {
		margin-left: 0;
	}

	.carousel .carousel-indicators button.active {
		width: 1px;
		height: 116px;
	}

	.carousel .carousel-indicators button .slides-number {
		top: 0rem;
		left: 0.5rem;
	}

	/*? OFFERS */

	.bg-b-big ~ .offers-content .big-title {
		font-size: 3.5rem;
		line-height: 3rem;
	}

	.offers-section .bg-b-big {
		position: relative;
		margin-top: 3rem;
	}

	.offers-section .offers-content {
		padding: 0;
		padding-left: 2.5rem;
		padding-right: 1rem;
	}

	/*? CAROUSEL OFFERS */

	.carousel-slick-section .slick-slides {
		padding-left: 4rem;
	}

	.carousel-slick-section .slick-slide > img {
		padding-right: 2.5rem;
	}

	.slick-carousel .slick-slide .layer-play {
		padding-right: 2.5rem;
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.carousel-slick-section .slick-slide .slide-caption {
		bottom: 5.5rem;
	}

	.carousel-slick-section .slick-carousel .slick-list {
		padding: 0 !important;
		padding-right: 9% !important;
	}

	.carousel-slick-section .slick-slides > .title {
		margin-bottom: 2rem;
	}

	.carousel-slick-section .slick-slide .slide-caption .title {
		font-size: 3.2rem;
		margin: 2rem 0 1rem;
	}

	.carousel-slick-section .slick-slide .slide-caption .desc {
		font-size: 1.4rem;
		line-height: 1.75rem;
		letter-spacing: -0.17px;
	}

	.carousel-slick-section .slick-slides .slick-footer {
		margin-right: calc(9% + 2.5rem);
	}

	/*? EVENTS, CONTACTS, MAP */

	.events-section .events-container .events-content,
	.red-section .red-container .red-content,
	.map-section .map-container .map-content {
		padding: 5rem;
	}

	.events-section .events-container .title,
	.red-section .red-container .title,
	.map-section .map-container .title {
		font-size: 3.2rem;
		line-height: 2.65rem;
	}

	.events-section .events-container .events-content .logo,
	.red-section .red-container .red-content .logo,
	.map-section .map-container .map-content .logo {
		max-width: 472px;
		margin-bottom: -7.75rem;
	}

	/*? INFO */

	.info-section .card-container .card-description {
		padding-right: 2rem;
		padding-left: 1rem;
	}

	.info-section .card-container .reverse-row .card-description {
		padding-right: 2rem;
		padding-left: 1rem;
	}

	/*? CONTACTS, MAP */
	.red-section .red-container .red-content .btn-red,
	.map-section .map-container .map-content .btn-grey {
		padding: 1.5rem;
	}

	/*? CONTACTS */

	.red-section .red-container .red-content .d-flex {
		flex-direction: row;
	}

	.red-section .red-container .red-content .btn-red-container + .btn-red-container {
		margin-left: 2.2rem;
		margin-top: 0;
	}

	.data-container .data .value span {
		position: absolute;
	}

	/*? FOOTER */

	.footer .footer-container {
		padding-top: 4rem;
		margin-bottom: 4rem;
		align-items: start;
	}

	.footer .footer-container .pages-list-container {
		letter-spacing: 1.1px;
	}

	.footer .footer-container .pages-list-container + .pages-list-container {
		margin-left: 1.5rem;
	}

	.footer .footer-container .pages-list-container span {
		cursor: default;
		font-weight: 700;
	}

	.footer .footer-container .pages-list-container .pages-list {
		list-style: none;
		padding: 0;
	}

	.footer .footer-container .pages-list-container .pages-list.link a,
	.footer .footer-container .pages-list-container .pages-list.link a:hover {
		font-weight: 700;
		opacity: 1;
	}

	.footer .footer-container .pages-list-container .pages-list a {
		font-weight: 400;
		opacity: 1;
		transition: opacity 200ms ease-in;
	}

	.footer .footer-container .pages-list-container .pages-list a:hover {
		font-weight: 400;
		opacity: 0.8;
		transition: opacity 200ms ease-in;
	}

	.footer .footer-container .social-container {
		flex-direction: column;
		position: absolute;
		right: 0.875rem;
		bottom: -2.5rem;
	}

	.footer .footer-container .social-container a {
		margin-bottom: 0;
	}

	.footer .footer-container .social-container a + a {
		margin-left: 0;
	}

	.footer .copyright-container {
		padding: 2rem 5.75rem;
	}

	.footer .copyright-container a {
		color: var(--bl-white);
		font-weight: 700;
		text-decoration: none;
		opacity: 0.7;
		transition: opacity 200ms ease-in;
	}

	.footer .copyright-container a {
		opacity: 1;
		transition: opacity 200ms ease-in;
	}

	.footer .copyright-container .copyright-md span + span,
	.footer .copyright-container a + a {
		margin-left: 1.2rem;
	}

	.modal-gallery .hero-img {
		object-fit: cover;
	}
}

/*! LG QUERY */
@media screen and (min-width: 992px) {
	.object-fit-lg-cover {
		object-fit: cover;
	}

	.object-fit-lg-contain {
		object-fit: contain;
	}

	.object-fit-lg-auto {
		object-fit: auto;
	}

	.object-position-lg-left-top {
		object-position: left top;
	}

	.object-position-lg-center-top {
		object-position: center top;
	}

	.object-position-lg-right-top {
		object-position: right top;
	}

	.object-position-lg-center-center {
		object-position: center top;
	}

	.object-position-lg-left-bottom {
		object-position: left bottom;
	}

	.object-position-lg-center-bottom {
		object-position: center bottom;
	}

	.object-position-lg-right-bottom {
		object-position: right bottom;
	}

	.big-title {
		font-size: 5.25rem;
		line-height: 1;
	}

	.spacing {
		padding: 8rem 7rem;
	}

	.spacing-lg-x,
	.spacing-x {
		padding-right: 7rem;
		padding-left: 7rem;
	}

	.spacing-l-lg-x,
	.spacing-l {
		padding-left: 7rem;
	}

	.spacing-r-lg-x,
	.spacing-r {
		padding-right: 7rem;
	}

	.arrow-link {
		margin: 2.7rem 0 4rem;
	}

	.arrow {
		width: 7rem;
	}

	/*? HEADER */

	.header-container {
		padding: 0 3.75rem;
	}

	/*? HERO IMAGE */

	.hero-container .hero-caption {
		padding-top: 4rem;
	}

	/*? CARD */

	.card-container .reverse-row .card-img-container .card-img {
		object-position: right top;
	}

	/*? DATA */

	.data-container {
		padding: 6rem 8rem;
	}

	.data-container .data .value {
		font-size: 4rem;
	}

	.data-container .data-content + .data-content {
		margin-left: 1rem;
	}

	/*? PRIMO CAROUSEL */

	.carousel .custom-element .social-container {
		padding-bottom: 0.75rem;
	}

	/*? OFFERS */

	.bg-b-big ~ .offers-content .big-title {
		font-size: 4.2rem;
		line-height: 3.5rem;
	}

	.offers-section .offers-content {
		margin: 0 auto;
		padding: 0;
	}

	/*? CAROUSEL OFFERS */

	.carousel-slick-section .slick-slides {
		padding-left: 7rem;
	}

	.carousel-slick-section .slick-slides .slick-slides-title {
		padding-left: 2.75rem;
	}

	.carousel-slick-section .slick-carousel .slick-list {
		padding: 0 !important;
		padding-right: calc(13% - 2px) !important;
	}

	.carousel-slick-section .slick-slide .slide-caption {
		right: 5.5rem;
		bottom: 5.5rem;
		left: 5.5rem;
	}

	.carousel-slick-section .slick-slides .slick-footer {
		flex-direction: row;
		padding: 0;
		margin-right: calc(13% - 2px + 2.5rem) !important;
	}

	.carousel-slick-section .slick-slides .slick-footer .slick-slide-desc {
		margin-bottom: 0;
		padding-left: 1.5rem;
	}

	.carousel-slick-section .slick-dots {
		justify-content: center;
		width: auto;
		width: unset;
	}

	/*? EVENTS, CONTACTS */

	.events-section .events-container .events-content,
	.red-section .red-container .red-content,
	.map-section .map-container .map-content {
		padding: 5rem;
		padding-right: 1rem;
	}

	.events-section .events-container .events-content .logo,
	.red-section .red-container .red-content .logo,
	.map-section .map-container .map-content .logo {
		width: 100%;
		margin-bottom: -7.25rem;
	}

	/*? CONTACTS */

	.red-section .red-container .red-content .d-flex {
		flex-direction: column;
	}

	.red-section .red-container .red-content .btn-red-container + .btn-red-container {
		margin-top: 2.2rem;
		margin-left: 0;
	}

	/*? MAP */

	.map-section .map-container .map-content {
		padding-bottom: 5rem;
	}

	/*? FOOTER */

	.footer .footer-container {
		padding-top: 4rem;
		margin-bottom: 4rem;
		align-items: start;
		position: relative;
	}

	.footer .footer-container .pages-list-container + .pages-list-container {
		margin-left: 4rem;
	}

	.footer .footer-container .social-container {
		right: 1.75rem;
	}

	.footer .copyright-container {
		padding: 2rem 10rem;
	}
}

/*! XL QUERY */
@media screen and (min-width: 1200px) {
	.object-fit-xl-cover {
		object-fit: cover;
	}

	.object-fit-xl-contain {
		object-fit: contain;
	}

	.object-fit-xl-auto {
		object-fit: auto;
	}

	.object-position-xl-left-top {
		object-position: left top;
	}

	.object-position-xl-center-top {
		object-position: center top;
	}

	.object-position-xl-right-top {
		object-position: right top;
	}

	.object-position-xl-center-center {
		object-position: center top;
	}

	.object-position-xl-left-bottom {
		object-position: left bottom;
	}

	.object-position-xl-center-bottom {
		object-position: center bottom;
	}

	.object-position-xl-right-bottom {
		object-position: right bottom;
	}

	.card-container .card-description {
		padding-right: 5rem;
		padding-left: 5rem;
	}

	/*? HEADER */
	.header-container {
		padding: 0 5rem;
	}

	.bg-b-big ~ .offers-content .big-title {
		font-size: 5rem;
		line-height: 4rem;
	}

	/*? OFFERS CAROUSEL*/
	.carousel-slick-section .slick-slides .slick-footer {
		flex-direction: row;
		padding: 0 2.75rem;
		padding-right: 0;
		margin-right: calc(13% - 2px + 2.5rem) !important;
	}

	/*? EVENTS, CONTACTS */

	.events-section .events-container .events-content,
	.red-section .red-container .red-content,
	.map-section .map-container .map-content {
		padding: 5rem;
		padding-right: 1rem;
	}

	/*? CONTACTS */

	.red-section .red-container .red-content .d-flex {
		flex-direction: row;
	}

	.red-section .red-container .red-content .btn-red-container + .btn-red-container {
		margin-left: 2.2rem;
		margin-top: 0;
	}
}

/*! XXL QUERY */
@media screen and (min-width: 1400px) {
	.object-fit-xl-cover {
		object-fit: cover;
	}

	.object-fit-xl-contain {
		object-fit: contain;
	}

	.object-fit-xl-auto {
		object-fit: auto;
	}

	.object-position-xl-left-top {
		object-position: left top;
	}

	.object-position-xl-center-top {
		object-position: center top;
	}

	.object-position-xl-right-top {
		object-position: right top;
	}

	.object-position-xl-center-center {
		object-position: center top;
	}

	.object-position-xl-left-bottom {
		object-position: left bottom;
	}

	.object-position-xl-center-bottom {
		object-position: center bottom;
	}

	.object-position-xl-right-bottom {
		object-position: right bottom;
	}

	.bg-b-big ~ .offers-content .big-title {
		font-size: 5.25rem;
		line-height: 4rem;
	}

	/*? OFFERS CAROUSEL */

	.offers-section .offers-content {
		margin-left: auto;
	}

	/*? OFFERS CAROUSEL */

	.carousel-slick-section .slick-slides .slick-footer {
		padding-right: 2.75rem;
	}
}

/*! VARIABLE QUERY */

@media screen and (min-width: 1450px) {
	.boxed-container {
		padding-right: 0;
		padding-left: 0;
	}
}

@media screen and (min-width: 1100px) {
	/*? MENU MD */
	.offcanvas-menu-md .offcanvas-menu-md-item + .offcanvas-menu-md-item {
		margin-left: 3rem;
	}
}

@media screen and (max-width: 938px) {
	.flag-layer {
		background-position: left top;
		background-size: cover;
	}
}

@media screen and (max-width: 767px) {
	.carousel .carousel-indicators button {
		transition: width 250ms ease-in;
	}

	.carousel .carousel-indicators button.active {
		transition: width 250ms ease-in;
	}
}

@media screen and (max-width: 576px) {
	.card-container .card-description {
		padding-right: 2rem;
		padding-left: 2rem;
	}
}

@media screen and (max-width: 545px) {
	.carousel-slick-section .slick-slides .slick-footer {
		padding: 0;
	}
}

@media screen and (max-width: 475px) {
	.carousel-slick-section .slick-slide .slide-caption {
		right: 1rem;
		bottom: 1.75rem;
		left: 1rem;
	}

	.carousel-slick-section .slick-slides .slick-footer .slick-footer-nav {
		flex-direction: column-reverse;
		align-items: center;
	}

	.carousel-slick-section .slick-carousel-dots {
		width: 100%;
		margin: 0;
		padding: 0 0 1rem;
	}

	.carousel-slick-section .slick-dots {
		justify-content: center;
		position: static;
	}
}

@media screen and (max-width: 420px) {
	.offers-section .offers-content {
		padding: 58% 2rem 0;
	}
}

@media screen and (max-width: 400px) {
	.apple .hero-container .hero-img {
		height: -webkit-fill-available !important;
	}

	html {
		font-size: 12px;
	}

	.offers-section .offers-content {
		padding: 67% 2rem 0;
	}

	.offcanvas-menu-mobile-content {
		padding-right: 0.5rem !important;
		padding-left: 0.5rem !important;
	}
}

.not-supported {
	text-align: center;
	font-family: var(--bl-base-font);
}

.not-supported .wrapper {
	position: relative;
}

.not-supported h1 {
	font-weight: 700;
	font-family: var(--bl-base-font);
}

.not-supported h2 {
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 400;
	font-family: var(--bl-base-font);
	color: rgba(0, 0, 0, 0.54);
}

.not-supported .not-supported__wrapper {
	position: fixed;
	top: 50%;
	left: 50%;
	height: 500px;
	width: 960px;
	margin-top: -250px;
	margin-left: -480px;
	padding: 48px;
	border-radius: 2px;
	background-color: #fff;
	box-shadow: 0 3px 1px -2px rgba(0, 0, 0, 0.14), 0 2px 2px 0 rgba(0, 0, 0, 0.098), 0 1px 5px 0 rgba(0, 0, 0, 0.084);
}

.not-supported .not-supported__links {
	margin-top: 48px;
	font-family: var(--bl-base-font);
}

.not-supported .not-supported__links:after {
	clear: both;
	content: "";
	display: table;
}

.not-supported .not-supported__links a {
	font-family: var(--bl-base-font);
	float: left;
	width: 25%;
	text-decoration: none;
}

.not-supported .not-supported__links a img {
	width: 80px;
	margin: 0 auto;
}

.not-supported .not-supported__links a span {
	display: block;
	margin-top: 16px;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 500;
	color: rgba(0, 0, 0, 0.54);
	text-transform: uppercase;
	text-align: center;
}

.not-supported .not-supported__infos {
	margin-top: 32px;
	padding: 16px;
	background-color: #f5f5f5;
}

.not-supported .not-supported__infos p {
	color: rgba(0, 0, 0, 0.54);
}

@media (max-width: 1023px) {
	.not-supported .wrapper {
		margin: 0 24px;
	}
}

@media (min-width: 1024px) {
	.not-supported .wrapper {
		margin: 0 auto;
		width: 960px;
	}
}

/* ------------- target 200% a 400% ---------------*/
@media only screen and (min-width: 150px) and (max-width: 640px) and (-webkit-min-device-pixel-ratio: 1) and (orientation: landscape) {
	html {
		font-size: 14px;
	}

	.header {
		height: 56px;
		position: absolute;
	}

	.offcanvas-menu-mobile-content {
		height: calc(100% - 56px);
	}

	.hero-container .hero-caption {
		bottom: 50%;
		transform: translateY(50%);
		padding-bottom: 0;
	}

	.arrow-link {
		margin: 1.75rem 0 2.25rem;
	}

	.carousel .carousel-indicators {
		margin-bottom: 3rem;
	}

	.carousel-slick-section .slick-slide > img {
		height: 200px;
	}

	.carousel-slick-section .slick-slide .slide-caption > div {
		margin-bottom: 1.5rem;
	}

	.events-section .events-container .events-content,
	.red-section .red-container .red-content,
	.map-section .map-container .map-content {
		padding: 2rem 1.5rem;
	}

	.events-section .events-container .events-content > div.row > * {
		margin-bottom: 2rem;
	}

	.pre-footer-container .pre-footer-content .pre-footer-img {
		max-height: 288px;
	}

	.arrow-below {
		height: 4rem;
	}

	.interactive-svg-container.location-interactive-svg .carousel .carousel-inner .carousel-item .detail {
		height: 170px;
	}

	.carousel-slick-section {
		align-items: flex-start !important;
	}

	.carousel-slick-section .slick-dots {
		flex-wrap: wrap;
		justify-content: flex-start !important;
	}

	.carousel-slick-section .slick-dots li:first-of-type {
		margin-left: 0.5rem;
	}

	.modal-gallery .carousel-inner {
		background-color: var(--bl-grey);
	}

	.tracks-container .carousel-control-next .carousel-control-next-icon,
	.tracks-container .carousel-control-prev .carousel-control-prev-icon,
	.interactive-svg-container .carousel-control-prev .carousel-control-prev-icon,
	.interactive-svg-container .carousel-control-next .carousel-control-next-icon,
	.carousel-slick-section .slick-footer .slides-control .slides-arrow,
	.modal-gallery .carousel-control-next-icon,
	.modal-gallery .carousel-control-prev-icon {
		height: 44px;
		width: 44px;
	}

	.mouse-icon-container {
		display: none;
	}

	.modal-gallery .modal-header .btn-close,
	.modal-gallery .modal-header .slider-indicators-container {
		height: 38px;
		width: 38px;
	}

	.modal-gallery .modal-header .slider-indicators-container {
		height: 40px;
		width: 40px;
	}
}
/* ------------- target 250% a 400% ---------------*/
@media only screen and (min-width: 150px) and (max-width: 512px) and (-webkit-min-device-pixel-ratio: 1) and (orientation: landscape) {
	html {
		font-size: 12px;
	}

	.slick-slide .slide-caption h3.title {
		white-space: normal;
	}

	.modal-gallery .modal-header .btn-close,
	.modal-gallery .modal-header .slider-indicators-container {
		height: 34px;
		width: 34px;
	}

	.modal-gallery .modal-header .slider-indicators-container {
		height: 36px;
		width: 36px;
	}

	.carousel-slick-section .slick-slide .slide-caption .title {
		white-space: normal;
	}
}

/* ------------- 400% ---------------*/
@media only screen and (min-width: 150px) and (max-width: 320px) and (-webkit-min-device-pixel-ratio: 1) and (orientation: landscape) {
	html {
		font-size: 9px;
	}

	.title {
		font-size: 2.25rem;
	}

	.header {
		height: 36px;
	}

	.offcanvas-menu-mobile-content {
		height: calc(100% - 36px);
	}

	.carousel .carousel-indicators {
		margin-bottom: 0rem;
	}

	.arrow-link {
		margin: 1rem 0 2.25rem;
	}

	.hero-container .hero-caption > img {
		width: 200px;
	}

	.modal-gallery .modal-header .btn-close,
	.modal-gallery .modal-header .slider-indicators-container {
		height: 18px;
		width: 18px;
		font-size: 15px;
	}

	.modal-gallery .modal-header .slider-indicators-container {
		height: 20px;
		width: 20px;
		font-size: 0.75rem;
	}

	.tracks-container .carousel-control-next .carousel-control-next-icon,
	.tracks-container .carousel-control-prev .carousel-control-prev-icon,
	.interactive-svg-container .carousel-control-prev .carousel-control-prev-icon,
	.interactive-svg-container .carousel-control-next .carousel-control-next-icon,
	.carousel-slick-section .slick-footer .slides-control .slides-arrow {
		height: 36px !important;
		width: 36px !important;
	}

	.modal-gallery .carousel-control-next,
	.modal-gallery .carousel-control-prev {
		padding: 0 0.5rem;
	}

	.modal-gallery .carousel-control-next-icon,
	.modal-gallery .carousel-control-prev-icon {
		height: 24px !important;
		width: 24px !important;
	}
}
