/*
	Author: Danilo Cicognani
	Script: style.css
	Theme: sangiuseppelugo
	Version: 3.00
	Date: 15/09/2026
	Object: Cascading Style Sheet for San Giuseppe Lugo theme for Web Portal Now
	Copyright (c) 2013-2026 Danilo Cicognani
*/

/* Getting the new tags to behave */
article, aside, audio, canvas, command, datalist, details, embed, figcaption, figure, footer, header, hgroup, keygen, meter, nav, output, progress, section, main, source, video, summary {
	display: block;
}
mark, rp, rt, ruby, time {
	display: inline;
}

/* ADMIN STYLES */

div.admin {
	clear: both;
	background: url(../images/header_bg_tail_dark.gif) 0 0 repeat;
	border-bottom: 1px solid #ffffff;
}
#content div.admin {
	border: 1px solid #ffffff;
	margin: 10px 0px;
	padding: 0px 5px;
}
div.admin div {
	margin: 0px auto;
	width: 90%;
	padding: 5px 0px;
}
input.admin {
	width: 110px;
	height: 25px;
	margin-right: 5px;
	border: 1px solid #000000;
	background-image: url('../images/grad23.gif');
}
input.admin:hover, input.admin:focus {
	border: 1px solid #f1f1f1;
	background-image: url('../images/hover23.gif');
}


/* Global properties ======================================================== */
html {
	width: 100%;
	font-size: 100%;
}

body {
	font-family: 'Trebuchet MS', 'Arial Narrow', Arial, Helvetica, sans-serif;
	font-size: 1.1em;
	color: #685b4c;
	background: #efefef;
	line-height: 1.5em;
	overflow-wrap: anywhere;
}
th {
	font-family: 'Trebuchet MS', 'Arial Narrow', Arial, Helvetica, sans-serif;
	color: #685b4c;
	font-size: 1.1em;
	line-height: 1.5em;
}
td {
	font-family: 'Trebuchet MS', 'Arial Narrow', Arial, Helvetica, sans-serif;
	color: #685b4c;
	font-size: 1.1em;
	line-height: 1.5em;
}

.bg {
	width: 100%;
	background: url(../images/bg-top.jpg) center 0 no-repeat;
}

.main {
	width: 90%;
	padding: 0;
	margin: 0 auto;
	position: relative;
}

a {
	color: #06266f;
	outline: none;
}
a:hover, a:focus {
	text-decoration: none;
}

.clear {
	clear: both;
	width: 100%;
	line-height: 0;
	font-size: 0;
}
.clear-left {
	clear: left;
	width: 100%;
	line-height: 0;
	font-size: 0;
}

.wrapper {
	width: 100%;
	overflow: hidden;
}
.extra-wrap {
	width: 100%;
}
.img-wrap {
	overflow: hidden;
}
.container {
	width: 90%;
	position: relative;
	overflow: hidden;
	margin: 0 auto;
}
.spacing {
	margin: 6px 0 29px 14px;
}
.noIndent {
	margin: 0;
	padding: 0;
	border: none;
}

.indent {
	padding-top: 11px;
}

/*********************************boxes**********************************/
.menu li a,
.list-1 li a,
.list-2 li a,
.link,
.logo {
	text-decoration: none;
}

/*********************************header*************************************/
header {
	border-bottom: solid 1px #fff;
	width: 100%;
	position: relative;
	background: url(../images/header_bg_tail_dark.gif) 0 0 repeat;
	z-index: 10;
}
button#skipper {
	opacity: 0;
	position: absolute;
	top: 20px;
	left: 50%;
	transform: translateX(-50%);
	background-color: rgba(0, 0, 0, 0.7);
	padding: 10px;
	color: #fff;
	font-size: 1em;
	line-height: 1.5em;
	border: 2px solid #fff;
	border-radius: 30px;
}
button#skipper:focus-visible {
	opacity: 1;
	outline: 2px solid #026d7e;
}
div.heading {
	float: left;
	font-size: 1.5em;
	color: #ffffff;
	font-variant: small-caps;
	font-weight: bold;
	line-height: 1.2em;
	padding-top: 10px;
	margin: 0;
}
div.heading h1, div.heading .h1 {
	float: left;
	font-size: 1em;
	line-height: 1.2em;
	color: #ffffff;
	margin: 0;
	border-radius: 10px;
	padding: 2px 10px;
}
div.heading img {
	float: left;
	width: 100px;
	height: 100px;
	margin-top: -5px;
	margin-right: 10px;
	background-color: #fff;
	border-radius: 50%;
}
div.heading a {
	color: #fff;
	text-decoration: none;
}
div.heading a:hover, div.heading a:focus {
	text-decoration: underline;
}
div.heading a:focus-visible h1, div.heading a:focus-visible .h1 {
	outline: 2px solid #026d7e;
}
ul.sopramenu {
	display: block;
	text-align: right;
	padding-top: 10px;
	line-height: 1.7em;
	height: 140px;
}
ul.sopramenu li {
	display: inline-block;
	margin: 0px;
	padding: 0px;
}
ul.sopramenu li a {
	display: block;
	float: left;
	font-size: 1.2em;
	color: #ffffff;
	text-decoration: underline;
	border-radius: 10px;
	padding: 2px 10px;
	white-space: nowrap;
}
ul.sopramenu li a:hover, ul.sopramenu li a:focus {
	text-decoration: none;
}
ul.sopramenu li a:focus-visible {
	outline: 2px solid #026d7e;
}

@media (max-width: 1170px) {
	div.heading {
		min-height: 100px;
		max-width: 500px;
	}
	div.heading h1, div.heading .h1 {
		max-width: 360px;
	}
}
@media (max-width: 780px) {
	div.heading, div.heading h1, div.heading .h1 {
		float: none;
	}
	ul.sopramenu {
		text-align: left;
		height: 80px;
		max-width: 300px;
	}
}
@media (max-width: 420px) {
	div.heading {
		font-size: 1.1em;
	}
	div.heading h1, div.heading .h1 {
		font-size: 1.1em;
		max-width: 300px;
	}
}
header .inner {
	background: url(../images/header_bg_dark.jpg) center 0 no-repeat;
	position: relative;
	max-height: 332px;
}
.home header .inner, .contatti header .inner {
	max-height: 432px;
}

/* MAIN MENU */
nav.menu {
	position: absolute;
	z-index: 10;
	top: 80px;
	left: -16px;
	right: -16px;
}
nav.menu ul {
	padding: 0px;
}

/* MAIN MENU BIG */
@media (min-width: 1024px) {
	nav.menu > ul > li {
		float: left;
		font-size: 1.2em;
		width: 155px;
		margin: 0px;
		padding: 0px;
		margin-right: calc((100% - (6 *155px)) / 5);
		text-transform: uppercase;
	}
	nav.menu > ul > li.item6 {
		margin-right: 0;
	}
	nav.menu > ul > li {
		position: relative;
		z-index: 12;
		font-size: 1.3em;
	}
	nav.menu > ul > li > a {
		margin: -5px;
		z-index: 12;
		width: 155px;
		position: relative;
		height: 155px;
		display: flex;
		justify-content: center;
		align-items: center;
		overflow: hidden;
		color: #fff;
		line-height: 1.2em;
		border: 5px dotted transparent;
		border-radius: 50%;
	}
	nav.menu > ul > li > a span {
		width: 137px;
		height: 137px;
		display: flex;
		text-align: center;
		justify-content: center;
		align-items: center;
	}

	nav.menu > ul > li > a.active {
		border-color: #fff;
	}
	nav.menu > ul > li > a:hover,
	nav.menu > ul > li > a:focus {
		border-color: #000;
		text-decoration: underline;
	}

	nav.menu > ul > li.item1 {
		top: 30px;
	}
	nav.menu > ul > li.item1 > a {
		background: url(../images/menu_item1_bg.png) center 0 no-repeat;
		color: #000;
	}
	nav.menu > ul > li.item2 {
		top: 15px;
	}
	nav.menu > ul > li.item2 > a {
		background: url(../images/menu_item2_bg.png) center 0 no-repeat;
		color: #000;
	}
	nav.menu > ul > li.item3 > a {
		background: url(../images/menu_item3_bg.png) center 0 no-repeat;
	}
	nav.menu > ul > li.item4 > a {
		background: url(../images/menu_item4_bg.png) center 0 no-repeat;
		color: #000;
	}
	nav.menu > ul > li.item5 {
		top: 15px;
	}
	nav.menu > ul > li.item5 > a {
		background: url(../images/menu_item5_bg.png) center 0 no-repeat;
	}
	nav.menu > ul > li.item6 {
		top: 30px;
	}
	nav.menu > ul > li.item6 > a {
		background: url(../images/menu_item6_bg.png) center 0 no-repeat;
	}

	nav.menu > ul > li > ul {
		position: relative;
		margin: -76px 0px 0px 0px;
		z-index: 1;
		display: none;
		font-size: 0.75em;
		padding: 80px 3px 20px 3px;
		border-radius: 0px 0px 28px 28px;
		-moz-border-radius: 0px 0px 28px 28px;
		-webkit-border-radius: 0px 0px 28px 28px;
		box-shadow: 3px 3px 5px #333333;
	}
	nav.menu > ul > li.item1 > ul {
		background: #5eb744;
	}
	nav.menu > ul > li.item2 > ul {
		background: #f39e00;
	}
	nav.menu > ul > li.item3 > ul {
		background: #ba3333;
	}
	nav.menu > ul > li.item4 > ul {
		background: #59cce2;
	}
	nav.menu > ul > li.item5 > ul {
		background: #645cc2;
	}
	nav.menu > ul > li.item6 > ul {
		background: #f39e00;
	}
	nav.menu > ul > li.open > ul {
		display: block;
	}
	nav.menu > ul > li > ul > li {
		line-height: 1.2em;
		text-align: center;
		text-transform: none;
	}
	nav.menu > ul > li > ul > li > a {
		padding: 0.3em;
		display: block;
		color: #fff;
		border: 1px solid transparent;
		text-decoration: underline;
	}
	nav.menu > ul > li.item1 > ul > li > a,
	nav.menu > ul > li.item2 > ul > li > a,
	nav.menu > ul > li.item4 > ul > li > a {
		color: #000;
	}
	nav.menu > ul > li ul > li.active {
		background-color: rgba(255, 255, 255, 0.2);
	}
	nav.menu > ul > li ul > li.active a {
		border-color: rgba(0, 0, 0, 0.5);
		text-decoration: none;
	}
	nav.menu > ul > li ul > li > a:hover,
	nav.menu > ul > li ul > li > a:focus {
		border: 1px solid #fff;
		background-color: rgba(0, 0, 0, 0.1);
	}
	nav.menu > ul > li.item1 ul > li.active > a,
	nav.menu > ul > li.item2 ul > li.active > a,
	nav.menu > ul > li.item4 ul > li.active > a {
		border-color: rgba(0, 0, 0, 0.5);
		background-color: rgba(0, 0, 0, 0.1);
	}
	nav.menu > ul > li.item1 ul > li > a:hover,
	nav.menu > ul > li.item2 ul > li > a:hover,
	nav.menu > ul > li.item4 ul > li > a:hover,
	nav.menu > ul > li.item1 ul > li > a:focus,
	nav.menu > ul > li.item2 ul > li > a:focus,
	nav.menu > ul > li.item4 ul > li > a:focus {
		border: 1px solid #fff;
		background-color: rgba(255, 255, 255, 0.2);
	}
}
/* MAIN MENU SMALL */
@media (max-width: 1023px) {
	nav.menu ul {
		display: none;
	}
	nav.menu > ul {
		padding: 3px;
		position: absolute;
		right: 0;
		font-size: 1em;
		margin-top: 37px;
		background-color: #5eb744;
	}
	nav.menu a {
		display: block;
		color: #000;
		border: 1px solid transparent;
		font-size: 1.2em;
		line-height: 1.8em;
		margin: 0px 2px;
		text-decoration: underline;
		padding: 0px 5px;
		text-align: right;
	}
	nav.menu a.active, nav.menu li.active > a {
		background-color: rgba(255, 255, 255, 0.2);
	}
	nav.menu a:hover, nav.menu a:focus {
		border: 1px solid #000;
		background-color: rgba(0, 0, 0, 0.1);
	}
	nav.menu {
		margin-top: 5px;
		right: 24px;
		left: auto;
		cursor: pointer;
		border-radius: 20px;
		padding: 0px 3px 17px 10px;
	}
	nav.menu:focus-visible {
		outline: 2px solid #026d7e;
	}
	nav.menu::before {
		content: '';
		display: block;
		width: 45px;
		height: 8px;
		margin-top: 4px;
		border-bottom: 3px solid #fff;
		transition: transform 0.3s ease;
	}
	nav.menu::after {
		content: '';
		display: block;
		width: 45px;
		height: 12px;
		margin-top: 12px;
		border-top: 3px solid #fff;
		border-bottom: 3px solid #fff;
		transition: transform 0.3s ease;
	}
	nav.menu:hover::before, nav.menu:focus::before {
		transform: rotate(90deg) translate(18px, 8px);
	}
	nav.menu:hover::after, nav.menu:focus::after {
		transform: rotate(90deg) translate(-8px, -12px);
	}
	nav.menu.open::before {
		transform: rotate(45deg) translate(10px, 8px);
		width: 60px;
	}
	nav.menu.open::after {
		transform: rotate(-45deg) translate(6px, -13px);
		width: 60px;
		border-top: 0px;
	}
	nav.menu.open > ul {
		display: block;
	}
	nav.menu.open > ul li {
		width: auto;
		min-width: 250px;
		text-align: center;
	}
	nav.menu > ul > li.close::before {
		content: '';
		border: 1px solid #000;
		border-width: 0 3px 3px 0;
		float: left;
		margin: 15px 5px 15px 10px;
		padding: 3px;
		transform: rotate(45deg);
	}
	nav.menu > ul > li.open::before {
		content: '';
		border: 1px solid #000;
		border-width: 0 3px 3px 0;
		float: left;
		margin: 15px 5px 15px 10px;
		padding: 3px;
		transform: rotate(-135deg);
	}
	nav.menu > ul > li {
		border: 3px solid transparent;
	}
	nav.menu > ul > li.open {
		border: 3px dotted #000;
	}
	nav.menu > ul > li ul {
		font-size: 0.9em;
		line-height: 0.9em;
		background-color: #f39e00;
	}
	nav.menu > ul > li.open ul {
		display: block;
	}
	nav.menu > ul > li.open ul a {
		color: #000;
	}
	nav.menu ul ul a.active, nav.menu ul ul li.active > a {
		background-color: rgba(0, 0, 0, 0.1);
	}
	nav.menu ul ul a:hover, nav.menu ul ul a:focus {
		border: 1px solid #fff;
		background-color: rgba(255, 255, 255, 0.2);
	}
}
/* MAIN MENU SMALLER (JUST A BIG DOWN) */
@media (max-width: 780px) {
	nav.menu {
		margin-top: 45px;
	}
}

.slider_admin {
	margin: 120px auto 0 auto;
	width: 90%;
}
.slider_admin div.admin div:before {
	content: '\2BB4';
	font-size: 2em;
	line-height: 0.8em;
	color: #fff;
	float: left;
}

.header_image {
	border: solid 24px #fff;
	position: relative;
	height: 250px;
	overflow: hidden;
}
.header_image img {
	width: auto;
	height: 100%;
}
@media (min-width: 1020px) {
	.header_image img {
		width: 100%;
		height: auto;
	}
}
#map {
	border: solid 24px #fff;
	position: relative;
	height: 350px;
}
#map div.info {
	font-size: 1.2em;
	line-height: 1.5em;
}

#slogan {
	position: absolute;
	float: left;
	margin-top: -157px;
	margin-left: 39px;
	width: 30%;
	min-width: 400px;
	opacity: 0.8;
	z-index: 1;
	font-style: italic;
	font-weight: bold;
	font-size: 1.1em;
	line-height: 1.5em;
	color: #001050;
	padding: 5px;
	background: url(../images/content_bg_tail.gif) 0 0 repeat-x;
  	text-shadow:
		1px 1px 2px white,
		-1px -1px 2px white,
		1px -1px 2px white,
		-1px 1px 2px white;
}
@media (max-width: 560px) {
	#slogan {
		font-size: 1em;
		line-height: 1.5em;
		width: auto;
		min-width: auto;
		margin-right: 39px;
	}
}
@media (max-width: 470px) {
	#slogan {
		margin-top: -200px;
	}
}

/*********************************content*************************************/
#content {
	background: url(../images/content_bg_tail.gif) 0 0 repeat-x #fff;
	padding: 132px 0px 22px 0px;
	overflow: hidden;
}
#content a:not(:has(img)) {
	padding: 0px 5px;
	border-radius: 20px;
}
#content article a:not(:has(img)) {
	margin-left: -5px;
}
#content a:not(:has(img)):focus-visible {
	outline: 2px solid #026d7e;
}
@media (max-width: 780px) {
	#content {
		padding-top: 182px;
	}
}
nav.breadcrumbs {
	margin-bottom: 1.5em;
	padding: 1em;
	background: #ffffff;
}
nav.breadcrumbs ol {
	margin: 0;
	padding-left: 0;
	list-style: none;
}
nav.breadcrumbs ol li {
	display: inline;
	/* z-index: 11; */
	position: relative;
}
nav.breadcrumbs ol li a {
	padding: 0px 0.4em;
	border-radius: 20px;
}
nav.breadcrumbs ol li a:focus-visible {
	outline: 2px solid #026d7e;
}
nav.breadcrumbs li + li::before {
	display: inline-block;
	margin: 0 0.1em;
	font-size: 1.5em;
	content: ' \00BB';
}
nav.breadcrumbs li[aria-current="page"] span {
	padding: 0px 0.4em;
	color: #114e0e;
	font-weight: bold;
	text-decoration: none;
}
@media (min-width: 951px) {
	aside {
		float: right;
		background: url(../images/bg-sidebar.png) no-repeat;
		margin: -110px 0px 20px 20px;
		width: 280px;
		padding-top: 40px;
	}
}
@media (max-width: 950px) {
	aside {
		width: 100%;
	}
}
aside div {
	padding: 20px;
	color: #4b380f;
	background-color: #ffecc3;
	border-left: 1px solid #ecd49f;
	border-right: 1px solid #ecd49f;
	border-bottom: 1px solid #ecd49f;
}

.large_text {
	color: #fff;
	font-size: 1.2em;
	line-height: 1.5em;
}
h1 {
	font-size: 2em;
	line-height: 1.5em;
	margin: 0px 0px 20px 0px;
	color: #0A2D06;
	font-variant: small-caps;
}
h2 {
	font-size: 1.35em;
	line-height: 1.5em;
	margin: 0px 0px 10px 0px;
	color: #0A2D06;
}
h3 {
	font-size: 1.18em;
	line-height: 1.5em;
	margin: 0px 0px 10px 0px;
/*	color: #ffffff;	*/
	color: #0A2D06;
}
aside h2 {
	padding: 0px 20px;
	margin: 0px;
	color: #4b380f;
	background-color: #ffecc3;
	border-left: 1px solid #ecd49f;
	border-right: 1px solid #ecd49f;
}
aside .news {
	padding: 10px;
}
aside .news_paging {
	padding: 10px 10px;
	color: #4b380f;
	background-color: #ffecc3;
	border-left: 1px solid #ecd49f;
	border-right: 1px solid #ecd49f;
	border-bottom: 1px solid #ecd49f;
}
aside .news_paging a {
	padding: 0px 10px !important;
	border-radius: 20px;
}
aside .news_paging a:focus-visible {
	outline: 2px solid #026d7e;
}
aside .news_paging ul li {
	display: inline-block;
	padding-left: 0px;
	margin: 0px;
	background: none;
}
aside .news a {
	display: block;
	font-size: 1.2em;
	line-height: 1.5em;
	font-weight: bold;
	padding: 0px 10px !important;
	margin-bottom: 0.3em;
	border-radius: 20px;
}
aside .news a:focus-visible {
	outline: 2px solid #026d7e;
}
aside .news .news_subtitle {
	padding: 0.3em 10px;
	border: 0px;
	font-weight: bold;
}
aside .news .text {
	padding: 0px 10px;
	border: 0px;
	font-size: 0.93em;
	line-height: 1.5em;
}
h3 a {
	color: #0A2D06;
}
h4 {
	font-size: 1.1em;
	line-height: 1.5em;
	margin: 0px 0px 10px 0px;
	color: #0A2D06;
}
hr {
	clear: left;
	border: 0px;
	margin: 20px 0px;
	height: 1px;
	background: transparent;
	background-image: linear-gradient(left, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1), rgba(255, 255, 255, 0));
	background-image: -webkit-linear-gradient(left, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1), rgba(255, 255, 255, 0));
	background-image: -moz-linear-gradient(left, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1), rgba(255, 255, 255, 0));
	background-image: -ms-linear-gradient(left, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1), rgba(255, 255, 255, 0));
	background-image: -o-linear-gradient(left, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1), rgba(255, 255, 255, 0));
}
.download h2 {
	font-size: 1.7em;
	line-height: 1.5em;
	font-variant: small-caps;
}
summary {
	color: #4D4138;
}
article.text {
	color: #4D4138;
}
article a.file {
	font-size: 1em;
}
figure, .figure {
	float: left;
	margin: 0px 20px 10px 0px;
}
figure > a, figure > img, .figure > a, .figure > img {
	display: block;
	border: 10px solid #ffffff;
}
.block.type1 figure > a:hover, .block.type1 figure > a:focus, .block.type1 .figure > a:hover, .block.type1 .figure > a:focus {
	border: 10px solid #84d580;
}
.block {
	border: solid 11px #ffffff;
}
.block ul {
	padding: 3px 0px 3px 2px;
	overflow: hidden;
}
.block ul li {
	line-height: 1.5em;
	padding-left: 20px;
	margin: 2px 0px;
	background: url(../images/list_marker.png) 0 7px no-repeat;
	min-height: 20px;
}
.block p {
	margin: 1em 0px;
}
ul.album {
	padding: 0px;
	margin: 0px;
}
ul.album li {
	background: transparent;
	float: left;
	list-style: none;
	margin: 0px 19px 19px 0px;
	padding: 0px;
}
ul.album li a {
	display: block;
	border: 10px solid #ffffff;
}
ul.album li a:hover, ul.album li a:focus {
	border: 10px solid #84d580;
}

.block.type1 {
	background: url(../images/bg.gif) 0 0 repeat;
	color: #685b4c;
	clear: both;
}
.block .inner {
	padding: 20px 20px 20px 20px;
	background: url(../images/block_light.png) center 0 no-repeat;
}
.block.type2 {
	background: url(../images/block_yellow_bg.gif) 0 0 repeat;
	color: #444;
}
.block.type2 h1 {
	color: #000;
}
.block.type2 .list-1 li a:hover, .block.type2 .list-1 li a:focus {
	color: #444 !important;
}
.block.type2 .link-1 {
	background: url(../images/link1_bg2.png) 0 0 repeat;
	color: #000;
}
.block.type2 .list-1 {
	padding-bottom: 20px;
}
.block.type2 .list-1 li {
	background: url(../images/list1_marker2.gif) 0px 7px no-repeat;
}
.block.type2 .link-1:hover, .block.type2 .link-1:focus {
	background: #eaf9f9;
	color: #444;
}
.block.type3 {
	background: url(../images/block_blue_bg.gif) 0 0 repeat;
	color: #333;
}
.block.type3 h1 {
	color: #000;
}
.block .inner.type2 {
	padding-bottom: 26px;
}
.block .inner.type3 {
	padding-bottom: 22px;
}
/*
.block figure {
	padding: 6px 0 25px 2px;
}
*/
.block.type3 .link-1 {
	background: url(../images/link1_bg3.png) 0 0 repeat;
	color: #000;
}
.block.type3 .link-1:hover, .block.type3 .link-1:focus {
	background: #eaf9f9;
	color: #333;
}

.scroll {
	overflow: auto;
	height: 180px;
	position: relative;
}
.scroll .padding-right {
	height: 1%;
	padding-right: 50px;
}

.box {
	width: 100%;
	min-height: 295px;
	background: url(../images/bg-box.png) 0 0 repeat;
}
.box .padding {
	padding: 50px 65px 30px 68px;
}

.list-1 {
	padding: 5px 0px 5px 2px;
	overflow: hidden;
}
.list-1 li {
	line-height: 2.1em !important;
	padding-left: 30px !important;
	background: url(../images/list1_marker.png) 0 7px no-repeat !important;
	min-height: 33px !important;
}
.list-1 li a {
	color: #0A2D06;
	font-size: 1em;
	text-decoration: none;
}
.list-1 li a:hover, .list-1 li a:focus {
	color: #114e0e;
	text-decoration: underline;
}
.list-1.indent2 {
	padding-bottom: 23px;
}
.list-2 {
	padding-bottom: 5px;
}
.list-2 li {
	background: url(../images/list2_marker.png) 0 5px no-repeat;
	text-indent: 23px;
	margin-bottom: 23px;
}
.list-2 li a {
	color: #fff;
	font-size: 1em;
	margin-bottom: 8px;
}
.list-2 li p {
	padding-top: 12px;
	color: #fbe6a5;
	text-indent: 0;
}
.list-2 li a:hover, .list-2 li a:focus {
	text-decoration: underline;
}

.link:hover, .link:focus {
	text-decoration: underline;
}

.link-1 {
	display: inline-block;
	background: #f47878;
	padding-right: 8px;
	color: #fff;
	text-decoration: none;
	font-size: 1.2em;
	font-style: italic;
	border-radius: 18px 18px 18px 18px;
	-moz-border-radius: 18px 18px 18px 18px;
	-webkit-border-radius: 18px 18px 18px 18px;
	position: relative;
	padding: 5px 15px !important;
	line-height: 1.5em;
}
.link-1:hover, .link-1:focus {
	background: #eaf9f9;
	color: #c33c3c;
}

dl {
	padding-left: 2px;
}
dl span {
	float: left;
	width: 91px;
}
dl dt {
	font-size: 1.2em;
	color: #fff;
	margin-bottom: 13px;
}
dl a {
	color: #fbe6a5;
	text-decoration: none;
}
dl a:hover, dl a:focus {
	text-decoration: underline;
}

@media (min-width: 951px) {
	.home .type2 {
		width: calc(((100% - 300px) / 2) - 40px);
		float: left;
	}
	.home .type3 {
		width: calc(((100% - 300px) / 2) - 40px);
		float: left;
		margin-left: 20px;
	}
	.home aside {
		margin-top: -80px;
	}
}
@media (max-width: 950px) {
	.home .type2, .home .type3 {
		clear: left;
		margin-top: 30px;
	}
	.home .type2 .inner::after, .home .type3 .inner::after {
		content: "";
		display: table;
		clear: both;
	}
}
.home h2 {
	color: #000;
	font-size: 1.5em;
	line-height: 1.5em;
	text-align: center;
}
.home .type2 .figure > a:hover, .home .type2 .figure > a:focus {
	border: 10px solid #f4b800;
}
.home .type3 .figure > a:hover, .home .type3 .figure > a:focus {
	border: 10px solid #ace5ef;
}
.slbElement button {
	border-radius: 50%;
}

/****************************footer************************/
footer {
	width: 100%;
	padding: 23px 0px 15px 0px;
	background: url(../images/content_bg_tail.gif) 0 0 repeat-x;
	border-top: 1px solid #ffffff;
}
footer a {
	padding: 0px 5px;
	border-radius: 20px;
}
footer a:focus-visible {
	outline: 2px solid #026d7e;
}
footer .footer_menu {
	overflow: hidden;
	float: left;
	margin-bottom: 20px;
}
.footer_menu li {
	float: left;
	margin-left: 5px;
	margin-right: 10px;
	line-height: 2em;
}
.footer_menu li a {
	text-transform: uppercase;
	color: #333333;
	text-decoration: none;
	padding: 0px 10px;
	border-radius: 20px;
}
.footer_menu li a:hover, .footer_menu li a:focus {
	text-decoration: underline;
}
.footer_menu li a:focus-visible {
	outline: 2px solid #026d7e;
}
.footer_menu li a.active {
	color: #06266f;
}
.copy {
	float: right;
	color: #444444;
	text-align: right;
	margin-right: 15px;
}
.copy a {
	float: right;
	margin-left: 3px;
	margin-right: -5px;
}
footer address {
	font-style: normal;
}
.credit {
	font-size: 0.8em;
	line-height: 1.5em;
	height: 2em;
	margin-top: 10px;
}

.list-services {
	clear: left;
	padding: 20px 0px 0px 0px;
	font-size: 0.8em;
	line-height: 1.5em;
	margin-left: 10px;
}
.list-services li {
	float: left;
	padding: 0px 10px 0px 0px;
}

/* SIMPLIFIER */
button#simplify {
	position: fixed;
	z-index: 20;
	cursor: pointer;
	bottom: 45px;
	right: 20px;
	background-color: rgba(255, 255, 255, 0.5);
	padding: 0px;
	width: 45px;
	height: 45px;
	border: 2px	solid #fff;
	border-radius: 50%;
}
button#simplify:focus, button#simplify:hover {
	background-color: rgba(0, 0, 0, 0.2);
}
button#simplify:focus-visible {
	outline: 2px solid #026d7e;
}
div#simplifier-overlay {
	display: none;
	position: fixed;
	z-index: 25;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: transparent;;
}
div#simplifier {
	position: fixed;
	z-index: 30;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background-color: #000;
	padding: 20px;
	border: 1px solid #fff;
	border-radius: 10px;
	box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.7);
	font-size: 1.1em;
	line-height: 1.5em;
	color: #fff;
}

div#simplifier h2, div#simplifier a {
	color: #fff;
	padding: 5px 10px;
	border-radius: 10px;
}

div#simplifier a:hover, div#simplifier a:focus {
	outline: 2px solid #fff;
}
div#simplifier button {
	display: block;
	margin: 10px 0px 0px 10px;
	font-size: 1em;
	padding: 3px 10px;
	border-radius: 10px;
}
div#simplifier button#simplifier-shrink {
	margin-bottom: 10px;
}
div#simplifier fieldset {
	border: 1px solid #fff;
	padding: 20px;
	margin: 10px 10px;
	border-radius: 10px;
	display: grid;
	grid-template-columns: auto 80px;
	row-gap: 0.35rem;
	column-gap: 1rem;
	align-items: center;
}
div#simplifier fieldset legend {
	text-wrap: nowrap;
}
div#simplifier fieldset label {
	display: contents;
}
div#simplifier fieldset input[type="color"] {
	width: 100%;       /* riempie la colonna */
	height: 2rem;      /* dimensione più comoda */
	padding: 0;
	border: 1px solid #fff;
}

/* LIMITAZIONE LARGHEZZA TESTO */
html.shrink .text {
	max-width: 70ch !important;
}

/* MODALITA' ALTO CONTRASTO */
html.hc {
  --hc-bg: #000;
  --hc-fg: #fff;
  --hc-link: #0ff;
}

html.hc, html.hc body, html.hc header, html.hc header .inner, html.hc main, html.hc footer, html.hc .copy {
	background: var(--hc-bg) !important;
	color: var(--hc-fg) !important;
}
@media (min-width: 1024px) {
	html.hc nav.menu > ul > li > a {
		background: var(--hc-bg) !important;
		border: 10px solid var(--hc-fg) !important;
		margin: 0px !important;
		width: 135px !important;
		height: 135px !important;
	}
	html.hc nav.menu > ul > li > ul {
		background: var(--hc-bg) !important;
	}
}
@media (max-width: 1023px) {
	html.hc nav.menu ul {
		background: var(--hc-bg) !important;
		border: 1px solid var(--hc-fg) !important;
	}
	html.hc nav.menu a.active, html.hc nav.menu li.active > a {
		background-color: rgba(255, 255, 255, 0.2) !important;
	}
	html.hc nav.menu a:hover, html.hc nav.menu a:focus {
		background-color: rgba(255, 255, 255, 0.2) !important;
	}
	html.hc nav.menu > ul > li::before {
		border-color: var(--hc-fg) !important;
	}
}
html.hc a {
	color: var(--hc-link) !important;
}
html.hc .carousel_nav-dots a.carousel_nav_item-selected {
	background: var(--hc-bg) !important;
}
html.hc #slogan {
	opacity: 1 !important;
	background: var(--hc-bg) !important;
	color: var(--hc-fg) !important;
	text-shadow: none !important;
}
html.hc nav.breadcrumbs ol {
	background: var(--hc-bg) !important;
}
html.hc nav.breadcrumbs a {
	color: var(--hc-link) !important;
}
html.hc nav.breadcrumbs span {
	color: var(--hc-fg) !important;
}
html.hc nav.breadcrumbs li + li::before {
	color: var(--hc-fg) !important;
}
html.hc h1, html.hc h2, html.hc h3, html.hc h4 {
	color: var(--hc-fg) !important;
}
html.hc .block {
	background: var(--hc-bg) !important;
	color: var(--hc-fg) !important;
}
html.hc .block a.link-1 {
	background: var(--hc-link) !important;
	color: var(--hc-bg) !important;
}
html.hc .block a.link-1:hover {
	text-decoration: underline !important;
}
html.hc article.text {
	color: var(--hc-fg) !important;
}
html.hc aside {
	background: var(--hc-bg) !important;
	padding-top: 0px !important;
}
html.hc aside h2 {
	background: var(--hc-bg) !important;
	color: var(--hc-fg) !important;
	border-color: var(--hc-fg) !important;
	padding-top: 40px !important;
}
html.hc aside div {
	background: var(--hc-bg) !important;
	color: var(--hc-fg) !important;
	border-color: var(--hc-fg) !important;
}
html.hc aside .news_paging {
	background: var(--hc-bg) !important;
	color: var(--hc-fg) !important;
	border-color: var(--hc-fg) !important;
}
html.hc button#simplify:focus, html.hc button#simplify:hover {
	background-color: rgba(255, 255, 255, 0.8);
}
html.hc #map {
	color: var(--hc-bg) !important;
}
