/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Sep 30 2026 | 15:12:25 */
/*
 * Scopri Cotronei - modulo 09-ricerca-aps.css
 * Estratto senza modifiche funzionali dal CSS originale.
 * Righe originali: 38151-43877.
 * Contenuto: Sistema ricerca, prenotazioni teatro v3.6, Sostienici, domanda socio e statuto APS.
 */

/* =========================================================
   SCOPRI COTRONEI
   SISTEMA RICERCA COMPLETO
   - Pagina risultati
   - Ricerca nel menu principale
   ========================================================= */


/* =========================================================
   PARTE 1
   PAGINA RISULTATI DI RICERCA
   ========================================================= */


/* ---------------------------------------------------------
   1. VARIABILI
   --------------------------------------------------------- */

.sc-search-page {
	--sc-green: #2f4a2f;
	--sc-green-dark: #1d3321;
	--sc-green-light: #526d53;

	--sc-cream: #f7f5ef;
	--sc-cream-dark: #eeeae0;

	--sc-text: #202720;
	--sc-muted: #687168;

	--sc-border: rgba(47, 74, 47, 0.14);

	--sc-shadow:
		0 12px 38px rgba(28, 48, 31, 0.08);

	--sc-shadow-hover:
		0 20px 48px rgba(28, 48, 31, 0.14);

	width: 100%;

	margin-top: 0 !important;
	margin-bottom: 0 !important;
}


/* =========================================================
   2. HERO
   ========================================================= */

.sc-search-hero {
	position: relative;

	width: 100%;

	margin: 0 !important;

	padding:
		clamp(60px, 7vw, 100px)
		24px
		clamp(64px, 7vw, 105px);

	overflow: hidden;

	background:
		linear-gradient(
			135deg,
			var(--sc-green-dark) 0%,
			var(--sc-green) 58%,
			#49664b 100%
		);

	color: #ffffff;
}


/* Cerchio decorativo alto */
.sc-search-hero::before {
	content: "";

	position: absolute;

	top: -280px;
	right: -130px;

	width: 470px;
	height: 470px;

	border:
		1px solid
		rgba(255, 255, 255, 0.10);

	border-radius: 50%;

	pointer-events: none;
}


/* Cerchio decorativo basso */
.sc-search-hero::after {
	content: "";

	position: absolute;

	left: -120px;
	bottom: -220px;

	width: 310px;
	height: 310px;

	border:
		1px solid
		rgba(255, 255, 255, 0.08);

	border-radius: 50%;

	pointer-events: none;
}


/* Contenuto hero */
.sc-search-hero-inner {
	position: relative;

	z-index: 2;

	width: min(900px, 100%);

	max-width: 900px !important;

	margin:
		0
		auto !important;

	text-align: center;
}


/* Etichetta */
.sc-search-kicker {
	margin:
		0
		0
		14px !important;

	color:
		rgba(255, 255, 255, 0.74);

	font-size: 12px;

	font-weight: 700;

	line-height: 1.3;

	letter-spacing: 0.14em;

	text-transform: uppercase;
}


/* Titolo */
.sc-search-title {
	margin: 0 !important;

	color: #ffffff !important;

	font-size:
		clamp(34px, 4.7vw, 58px) !important;

	font-weight: 700;

	line-height: 1.08;

	letter-spacing: -0.025em;
}


/* Intro */
.sc-search-intro {
	width: min(720px, 100%);

	margin:
		20px
		auto
		31px !important;

	color:
		rgba(255, 255, 255, 0.82);

	font-size:
		clamp(16px, 1.5vw, 18px);

	line-height: 1.7;
}


/* =========================================================
   3. FORM RICERCA NELL'HERO
   ========================================================= */

.sc-search-form {
	width: min(760px, 100%);

	max-width: 760px !important;

	margin:
		0
		auto !important;
}


.sc-search-form
.wp-block-search__inside-wrapper {
	min-height: 62px;

	box-sizing: border-box;

	padding:
		6px
		6px
		6px
		21px;

	background: #ffffff;

	border: 0 !important;

	border-radius: 16px;

	box-shadow:
		0 16px 42px
		rgba(0, 0, 0, 0.17);
}


.sc-search-form
.wp-block-search__input {
	min-width: 0;

	border: 0 !important;

	outline: 0 !important;

	box-shadow: none !important;

	background: transparent !important;

	color: var(--sc-text);

	font-size: 16px;
}


.sc-search-form
.wp-block-search__input:focus {
	outline: 0 !important;

	box-shadow: none !important;
}


.sc-search-form
.wp-block-search__input::placeholder {
	color: #899089;
}


/* Pulsante lente hero */
.sc-search-form
.wp-block-search__button {
	display: flex;

	align-items: center;

	justify-content: center;

	flex: 0 0 50px;

	width: 50px;

	min-width: 50px;

	height: 50px;

	margin: 0 !important;

	padding: 0 !important;

	background: var(--sc-green);

	color: #ffffff;

	border: 0;

	border-radius: 12px;

	cursor: pointer;

	transition:
		background-color 0.2s ease,
		transform 0.2s ease;
}


.sc-search-form
.wp-block-search__button:hover {
	background: var(--sc-green-dark);

	transform: translateY(-1px);
}


.sc-search-form
.wp-block-search__button svg {
	width: 20px;

	height: 20px;
}


/* =========================================================
   4. CONTENITORE RISULTATI
   ========================================================= */

.sc-search-results {
	width:
		min(
			1240px,
			calc(100% - 48px)
		) !important;

	max-width: 1240px !important;

	margin:
		0
		auto !important;

	padding:
		clamp(58px, 6vw, 82px)
		0
		clamp(80px, 8vw, 115px);
}


/* Elimina i limiti inherited/constrained di Gutenberg */
.sc-search-results > *,
.sc-search-query {
	width: 100% !important;

	max-width: none !important;

	margin-left: 0 !important;

	margin-right: 0 !important;
}


/* =========================================================
   5. INTESTAZIONE RISULTATI
   ========================================================= */

.sc-search-results-head {
	width: 100% !important;

	max-width: 760px !important;

	margin:
		0
		0
		38px !important;

	text-align: left;
}


.sc-search-section-kicker {
	margin:
		0
		0
		8px !important;

	color: var(--sc-green);

	font-size: 12px;

	font-weight: 700;

	line-height: 1.3;

	letter-spacing: 0.13em;

	text-transform: uppercase;
}


.sc-search-section-title {
	margin: 0 !important;

	color: var(--sc-text);

	font-size:
		clamp(30px, 3vw, 42px);

	font-weight: 700;

	line-height: 1.13;

	letter-spacing: -0.015em;
}


.sc-search-section-text {
	margin:
		11px
		0
		0 !important;

	color: var(--sc-muted);

	font-size: 16px;

	line-height: 1.65;
}


/* =========================================================
   6. QUERY
   ========================================================= */

.sc-search-query {
	display: block !important;

	width: 100% !important;

	max-width: none !important;
}


/* =========================================================
   7. GRIGLIA DESKTOP
   ========================================================= */

.sc-search-query
.wp-block-post-template.sc-search-grid,
.sc-search-grid {
	display: grid !important;

	grid-template-columns:
		repeat(3, minmax(0, 1fr)) !important;

	gap:
		30px
		28px !important;

	width: 100% !important;

	max-width: none !important;

	margin: 0 !important;

	padding: 0 !important;

	list-style: none !important;

	align-items: stretch;
}


/* Reset delle larghezze generate da Gutenberg */
.sc-search-query
.wp-block-post-template.sc-search-grid > li,
.sc-search-grid > li {
	display: flex !important;

	width: 100% !important;

	max-width: 100% !important;

	min-width: 0 !important;

	flex-basis: auto !important;

	margin: 0 !important;

	padding: 0 !important;

	box-sizing: border-box !important;
}


.sc-search-query
.wp-block-post-template.is-flex-container > li {
	width: 100% !important;

	max-width: 100% !important;

	flex-basis: auto !important;
}


/* =========================================================
   8. CARD
   ========================================================= */

.sc-search-card {
	position: relative;

	display: flex;

	flex-direction: column;

	width: 100% !important;

	max-width: none !important;

	min-width: 0;

	height: 100%;

	box-sizing: border-box;

	overflow: hidden;

	background: #ffffff;

	border:
		1px solid
		var(--sc-border);

	border-radius: 20px;

	box-shadow:
		var(--sc-shadow);

	transition:
		transform 0.25s ease,
		box-shadow 0.25s ease,
		border-color 0.25s ease;
}


.sc-search-card:hover {
	transform: translateY(-5px);

	border-color:
		rgba(47, 74, 47, 0.25);

	box-shadow:
		var(--sc-shadow-hover);
}


/* =========================================================
   9. IMMAGINE
   ========================================================= */

.sc-search-image {
	display: block;

	width: 100%;

	height: 230px;

	margin: 0 !important;

	overflow: hidden;

	background:
		linear-gradient(
			135deg,
			#f7f5ef,
			#ebe7dc
		);
}


.sc-search-image a {
	display: flex;

	align-items: center;

	justify-content: center;

	width: 100%;

	height: 100%;
}


/* Mantiene intere locandine, libri e documenti */
.sc-search-image img {
	display: block;

	width: 100% !important;

	height: 230px !important;

	margin: 0 auto;

	object-fit: contain !important;

	object-position: center center;

	background: #f4f1e9;

	transition:
		transform 0.3s ease;
}


.sc-search-card:hover
.sc-search-image img {
	transform: scale(1.018);
}


/* =========================================================
   10. FALLBACK SENZA IMMAGINE
   ========================================================= */

.sc-search-grid
> li:not(:has(.sc-search-image img))
.sc-search-card::before {
	content: "SCOPRI COTRONEI";

	display: flex;

	align-items: flex-end;

	box-sizing: border-box;

	width: 100%;

	height: 230px;

	min-height: 230px;

	padding: 25px;

	background:
		linear-gradient(
			135deg,
			var(--sc-green-dark),
			var(--sc-green)
		);

	color:
		rgba(255, 255, 255, 0.76);

	font-size: 11px;

	font-weight: 700;

	line-height: 1.4;

	letter-spacing: 0.15em;
}


/* Decorazione fallback */
.sc-search-grid
> li:not(:has(.sc-search-image img))
.sc-search-card::after {
	content: "";

	position: absolute;

	top: 36px;

	right: -35px;

	width: 125px;

	height: 125px;

	border:
		1px solid
		rgba(255, 255, 255, 0.08);

	border-radius: 50%;

	pointer-events: none;
}


/* =========================================================
   11. CORPO CARD
   ========================================================= */

.sc-search-card-body {
	position: relative;

	z-index: 2;

	display: flex;

	flex-direction: column;

	flex: 1;

	width: 100%;

	box-sizing: border-box;

	padding:
		23px
		24px
		24px;
}


/* =========================================================
   12. CATEGORIA
   ========================================================= */

.sc-search-category {
	margin:
		0
		0
		9px !important;

	color: var(--sc-green);

	font-size: 10px;

	font-weight: 700;

	line-height: 1.45;

	letter-spacing: 0.08em;

	text-transform: uppercase;
}


.sc-search-category a {
	color: inherit !important;

	text-decoration: none !important;
}


.sc-search-category a:hover {
	text-decoration: underline !important;
}


/* Etichetta per le pagine statiche */
.sc-search-grid
> li.type-page
.sc-search-card-body::before {
	content: "PAGINA";

	display: block;

	margin:
		0
		0
		9px;

	color: var(--sc-green);

	font-size: 10px;

	font-weight: 700;

	line-height: 1.4;

	letter-spacing: 0.10em;
}


/* =========================================================
   13. DATA
   ========================================================= */

.sc-search-date {
	margin:
		0
		0
		9px !important;

	color: #808780;

	font-size: 12px !important;

	line-height: 1.4;
}


/* Niente data sulle pagine statiche */
.sc-search-grid
> li.type-page
.sc-search-date {
	display: none !important;
}


/* =========================================================
   14. TITOLO CARD
   ========================================================= */

.sc-search-card-title {
	margin: 0 !important;

	font-size:
		clamp(18px, 1.5vw, 21px) !important;

	font-weight: 700;

	line-height: 1.27;

	letter-spacing: -0.01em;

	word-break: normal !important;

	overflow-wrap: normal !important;

	hyphens: none !important;
}


.sc-search-card-title a {
	color:
		var(--sc-text) !important;

	text-decoration:
		none !important;
}


.sc-search-card-title a:hover {
	color:
		var(--sc-green) !important;
}


/* =========================================================
   15. ESTRATTO
   ========================================================= */

.sc-search-excerpt {
	margin:
		13px
		0
		0 !important;

	color:
		var(--sc-muted);

	font-size: 14px;

	line-height: 1.65;

	display: -webkit-box;

	-webkit-box-orient: vertical;

	-webkit-line-clamp: 3;

	overflow: hidden;
}


.sc-search-excerpt p {
	margin: 0 !important;
}


/* =========================================================
   16. APRI CONTENUTO
   ========================================================= */

.sc-search-readmore {
	display: inline-flex;

	align-items: center;

	width: fit-content;

	margin-top: auto;

	padding-top: 20px;

	color:
		var(--sc-green) !important;

	font-size: 13px;

	font-weight: 700;

	line-height: 1.3;

	text-decoration: none !important;
}


.sc-search-readmore:hover {
	text-decoration: underline !important;
}


/* =========================================================
   17. PAGINAZIONE
   ========================================================= */

.sc-search-pagination-wrap {
	width: 100% !important;

	max-width: none !important;

	margin:
		58px
		0
		0 !important;

	padding:
		30px
		0
		0;

	border-top:
		1px solid
		var(--sc-border);
}


.sc-search-pagination {
	display: flex !important;

	align-items: center;

	justify-content: center !important;

	flex-wrap: wrap;

	gap: 8px;
}


.sc-search-pagination a,
.sc-search-pagination .page-numbers {
	display: inline-flex;

	align-items: center;

	justify-content: center;

	min-width: 42px;

	min-height: 42px;

	box-sizing: border-box;

	padding:
		8px
		13px;

	color:
		var(--sc-green);

	background: #ffffff;

	border:
		1px solid
		var(--sc-border);

	border-radius: 10px;

	text-decoration: none;

	transition:
		background-color 0.2s ease;
}


.sc-search-pagination a:hover {
	background:
		var(--sc-cream);
}


.sc-search-pagination .current {
	background:
		var(--sc-green);

	color: #ffffff;

	border-color:
		var(--sc-green);
}


/* =========================================================
   18. NESSUN RISULTATO
   ========================================================= */

.sc-search-empty {
	width:
		min(760px, 100%) !important;

	max-width:
		760px !important;

	box-sizing: border-box;

	margin:
		20px
		auto
		0 !important;

	padding:
		clamp(32px, 5vw, 52px);

	text-align: center;

	background:
		var(--sc-cream);

	border:
		1px solid
		var(--sc-border);

	border-radius: 22px;
}


.sc-search-empty h2 {
	margin-top: 0;

	color:
		var(--sc-text);
}


.sc-search-empty p {
	color:
		var(--sc-muted);
}


.sc-search-form-empty {
	margin-top:
		26px !important;
}


.sc-search-form-empty
.wp-block-search__inside-wrapper {
	border:
		1px solid
		var(--sc-border) !important;

	box-shadow: none;
}


/* =========================================================
   19. DESKTOP GRANDE
   ========================================================= */

@media (min-width: 1250px) {

	.sc-search-results {
		width:
			min(
				1240px,
				calc(100% - 70px)
			) !important;
	}

}


/* =========================================================
   20. TABLET
   ========================================================= */

@media (max-width: 980px) {

	.sc-search-query
	.wp-block-post-template.sc-search-grid,
	.sc-search-grid {
		grid-template-columns:
			repeat(
				2,
				minmax(0, 1fr)
			) !important;
	}


	.sc-search-results {
		width:
			calc(100% - 40px) !important;
	}


	.sc-search-image,
	.sc-search-image img,
	.sc-search-grid
	> li:not(:has(.sc-search-image img))
	.sc-search-card::before {
		height:
			220px !important;

		min-height:
			220px;
	}

}


/* =========================================================
   21. MOBILE
   ========================================================= */

@media (max-width: 640px) {

	.sc-search-hero {
		padding:
			52px
			18px
			58px;
	}


	.sc-search-title {
		font-size:
			31px !important;
	}


	.sc-search-intro {
		margin-top:
			16px !important;

		margin-bottom:
			25px !important;

		font-size: 15px;
	}


	.sc-search-form
	.wp-block-search__inside-wrapper {
		min-height:
			56px;

		padding-left:
			15px;
	}


	.sc-search-form
	.wp-block-search__button {
		flex-basis:
			46px;

		width:
			46px;

		min-width:
			46px;

		height:
			46px;
	}


	.sc-search-results {
		width:
			calc(100% - 34px) !important;

		padding-top:
			50px;

		padding-bottom:
			75px;
	}


	.sc-search-results-head {
		margin-bottom:
			28px !important;
	}


	.sc-search-section-title {
		font-size:
			29px;
	}


	.sc-search-query
	.wp-block-post-template.sc-search-grid,
	.sc-search-grid {
		grid-template-columns:
			1fr !important;

		gap:
			20px !important;
	}


	.sc-search-image,
	.sc-search-image img,
	.sc-search-grid
	> li:not(:has(.sc-search-image img))
	.sc-search-card::before {
		height:
			215px !important;

		min-height:
			215px;
	}


	.sc-search-card-body {
		padding:
			21px
			21px
			23px;
	}


	.sc-search-card-title {
		font-size:
			20px !important;
	}


	.sc-search-pagination-wrap {
		margin-top:
			42px !important;
	}

}


/* =========================================================
   22. MOBILE PICCOLO
   ========================================================= */

@media (max-width: 380px) {

	.sc-search-results {
		width:
			calc(100% - 26px) !important;
	}


	.sc-search-card-body {
		padding:
			19px;
	}

}



/* =========================================================
   =========================================================
   PARTE 2
   RICERCA NEL MENU PRINCIPALE
   =========================================================
   ========================================================= */


/* =========================================================
   23. BLOCCO RICERCA MENU
   ========================================================= */

.wp-block-navigation
.sc-nav-search-native {
	position: relative;

	flex:
		0
		0
		auto;

	width: auto;

	max-width: none;

	margin:
		0
		0
		0
		8px !important;

	padding: 0 !important;

	z-index: 1000;
}


/* Wrapper interno */
.wp-block-navigation
.sc-nav-search-native
.wp-block-search__inside-wrapper {
	position: relative;

	display: flex;

	align-items: center;

	justify-content: flex-end;

	width: auto;

	margin: 0;

	padding: 0;

	background: transparent;

	border: 0;
}


/* =========================================================
   24. PULSANTE LENTE MENU
   ========================================================= */

.wp-block-navigation
.sc-nav-search-native
.wp-block-search__button {
	display: flex;

	align-items: center;

	justify-content: center;

	flex:
		0
		0
		42px;

	width: 42px;

	min-width: 42px;

	max-width: 42px;

	height: 42px;

	box-sizing: border-box;

	margin: 0 !important;

	padding: 0 !important;

	background:
		rgba(255, 255, 255, 0.08) !important;

	color:
		#ffffff !important;

	border:
		1px solid
		rgba(255, 255, 255, 0.55) !important;

	border-radius:
		999px !important;

	box-shadow:
		none !important;

	cursor: pointer;

	transition:
		background-color 0.2s ease,
		color 0.2s ease,
		border-color 0.2s ease,
		transform 0.2s ease;
}


/* Icona lente */
.wp-block-navigation
.sc-nav-search-native
.wp-block-search__button svg {
	display: block;

	width: 19px;

	height: 19px;

	margin: 0;

	fill: currentColor;

	color: currentColor;
}


/* Hover */
.wp-block-navigation
.sc-nav-search-native
.wp-block-search__button:hover {
	background:
		#ffffff !important;

	color:
		#2f4a2f !important;

	border-color:
		#ffffff !important;

	transform:
		translateY(-1px);
}


/* Focus tastiera */
.wp-block-navigation
.sc-nav-search-native
.wp-block-search__button:focus-visible {
	outline:
		2px solid
		#ffffff;

	outline-offset:
		3px;
}


/* =========================================================
   25. CAMPO RICERCA MENU - DESKTOP
   ========================================================= */

.wp-block-navigation
.sc-nav-search-native
.wp-block-search__input {
	position: absolute;

	top:
		calc(100% + 13px);

	right: 0;

	z-index: 9999;

	width:
		330px !important;

	max-width:
		calc(100vw - 30px);

	min-width: 0;

	height: 50px;

	box-sizing: border-box;

	margin: 0 !important;

	padding:
		0
		17px !important;

	background:
		#ffffff !important;

	color:
		#202720 !important;

	font-size: 15px;

	line-height: 1.4;

	border:
		1px solid
		rgba(47, 74, 47, 0.18) !important;

	border-radius:
		13px !important;

	box-shadow:
		0 16px 38px
		rgba(20, 38, 23, 0.20) !important;

	transition:
		opacity 0.18s ease,
		transform 0.18s ease,
		visibility 0.18s ease;
}


.wp-block-navigation
.sc-nav-search-native
.wp-block-search__input::placeholder {
	color: #7b847c;
}


.wp-block-navigation
.sc-nav-search-native
.wp-block-search__input:focus {
	outline:
		2px solid
		rgba(47, 74, 47, 0.30) !important;

	outline-offset: 1px;

	border-color:
		rgba(47, 74, 47, 0.32) !important;
}


/* =========================================================
   26. STATO CHIUSO
   ========================================================= */

.wp-block-navigation
.sc-nav-search-native.wp-block-search__searchfield-hidden
.wp-block-search__input {
	opacity: 0;

	visibility: hidden;

	pointer-events: none;

	transform:
		translateY(-6px);

	width: 0 !important;

	height: 0;

	padding:
		0 !important;

	border:
		0 !important;

	box-shadow:
		none !important;
}


/* =========================================================
   27. STATO APERTO
   ========================================================= */

.wp-block-navigation
.sc-nav-search-native:not(.wp-block-search__searchfield-hidden)
.wp-block-search__input {
	opacity: 1;

	visibility: visible;

	pointer-events: auto;

	transform:
		translateY(0);

	width:
		330px !important;

	height:
		50px;
}


/* Lente quando aperto */
.wp-block-navigation
.sc-nav-search-native:not(.wp-block-search__searchfield-hidden)
.wp-block-search__button {
	background:
		#ffffff !important;

	color:
		#2f4a2f !important;

	border-color:
		#ffffff !important;
}


/* =========================================================
   28. TRIANGOLINO SOPRA IL CAMPO
   ========================================================= */

.wp-block-navigation
.sc-nav-search-native:not(.wp-block-search__searchfield-hidden)
.wp-block-search__inside-wrapper::after {
	content: "";

	position: absolute;

	top:
		calc(100% + 6px);

	right: 15px;

	z-index: 9998;

	width: 13px;

	height: 13px;

	background:
		#ffffff;

	border-top:
		1px solid
		rgba(47, 74, 47, 0.12);

	border-left:
		1px solid
		rgba(47, 74, 47, 0.12);

	transform:
		rotate(45deg);

	pointer-events: none;
}


/* =========================================================
   29. MENU MOBILE
   ========================================================= */

@media (max-width: 781px) {

	.wp-block-navigation
	.sc-nav-search-native {
		width: 100%;

		margin:
			14px
			0
			0 !important;
	}


	.wp-block-navigation
	.sc-nav-search-native
	.wp-block-search__inside-wrapper {
		display: flex;

		justify-content: flex-start;

		width: 100%;
	}


	.wp-block-navigation
	.sc-nav-search-native
	.wp-block-search__button {
		width: 46px;

		min-width: 46px;

		max-width: 46px;

		height: 46px;

		background:
			#2f4a2f !important;

		border-color:
			#2f4a2f !important;

		color:
			#ffffff !important;
	}


	/* Campo non assoluto su mobile */
	.wp-block-navigation
	.sc-nav-search-native
	.wp-block-search__input {
		position: static;

		width: 100% !important;

		max-width: 100%;

		height: 50px;

		margin:
			10px
			0
			0 !important;

		box-shadow:
			0 8px 24px
			rgba(20, 38, 23, 0.12) !important;
	}


	/* Chiuso mobile */
	.wp-block-navigation
	.sc-nav-search-native.wp-block-search__searchfield-hidden
	.wp-block-search__input {
		display: none;

		width:
			100% !important;

		height: 0;
	}


	/* Aperto mobile */
	.wp-block-navigation
	.sc-nav-search-native:not(.wp-block-search__searchfield-hidden)
	.wp-block-search__inside-wrapper {
		flex-wrap: wrap;
	}


	.wp-block-navigation
	.sc-nav-search-native:not(.wp-block-search__searchfield-hidden)
	.wp-block-search__input {
		display: block;

		width:
			100% !important;

		height: 50px;
	}


	/* niente triangolo su mobile */
	.wp-block-navigation
	.sc-nav-search-native
	.wp-block-search__inside-wrapper::after {
		display: none !important;
	}

}

/* =========================================================
   RICERCA MENU - CORREZIONE MOBILE
   ========================================================= */

@media (max-width: 781px) {

	/* Il blocco ricerca occupa la riga ma resta centrato */
	.wp-block-navigation
	.sc-nav-search-native {
		display: flex !important;
		justify-content: center !important;
		align-items: center !important;

		width: 100% !important;

		margin: 12px auto 0 !important;
		padding: 0 !important;
	}


	/* Wrapper centrato */
	.wp-block-navigation
	.sc-nav-search-native
	.wp-block-search__inside-wrapper {
		display: flex !important;

		align-items: center !important;
		justify-content: center !important;

		flex-wrap: wrap;

		width: 100% !important;

		margin: 0 auto !important;
	}


	/* Lente perfettamente centrata */
	.wp-block-navigation
	.sc-nav-search-native
	.wp-block-search__button {
		flex: 0 0 46px !important;

		width: 46px !important;
		min-width: 46px !important;
		max-width: 46px !important;

		height: 46px !important;

		margin: 0 auto !important;
	}


	/* Campo quando viene aperto */
	.wp-block-navigation
	.sc-nav-search-native
	.wp-block-search__input {
		position: static !important;

		flex: 0 0 100%;

		width: calc(100% - 40px) !important;
		max-width: 420px !important;

		height: 50px;

		margin: 12px auto 0 !important;
	}


	/* Da chiuso il campo non occupa spazio */
	.wp-block-navigation
	.sc-nav-search-native.wp-block-search__searchfield-hidden
	.wp-block-search__input {
		display: none !important;
	}


	/* Da aperto resta centrato sotto la lente */
	.wp-block-navigation
	.sc-nav-search-native:not(.wp-block-search__searchfield-hidden)
	.wp-block-search__input {
		display: block !important;

		width: calc(100% - 40px) !important;
		max-width: 420px !important;

		margin:
			12px
			auto
			0 !important;
	}

}
/* =========================================================
   PRENOTAZIONI TEATRO COTRONEI - v3.6
   Mappa pubblica in sola lettura
   ========================================================= */
.sctt-app[data-read-only="1"] .sctt-seat[data-state="free"],
.sctt-app[data-read-only="1"] .sctt-seat[data-state="mine"] {
	cursor: default;
}

.sctt-app[data-read-only="1"] .sctt-seat[data-state="free"]:hover,
.sctt-app[data-read-only="1"] .sctt-seat[data-state="mine"]:hover,
.sctt-app[data-read-only="1"] .sctt-seat[data-state="free"]:active,
.sctt-app[data-read-only="1"] .sctt-seat[data-state="mine"]:active {
	transform: none;
	box-shadow: none;
}


/* ==========================================================
   SOSTIENICI / DIVENTA SOCIO
   EMIGRATI COTRONEI APS
   Uniformato al design system ScopriCotronei
========================================================== */


/* ==========================================================
   BASE
========================================================== */

.eca5-page {
    --eca5-green: var(--verde-principale, #264733);
    --eca5-green-hover: var(--verde-hover, #1f3a2a);
    --eca5-gold: var(--oro-accento, #d9b46b);

    --eca5-cream: #f7f4ea;
    --eca5-cream-light: #fbfaf6;
    --eca5-white: #ffffff;

    --eca5-text: var(--testo-principale, #2f2f2f);
    --eca5-soft: #606660;

    --eca5-border: rgba(38, 71, 51, 0.15);
    --eca5-border-strong: rgba(38, 71, 51, 0.30);

    --eca5-shadow: 0 16px 42px rgba(0, 0, 0, 0.08);
    --eca5-shadow-soft: 0 7px 22px rgba(0, 0, 0, 0.04);

    width: 100% !important;
    max-width: 1120px !important;

    margin: 0 auto !important;
    padding: 0 20px 60px !important;

    color: var(--eca5-text);

    box-sizing: border-box !important;
}


.eca5-page *,
.eca5-page *::before,
.eca5-page *::after {
    box-sizing: border-box !important;
}


.eca5-page h1,
.eca5-page h2,
.eca5-page h3,
.eca5-page p,
.eca5-page ul {
    margin: 0;
}


.eca5-page ul {
    padding: 0;
}


.eca5-page a {
    text-decoration: none !important;
}


.eca5-page a,
.eca5-page button {
    font-family: inherit;
}


#eca5-sostieni,
#eca5-associati {
    scroll-margin-top: 100px;
}


/* ==========================================================
   BREADCRUMB
========================================================== */

.eca5-page .sc-breadcrumb {
    width: 100%;
    max-width: 1080px;

    margin: 20px auto 14px;
    padding: 0 4px;
}


/* ==========================================================
   MODULI ATTIVABILI
========================================================== */

.eca5-page[data-fivepermille="off"] .eca5-five {
    display: none !important;
}


.eca5-page[data-paypal="off"] .eca5-paypal-card {
    display: none !important;
}


.eca5-page[data-satispay="off"] .eca5-satispay-card {
    display: none !important;
}


/* ==========================================================
   PILLOLE
========================================================== */

.eca5-pill,
.eca5-small-pill,
.eca5-free-pill,
.eca5-five-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: fit-content;

    border-radius: 999px;

    font-weight: 850;
    line-height: 1;

    text-align: center;
}


.eca5-pill {
    min-height: 29px;

    padding: 0 13px;

    border: 1px solid rgba(38, 71, 51, 0.11);

    background: var(--eca5-cream);
    color: var(--eca5-green);

    font-size: 10px;

    letter-spacing: 0.65px;
    text-transform: uppercase;
}


.eca5-small-pill {
    min-height: 28px;

    margin-bottom: 12px;
    padding: 0 11px;

    background: var(--eca5-cream);
    color: var(--eca5-green);

    font-size: 9px;

    letter-spacing: 0.55px;
    text-transform: uppercase;
}


.eca5-free-pill {
    flex: 0 0 auto;

    min-height: 29px;

    padding: 0 11px;

    background: #e7eee8;
    color: var(--eca5-green);

    font-size: 9px;

    white-space: nowrap;
}


.eca5-five-pill {
    min-height: 30px;

    margin-bottom: 13px;
    padding: 0 12px;

    background: var(--eca5-gold);
    color: var(--eca5-green);

    font-size: 10px;

    letter-spacing: 0.65px;
    text-transform: uppercase;
}


/* ==========================================================
   HERO
========================================================== */

.eca5-hero {
    width: 100%;
    max-width: 980px;

    margin: 0 auto 54px;
    padding: 52px 44px;

    border: 1px solid var(--eca5-border);
    border-radius: 34px;

    background:
        linear-gradient(
            135deg,
            var(--eca5-cream) 0%,
            var(--eca5-cream-light) 100%
        );

    box-shadow: var(--eca5-shadow);

    text-align: center;
}


.eca5-hero-pill {
    margin-bottom: 14px;
}


.eca5-page .eca5-hero h1 {
    max-width: 880px;

    margin: 0 auto;

    color: var(--eca5-green);

    font-size: clamp(40px, 5.2vw, 62px);
    font-weight: 850;
    line-height: 1.04;

    letter-spacing: -0.9px;
}


.eca5-page .eca5-hero-claim {
    max-width: 780px;

    margin: 19px auto 0;

    color: var(--eca5-green);

    font-size: clamp(18px, 2.2vw, 24px);
    font-weight: 650;
    line-height: 1.42;
}


.eca5-page .eca5-hero-text {
    max-width: 735px;

    margin: 17px auto 0;

    color: var(--eca5-soft);

    font-size: 16px;
    line-height: 1.68;
}


.eca5-page .eca5-hero-text strong {
    color: var(--eca5-green);
    font-weight: 800;
}


.eca5-hero-actions {
    display: flex;
    flex-wrap: wrap;

    align-items: center;
    justify-content: center;

    gap: 11px;

    margin-top: 27px;
}


/* ==========================================================
   PULSANTI
========================================================== */

.eca5-btn,
.eca5-digital-btn,
.eca5-copy-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    border-radius: 999px;

    font-weight: 850;
    line-height: 1.2;

    text-align: center;

    transition:
        transform 0.2s ease,
        background 0.2s ease,
        border-color 0.2s ease,
        color 0.2s ease,
        box-shadow 0.2s ease;
}


.eca5-btn {
    min-height: 46px;

    padding: 0 21px !important;

    border: 1px solid var(--eca5-green);

    font-size: 13px;
}


.eca5-btn-primary,
.eca5-btn-primary:visited {
    background: var(--eca5-green);
    color: #ffffff !important;
}


.eca5-btn-outline,
.eca5-btn-outline:visited {
    background: #ffffff;
    color: var(--eca5-green) !important;
}


.eca5-btn:hover,
.eca5-digital-btn:hover,
.eca5-copy-btn:hover {
    transform: translateY(-2px);
}


.eca5-btn-primary:hover {
    background: var(--eca5-green-hover);
    border-color: var(--eca5-green-hover);

    color: #ffffff !important;
}


.eca5-btn-outline:hover {
    background: var(--eca5-green);
    color: #ffffff !important;
}


.eca5-btn-full {
    width: 100% !important;
}


/* ==========================================================
   TESTATE SEZIONI
========================================================== */

.eca5-section-head {
    width: 100%;
    max-width: 820px;

    margin: 0 auto 30px;

    text-align: center;
}


.eca5-section-head > .eca5-pill {
    margin-bottom: 12px;
}


.eca5-page .eca5-section-head h2,
.eca5-page .eca5-five-copy h2,
.eca5-page .eca5-honorary-copy h2 {
    margin: 0;

    color: var(--eca5-green);

    font-size: clamp(30px, 4vw, 44px);
    font-weight: 850;
    line-height: 1.1;

    letter-spacing: -0.5px;
}


.eca5-page .eca5-section-head p {
    max-width: 720px;

    margin: 14px auto 0;

    color: var(--eca5-soft);

    font-size: 15.5px;
    line-height: 1.68;
}


/* ==========================================================
   SOSTEGNO ECONOMICO
========================================================== */

.eca5-support {
    width: 100%;
    max-width: 980px;

    margin: 0 auto 70px;
    padding: 36px;

    border: 1px solid var(--eca5-border);
    border-radius: 30px;

    background:
        linear-gradient(
            135deg,
            var(--eca5-cream) 0%,
            var(--eca5-cream-light) 100%
        );

    box-shadow: var(--eca5-shadow);
}


/* ==========================================================
   METODI DI CONTRIBUTO
========================================================== */

#eca5-payments-row {
    display: grid;

    grid-template-columns:
        minmax(0, 1.48fr)
        minmax(280px, 0.82fr);

    grid-template-rows:
        repeat(2, minmax(0, 1fr));

    gap: 18px;

    align-items: stretch;

    width: 100%;

    margin: 0;
}


#eca5-payments-row > .eca5-bank-card {
    grid-column: 1;
    grid-row: 1 / span 2;

    height: 100%;
}


#eca5-payments-row > .eca5-paypal-card {
    grid-column: 2;
    grid-row: 1;
}


#eca5-payments-row > .eca5-satispay-card {
    grid-column: 2;
    grid-row: 2;
}


.eca5-page[data-paypal="on"][data-satispay="off"] #eca5-payments-row,
.eca5-page[data-paypal="off"][data-satispay="on"] #eca5-payments-row {
    grid-template-rows: 1fr;
}


.eca5-page[data-paypal="on"][data-satispay="off"] #eca5-payments-row > .eca5-bank-card,
.eca5-page[data-paypal="off"][data-satispay="on"] #eca5-payments-row > .eca5-bank-card {
    grid-column: 1;
    grid-row: 1;
}


.eca5-page[data-paypal="on"][data-satispay="off"] #eca5-payments-row > .eca5-paypal-card,
.eca5-page[data-paypal="off"][data-satispay="on"] #eca5-payments-row > .eca5-satispay-card {
    grid-column: 2;
    grid-row: 1;
}


.eca5-page[data-paypal="off"][data-satispay="off"] #eca5-payments-row {
    grid-template-columns: 1fr;
    grid-template-rows: 1fr;
}


.eca5-page[data-paypal="off"][data-satispay="off"] #eca5-payments-row > .eca5-bank-card {
    grid-column: 1;
    grid-row: 1;
}


/* ==========================================================
   CARD PAGAMENTO
========================================================== */

.eca5-payment-card {
    min-width: 0;

    margin: 0;
    padding: 24px;

    border: 1px solid var(--eca5-border);
    border-radius: 23px;

    background: var(--eca5-white);

    box-shadow: var(--eca5-shadow-soft);
}


.eca5-bank-card {
    padding: 26px;
}


.eca5-digital-card {
    display: flex;
    flex-direction: column;
    justify-content: space-between;

    min-height: 180px;
}


.eca5-bank-head {
    display: flex;

    align-items: flex-start;
    justify-content: space-between;

    gap: 18px;

    margin-bottom: 20px;
}


.eca5-page .eca5-payment-card h3 {
    color: var(--eca5-green);

    font-size: 22px;
    font-weight: 850;
    line-height: 1.15;
}


.eca5-page .eca5-digital-card p {
    margin: 10px 0 20px;

    color: var(--eca5-soft);

    font-size: 13.5px;
    line-height: 1.55;
}


/* ==========================================================
   DATI BANCARI
========================================================== */

.eca5-bank-data {
    overflow: hidden;

    width: 100%;

    border: 1px solid var(--eca5-border);
    border-radius: 18px;

    background: var(--eca5-cream-light);
}


.eca5-bank-row {
    padding: 16px 17px;

    border-bottom: 1px solid var(--eca5-border);
}


.eca5-bank-row-last {
    border-bottom: 0;
}


.eca5-bank-label {
    display: block;

    margin-bottom: 6px;

    color: var(--eca5-soft);

    font-size: 10px;
    font-weight: 850;
    line-height: 1.2;

    letter-spacing: 0.6px;
    text-transform: uppercase;
}


.eca5-bank-row > strong {
    display: block;

    color: var(--eca5-text);

    font-size: 14px;
    font-weight: 800;
    line-height: 1.45;
}


/* ==========================================================
   COPIA IBAN / CF
========================================================== */

.eca5-copy-row {
    display: flex;
    flex-wrap: wrap;

    align-items: center;
    justify-content: space-between;

    gap: 12px;
}


.eca5-copy-row code {
    flex: 1 1 250px;

    min-width: 0;

    padding: 0 !important;

    border: 0 !important;

    background: transparent !important;
    color: var(--eca5-green) !important;

    font-family:
        ui-monospace,
        SFMono-Regular,
        Menlo,
        Monaco,
        Consolas,
        monospace;

    font-size: clamp(13px, 1.4vw, 16px);
    font-weight: 800;
    line-height: 1.5;

    overflow-wrap: anywhere;
}


.eca5-copy-btn {
    flex: 0 0 auto;

    min-height: 38px;

    padding: 0 14px !important;

    border: 1px solid var(--eca5-green);

    appearance: none;

    background: var(--eca5-green);
    color: #ffffff;

    cursor: pointer;

    font-size: 11px;
}


.eca5-copy-btn:hover,
.eca5-copy-btn.is-copied {
    background: var(--eca5-green-hover);
    border-color: var(--eca5-green-hover);
}


.eca5-copy-full {
    width: 100% !important;
}


/* ==========================================================
   PAYPAL / SATISPAY
========================================================== */

.eca5-digital-btn {
    width: 100%;

    min-height: 45px;

    margin-top: auto;
    padding: 0 14px;

    color: #ffffff !important;

    font-size: 12px;
}


.eca5-paypal-btn,
.eca5-paypal-btn:visited {
    background: #0070ba;
}


.eca5-paypal-btn:hover {
    background: #005f9f;
}


.eca5-satispay-btn,
.eca5-satispay-btn:visited {
    background: #f04f50;
}


.eca5-satispay-btn:hover {
    background: #d94344;
}


/* ==========================================================
   NOTA INFORMATIVA
========================================================== */

.eca5-info-note {
    display: flex;

    align-items: center;

    gap: 14px;

    margin-top: 18px;
    padding: 16px 18px;

    border: 1px solid var(--eca5-border);
    border-radius: 18px;

    background: var(--eca5-white);
}


.eca5-info-icon {
    display: grid;

    flex: 0 0 34px;

    place-items: center;

    width: 34px;
    height: 34px;

    border-radius: 50%;

    background: #e7eee8;
    color: var(--eca5-green);

    font-size: 13px;
    font-weight: 850;
    line-height: 1;
}


.eca5-info-note > div {
    min-width: 0;
}


.eca5-info-note strong {
    display: block;

    color: var(--eca5-green);

    font-size: 13px;
    font-weight: 850;
    line-height: 1.4;
}


.eca5-page .eca5-info-note p {
    margin: 4px 0 0;

    color: var(--eca5-soft);

    font-size: 12.5px;
    line-height: 1.55;
}


/* ==========================================================
   5 X 1000
========================================================== */

.eca5-five {
    display: grid;

    grid-template-columns:
        minmax(0, 1.18fr)
        minmax(270px, 0.82fr);

    gap: 30px;

    align-items: center;

    width: 100%;
    max-width: 980px;

    margin: 0 auto 70px;
    padding: 36px;

    border: 1px solid rgba(217, 180, 107, 0.55);
    border-radius: 30px;

    background:
        linear-gradient(
            135deg,
            #fffaf0 0%,
            var(--eca5-cream) 100%
        );

    box-shadow: var(--eca5-shadow);
}


.eca5-page .eca5-five-copy h2 {
    max-width: 610px;
}


.eca5-page .eca5-five-copy > p {
    max-width: 600px;

    margin-top: 14px;

    color: var(--eca5-soft);

    font-size: 15px;
    line-height: 1.65;
}


.eca5-page .eca5-five-note {
    color: var(--eca5-green) !important;

    font-size: 13.5px !important;
    font-weight: 700;
}


.eca5-five-code {
    min-width: 0;

    padding: 24px;

    border: 1px solid var(--eca5-border);
    border-radius: 22px;

    background: var(--eca5-white);

    box-shadow: var(--eca5-shadow-soft);
}


.eca5-five-code code {
    display: block;

    width: 100%;

    margin-bottom: 18px;

    padding: 0 !important;

    border: 0 !important;

    background: transparent !important;
    color: var(--eca5-green) !important;

    font-family:
        ui-monospace,
        SFMono-Regular,
        Menlo,
        Monaco,
        Consolas,
        monospace;

    font-size: 18px;
    font-weight: 850;
    line-height: 1.45;

    overflow-wrap: anywhere;
}


/* ==========================================================
   COSA SOSTIENI
========================================================== */

.eca5-impact {
    width: 100%;
    max-width: 980px;

    margin: 0 auto 70px;
}


.eca5-impact-grid {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 18px;
}


.eca5-impact-card {
    min-width: 0;
    min-height: 190px;

    padding: 24px;

    border: 1px solid var(--eca5-border);
    border-radius: 23px;

    background: var(--eca5-cream-light);

    box-shadow: var(--eca5-shadow-soft);
}


.eca5-impact-number {
    display: grid;

    place-items: center;

    width: 40px;
    height: 40px;

    margin-bottom: 17px;

    border-radius: 14px;

    background: var(--eca5-green);
    color: #ffffff;

    font-size: 11px;
    font-weight: 850;
    line-height: 1;
}


.eca5-page .eca5-impact-card h3 {
    color: var(--eca5-green);

    font-size: 21px;
    font-weight: 850;
    line-height: 1.17;
}


.eca5-page .eca5-impact-card p {
    margin-top: 9px;

    color: var(--eca5-soft);

    font-size: 13.5px;
    line-height: 1.6;
}


/* ==========================================================
   ASSOCIARSI
========================================================== */

.eca5-membership {
    width: 100%;
    max-width: 980px;

    margin: 0 auto 70px;
}


#eca5-members-row {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 18px;

    width: 100%;
}


.eca5-member-card {
    display: flex;

    flex-direction: column;

    min-width: 0;
    min-height: 360px;

    padding: 26px;

    border: 1px solid var(--eca5-border);
    border-radius: 24px;

    background: var(--eca5-white);

    box-shadow: var(--eca5-shadow-soft);
}


.eca5-member-primary {
    border-top: 4px solid var(--eca5-green);
}


.eca5-page .eca5-member-card h3 {
    color: var(--eca5-green);

    font-size: 24px;
    font-weight: 850;
    line-height: 1.12;
}


.eca5-page .eca5-member-intro {
    margin-top: 11px;

    color: var(--eca5-soft);

    font-size: 14px;
    line-height: 1.6;
}


.eca5-member-list {
    margin: 20px 0 22px !important;

    list-style: none !important;
}


.eca5-member-list li {
    position: relative;

    padding: 11px 0 11px 25px !important;

    border-top: 1px solid var(--eca5-border);

    color: var(--eca5-text);

    font-size: 13px;
    line-height: 1.45;

    list-style: none !important;
}


.eca5-member-list li:last-child {
    border-bottom: 1px solid var(--eca5-border);
}


.eca5-member-list li::before {
    content: "✓";

    position: absolute;

    top: 10px;
    left: 2px;

    color: var(--eca5-green);

    font-weight: 900;
}


.eca5-member-card .eca5-btn {
    margin-top: auto;
}


/* ==========================================================
   COME FUNZIONA
========================================================== */

.eca5-process {
    margin-top: 24px;
    padding: 28px;

    border: 1px solid var(--eca5-border);
    border-radius: 26px;

    background:
        linear-gradient(
            135deg,
            var(--eca5-cream) 0%,
            var(--eca5-cream-light) 100%
        );
}


.eca5-process-head {
    margin-bottom: 21px;

    text-align: center;
}


.eca5-process-head > span {
    display: block;

    margin-bottom: 5px;

    color: var(--eca5-soft);

    font-size: 11px;
    font-weight: 650;
    line-height: 1.3;
}


.eca5-page .eca5-process-head h3 {
    color: var(--eca5-green);

    font-size: 24px;
    font-weight: 850;
    line-height: 1.15;
}


.eca5-process-grid {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 14px;
}


.eca5-process-step {
    display: grid;

    grid-template-columns: 40px 1fr;

    gap: 13px;

    align-items: start;

    min-width: 0;

    padding: 19px;

    border: 1px solid var(--eca5-border);
    border-radius: 18px;

    background: var(--eca5-white);

    box-shadow: 0 5px 18px rgba(0, 0, 0, 0.035);
}


.eca5-step-number {
    display: grid;

    place-items: center;

    width: 40px;
    height: 40px;

    border-radius: 14px;

    background: var(--eca5-green);
    color: #ffffff;

    font-size: 10px;
    font-weight: 850;
    line-height: 1;
}


.eca5-process-step strong {
    display: block;

    margin-top: 1px;

    color: var(--eca5-green);

    font-size: 13.5px;
    font-weight: 850;
    line-height: 1.3;
}


.eca5-page .eca5-process-step p {
    margin-top: 5px;

    color: var(--eca5-soft);

    font-size: 13px;
    line-height: 1.5;
}


/* ==========================================================
   SOCI ONORARI
========================================================== */

.eca5-honorary {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(340px, 0.82fr);

    gap: 34px;

    align-items: center;

    width: 100%;
    max-width: 980px;

    margin: 0 auto;
    padding: 36px;

    border: 1px solid var(--eca5-border);
    border-radius: 30px;

    background:
        linear-gradient(
            135deg,
            var(--eca5-cream) 0%,
            var(--eca5-cream-light) 100%
        );

    box-shadow: var(--eca5-shadow);
}


.eca5-honorary-copy > .eca5-pill {
    margin-bottom: 13px;
}


.eca5-page .eca5-honorary-copy p {
    max-width: 590px;

    margin-top: 14px;

    color: var(--eca5-soft);

    font-size: 14.5px;
    line-height: 1.68;
}


/* ==========================================================
   ACCORDION SOCI ONORARI
========================================================== */

.eca5-honorary-details {
    width: 100%;

    overflow: hidden;

    border: 1px solid var(--eca5-border);
    border-radius: 22px;

    background: var(--eca5-white);

    box-shadow: var(--eca5-shadow-soft);
}


.eca5-honorary-details summary {
    display: grid;

    grid-template-columns:
        40px
        minmax(0, 1fr)
        40px;

    align-items: center;

    width: 100%;
    min-height: 66px;

    margin: 0;
    padding: 0 14px;

    cursor: pointer;

    list-style: none;

    user-select: none;
}


.eca5-honorary-details summary::-webkit-details-marker {
    display: none;
}


.eca5-honorary-details summary::marker {
    content: "";
}


.eca5-summary-balance {
    width: 40px;
    height: 40px;
}


.eca5-summary-label {
    display: flex;

    align-items: center;
    justify-content: center;

    min-height: 66px;

    color: var(--eca5-green);

    font-size: 14px;
    font-weight: 850;
    line-height: 1.2;

    text-align: center;
}


.eca5-summary-plus {
    position: relative;

    justify-self: center;

    width: 36px;
    height: 36px;

    border-radius: 50%;

    background: var(--eca5-cream);
    color: var(--eca5-green);

    transition:
        background 0.2s ease,
        color 0.2s ease,
        transform 0.2s ease;
}


.eca5-summary-plus::before,
.eca5-summary-plus::after {
    content: "";

    position: absolute;

    top: 50%;
    left: 50%;

    border-radius: 2px;

    background: currentColor;

    transform: translate(-50%, -50%);
}


.eca5-summary-plus::before {
    width: 12px;
    height: 2px;
}


.eca5-summary-plus::after {
    width: 2px;
    height: 12px;
}


.eca5-honorary-details summary:hover .eca5-summary-plus,
.eca5-honorary-details[open] .eca5-summary-plus {
    background: var(--eca5-green);
    color: #ffffff;
}


.eca5-honorary-details[open] summary {
    border-bottom: 1px solid var(--eca5-border);
}


.eca5-honorary-details[open] .eca5-summary-plus {
    transform: rotate(45deg);
}


.eca5-honorary-list {
    display: grid;

    gap: 10px;

    padding: 18px;
}


.eca5-honorary-person {
    padding: 15px 16px;

    border: 1px solid var(--eca5-border);
    border-radius: 15px;

    background: var(--eca5-cream-light);
}


.eca5-honorary-person strong {
    display: block;

    color: var(--eca5-green);

    font-size: 14px;
    font-weight: 850;
    line-height: 1.3;
}


.eca5-honorary-role {
    display: block;

    margin-top: 4px;

    color: var(--eca5-soft);

    font-size: 12.5px;
    line-height: 1.45;
}


.eca5-honorary-date {
    display: block;

    margin-top: 7px;

    color: var(--eca5-green);

    font-size: 11px;
    font-weight: 750;
    line-height: 1.4;
}


/* ==========================================================
   ACCESSIBILITÀ
========================================================== */

.eca5-page a:focus-visible,
.eca5-page button:focus-visible,
.eca5-honorary-details summary:focus-visible {
    outline: 3px solid rgba(217, 180, 107, 0.50);
    outline-offset: 3px;
}


/* ==========================================================
   TABLET
========================================================== */

@media (max-width: 900px) {

    .eca5-five,
    .eca5-honorary {
        grid-template-columns: 1fr;
    }


    #eca5-payments-row {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: auto;
    }


    #eca5-payments-row > .eca5-bank-card {
        grid-column: 1 / -1;
        grid-row: auto;
    }


    #eca5-payments-row > .eca5-paypal-card,
    #eca5-payments-row > .eca5-satispay-card {
        grid-column: auto;
        grid-row: auto;
    }


    .eca5-process-grid {
        grid-template-columns: 1fr;
    }

}


/* ==========================================================
   MOBILE
========================================================== */

@media (max-width: 700px) {

    .eca5-page {
        padding: 0 16px 44px !important;
    }


    .eca5-page .sc-breadcrumb {
        margin-top: 15px;
        margin-bottom: 12px;

        padding: 0;
    }


    .eca5-hero {
        margin-bottom: 44px;
        padding: 34px 22px;

        border-radius: 27px;
    }


    .eca5-page .eca5-hero h1 {
        font-size: clamp(34px, 10vw, 46px);
    }


    .eca5-page .eca5-hero-text {
        font-size: 15px;
        line-height: 1.64;
    }


    .eca5-hero-actions {
        flex-direction: column;

        align-items: stretch;

        gap: 9px;

        margin-top: 23px;
    }


    .eca5-hero-actions .eca5-btn {
        width: 100%;
    }


    .eca5-support,
    .eca5-five,
    .eca5-honorary {
        padding: 27px 22px;

        border-radius: 26px;
    }


    .eca5-support,
    .eca5-impact,
    .eca5-membership {
        margin-bottom: 56px;
    }


    #eca5-payments-row,
    .eca5-page[data-paypal="on"][data-satispay="off"] #eca5-payments-row,
    .eca5-page[data-paypal="off"][data-satispay="on"] #eca5-payments-row,
    .eca5-page[data-paypal="off"][data-satispay="off"] #eca5-payments-row {
        grid-template-columns: 1fr;
        grid-template-rows: auto;

        gap: 14px;
    }


    #eca5-payments-row > .eca5-bank-card,
    #eca5-payments-row > .eca5-paypal-card,
    #eca5-payments-row > .eca5-satispay-card {
        grid-column: 1;
        grid-row: auto;

        width: 100%;
        height: auto;
    }


    .eca5-bank-head {
        flex-direction: column;

        gap: 9px;
    }


    .eca5-impact-grid,
    #eca5-members-row {
        grid-template-columns: 1fr;
    }


    .eca5-impact-card,
    .eca5-member-card {
        min-height: 0;
    }


    .eca5-process {
        padding: 24px 19px;
    }


    .eca5-honorary-copy {
        text-align: center;
    }


    .eca5-honorary-copy > .eca5-pill {
        margin-left: auto;
        margin-right: auto;
    }

}


/* ==========================================================
   MOBILE PICCOLO
========================================================== */

@media (max-width: 480px) {

    .eca5-page {
        padding-left: 14px !important;
        padding-right: 14px !important;
    }


    .eca5-copy-row {
        flex-direction: column;

        align-items: stretch;
    }


    .eca5-copy-row code {
        flex: 0 0 auto;

        width: 100%;
    }


    .eca5-copy-btn {
        width: 100%;
    }


    .eca5-info-note {
        align-items: flex-start;
    }


    .eca5-support,
    .eca5-five,
    .eca5-honorary {
        padding: 25px 19px;
    }

}


/* ==========================================================
   RIDUZIONE ANIMAZIONI
========================================================== */

@media (prefers-reduced-motion: reduce) {

    .eca5-page *,
    .eca5-page *::before,
    .eca5-page *::after {
        transition-duration: 0.01ms !important;
        animation-duration: 0.01ms !important;
    }

}


/* ==========================================================
   DOMANDA DI AMMISSIONE - EMIGRATI COTRONEI APS
   CSS ISOLATO - COERENTE CON IL DESIGN SYSTEM COTRONEI
   ========================================================== */

/* ==========================================================
   BASE
   ========================================================== */

body .sc-ammissione-page {
    --sca-green: var(--verde-principale, #264733);
    --sca-green-hover: var(--verde-hover, #1f3a2a);
    --sca-gold: var(--oro-accento, #d9b46b);
    --sca-cream: #f7f4ea;
    --sca-cream-light: #fbfaf6;
    --sca-white: #ffffff;
    --sca-text: var(--testo-principale, #2f2f2f);
    --sca-soft: #606660;
    --sca-border: rgba(38, 71, 51, 0.15);
    --sca-border-medium: rgba(38, 71, 51, 0.28);
    --sca-shadow: 0 16px 42px rgba(0, 0, 0, 0.08);
    --sca-shadow-soft: 0 7px 22px rgba(0, 0, 0, 0.045);

    width: 100% !important;
    max-width: 1120px !important;
    margin: 0 auto !important;
    padding: 0 20px 60px !important;
    color: var(--sca-text) !important;
    box-sizing: border-box !important;
}

body .sc-ammissione-page *,
body .sc-ammissione-page *::before,
body .sc-ammissione-page *::after {
    box-sizing: border-box !important;
}

body .sc-ammissione-page h1,
body .sc-ammissione-page h2,
body .sc-ammissione-page h3,
body .sc-ammissione-page p,
body .sc-ammissione-page ul,
body .sc-ammissione-page fieldset,
body .sc-ammissione-page legend {
    margin: 0 !important;
}

body .sc-ammissione-page ul {
    padding: 0 !important;
}

body .sc-ammissione-page form,
body .sc-ammissione-page fieldset {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    float: none !important;
}

body .sc-ammissione-page form,
body .sc-ammissione-page fieldset,
body .sc-ammissione-page input,
body .sc-ammissione-page select,
body .sc-ammissione-page textarea,
body .sc-ammissione-page button,
body .sc-ammissione-page label {
    font-family: inherit !important;
}

body .sc-ammissione-page a {
    text-decoration: none !important;
}

body .sc-ammissione-page .sc-ammissione-sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* ==========================================================
   BREADCRUMB
   ========================================================== */

body .sc-ammissione-page .sc-breadcrumb {
    width: 100% !important;
    max-width: 1080px !important;
    margin: 20px auto 14px !important;
    padding: 0 4px !important;
}

/* ==========================================================
   HERO
   ========================================================== */

body .sc-ammissione-page .sc-ammissione-hero {
    width: 100% !important;
    max-width: 980px !important;
    margin: 0 auto 46px !important;
    padding: 48px 38px 44px !important;
    border: 1px solid var(--sca-border) !important;
    border-radius: 34px !important;
    background: linear-gradient(135deg, var(--sca-cream) 0%, var(--sca-cream-light) 100%) !important;
    box-shadow: var(--sca-shadow) !important;
    text-align: center !important;
}

body .sc-ammissione-page .sc-ammissione-kicker,
body .sc-ammissione-page .sc-ammissione-section-label {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: fit-content !important;
    min-height: 29px !important;
    padding: 0 12px !important;
    border-radius: 999px !important;
    background: var(--sca-cream) !important;
    color: var(--sca-green) !important;
    font-size: 10px !important;
    font-weight: 850 !important;
    line-height: 1 !important;
    letter-spacing: 0.65px !important;
    text-transform: uppercase !important;
}

body .sc-ammissione-page .sc-ammissione-kicker {
    margin: 0 0 13px !important;
    border: 1px solid rgba(38, 71, 51, 0.11) !important;
    background: #ffffff !important;
}

body .sc-ammissione-page .sc-ammissione-hero h1 {
    max-width: 900px !important;
    margin: 0 auto !important;
    color: var(--sca-green) !important;
    font-size: clamp(38px, 5vw, 60px) !important;
    font-weight: 850 !important;
    line-height: 1.05 !important;
    letter-spacing: -0.8px !important;
}

body .sc-ammissione-page .sc-ammissione-claim {
    max-width: 760px !important;
    margin: 18px auto 0 !important;
    color: var(--sca-green) !important;
    font-size: clamp(18px, 2.2vw, 24px) !important;
    font-weight: 650 !important;
    line-height: 1.4 !important;
}

body .sc-ammissione-page .sc-ammissione-intro {
    max-width: 790px !important;
    margin: 16px auto 0 !important;
    color: var(--sca-soft) !important;
    font-size: 15.5px !important;
    line-height: 1.68 !important;
}

body .sc-ammissione-page .sc-ammissione-intro strong {
    color: var(--sca-green) !important;
    font-weight: 800 !important;
}

/* ==========================================================
   COME FUNZIONA
   ========================================================== */

body .sc-ammissione-page .sc-ammissione-process-block {
    width: 100% !important;
    max-width: 980px !important;
    margin: 0 auto 30px !important;
}

body .sc-ammissione-page .sc-ammissione-process-intro {
    width: 100% !important;
    max-width: 800px !important;
    margin: 0 auto 26px !important;
    text-align: center !important;
}

body .sc-ammissione-page .sc-ammissione-process-intro .sc-ammissione-section-label {
    margin-bottom: 11px !important;
}

body .sc-ammissione-page .sc-ammissione-process-intro h2 {
    max-width: 800px !important;
    margin: 0 auto !important;
    color: var(--sca-green) !important;
    font-size: clamp(30px, 4vw, 42px) !important;
    font-weight: 850 !important;
    line-height: 1.1 !important;
    letter-spacing: -0.5px !important;
}

body .sc-ammissione-page .sc-ammissione-process-intro p {
    max-width: 700px !important;
    margin: 13px auto 0 !important;
    color: var(--sca-soft) !important;
    font-size: 14.5px !important;
    line-height: 1.65 !important;
}

body .sc-ammissione-page .sc-ammissione-process {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 14px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

body .sc-ammissione-page .sc-ammissione-process-item {
    display: grid !important;
    grid-template-columns: 40px minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 13px !important;
    min-width: 0 !important;
    padding: 19px !important;
    border: 1px solid var(--sca-border) !important;
    border-radius: 20px !important;
    background: var(--sca-cream-light) !important;
    box-shadow: var(--sca-shadow-soft) !important;
}

body .sc-ammissione-page .sc-ammissione-process-item > span {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 40px !important;
    height: 40px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 14px !important;
    background: var(--sca-green) !important;
    color: #ffffff !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 10px !important;
    font-weight: 850 !important;
    line-height: 1 !important;
}

body .sc-ammissione-page .sc-ammissione-process-item > div {
    min-width: 0 !important;
}

body .sc-ammissione-page .sc-ammissione-process-item strong {
    display: block !important;
    margin: 1px 0 4px !important;
    color: var(--sca-green) !important;
    font-size: 14px !important;
    font-weight: 850 !important;
    line-height: 1.3 !important;
}

body .sc-ammissione-page .sc-ammissione-process-item p {
    color: var(--sca-soft) !important;
    font-size: 12.5px !important;
    line-height: 1.52 !important;
}

/* ==========================================================
   FORM BOX
   ========================================================== */

body .sc-ammissione-page .sc-ammissione-form-box {
    width: 100% !important;
    max-width: 980px !important;
    margin: 0 auto !important;
    padding: 34px !important;
    border: 1px solid var(--sca-border) !important;
    border-radius: 30px !important;
    background: #ffffff !important;
    box-shadow: var(--sca-shadow) !important;
    overflow: visible !important;
}

body .sc-ammissione-page #sc-ammissione-form {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

body .sc-ammissione-page .sc-ammissione-form-head {
    width: 100% !important;
    max-width: 760px !important;
    margin: 0 auto 28px !important;
    text-align: center !important;
}

body .sc-ammissione-page .sc-ammissione-form-head .sc-ammissione-section-label {
    margin-bottom: 10px !important;
}

body .sc-ammissione-page .sc-ammissione-form-head h2 {
    max-width: 760px !important;
    margin: 0 auto !important;
    color: var(--sca-green) !important;
    font-size: clamp(29px, 3.7vw, 40px) !important;
    font-weight: 850 !important;
    line-height: 1.1 !important;
    letter-spacing: -0.45px !important;
}

body .sc-ammissione-page .sc-ammissione-form-head p {
    max-width: 640px !important;
    margin: 11px auto 0 !important;
    color: var(--sca-soft) !important;
    font-size: 13.5px !important;
    line-height: 1.6 !important;
}

/* ==========================================================
   CATEGORIA ASSOCIATIVA
   Stessa logica flex usata nella pagina Sostienici
   ========================================================== */

body .sc-ammissione-page #sc-ammissione-form .sc-ammissione-fieldset {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    clear: both !important;
}

body .sc-ammissione-page #sc-ammissione-form .sc-ammissione-member-grid {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    justify-content: stretch !important;
    gap: 18px !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 0 22px !important;
    padding: 0 !important;
    float: none !important;
    clear: both !important;
    transform: none !important;
}

body .sc-ammissione-page #sc-ammissione-form .sc-ammissione-member-grid > .sc-ammissione-member-card {
    position: relative !important;
    display: flex !important;
    flex: 1 1 0 !important;
    flex-direction: column !important;
    width: 0 !important;
    min-width: 0 !important;
    max-width: none !important;
    min-height: 250px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 22px !important;
    float: none !important;
    clear: none !important;
    left: auto !important;
    right: auto !important;
    border: 2px solid var(--sca-border) !important;
    border-radius: 22px !important;
    background: #ffffff !important;
    box-shadow: none !important;
    cursor: pointer !important;
    transform: none;
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease, background .2s ease !important;
}

body .sc-ammissione-page #sc-ammissione-form .sc-ammissione-member-grid > .sc-ammissione-member-card:hover {
    border-color: var(--sca-border-medium) !important;
    transform: translateY(-2px);
}

body .sc-ammissione-page #sc-ammissione-form .sc-ammissione-member-grid > .sc-ammissione-member-card.is-selected {
    border-color: var(--sca-green) !important;
    background: linear-gradient(135deg, #ffffff 0%, var(--sca-cream-light) 100%) !important;
    box-shadow: 0 0 0 3px rgba(38, 71, 51, 0.07), var(--sca-shadow-soft) !important;
}

body .sc-ammissione-page .sc-ammissione-member-card input[type="radio"] {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 0 !important;
    pointer-events: none !important;
    clip-path: inset(50%) !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}

body .sc-ammissione-page .sc-ammissione-member-heading {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    width: 100% !important;
    margin: 0 0 11px !important;
    padding: 0 !important;
}

body .sc-ammissione-page .sc-ammissione-member-label {
    display: block !important;
    color: var(--sca-soft) !important;
    font-size: 10px !important;
    font-weight: 850 !important;
    line-height: 1.2 !important;
    letter-spacing: .65px !important;
    text-transform: uppercase !important;
}

body .sc-ammissione-page .sc-ammissione-member-select {
    position: relative !important;
    display: block !important;
    flex: 0 0 16px !important;
    width: 16px !important;
    height: 16px !important;
    min-width: 16px !important;
    min-height: 16px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 2px solid rgba(38, 71, 51, .35) !important;
    border-radius: 50% !important;
    background: #ffffff !important;
}

body .sc-ammissione-page .sc-ammissione-member-card.is-selected .sc-ammissione-member-select::after {
    content: "" !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    width: 7px !important;
    height: 7px !important;
    border-radius: 50% !important;
    background: var(--sca-green) !important;
    transform: translate(-50%, -50%) !important;
}

body .sc-ammissione-page .sc-ammissione-member-title-row {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

body .sc-ammissione-page .sc-ammissione-member-title-row h3 {
    width: auto !important;
    margin: 0 !important;
    color: var(--sca-green) !important;
    font-size: 22px !important;
    font-weight: 850 !important;
    line-height: 1.15 !important;
}

body .sc-ammissione-page .sc-ammissione-member-text {
    margin: 10px 0 0 !important;
    color: var(--sca-soft) !important;
    font-size: 13.5px !important;
    line-height: 1.55 !important;
}

body .sc-ammissione-page .sc-ammissione-member-note {
    margin: auto 0 0 !important;
    padding: 14px 0 0 !important;
    border-top: 1px solid var(--sca-border) !important;
    color: var(--sca-green) !important;
    font-size: 12px !important;
    font-weight: 750 !important;
    line-height: 1.45 !important;
}

/* ==========================================================
   HELP ?
   ========================================================== */

body .sc-ammissione-page .sc-ammissione-help {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 25px !important;
    width: 25px !important;
    height: 25px !important;
    min-width: 25px !important;
    min-height: 25px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid var(--sca-border-medium) !important;
    border-radius: 50% !important;
    background: var(--sca-cream) !important;
    color: var(--sca-green) !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    cursor: pointer !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    box-shadow: none !important;
}

body .sc-ammissione-page .sc-ammissione-help > span {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    color: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: 1 !important;
}

body .sc-ammissione-page .sc-ammissione-help:hover,
body .sc-ammissione-page .sc-ammissione-help:focus {
    border-color: var(--sca-green) !important;
    background: var(--sca-green) !important;
    color: #ffffff !important;
    outline: none !important;
}

body .sc-ammissione-page .sc-ammissione-help-panel {
    display: none !important;
    position: absolute !important;
    top: 94px !important;
    left: 22px !important;
    width: 310px !important;
    max-width: calc(100% - 44px) !important;
    padding: 15px !important;
    border-radius: 15px !important;
    background: var(--sca-green) !important;
    color: #ffffff !important;
    box-shadow: 0 12px 28px rgba(0, 0, 0, .17) !important;
    font-size: 12px !important;
    line-height: 1.55 !important;
    z-index: 100 !important;
}

body .sc-ammissione-page .sc-ammissione-help-panel.is-open {
    display: block !important;
}

body .sc-ammissione-page .sc-ammissione-help-panel strong {
    display: block !important;
    margin: 0 0 5px !important;
    color: #ffffff !important;
    font-size: 13px !important;
    font-weight: 850 !important;
}

/* ==========================================================
   QUOTA E CONTRIBUTI
   ========================================================== */

body .sc-ammissione-page .sc-ammissione-info-box {
    display: grid !important;
    grid-template-columns: 36px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 13px !important;
    width: 100% !important;
    margin: 0 0 22px !important;
    padding: 17px 19px !important;
    border: 1px solid var(--sca-border) !important;
    border-radius: 18px !important;
    background: var(--sca-cream) !important;
}

body .sc-ammissione-page .sc-ammissione-info-icon,
body .sc-ammissione-page .sc-ammissione-board-icon {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    min-height: 36px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 50% !important;
    background: var(--sca-green) !important;
    color: #ffffff !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
}

body .sc-ammissione-page .sc-ammissione-info-box > div:last-child {
    min-width: 0 !important;
}

body .sc-ammissione-page .sc-ammissione-info-box strong {
    display: block !important;
    margin: 0 0 3px !important;
    color: var(--sca-green) !important;
    font-size: 14px !important;
    font-weight: 850 !important;
    line-height: 1.35 !important;
}

body .sc-ammissione-page .sc-ammissione-info-box p {
    color: var(--sca-soft) !important;
    font-size: 12.5px !important;
    line-height: 1.55 !important;
}

/* ==========================================================
   SEZIONI FORM
   ========================================================== */

body .sc-ammissione-page .sc-ammissione-section {
    width: 100% !important;
    margin: 21px 0 0 !important;
    padding: 21px 0 0 !important;
    border-top: 1px solid var(--sca-border) !important;
}

body .sc-ammissione-page .sc-ammissione-section-head {
    display: grid !important;
    grid-template-columns: 36px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 12px !important;
    width: 100% !important;
    margin: 0 0 14px !important;
}

body .sc-ammissione-page .sc-ammissione-section-number {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 36px !important;
    height: 36px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 12px !important;
    background: var(--sca-cream) !important;
    color: var(--sca-green) !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
}

body .sc-ammissione-page .sc-ammissione-section-number > span {
    display: block !important;
    line-height: 1 !important;
}

body .sc-ammissione-page .sc-ammissione-section-head > div {
    min-width: 0 !important;
}

body .sc-ammissione-page .sc-ammissione-section-head h3 {
    color: var(--sca-green) !important;
    font-size: 21px !important;
    font-weight: 850 !important;
    line-height: 1.2 !important;
}

body .sc-ammissione-page .sc-ammissione-section-head p {
    margin: 4px 0 0 !important;
    color: var(--sca-soft) !important;
    font-size: 12.5px !important;
    line-height: 1.5 !important;
}

/* ==========================================================
   CAMPI
   ========================================================== */

body .sc-ammissione-page .sc-ammissione-fields-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    column-gap: 18px !important;
    row-gap: 12px !important;
    align-items: start !important;
    width: 100% !important;
}

body .sc-ammissione-page .sc-ammissione-field {
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

body .sc-ammissione-page .sc-ammissione-field-full {
    grid-column: 1 / -1 !important;
}

body .sc-ammissione-page .sc-ammissione-field label {
    display: block !important;
    width: 100% !important;
    margin: 0 0 5px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--sca-green) !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1.3 !important;
}

body .sc-ammissione-page .sc-ammissione-field label > span {
    color: #8f302c !important;
}

body .sc-ammissione-page .sc-ammissione-field input[type="text"],
body .sc-ammissione-page .sc-ammissione-field input[type="email"],
body .sc-ammissione-page .sc-ammissione-field input[type="tel"],
body .sc-ammissione-page .sc-ammissione-field input[type="date"],
body .sc-ammissione-page .sc-ammissione-field input[type="url"],
body .sc-ammissione-page .sc-ammissione-field input[type="number"],
body .sc-ammissione-page .sc-ammissione-field select,
body .sc-ammissione-page .sc-ammissione-field textarea {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    border: 1px solid rgba(38, 71, 51, .18) !important;
    border-radius: 15px !important;
    background: var(--sca-cream-light) !important;
    color: var(--sca-text) !important;
    font-size: 14px !important;
    box-shadow: none !important;
    outline: none !important;
}

body .sc-ammissione-page .sc-ammissione-field input[type="text"],
body .sc-ammissione-page .sc-ammissione-field input[type="email"],
body .sc-ammissione-page .sc-ammissione-field input[type="tel"],
body .sc-ammissione-page .sc-ammissione-field input[type="date"],
body .sc-ammissione-page .sc-ammissione-field input[type="url"],
body .sc-ammissione-page .sc-ammissione-field input[type="number"],
body .sc-ammissione-page .sc-ammissione-field select {
    min-height: 44px !important;
    padding: 9px 13px !important;
}

body .sc-ammissione-page .sc-ammissione-field textarea {
    min-height: 110px !important;
    padding: 12px 13px !important;
    resize: vertical !important;
}

body .sc-ammissione-page .sc-ammissione-field input:focus,
body .sc-ammissione-page .sc-ammissione-field select:focus,
body .sc-ammissione-page .sc-ammissione-field textarea:focus {
    border-color: var(--sca-green) !important;
    background: #ffffff !important;
    box-shadow: 0 0 0 3px rgba(38, 71, 51, .09) !important;
}

/* ==========================================================
   CHECKBOX INTERESSI / SOSTEGNO
   ========================================================== */

body .sc-ammissione-page .sc-ammissione-check-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: 100% !important;
}

body .sc-ammissione-page .sc-ammissione-check {
    display: grid !important;
    grid-template-columns: 18px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 11px !important;
    width: 100% !important;
    min-height: 48px !important;
    margin: 0 !important;
    padding: 11px 13px !important;
    border: 1px solid var(--sca-border) !important;
    border-radius: 14px !important;
    background: var(--sca-cream-light) !important;
}

/* ==========================================================
   CHECKBOX BASE
   ========================================================== */

body .sc-ammissione-page .sc-ammissione-check input[type="checkbox"],
body .sc-ammissione-page .sc-ammissione-consent input[type="checkbox"] {
    position: relative !important;
    display: block !important;
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    min-height: 18px !important;
    max-width: 18px !important;
    max-height: 18px !important;
    margin: 0 !important;
    padding: 0 !important;
    align-self: center !important;
    border: 1px solid rgba(38, 71, 51, .42) !important;
    border-radius: 4px !important;
    background: #ffffff !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    cursor: pointer !important;
    box-shadow: none !important;
}

body .sc-ammissione-page .sc-ammissione-check input[type="checkbox"]::after,
body .sc-ammissione-page .sc-ammissione-consent input[type="checkbox"]::after {
    content: "" !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    width: 9px !important;
    height: 9px !important;
    border-radius: 2px !important;
    background: var(--sca-green) !important;
    transform: translate(-50%, -50%) scale(0) !important;
    transition: transform .12s ease !important;
}

body .sc-ammissione-page .sc-ammissione-check input[type="checkbox"]:checked::after,
body .sc-ammissione-page .sc-ammissione-consent input[type="checkbox"]:checked::after {
    transform: translate(-50%, -50%) scale(1) !important;
}

body .sc-ammissione-page .sc-ammissione-check label {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    min-height: 18px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #414641 !important;
    font-size: 12.5px !important;
    font-weight: 650 !important;
    line-height: 1.35 !important;
    cursor: pointer !important;
}

/* ==========================================================
   DINAMICO
   ========================================================== */

body .sc-ammissione-page .sc-ammissione-dynamic {
    display: none !important;
}

body .sc-ammissione-page .sc-ammissione-dynamic.is-visible {
    display: block !important;
}

/* ==========================================================
   DICHIARAZIONI
   ========================================================== */

body .sc-ammissione-page .sc-ammissione-consent {
    display: grid !important;
    grid-template-columns: 18px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 12px !important;
    width: 100% !important;
    min-height: 62px !important;
    margin: 0 0 8px !important;
    padding: 13px 14px !important;
    border: 1px solid var(--sca-border) !important;
    border-radius: 14px !important;
    background: var(--sca-cream-light) !important;
}

body .sc-ammissione-page label.sc-ammissione-consent-text {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #515651 !important;
    font-size: 12.5px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
    cursor: pointer !important;
}

body .sc-ammissione-page .sc-ammissione-consent-text strong {
    color: var(--sca-green) !important;
    font-weight: 800 !important;
}

body .sc-ammissione-page .sc-ammissione-consent-text a {
    display: inline !important;
    color: var(--sca-green) !important;
    font-size: inherit !important;
    font-weight: 700 !important;
    line-height: inherit !important;
    text-decoration: underline !important;
    text-underline-offset: 3px !important;
}

/* ==========================================================
   INVIO
   ========================================================== */

body .sc-ammissione-page .sc-ammissione-submit {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    margin: 28px 0 0 !important;
    text-align: center !important;
}

body .sc-ammissione-page .sc-ammissione-submit button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 270px !important;
    height: 48px !important;
    min-height: 48px !important;
    margin: 0 auto !important;
    padding: 0 26px !important;
    border: 1px solid var(--sca-green) !important;
    border-radius: 999px !important;
    background: var(--sca-green) !important;
    color: #ffffff !important;
    font-size: 13px !important;
    font-weight: 850 !important;
    line-height: 1 !important;
    text-align: center !important;
    cursor: pointer !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    box-shadow: none !important;
    transition: background .2s ease, border-color .2s ease, transform .2s ease, box-shadow .2s ease !important;
}

body .sc-ammissione-page .sc-ammissione-submit button:hover {
    background: var(--sca-green-hover) !important;
    border-color: var(--sca-green-hover) !important;
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(38, 71, 51, .17) !important;
}

body .sc-ammissione-page .sc-ammissione-submit p {
    max-width: 600px !important;
    margin: 11px auto 0 !important;
    color: var(--sca-soft) !important;
    font-size: 11px !important;
    line-height: 1.5 !important;
    text-align: center !important;
}

/* ==========================================================
   CONSIGLIO DIRETTIVO
   ========================================================== */

body .sc-ammissione-page .sc-ammissione-board-note {
    display: grid !important;
    grid-template-columns: 36px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 13px !important;
    width: 100% !important;
    max-width: 900px !important;
    margin: 22px auto 0 !important;
    padding: 18px 20px !important;
    border: 1px solid var(--sca-border) !important;
    border-radius: 20px !important;
    background: var(--sca-cream-light) !important;
}

body .sc-ammissione-page .sc-ammissione-board-note > div {
    min-width: 0 !important;
}

body .sc-ammissione-page .sc-ammissione-board-note strong {
    display: block !important;
    margin: 0 0 4px !important;
    color: var(--sca-green) !important;
    font-size: 14px !important;
    font-weight: 850 !important;
    line-height: 1.3 !important;
}

body .sc-ammissione-page .sc-ammissione-board-note p {
    color: var(--sca-soft) !important;
    font-size: 12.5px !important;
    line-height: 1.55 !important;
}

/* ==========================================================
   FOCUS
   ========================================================== */

body .sc-ammissione-page .sc-ammissione-member-card:focus-visible,
body .sc-ammissione-page .sc-ammissione-submit button:focus-visible,
body .sc-ammissione-page .sc-ammissione-help:focus-visible {
    outline: 3px solid rgba(217, 180, 107, .50) !important;
    outline-offset: 3px !important;
}

/* ==========================================================
   TABLET
   ========================================================== */

@media (max-width: 900px) {
    body .sc-ammissione-page .sc-ammissione-process {
        grid-template-columns: 1fr !important;
    }
}

/* ==========================================================
   MOBILE
   ========================================================== */

@media (max-width: 760px) {
    body .sc-ammissione-page {
        padding: 0 16px 44px !important;
    }

    body .sc-ammissione-page .sc-breadcrumb {
        margin-top: 15px !important;
        margin-bottom: 12px !important;
        padding: 0 !important;
    }

    body .sc-ammissione-page .sc-ammissione-hero {
        margin-bottom: 38px !important;
        padding: 34px 22px !important;
        border-radius: 27px !important;
    }

    body .sc-ammissione-page .sc-ammissione-hero h1 {
        font-size: clamp(34px, 9.5vw, 46px) !important;
    }

    body .sc-ammissione-page .sc-ammissione-process-intro h2,
    body .sc-ammissione-page .sc-ammissione-form-head h2 {
        font-size: clamp(28px, 8vw, 37px) !important;
    }

    body .sc-ammissione-page .sc-ammissione-form-box {
        padding: 27px 21px !important;
        border-radius: 26px !important;
    }

    body .sc-ammissione-page #sc-ammissione-form .sc-ammissione-member-grid {
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        gap: 13px !important;
    }

    body .sc-ammissione-page #sc-ammissione-form .sc-ammissione-member-grid > .sc-ammissione-member-card {
        flex: 0 0 auto !important;
        width: 100% !important;
        min-height: 0 !important;
        padding: 20px !important;
    }

    body .sc-ammissione-page .sc-ammissione-fields-grid,
    body .sc-ammissione-page .sc-ammissione-check-grid {
        grid-template-columns: 1fr !important;
    }

    body .sc-ammissione-page .sc-ammissione-field-full {
        grid-column: auto !important;
    }

    body .sc-ammissione-page .sc-ammissione-submit button {
        width: 100% !important;
        min-width: 0 !important;
    }

    body .sc-ammissione-page .sc-ammissione-help-panel {
        width: calc(100% - 40px) !important;
        left: 20px !important;
    }
}

/* ==========================================================
   MOBILE PICCOLO
   ========================================================== */

@media (max-width: 480px) {
    body .sc-ammissione-page {
        padding-left: 14px !important;
        padding-right: 14px !important;
    }

    body .sc-ammissione-page .sc-ammissione-form-box {
        padding: 24px 17px !important;
    }

    body .sc-ammissione-page .sc-ammissione-info-box,
    body .sc-ammissione-page .sc-ammissione-board-note {
        align-items: start !important;
        padding: 16px 17px !important;
    }

    body .sc-ammissione-page .sc-ammissione-consent {
        align-items: center !important;
    }
}

/* ==========================================================
   RIDUZIONE ANIMAZIONI
   ========================================================== */

@media (prefers-reduced-motion: reduce) {
    body .sc-ammissione-page *,
    body .sc-ammissione-page *::before,
    body .sc-ammissione-page *::after {
        transition-duration: 0.01ms !important;
        animation-duration: 0.01ms !important;
    }
}


/* ==================================================
   CONTENUTI PROTETTI DA PASSWORD
================================================== */

.post-password-form {
    width: min(680px, calc(100% - 40px));
    margin: 64px auto 72px !important;
    padding: 38px 40px;

    box-sizing: border-box;

    background: linear-gradient(
        135deg,
        #f7f4ea 0%,
        #fbfaf6 100%
    );

    border: 1px solid rgba(38, 71, 51, 0.16);
    border-radius: 28px;

    box-shadow:
        0 16px 42px rgba(0, 0, 0, 0.08);

    color: var(--testo-principale);
    text-align: center;
}


/* Tutti gli elementi interni */

.post-password-form *,
.post-password-form *::before,
.post-password-form *::after {
    box-sizing: border-box;
}


/* Piccolo accento grafico superiore */

.post-password-form::before {
    content: "";

    display: block;

    width: 58px;
    height: 4px;

    margin: 0 auto 22px;

    border-radius: 999px;

    background: var(--oro-accento);
}


/* Testo introduttivo WordPress */

.post-password-form > p:first-child {
    max-width: 540px;

    margin: 0 auto 30px;

    color: var(--verde-principale);

    font-size: 18px;
    font-weight: 600;
    line-height: 1.65;
}


/* Riga campo password + pulsante */

.post-password-form > p:last-child {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        auto;

    align-items: end;

    gap: 12px;

    margin: 0;
}


/* Etichetta password */

.post-password-form label {
    display: grid;

    gap: 8px;

    min-width: 0;

    color: var(--verde-principale);

    font-size: 13px;
    font-weight: 800;
    line-height: 1.2;

    text-align: left;

    letter-spacing: 0.3px;
}


/* Campo password */

.post-password-form input[type="password"],
.post-password-form input[name="post_password"] {
    display: block;

    width: 100% !important;
    min-width: 0;
    height: 50px;

    margin: 0 !important;
    padding: 0 18px !important;

    border:
        1px solid
        var(--bordo-medio) !important;

    border-radius:
        var(--radius-pill) !important;

    background: #ffffff !important;

    color:
        var(--testo-principale) !important;

    font: inherit;
    font-size: 16px;

    outline: none;

    box-shadow: none !important;

    transition:
        border-color 0.2s ease,
        box-shadow 0.2s ease,
        background 0.2s ease;
}


/* Focus campo password */

.post-password-form input[type="password"]:focus,
.post-password-form input[name="post_password"]:focus {
    border-color:
        var(--verde-principale) !important;

    background:
        #ffffff !important;

    box-shadow:
        0 0 0 3px
        rgba(38, 71, 51, 0.10) !important;
}


/* Pulsante INVIO */

.post-password-form input[type="submit"] {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    min-width: 130px;
    height: 50px;

    margin: 0 !important;
    padding: 0 24px !important;

    border:
        1px solid
        var(--verde-principale) !important;

    border-radius:
        var(--radius-pill) !important;

    background:
        var(--verde-principale) !important;

    color:
        #ffffff !important;

    font: inherit;
    font-size: 14px;
    font-weight: 800;
    line-height: 1;

    cursor: pointer;

    appearance: none;

    box-shadow:
        0 8px 20px
        rgba(38, 71, 51, 0.14);

    transition:
        background 0.2s ease,
        border-color 0.2s ease,
        transform 0.2s ease,
        box-shadow 0.2s ease;
}


/* Hover pulsante */

.post-password-form input[type="submit"]:hover {
    background:
        var(--verde-hover) !important;

    border-color:
        var(--verde-hover) !important;

    color:
        #ffffff !important;

    transform:
        translateY(-1px);

    box-shadow:
        0 10px 24px
        rgba(38, 71, 51, 0.20);
}


/* Focus tastiera */

.post-password-form input[type="submit"]:focus-visible {
    outline:
        3px solid
        rgba(217, 180, 107, 0.45);

    outline-offset: 3px;
}


/* ==================================================
   MOBILE
================================================== */

@media (max-width: 600px) {

    .post-password-form {
        width: calc(100% - 28px);

        margin:
            36px auto 52px !important;

        padding:
            28px 20px;

        border-radius: 24px;
    }


    .post-password-form::before {
        width: 48px;

        margin-bottom: 18px;
    }


    .post-password-form > p:first-child {
        margin-bottom: 24px;

        font-size: 16px;
        line-height: 1.6;
    }


    .post-password-form > p:last-child {
        grid-template-columns: 1fr;

        gap: 12px;
    }


    .post-password-form input[type="password"],
    .post-password-form input[name="post_password"] {
        height: 48px;
    }


    .post-password-form input[type="submit"] {
        width: 100%;

        height: 48px;
    }
}

/* ==========================================================
   EMIGRATI COTRONEI APS
   PAGINA STATUTO - stile coordinato con Scopri Cotronei
   ========================================================== */

.sc-statuto-page,
.sc-statuto-page *,
.sc-statuto-page *::before,
.sc-statuto-page *::after {
    box-sizing: border-box;
}

.sc-statuto-page {
    --sc-statuto-green: var(--verde-principale, #264733);
    --sc-statuto-green-hover: var(--verde-hover, #1f3a2a);
    --sc-statuto-gold: var(--oro-accento, #d9b46b);

    --sc-statuto-cream: #f7f4ea;
    --sc-statuto-cream-light: #fbfaf6;
    --sc-statuto-white: #ffffff;

    --sc-statuto-text: var(--testo-principale, #2f2f2f);
    --sc-statuto-soft: #5f635f;
    --sc-statuto-border: rgba(38, 71, 51, 0.16);
    --sc-statuto-border-soft: rgba(38, 71, 51, 0.11);

    --sc-statuto-shadow: 0 16px 42px rgba(0, 0, 0, 0.08);
    --sc-statuto-shadow-soft: 0 8px 26px rgba(0, 0, 0, 0.055);

    width: 100%;
    max-width: 1120px;
    margin: 0 auto;
    padding: 0 20px 60px;
    color: var(--sc-statuto-text);
}

.sc-statuto-page h1,
.sc-statuto-page h2,
.sc-statuto-page p,
.sc-statuto-page ol,
.sc-statuto-page ul {
    margin-top: 0;
}

.sc-statuto-page a {
    text-decoration: none;
}

/* ==========================================================
   HERO
   ========================================================== */

.sc-statuto-hero {
    width: 100%;
    max-width: 980px;
    margin: 22px auto 30px;
    padding: 48px 34px 42px;
    border: 1px solid var(--sc-statuto-border);
    border-radius: 34px;
    background: linear-gradient(
        135deg,
        var(--sc-statuto-cream) 0%,
        var(--sc-statuto-cream-light) 100%
    );
    box-shadow: var(--sc-statuto-shadow);
    text-align: center;
}

.sc-statuto-hero-inner {
    width: 100%;
    max-width: 880px;
    margin: 0 auto;
    padding: 0;
}

.sc-statuto-kicker {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    min-height: 36px;
    margin-bottom: 15px;
    padding: 0 14px;
    border: 1px solid rgba(38, 71, 51, 0.13);
    border-radius: 999px;
    background: var(--sc-statuto-white);
    color: var(--sc-statuto-green);
    font-size: 11px;
    font-weight: 850;
    line-height: 1;
    letter-spacing: 0.65px;
    text-transform: uppercase;
}

.sc-statuto-page .sc-statuto-hero h1 {
    max-width: 880px;
    margin: 0 auto;
    color: var(--sc-statuto-green);
    font-size: clamp(38px, 5vw, 62px);
    font-weight: 850;
    line-height: 1.05;
    letter-spacing: -0.8px;
}

.sc-statuto-lead {
    max-width: 730px;
    margin: 21px auto 0;
    color: var(--sc-statuto-soft);
    font-size: 16px;
    line-height: 1.7;
}

/* ==========================================================
   STRUTTURA: INDICE + DOCUMENTO
   ========================================================== */

.sc-statuto-layout {
    display: grid;
    grid-template-columns: minmax(230px, 270px) minmax(0, 1fr);
    gap: 28px;
    align-items: start;
    width: 100%;
    max-width: 1040px;
    margin: 0 auto;
    padding: 6px 0 0;
}

.sc-statuto-sidebar,
.sc-statuto-content {
    min-width: 0;
}

/* ==========================================================
   INDICE
   ========================================================== */

.sc-statuto-index {
    position: sticky;
    top: 110px;
    overflow: hidden;
    border: 1px solid var(--sc-statuto-border);
    border-radius: 24px;
    background: var(--sc-statuto-white);
    box-shadow: var(--sc-statuto-shadow-soft);
}

.sc-statuto-index summary {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 62px;
    padding: 17px 54px 17px 20px;
    cursor: pointer;
    list-style: none;
    border-bottom: 1px solid transparent;
    background: linear-gradient(
        135deg,
        var(--sc-statuto-cream) 0%,
        var(--sc-statuto-cream-light) 100%
    );
    color: var(--sc-statuto-green);
    font-size: 15px;
    font-weight: 850;
    line-height: 1.25;
}

.sc-statuto-index[open] summary {
    border-bottom-color: var(--sc-statuto-border-soft);
}

.sc-statuto-index summary::-webkit-details-marker {
    display: none;
}

.sc-statuto-index summary::marker {
    content: "";
}

.sc-statuto-index summary::after {
    content: "+";
    position: absolute;
    top: 50%;
    right: 17px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    transform: translateY(-50%);
    border-radius: 50%;
    background: rgba(38, 71, 51, 0.08);
    color: var(--sc-statuto-green);
    font-size: 21px;
    font-weight: 500;
    line-height: 1;
}

.sc-statuto-index[open] summary::after {
    content: "−";
}

.sc-statuto-index ol {
    max-height: calc(100vh - 220px);
    margin: 0;
    padding: 10px;
    overflow-y: auto;
    list-style: none;
    scrollbar-width: thin;
}

.sc-statuto-index li {
    margin: 0;
    padding: 0;
}

.sc-statuto-index a {
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr);
    gap: 8px;
    align-items: start;
    padding: 10px 11px;
    border-radius: 12px;
    color: var(--sc-statuto-soft);
    font-size: 12.5px;
    line-height: 1.4;
    transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.sc-statuto-index a span {
    color: var(--sc-statuto-green);
    font-weight: 850;
}

.sc-statuto-index a:hover,
.sc-statuto-index a:focus-visible {
    background: var(--sc-statuto-cream);
    color: var(--sc-statuto-green);
    transform: translateX(2px);
    outline: none;
}

/* ==========================================================
   DOCUMENTO
   ========================================================== */

.sc-statuto-content {
    width: 100%;
    padding: 28px 30px 32px;
    border: 1px solid var(--sc-statuto-border-soft);
    border-radius: 28px;
    background: var(--sc-statuto-white);
    box-shadow: var(--sc-statuto-shadow-soft);
}

.sc-statuto-document-title {
    margin-bottom: 10px;
    padding: 30px 28px;
    border: 1px solid var(--sc-statuto-border);
    border-radius: 22px;
    background: linear-gradient(
        135deg,
        var(--sc-statuto-cream) 0%,
        var(--sc-statuto-cream-light) 100%
    );
    text-align: center;
}

.sc-statuto-document-title > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    min-height: 32px;
    margin-bottom: 13px;
    padding: 0 12px;
    border: 1px solid rgba(38, 71, 51, 0.12);
    border-radius: 999px;
    background: var(--sc-statuto-white);
    color: var(--sc-statuto-green);
    font-size: 10px;
    font-weight: 850;
    line-height: 1;
    letter-spacing: 0.6px;
    text-transform: uppercase;
}

.sc-statuto-document-title p {
    margin: 0;
    color: var(--sc-statuto-text);
    font-size: 14px;
    font-weight: 750;
    line-height: 1.55;
    letter-spacing: 0.035em;
}

.sc-statuto-document-title strong {
    display: block;
    margin-top: 9px;
    color: var(--sc-statuto-green);
    font-size: 22px;
    font-weight: 850;
    line-height: 1.3;
}

/* ==========================================================
   ARTICOLI
   ========================================================== */

.sc-statuto-article {
    scroll-margin-top: 120px;
    margin: 0;
    padding: 34px 4px 36px;
    border-bottom: 1px solid var(--sc-statuto-border-soft);
}

.sc-statuto-article:last-of-type {
    border-bottom: 0;
}

.sc-statuto-article-head {
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr);
    gap: 16px;
    align-items: start;
    margin-bottom: 20px;
}

.sc-statuto-article-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: 7px 10px;
    border: 1px solid rgba(38, 71, 51, 0.12);
    border-radius: 999px;
    background: var(--sc-statuto-cream);
    color: var(--sc-statuto-green);
    font-size: 12px;
    font-weight: 850;
    line-height: 1;
    white-space: nowrap;
}

.sc-statuto-page .sc-statuto-article h2 {
    margin: 1px 0 0;
    color: var(--sc-statuto-green);
    font-size: 24px !important;
    line-height: 1.22 !important;
    font-weight: 850;
    letter-spacing: -0.35px;
}

.sc-statuto-article-body {
    padding-left: 88px;
}

.sc-statuto-article-body p {
    margin: 0 0 17px;
    color: #333333;
    font-size: 16px;
    line-height: 1.78;
}

.sc-statuto-article-body p:last-child {
    margin-bottom: 0;
}

.sc-statuto-article-body ul {
    margin: 4px 0 20px;
    padding: 0;
    list-style: none;
}

.sc-statuto-article-body li {
    position: relative;
    margin: 0;
    padding: 8px 0 8px 24px;
    color: #333333;
    font-size: 16px;
    line-height: 1.7;
}

.sc-statuto-article-body li::before {
    content: "";
    position: absolute;
    top: 18px;
    left: 2px;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--sc-statuto-gold);
    box-shadow: 0 0 0 3px rgba(217, 180, 107, 0.16);
}

/* ==========================================================
   CHIUSURA
   ========================================================== */

.sc-statuto-closing {
    margin-top: 34px;
    padding: 30px 26px;
    border-radius: 28px;
    background: linear-gradient(
        135deg,
        var(--sc-statuto-green) 0%,
        var(--sc-statuto-green-hover) 100%
    );
    color: var(--sc-statuto-white);
    text-align: center;
    box-shadow: var(--sc-statuto-shadow);
}

.sc-statuto-closing span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    margin-bottom: 10px;
    padding: 0 11px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.12);
    color: var(--sc-statuto-white);
    font-size: 10px;
    font-weight: 850;
    line-height: 1;
    letter-spacing: 0.65px;
    text-transform: uppercase;
}

.sc-statuto-closing strong {
    display: block;
    color: var(--sc-statuto-white);
    font-size: 21px;
    font-weight: 850;
    line-height: 1.4;
}

/* ==========================================================
   TABLET
   ========================================================== */

@media (max-width: 980px) {
    .sc-statuto-layout {
        grid-template-columns: 1fr;
        gap: 20px;
        max-width: 900px;
    }

    .sc-statuto-index {
        position: static;
        border-radius: 22px;
    }

    .sc-statuto-index ol {
        max-height: 320px;
    }

    .sc-statuto-content {
        max-width: none;
    }
}

/* ==========================================================
   MOBILE
   ========================================================== */

@media (max-width: 767px) {
    .sc-statuto-page {
        padding: 0 16px 44px;
    }

    .sc-statuto-hero {
        margin-top: 12px;
        margin-bottom: 22px;
        padding: 34px 22px;
        border-radius: 28px;
    }

    .sc-statuto-page .sc-statuto-hero h1 {
        font-size: clamp(34px, 10vw, 46px);
    }

    .sc-statuto-lead {
        font-size: 16px;
        line-height: 1.65;
    }

    .sc-statuto-layout {
        gap: 16px;
        padding-top: 0;
    }

    .sc-statuto-index {
        border-radius: 20px;
    }

    .sc-statuto-index summary {
        min-height: 58px;
        padding: 15px 52px 15px 17px;
    }

    .sc-statuto-index ol {
        max-height: 285px;
    }

    .sc-statuto-content {
        padding: 20px 18px 24px;
        border-radius: 24px;
    }

    .sc-statuto-document-title {
        padding: 25px 18px;
        border-radius: 20px;
    }

    .sc-statuto-document-title p {
        font-size: 13px;
    }

    .sc-statuto-document-title strong {
        font-size: 19px;
    }

    .sc-statuto-article {
        padding: 29px 0 31px;
    }

    .sc-statuto-article-head {
        grid-template-columns: 1fr;
        gap: 10px;
        margin-bottom: 17px;
    }

    .sc-statuto-article-number {
        justify-self: start;
    }

    .sc-statuto-page .sc-statuto-article h2 {
        font-size: 24px !important;
        line-height: 1.22 !important;
    }

    .sc-statuto-article-body {
        padding-left: 0;
    }

    .sc-statuto-article-body p,
    .sc-statuto-article-body li {
        font-size: 15.5px;
        line-height: 1.72;
    }

    .sc-statuto-index a {
        grid-template-columns: 51px minmax(0, 1fr);
        padding: 10px;
    }

    .sc-statuto-closing {
        margin-top: 28px;
        padding: 27px 18px;
        border-radius: 24px;
    }
}

@media (max-width: 480px) {
    .sc-statuto-page {
        padding-left: 11px;
        padding-right: 11px;
    }

    .sc-statuto-hero {
        padding-left: 18px;
        padding-right: 18px;
    }

    .sc-statuto-content {
        padding-left: 15px;
        padding-right: 15px;
    }

    .sc-statuto-index a {
        grid-template-columns: 48px minmax(0, 1fr);
        font-size: 12px;
    }
}

/* ==========================================================
   STAMPA
   ========================================================== */

@media print {
    .sc-statuto-page {
        max-width: none;
        padding: 0;
    }

    .sc-statuto-hero,
    .sc-statuto-sidebar {
        display: none !important;
    }

    .sc-statuto-layout {
        display: block;
        width: 100%;
        max-width: none;
        margin: 0;
        padding: 0;
    }

    .sc-statuto-content {
        max-width: none;
        padding: 0;
        border: 0;
        border-radius: 0;
        box-shadow: none;
    }

    .sc-statuto-document-title {
        background: none;
        box-shadow: none;
    }

    .sc-statuto-article,
    .sc-statuto-document-title,
    .sc-statuto-closing {
        break-inside: avoid;
    }

    .sc-statuto-closing {
        background: none;
        color: #000000;
        border: 1px solid #cccccc;
        box-shadow: none;
    }

    .sc-statuto-closing span,
    .sc-statuto-closing strong {
        color: #000000;
    }
}

/* ==========================================================
   FIX DEFINITIVO TITOLI ARTICOLI STATUTO
   ========================================================== */

/* Desktop: numero articolo + titolo sulla stessa riga */
body .sc-statuto-page
.sc-statuto-article
.sc-statuto-article-head {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;

    width: 100% !important;
    max-width: none !important;

    gap: 16px !important;
    margin-bottom: 20px !important;
}


/* Colonna numero articolo */
body .sc-statuto-page
.sc-statuto-article
.sc-statuto-article-number {
    flex: 0 0 72px !important;

    width: 72px !important;
    min-width: 72px !important;
    max-width: 72px !important;
}


/* Titolo articolo */
body .sc-statuto-page
.sc-statuto-article
.sc-statuto-article-head h2 {
    flex: 1 1 0 !important;

    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;

    margin: 1px 0 0 !important;

    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;

    font-size: clamp(23px, 2.5vw, 30px) !important;
    line-height: 1.18 !important;
}


/* ==========================================================
   MOBILE
   ========================================================== */

@media (max-width: 767px) {

    body .sc-statuto-page
    .sc-statuto-article
    .sc-statuto-article-head {
        flex-direction: column !important;
        gap: 11px !important;
    }

    body .sc-statuto-page
    .sc-statuto-article
    .sc-statuto-article-number {
        flex: 0 0 auto !important;

        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
    }

    body .sc-statuto-page
    .sc-statuto-article
    .sc-statuto-article-head h2 {
        width: 100% !important;

        font-size: 24px !important;
        line-height: 1.2 !important;
    }

    .sc-statuto-page .sc-statuto-article-body {
        padding-left: 0 !important;
    }
}


