/*
#279ed1 : Blue
#0056b3 : Blue Dark
#ffc107 : Yellow
#f1c01a : Yellow Gold
#e1b00e : Yellow Gold Dark
#d34327 : Red
*/



body { margin:0; padding:0; background:#f1f1f1; font-family:"Helvetica Neue",Helvetica,Arial,sans-serif; }
main { margin:20px auto 0; }
a { text-decoration:none; color:inherit; }
a:visited { color:inherit; }
.color-grey { color:#323232; }
.left { float:left; text-align:left; }
.right { float:right; text-align:right; }
.text-center { text-align:center !important; }

.font-lato { font-family:Lato , Roboto; }
/* HEADER */
#header .h-menu { position:relative; }
#header .menu a , #header .menu p , #header .menu ul , #header .menu li { text-align: center; }
#header .menu .primary:hover a p, #header .menu a p:hover { color:white; background:#279ed1; }
#header .menu a , #header .menu p { color: #444444; font-size: 13px; margin: 0; text-transform: uppercase; letter-spacing: 0px; cursor: pointer; }
#header .menu p { padding:0 10px; }
#header .menu .primary ul li { list-style:none; background:#fff; height:40px; line-height:40px; }
#header .menu .primary ul li:hover { color:white; background:#279ed1; }
#header .menu .primary ul li:hover a p { color:white; }
#header .menu .primary ul li ul { position: relative; top: -40px !important; left: -250px; }
#header .menu .primary:hover ul li { position: relative; display: block; width: 100%; list-style-type: none; }
.header-small .menu .primary ul { top:60px !important; }
#header .menu-sub .primary:hover , #header .menu p:hover a { background:#279ed1; color:white; }
#header .menu-sub a , #header .menu-sub p { color: #444444; font-size: 12px; margin: 0; text-transform: uppercase; letter-spacing: 0px; cursor: pointer; }
#header .menu-sub .primary ul { position: absolute; top: calc(10px + 40%); left: -75%; display: none; padding: 0; width: 250px; background: #ffffff; border-top: 3px solid #279ed1; border-bottom: 3px solid #279ed1; border-radius: 3px; z-index: 999; }
#header .menu-sub .primary ul li:hover { background: #279ed1; color: white; }
#header .menu-sub .primary ul li ul { position: relative; top: -40px; left: -250px; }
#header .menu-sub .primary:hover ul li { position: relative; display: block; padding: 0 10px; width: 100%; list-style-type: none; }

#header .menu a:hover p { background:#279ed1; color:white; }
#header a { text-decoration:none; }


@media screen and (max-width: 859px) {
	#header { margin: 0; width: 100%; background: white; z-index: 999;  box-shadow: 0 1px 5px 2px rgba(0,0,0,.1); }
	#header .logo { padding: 10px 10%; width: 80%; }
	#header .logo img { width: 100%; vertical-align: middle; }
	#header .menu { width: 100%; text-align: center; border-top: 4px solid #eaeeef; }
	#header .menu .primary { width: 100%; height: 40px; line-height: 40px; list-style: none; }
	#header .menu .primary ul { display: none; }
	#header .menu-sub { width: 100%; text-align: center; border-top: 4px solid #eaeeef; }
	#header .menu-sub .primary { width: 100%; height: 40px; line-height: 40px; list-style: none; }
}
@media screen and (min-width: 860px) {
	#header { position: relative; margin: 0; width: 100%; height: 80px; background: white; z-index: 999; box-shadow: 0 1px 5px 2px rgba(0,0,0,.1); }
	#header .logo { position: absolute; left: 5%; width: 10%; height: 50px; margin: 10px auto 20px; display: inline-block; line-height: 50px; }
	#header .logo img { width: 100%; vertical-align: middle; }
	#header .menu .primary:hover>ul , #header .menu .primary ul li:hover>ul , #header .menu .primary ul li ul li:hover>ul { display: block; }
	#header .menu-sub .primary:hover>ul , #header .menu-sub .primary ul li:hover>ul , #header .menu-sub .primary ul li ul li:hover>ul { display: block; }
	.header-small { height: 60px !important; }
	.header-small .logo { height: 40px !important; line-height: 40px !important; margin: 10px auto !important; }
	.header-small .logo img { height: 100% !important; width: auto !important; }
	.header-small .menu .primary { height: 60px !important; line-height: 60px !important; }
}
@media screen and (min-width: 860px) and (max-width: 1079px) {
	#header .menu { position: absolute; right: 5%; width: 65%; display: inline-block; margin: 0 auto; text-align: left; }
	#header .menu .primary { width: calc( 100% / 7 - 14px ); height: 40px; line-height: 40px; list-style: none; position: relative; display: inline-block; padding: 0 5px; }
	#header .menu p { padding: 0 5px; }
	#header .menu .primary ul { position: absolute; top: calc(8px + 40%); left: -110%; display: none; padding: 0; width: 250px; background: #ffffff; border-top: 3px solid #279ed1; border-bottom: 3px solid #279ed1; border-radius: 3px; z-index: 999; }
	#header .menu .primary ul p { padding: 0; }
	#header .menu-sub { position: absolute; top: 40px; right: 5%; width: 65%; height: 39px; border: 1px solid #eaeeef; border-bottom: none; display: inline-block; margin: 0 auto; text-align: center; }
	#header .menu-sub a , #header .menu-sub p { font-size: 1vw; }
	#header .menu-sub .primary { width: 19%; height: 39px; line-height: 39px; list-style: none; position: relative; display: inline-block; }
}
@media screen and (max-width: 1079px) {
	#header .menu-sub .primary ul li { list-style: none; background: #fff; height: 39px; line-height: 39px; }
}
@media screen and (min-width: 1080px) {
	#header .menu { position: absolute; right: 10%; width: 60%; display: inline-block; margin: 0 auto; text-align: right; }
	#header .menu .primary { width: 100px; height: 45px; line-height: 45px; list-style: none; position: relative; display: inline-block; }
	#header .menu .primary ul { position: absolute; top: calc(10px + 40%); left: -75%; display: none; padding: 0; width: 250px; background: #ffffff; border-top: 3px solid #279ed1; border-bottom: 3px solid #279ed1; border-radius: 3px; z-index: 999; }
	#header .menu-sub { position: absolute; top: 45px; right: 10%; width: calc(70% - 2px); height: 34px; border: 1px solid #eaeeef; border-bottom: none; display: inline-block; margin: 0 auto; text-align: center; }
	#header .menu-sub .primary { width: 19.6%; height: 34px; line-height: 34px; list-style: none; position: relative; display: inline-block; }
	#header .menu-sub .primary ul li { list-style: none; background: #fff; height: 34px; line-height: 34px; }
}

/*
** WRAPPER
*/
.window { background:white; border-radius:2px; border:1px solid #e8e8e8; box-shadow:0 1px 2px rgba(0,0,0,.1); }


#info .bio { font-family:Roboto; font-size:18px; }

#contatti .error { color:#f03232; }
#contatti span { color:red; }
#contatti input, #contatti textarea { border:2px solid #279ed1; }
#contatti .btn-contact { color:white; font-weight:bold; background:#279ed1; border:2px solid #1f96c9; }
#contatti .btn-contact:hover { color:whitesmoke; border-color:#2082ac; text-shadow:0 3px 2px #0078aa; box-shadow:inset 0 0 10px 5px #2492c2; }

.breadcrumb {
	background: white;
	border-radius: 2px;
	border: 1px solid #e8e8e8;
	box-shadow: 0 1px 2px rgba(0,0,0,.1);
}

article {
	display: block;
	margin: 0 0 20px;
	padding: 15px 15px;
	background: white;
	border-radius: 2px;
	border: 1px solid #e8e8e8;
	box-shadow: 0 1px 2px rgba(0,0,0,.1);
}
article img.cover { max-width:100%; height:auto; }
article top { margin: 0 0 20px; }
article center { margin: 10px auto 20px; width: 90%; }
article center img { max-width: calc(80% - 42px); max-height: 500px; margin: 10px auto; padding: 10px; border: 1px solid #dedede; }
article center  p { text-align: left; }
.article-bottom { display:block; margin:0 auto; width:90%; font-size:16px; }
.article-open { margin: 20px 0 10px auto; font-size: 110%; text-align: right; color: #279ed1; font-weight: bold; }
.article-tag { margin:10px 0; }
.article-links span { margin:0 3px; padding:2px 4px; font-size:12px; color:white; background:#279ed1; border-radius:6px; }
.article-section span { color:white; background:#f1c01a; }
.article-links a:hover { text-decoration:none; }
.article-links span:hover { background:#0056b3; }
.article-section span:hover { color:white; background:#e1b00e; }
article .art-body { padding:0 30px; }
article .art-social { margin:20px 0; }


#breadcrumb {}
#alberop  a { color: #279ed1; }
#alberop  a:hover { text-decoration: underline; }












#coll.scroll { position: fixed; top: 10px; left: 10px; }
#colr.scroll { position: fixed; top: 10px; right: 10px; opacity: 1; }
#coll , #colc , #colr {
	font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
	letter-spacing: .3px;
}
#coll div , #colc window , #colr div {
	display: block;
	margin: 0 0 10px;
	padding: 15px 15px;
	background: white;
	border-radius: 2px;
	border: 1px solid #e8e8e8;
	box-shadow: 0 1px 2px rgba(0,0,0,.1)
}
#coll div hr , #colr div hr { margin: 5px 5%; width: 90%; height: 2px; background: #dedede; border: none; }
#colc window  { margin: 0 0 20px; }
#colc window.primary { font-size: 30px; text-align: center; }
#colc window#ads img { max-width: 100%; text-align: center; }

#colc h1 , #colc h2 , #colc h3 {
	margin: 0;
	font-size: 30px;
	font-weight: 700;
	line-height: 40px;
	text-align: left;
}
#colc h2.titolo { text-shadow: -2px 2px 1px #dcdcdc , 2px 2px 1px #dcdcdc; }
#colc h2 { text-align: center; }
#colc h3 { font-size: 20px; }
#colc p { margin: 0; font-size: 18px; color: #1e1e1e; text-align: center; }
#colc top_info { font-size: 16px; }

.twitter-share-button { margin-left: 10px; width: 28px; height: 28px; }
.twitter-share-button img { width: 28px; height: 28px; }
.fb-share-button { float:left; }

#button_pn { margin: 0 0 50px; width: 100%; height: 30px; }
#button_pn span , #button_pn a {
	display: inline-block;
	margin: 0 0 50px;
	padding: 15px 15px;
	width: 10%;
	height: 25px;
	line-height: 25px;
	background: white;
	border-radius: 2px;
	border: 1px solid #e8e8e8;
	box-shadow: 0 1px 2px rgba(0,0,0,.1)
}
#button_pn a:hover {
	background: white;
	box-shadow: inset 0 0 10px 0px #279ed1;
}

/* FINESTRA POPUP */
popup-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #0000008c;
	-webkit-animation: key_opacity .8s;
	animation: key_opacity .8s;
	z-index: 999;
}
popup-content {
	position: fixed;
	top: 0;
	left: 0;
	display: block;
	margin: 60px calc( 50% - 300px );
	height: calc( 60% - 120px );
	max-height: calc( 80% - 120px );
	width: 600px;
	background: #ffffff;
	color: #212121;
	font-family: 'Roboto', 'Noto', sans-serif;
	-webkit-font-smoothing: antialiased;
	white-space: nowrap;
	text-overflow: ellipsis;
	font-size: 16px;
	font-weight: 400;
	line-height: 28px;
	border-radius: 2px;
	box-shadow: 0 16px 24px 2px rgba(0, 0, 0, 0.14), 0 6px 30px 5px rgba(0, 0, 0, 0.12), 0 8px 10px -5px rgba(0, 0, 0, 0.4);
	/*
	box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2);
	*/
	outline: none;
	overflow: hidden;
}
popup-content .area-top {
	display: block;
	margin: 0;
	padding: calc(40px - 21px) 24px calc(23px - 7px);
	font-size: 20px;
	font-weight: 500;
	color: rgba(0,0,0,.87);
	border-bottom: 1px solid rgba(0,0,0,.12);
}
popup-content .area-center {
	position: relative;
	display: block;
	margin: 0;
	padding: calc(40px - 21px) 24px calc(23px - 7px);
	font-size: 16px;
	font-weight: 400;
	color: rgba(0,0,0,.87);
}
popup-content .area-bottom {
	position: absolute;
	bottom: 0;
	right: 0;
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	margin: 0;
	padding: 8px 16px;
	width: calc(100% - 32px);
	font-size: 20px;
	font-weight: 500;
	color: rgba(0,0,0,.87);
	border-top: 1px solid rgba(0,0,0,.12);
}
popup-content .area-bottom button {
	display: inherit;
	margin: 0;
	padding: calc(24px - 15px) 8px calc(12px - 5px);
	min-width: 36px;
	border-radius: 4px;
	text-align: center;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.018em;
	line-height: 20px;
	text-transform: uppercase;
	color: #0070cc;
	border: none;
	background: none;
	cursor: pointer;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	-webkit-tap-highlight-color: transparent;
}
popup-content .area-bottom button.red { color: #eb503c; }
popup-content .area-bottom button:hover { color: white; background: #0070cc; }
popup-content .area-bottom button:active { color: white; background: #279ed1; }
popup-content .area-bottom button.red:hover { color: white; background: #eb503c; }
popup-content .area-bottom button.red:active { color: white; background: #ff6450; }


/* FINESTRA DI DIALOGO */
div[class^='dialogs'] , div[class*=' dialogs'] {
	position: fixed;
	right: 0;
	bottom: 0;
	display: block;
	margin: 24px 40px;
	box-sizing: border-box;
	max-height: 280px;
	max-width: 400px;
	background: #ffffff;
	box-shadow: 0 16px 24px 2px rgba(0, 0, 0, 0.14), 0 6px 30px 5px rgba(0, 0, 0, 0.12), 0 8px 10px -5px rgba(0, 0, 0, 0.4);
	color: #212121;
	font-family: 'Roboto', 'Noto', sans-serif;
	-webkit-font-smoothing: antialiased;
	font-size: 14px;
	font-weight: 400;
	line-height: 20px;
	overflow: hidden;
	z-index: 998;
}
div[class^='dialogs'] .dialog-content , div[class*=' dialogs'] .dialog-content {
	margin: 0;
	padding: 25px;
	max-width: 350px;
	background: #fff;
}
div[class^='dialogs'] button , div[class*=' dialogs'] button {
	margin: 0 auto;
	padding: 0;
	height: 40px;
	width: 40px;
	border: none;
	background: none;
	overflow: hidden;
	cursor: pointer;
}
div[class^='dialogs'] button:hover , div[class*=' dialogs'] button:hover { background: #ffe664; border-radius: 5px; }
div[class^='dialogs'] button:active , div[class*=' dialogs'] button:active { 	background: #ffdc00; }
div[class^='dialogs'] .area-top , div[class*=' dialogs'] .area-top {
	color: #111;
	font-size: 1.0rem;
	font-weight: 400;
	line-height: 1.5rem;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-ms-flex-direction: row;
	-webkit-flex-direction: row;
	flex-direction: row;
	-ms-flex-align: start;
	-webkit-align-items: flex-start;
	align-items: flex-start;
}
div[class^='dialogs'] .area-top p , div[class*=' dialogs'] .area-top p { margin: 0; width: calc( 100% - 24px ); }
div[class^='dialogs'] .area-top button , div[class*=' dialogs'] .area-top button { margin: 0 auto; width: 24px; height: 24px; }
div[class^='dialogs'] .area-top button svg , div[class*=' dialogs'] .area-top button svg { pointer-events: none; display: block; width: 24px; height: 24px; }
div[class^='dialogs'] .area-bottom , div[class^=' dialogs'] .area-bottom {
	width: 100%;
}
div[class^='dialogs'] .area-bottom  svg , div[class^=' dialogs'] .area-bottom svg { pointer-events: none; display: block; width: 100%; height: 100%; }
div[class^='dialogs'] .area-bottom  span , div[class^=' dialogs'] .area-bottom span { font-size: 12px; }
div[class^='dialogs'] .area-bottom  .option , div[class^=' dialogs'] .area-bottom .option {
	position: relative;
	display: inline-block;
	width: 19%;
	padding-bottom: 16px;
	text-align: center;
}
div[class^='dialogs'] .area-bottom  .option:not(:last-child) ,
div[class^=' dialogs'] .area-bottom .option:not(:last-child) {
	margin-right: 5px;
	width: calc( 19% - 5px );
}

/* Notifica */
#notifica {
	position: absolute;
	top: 20px;
	right: 10px;
	padding: 26px 26px 22px 13px;
	background: #fff;
	border: 1px solid #ccc;
	border-color: rgba(0,0,0,.2);
	-webkit-border-radius: 2px;
	border-radius: 2px;
	color: #000;
	outline: none;
	z-index: 991;
	overflow: hidden;
	-webkit-user-select: text;
	-webkit-animation: key_opacity .8s, key_lamp 1.6s infinite;
	animation: key_opacity .8s, key_lamp 1.6s infinite;
	/* -webkit-box-shadow: 0 2px 10px rgba(0,0,0,.2); */
	/* box-shadow: 0 2px 10px rgba(0,0,0,.2); */
}

/* key_opacity */
@-webkit-keyframes key_opacity { 0% { opacity: 0; } 100% { opacity: 1; } }
@keyframes key_opacity { 0% { opacity: 0; } 100% { opacity: 1; } }

/* key_lamp */
@-webkit-keyframes key_lamp {
	0% {
		-webkit-box-shadow: 0 2px 10px 0 rgba(0,0,0,.2);
		box-shadow: 0 2px 10px 0 rgba(0,0,0,.2);
	}
	50% {
		-webkit-box-shadow: 0 2px 10px 5px rgba(0,0,0,.2);
		box-shadow: 0 2px 10px 5px rgba(0,0,0,.2);
	}
	100% {
		-webkit-box-shadow: 0 2px 10px 0 rgba(0,0,0,.2);
		box-shadow: 0 2px 10px 0 rgba(0,0,0,.2);
	}
}
@keyframes key_lamp {
	0% {
		-webkit-box-shadow: 0 2px 10px 0 rgba(0,0,0,.2);
		box-shadow: 0 2px 10px 0 rgba(0,0,0,.2);
	}
	50% {
		-webkit-box-shadow: 0 2px 10px 5px rgba(0,0,0,.2);
		box-shadow: 0 2px 10px 5px rgba(0,0,0,.2);
	}
	100% {
		-webkit-box-shadow: 0 2px 10px 0 rgba(0,0,0,.2);
		box-shadow: 0 2px 10px 0 rgba(0,0,0,.2);
	}
}

@media screen and (max-width: 859px) {
	#colr { display: none }
	#colc { width: 100%; }
	#wrapper { margin: 20px 10px 80px; width: calc(100% - 20px); }
	#button_pn span , #button_pn a { width: 20%; }
}
@media screen and (min-width: 860px) {
	#colr { position: absolute; top: 0; right: 0; width: 250px; opacity: 0; transition: opacity 0.8s; }
	#wrapper { position: relative; margin: 20px 10px 80px; width: calc(100% - 20px); }
}
@media screen and (min-width: 860px) and (max-width: 1079px) {
	#colc { position: absolute; top: 0; left: 130px; width: calc(100% - 260px); }
	#button_pn span , #button_pn a { width: 15%; }
}
@media screen and (max-width: 1079px) {
	#coll { display: none }
}
@media screen and (min-width: 1080px) {
	#coll { position: fixed; top: 100px; left: -250px; width: 250px; font-family: "Roboto"; transition: top 1s, left 0.8s; }
	#coll h3 { margin: 0 0 10px; text-align: center; text-transform: uppercase; font-weight: 500; }
	#coll div.category p { margin: 0; padding: 0 0 0 10px; height: 30px; line-height: 30px; text-transform: capitalize; }
	#coll div.category p:hover { background: #279ed1; color: white; }
	#coll div.category .top { list-style: none; }
	#coll div.category .top ul { margin: 0; padding: 0 0 0 10px; }
	#coll div.category .top ul li { list-style: none; }
	#colc { margin-left: 260px; width: calc(100% - 520px); }
}


/* FOR OFF */
#feedback_box , #notifica , 
#colr { display: none !important; }

/* HAMBURGER MENU */
.navbar-toggle {
	margin: 5px 10px 5px calc(100% - 50px);
	padding: 13px 9px;
	background: none;
	border: none;
	cursor: pointer;
	outline: none;
}
.navbar-toggle .icon-bar {
	display: block;
	width: 22px;
	height: 2px;
	border-radius: 1px;
	background: black;
}
.navbar-toggle .icon-bar + .icon-bar {
	margin-top: 4px;
}
.collapse { display: none; }
.collapse.in { display: block; }
.collapsing {
	position: relative;
	height: 0;
	overflow: hidden;
	-webkit-transition: height 0.35s ease;
	transition: height 0.35s ease;
}
#header_menu { margin: 0; padding: 0 0 20px; }


.hidden-xs, .hidden-sm, .hidden-md, .hidden-lg { display:none!important; }
@media(max-width:767px) { /* only xs */
	.visible-xs { display:block!important; }
}
@media(min-width:768px) and (max-width:991px) { /* sm */
	.visible-sm { display:block!important; }
}
@media(max-width:991px) { /* xs sm */
	
}
@media(min-width:768px) { /* sm -> lg */
	
}
@media(min-width:992px) and (max-width:1199px) { /* md */
	.visible-md { display:block!important; }
}
@media(min-width:992px) { /* md lg */
	
}
@media(min-width:1200px) { /* lg */
	.visible-lg { display:block!important; }
}