/* ----------------------------------------------------------------
	Custom CSS

	Add all your Custom Styled CSS here for New Styles or
	Overwriting Default Theme Styles for Better Handling Updates
-----------------------------------------------------------------*/
:root {
	//--cnvs-header-height: 15rem;
}
html,
body {
	max-width: 100%;
	overflow-x: hidden;
}

.swiper-parent .swiper-slide {
	cursor: pointer !important;
  }

/*body:not(.device-touch) .slider-element .swiper,
.slider-element .swiper * {
	cursor: none !important;
}*/
body:not(.device-touch) .canvas-cursor {
	pointer-events: none;
	position: fixed;
	top: 0;
	left: 0;
	transform: translate3d(0, 0, 0);
	z-index: 999999;
	transition: transform .05s ease;
}

body:not(.device-touch) .canvas-cursor-follower {
	position: fixed;
	opacity: 1;
	top: 0;
	left: 0;
	transform: translate(-50%, -50%) scale(0);
	transition: opacity .2s,
		transform .2s cubic-bezier(0.215, 0.61, 0.355, 1),
		-webkit-transform .2s cubic-bezier(0.215, 0.61, 0.355, 1);
}

body:not(.device-touch) .swiper:hover .canvas-cursor-follower {
	opacity: 1;
	transform: translate(-50%, -50%) scale(1);
}

body:not(.device-touch) .swiper:hover .canvas-cursor-follower circle {
	background: rgba(var(--cnvs-themecolor-rgb), 0.3);
	fill: rgba(var(--cnvs-themecolor-rgb), 0.3);
}

body:not(.device-touch) .swiper:hover .canvas-cursor-right .canvas-cursor-follower {
	transform: translate(-50%, -50%) scale(1) rotate(180deg);
}

body:not(.device-touch) .canvas-cursor-action .canvas-cursor-follower {
	width: 3rem;
	height: 3rem;
	border-color: transparent;
}

.swiper-pagination {
	position: relative;
	bottom: 0 !important;
	margin-top: 20px;
}

.swiper-pagination span {
	border-color: #000 !important;
}

.swiper-pagination span:hover,
.swiper-pagination span.swiper-pagination-bullet-active {
	background-color: #000 !important;
}

.grid-inner {
	height: 400px;
}

@media (max-width: 768px) {
	.grid-inner {
		aspect-ratio: 4/3;
		height: fit-content;
	}
	.swiper-slide{
		height: 40vh;
	}
}
@media (min-width: 768px) {
	.mw-md-75 { max-width: 75% !important; }
	.swiper-slide{
		height: 60vh;
	}
}

.block-gallery-9 .entry-title h3 {
	text-transform: none;
	font-weight: 500;
	letter-spacing: 0;
}

.block-gallery-9 .entry-title:hover h3 a {
	color: #DDD
}

.block-gallery-9 .btn-more {
	opacity: 0;
	font-size: 1.5rem;
	color: #FFF;
	margin-top: 15px;
	transition: opacity .3s ease;
}

.block-gallery-9 .grid-item .bg-overlay-content {
	top: auto;
	bottom: -40px;
	transition: bottom .3s ease;
}

.block-gallery-9 .grid-item:hover .bg-overlay-content {
	bottom: 0;
}

.block-gallery-9 .grid-item:hover .btn-more {
	opacity: 1;
}

.block-gallery-9 .entry-meta li {
	/*font-style: italic;*/
	font-size: 90%;
}

.block-gallery-9 .dark .entry-meta li,
.block-gallery-9 .dark .entry-meta li a {
	color: rgba(255, 255, 255, 0.8);
}

/*:root {
	--cnvs-primary-font: 'Maitree', serif;
}*/
.promo-users {
	opacity: 0.1;
	--cnvs-promo-users-img-pos-x: 0;
	--cnvs-promo-users-img-pos-y: 0;
}

.promo-users img {
	position: absolute;
	top: var(--cnvs-promo-users-img-pos-y);
	left: var(--cnvs-promo-users-img-pos-x);
	bottom: var(--cnvs-promo-users-img-pos-y);
	right: var(--cnvs-promo-users-img-pos-x);
}

.promo-users img:nth-child(1) {
	--cnvs-promo-users-img-pos-x: 13%;
	--cnvs-promo-users-img-pos-y: -6%;
}

.promo-users img:nth-child(2) {
	--cnvs-promo-users-img-pos-x: 4%;
	--cnvs-promo-users-img-pos-y: 49%;
}

.promo-users img:nth-child(3) {
	left: auto;
	--cnvs-promo-users-img-pos-x: 2%;
	--cnvs-promo-users-img-pos-y: 0%;
}

.promo-users img:nth-child(4) {
	left: auto;
	top: auto;
	--cnvs-promo-users-img-pos-x: 0;
	--cnvs-promo-users-img-pos-y: 3%;
}

.promo-users img:nth-child(5) {
	top: auto;
	--cnvs-promo-users-img-pos-x: 17%;
	--cnvs-promo-users-img-pos-y: 3%;
}

@media (min-width: 768px) {

	.promo-users {
		opacity: 1;
	}
	.w-md-66{
		width: 50%;
	}
	.w-md-75{
		width: 75%;
	}
}
.max-container-news{
	max-width: 1000px;
}
.d-grid {
	--column: 1;
	display: grid;
	grid-template-columns: repeat(var(--column), 1fr);
	grid-gap: 30px;
}

.language-switcher {
	display: flex;
	align-items: center;
	/* Allinea verticalmente al centro */
	gap: 0.5rem;
	/* Spazio tra le bandiere */
}

.clamp-lines {
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
}


@media (min-width: 992px) {

	/* Remove Media query to enable in responsive */
	.opacity-on-hover .menu-container>.menu-item>.menu-link {
		transition: color .3s ease;
		color: #111 !important;
	}

	.opacity-on-hover .menu-container:hover>.menu-item:not(:hover):not(.current)>.menu-link {
		color: #D5D5D5 !important;
	}

	.primary-menu-trigger {
		display: none;
	}

	.primary-menu {
		display: flex;
	}

	.d-grid {
		--column: 3;
	}

	.d-grid .grid-w {
		grid-row: span 2 / auto;
	}
}
.rounded-top-4 {
	border-top-left-radius: 1rem;    /* stesso valore di rounded-4 */
	border-top-right-radius: 1rem;
	overflow: hidden;                /* assicura che il contenuto non sbordi */
  }