/*!
 *
 * File specifico per sito 
 *
 * Copyright 2014 SpoonDesign di Cattorini Davide
 * Tutti i diritti riservati - All rights reserved
 * http://www.spoondesign.it - info@spoondesign.it
 *
 */

html {
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
	font-size: 100%;
	background: #FFF;
}
body, td, li  {
	font: normal 1rem/1.5rem Roboto, Helvetica, Arial, Tahoma, Verdana, sans-serif;
	color: #444444;
}
@font-face {
	font-family: RobotoSlab;
	src: url("../fonts/roboto_regular.woff");
}
@font-face {
	font-family: RobotoSlab;
	font-weight: bold;
	src: url("../fonts/roboto_bold.woff");
}

h1, h2 {
	font-size: 1.3rem;
	line-height: 1.8rem;
	text-align: left;
}
h3, h4 {
	font-size: 1rem;
	line-height: 1.5rem;
}
sub, sup {
	line-height: inherit;
}

a {
	color: #444444;
	font-weight: bold;
	background: none;
	text-decoration: underline;
}
a:hover, a:focus, a:active {
	color: #444444;
	text-decoration: none;
}

/* CONTENITORI */

.sdgrid {
	width: 93%;
	margin: 2% auto;
}
.sdfull {
	width: 100%;
}

/* LOGO */

.logo img {
	max-width: 300px;
}

/* BUTTONS */

.button, .btn {
	padding: 1rem;
	border: 0;
	text-transform: uppercase;
	color: #FFF;
	text-decoration: none;
	background: #F66E21 !important;
	text-align: center;
	display: inline-block;
	white-space: normal;
	word-wrap: break-word;
	border-radius: 5px;
	transition: background 0.3s ease, color 0.3s ease;
	margin: 0.3rem;
	max-width: 100%;
	box-sizing: border-box;
	font-weight: normal;
	font-size: 1rem !important;
}
.button:hover, .btn:hover,
.button:active, .btn:active,
.button:focus, .btn:focus {
	background: #e67f33 !important;
	color: #FFF;
}

.button_disabled {
	background: #999 !important;;
	opacity: 0.5;
	pointer-events: none;
}

/* CONTENT */

.content {
	text-align: justify;
}
.content .tags_page h1, .content .page-header h1, .content h1, .content h2 {
	text-align: center;
	font-weight: bold;
	color: #444444;
}

/* IMMAGINI */

.image-padding {
	margin: 0.5rem;
	box-sizing: border-box;
}

/* SOCIAL MENU */

#menu .menu_social {
	margin: 0 0.3rem !important;
	padding: 0 !important;
}
#menu .menu_social_facebook {
	margin-left: 2.3rem !important;
}

/* TAGS */

.tags_page .category li:before {
	display: none;
}
.tags_page .category {
	margin-top: 2rem;
}
.tags_page .tags {
	margin-top: 0.8rem;
}

.content .tags a {
	text-decoration: none;
	font-size: 0.9rem;
	padding: 0.2rem 0.3rem;
}

/* INSIDE BANNER */

.insidebanner {
	height: 250px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	background-position: center center;
	background-repeat: none;
	background-size: cover;
}
.insidebanner h2 {
	line-height: 3.5rem;
	text-align: center;
	font-size: 3rem;
	margin: 0;
	padding: 0;
}
.insidebanner h3 {
	line-height: 2.5rem;
	text-align: center;
	font-size: 1.9rem;
	margin: 0;
	padding: 0;
}

.banner_home .insidebanner {
	height: 325px;
}

/* NEWS */

.blog-items .blog-item {
	border-radius: 5px;
	padding: 1.2% !important;
	border: 2px solid #e1e1e1;
	border-bottom: 4px solid #e1e1e1;
}
.blog-items .blog-item .item-title, .blog-items .blog-item .page-header {
	font-size: 1.2rem;
	line-height: 1.6rem;
	text-transform: uppercase;
	text-align: left;
}
.blog-items .blog-item .article-info {
	font-size: 0.9rem;
}

.item-content p.readmore {
	text-align: center !important;
}
.item-content p.readmore a {
	padding: 1rem;
	text-transform: uppercase;
	color: #FFF;
	text-decoration: none;
	background: #132033;
	text-shadow: none !important;    
	font: bold 1rem/1.5rem RobotoSlab, Helvetica, Arial, Tahoma, Verdana, sans-serif !important;
}

.blog-items .blog-item.featured-1 {
	border: 2px solid #F66E21;
	border-bottom: 4px solid #F66E21;
	background: rgba(241, 146, 69, 0.3);
	color: #000;
}
.blog-items .blog-item.featured-1 h2 a {
	color: #000;
}

.blog-more {
	text-align: center;
}

/* SECTIONS */

.sections {
	padding: 1rem 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.section {
	margin: 1rem;
	padding: 1.2rem 0.8rem;
	border-radius: 10px;
	box-shadow: rgb(0 0 0 / 15%) 0px 10px 51px 3px;
	text-align: center;
}
.section i {
	font-size: 2.7rem;
	margin-bottom: 0.5rem;
}
.section h3 {
	font-size: 1.5rem;
	font-weight: normal;
}
.section .description {
	font-style: italic;
	padding: 5% 15%;
}
.section .more {
	padding: 1rem 0;
}
.section .more a {
	padding: 1rem;
	border: 2px solid #FFF;
	text-transform: uppercase;
	color: #FFF;
	text-decoration: none;
	background: #F66E21;
}
.section .more a:hover {
	background: #F66E21;
	color: #FFF;
}

/* TABS */

#tabs {
	padding: 2rem 0;
}
#tabs .tab_buttons {
	margin: 0 auto;
}
#tabs .tab {
	text-align: center;
	margin-bottom: 1.5rem;
}
#tabs button {
	margin: 0.5rem;
	padding: 1rem;
	font-size: 1rem;
	border: 1px solid #e2e2e2;
	background-color: #f6f6f6;
	text-transform: uppercase;
	font-weight: bold
}
#tabs button.active {
	background: #F66E21;
	color: #FFF;
	font-weight: bold
}
#tabs .tabcontent img {
	border-radius: 10px;
}

/* URLS */

#sdlinks_tabs .sdlinks_tabs_buttons button {
	padding: 1rem !important;
	font-size: 1rem !important;
}
#sdlinks_tabs .sdlinks_tab_url .sdlinks_url {
	padding: 1.2rem !important;
}

/* BOXES */

.boxes .box {
	display: flex;
	text-align: left;
}
.boxes .box div {
	margin: 0.5%;
	padding: 2%;
	min-height: 10rem;
}
.boxes .box h3 {
	margin: 0 0 1rem 0;
	padding: 0;
}
.boxes .box_text div.color {
	background: #E55A19;
	color: #FFF;
}
.boxes .box_history div.color {
	padding: 3% 6.5%;
	background: #E8E8E8;
	color: #444444;
}
.boxes .box_history div.color .history_inside {
	width: 90%;
	min-height: auto;
	margin: 0;
	padding: 1rem 0 2rem 14%;
	border-left: 1px solid #F66E21;
	position: relative;
}
.boxes .box_history div.color .history_inside:last-child {
	border-left: 0;
}
.boxes .box_history div.color h3, .boxes .box_history div.color h3 a {
	margin-top: -0.3rem;
	font-size: 1.2rem;
	font-weight: normal;
	line-height: 1.5rem;
	color: #444444;
}
.boxes .box_history div.color .history_title {
	font-weight: bold;
	padding: 0 0 1.3rem 0 !important;
	margin-left: -1.9rem;
}
.boxes .box_history div.color .year {
	font-weight: bold;
	color: #F66E21;
}
.boxes .box_history div.color .text {
	font-size: 0.9rem;
}
.boxes .box_history div.color span {
	position: absolute;
	top: -0.1rem;
	left: -1.9rem;
	font-size: 1.5rem;
	color: #F66E21;
}
.boxes .box div.image {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center
}
.boxes .box div.image:hover {
	opacity: 0.8;
}
.boxes .more {
	padding: 2rem 0 1rem 0;
	text-align: center;
}
.boxes a {
	color: #FFF;
}

.boxes .more a {
	padding: 1rem;
	border: 0;
	text-transform: uppercase;
	color: #FFF;
	text-decoration: none;
	background: #333333 !important;
	text-align: center;
	display: inline-block;
	white-space: normal;
	word-wrap: break-word;
	border-radius: 5px;
	transition: background 0.3s ease, color 0.3s ease;
	margin: 0.3rem;
	max-width: 100%;
	box-sizing: border-box;
	font-weight: normal;
}
.boxes .more a:hover {
	background: #111111 !important;
}
.boxes .more a.disabled {
	opacity: 0.5;
}

/* LINKS */

.links {
	min-height: 5rem;
	display: flex;
	flex-direction: row;
	justify-content: center
}
.links .link {
	padding: 0 1rem;
	font-size: 3.5rem;
}

/* CONSIGLIO */

.consiglio {
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
}
.consiglio .role {
	text-align: center;
}
.consiglio .role h4 {
	font-size: 1.3rem;
}

/* JOIN */

.join {
	margin-top: 2rem;
	padding: 4rem 0;
	background: #E55A19;
	color: #FFF;
	text-align: center;
}
.join h2 {
	text-align: center;
}
.join .link {
	margin-top: 2rem;
}
.join a.button {
	padding: 1rem;
	text-transform: uppercase;
	color: #FFF;
	text-decoration: none;
	background: #333333 !important;
}
.join a:hover,
.join a:active,
.join a:focus {
	background: #111111 !important;
}

/* YOUTUBE */

.sdshowyoutube_container, .sdshowvimeo_container {
	width: 80%;
	max-width: 900px;
	margin: 1rem auto 3rem auto;
	padding: 10px;
	border: 1px solid #d8d8d8;
}

/* ALERTS */

.alerts {
	margin-top: 0;
}
.alerts .alert-message .sdgrid {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}

.alerts .alert-message {
	padding: 0.1px 0;
	font-weight: bold;
	font-size: 1.1rem;
    border-bottom: 7px solid #d8d8d8;
}
.alerts .alert-message-red {
	color: #fff;
    background-color: #dc3545;
}
.alerts .alert-message-yellow {
	color: #000;
    background-color: #FFCC00;
}
.alerts .alert-message-green {
	color: #fff;
    background-color: #28a745;
}
.alerts .alert-message-blue {
	color: #fff;
    background-color: #0059B3;
}
.alerts .alert-message-orange {
	color: #F67227;
    background-color: #FBDEC7;
	color: #FFF;
    background-color: #E55A19;
}

.alerts .button {
	padding-top: 7px;
	padding-bottom: 7px;
	font-size: 0.9rem !important;
}
.alerts .alert-message-red .button {
	color: #fff !important;
    background-color: #333 !important;
    border-color: #333 !important;
}
.alerts .alert-message-yellow .button {
	color: #fff !important;
    background-color: #333 !important;
    border-color: #333 !important;
}
.alerts .alert-message-green .button {
	color: #fff !important;
    background-color: #333 !important;
    border-color: #333 !important;
}
.alerts .alert-message-blue .button {
	color: #fff !important;
    background-color: #007bff !important;
    border-color: #007bff !important;
}
.alerts .alert-message-orange .button {
	color: #fff !important;
    background-color: #333 !important;
    border-color: #333 !important;
}

/* FOOTER */

.footer {
	border-top: 12px solid #d8d8d8;
	padding: 1rem 0;
}
.footer .sdgrid {
	display: flex;
}
.footer h2 {
	color: #F66E21;
	text-transform: uppercase;
}

.footer ul {
	margin: 0;
	padding: 0;
}
.footer li {
	list-style: none;
	position: relative;
	margin: 0;
	padding: 0 0 0 17px;
}
.footer li:before {
	content: "\f054";
	font-family: FontAwesome;
	font-size: 14px;
	position: absolute;
	top: 1px;
	left: 0;
}

/* COPYRIGHT */

.copyright {
	padding: 2rem 0 1rem 0;
	border-top: 1px solid #d8d8d8;
	text-align: center;
	font-size: 0.9rem;
}
.copyright .mod-menu {
	width: 100%;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.copyright a, .copyright a:hover {
	background: none !important;
}

/* DEVICES */

@media (min-width: 1300px) {
	.sdgrid {
		width: 95%;
		margin: 1% auto;
		max-width: 1500px;
	}
	
	header {
		height: 75px;
		display: flex;
		flex-direction: row;
		align-items: center;
		background: #FFF;
		justify-content: space-between;
	}
	.logo img {
		max-width: 250px;
	}
	.menu {
		padding-right: 1rem;
	}

	.dj-up a {
		border: 0 !important;
		font-size: 0.9rem !important;
		padding-right: 15px !important;
		padding-left: 15px !important;
	}
	.dj-up .sodalibus_asciscendis {
		background: #E55A19 !important;
		color: #FFF !important;
		border-radius: 5px;
	}
	.dj-up .sodalibus_asciscendis:hover,
	.dj-up .sodalibus_asciscendis:active,
	.dj-up .sodalibus_asciscendis:focus {
		background: #e67f33 !important;
	}

	.dj-megamenu .subtitle {
		font-size: 14px !important;
	}

	.image-title {
		display: none !important;
		visibility: hidden !important;
	}
	#menu .menu_social {
		font-size: 2rem !important;
	}

	.content .tags_page h1, .content .page-header h1, .content h1, .content h2 {
		padding: 1.5rem 0;
		font-size: 2.7rem;
		line-height: 3rem;
	}

	.join h2 {
		font-size: 2.5rem;
		line-height: 4rem;
	}

	#tabs .tab_buttons {
		max-width: 70%;
	}
	#tabs .tabcontent .inside {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	#tabs .tabcontent .inside div {
		min-width: 55%;
	}
	#tabs .tabcontent .inside div:first-child {
		min-width: 40%;
		padding-right: 5%;
	}

	.footer .sdgrid {
		display: flex;
		flex-direction: row;
		justify-content: space-around;
	}
	.footer .sdgrid .inside {
		width: 28%;
	}

	.copyright .mod-menu li {
		padding: 0.3rem 1rem;
	}
}

@media (max-width: 1199px) {
	.logo {
		width: 100%;
		text-align: center;
	}
	.menu {
		width: 100%;
		text-align: right;
	}

	.dj-mobile-open-btn:focus, .dj-mobile-open-btn, .dj-mobile-open-btn:hover,
	.dj-mobile-open-btn:focus, .dj-mobile-open-btn:hover, .dj-mobile-open-btn:focus {
		margin: 3px 0 !important;
		font-size: 2rem !important;
		outline: none !important;
		background: #FFF !important;
		color: #444444 !important;
	}
	.dj-mobile-open-btn, .dj-mobile-open-icon:before, .dj-megamenu-wrapper * {
		margin: 0 !important;
		padding: 0 !important;
		height: auto !important;
		font-size: 2rem !important;
		background: none !important;
		outline: none !important;
		color: #444444 !important;
	}

	.content .tags_page h1, .content .page-header h1, .content h1, .content h2 {
		padding: 1.5rem 0;
		font-size: 2rem;
		line-height: 2.3rem;
	}

	.join h2 {
		font-size: 2rem;
		line-height: 3rem;
	}

	.footer .sdgrid {
		display: flex;
		flex-direction: column;
	}
	.footer .sdgrid .inside {
		width: 100%;
	}
	
	.copyright .mod-menu li {
		padding: 0.3rem 0.5rem;
		text-align: center;
	}
}

@media (min-width: 501px) {
	.section {
		flex: 0 1 40%;
	}

	.boxes .box div {
		width: 43%;
		padding: 4%;
	}
	.boxes .box h3 {
		font-size: 2.5rem;
		line-height: 2.8rem;
	}
}

@media (max-width: 900px) {
	.insidebanner {
		height: 120px;
	}
	.insidebanner h2 {
		line-height: 2.5rem;
		font-size: 2rem;
	}
	.insidebanner h3 {
		line-height: 1.5rem;
		font-size: 1.2rem;
	}

	.banner_home .insidebanner {
		height: 170px;
	}

	.content .tags_page h1, .content .page-header h1, .content h1, .content h2 {
		padding: 1.2rem 0;
		font-size: 1.8rem;
		line-height: 2rem;
	}
	.image-padding {
		max-width: 95%;
	}
	.boxes .more a {
		display: block;
	}

	.button {
		display: block;
		width: 100%;
		margin: 0.5rem 0;
	}

	.alerts .alert-message .sdgrid {
		flex-direction: column;
		justify-content: center;
		align-items: center;
		text-align: center;
	}
}

@media (min-width: 900px) {
	.blog-items.columns-3 .blog-item {
		width: 32%;
	}
}

@media (max-width: 500px) {
	.blog-items {
		flex-direction: column;
		justify-content: space-around;
	}
	.blog-items .blog-item {
		width: 100% !important;
		margin: 3% 0 !important;
		padding: 4% !important;
	}

	.section {
		flex: 0 1 100%;
	}

	.boxes .box {
		flex-direction: column;
	}
	.boxes .box div {
		width: 85%;
		padding: 6.5%;
	}
	.boxes .box_history div.color .history_inside {
		width: 80%;
		margin: 0 0 0 5%;
		padding: 5% 5% 5% 12%;
	}	
	.boxes .box_history div.image {
		background-position: center top
	}
	.boxes .order1 {
		order: 1;
		height: 100px;
	}
	.boxes .order2 {
		order: 2;
	}
	.boxes .box h3 {
		font-size: 2rem;
		line-height: 2.3rem;
	}
}