.btn-success,
.btn-success:link,
.btn-success:visited,
.btn-success:hover,
.btn-success:focus,
.btn-success:active {
	color: #fff;
}

/* ==========================================================================
   Colore primary del tema
   Il valore effettivo viene impostato da wp-admin (Aspetto tema > Colore
   primario, vedi inc/theme-options.php) e iniettato come CSS custom
   property subito dopo questo file. Qui sotto solo un fallback e le
   regole che usano var(--bs-primary): nessun colore hard-coded.
   ========================================================================== */

:root {
	--bs-primary: #021e60;
	--bs-primary-rgb: 2, 30, 96;
	--bs-link-color: var(--bs-primary);
	--bs-link-hover-color: var(--bs-primary);
}

.btn-primary,
.btn-primary.disabled,
.btn-primary:disabled {
	background-color: var(--bs-primary);
	border-color: var(--bs-primary);
}

.btn-outline-primary,
.btn-outline-primary.focus,
.btn-outline-primary:focus,
.btn-outline-primary.disabled,
.btn-outline-primary:disabled,
.btn-outline-primary:not(:disabled):not(.disabled).active,
.btn-outline-primary:not(:disabled):not(.disabled):active,
.show > .btn-outline-primary.dropdown-toggle {
	color: var(--bs-primary);
	border-color: var(--bs-primary);
	box-shadow: inset 0 0 0 2px var(--bs-primary);
}

.link-primary,
.alert-link,
.accordion-header .accordion-button,
.accordion-header .accordion-button:after,
.it-calendar-wrapper .card .card-text a:hover,
.btn-dropdown,
nav.pagination-wrapper .btn.dropdown-toggle:after,
.pagination .page-item .page-link[aria-current],
.pagination .page-item .page-link.text,
.pagination .page-item .page-link:hover {
	color: var(--bs-primary);
}

.alert-primary {
	border-left-color: var(--bs-primary);
}

.dropdown-menu .dropdown-item.active,
.dropdown-menu .dropdown-item:active,
.nav-pills .nav-link.active,
.pagination .page-item.active .page-link,
.accordion.accordion-background-active .accordion-header .accordion-button[aria-expanded="true"],
.accordion.accordion-background-hover .accordion-header .accordion-button:hover,
.btn-icon .rounded-icon.rounded-primary {
	background-color: var(--bs-primary);
	border-color: var(--bs-primary);
}

.form-check-input:checked,
.form-check [type="checkbox"]:checked + label:after,
.form-check [type="radio"]:checked + label:after {
	background-color: var(--bs-primary);
	border-color: var(--bs-primary);
}

/* ==========================================================================
   Header: sfondo bianco, contenuti nel colore primary
   ========================================================================== */

.it-header-slim-wrapper,
.it-header-center-wrapper {
	background: #fff !important;
}

.it-header-navbar-wrapper,
.it-header-navbar-wrapper .navbar-collapsable .menu-wrapper {
	background: var(--bs-primary);
}

.it-header-navbar-wrapper .navbar-collapsable .navbar-nav li a.nav-link {
	color: #fff !important;
}

.it-header-slim-wrapper {
	border-bottom: 1px solid rgba(var(--bs-primary-rgb), 0.2);
}

.it-header-slim-wrapper .it-header-slim-wrapper-content a,
.it-header-slim-wrapper .it-header-slim-wrapper-content .navbar-brand,
.it-brand-wrapper a,
.it-search-wrapper,
.it-header-navbar-wrapper .custom-navbar-toggler,
.it-header-navbar-wrapper .custom-navbar-toggler span,
.it-header-navbar-wrapper .navbar-collapsable .logo-hamburger,
.it-header-navbar-wrapper .navbar-collapsable .it-socials,
.it-header-navbar-wrapper .close-div .close-menu {
	color: var(--bs-primary) !important;
}

.it-header-wrapper .nav-item.dropdown button {
	background: var(--bs-primary);
}

.it-header-wrapper .search-link {
	background: var(--bs-primary);
}
.it-header-center-wrapper .it-right-zone svg {
	fill: #fff !important;
}

.it-header-slim-wrapper .it-header-slim-wrapper-content a .icon,
.it-brand-wrapper a .icon,
.it-header-navbar-wrapper .custom-navbar-toggler svg,
.it-header-navbar-wrapper .custom-navbar-toggler .icon,
.it-header-navbar-wrapper .navbar-collapsable .logo-hamburger .icon,
.it-header-navbar-wrapper .navbar-collapsable .it-socials ul li a svg,
.it-header-navbar-wrapper .close-div .close-menu .icon {
	fill: #fff !important;
}

.it-header-navbar-wrapper .navbar-collapsable .navbar-nav li.nav-item a.nav-link.active,
.it-header-navbar-wrapper .navbar-collapsable .navbar-nav li.nav-item button.nav-link.active {
	border-color: var(--bs-primary) !important;
}

/* ==========================================================================
   Elenco pagine figlie (usato in tutto l'albero dei contenuti, es. Consorzio
   Trasparente): lista invece che bottoni.
   ========================================================================== */

.figli-pagina-list {
	margin: 0;
	padding: 0;
}

.figli-pagina-item {
	border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}

.figli-pagina-item:first-child {
	border-top: 1px solid rgba(0, 0, 0, 0.2);
}

.figli-pagina-item a {
	display: block;
	padding: 0.75rem 0;
	color: var(--bs-primary);
	text-decoration: none;
}

.figli-pagina-item a:hover {
	text-decoration: underline;
}

/* ==========================================================================
   Blocchi di contenuto delle Pagine: tabella, icona con testo, immagine
   con testo (vedi inc/blocchi-pagina.php, campo "Blocchi di contenuto"
   nell'editor della Pagina). Markup generato da PHP, non da Gutenberg
   (il sito usa l'editor classico): questi stili sono autosufficienti,
   non dipendono dai CSS dei blocchi nativi di WordPress.
   ========================================================================== */

.wp-block-table {
	overflow-x: auto;
	margin-bottom: 1.5rem;
}

.wp-block-table table {
	width: 100%;
	margin-bottom: 0;
	font-size: 1.125rem;
	border-collapse: collapse;
}

.wp-block-table table th,
.wp-block-table table td {
	padding: 0.5rem;
	vertical-align: top;
	border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}

.wp-block-table table thead th {
	border-bottom-width: 2px;
	border-bottom-color: var(--bs-primary);
	vertical-align: bottom;
	color: var(--bs-primary);
}

.qe-icone-container {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 2rem;
	margin-bottom: 1.5rem;
}

@media (max-width: 767.98px) {
	.qe-icone-container {
		grid-template-columns: 1fr;
	}
}

.qe-icona-testo {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 0.75rem;
}

.qe-icona-testo__icona {
	flex: 0 0 auto;
	width: 64px;
}

.qe-icona-testo__icona img {
	display: block;
	width: 100%;
	height: auto;
}

.qe-loghi-container {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	align-items: center;
	gap: 2rem;
	margin: 48px 0;
}

@media (max-width: 767.98px) {
	.qe-loghi-container {
		grid-template-columns: repeat(2, 1fr);
	}
}

.qe-logo {
	display: flex;
	justify-content: center;
	align-items: center;
	background: #fff;
	border-radius: 4px;
	box-shadow: 6px 6px 10px rgba(0, 0, 0, 0.15);
}

.qe-logo a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
}

.qe-logo img {
	display: block;
	max-width: 100%;
	height: auto;
}

.wp-block-media-text {
	display: flex;
	align-items: center;
	gap: 2rem;
	margin-bottom: 1.5rem;
}

.wp-block-media-text__media {
	flex: 30 1 0%;
}

.wp-block-media-text__content {
	flex: 70 1 0%;
}

.wp-block-media-text.has-media-on-the-right {
	flex-direction: row-reverse;
}

.wp-block-media-text__media,
.wp-block-media-text__content {
	min-width: 0;
	margin: 0;
}

.wp-block-media-text__media img {
	display: block;
	width: 100%;
	height: auto;
}

@media (max-width: 767.98px) {
	.wp-block-media-text.is-stacked-on-mobile {
		flex-direction: column;
	}
}

.qe-icone-container {
	margin: 64px 0;
}

.it-brand-text .no_toc {
	color: #fff !important;
}

.navbar {
	background: transparent;
}

/* sottomenu nel menu mobile: sfondo blu, il verde di default non si legge */
@media (max-width: 991.98px) {
	.navbar-collapsable .navbar-nav .dropdown-menu .link-list-wrapper .link-list > li > a.dropdown-item,
	.navbar-collapsable .navbar-nav .dropdown-menu .link-list-wrapper .link-list > li > a.dropdown-item:hover,
	.navbar-collapsable .navbar-nav .dropdown-menu .link-list-wrapper .link-list > li > a.dropdown-item span {
		color: #fff;
	}
}


.menu-wrapper .it-brand-title {
	color: #fff !important;
	padding-left: 15px;
}
