:root {
	--colore-primario: #3D7171;
	--colore-body: #656565;
	--colore-white: #ffffff;
	--colore-black: #000000;
	--colore-sfondo: #f8f9fa;
	--colore-cta1: #CDA434;
	--colore-fondino1: #ecf1f1;
	--colore-manageriale: #d9842b;
	--colore-tecnica: #689689;
	--colore-sanitaria: #3A5470;
	--colore-trasversale: #704063;
	--colore-master: #A3443C;
	--colore-medicina: #78290F;
}

body {
	font-family: "Poppins", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 18px;
	color: var(--colore-body);
}

h1 {
	font-weight: 700;
	font-size: 4.5em;
	color: var(--colore-primario);
}

h2 {
	font-weight: 700;
	font-size: 3rem;
	color: var(--colore-primario);
}

h3 {
	font-weight: 700;
	font-size: 1.8rem;
	color: var(--colore-primario);
}

h4 {
	font-weight: 700;
	font-size: 1.3rem;
}

h5 {
	font-weight: 400;
	font-size: 1.4rem;
}

@media screen and (max-width: 991px) {
	h1 {
		font-size: 2.5rem;
	}
}

b,
strong {
	font-weight: 700;
}

a {
	color: var(--colore-primario);
}

a:hover {
	color: var(--colore-primario);
	opacity: 0.75;
	text-decoration: none;
}

.navbar {
	padding: 1rem;
}

.navbar-nav {
	justify-content: center;
}

.bg-light {
	background-color: var(--colore-white) !important;
}

.navbar-light .navbar-nav .nav-link {
	color: var(--colore-primario);
}

.navbar-light .navbar-toggler {
	color: var(--colore-primario);
	border-color: transparent;
	font-size: 1.8em;
}

.navname-azioni {
	font-weight: 700;
	font-size: 1.1em;
}

.navname-azioni>li>a {
	color: var(--colore-primario) !important;
}

.nav-item a {
	color: var(--colore-body);
}

.navbar-light .navbar-nav .active>.nav-link,
.navbar-light .navbar-nav .nav-link.active,
.navbar-light .navbar-nav .nav-link.show,
.navbar-light .navbar-nav .show>.nav-link {
	color: var(--colore-body);
}

/* dropdown menu */

@media screen and (min-width: 992px) {

	.navbar-light .navbar-nav>.show>.nav-link,
	.navbar-light .navbar-nav>.show>.nav-link:focus,
	.navbar-light .navbar-nav>.show>.nav-link:hover,
	.navbar-light .navbar-nav>.nav-item .dropdown-item,
	.navbar-light .navbar-nav>.nav-item>.dropdown-menu {
		color: var(--colore-body);
		background-color: #fff;
		border-radius: 10px;
	}
}

.dropdown-menu {
	padding: 10px 15px 15px 15px;
	-webkit-box-shadow: 0px 11px 11px -3px rgba(0, 0, 0, 0.49);
	box-shadow: 0px 11px 11px -3px rgba(0, 0, 0, 0.49);
}

.dropdown-item {
	text-wrap: auto;
	min-width: 27ch;
}

.navname-azioni a.dropdown-item {
	font-size: 1.1em;
	font-weight: 600;
	border-radius: 3px !important;
	padding: 10px;
	line-height: 1.25em;
	background: var(--colore-fondino1) !important;
	margin: 6px 0 0;
}

.navname-azioni a.tutti-i-corsi {
	background: transparent !important;
	padding-left: 10px !important;
	font-weight: 500;
}

.navname-azioni a.tutti-i-corsi:after {
	position: absolute;
	font-family: "Font Awesome 6 Pro";
	content: "\f061";
	right: 151px;
	font-size: 1em;
	padding-top: 0px;
}

.navname-azioni a.dropdown-item:last-child {
	border: none;
}

.dropdown-menu .formazione.dropdown-item:before {
	position: absolute;
	font-family: "Font Awesome 6 Pro";
	content: "\f111";
	left: 23px;
	font-size: 0.85em;
	padding-top: 1px;
}

.dropdown:has(.formazione) a.dropdown-item {
	padding-left: 30px;
}

.dropdown-menu .manageriale:before {
	color: var(--colore-manageriale);
}

.dropdown-menu .tecnica:before {
	color: var(--colore-tecnica);
}

.dropdown-menu .sanitaria:before {
	color: var(--colore-sanitaria);
}

.dropdown-menu .trasversale:before {
	color: var(--colore-trasversale);
}

.dropdown-menu .master:before {
	color: var(--colore-master);
}

.dropdown-menu .medicina:before {
	color: var(--colore-medicina);
}

@media screen and (max-width: 991px) {
	.dropdown-menu {
		padding: 0;
		-webkit-box-shadow: none;
		box-shadow: none;
		border: none;
	}

	.dropdown-toggle::after {
		position: absolute;
		right: 0;
	}

	.navname-azioni a.dropdown-item {
		background: transparent !important;
		border-bottom: 2px solid var(--colore-fondino1) !important;
	}

	.dropdown-menu .formazione.dropdown-item:before {
		left: 8px;
	}

	.navname-azioni a.tutti-i-corsi:after {
		right: 10px;
	}

	.navname-azioni li.nav-item {
		border-bottom: 2px solid var(--colore-fondino1);
	}

	.navname-pagine {
		padding: 0.5em 0 !important;
		font-weight: 400 !important;
	}

	.navbar-expand-lg:has(.show) {
		-webkit-box-shadow: 0px 5px 12px -4px #000000;
		box-shadow: 0px 5px 12px -4px #000000;
	}
}

/* fine dropdown */

.navname-azioni li {
	margin: 10px;
}

.navname-pagine {
	font-weight: 600;
	font-size: 1.1rem;
	column-gap: 1rem;
}

.breadcrumb {
	font-weight: 500;
}

.title {
	padding-top: 10px;
}

.read-more {
	font-weight: 600;
	color: var(--colore-body);
}

.read-more:after {
	content: "\f061";
	font-family: "Font Awesome 6 Pro";
	background: var(--colore-primario);
	color: #fff;
	width: 26px;
	height: 26px;
	display: inline-block;
	text-align: center;
	border-radius: 100px;
	margin-left: 7px;
	padding-top: 2px;
	font-size: 0.85em;
	font-weight: 600;
}

.btn {
	padding: 8px 15px;
	background: var(--colore-cta1);
	color: var(--colore-white);
	font-weight: 600;
	border-radius: 3px;
	text-transform: uppercase;
	/*padding: 13px 30px 11px;*/
}

.btn:hover {
	color: #fff;

}

.btn:after {
	/*content: "\f054";*/
	font-family: "Font Awesome 6 Pro";
	color: var(--colore-white);
	margin-left: 10px;
	font-size: 1em;
	font-weight: 600;
}

.btn>i {
	margin-right: 5px;
}

.btn.btn-grey {
	background: #eeebe6;
}

.btn.btn-orange {
	background: #DE790D;
	color: #fff;
}

.btn2 {
	font-weight: 600;
	color: var(--colore-body);
}

.btn2:after {
	content: "\f061";
	font-family: "Font Awesome 6 Pro";
	background: var(--colore-primario);
	color: #fff;
	width: 26px;
	height: 26px;
	display: inline-block;
	text-align: center;
	border-radius: 100px;
	margin-left: 7px;
	padding-top: 2px;
	font-size: 0.85em;
	font-weight: 600;
}

.icon i {
	background: #EEEBE6;
	padding-top: 13px;
	border-radius: 100px;
	width: 41px;
	height: 41px;
	text-align: center;
	font-size: 1rem;
	margin-right: 5px;
}

.top-header {
	background: #4C4A48;
	color: #fff;
	padding: 25px 20px;
	border-radius: 10px;
	display: flex;
}

h2.grid-header {
	color: #fff;
	font-family: "Poppins", sans-serif;
	font-size: 32px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

.top-header h1 {
	font-weight: 700;
	font-size: 2.1rem;
	margin: 0;
}

.line-separator {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 2.1rem;
	font-weight: 600;
	text-transform: capitalize;
	margin: 1em 0;
}

.line-separator .line {
	border-top: 1px solid #4C4A48;
	width: 100%;
}

.line-separator .text {
	margin: 0 1em;
}

.form-control {
	height: calc(1.5em + .75rem + 20px);
	margin: 0 3px;
	border-radius: 3px;
}

#xls-download {
	display: block;
	background-color: #eeeeee;
	color: #4c4a48;
	position: absolute;
	margin-left: -30px;
	margin-top: -2px;
}

#xls-download:after {
	content: "\f56d";
	font-family: 'Font Awesome 6 Pro';
	padding-left: 7px;
}

.close {
	opacity: 1;
}

.close:after {
	font-family: 'Font Awesome 5 Pro';
	content: "\f00d";
}

.generatore-form .container {
	background: #4c4a48;
	color: #fff;
	border-radius: 20px;
	padding: 2em;
	margin: 1em auto;
}

.modifica-iniziativa {
	background: #d77725 !important;
	border: 1px solid #d77725 !important;
	color: #fff !important;
	font-size: 1rem !important;
	margin-top: 20px;
	min-width: 150px;
}

.slick-next:before,
.slick-prev:before {
	color: #000 !important;
}

.media-gallery {
	padding: 0 25px;
}

.document-download {
	color: #fff;
	font-weight: bold;
	text-decoration: underline;
}

.document-download:hover {
	color: #fff;
	opacity: 0.8;
}

.document-delete {
	color: #fff;
}

.document-container {
	border: 1px dotted #fff;
	border-radius: 5px;
	padding: 0 10px;
}

/******** PAGINA EVENTO ********/

.evento-container {
	line-height: 1.6;
	color: var(--colore-body);
}

.evento-header {
	background: var(--colore-primario);
	color: white;
	padding: 40px 0;
	margin-bottom: 30px;
}

.evento-header-content {
	display: flex;
	gap: 40px;
	align-items: center;
}

.evento-header-left {
	flex: 1;
	padding: 1em 2em;
}

.evento-header-right {
	flex-shrink: 0;
	width: 350px;
}

.evento-categoria {
	font-weight: 500;
	margin-bottom: 15px;
	opacity: 0.85;
	letter-spacing: 0.3px;
}

.evento-titolo {
	font-size: 32px;
	font-weight: 700;
	margin-bottom: 20px;
	line-height: 1.3;
	color: white;
	max-width: 1000px;
}

.evento-scadenza {
	display: flex;
	align-items: center;
	gap: 8px;
	background: rgba(255, 255, 255, 0.1);
	border-radius: 8px;
	padding: 8px 12px;
	width: fit-content;
}

.evento-scadenza-icon {
	font-size: 16px;
	margin-right: 4px;
}

.evento-info-boxes {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.evento-info-box {
	background: rgba(255, 255, 255, 0.1);
	border-radius: 8px;
	padding: 20px;
}

.evento-info-item {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 8px 0;
}

.evento-info-item:not(:last-child) {
	border-bottom: 1px solid rgba(255, 255, 255, 0.15);
}

.evento-info-label {
	opacity: 0.9;
	display: flex;
	align-items: center;
	gap: 10px;
}

.evento-info-icon {
	font-size: 12px;
	color: white;
	background: var(--colore-primario);
	width: 30px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	flex-shrink: 0;
	padding-top: 2px;
}

.evento-info-value {
	font-weight: 600;
}

.evento-content {
	padding: 0 0 60px;
}

.evento-documentazione {
	margin-bottom: 30px;
	display: flex;
	align-items: center;
	gap: 15px;
	flex-wrap: wrap;
}

.evento-documentazione-label {
	font-weight: 600;
}

.evento-doc-links {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
}

.evento-doc-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 16px;
	background: var(--colore-primario);
	border: none;
	border-radius: 20px;
	color: white;
	text-decoration: none;
	font-weight: 500;
	transition: all 0.3s;
}

.evento-doc-link:hover {
	opacity: 0.9;
	color: #fff;
}

.evento-descrizione-section {
	margin-bottom: 40px;
}

.evento-descrizione-title {
	font-size: 20px;
	font-weight: 700;
	margin-bottom: 15px;
	color: var(--colore-body);
}

.evento-descrizione-content {
	display: flex;
	gap: 30px;
	align-items: flex-start;
}

.evento-descrizione-text {
	flex: 1;
	line-height: 1.8;
	color: #555;
}

.evento-descrizione-logo {
	width: 35%;
}

.evento-descrizione-logo img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

@media (max-width: 991px) {
	.evento-descrizione-content {
		flex-direction: column-reverse;
	}

	.evento-descrizione-logo {
		width: auto;
	}

	.evento-header-content {
		flex-direction: column;
		gap: 25px;
	}
}

.evento-table {
	display: table;
	width: 100%;
	margin: 30px 0;
	background: var(--colore-fondino1);
	border-radius: 8px;
	overflow: hidden;
	padding: 20px 30px;
}

.evento-table-header {
	display: table-header-group;
	background: var(--colore-fondino1);
}

.evento-table-body {
	display: table-row-group;
}

.evento-table-row {
	display: table-row;
}

.evento-table-row:hover {
	background: var(--colore-fondino1);
}

.evento-table-header .evento-table-row {
	display: table-row;
}

.evento-table-header .evento-table-row:hover {
	background: var(--colore-fondino1);
}

.evento-table-cell {
	display: table-cell;
	padding: 18px 16px;
	border-bottom: 1px solid var(--colore-body);
	color: #666;
	vertical-align: middle;
}

.evento-table-header .evento-table-cell {
	padding: 16px;
	font-weight: 600;
	color: #555;
	border-bottom: 1px solid var(--colore-body);
}

.evento-table-body .evento-table-row:last-child .evento-table-cell {
	border-bottom: none;
}

.table-header-content {
	display: flex;
	align-items: center;
	gap: 8px;
}

.table-header-content i {
	color: white;
	background: var(--colore-primario);
	width: 30px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	font-size: 12px;
}

.evento-edizione-nome {
	font-weight: 600;
	color: var(--colore-primario);
}

.evento-iscriviti-btn {
	background: #CDA434;
	color: white;
	border: none;
	padding: 2px 10px;
	font-weight: 400;
	border-radius: 5px;
	cursor: pointer;
	transition: all 0.3s;
	white-space: nowrap;
}

.evento-iscriviti-btn:hover {
	opacity: 0.75;
	color: #fff;
}

.evento-iscriviti-btn.evento-chiuso,
.evento-iscriviti-btn.evento-chiuso:hover {
	opacity: 1;
	background: #ccc;
}

.evento-sezioni-bottom {
	margin-top: 50px;
	display: flex;
	gap: 30px;
	flex-wrap: nowrap;
}

.evento-sezioni-col-left {
	flex: 1;
	min-width: 0;
}

.evento-sezioni-col-center {
	flex-shrink: 0;
	width: 310px;
}

.evento-sezioni-col-right {
	flex-shrink: 0;
	width: 310px;
}

.evento-sezioni-left {
	display: flex;
	flex: 1;
	flex-direction: column;
}

.evento-sezione {
	border: none;
	border-radius: 0;
	overflow: hidden;
}

.evento-sezione-header {
	background: transparent;
	padding: 10px 0;
	font-size: 24px;
	font-weight: 700;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: space-between;
	transition: background 0.3s;
	border-bottom: 1px solid #ccc;
}

.evento-sezione-header:hover {
	background: transparent;
}

.evento-sezione-header i {
	font-size: 16px;
}

.evento-sezione-chevron {
	transition: transform 0.3s;
}

.evento-sezione.collapsed .evento-sezione-chevron {
	transform: rotate(180deg);
}

.evento-sezione-content {
	padding: 0 20px;
	line-height: 1.7;
	color: #666;
}

.evento-sezione.collapsed .evento-sezione-content {
	display: none;
}

.evento-ecm-box {
	border: none;
	border-radius: 0;
	padding: 0;
	background: transparent;
}

.evento-ecm-title {
	font-weight: 700;
	margin-bottom: 15px;
}

h3.evento-ecm-title {
	color: var(--colore-body);
	font-size: 24px;
}

.evento-ecm-list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.evento-ecm-list li {
	padding: 8px 0;
	color: #666;
	border-bottom: none;
}

.evento-referenti-box {
	border: none;
	border-radius: 0;
	padding: 0;
	background: transparent;
}

.evento-referenti-title {
	font-weight: 700;
	font-size: 24px;
	margin-bottom: 15px;
}

h3.evento-referenti-title {
	color: var(--colore-body);
}

.evento-referente {
	margin-bottom: 20px;
}

.evento-referente:last-child {
	margin-bottom: 0;
}

.evento-referente-nome {
	font-weight: 600;
	margin-bottom: 8px;
}

.evento-referente-info {
	line-height: 1.6;
}

.evento-referente-info div {
	margin-bottom: 4px;
}

@media (max-width: 768px) {
	.evento-header-content {
		flex-direction: column;
		gap: 25px;
	}

	.evento-header-right {
		width: 100%;
	}

	.evento-titolo {
		font-size: 24px;
	}

	.evento-table-cell {
		padding: 12px 8px;
	}

	.evento-sezioni-bottom {
		flex-direction: column;
		gap: 20px;
	}

	.evento-sezioni-col-center,
	.evento-sezioni-col-right {
		width: 100%;
	}
}

.side {
	width: 900px !important;
}

/** GRIGLIA EDIZIONI **/

/* Small devices (landscape phones, 576px and up) */
@media (min-width: 300px) {
	.evento-table {
		background: transparent;
		padding: 0;
		font-size: 1em !important;
	}

	.evento-table-header {
		display: none;
		background: transparent;
	}

	.evento-table-row {
		display: flex;
		flex-direction: column;
	}

	.evento-table-body .evento-table-row {
		background: var(--colore-fondino1);
		margin: 1em 0;
		padding: 1em;
		border-radius: 10px;
	}

	.evento-table-cell {
		border-bottom: transparent;
		display: flex;
		gap: 1em;
		font-weight: 700;
		padding: 5px;
		justify-content: space-between;
		text-align: right;
	}

	.evento-table-cell:first-child {
		color: var(--colore-primario);
		margin-bottom: 5px;
	}

	.evento-table-cell:first-child .cell-title {
		font-weight: 700 !important;
	}

	.cell-title {
		font-weight: 400;
	}

	.evento-iscriviti-btn {
		width: 100%;
		text-align: center;
		margin-top: 10px;
	}

	/* Medium devices (tablets, 768px and up) */
	@media (min-width: 768px) {
		/* ... */
	}

	/* Large devices (desktops, 992px and up) */
	@media (min-width: 992px) {
		/* ... */
	}

	/* Extra large devices (large desktops, 1200px and up) */
	@media (min-width: 1200px) {
		.evento-table {
			background: var(--colore-fondino1);
			padding: 20px 30px;
		}

		.cell-title {
			display: none;
		}

		.evento-table-header {
			display: table-header-group;
		}

		.evento-table-row {
			display: table-row;
		}

		.evento-table-body .evento-table-row {
			background: transparent;
			margin: 1em 0;
		}

		.evento-table-cell {
			border-bottom: 1px solid var(--colore-body);
			display: table-cell;
			font-weight: 400;
			padding: 18px 16px;
			text-align: left;
		}

		.evento-table-cell:first-child {}

		.evento-iscriviti-btn {
			width: auto;
			margin-top: 0;
		}
	}