/* Pagina progetto – layout C "Sfoglia" */

.progetto {
	width: 90%;
	max-width: 1600px;
	margin: 0 auto;
	padding: 10px 0 80px;
	display: flex;
	flex-direction: column;
	gap: 40px;
	color: #141313;
}

/* colonna informazioni */
.progetto-info {
	display: flex;
	flex-direction: column;
	gap: 24px;
}
.progetto-tutti {
	font-size: 13px;
	color: #747473;
	letter-spacing: .5px;
}
.progetto-tutti:hover { color: #141313; }

h1.progetto-titolo {
	margin: 0;
	font-size: 40px;
	line-height: 1.05;
	font-weight: 700;
	letter-spacing: -.01em;
}

.progetto-scheda {
	font-size: 14px;
	line-height: 1.55;
	padding-bottom: 20px;
	border-bottom: 1px solid #e2e2e2;
}
.progetto-scheda p { margin: 0 0 .6em; }
.progetto-scheda p:last-child { margin-bottom: 0; }
.progetto-scheda strong,
.progetto-scheda b {
	font-weight: normal;
	color: #747473;
}
.progetto-scheda strong em,
.progetto-scheda b em,
.progetto-scheda em strong {
	font-style: normal;
	font-weight: 700;
	color: #141313;
}

.progetto-testo {
	font-size: 16px;
	line-height: 1.65;
	color: #333;
}
.progetto-testo p { margin: 0 0 1em; text-align: left; }
.progetto-testo p:last-child { margin-bottom: 0; }
.progetto-testo strong, .progetto-testo b { font-weight: 700; color: #141313; }
.progetto-testo em strong, .progetto-testo strong em { font-weight: 700; font-style: normal; }
.progetto-testo iframe { max-width: 100%; border: 0; }

.progetto-nav {
	display: flex;
	justify-content: space-between;
	gap: 16px;
	padding-top: 20px;
	border-top: 1px solid #e2e2e2;
	font-size: 14px;
}
.progetto-nav span:last-child { text-align: right; }

/* colonna immagini */
.progetto-media {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
	align-items: start;
}
.progetto-figura {
	grid-column: span 2;
	margin: 0;
}
.progetto-figura.coppia { grid-column: span 1; }
.progetto-figura img,
.progetto-figura .progetto-img {
	display: block;
	width: 100%;
	height: auto !important;
}
.progetto-didascalia {
	grid-column: span 2;
	margin-top: -6px;
	font-size: 13px;
	line-height: 1.5;
	color: #747473;
}
.progetto-didascalia p { margin: 0; }
.progetto-video {
	position: relative;
	padding-top: 56.25%;
}
.progetto-video iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

/* telefono: una colonna sola */
@media screen and (max-width: 599px) {
	.progetto { width: 92%; }
	.progetto-media { grid-template-columns: minmax(0, 1fr); }
	.progetto-figura, .progetto-figura.coppia, .progetto-didascalia { grid-column: span 1; }
	h1.progetto-titolo { font-size: 32px; }
}

/* schermi larghi: testo a sinistra, immagini a destra */
@media screen and (min-width: 900px) {
	.progetto {
		flex-direction: row;
		align-items: flex-start;
		gap: 72px;
	}
	.progetto-info {
		flex: 0 0 32%;
		max-width: 440px;
	}
	/* la colonna "ferma" (di solito il testo); l'altezza a cui si ferma
	   la calcola js/progetto.js in base allo schermo */
	.progetto-info.fissa,
	.progetto-media.fissa {
		position: sticky;
		top: 100px;
	}
	.progetto-media {
		flex: 1 1 auto;
		min-width: 0;
	}
}

/* il contenitore del menu laterale usa overflow:hidden, che impedisce alla
   colonna di testo di restare ferma: "clip" taglia allo stesso modo ma la lascia funzionare */
.st-container { overflow: hidden; overflow: clip; }

/* griglia della home sotto il progetto (passaggio continuo) */
.wk-ritorno {
	margin-top: 64px;
	padding-top: 48px;
	padding-bottom: 100vh;
	border-top: 1px solid #e2e2e2;
}
.wk-ritorno:empty { display: none; }
