/*!
Theme Name: sitaonline
Theme URI: http://underscores.me/
Author: Netizens s.r.l.
Author URI: https://www.netizens.it/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: sitaonline
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.
*/

@import url('https://fonts.googleapis.com/css2?family=Lato:wght@300;400;700&display=swap');
/*####################################################################
############################## GENERAL ###############################
####################################################################*/
*{
	font-family: 'Lato', sans-serif;
	font-weight: 400;
	font-size: 16px;
	line-height: 1.5;
	color: rgb(120, 120, 120);
}
*, *:before, *:after{
	background-repeat: no-repeat;
}
/* bootstrap-grid.css (standalone) applica box-sizing:border-box solo a .row>*,
   il reset globale sta in Reboot che non è in coda: senza questo i .container
   valgono 100% + 24px di padding e sotto i 576px sfondano il viewport */
.container, .container-fluid,
.container-sm, .container-md, .container-lg, .container-xl, .container-xxl{
	box-sizing: border-box;
}
strong, b, .weight-bold, .weight-bold *{
	font-weight: 700 !important;
}
a, a:hover{
	text-decoration: none;
}

sup {
    font-size: 0.5rem !important;
    vertical-align: super;
}

p, h1{
	margin: 0;
}
body{
	margin: 0;
}
.site-main{
	overflow-x: hidden;
}
.site-main ul{
	padding-left: 15px;
}
.site-main ul>li{
	margin-bottom: 10px;
}
.img-fluid {
	max-width: 100%;
	height: auto;
}
.text-primary, .text-primary *{
	color: #34587c !important;
}
.text-secondary, .text-secondary *{
	color: rgb(219, 80, 91) !important;
}
.text-white, .text-white *{
	color: #FFF !important;
}
.bg-primary, .primary-btn, .wpcf7-submit{
	background-color: #34587c !important;
}
.bg-light-primary{
	background-color: rgb(230, 237, 242);
}
.bg-grey{
	background-color: rgb(230, 237, 242);
}
.bg-secondary{
	background-color: rgb(219, 80, 91) !important;
}

.position-relative{
	position: relative;
}
.text-center{
	text-align: center;
}
.font-size-22, .font-size-22 *{
	font-size: 22px !important;
}
.font-size-25, .font-size-25 *{
	font-size: 25px !important;
}
.font-size-35, .font-size-35 *{
	font-size: 20px !important;
}
.font-size-60, .font-size-60 *{
	font-size: 30px !important;
}
h2{
	font-size: 30px;
}
h3{
	font-size: 25px;
	line-height: 1.2;
	margin-top: 0;
	margin-bottom: 5px !important;
}

h4 {
	font-weight: bold;
	color: #34587c;
}
.no-clickable>a{
	pointer-events: none;
}
.vc_btn3.vc_btn3-size-md{
	font-weight: bold;
	text-decoration: none !important;
}
.vc_btn3.vc_btn3-size-md .vc_btn3-icon{
	color: #FFF !important;
}
.post-type-thumb{
	width: 100%;
	height: auto;
}
body.single h2{
	margin-bottom: 15px !important;
}
.post-type-text{
	font-size: 24px;
}
.related-post-container .related-post{
	text-decoration: none;
}
.related-post-container .related-post p{
	line-height: 1.2;
}
.related-post-container .related-post:not(:last-of-type){
	border-bottom: 1px solid rgb(120, 120, 120);
}
.news-title, .event-title{
	line-height: 1.2;
}

/*####################################################################
############################## HEADER ###############################
####################################################################*/

.site-header{
	border-top: 10px solid #34587c;
}
.site-header a{
	font-size: 18px;
}
.site-header{
	z-index: 99;
}
.custom-logo-link{
	display: block;
	max-width: 170px;
}
.custom-logo-link img{
	max-width: 100%;
	height: auto;
}
.btn-member-area, .primary-btn, .wpcf7-submit{
	color: #FFF;
	border-radius: 6px !important;
	display: inline-block;
	padding: 10px 30px !important;
	text-decoration: none;
}
#user-registration .primary-btn{
	text-transform: uppercase;
	margin-left: auto;
	margin-right: auto;
	float: none;
	display: inline-block;
}
.top-header-container{
	border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}
.menu{
	list-style: none;
	margin: 0;
}

/* Hamburger — visibile sotto i 992px, il pannello si apre in accordion */
.menu-toggle{
	-webkit-appearance: none;
	appearance: none;
	background: none;
	border: 0;
	padding: 0;
	width: 34px;
	height: 42px;
	cursor: pointer;
	display: block;
}
.menu-toggle-icon{
	position: relative;
	margin: 0 auto;
}
.menu-toggle-icon,
.menu-toggle-icon:before,
.menu-toggle-icon:after{
	display: block;
	width: 28px;
	height: 3px;
	border-radius: 3px;
	background-color: #34587c;
	transition: all .3s ease-in-out;
}
.menu-toggle-icon:before,
.menu-toggle-icon:after{
	content: "";
	position: absolute;
	left: 0;
}
.menu-toggle-icon:before{
	top: -9px;
}
.menu-toggle-icon:after{
	top: 9px;
}
.menu-toggle[aria-expanded="true"] .menu-toggle-icon{
	background-color: transparent;
}
.menu-toggle[aria-expanded="true"] .menu-toggle-icon:before{
	top: 0;
	transform: rotate(45deg);
}
.menu-toggle[aria-expanded="true"] .menu-toggle-icon:after{
	top: 0;
	transform: rotate(-45deg);
}
.main-navigation{
	max-height: 0;
	overflow: hidden;
	transition: max-height .35s ease-in-out;
}
.main-navigation .menu{
	padding: 10px 0 15px;
}
.mobile-member-area{
	padding: 0 15px 25px;
	text-align: center;
}
#primary-menu{
	text-align: center;
}
#primary-menu>.menu-item{
	color: rgb(120, 120, 120);
	text-align: center;
	display: block;
	position: relative;
}
#primary-menu>.menu-item a{
	color: inherit;
	font-weight: inherit;
	white-space: nowrap;
}
#primary-menu>.current-menu-item, #primary-menu>.current-menu-parent, .filter-btn.selected{
	color: rgb(219, 80, 91);
	font-weight: 700;
}
#primary-menu .sub-menu{
	z-index: 9;
	position: absolute;
	pointer-events: none;
	opacity: 0;
	transition: all .2s ease-in-out;
	background-color: #FFF;
	padding-left: 0;
	list-style: none;
	left: 50%;
	transform: translateX(-50%);
}
#primary-menu .sub-menu .menu-item{
	padding: 0 30px;
}
#primary-menu .sub-menu .menu-item:not(:last-of-type){
	border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}
#primary-menu .menu-item:hover .sub-menu{
	opacity: 1;
	pointer-events: all;
}
@media (max-width:991.98px){
	#primary-menu .sub-menu{
		position: static;
		transform: none;
		opacity: 1;
		pointer-events: auto;
		padding-bottom: 5px;
	}
	#primary-menu .sub-menu .menu-item:not(:last-of-type){
		border-bottom: 0;
	}
	#primary-menu .sub-menu a{
		font-size: 16px;
	}
}
.profile-link{
	display: block;
	width: 35px;
	height: 42px;
	background-image: url("img/user-icon.png");
	background-size: 30px auto;
	background-position: right center;
}
.profile-menu-container{
	padding-top: 10px;
	right: 0;
	left: 0;
	z-index: 9;
	opacity: 0;
	pointer-events: none;
	transition: all .2s ease-in-out;
	position: absolute;
}
.profile-menu{
	background-color: #FFF;
	border: 1px solid #34587c;
	border-radius: 6px;
	list-style: none;
	margin: 0;
}
.col-profile:hover .profile-menu-container{
	opacity: 1;
	pointer-events: all;
}
.profile-menu a{
	text-align: right;
	display: block;
	padding: 12px 20px;
	color: #34587c;
}

/*####################################################################
################################ PAGE ################################
####################################################################*/
.banner-container{
	background-size: cover;
	background-position: center;
}
.banner-text{
	font-weight: 300;
	font-size: 25px;
	padding: 50px 0;
	color: #FFF;
}
body.home .banner-text, body.page-id-205 .banner-text{
	text-align: center;
	font-weight: 400;
	font-size: 20px;
	color: #34587c;
}
body.home .banner-container{
	border-bottom: 15px solid rgb(137, 152, 171);
}
.box-registration{
	background-color: rgba(52, 88, 124, 0.8);
}
body.logged-in .nologged-el{
	display: none;
}
.vc_row.spaced-box{
	margin-left: -30px;
	margin-right: -30px;
}
.vc_row.spaced-box>.vc_column_container>.vc_column-inner{
	padding-left: 30px;
	padding-right: 30px;
}
.content-container a:not(.no-decoration), .content-container a:not(.no-decoration) *{
	color: #34587c;
	text-decoration: none;
}
.homepage-redlabel{
	background-color: rgb(219, 80, 91);
	color: #FFF;
	font-size: 20px;
	display: table;
	line-height: 1;
	padding: 10px 100px 10px 21px;
	position: relative;
	z-index: 3;
	margin-bottom: 20px !important;
}
.homepage-event img{
	width: 100%;
	height: auto;
	display: block;
}
.homepage-post-container{
	margin-top: -35px;
}
.homepage-post:before, .homepage-event:before{
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	background-color: rgb(0, 0, 0, 0.3);
	opacity: 0;
	transition: opacity .2s ease-in-out;
	z-index: 2;
}
.homepage-post:hover::before, .homepage-event:hover::before{
	opacity: 1;
}
.homepage-post{
	background-size: cover;
	background-position: center;
}
.homepage-post .inner-container{
	padding: 55px;
}
.homepage-post-category{
	font-weight: bold;
	text-align: center;
	color: yellow;
	text-shadow: 1px 2px 2px rgba(0, 0, 0, 0.4);
	font-size: 24px;
	z-index: 3;
	position: relative;
}
.homepage-post-title{
	font-size: 20px;
	text-shadow: 1px 2px 2px rgba(0, 0, 0, 0.4);
	color: #FFF;
	text-align: center;
	z-index: 3;
	position: relative;
	line-height: 1.2;
}
.box-link-area-soci{
	position: relative;
}
.box-link-area-soci h2{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	right: 0;
	margin: auto;
	display: table;
	color: #FFF;
	pointer-events: none;
}
.standard-table{
	border-collapse: collapse;
	border: 1px solid #333;
	width: 100%;
}
.standard-table td, .standard-table tr{
	border: 1px solid #333;
	padding: 15px;
}
/*####################################################################
################################ POST ################################
####################################################################*/
.social-share-link{
	background-size: contain;
	background-position: center;
	display: block;
	width: 25px;
	height: 25px;
}
.social-share-link.facebook{
	background-image: url("img/facebook-icon.png");
}
.social-share-link.twitter{
	background-image: url("img/twitter-icon.png");
}

/*####################################################################
############################ REGISTRATION ############################
####################################################################*/
#user-registration{
	margin: 0;
}
.user-registration{
	box-shadow: none !important;
}
.registration-form-custom{
	border: none;
	padding: 0;
}
.registration-form-custom .ur-form-row{
	margin-left: -10px;
	margin-right: -10px;
}
.registration-form-custom .registration-btn{
	margin-top: 30px;
	margin-left: auto !important;
	margin-right: auto !important;
	background-color: #34587c !important;
	border-radius: 6px;
	color: #FFF;
}
.registration-form-custom .input-text, 
.registration-form-custom .brithday-field #load_flatpickr, 
.ur-frontend-form.login #load_flatpickr,
.registration-form-custom #customfield_provincia,
.wpcf7-text.wpcf7-form-control, 
textarea.wpcf7-form-control
{
	border: 1px solid #34587c !important;
}
.wpcf7-text.wpcf7-form-control, textarea.wpcf7-form-control{
	display: block;
    width: 100%;
    padding: 4px 8px;
    border-radius: 0;
    min-height: 36px;
    margin-bottom: 10px;
    line-height: 1.5;
	box-sizing: border-box;
}
.wpcf7-submit{
	font-size: 18px;
	border: 0;
	text-transform: uppercase;
}

/*####################################################################
############################### LOGIN ###############################
####################################################################*/
.ur-frontend-form.login{
	padding: 0;
	border: 0;
}
.user-registration-form-login a, .user-registration-form-login span, .user-registration-form-login label{
	font-size: 15px !important;
}
.ur-frontend-form.login .input-text{
	border: 1px solid #34587c !important;
	font-size: 16px;
}
.user-registration-form-login input[type="submit"]{
	background-color: #34587c !important;
	border-radius: 6px;
	color: #FFF;
	text-transform: uppercase;
}

/*####################################################################
############################### PROFILE ##############################
####################################################################*/
#user-registration .user-registration-MyAccount-navigation, #user-registration.horizontal .user-registration-MyAccount-navigation{
	border-bottom: 0;
}
#user-registration .user-registration-MyAccount-navigation-link a{
	font-size: 18px !important;
}
#user-registration .user-registration-MyAccount-navigation-link.is-active a{
	background-color: #34587c !important;
	font-weight: 400 !important;
	color: #FFF;
}


/*####################################################################
############################## ARCHIVES ################################
####################################################################*/
.grid-article{
}
.article-box{
	display: block;
}
.filter-btn{
	cursor: pointer;
	padding: 15px;
	position: relative;
}
.thumbnail-news, .thumbnail-eventi{
	height: 155px;
	background-position: center;
	background-size: cover;
}
.news-box{
	display: block;
}
.pubblicazioni-thumb{
	border: 1px solid #34587c;
	max-width: 160px;
	height: auto;
}

/*####################################################################
############################## ATTI ################################
####################################################################*/



/*####################################################################
############################## FOOTER ################################
####################################################################*/
.site-footer{
	background-color: rgb(137, 152, 171);
	border-bottom: 10px solid rgb(63, 76, 85);
}
.site-footer p, .site-footer a{
	font-size: 13px;
}
#menu-footer-menu a{
	display: block;
}


/*####################################################################
############################ MEDIA QUERY #############################
####################################################################*/
@media (min-width:576px){

}
@media (min-width:768px){

}
@media (min-width:992px){
	/*####################################################################
	############################## GENERAL ###############################
	####################################################################*/
	.font-size-35, .font-size-35 *{
		font-size: 30px !important;
	}
	.font-size-60, .font-size-60 *{
		font-size: 45px !important;
	}
	

	/*####################################################################
	############################## HEADER ###############################
	####################################################################*/
	.main-navigation{
		max-height: none !important;
		overflow: visible;
	}
	#primary-menu>.menu-item{
		display: inline-block;
	}
	#primary-menu>.menu-item:after, .filter-btn:after{
		content: "";
		position: absolute;
		display: block;
		z-index: 10;
		left: 0;
		right: 0;
		margin: auto;
		background-image: url("img/red-triangle.png");
		background-position: top center;
		background-size: auto 6px;
		height: 6px;
		border-bottom: 3px solid rgb(219, 80, 91);
		bottom: -3px;
		transition: all .2s cubic-bezier(0.68, 0.01, 0.44, 0.99);
		width: 0;
		overflow: hidden;
	}
	.filter-btn:after{
		bottom: 0;
	}
	#primary-menu>.current-menu-item:after, 
	#primary-menu>.menu-item:hover:after, 
	#primary-menu>.current-menu-parent:after, 
	#primary-menu>.current-menu-parent:hover:after,
	.filter-btn.selected:after,
	.filter-btn:hover:after
	{
		width: 100%;
	}
	#primary-menu>.menu-item a{
		display: block;
		padding: 15px;
	}

	/*####################################################################
	################################ PAGE ################################
	####################################################################*/
	.banner-text{
		font-size: 70px;
		padding: 140px 0;
	}
	body.home .banner-text, body.page-id-205 .banner-text{
		font-size: 40px;
		padding: 210px 0;
	}
	body.home .banner-container{
		border-bottom: 30px solid rgb(137, 152, 171);
	}

	/*####################################################################
	############################## FOOTER ################################
	####################################################################*/
	.site-footer{
		border-bottom: 20px solid rgb(63, 76, 85);
	}
}
@media (min-width:1200px){
	.mb-xl-7{
		margin-bottom: 70px !important;
	}
	.py-xl-7{
		padding-top: 70px !important;
		padding-bottom: 70px !important;
	}
	.py-xl-10{
		padding-top: 100px !important;
		padding-bottom: 100px !important;
	}
}
@media (min-width:1400px){
	.font-size-60, .font-size-60 *{
		font-size: 60px !important;
	}
}