/* Masonry Tacca — stili base (le personalizzazioni sono gestite dai controlli di stile di Elementor) */

.tacca-masonry {
	--tacca-masonry-columns: 3;
	--tacca-masonry-gap: 20px;
}

/* Fallback senza JS: colonne CSS (ordine dall'alto verso il basso) */
.tacca-masonry:not( .tacca-masonry--js ) {
	column-count: var( --tacca-masonry-columns );
	column-gap: var( --tacca-masonry-gap );
}

.tacca-masonry:not( .tacca-masonry--js ) .tacca-masonry__item {
	break-inside: avoid;
	margin-bottom: var( --tacca-masonry-gap );
}

/* Layout JS: colonne flex riempite da sinistra a destra sulla colonna più corta */
.tacca-masonry--js {
	display: flex;
	align-items: flex-start;
	gap: var( --tacca-masonry-gap );
}

.tacca-masonry__column {
	display: flex;
	flex: 1 1 0;
	flex-direction: column;
	gap: var( --tacca-masonry-gap );
	min-width: 0;
}

.tacca-masonry__item {
	margin: 0;
	min-width: 0;
}

.tacca-masonry__media {
	display: block;
	position: relative;
	overflow: hidden;
	border-radius: 20px;
	/* Evita che lo zoom dell'immagine "esca" dagli angoli arrotondati su Safari */
	isolation: isolate;
}

.tacca-masonry__media img {
	display: block;
	width: 100%;
	height: auto;
	max-width: none;
	transition: transform 0.6s ease, filter 0.3s ease;
}

.tacca-masonry--zoom-yes .tacca-masonry__item:hover .tacca-masonry__media img {
	transform: scale( 1.06 );
}

.tacca-masonry__caption {
	margin-top: 10px;
}

a.tacca-masonry__media:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 4px;
}

/* Lightbox del widget: niente tasto di condivisione né didascalia */
[id^="elementor-lightbox-slideshow-tacca-masonry-"] .elementor-slideshow__share-menu,
[id^="elementor-lightbox-slideshow-tacca-masonry-"] .eicon-share-arrow,
[id^="elementor-lightbox-slideshow-tacca-masonry-"] .elementor-slideshow__footer {
	display: none !important;
}
