/**
 * Mappa e spinner caricamento pagina.
 */

 .google-map{
    width: 100%;
    min-height: 307px;
	 position: relative;
	border-radius: 20px;
}

/* contenitore generale della mappa */
.mappa-contatti {
    margin: 40px auto 60px;      /* distanze sopra/sotto, regola a gusto */
}

/* wrapper responsivo con angoli arrotondati */
.mappa-contatti__inner {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 30%;         /* altezza relativa: 30% ≈ barra larga e bassa */
    overflow: hidden;
    border-radius: 24px;         /* come nello screenshot */
}

/* l'iframe riempie tutto il wrapper */
.mappa-contatti__inner iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
    display: block;
}

.spinner-wrapper {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 999999;
	background: var(--white-color);
	display: flex;
	justify-content: center;
	align-items: center;
}
.spinner-border {
    border: var(--bs-spinner-border-width) solid var(--primary-color);
    border-right-color: var(--primary-color-light);
}

/*----------------------
------ANIMAZIONI-----------
------------------------*/

.fade-in {
	opacity: 0;
    transition: all 2s cubic-bezier(.215,.60,.355,1);
}
.fade-in.in-page {
	opacity: 1;
} 

.fade-in-top {
	opacity: 0;
    transform: translateY(10vh);
    transition: all 1s cubic-bezier(.215,.60,.355,1);
}
.fade-in-top.in-page {
	opacity: 1;
    transform: translateY(0);
} 
.fade-in-top.in-page {
	opacity: 1;
    transform: translateY(0);
} 
.fade-in-left {
    opacity: 0;
    transform: translateX(-10vw);
	transition: all 1s cubic-bezier(.215,.60,.355,1);
	overflow: hidden;
} 
.fade-in-left.in-page {
    opacity: 1;
    transform: translateX(0);
} 
.fade-in-right {
    opacity: 0;
    transform: translateX(10vw);
	transition: all 1s cubic-bezier(.215,.60,.355,1);
	overflow: hidden;
} 
.fade-in-right.in-page {
    opacity: 1;
    transform: translateX(0);
} 
.transition-delay-0 {
	transition-delay: 0ms;
}
.transition-delay-1 {
	transition-delay: 100ms;
}
.transition-delay-2 {
	transition-delay: 200ms;
}
.transition-delay-3 {
	transition-delay: 300ms;
}
.transition-delay-4 {
	transition-delay: 400ms;
}
.transition-delay-5 {
	transition-delay: 500ms;
}
.transition-delay-6 {
	transition-delay: 600ms;
}
.transition-delay-7 {
	transition-delay: 700ms;
}
.transition-delay-8 {
	transition-delay: 800ms;
}
.transition-delay-9 {
	transition-delay: 900ms;
}
.transition-delay-10 {
	transition-delay: 1000ms;
}

/*----------------------
---ALTEZZE + LARGHEZZE----
------------------------*/
.w-100 {
    height: auto;
}
.h-100 {
    width: auto;
}
.min-height-page {
    min-height: 60vh;
}

.splide__arrow:disabled {
    display: none;
}

.splide__arrow--prev {
	left: -30px;
}
.splide__arrow--next {
	right: -30px;
}

#gallery .splide__arrow--next {
    /* right: 45px !important; */
	right: -56px !important;
}
#gallery .splide__arrow--prev {
    /* left: 45px !important; */
	left: -56px !important;
}
.splide__pagination__page {
	opacity: 1;
    background: var(--primary-color-light);
}
#gallery .splide__pagination__page {
	bottom: -2.5em;
}

.splide__pagination__page.is-active {
    background: var(--primary-color);
}
.index-99 {
	z-index: 99;
}