@font-face {
	font-family: 'edmondsans';
	src: url("/javax.faces.resource/font/edmondsans-medium-webfont.eot.xhtml");
	src: local('☺'),
		url("/javax.faces.resource/font/edmondsans-medium-webfont.eot.xhtml")
		format('embedded-opentype'),
		url("/javax.faces.resource/font/edmondsans-medium-webfont.woff.xhtml")
		format('woff'),
		url("/javax.faces.resource/font/edmondsans-medium-webfont.ttf.xhtml")
		format('truetype'),
		url("/javax.faces.resource/font/edmondsans-medium-webfont.svg.xhtml#EdmondsansMedium")
		format('svg');
}

@font-face {
	font-family: 'opensans';
	src: url("/javax.faces.resource/font/opensans-webfont.eot.xhtml");
	src: local('☺'), url("/javax.faces.resource/font/opensans-webfont.eot.xhtml")
		format('embedded-opentype'),
		url("/javax.faces.resource/font/opensans-webfont.woff.xhtml") format('woff'),
		url("/javax.faces.resource/font/opensans-webfont.ttf.xhtml") format('truetype'),
		url("/javax.faces.resource/font/opensans-webfont.svg.xhtml#OpenSansRegular")
		format('svg');
}

body {
	min-width: 640px;
	font-family: "Montserrat";
	margin-top: 0px;
	font-weight: 100;
	font-size: 100% !important;
	color: #5a5959 !important;
	line-height: normal !important;
	-webkit-font-smoothing:antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-smoothing:antialiased;
}

.header-container {
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
	display: table;
	line-height: 0;
	content: "";
}

.header-container a {
	text-decoration: none;
}

#logo {
	float: left;
}

#logo img {
	vertical-align: bottom;
	margin-top: 10px;
	max-width: 98%;
}

#banner {
	background-color: #eee;
	width: 100%;
	border-top: 1px solid #E3001B;
	height: 1px;
	display: table;
	line-height: 0;
	content: "";
}

.nav {
	margin-bottom: 0px;
	margin-top: 5px;
}

ul.links li {
	display: inline;
	list-style: none;
	padding: 0 10px 0 0;
}

ul.links {
	margin: 0 !important;
	padding: 0 0 0 15px;
}

#block-locale-language {
	margin-top: 5px;
	margin-bottom: 28px;
}

#menu-side a {
	color: #535353;
	font-family: "Montserrat";
	font-size: 1.4em !important;
	text-transform: uppercase;
}

#menu-bar-main a {
	color: #535353;
	font-family: "Montserrat";
	font-size: 1.4em;
	padding: 30px 20px;
	text-transform: uppercase;
	line-height: 20px;
}

#menu-bar-main a:hover, #menu-bar-main a:focus, #menu-side a:hover,
	#menu-side a:focus {
	color: #e3001b;
}

#menu-bar-main a.active, #menu-bar-main a:active, #menu-side a.active,
	#menu-side a:active {
	color: #c80018;
}

.nav {
	clear: both;
}

.nav ul, .nav ul.menu {
	margin: 0;
	padding: 0;
}

.nav li, .nav ul.menu li {
	display: inline;
	float: left;
	list-style: none;
	margin: 0;
	padding: 0;
}

.nav li a, .nav ul.menu li a {
	display: block;
	white-space: nowrap;
	padding: 0 10px;
}

.nav li a:visited, .nav ul.menu li a:visited {
	
}

.nav li a:hover, .nav li a:focus, .nav ul.menu li a:hover, .nav ul.menu li a:focus
	{
	
}

.nav .block {
	margin-bottom: 0;
}

ul.menu {
	padding-left: 15px;
}

ul.menu ul {
	padding-left: 15px;
}

ul.menu ul ul {
	
}

ul.menu ul ul ul {
	
}

ul.menu li {
	margin: 0;
}

ul.menu li.collapsed, ul.menu li.expanded, ul.menu li.leaf {
	
}

ul.menu li a {
	
}

ul.menu li a:link, ul.menu li a:visited {
	
}

ul.menu li a:active, ul.menu li a.active {
	
}

ul.menu li a:hover, ul.menu li a:focus {
	
}

ul.menu li.active a, ul.menu li.active-trail a {
	
}

ul.menu li.first, ul.menu li.last {
	
}

/* If li.content exists it"s a problem, so reset the padding */
.block .menu li.content {
	padding: 0;
}

#menu-side {
	margin-right: 5px;
	float: right;
	padding: 30px 14px 10px;
	border-left: 1px solid #DDDDDD;
	line-height: 20px;
}

#menu-bar-main {
	float: right;
}

@media screen and (max-width:480px) {
	html {
		font-size: 112.5%;
	}
	body {
		margin: 0;
	}
	#logo {
		display: block;
		width: 100%;
		text-align: center;
	}
	#menu-side {
		display: block;
		width: 100%;
		text-align: center;
		background-color: #F4F4F4;
		font-size: 60%;
		padding: 0;
		margin: 0 !important;
		margin-right: 0 !important;
		border-bottom: 1px solid #ddd;
		border-top: 1px solid #ddd;
	}
	#menu-side .block-content ul {
		padding: 8px 0 0 8px;
	}
	#block-locale-language {
		margin-bottom: 0 !important;
	}
	#menu-side .block {
		margin-bottom: 0;
	}
	#primary-menu-bar {
		display: none;
	}
	form {
		margin: 0px;
	}
	ul {
		margin: 0;
	}
	ul.rm-removed {
		list-style: none;
		padding: 0;
	}
	#banner {
		background: 0 none;
		width: 100%;
		border: 0 none;
		height: auto;
		border-bottom: 1px solid #dddddd;
	}
	.responsive-menus.responsified.responsive-toggled span.toggler {
		border-bottom-left-radius: 0;
		border-bottom-right-radius: 0;
		border-bottom: 0 none;
	}
	.responsive-menus.responsified span.toggler {
		background: none;
		border: 0 none;
		box-shadow: none;
		padding-bottom: 20px;
	}
	.responsive-menus.responsified.responsive-toggled.absolute .responsive-menus-simple
		{
		position: relative;
		z-index: 999;
		top: auto;
	}
	.responsive-menus.responsified .responsive-menus-simple {
		display: none;
		width: 100%;
		background: none;
		border-bottom-right-radius: 0;
		border-bottom-left-radius: 0;
		box-shadow: none;
	}
	.responsive-menus.responsified .responsive-menus-simple li a {
		color: #fff;
		display: block;
		padding: 0;
		margin: 0;
		text-align: center;
		color: #fff;
		border-bottom: 1px solid #bbb;
		border-bottom: 1px solid rgba(255, 255, 255, 0.5);
		text-decoration: none;
		text-transform: uppercase;
	}
	#menu-bar-main {
		float: none;
		clear: both;
		padding-top: 20px;
	}
	.responsive-menus.responsified.responsive-toggled span.toggler {
		border-bottom-left-radius: 0;
		border-bottom-right-radius: 0;
		border-bottom: 0 none;
	}
	.responsive-menus.responsified span.toggler {
		background: none;
		border: 0 none;
		box-shadow: none;
	}
	.responsive-menus.responsified.responsive-toggled.absolute .responsive-menus-simple
		{
		position: relative;
		z-index: 999;
		top: auto;
	}
	.responsive-menus.responsified .responsive-menus-simple {
		display: none;
		width: 100%;
		background: none;
		border-bottom-right-radius: 0;
		border-bottom-left-radius: 0;
		box-shadow: none;
	}
	.responsive-menus.responsified .responsive-menus-simple li a {
		color: #fff;
		display: block;
		padding: 0;
		margin: 0;
		text-align: center;
		color: #fff;
		border-bottom: 1px solid #bbb;
		border-bottom: 1px solid rgba(255, 255, 255, 0.5);
		text-decoration: none;
		text-transform: uppercase;
	}
	#menu-bar-main a {
		font-size: 1em;
		padding: 4px;
	}
	.responsive-menus.responsified span.toggler {
		padding: 1px;
		display: block;
		color: #fff;
		border-radius: 5px;
		font-size: 1.35em;
		text-align: center;
		cursor: pointer;
		outline: none;
	}
}

@media screen and (min-width:481px) and (max-width:767px) {
	html {
		font-size: 112.5%;
	}
	#logo {
		display: block;
		width: 100%;
		text-align: center;
	}
	#menu-side {
		display: block;
		width: 100%;
		text-align: center;
		background-color: #F4F4F4;
		font-size: 60%;
		padding: 0;
		margin: 0;
		border-bottom: 1px solid #ddd;
		border-top: 1px solid #ddd;
	}
	#menu-side .block-content ul {
		padding: 8px 0 0 8px;
	}
	#menu-side .block {
		margin-bottom: 0;
	}
	#primary-menu-bar {
		display: none;
	}
	#banner {
		background: 0 none;
		width: 100%;
		border: 0 none;
		height: auto;
		border-bottom: 1px solid #dddddd;
	}
	#block-locale-language {
		margin-bottom: 0 !important;
	}
	form {
		margin: 0px;
	}
	ul {
		margin: 0;
	}
	ul.rm-removed {
		list-style: none;
		padding: 0;
	}
	#menu-bar-main {
		float: none;
		clear: both;
		padding-top: 20px;
	}
	.responsive-menus.responsified.responsive-toggled span.toggler {
		border-bottom-left-radius: 0;
		border-bottom-right-radius: 0;
		border-bottom: 0 none;
	}
	.responsive-menus.responsified span.toggler {
		background: none;
		border: 0 none;
		box-shadow: none;
		padding-bottom: 20px;
	}
	.responsive-menus.responsified.responsive-toggled.absolute .responsive-menus-simple
		{
		position: relative;
		z-index: 999;
		top: auto;
	}
	.responsive-menus.responsified .responsive-menus-simple {
		display: none;
		width: 100%;
		background: none;
		border-bottom-right-radius: 0;
		border-bottom-left-radius: 0;
		box-shadow: none;
	}
	.responsive-menus.responsified .responsive-menus-simple li a {
		color: #fff;
		display: block;
		padding: 0;
		margin: 0;
		text-align: center;
		color: #fff;
		border-bottom: 1px solid #bbb;
		border-bottom: 1px solid rgba(255, 255, 255, 0.5);
		text-decoration: none;
		text-transform: uppercase;
	}
	#menu-bar-main a {
		font-size: 1em;
		padding: 4px;
	}
	.responsive-menus.responsified span.toggler {
		padding: 1px;
		display: block;
		color: #fff;
		border-radius: 5px;
		font-size: 1.35em;
		text-align: center;
		cursor: pointer;
		outline: none;
	}
}

@media screen and (min-width:768px) and (max-width:1023px) {
	html {
		font-size: 80%;
	}
	body {
		overflow: hidden;
		margin: 0 auto;
	}
	.responsive-menus {
		display: none;
	}
	#logo img {
		max-width: 150px;
	}
	#banner {
		height: auto;
	}
	.responsive-menus {
		display: none;
	}
}

@media screen and (min-width:1024px) {
	.responsive-menus {
		display: none;
	}
}

/*
* Pulsante Cerca
*/

.region-header #block-formdiricerca .button.form-submit {
	display: block;
	width: 89px;
	height: 76px;
	font-size: 0px;
	border: none;
	cursor: pointer;
}

.region-header #block-formdiricerca .button.form-submit:hover {

}

.region-header #block-formdiricerca .form-item.form-item-keys.form-no-label {

}

/*
* Fine Pulsante Cerca
*/

/*
* Login
*/

body.i18n-it.page-user #user-login-form {
	margin-top: 50px;
	margin-bottom: 50px;
	width: 500px;
	max-width: 100%;
	height: 200px;
	margin-left: auto;
	margin-right: auto;
}

body.i18n-it.page-user #user-login-form .js-form-type-password {
	margin-top: 20px;
}

body.i18n-it.page-user #user-login-form .description {
	font-size: 15px !important;
	font-weight: 400;
}

body.i18n-it.page-user #user-login-form .js-form-type-password .js-form-required {
	margin-right: 6px;
}

body.i18n-it.page-user #user-login-form .form-actions.js-form-wrapper.form-wrapper {
	margin-top: 20px;
	margin-bottom: 20px;
}

body.i18n-it.page-user #user-login-form .button.js-form-submit.form-submit {
	color: #FFFFFF;
	background-color: #8795AB;
	font-family: 'Montserrat', sans-serif;
	font-size: 18.75px;
	font-weight: bold;
	text-transform: uppercase;
	border: 1.5px solid #8795AB;
	display: block;
	border-radius: 5px;
	width: 120px;
	height: 45px;
}

body.i18n-it.page-user #user-login-form .button.js-form-submit.form-submit:hover {
	color: #8795AB;
	background-color: #FFFFFF;
	border: 1.5px solid #8795AB;
}


/*
* Logo
*/

#block-registro-branding {
	width: 245px;
	margin: 25px auto;
}

#block-registro-branding > a {
	display: block;
	width: 245px;
	height: 75.12px;
}

#block-registro-branding img {
	max-width: 100%;
	display: block;
}

/*
* fine logo
*/

#block-cercailtuoitpulsante .text-with-summary a:hover {
	background: #637680;
	color: #fff;
}

#block-cercailtuoitpulsante .text-with-summary p {
	margin: 0;
}

#block-cercailtuoitpulsante .text-with-summary a {
	color: #637680;
	text-decoration: none;
	display: inline-block;
	line-height: 55px;
	border: 2px solid #637680;
	border-radius: 30px;
	text-align: center;
	-webkit-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
	padding: 5px 25px;
	line-height: 20px;
}

#block-cercailtuoitpulsante {
	position: absolute;
	right: 50%;
	margin-right: -24%;
	top: 41px;
}


/*
* Menu
*/

#block-registro-main-menu {
	background: #E6E9F2;
	width: 100%;
	text-align: center;
}

#block-registro-main-menu ul.menu {
	overflow: hidden;
	padding: 0;
	margin: 0;
}

#block-registro-main-menu ul.menu > li {
	display: inline-block;
}

#block-registro-main-menu ul.menu > li.is-active,
#block-registro-main-menu ul.menu > li.is-active > a,
#block-registro-main-menu ul.menu > li:hover > a {
	text-decoration: none;
	color: #fff;
	background: #8795AB;
}

#block-registro-main-menu ul.menu > li > a {
	text-decoration: none;
	color: #606A79;
	font-weight: 500;
	font-size: 16px;
	padding: 0 25px;
	transition: all 0.2s ease-in-out;
	display: inline-block;
	line-height: 40px;
}
#block-menusecondolivello {
	width: 100%;
	background: #fff;
	text-align: center;
	float: left;
	height: 66px;
}

#block-menusecondolivello ul.menu {
	overflow: visible;
	list-style: none;
	padding: 0;
	margin: 0 auto;
	display: inline-flex;
	width: 100%;
	max-width: 1280px;
	justify-content: center;
	border-bottom: 1px solid #8795AB;
}

#block-menusecondolivello > ul.menu > li.is-active > ul {
	display: none;
}

#block-menusecondolivello > ul.menu > li.is-active a,
#block-menusecondolivello ul.menu > li:hover a,
#block-menusecondolivello ul.menu > li.is-active a {
	border-bottom-width: 6px;
	border-color: #8795AB;
}


#block-menusecondolivello > ul.menu > li.is-active label,
#block-menusecondolivello ul.menu > li:hover label,
#block-menusecondolivello ul.menu > li.is-active label {
	border-bottom-width: 6px;
	border-color: #8795AB;
}



#block-menusecondolivello ul.menu > li:first-child {
	text-align: left;
	padding-left: 0;
	/* flex-grow: 0.3; */
}

#block-menusecondolivello ul.menu > li:last-child {
	text-align: right;
	padding-right: 0;
	/* flex-grow: 0.3; */
}
#block-menusecondolivello ul.menu > li {
	transition: all 0.3s ease-in-out;
	padding: 0 39px;
	/* flex-grow: 1; */
}

#block-menusecondolivello ul.menu > li > a:hover {
	text-decoration: none;
}

#block-menusecondolivello ul.menu > li > a {
	text-decoration: none;
	color: #606A79;
	font-weight: 500;
	font-size: 16px;
	padding: 21px 0;
	transition: all 0.3s ease-in-out;
	line-height: 60px;
	display: inline;
	border-bottom: 1px solid transparent;
}


#block-menusecondolivello ul.menu > li > label:hover {
	text-decoration: none;
}

#block-menusecondolivello ul.menu > li > label {
	text-decoration: none;
	color: #606A79;
	font-weight: 500;
	font-size: 16px;
	padding: 21px 0;
	transition: all 0.3s ease-in-out;
	line-height: 60px;
	display: inline;
	border-bottom: 1px solid transparent;
}