:root {
	--text-xxl: 54px;
	--text-xl: 40px;
	--text-lg: 27px;
	--text-title: 23px;
	--text-md: 16px;
	--text-sm: 13px;
	--text-xs: 9px;
	--link-color: #005a5c;
}

body {
	color: #ffffff;
	font-family: 'Montserrat', sans-serif;
	font-size: 13px;
	font-weight: 400;
	font-style: normal;
	line-height: normal;
	letter-spacing: 0.45px;
	line-height: normal;
	background-image: linear-gradient(180deg, var(--bs-primary) 0%, #025557 100%);
	background-size: 100% 100%;
	background-repeat: no-repeat;
	min-height: 100vh;
}

a {
	color: #ffffff;
	transition: all 0.3s ease;
	text-decoration: none;
}

a:hover {
	color: var(--bs-secondary);
}

h1, h2, h3, h4, h5, h6 {
	font-family: 'Merriweather', serif;
	color: #ffffff;
	font-size: var(--text-xxl);
	font-weight: 400;
	font-style: normal;
	letter-spacing: normal;
	line-height: 1.2;
}

h2 {
	font-size: var(--text-xl);
}

h3 {
	font-size: var(--text-lg);
}

h4 {
	font-size: var(--text-title);
}

h5 {
	font-size: var(--text-sm);
	letter-spacing: 0.35px;
}

h6 {
	font-size: var(--text-xs);
}

/************ LOGIN PAGE *************************************/

.body-login {
	background-image: url("../images/bg-login.jpg");
	background-size: cover;
	width: 100vw;
	height: 100vh;
	overflow: hidden;
}

.login-container {}

.login-lang {
	text-transform: uppercase;
	font-size: var(--text-xs);
}

/******************** HEADER ********************************************/

header {
	height: 80px;
	z-index: 1;
}

.logo img {
	max-width: 137px;
}

.col.search-col {
	max-width: 404px;
}

.col.search-col .form-group .searchbar, #ticket .search .searchbar {
	background-image: url(../images/icon/icon-search.svg);
	background-repeat: no-repeat;
	background-position: 14px center;
	padding-left: 45px;
	font-size: var(--text-md);
	height: 36px;
	background-size: 17px;
}

#ticket .search .searchbar {
	background-color: transparent;
	border: 1px solid #005a5c;
	background-image: url(../images/icon/icon-search-dark.svg);
}

ul.navbar-menu {
	margin: 0;
	padding: 0;
	list-style: none;
	display: inline-block;
}

ul.navbar-menu li {
	display: inline-block;
	margin: 0 0 0 30px;
}

.navbar-menu li a {
	display: block;
	position: relative;
}

ul.navbar-menu li.navbar-store p {
	display: inline-block;
	margin: 0 0 0 3px;
	font-size: var(--text-xs);
	text-align: left;
	vertical-align: middle;
}

ul.navbar-menu li.navbar-store p strong {
	display: block;
}

/******************* MAIN PAGE ******************************************/

#wrapper {
	padding: 1.5rem !important;
}

.col.col-navbar {
	max-width: 276px;
	padding-right: 84px;
}

nav ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: block;
}

nav>ul>li.nav-dashboard, nav>ul>li.nav-documenti, nav>ul>li.nav-ticket, nav>ul>li.nav-calendar {
	font-size: var(--text-md);
	border-bottom: 1px solid var(--bs-dark);
	padding: 15px 0;
	margin: 0 0 5px 0;
}

nav>ul>li.nav-dashboard>a, nav>ul>li.nav-documenti>a, nav>ul>li.nav-ticket>a, nav>ul>li.nav-calendar>a {
	font-family: 'Merriweather', impact;
	color: #fff;
	font-size: var(--text-md);
	font-weight: 700;
	background-image: url(../images/icon/icon-menu-dashboard.svg);
	background-repeat: no-repeat;
	background-size: 16px;
	padding: 0 0 0 30px;
	margin: 0;
	display: block;
	position: relative;
}

nav>ul>li.submenu>a::after {
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
	background-position: right center;
	background-size: 14px auto;
	content: " ";
	position: absolute;
	right: 0;
	width: 14px;
	height: 20px;
}

nav>ul>li.submenu.collapsed>a::after {
	transform: rotate(180deg);
}

nav>ul>li.nav-documenti>a {
	background-image: url(../images/icon/icon-menu-documenti.svg);
}

nav>ul>li.nav-ticket>a {
	background-image: url(../images/icon/icon-menu-ticket.svg);
}

nav>ul>li.nav-calendar>a {
	background-image: url(../images/icon/icon-menu-calendar.svg);
}

nav ul li ul {
	margin: 15px 0 0 0;
}

nav>ul>li.collapsed ul {
	display: none;
}

nav ul li ul li {
	padding-left: 30px;
	margin: 0 0 5px 0;
	position: relative;
}

nav ul li ul li:not(.nav-btn)::before {
	position: absolute;
	content: " ";
	border-bottom: 1px solid var(--bs-secondary);
	width: 15px;
	left: 0;
	top: 11px;
}

nav ul li ul li a {
	color: var(--bs-secondary);
	font-size: var(--text-sm);
}

nav ul li ul li.nav-btn {
	padding: 0;
	margin: 15px 0 0 0;
}

nav ul li {
	margin: 6px 0 0 0;
	font-size: var(--text-sm);
}

nav ul li.nav-user {
	padding: 15px;
	margin: 25px 0 0 0;
}

nav ul li.nav-user p {
	display: inline-block;
	margin: 0 0 0 5px;
	vertical-align: middle;
	font-size: var(--text-xs);
}

nav ul li.nav-user p strong {
	display: block;
}

.row.main-title p {
	font-size: var(--text-md);
	line-height: 1.6;
	letter-spacing: 2.4px;
	font-weight: 500;
}

.row.main-title p span {
	display: block;
	font-weight: 300;
}

.row.main-title h1 {
	font-weight: 700;
	display: inline-block;
}

.row.main-title h2 {
	display: inline-block;
	font-size: 21px;
}

.row.main-title h2 span {
	text-transform: uppercase;
	font-family: 'Montserrat', sans-serif;
	display: block;
	font-size: var(--text-sm);
	letter-spacing: 1.5px;
	margin: 5px 0 0 0;
}

h3.page-title {
	font-size: var(--text-title);
	margin: .6rem 0 2.5rem 0;
}

.documenti {
	background: var(--bs-primary);
	padding: 5%;
}

.documenti.list-cat-item, .documenti.list-doc-item {
	padding: 0;
	position: relative;
	height: 190px;
	overflow: hidden;
	background-repeat: no-repeat;
	background-position: 6% 15px;
	background-size: 36px;
}

.documenti.list-doc-item {
	height: auto;
}

.documenti.list-cat-item .item-head, .documenti.list-doc-item .item-head {
	background-image: url(../images/icon/icon-impianti-elettrici.svg);
	position: relative;
	height: 70px;
	background-repeat: no-repeat;
	background-position: 5% center;
	background-size: 30px;
	padding: 5%;
	background-color: #103340e6;
}

.documenti.list-doc-item .item-body {
	background-color: #133642b3;
	min-height: 175px;
}

.documenti.list-cat-item .impianti-elettrici .item-head, .documenti.list-doc-item .impianti-elettrici .item-head {
	background-image: url(../images/icon/icon-impianti-elettrici.svg);
}

.documenti.list-cat-item.impianti-meccanici .item-head, .documenti.list-doc-item.impianti-meccanici .item-head {
	background-image: url(../images/icon/icon-impianti-meccanici.svg);
}

.documenti.list-cat-item.impianti-speciali .item-head, .documenti.list-doc-item.impianti-speciali .item-head {
	background-image: url(../images/icon/icon-impianti-speciali.svg);
}

.documenti.list-cat-item.impianti-vari .item-head, .documenti.list-doc-item.impianti-vari .item-head {
	background-image: url(../images/icon/icon-impianti-vari.svg);
}

.documenti.list-cat-item .item-head h4, .documenti.list-doc-item .item-head h4 {
	font-family: 'Montserrat', sans-serif;
	text-transform: uppercase;
	font-size: var(--text-xs);
	letter-spacing: 1.5px;
	position: absolute;
	font-weight: 500;
	right: 0;
	top: 6px;
	width: 100%;
	padding: 3% 5% 0 30px;
	text-align: right;
	word-spacing: 600px;
	line-height: 1.6;
	margin: 0;
}

.accordion-document .item-head h4 {
	font-family: 'Montserrat', sans-serif;
	text-transform: uppercase;
	font-size: var(--text-xs);
	letter-spacing: 1.5px;
	font-weight: 500;
	right: 0;
	width: 100%;
	padding: 3% 5% 0 30px;
	word-spacing: 600px;
	line-height: 1.6;
	margin: 0;
}

.documenti.list-cat-item .item-head h4, .documenti.list-doc-item .item-head p, .accordion-document .item-head p {
	font-weight: 400;
	word-spacing: initial;
}

.documenti.list-cat-item .item-body {}

.documenti.list-cat-item .item-body>h2, .documenti.list-doc-item .item-body>h2, .documenti.list-doc-item .item-body>h3 {
	font-size: var(--text-title);
	height: 100%;
	margin: 0;
	overflow: hidden;
	transition: all 0.3s ease;
	padding: 5%;
}

.documenti.list-cat-item .item-body h2>a, .documenti.list-doc-item .item-body h2>a, .documenti.list-doc-item .item-body h3>a {
	position: relative;
	padding: 25px 35px 0 0;
	height: 100%;
	width: 100%;
	transition: all 0.3s ease;
	-webkit-line-clamp: 2;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	text-overflow: ellipsis;
}

.documenti.list-doc-item .item-body h3>a {
	-webkit-line-clamp: unset;
}

.documenti.list-doc-item .item-body h2>a, .documenti.list-doc-item .item-body h3>a {
	padding: 0 35px 0 0;
}

.documenti.list-cat-item .item-body h2>a::after, .documenti.list-doc-item .item-body h2>a::after, .documenti.list-doc-item .item-body h3>a::after {
	font-family: "Font Awesome 5 Pro";
	content: "\f061";
	position: absolute;
	right: 6px;
	top: 25px;
	font-size: 20px;
	font-weight: 300;
	transition: all 0.3s ease;
}

.documenti.list-doc-item .item-body h2>a::after, .documenti.list-doc-item .item-body h3>a::after {
	top: 0;
}

.documenti.list-cat-item .item-body>h2 a:hover, .documenti.list-doc-item .item-body>h2 a:hover {
	color: var(--bs-secondary);
}

.documenti.list-cat-item .item-body h2>a:hover::after, .documenti.list-doc-item .item-body h2>a:hover::after, .documenti.list-doc-item .item-body h3>a:hover::after {
	right: 0;
}

.documenti.list-doc-item .item-body h3 {
	font-family: Merriweather;
	font-size: 17px;
	font-weight: 400;
	line-height: 25px;
}

.documenti.list-item {
	position: relative;
	height: 194px;
	overflow: hidden;
	padding: 0;
}

.documenti.list-item .item-head {
	background-image: url(../images/icon/icon-impianti-elettrici.svg);
	position: relative;
	height: 50px;
	background-repeat: no-repeat;
	background-position: 5% center;
	background-size: 30px;
	padding: 5%;
	background-color: var(--bs-primary);
}

.documenti.list-item.impianti-elettrici .item-head {
	background-image: url(../images/icon/icon-impianti-elettrici.svg);
}

.documenti.list-item.impianti-meccanici .item-head {
	background-image: url(../images/icon/icon-impianti-meccanici.svg);
}

.documenti.list-item.impianti-speciali .item-head {
	background-image: url(../images/icon/icon-impianti-speciali.svg);
}

.documenti.list-item.impianti-vari .item-head {
	background-image: url(../images/icon/icon-impianti-vari.svg);
}

.documenti.list-item>.item-head h4 {
	font-family: 'Montserrat', sans-serif;
	text-transform: uppercase;
	font-size: var(--text-xs);
	letter-spacing: 1.5px;
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
	padding: 5% 5% 0 30px;
	text-align: right;
	word-spacing: 100px;
	line-height: 1.6;
	margin: 0;
}

.documenti.list-item>.item-body {
	display: block;
	position: relative;
	width: 100%;
	padding: 5%;
	background-color: #13434C;
	overflow: hidden;
}

.documenti.list-item .item-body h4 {
	font-family: 'Montserrat', sans-serif;
	font-weight: 500;
	font-size: 10px;
	letter-spacing: 1.5px;
	margin: 5px 0 5px 0;
}

.documenti.list-item .item-body h3 {
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.35px;
	line-height: 18px;
	text-overflow: ellipsis;
	overflow: hidden;
	-webkit-line-clamp: 4;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	transition: all 0.3s ease;
	margin: 0;
}

.documenti.list-item>.item-body a {
	transition: all 0.3s ease;
}

.documenti.list-item>.item-body a h3 {
	font-size: var(--text-title);
	height: 100%;
	padding: 50px 30px 0 0;
	margin: 0;
}

.documenti.list-item>.item-body a:hover h3 {
	color: var(--bs-secondary);
}

.documenti.list-item .item-foot {
	background-color: #13434C;
	padding: 5%;
}

.documenti.list-item .item-foot a.bookmark {
	float: right;
	margin: 0 10px 0 0;
}

.documenti.list-item .item-foot a.bookmark img {
	height: 18px;
}

h4.section-title a.btn {
	float: right;
}

.table.standard-table {
	color: #fff;
	border-color: var(--bs-primary);
}

.standard-table> :not(:first-child) {
	border: none;
}

span.budget-legend {
	background-color: rgba(255, 255, 255, 0.22);
	width: 75px;
	height: 75px;
	display: inline-block;
	line-height: 75px;
	font-size: var(--text-title);
	font-family: 'Merriweather', serif;
	font-weight: 400;
	letter-spacing: 0.5px;
	border-radius: 50%;
	text-align: center;
}

span.budget-legend.budget-straordinario {
	background-color: rgba(255, 255, 255, 0.4);
}

h5.budget-legend {
	padding: 28px 0 0 0;
}

#budget-chart {}

/********* FULL CALENDAR *****************************/

#fullcalendar {}

#fullcalendar .table-bordered> :not(caption)>*>* {
	border-width: 0;
}

.fc .fc-toolbar.fc-header-toolbar {
	flex-wrap: wrap;
	position: relative;
}

.fc-toolbar-chunk {
	flex-basis: 100%;
	text-align: center;
	margin: 0 0 1.5rem 0;
}

.fc-toolbar-chunk:nth-child(1) {
	flex-basis: 100%;
	text-align: center;
	margin: 0.5rem 0 2.5rem 0;
}

#fullcalendar .btn:focus {
	box-shadow: none;
}

.fc-toolbar-chunk:nth-child(1)>.btn-group {
	display: flex;
}

.fc-toolbar-chunk:nth-child(1)>.btn-group .btn {
	border-radius: 20px;
	flex-grow: 1;
	flex-basis: 0;
	margin: 0 10px;
	height: 40px;
}

.fc-toolbar-chunk:last-child {
	position: absolute;
	bottom: 0;
	width: 100%;
	height: 25px;
}

.fc-toolbar-chunk:last-child .fc-today-button {
	position: absolute;
	right: 40px;
	z-index: 30;
	height: 25px;
	font-size: var(--text-xs);
	line-height: 15px;
	font-weight: 600;
	letter-spacing: 0.45px;
	padding: .175rem .75rem;
}

.fc-toolbar-chunk:last-child .btn-group {
	width: 100%;
	position: absolute;
	left: 0;
	z-index: 1;
}

.fc-toolbar-chunk:last-child .btn-group .btn {
	position: absolute;
	margin: 0;
	left: 0;
	border-radius: 20px;
	width: 25px;
	height: 25px;
	line-height: 20px;
	text-align: center;
	padding: 0;
}

.fc-toolbar-chunk:last-child .btn-group .btn.fc-next-button {
	left: auto;
	right: 1rem;
}

.fc-col-header-cell {
	font-size: var(--text-sm);
	font-weight: 500;
	text-transform: uppercase;
	color: var(--bs-secondary);
}

#fullcalendar .fc-daygrid-day-frame {
	background: var(--bs-primary);
	width: 67%;
	margin: 15px auto 0;
	height: 0;
	padding: 0 0 67% 0;
	border-radius: 10px;
	position: relative;
	border: 1px solid var(--bs-primary);
	min-height: 0;
}

#fullcalendar .fc-daygrid-day.fc-day-today .fc-daygrid-day-frame {
	border: 1px solid #fff;
	background: #005a5c;
}

#fullcalendar .fc-daygrid-day.fc-day-today {
	background-color: transparent;
}

#fullcalendar .fc-daygrid-day-top {
	display: flex;
	flex-direction: row;
	justify-content: center;
	height: 100%;
	width: 100%;
	align-items: center;
	position: absolute;
	top: 0;
	left: 0;
}

#fullcalendar .fc-daygrid-day-number {
	text-align: center;
	font-size: var(--text-sm);
	font-weight: 500;
}

#fullcalendar .fc-day-other .fc-daygrid-day-frame {
	opacity: 0.4;
}

.fc-daygrid-day-events {
	display: flex;
	flex-direction: row;
	justify-content: center;
	position: absolute !important;
	bottom: -6px;
	width: 100%;
	min-height: 0 !important;
}

.fc-daygrid-day-events>div {
	width: 16px;
	height: 16px;
	border-radius: 50%;
	border: none;
	overflow: hidden;
	flex-grow: 0;
	flex-basis: auto;
	margin: 0 1px;
}

.fc-daygrid-day-events>div>a {
	display: block;
	height: 100%;
	width: 100%;
	margin: 0 !important;
	padding: 0;
	font-size: 0;
	border: none;
	cursor: pointer;
}

.fc .fc-daygrid-day-bottom {
	display: none;
}

#fullcalendar .fc-dayGridWeek-view .fc-daygrid-day-frame {
	height: calc(100% - 30px);
	padding: 15px 3px;
	min-height: 0;
	width: 95%;
}

#fullcalendar .fc-dayGridWeek-view .fc-daygrid-day {
	height: 100%;
}

.fc-dayGridWeek-view .fc-daygrid-day-events {
	display: flex;
	flex-direction: row;
	justify-content: start;
	position: static;
	width: 100%;
	min-height: 0 !important;
	flex-wrap: wrap;
	position: static !important;
}

.fc-dayGridWeek-view .fc-daygrid-day-events>div {
	width: 100%;
	height: auto;
	border-radius: 10px;
	border: none;
	overflow: hidden;
	flex-grow: 0;
	flex-basis: auto;
	margin: 15px 5px;
	min-height: 45px;
}

.fc-dayGridWeek-view .fc-daygrid-day-events>div>a {
	display: flex;
	height: 100%;
	width: 100%;
	margin: 0 !important;
	padding: 5px;
	font-size: var(--text-xs);
	border: none;
	cursor: pointer;
	align-items: center;
	white-space: normal;
	text-transform: uppercase;
	font-weight: 500;
	letter-spacing: 0.45px;
	line-height: 1.4;
}

/********* SOVRASCRITTURE *************************/

.btn-link {
	text-decoration: none;
}

.table-dark {
	--bs-table-bg: rgba(19, 54, 66, 0.5);
}

.standard-table> :not(caption)>*>* {
	border-color: var(--bs-primary);
}

.table-dark th {
	text-transform: uppercase;
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.75px;
}

.badge {
	border-radius: 20px;
	padding: .65em .95em;
	font-size: var(--text-xs);
	font-weight: 500;
	letter-spacing: 0.45px;
}

.bg-box {
	background-color: rgba(255, 255, 255, 0.08);
}

.form-control, .form-select {
	background-color: rgba(255, 255, 255, 0.1);
	border: none;
	border-radius: 20px;
	height: 45px;
	font-size: var(--text-sm);
	color: #fff;
	transition: all 0.3s ease;
}

.form-control:focus {
	color: #fff;
	background-color: rgba(255, 255, 255, 0.2);
}

.form-select {
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
}

.form-select:focus {
	color: #888 !important;
}

.form-group {
	margin-bottom: 1rem;
}

.btn {
	font-family: 'Montserrat', sans-serif;
	font-size: var(--text-sm);
	border-radius: 20px;
	text-transform: uppercase;
	font-weight: 600;
}

.btn-white {
	color: var(--link-color);
}

.btn-lg {
	height: 45px;
	font-weight: 700;
	letter-spacing: 0.6px;
}

.btn-sm {
	height: 29px;
	font-size: var(--text-xs);
	font-weight: 600;
	font-style: normal;
	letter-spacing: 0.45px;
	line-height: 2;
}

/* BLOCK UI */

.blockUI.blockOverlay {
	background: rgba(255, 255, 255, 0) none repeat scroll 0 0;
}

.blockUI.blockMsg .preloader-container {
	background: #f4f5f6 none repeat scroll 0 0;
	border-radius: 60px;
	box-shadow: 0 0 13px #999;
	padding: 10px;
	background: #fff;
	box-shadow: none;
}

.blockUI .md-preloader svg {
	height: 45px;
	width: 45px;
}

#container .blockUI.blockMsg .preloader-container {
	height: 75px;
	position: fixed;
	top: 50%;
	width: 75px;
	background: transparent;
	box-shadow: none;
}

/* LOADER */

.md-preloader {
	font-size: 0;
	display: inline-block;
	-webkit-animation: outer 6600ms linear infinite;
	animation: outer 6600ms linear infinite
}

.md-preloader svg {
	-webkit-animation: inner 1320ms linear infinite;
	animation: inner 1320ms linear infinite;
	height: 60px;
	width: 60px;
}

.md-preloader svg circle {
	fill: none;
	stroke: #000;
	stroke-linecap: square;
	-webkit-animation: arc 1320ms cubic-bezier(.8, 0, .4, .8) infinite;
	animation: arc 1320ms cubic-bezier(.8, 0, .4, .8) infinite
}

@-webkit-keyframes outer {
	0% {
		-webkit-transform: rotate(0);
		transform: rotate(0)
	}
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg)
	}
}

@keyframes outer {
	0% {
		-webkit-transform: rotate(0);
		transform: rotate(0)
	}
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg)
	}
}

@-webkit-keyframes inner {
	0% {
		-webkit-transform: rotate(-100.8deg);
		transform: rotate(-100.8deg)
	}
	100% {
		-webkit-transform: rotate(0);
		transform: rotate(0)
	}
}

@keyframes inner {
	0% {
		-webkit-transform: rotate(-100.8deg);
		transform: rotate(-100.8deg)
	}
	100% {
		-webkit-transform: rotate(0);
		transform: rotate(0)
	}
}

@-webkit-keyframes arc {
	0% {
		stroke-dasharray: 1 210.48670779px;
		stroke-dashoffset: 0
	}
	40% {
		stroke-dasharray: 151.55042961px, 210.48670779px;
		stroke-dashoffset: 0
	}
	100% {
		stroke-dasharray: 1 210.48670779px;
		stroke-dashoffset: -151.55042961px
	}
}

@keyframes arc {
	0% {
		stroke-dasharray: 1 210.48670779px;
		stroke-dashoffset: 0
	}
	40% {
		stroke-dasharray: 151.55042961px, 210.48670779px;
		stroke-dashoffset: 0
	}
	100% {
		stroke-dasharray: 1 210.48670779px;
		stroke-dashoffset: -151.55042961px
	}
}

.md-preloader.md-preloader-small {
	height: 24px;
	margin: 0 5px;
	vertical-align: middle;
}

.md-preloader.md-preloader-small svg {
	height: 24px;
	width: 24px;
}

.calendar-program-form select, select.documenti-select, .list-form select {
	height: 29px;
	border-radius: 20px;
	border: 1px solid #ffffff;
	font-size: var(--text-xs);
	background-color: transparent;
	text-transform: uppercase;
	font-family: Montserrat;
}

select.documenti-select {
	max-width: 130px;
	margin-top: 0.6rem;
}

.calendarprogram table thead {
	background-color: #13364280;
}

.calendarprogram table thead th {
	padding: 10px;
	font-size: 10px;
	font-weight: 500;
	letter-spacing: 0.75px;
	line-height: 13px;
	text-align: left;
	text-transform: uppercase;
}

.calendarprogram table tbody td {
	vertical-align: top;
	padding-bottom: 25px;
}

.calendarprogram table tbody td:last-child {
	text-align: right;
}

.calendarprogram table tbody {
	position: relative;
	top: 20px;
}

.calendarprogram table tbody .date {
	color: #ffffff;
	font-size: var(--text-sm);
	font-weight: 600;
	letter-spacing: 0.39px;
	text-transform: uppercase;
}

.calendarprogram table tbody h4 {
	color: #ffffff;
	font-size: var(--text-md);
	font-weight: 400;
	letter-spacing: 0.65px;
	text-transform: uppercase;
	font-family: 'Montserrat', sans-serif;
}

.calendarprogram table tbody tr {
	border-bottom: 1px solid #133642;
}

.calendarprogram table tbody p {
	color: #ffffff;
	font-size: var(--text-sm);
	font-weight: 400;
}

.calendarprogram table tbody .status {
	border-radius: 10px;
	background-color: #13364280;
	font-size: var(--text-xs);
	font-weight: 500;
	letter-spacing: 0.45px;
	line-height: 22px;
	text-transform: uppercase;
	padding: 5px 10px;
}

.calendarprogram table tbody .status.success {
	color: var(--bs-success);
}

.calendarprogram table tbody .status.warning {
	color: var(--bs-warning);
}

.calendarprogram table tbody .status.danger {
	color: var(--bs-danger);
}

.calendarprogram table tbody .status.info {
	color: var(--bs-info);
}

.calendarprogram table tbody .detail, .form-page .btn-primary, #notification .activity .body .detail, .accordion-document .detail {
	border-radius: 10px;
	background-color: #ffffff33;
	font-size: var(--text-xs);
	font-weight: 500;
	letter-spacing: 0.45px;
	line-height: 22px;
	text-transform: uppercase;
	padding: 5px 20px 5px 10px;
	background-image: url(../images/icon/icon-freccia.svg);
	background-position: 90% center;
	background-size: 10px;
	background-repeat: no-repeat;
}

#notification .activity .body .detail {
	line-height: unset;
	height: fit-content;
}

.calendarprogram table tbody .detail:hover {
	color: #fff;
}

.header-overlay {
	height: 80px;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	background-color: #133642;
	z-index: -1;
}

.list-cat-select {
	color: #ffffff;
	font-family: Montserrat;
	font-size: var(--text-xs);
	font-weight: 700;
	letter-spacing: 0.23px;
	line-height: 13px;
	text-transform: uppercase;
	vertical-align: super;
}

.list-cat-select::before {
	content: " ";
	background-image: url(../images/icon/icon-hamburger.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	width: 18px;
	height: 14px;
	position: absolute;
	left: -25px;
}

.list-cat-select::before {
	content: " ";
	background-image: url(../images/icon/icon-grill.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	width: 16px;
	height: 16px;
}

.list-cat-select.list::before {
	background-image: url(../images/icon/icon-hamburger.svg);
}

.list-cat-select.grid::before {
	background-image: url(../images/icon/icon-grill.svg);
}

.bg-light-custom {
	background-color: #ffffff0d;
}

.widget.widget-filter {
	border-bottom: 2px solid #133642;
	position: relative;
	padding-top: 20px;
}

.widget.widget-filter:first-child {
	border-top: 2px solid #133642;
}

.widget-title {
	color: #ffffff;
	font-family: Montserrat;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.39px;
	text-transform: uppercase !important;
	margin-bottom: 20px;
}

.widget-filter .widget-title>span::after {
	display: block;
	content: "-";
	height: auto;
	right: 0;
	margin-left: 0;
	position: absolute;
	top: 0;
	width: 20px;
	font-size: 20px;
	line-height: 14px;
	left: auto;
	background: none;
	text-align: center;
	font-weight: 400;
}

.widget-filter .widget-title.active>span::after {
	content: "+";
}

.widget-title>span {
	position: relative;
	display: block;
	cursor: pointer;
	font-size: 15px;
	font-weight: 500;
	margin: 0;
}

.widget-filter ul li {
	margin-bottom: 5px;
	position: relative;
}

.widget-filter ul li label {
	margin: 1px 0 9px 5px;
	cursor: pointer;
	transition: all 0.5s ease;
	display: inline-block;
	width: calc(100% - 30px);
	vertical-align: middle;
	color: #ffffffb9;
	font-family: Montserrat;
	font-size: 13px;
	font-weight: 400;
	letter-spacing: 0.33px;
}

.widget-filter .icheckbox_minimal {
	margin-top: 1px;
	vertical-align: revert;
	background-size: auto 12px;
}

.icheckbox_minimal.checked {
	background-position: -48px 0;
}

.icheckbox_minimal, .iradio_minimal {
	width: 12px;
	height: 12px;
}

#documenti h3.page-title {
	-webkit-line-clamp: 1;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	text-overflow: ellipsis;
}

.detail-content .codice {
	color: #ffffff;
	font-family: Montserrat;
	font-size: 10px;
	font-weight: 500;
	letter-spacing: 1.5px;
	line-height: 14px;
	text-align: left;
	text-transform: uppercase;
}

.detail-content h1 {
	color: #ffffff;
	font-family: Merriweather;
	font-size: 36px;
	font-weight: 400;
	text-align: left;
	margin-top: 65px;
}

.detail-content h3 {
	color: #ffffff;
	font-family: Montserrat;
	font-size: 13px;
	letter-spacing: 0.39px;
	text-align: left;
	font-weight: 400;
}

.detail-content h2 {
	color: #ffffff;
	font-family: Merriweather;
	font-size: 21px;
	font-weight: 400;
	line-height: 32px;
	margin-bottom: 0;
}

.detail-content hr {
	height: 2px;
	background-color: #133642;
}

.detail-content h3.date-custom {
	font-weight: 500;
	color: #90b9ba;
}

.detail-content .bg-light {
	background-color: #ffffff80 !important;
	color: #005a5c;
	font-family: Montserrat;
	font-size: 9px;
	font-weight: 500;
	letter-spacing: 0.45px;
	text-transform: uppercase;
}

.semi-bold {
	font-weight: 600 !important;
}

.detail-content .doc::before {
	content: " ";
	display: inline-block;
	background: url(../images/icon/icon-doc.svg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	width: 12px;
	height: 15px;
	top: 3px;
	position: relative;
	margin-right: 10px;
}

.detail-content .form::before {
	content: " ";
	display: inline-block;
	background: url(../images/icon/icon-form.svg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	width: 12px;
	height: 15px;
	top: 3px;
	position: relative;
	margin-right: 10px;
}

.detail-content .form, .detail-content .doc {
	color: #ffffff;
	font-family: Montserrat;
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.5px;
	line-height: 13px;
	text-transform: uppercase;
}

.pin {
	position: absolute;
	height: 100%;
	top: 0;
	left: 0;
	width: 10px;
}

.pin.success {
	background-color: #14f395;
}

.pin.danger {
	background-color: #e74848;
}

.detail-content .activity, #notification .activity {
	padding: 30px;
}

.sidebar-sec {
	padding: 30px 0;
	border-bottom: 2px solid #133642;
}

.sidebar-sec.add-comment {
	margin: 50px 0;
	border-bottom: none;
	border: 1px solid #fff;
	padding: 50px 0;
	cursor: pointer;
}

.add-comment h4 {
	text-align: center !important;
}

.add-comment h4::before {
	content: " ";
	display: inline-block;
	width: 20px;
	height: 21px;
	background: url(../images/icon/icon-add-comment.svg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	vertical-align: middle;
	margin-right: 5px;
}

.sidebar-sec.cat {
	padding: 0 0 44px;
}

.detail-sidebar h4 {
	color: #ffffff;
	font-family: Montserrat;
	font-size: 10px;
	font-weight: 500;
	letter-spacing: 1.5px;
	line-height: 14px;
	text-align: left;
	text-transform: uppercase;
	margin-bottom: 0;
}

.detail-sidebar h2 {
	color: #ffffff;
	font-family: Montserrat;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.58px;
	line-height: 19px;
	text-transform: uppercase;
}

.detail-sidebar h3 {
	color: #ffffff;
	font-family: Merriweather;
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
}

.detail-sidebar .book::before {
	content: " ";
	display: inline-block;
	width: 10px;
	height: 12px;
	background: url(../images/icon/icon-bookmark-small.svg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	vertical-align: text-top;
	margin-right: 5px;
}

#ticket .table>:not(caption)>*>* {
	padding: 1rem 0.5rem;
}

#ticket .light {
	font-weight: 300;
}

#ticket span.urgenza-badge {
	border: 1px solid #fff;
	border-radius: 15px;
	color: #ffffff;
	font-family: Montserrat;
	font-size: 9px;
	font-weight: 500;
	letter-spacing: 0.45px;
	line-height: 18px;
	text-transform: uppercase;
	padding: 0 5px;
}

.response {
	position: absolute;
	right: 0;
	top: 0;
}

.response span {
	width: 18px;
	height: 15px;
	background-image: url(../images/icon/icon-response.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	display: inline-block;
}

.upload-doc {
	display: flex;
	flex-direction: column;
	align-content: center;
	justify-content: center;
	align-items: center;
	background-color: #ffffff33;
	padding: 45px 0;
}

.upload-doc p {
	color: #ffffff;
	font-family: Montserrat;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.39px;
	text-align: center;
	line-height: normal;
}

.upload-doc span {
	border-radius: 20px;
	border: 1px solid #ffffff;
	padding: 7px 12px;
	color: #ffffff;
	font-family: Montserrat;
	font-size: 9px;
	font-weight: 600;
	letter-spacing: 0.36px;
	line-height: 13px;
	text-align: center;
	text-transform: uppercase;
}

.upload-doc h4:before {
	content: " ";
	display: inline-block;
	width: 20px;
	height: 21px;
	background: url(../images/icon/icon-add-comment.svg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	vertical-align: middle;
	margin-right: 5px;
}

.upload-doc h4 {
	color: #ffffff;
	font-family: Montserrat;
	font-size: 10px;
	font-weight: 500;
	letter-spacing: 1.5px;
	line-height: 14px;
	text-align: left;
	text-transform: uppercase;
	margin-bottom: 0;
}

.activity .text {
	color: #ffffff;
	font-family: Merriweather;
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
}

.btn-ticket {
	min-width: 100px;
	padding: 8px 15px;
	border-radius: 20px;
	background-color: #ffffff;
	border: 1px solid #ffffff;
	color: #005a5c;
	font-family: Montserrat;
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.5px;
	line-height: 13px;
	text-align: center;
	text-transform: uppercase;
}

.btn-ticket.outline {
	background-color: transparent;
	color: #ffffff;
}

.ticket-new-form select {
	background-color: #133642;
	border-radius: 0;
	color: #ffffff;
	font-family: Merriweather;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.4px;
	line-height: 25px;
	height: unset;
}

.ticket-new-form input, .ticket-new-form textarea {
	width: 100%;
	background-color: #ffffff26;
	border: 0;
	padding: 8px 5px;
	color: #aecacb;
	font-family: 'Montserrat', sans-serif;
	font-size: 15px;
	line-height: 20px;
	font-weight: 400;
	text-align: left;
	outline: none !important;
	margin: 10px 0;
}

.ticket-new-form .form-group .form-group select {
	margin: 10px 0;
	color: #ffffff;
	font-family: Montserrat;
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.82px;
	line-height: 13px;
	text-align: left;
	text-transform: uppercase;
	padding: 10px 5px;
}

.ticket-new-form label {
	color: #ffffff;
	font-family: Montserrat;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.39px;
	line-height: normal;
	text-align: left;
}

.ticket-new-form p {
	color: #aecacb;
	font-family: Montserrat;
	font-size: 12px;
	font-weight: 400;
	letter-spacing: 0.3px;
	line-height: 18px;
	text-align: left;
	margin-bottom: 30px;
}

#user .user-detail .d-flex:first-child, #user .anag-detail .d-flex:first-child, #user .anag-detail tr:first-child {
	border-top: 2px solid #133642;
}

#user .anag-detail .d-flex, #user .anag-detail tr {
	padding: 15px 5px;
	border-bottom: 2px solid #133642;
}

#user .user-detail .d-flex {
	padding: 20px 0;
	border-bottom: 2px solid #133642;
}

#user .user-detail h3 {
	color: #ffffff;
	font-family: Montserrat;
	font-size: 18px;
	font-weight: 400;
	letter-spacing: 0.54px;
	line-height: normal;
	text-align: left;
	margin-bottom: 0;
}

#user .anag-detail h3, #user .anag-detail td {
	color: #ffffff;
	font-family: Montserrat;
	font-size: 13px;
	font-weight: 400;
	letter-spacing: 0.39px;
	line-height: normal;
	text-align: left;
	margin-bottom: 0;
}

#user .anag-detail td {
	padding: 15px 5px;
}

#user .anag-detail h3:first-child, #user .anag-detail h3:last-child, #user .anag-detail td:first-child, #user .anag-detail td:last-child {
	font-weight: 500;
}

#user .anag-detail h3:first-child, #user .anag-detail td:first-child {
	width: 75px;
}

#user .anag-detail h3:nth-child(2), #user .anag-detail td:nth-child(2) {
	min-width: 210px;
}

#user .user-detail h3:first-child {
	width: 35%;
}

#user .user-detail h3:last-child {
	font-weight: 500;
}

#user .widget.widget-filter {
	border-bottom: none;
}

#user .anag-detail td span {
	font-size: 10px;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 50%;
}

#user .widget.widget-filter label {
	color: #ffffff;
	font-family: Montserrat;
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.55px;
	line-height: 13px;
	text-transform: uppercase;
}

#user .widget-filter .icheckbox_minimal {
	vertical-align: top;
}

#user .user-profile-sec {
	min-height: 140px;
	background-color: #133642cc;
	padding: 30px;
}

#user .user-profile-sec h2 {
	color: #ffffff;
	font-family: Merriweather;
	font-size: 17px;
	font-weight: 400;
	line-height: 25px;
	text-align: left;
	letter-spacing: normal;
}

#user .user-profile-sec a {
	border-radius: 20px;
	border: 1px solid #ffffff;
	padding: 7px 12px;
	color: #ffffff;
	font-family: Montserrat;
	font-size: 9px;
	font-weight: 600;
	letter-spacing: 0.36px;
	line-height: 13px;
	text-align: center;
	text-transform: uppercase;
	width: fit-content;
	display: inline-block;
}

#user .user-profile-sec a.blacked {
	color: #ffffff40;
	border-color: #ffffff40;
}

#notification .activity .head .hour {
	color: #90b9ba;
	font-family: Montserrat;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.65px;
	line-height: normal;
	text-align: left;
}

#notification .activity .head .cat {
	color: #ffffff;
	font-family: Montserrat;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.65px;
	line-height: normal;
	text-align: left;
	text-transform: uppercase;
}

#notification .activity .body h4 {
	margin-bottom: 0;
}

.accordion-item {
	background-color: #133642;
	border: none;
	box-shadow: none;
	border-radius: 0;
	margin-bottom: 10px;
}

.accordion-header, .accordion-body {
	padding: 30px 40px 30px 20px;
}

.accordion-document .accordion-header {
	padding: 45px 40px 45px 20px;
}

.accordion-document .accordion-body {
	padding: 0;
}

.accordion-button {
	color: #ffffff !important;
	font-family: Merriweather;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.4px;
	line-height: 13px;
	text-align: left;
	background: transparent !important;
	padding: 0;
	box-shadow: none !important;
}

.accordion-button::after {
	flex-shrink: 0;
	width: 13px;
	height: 8px;
	margin-left: auto;
	content: "";
	background-image: url(../images/icon/icon-accordion.svg);
	background-repeat: no-repeat;
	background-size: cover;
	transition: transform .2s ease-in-out;
}

.accordion-document .accordion-button::after {
	background-image: url(../images/icon/icon-plus.svg);
	width: 32px;
	height: 32px;
	background-size: contain;
	background-position: center;
}

.accordion-document .accordion-table .accordion-button::after {
	width: 15px;
	height: 15px;
	margin-right: 15px;
	position: absolute;
    right: 0;
}

.accordion-button:not(.collapsed)::after {
	background-image: url(../images/icon/icon-accordion.svg);
	transform: rotate(-180deg);
}

.accordion-document .accordion-button:not(.collapsed)::after {
	background-image: url(../images/icon/icon-minus.svg);
	transform: rotate(-180deg);
}

.tab-row-title {
	background-color: rgb(19 54 66 / 50%);
	padding: 15px 15px;
}

.tab-row-head {
	background-color: #1c3f4b4d;
	padding: 15px 15px;
}

.tab-row-body {
	background-color: #ffffff26;
	padding: 15px 15px;
}

.tab-row-body h4, .tab-row-head h4 {
	color: #ffffff;
	font-family: Merriweather;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.35px;
	line-height: 18px;
	text-align: left;
	margin-bottom: 0;
}

.accordion-document .accordion-table .accordion-header {
	padding: 0;
}

.tab-row-title span, .tab-row-head span, .tab-row-body span {
	border-right: 1px solid #005a5c;
	min-width: 100px;
	text-align: center;
	height: 80%;
	padding-top: 3px;
	padding-bottom: 3px;
	display: block;
}

.tab-row-title span:first-child, .tab-row-head span:first-child, .tab-row-body span:first-child {
	border-left: 1px solid #005a5c;
}

.tab-row-body span:first-child {
	border-left: 1px solid #05494b;
}

.tab-row-body span {
	border-right: 1px solid #05494b;
}

.tab-row-body:first-child {
	border-top: 1px solid #19404a;
}

.tab-row-body {
	border-bottom: 1px solid #19404a;
}

.tab-row-title {
	color: #ffffff;
	font-family: Montserrat;
	font-size: 10px;
	font-weight: 500;
	letter-spacing: 0.75px;
	line-height: 13px;
	text-transform: uppercase;
}

.first-col {
	width: 100px;
}

.accordion-document .accordion-table .detail{
	position: absolute;
	right: 30px;
	line-height: unset;
}

.tab-row-body span {
	font-weight: 700;
    font-size: 16px;
    line-height: 0;
    min-height: 19px;
    padding-top: 11px;
}

.accordion-table .accordion-item {
	margin: 0;
}

a.prototipo::before {
	content: ".";
	position: relative;
	bottom: 2px;
	font-size: 30px;
	color: #fff;
	line-height: 0;
	margin-right: 10px;
}