/** Main elements **/

.site-footer,
.site-header{
	padding: 30px 0;
	position: relative;
	z-index: 100;
}

@media screen and (min-width: 768px){
	.site-header.hide-head{
		position: absolute !important;
		top: -102% !important;
	}
}
.footer-top{
	position: relative;
	padding-top: 60px;
	padding-bottom: 30px;
}

/* Header */

.capitalize{ 
	text-transform: capitalize;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}
.bwa-path{max-width: 100%;}

.down-arrow{
	text-indent: -9999px;
	position: relative;
	height: 32px;
	width: 32px;
	display: inline-block;
	border-left: 2px solid #fff;
	border-bottom: 2px solid #fff;
	-moz-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
	overflow: hidden;
	-webkit-transition: all 300ms ease-in-out;
	-moz-transition: all 300ms ease-in-out;
	-ms-transition: all 300ms ease-in-out;
	-o-transition: all 300ms ease-in-out;
	transition: all 300ms ease-in-out;
}
.down-arrow:hover{
	-moz-transform: translateY(15px) rotate(-45deg);
	-webkit-transform: translateY(15px) rotate(-45deg);
	-o-transform: translateY(15px) rotate(-45deg);
	-ms-transform: translateY(15px) rotate(-45deg);
	transform: translateY(15px) rotate(-45deg);
}
.down-arrow.black{border-color: #fff;}

/** Nav **/

.main-navigation{
	position: relative;
	text-align: right;
	width: 100%;
	padding: 0 15px;
	/**height: 40px;**/
	-webkit-transition: all 150ms ease-in-out;
	-moz-transition: all 150ms ease-in-out;
	-ms-transition: all 150ms ease-in-out;
	-o-transition: all 150ms ease-in-out;
	transition: all 150ms ease-in-out;
}

.menu-toggle{
	margin-top: 20px;
	background-color: #fff;
	color: #000;
	font-weight: 700;
	text-transform: uppercase;
}
.menu-toggle > i{
	margin-left: 5px;
}
.nav-menu a{color: #000;}
.nav-menu a:hover{text-decoration: none;}
.main-navigation ul.nav-menu,
.main-navigation .nav-menu > ul{
	padding: 0;
	list-style-type: none;
	margin-bottom: 0;
	float: right;
}

.main-navigation ul.nav-menu > li > a,
.main-navigation .nav-menu > ul > li > a{
	padding: 0 10px;
	display: block;
	font-size: 16px;
	line-height: 40px;
}
.main-navigation ul.nav-menu > li.bordered > a,
.main-navigation .nav-menu > ul > li.bordered > a{
	-webkit-border-radius: 4px;
	border-radius: 4px;
	padding: 0 15px;
}
.main-navigation ul.nav-menu > li.menu-item-has-children > a:after,
.main-navigation .nav-menu > ul > li.menu-item-has-children > a:after{
	content: "";
	margin-left: 5px;
	font-family: 'FontAwesome';
	font-weight: normal;
} 

.nav-menu li{ position: relative; }
.nav-menu ul{
	list-style-type: none;
	padding: 0;
}
.nav-menu .sub-menu,
.nav-menu .children {
	padding: 0px;
	background-color: #fff;
	position: absolute;
	left: 50%;
	margin-left: -110px;
	z-index: 99999;
	height: 0px;
	width: 220px;
	overflow: hidden;
	text-align: left;
	opacity: 0;
	-webkit-box-shadow: 0 0 3px 0 rgba(0,0,0,0.2);
	box-shadow: 0 0 3px 0 rgba(0,0,0,0.2);
	-webkit-transition: all 150ms ease-in-out;
	-moz-transition: all 300ms ease-in-out;
	-ms-transition: all 300ms ease-in-out;
	-o-transition: all 300ms ease-in-out;
	transition: all 300ms ease-in-out;
	-moz-transform: translateX(0px) translateY(100%);
	-webkit-transform: translateX(0px) translateY(100%);
	-o-transform: translateX(0px) translateY(100%);
	-ms-transform: translateX(0px) translateY(100%);
	transform: translateX(0px) translateY(100%);
}

.layout-side .nav-menu .sub-menu,
.layout-side .nav-menu .children{
	-moz-transform: translateX(0px) translateY(0);
	-webkit-transform: translateX(0px) translateY(0);
	-o-transform: translateX(0px) translateY(0);
	-ms-transform: translateX(0px) translateY(0);
	transform: translateX(0px) translateY(0);
	left: 0;
	top: 0;
	margin-left: 0px;
	width: 100%;
}

.nav-menu .sub-menu ul,
.nav-menu .children ul {
	border-left: 0;
	left: 100%;
	top: 16px;
}

ul.nav-menu ul a,
.nav-menu ul ul a {
	margin: 0;
	width: 100%;
	font-size: 13px;
	padding: 12px 18px;
	display: block;
}

ul.nav-menu ul .current-menu-item > a,
.nav-menu ul ul .current-menu-item > a,
ul.nav-menu ul a:hover,
.nav-menu ul ul a:hover{
	background-color: #ededed;
}

.nav-menu li a .arw-lft{ float: right; }

ul.nav-menu li:hover > ul,
.nav-menu ul li:hover > ul,
ul.nav-menu .focus > ul,
.nav-menu .focus > ul {
	clip: inherit;
	overflow: inherit;
	height: inherit;
	/*width: inherit;*/
	opacity: 1;
	-moz-transform: translateX(0px) translateY(0px);
	-webkit-transform: translateX(0px) translateY(0px);
	-o-transform: translateX(0px) translateY(0px);
	-ms-transform: translateX(0px) translateY(0px);
	transform: translateX(0px) translateY(0px);
}

ul.nav-menu .sub-menu *,
.nav-menu .sub-menu *{
	color: #777 !important;
}

.main-navigation .searchform-top{
	position: relative;
	float: right;
}
.centered_block .main-navigation .searchform-top{
	position: absolute;
	right: 15px;
	top: 0;
}
.main-navigation .searchform-top .s-top{
	width: 0;
	opacity: 0;
	position: absolute;
	top: 0;
	right: 0;
	border-width: 2px;
	-webkit-transition: all 350ms ease-in-out;
	-moz-transition: all 350ms ease-in-out;
	-ms-transition: all 350ms ease-in-out;
	-o-transition: all 350ms ease-in-out;
	transition: all 350ms ease-in-out;
}
.main-navigation .searchform-top .s-top:focus,
.main-navigation .searchform-top:hover .s-top{
	width: 260px;
	opacity: 1;
}
.main-navigation .searchform-top .input-group-addon{
	background-color: transparent;
	border: none;
	font-size: 18px;
	position: relative;
	z-index: 10;
	height: 40px;
	width: 40px;
	padding: 0;
	cursor: pointer;
}

.site-header .main-navigation .searchform-top .input-group-addon{ color: #000; }
#top_nav .navbar-form,
#top_nav{border: none; padding-bottom: 30px;-webkit-box-shadow:none;box-shadow:none;}
#top_nav a{text-transform: uppercase;}

.site-header.centered_block .main-navigation .social-nav{margin-right: 40px;}

/* Main contents */
#tertiary,
#secondary,
#primary{
	margin-bottom: 40px;
	padding: 0 15px;
	float: left;
	width: 100%;
}

@media screen and (min-width: 1200px){
	#primary{width: 75%;}
	#secondary{width: 25%;}
	#primary.woocommerce-archive{width: 80%;}
	#secondary.woocommerce-sidebar{width: 20%;}
}
@media screen and (min-width: 992px){
	#primary{width: 66.6666%;}
	#secondary{width: 33.3333%;}
	#primary.woocommerce-archive{width: 75%;}
	#secondary.woocommerce-sidebar{width: 25%;}
}

#tertiary,
#primary.no-sidebar{width: 100%}

#breadcrumbs{
	list-style-type: none;
	padding: 15px;
	position: relative;
	margin: 0 0 30px 0;
	/*background-color: #fff;*/
	z-index: 1;
}
#breadcrumbs.no-margin{margin-bottom:0;}
#breadcrumbs.breadcrumbs-single{
	padding: 15px;
	margin: 0 0 15px 0;
	background-color: transparent;
}
.headtype-compact{ 
	height: 165px;
}
.site-header #breadcrumbs{
	margin-bottom: 0;
	align-self: flex-end;
}

.header-centered_block #breadcrumbs.breadcrumbs-single{ padding-top: 15px; }
#breadcrumbs .item-current,
#breadcrumbs a{
	display: inline-block;
	padding: 0 3px;
	font-size: 14px;
	font-style: italic;
}

/* Widgets */

.widget-area .widget{ padding-bottom: 30px; }
.widget-area .widget:first-child{padding-top: 20px;}
.widget-area .widget:first-child .block-title,
.widget-area .widget:first-child .widget-title{margin-top: 0;}
.widget .block-title,
.widget .widget-title{
	text-transform: uppercase;
	margin-bottom: 10px;
	padding-top: 0;
}
#secondary.sidebar-right .widget .block-title,
#secondary.sidebar-right .widget .widget-title{
	padding-bottom: 10px;
	border-bottom: 1px solid #ddd;
}
.widget li{
	padding: 6px;
	border-bottom: 1px solid #ddd;
}
.widget li a{ 
	color: #666;
}
.widget .contactform > li{padding: 0 15px;border-bottom:none;}
#footer .widget li a{color: inherit;}
.widget li a:hover{ color: #999; }
.widget .menu{
	padding: 0;
	list-style-type: none;
}

.widget ul{
	padding: 0;
	list-style-type: none;
}
.widget ul ul{
	padding-left: 15px;
}
.widget .items-list{padding: 0;}
.widget .tax-list > li > a{
	padding-bottom: 5px;
	border-bottom: 1px solid #ddd;
	margin-bottom: 15px;
	display: block;
	font-weight: bold;
	font-style: italic;
}
.widget .tax-list .list-item{
	margin-bottom: 15px;
	padding-bottom: 5px;
}
@media screen and (min-width: 992px){
	.footer-top.type-default .widget-area{
		text-align: right;
	}
}

/* calendar widget */

.widget_calendar {float: left;}
#wp-calendar {width: 100%; }
#wp-calendar caption { text-align: right; color: #f1f1f1; font-size: 18px; margin-top: 10px; margin-bottom: 15px; }
#wp-calendar thead { font-size: 16px; }
#wp-calendar thead th { padding-bottom: 10px; }
#wp-calendar tbody { color: #aaa; }
#wp-calendar tbody td { background: #333; border: 1px solid #ededed; text-align: center; padding:8px;}
#wp-calendar tbody td:hover { background: #fff; }
#wp-calendar tbody .pad { background: none; }
#wp-calendar tfoot #next { font-size: 16px; text-transform: uppercase; text-align: right; }
#wp-calendar tfoot #prev { font-size: 16px; text-transform: uppercase; padding-top: 10px; }

.widget li > .post-date{
	display: block;
	clear: both;
	font-size: 1rem;
}

#secondary .additional-side{
	padding-right: 15px;
}

.tagcloud{
	display: block;
	clear: both;
	overflow: hidden;
}
.tagcloud a{
	margin: 3px 3px 0 0;
	float: left;
	color: #fff;
	font-size: 14px !important;
	padding: 3px 6px;
}
.tagcloud a:hover{
	background-color: #333;
	text-decoration: none;
	color: #fff;
}
.tagcloud a:before{
	font-family: 'FontAwesome';
	content: "";
	font-size: 12px;
	display: inline-block;
	margin-right: 3px;
}

/* Footer */

.footer-top .widget:first-child{ padding-top:0;border-left: none; }
.footer-top .widget:first-child .widget-title{ margin-top: 10px; }
.footer-top .widget.addrs .addrs-block > img{
	max-width: 100%;
}

.bottom-title{
	max-width: 460px;
	padding: 0 15px;
	margin: auto
}
.bottom-title > strong{ 
	font-size: 18px;
	margin-bottom: 10px;
}

.copyright-container{
	text-align: center;
}
.copyright-container > img{
	width: 220px;
}
.copyright{
	font-weight: 700;
}

/* Footer */

.site-footer{
	position: relative;
}
.site-footer .site-info{
	font-style: italic;
	font-size: 14px;
}

.site-footer .facebook-box .carousel-inner > .item {}
.site-footer .facebook-box .carousel-inner > .item .carousel-caption{
	text-align: left;
	padding: 0;
	position: static;
}
.site-footer .facebook-box .carousel-inner > .item .carousel-caption h4{
	margin: 0;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	text-transform: uppercase;
	padding-top: 5px;
}
.site-footer .facebook-box .carousel-inner > .item .carousel-caption .luogo{
	margin-bottom: 0;
	text-transform: uppercase;
}
.site-footer .facebook-box .carousel-inner > .item .carousel-caption .goto-box{
	text-align: right;
}
.footer-logo{margin-bottom: 30px;}

#footer .social-links{
	margin-bottom: 0;
}
#footer .social-links > li{
	-webkit-border-radius: 50%;
	border-radius: 50%;
	border: 3px solid #fff;
	margin: 0px 5px;
	position: relative;
	z-index: 1;
	padding: 7px;
}
#footer .social-links > li:before{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	border: 1px solid #fff;
	-webkit-transition: all 200ms ease-in-out;
	-moz-transition: all 200ms ease-in-out;
	-ms-transition: all 200ms ease-in-out;
	-o-transition: all 200ms ease-in-out;
	transition: all 200ms ease-in-out;
	-moz-transform: scale(1.1);
	-webkit-transform: scale(1.1);
	-o-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);
	z-index: -1;
	opacity: 0;
}
#footer .social-links.black > li{border-color:#000;}
#footer .social-links.black > li:before{border-color:#000;}
#footer .social-links > li:hover:before{
	-moz-transform: scale(1.4);
	-webkit-transform: scale(1.4);
	-o-transform: scale(1.4);
	-ms-transform: scale(1.4);
	transform: scale(1.4);
	opacity: 1;
}

/* Date */

.gce-list-event, .gce-tooltip-event{
	background-color: transparent;
}
.gce-list .gce-event-day{
	padding: 30px 0; 
	position: relative;
}
.gce-list .gce-event-day:first-child{
	padding-top: 0px;
}
.gce-event-day:after{
	content: "";
	height: 3px;
	width: 33.3333%;
	margin: auto;
	background-color: #fff;
	display: block;
}
.widget .gce-event-day:after{
	margin: 30px 0 0;
}
.widget .gce-list .gce-event-day:first-child{
	padding-top: 30px;
}

.archive-navigation{
	padding: 0 15px;
}

#toggle_nav,
#totop{
	color: #fff;
	background-color: rgba(0,0,0,0.8);
	-webkit-border-radius: 50%;
	border-radius: 50%;
	height: 48px;
	width: 48px;
	display: none;
	position: fixed;
	bottom: 30px;
	right: 30px;
	line-height: 48px;
	font-size: 18px;
	text-align: center; 
	z-index: 9999;
}
#toggle_nav{
	bottom: auto;
	top: 30px
}

.mobile-description{
	padding: 15px;
}
.scrolled .mobile-description{
	display: none;
}

.super-banner .container{}
#mega_menu .super-banner .container > h3{
	font-size: 16px;
}

.archive-description {
    padding: 30px;
    margin-bottom: 30px;
    font-size: 16px !important;
    font-style: italic;
    font-weight: lighter;
    background-color: #f5f5f5;
}