/* Sezione full-screen con video di sfondo */
.video{
	position:relative;
	width:100%;
	height:100vh;
	overflow:hidden;
	display:flex;
	align-items:center;
	justify-content:flex-start;
}

.organizzazione{
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
	z-index:0;
	overflow:hidden;
	background:#000;
}

.carousel-track{
	display:flex;
	width:100%;
	height:100%;
	transition:transform 1s ease;
	touch-action: pan-y;
}

.carousel-slide{
	min-width:100%;
	height:100%;
}

.carousel-slide img{
	width:100%;
	height:100%;
	object-fit:cover;
	display:block;
	filter:brightness(0.8);
	touch-action: none;
}

.carousel-controls{
	position:absolute;
	inset:0;
	z-index:10010;
	pointer-events:auto;
}

.carousel-controls > * {
	pointer-events:auto;
}

.prev,
.next{
	position:absolute;
	top:50%;
	transform:translateY(-50%);
	border:none;
	background: rgba(255, 255, 255, 0.18);
	border: 1px solid rgba(255, 255, 255, 0.6);
	box-shadow: 0 20px 50px rgba(0, 0, 0, 0.12);
	color:#111;
	width:2.4rem;
	height:2.4rem;
	border-radius:50%;
	cursor:pointer;
	font-size:1rem;
	pointer-events:auto;
	display:flex;
	align-items:center;
	justify-content:center;
	z-index:10011;
}

.prev{left:0.8rem;}
.next{right:0.8rem;}

.carousel-dots{
	position:absolute;
	left:50%;
	bottom:1.25rem;
	transform:translateX(-50%);
	display:flex;
	gap:0.45rem;
	pointer-events:auto;
	z-index:10011;
}

.carousel-dots{
	position:absolute;
	left:50%;
	bottom:1.25rem;
	transform:translateX(-50%);
	display:flex;
	gap:0.45rem;
	pointer-events:auto;
}

.dot{
	width:0.7rem;
	height:0.7rem;
	border-radius:50%;
	background:rgba(255,255,255,0.55);
	cursor:pointer;
	transition:background 0.6s ease;
}

.dot.active{
	background:#fff;
}

.video__overlay{
	position:relative;
	z-index:2;
	color:#fff;
	text-align:left;
	padding:1rem 2rem;
	margin-left:2rem;
	text-shadow:0 2px 6px rgba(0,0,0,0.6);
	max-width:40rem;
	pointer-events:none;
}

.video__note{
	position:absolute;
	right:1.25rem;
	bottom:1.25rem;
	color:#fff;
	padding:0.75rem 1rem;
	border-radius:8px;
	font-size:0.95rem;
	max-width:28%;
	text-align:right;
	pointer-events:none;
}

.video__note p{
color:#fff;
}

@media (max-width:800px){
	.video{
		flex-direction:column;
		align-items:flex-start;
		justify-content:center;
		padding:1rem 0;
	}

	.video__overlay{
		margin-left:1rem;
		margin-top:1rem;
	}

	.video__note{
		position:relative;
		right:auto;
		bottom:auto;
		width:auto;
		max-width:none;
		margin:1rem;
		text-align:left;
		z-index:2;
	}
}

.video__overlay h1{
	font-size:clamp(1.5rem, 4vw, 3rem);
	margin:0;
}

.video__overlay h2 {
    font-size:clamp(0.8rem, 2.5vw, 1.5rem);
    margin:0;
}
.content{
	max-width:100%;
	margin:0 auto;
	padding:2rem 1rem;
	font-size:clamp(1rem, 2.5vw, 1.25rem);
	line-height:1.6;
	color:#fff;
	text-align:center;
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center top;
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	gap:1.5rem;
	align-items:start;
}
.content div{
	max-width:100%;
	margin:0;
	text-align:center;
	padding:1rem;

}
.content div p{
	color:#fff;
}

.content__logo{
	display:block;
	max-width:120px;
	width:30%;
	height:auto;
	margin:0.5rem auto 0.75rem;
}

@media (max-width:900px){
	.content{
		grid-template-columns:repeat(2, 1fr);
	}
}

@media (max-width:600px){
	.content{
		grid-template-columns:1fr;
	}
}

.video__overlay p {
    text-align:right;
    font-size:clamp(0.8rem, 2.5vw, 1.5rem);
    margin-top:1rem;
    line-height:1.6;
    color:#fff;
}

.date{
    text-align:center;
    padding:5rem 1rem;
}

.date h1,
.date h2 {
    margin:0.5rem 0;
}

