/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/

/*************** ADD CUSTOM CSS HERE.   ***************/
html {
	font-size: 10px;
}

body {
	font-size: 2rem;
}

h2, h3 {
	font-family: 'Montserrat', sans-serif !important;
	font-size: 1.7rem;
	font-weight: 500 !important;
}

h5 {
	font-family: 'Montserrat', sans-serif !important;
	font-size: 3.3rem;
	font-weight: 500;
	text-transform: none;
}
p {
	font-family: 'Montserrat', sans-serif;
	font-size: 1.4rem;
	font-weight: 500;
}

input[type=submit], input[type=submit].button, input[type=submit].primary,
.comments-area .form-submit .submit,
.button span {
	font-family: 'Montserrat', sans-serif;
	font-size: 1.8rem;
	font-weight: 500;
	padding: .4em 1em;
	color: white;
}
input[type=submit], input[type=submit].button, 
input[type=submit].primary {
	padding: 0 3em;
}

.comments-area .form-submit .submit {
	padding: 0 1em;
}


.bg-orange {
	background-color: #ffb133;
}

.singlePostHeader {
	height: 33rem;
	margin-bottom: 30px;	
	display: flex;
	justify-content: center;
	align-items: center;
}
.singlePostHeader h1 {
	font-family: 'Montserrat', sans-serif;
	font-weight: 500;
	font-size: 3.2rem;
	color: #fff;
	line-height: 1;
}
.singlePostHeader h3 {
	font-family: 'Montserrat', sans-serif;
	font-weight: 500;
	font-size: 2.1rem;
	color: #fff;
}

.singlePostHeader .postHeaderTitle {
	position: relative;
	width: max-content;	
}
.singlePostHeader .postHeaderTitle::before {
	content: '';
	height: 1px;
	width: 230px;
	border-bottom: 1px solid white;
	position: absolute;
	left: -250px;
	top: 50%
}
.singlePostHeader .postHeaderTitle::after {
	content: '';
	height: 1px;
	width: 230px;
	border-bottom: 1px solid white;
	position: absolute;
	right: -250px;
	top: 50%
}

.blog-wrapper.blog-single.page-wrapper {
	padding-top: 0;
}


.badge.absolute.top.post-date.badge-outline {
	padding: 0;
}



.middle_vertical_align {
	display: flex;
	align-items: center;
}
.home .middle_vertical_align {
	padding: 2rem !important;
}

.height100 {
	height: 100% !important;
}


.bg-gray {
	background-color: #edeeee;
}
.bg-darkblue {
	background-color: #333740;
}

.mt-60 {
	margin-top: 6rem !important;
}
.px-2 {
	padding-right: 2rem;
	padding-left: 2rem;
}

.comments-area .form-submit .submit,
.primary {
	background-color: #666666 !important;
}

.ml-negative {
	margin-left: -10px;
}

.borderBottomOrange {
	border-bottom: 10px solid #ffb133;
}

.w-50 {
	width: 50%;
	margin: 0 auto;
}

/*.col-12,*/
.wppb-form-field.wppb-email-confirmation {
	width:100%;
	clear: both;
}

.headTitle {
	position: relative;
	width: max-content;
	margin: 0 auto;
}

.headTitle::before,
.headTitle::after {
	content: '';
/*	width: 40%;*/
	--width: 350px;
	--widthA: calc(var(--width) * -1);
	width: calc(var(--width));
	height: 2px;
	border-bottom: 2px solid #edeeee;
	position: absolute;
	left: calc(var(--widthA) - 20px);
	top: 50%;
}
.headTitle::after {
	left: auto;
	right: calc(var(--widthA) - 20px);
}



/*----HEADER-----*/
.header-top {
    background-color: #ffb133;
	min-height: 0 !important;
	height: 10px;
}


/*Menu*/
.header-nav-main.nav>li {
	font-family: 'Montserrat', sans-serif;
	font-weight: 500;
    font-size: 14px;
	color: #323232;
    text-transform: uppercase;
}

.header-inner #logo {
    width: 33%;
}
.header-inner #logo img {
    max-height: 70px;
}


/*<-------- HOME -------->*/

.button.white:hover span {
	color: #666;
}

.home-iscriviti h5 {
	font-size: 3rem;
	margin-bottom: 5px;
}
.home-iscriviti h6 {
	text-transform: none;
}

.home-iscriviti ul {
	text-align: left;
    font-family: 'Montserrat', sans-serif;
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1;
}


/*Video Slider*/
.first-videoSlide {
	padding-top: 0 !important;
	background-color: orange;
}

.first-videoSlide .flickity-page-dots {
    bottom: -22px !important;
}

.first-videoSlide .slider-nav-light .flickity-page-dots .dot {
	background-color: #edeeee;
	border-color: #edeeee;
	opacity: 1;
}
.first-videoSlide .slider-nav-light .flickity-page-dots .dot.is-selected {
	background-color: #044d75;
	border-color: #044d75;
}


/*Gallery dots*/ 
.nav-dots-small .flickity-page-dots .dot, 
.row-slider .flickity-page-dots .dot {
	background-color: white;
	opacity: .7;
}
.flickity-page-dots .dot.is-selected {
	background-color: white;
}


.row.gallery_home-bottom {
	height: 27.240vw;
}


.galleryHomeSection .flickity-page-dots {
	left: 0; 
}


.row.contattaciRow {
	margin-top: 6rem;
	margin-bottom: 6rem;
	display: flex;
    align-items: center;
	color: #fff;
}

.row.contattaciRow .col p {
	margin-bottom: 0;
	color: #fff;
}

.row.videoRow {
	margin: 6rem auto;
}

.home .button.primary {
	min-width: 230px;
}


/* FOOTER */
.footer {
	background-color: #383838;
}

.absolute-footer {
	background-color: #000;
}

.footer {
	font-size: 14px !important;
}
.footer .widget-title, 
.footer .is-divider  {
	display: none;
}
 
.footer .button.icon.circle {
/*	padding: 2px;*/
	margin: 0 2px;
}
.button.icon.circle>i {
	padding: 4px;
}

.menu-secondary-container {
	text-align: center;
}
.menu-secondary-container ul.menu>li {
	display: inline;
	font-family: 'Montserrat', sans-serif;
	font-weight: 500;
    font-size: 14px;
    text-transform: uppercase;
	margin: 0 1rem;
}
.paypal-section,
.paypal-section .col {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	text-align: center;
}

.footer-widgets.footer-2 .block_widget,
.footer-widgets.footer-2 .widget_nav_menu {
	flex: 0 0 auto;
    width: 100%;
}


/*SEARCH PAGE */
.more-link.button.primary.is-outline {
	color: white;
	border: 2px solid #666;
}



/*REGISTRAZIONE*/
.colLogin.left input[type=submit].button, input[type=submit] {
	background-color: #666!important;
}

.colLogin {
    height: 310px;
}
.colLogin.left .col-inner {
	display: flex;
    align-items: center;
	justify-content: center;
	flex-wrap: wrap;
}
.colLogin.left .col-inner p.forgotp {
	width: 100%;
    text-align: center;
    margin-top: -20px;
}
.colLogin.left .col-inner p a {
	text-decoration: underline;
}
.colLogin.left .col-inner p a:hover {
	text-decoration: none;
}

.colLogin.left .col-inner p.wppb-alert {
	text-align: center;
}

.colLogin .col-inner {
	padding: 30px 0 40px !important;
    height: 310px;
	background-color: #f2f2f2;
}


.customRegForm p.form-submit { text-align: center; }
.customRegForm .row.registerCode input[type=submit] {
	background-color: #666666;
	font-family: 'Montserrat', sans-serif;
    font-size: 1.8rem !important;
    font-weight: 500;
    padding: 0.2em 1em;
}

.headTitle.registraTitle {
	margin-top: 8rem;
}

/*
.headTitle.registraTitle::before {
	left: -15%
}
.headTitle.registraTitle::after {
	right: -15%
}
*/

.registerCode input:not([type="checkbox"]),
.wppb-user-forms input[type="text"], 
.wppb-user-forms input[type="number"], 
.wppb-user-forms input[type="email"], 
.wppb-user-forms input[type="url"], 
.wppb-user-forms input[type="password"], 
.wppb-user-forms input[type="search"], 
.wppb-user-forms textarea{
	height: 35px;
	border-radius: 0 !important;
	font-size: 12px;
}

.registerCode .wppb-user-forms input[type="checkbox"], 
.registerCode .wppb-user-forms input[type="radio"] {
	width: auto;
}

.wppb-form-field label {
	color: #383838;
}


.registerCode .wppb-gdpr-checkbox {
	margin: 5rem 0 4rem;
}

.registerCode .wppb-gdpr-checkbox input {
	cursor: pointer;
	position: relative;
    top: 2px;
}
.registerCode .wppb-gdpr-checkbox label {
	color: #53565a;
	font-size: 12px;
	cursor: pointer;
}
.registerCode .wppb-gdpr-checkbox label a {
	text-decoration: underline;
    color: #53565a;
}
.registerCode .wppb-gdpr-checkbox label a:hover {
	text-decoration: none;
}


.customRegForm input[type=submit] {
	padding: 0 4em !important;
}


.regCodeCol {
	padding-right: 10px;
	padding-left: 10px;
}

.wppb-required, .wppb-checkbox-terms-and-conditions span.wppb-required {visibility: hidden;}

.colLogin #wppb-login-wrap label {
	line-height: 14px !important;
}
.colLogin #wppb-login-wrap input:not([type="submit"]) {
	width: 100% !important;
}
.colLogin #wppb-login-wrap input[type="submit"] {
	padding: 0 3em;
	margin: 0 auto;
	display: block;
}
.colLogin .login-remember { display: none !important; }


.cambioPassw .wppb_holder {
	text-align: center;
}
.cambioPassw .wppb-form-field.wppb-username-email {
	width: 100%;
	margin-bottom: 20px;
}

.customRegForm .textHeight {
	height: 175px;
}



/*VIDEO*/
.page-id-90 h2,
.video-section h2 {
	font-size: 2.3rem !important;
}
.video-section h3 {
	font-weight: 700 !important;
	color: #666666;
}
.video-section p {
	color: #666666;
}



/*ABOUT US*/
.page-id-90 p span.bigger,
.page-id-90 p big {
	font-size: 2rem;
}

.page-id-90 .aboutStripe-section h4 {
	font-family: 'Montserrat', sans-serif;
    font-size: 1.4rem;
    font-weight: 500;
}
.page-id-90 .aboutStripe-section h3 {
	font-size: 2.6rem;
}
.page-id-90 .aboutStripe-section p {
	font-size: 2rem;
}


/*CONTATTI*/
.linkSocial a img {
	margin: 25px 20px 48px 0;
}

.linkSocial a:first-child:hover {
	filter: invert(36%) sepia(49%) saturate(5884%) hue-rotate(206deg) brightness(103%) contrast(90%);
}

.linkSocial a:nth-child(2):hover {
	filter: invert(29%) sepia(66%) saturate(4988%) hue-rotate(317deg) brightness(91%) contrast(89%);
}

.linkSocial a:last-child:hover {
	filter: invert(48%) sepia(81%) saturate(1762%) hue-rotate(176deg) brightness(100%) contrast(91%);
}

label,
.contacts .wpcf7 label{
	font-family: 'Montserrat', sans-serif !important;
	font-weight: 500;
	font-size: 1.6rem;
	color: #000;
}

.contacts .legalOffice p {
	color: #000000;
	border-bottom: 1px solid #000;
	height: 60px;
	font-size: 16px;
}
.contacts .legalOffice a {
	color: #000000;
}
.contacts .legalOffice a:hover {
	opacity: 0.8;
}

.contacts h4 {
	font-family: 'Montserrat', sans-serif !important;
    font-weight: 500;
    font-size: 1.8rem;
    color: #000;
	padding-top: 30px;
    padding-bottom: 45px;
}

.contacts .officeCol > .col-inner,
.contacts .formCol > .col-inner {
	min-height: 500px;
	height: auto;
}
.contacts .formCol .row {
	margin: 0 15px;
}
.wpcf7 form.invalid .wpcf7-response-output {
	font-size: 16px;
}

.officeCol > .col-inner {
	padding: 30px 16px 0 32px !important;
}


/*CONFERMA REGISTRAZIONE PAGE*/
/*
.headTitle.confermaTitle::before,
.headTitle.confermaTitle::after {
	width: 35%;
}
*/



/*SINGLE POST*/
.pdfWrapper {
	text-align: center;
	background-color: rgba(0,0,0,.05);
	padding: 30px 0 40px;
	margin-top: 40px;
}

.pdfWrapper img {
	max-height: 100px;
}

.pdfWrapper span.widget-title {
	font-size: 2.5rem;
}



/*CARICA PAGE*/
.caricaPage {
	background: #f2f2f2;
	padding:4rem 8rem 5rem;
}

#files-msg {
	margin-top: 8px;
}
/*
#file-list {
	margin-top: 22px;
}
*/
#file-list strong,
.caricaPage label,
.caricaPage .disclaimer span {
	font-family: 'Montserrat', sans-serif !important;
	font-size: 1.7rem;
	font-weight: 500 !important;
	margin-bottom: 0;
	color: #383838;
}
#file-list span,
.caricaPage p {
	font-family: 'Montserrat', sans-serif !important;
	font-weight: 500 !important;
	font-size: 1.5rem;
}

#copy + p {
	font-size: 1.2rem;
    margin-top: -15px;
    margin-bottom: 20px;
}

.caricaPage .disclaimer label {
	font-weight: 400;
	font-size: 1.5rem;
}


.caricaPage .disclaimer p {
	font-size: 12px;
}


/*MAPPA | CERCA RICORDO*/
#event-search-box {
	border-radius: 10px;
    box-shadow: 0px 2px 3px 1px;
}



/*Grazie ricordo*/
.thanksRow .detailsWrap .row .col-12 p {
	font-weight: 600;
	font-size: 1.5rem;
}
.detailsWrap {
	padding: 20px;
	background: #edeeee;
	box-shadow: 1px 1px 5px grey;
}


/*Risultati ricerca | Visualizza risultati*/
.search-form-container {
	padding: 4rem 2.5rem;
	background: #edeeee;
}

.open-video.icon.circle
{
	display: block;
	width: 60px;
	height: 60px;
	margin: 0 auto;
	position: relative;
	margin: 0 auto !important;
}

.open-video.icon.circle i.icon-play
{
	display: block;
	font-size: 40px !important;
	line-height: 1;
	position: absolute;
	padding: 0;
	left: 50%;
	top: 50%;
    transform: translate(-50%, -50%);
}

.video-title
{
	font-size: 2rem;
}

#wppb_register_pre_form_message, #wppb_register_pre_form_message a
{
	background-color: #666666 !important;
	color: white;
}
/*
#fields-container
{
	display: none;
}
*/
.post-template-default.single.single-post .mfp-wrap.mfp-ready
{
	z-index: 99999;
}



/*************** ONLY MINI MOBILE CSS   ***************/

@media only screen and (max-width: 449.98px) {
	.row.gallery_home-bottom {
		height: 43.345vw;
	}	
}

@media only screen and (min-width: 450px){
	.colLogin.left {
		padding-right: 10px !important;
	}
	.colLogin.right {
		padding-left: 10px !important;
		padding-top: 18px;
	}
	
	.search-form-container {
		padding: 4rem;
	}
}


/*************** MOBILE ONLY CSS HERE  ***************/
@media only screen and (max-width: 767.98px) {

	.headTitle::before,
	.headTitle::after {
		width: 0;
	}
	.small-12 {
		max-width: 100% !important;
		-ms-flex-preferred-size: 100% !important;
		flex-basis: 100% !important;
	}	
	.headTitle.confermaTitle::before,
	.headTitle.confermaTitle::after {
		width: 0;
	}
	
	.contattiSndCol .col-inner {
		text-align: center!important;
	}
	
	.hero_slider .fill.banner-link {
		max-height: 300px;
	}
	
	.row.registerCode .regCodeCol .col-inner {padding: 40px 10px 20px!important;}
	.col.colLogin.left {margin-bottom: 30px;}
	
	.thanksRow .row .col-12:nth-child(even) p {
		margin-bottom: 0;
		margin-top: 1.5rem;
	}
	.thanksRow .row .col-12:nth-child(2) p {
		margin-top: 0;
	}
	
	.caricaPage {
		padding: 4rem 2rem 5rem;
	}
	
}


@media only screen and (min-width: 768px) {
	
/*	.col-md-6,*/
	.wppb-form-field.wppb-email-confirmation {
		width: 50%;
		float: left;
		clear: none;
	}
	
	.wppb-form-field label, 
	#wppb-login-wrap .login-username label, 
	#wppb-login-wrap .login-password label, 
	#wppb-login-wrap .login-auth label {
		width: 100% !important;
	}
	
	.wppb-user-forms ul li {
		float: left;
		padding: 10px 8%;
	}
	.registerCode .wppb-form-field input:not([type="checkbox"]) { width: 100% !important; }

}

@media only screen and (min-width: 550px) and (max-width: 992px) {
	.officeCol > .col-inner {
    	padding: 30px 15px 0px !important;
	}
	
	.headTitle::before,
	.headTitle::after,
	.headTitle.lineBig::before,
	.headTitle.lineBig::after {
		--width: 250px;
	}
}


/*************** MOBILE AND TABLET CSS HERE  ***************/
@media only screen and (max-width: 991.98px) {

	.w-50 {
		width: 100% !important;
	}
	
	#event-search-box {
		width: 300px;
		/*
		right: auto;
		left: 0;
		top: auto;
		bottom: -35%;
		*/
		top:50%;
		left: 50%;
		transform: translateX(-50%) translateY(-50%);
	}
	
}

@media only screen and (min-width: 992px) and (max-width: 1300px) {

	.w-50 {
		width: 80% !important;
	}

}


/*************** ONLY DESKTOP CSS HERE  ***************/

@media only screen and (min-width: 1200px) {
	.headTitle.lineBig::before,
	.headTitle.lineBig::after {
		--width: 500px;
	}
	.headTitle.contactsTitle::before,
	.headTitle.contactsTitle::after {
		--width: 450px;
	}
	
	.search-form-container {
		padding: 4rem 8rem;
	}
	
}



@media only screen and (max-width: 550px){
	/*
	#event-search-box {
		left: -20px;
	}
	*/
	
	#event-search-box {
		width: 300px;
		/*
		right: auto;
		left: 0;
		top: auto;
		bottom: -35%;
		*/
		top:50%;
		left: 50%;
		transform: translateX(-50%) translateY(-50%);
	}
}

@media only screen and (max-width: 359px){
	#event-search-box {
		width: 280px;
	}
}








