.centra{ display: block; margin: 0 auto; }
.clearfix{ clear: both; }
.no-padding{ padding: 0 !important; }
.no-margin{ margin: 0 !important; }
.underline{ text-decoration: underline; }
.uppercase{ text-transform: uppercase; }
.m0-top{margin-top:0px !important;}
.m0-bottom{margin-bottom:0px !important;}
.m10-top{margin-top:10px !important;}
.m10-bottom{margin-bottom:10px !important;}
.m20-top{margin-top:20px !important;}
.m20-bottom{margin-bottom:20px !important;}
.m30-top{margin-top:30px !important;}
.m30-bottom{margin-bottom:30px !important;}
.m40-top{margin-top:40px !important;}
.m40-bottom{margin-bottom:40px !important;}
.m50-top{margin-top:50px !important;}
.m50-bottom{margin-bottom:50px !important;}
.m60-top{margin-top:60px !important;}
.m60-bottom{margin-bottom:60px !important;}
.m70-top{margin-top:70px !important;}
.m70-bottom{margin-bottom:70px !important;}
.m80-top{margin-top:80px !important;}
.m80-bottom{margin-bottom:80px !important;}
.m90-top{margin-top:90px !important;}
.m90-bottom{margin-bottom:90px !important;}
.m100-top{margin-top:100px !important;}
.m100-bottom{margin-bottom:100px !important;}
.btn.focus, .btn:focus, button:focus, a:focus , *:focus, .form-control:focus { outline: 0; box-shadow: none; }
.width100{ width: 100%;}
*:not(.fa){ font-family: 'Roboto', sans-serif; }
a:hover{ text-decoration: none; }
a { text-decoration: none; }
.centraVert{
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 auto;
}
b, strong { font-weight: 500; }

/*	MENù	*/
#menuDesktop{
	padding: 29px 0px;
    color: #ffffff;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 9;
    box-shadow: 0 2px 16px 0 rgb(0 0 0 / 35%);
    background-color: #fff;
	height: 90px;
}
ul#menu li{
	display: inline;
	color: #ffffff;
	margin-right: 25px;
	font-size: 15px;
	font-weight: 500;
	text-align: center;
	cursor: pointer;
}
ul#menu{
	display: inline-block;
	padding: 0;
	margin: 0;
}
ul#menu li.active, ul#menu li:hover {
	cursor: pointer;
	color: #C0CCDE;
}

/*	COLORI	*/
.grigio{ color: #464646; }
.blu{ color: #135788; }
.marrone{ color: #714826; }
.arancio{ color: #e9b487; }
.azzurro{ color: #73aedf; }
.rosso{ color: #d54756; }
.rosso2{ color: #7b0b17; }

/*	BOTTONI	*/
.btnCta{
	border-radius: 37px;
    font-size: 15px;
    padding: 8px 25px;
}
.btnRed{
	color: #ffffff;
    background-color: #d54756;
}
.btnRed:hover{
    background-color: #135788;
	color: #ffffff;
}
.btnBlu{
	color: #ffffff;
    background-color: #135788;
}
.btnBlu:hover{
    background-color: #d54756;
	color: #ffffff;
}
.btnMarrone{
	color: #ffffff;
    background-color: #714826;
}
.btnMarrone:hover{
    background-color: #d54756;
	color: #ffffff;
}
.btnRed2{
	color: #ffffff;
    background-color: #7b0b17;
}
.btnRed2:hover{
    background-color: #135788;
	color: #ffffff;
}

/*	ACCORDION	*/
.accordion-custom .accordion-button{
	display: inline;
    padding: 0;
	background: #135788;
    border: 0;
}
.accordion-custom .accordion-button::after {
    position: absolute;
    top: 38%;
    right: 25px;
	filter: brightness(0) invert(1);
}
.accordion-custom .accordion-item {
    background-color: #135788;
    border: 0;
    border-bottom: 1px solid #ffffff;
    margin-bottom: 15px;
    padding-bottom: 22px;
}
.accordion-item:first-of-type .accordion-button {
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
}
.accordion-item .accordion-button {
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
    background: #135788 !important;
    transition: none !important;
}
.accordion-custom .accordion-item:last-of-type{
	border-bottom: 0;
	margin-bottom: 0;
}
.accordion-custom .accordion-body { padding: 14px 0 0 0; }
.accordion-custom .accordion-button:not(.collapsed) {
    box-shadow: none;
}


/*	ELEMENTI	*/
.hrWhite{
	border-top: 1px solid rgb(255 255 255);
    width: 74%;
    display: block;
    margin-left: 5px;
}
.hrRed{
	border-top: 2px solid #d54756;
    opacity: 1;
}
#headerHP{
	height: 500px;
	background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.22) 22%, rgba(0, 0, 0, 0.4) 58%), url(/assets/images/dipinto_1_mobile.jpg);
    background-position: center +6%;
	background-size: cover;
    margin-top: 39px;
	padding-top: 115px;
}
#vulcano{
	color: #3e3e3e;
    min-height: 300px;
    margin-top: -175px;
    padding-top: 29%;
    font-size: 25px;
    text-align: center;
    font-weight: 300;
    line-height: 37px;
    margin-bottom: 40px;
    position: relative;
    top: 2px;
    background-repeat: no-repeat;
    background: linear-gradient(180deg, #ffffff00 75%, #ffffff00 25%), url(/assets/images/Vulcano.svg);
    background-position: top center;
    background-size: 101%;
}
#onde{
	background-image: url(/assets/images/Onde.svg);
    padding: 29% 0px 16% 0px;
    background-position: 35%;
    background-size: cover;
    position: relative;
}
#arrow-down{
	text-align: center;
    left: 50%;
    transform: translate(-50%,0);
    position: absolute;
    z-index: 1;
    top: 0;
    width: 42px;
}
#progetto{
	background-color: #e7aa77;
    background-image: url(/assets/images/Sole.svg);
    background-position: right;
    background-size: 55%;
    background-repeat: no-repeat;
	padding: 11% 0;
}
#chisiamo{
	background-color: #135788;
	padding: 11% 0;
}
#newsletter{
	background-image: url(/assets/images/dipinto_2.jpg);
    background-color: #d54756;
    background-position: bottom right;
    background-size: 90%;
    background-repeat: no-repeat;
    padding: 11% 0 34% 0;
}

/*	TESTI	*/
.titleheader {
    font-family: 'PT Serif', serif;
    font-size: 42px;
    font-weight: bold;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    text-align: center;
    color: #fff;
    letter-spacing: 1px;
}
.titlept{
	color: #d54756;
    font-size: 24px;
    font-weight: 900;
    margin: 0;
	margin-top: 7px;
}
.tx1{
	font-size: 37px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
}
.tx2{
	font-size: 21px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
}
.tx3{
    color: #fff;
    padding: 3px 62px 3px 85px;
    background-color: #135788;
    border-top-left-radius: 0;
    border-top-right-radius: 37px;
    border-bottom-right-radius: 37px;
    border-bottom-left-radius: 0;
	margin-bottom: 15px;
    margin-top: 25px;
	text-transform: uppercase;
}
.tx4{
	color: #fff;
	padding: 3px 8px 12px 85px;
    background-color: #135788;
	border-top-left-radius: 0;
    border-top-right-radius: 25px;
    border-bottom-right-radius: 25px;
    border-bottom-left-radius: 0;
	margin-bottom: 15px;
	text-transform: uppercase;
}
.tx3, .tx4{
	margin-left: -100%;
    padding-left: 100%;
}
.text1 {
    font-size: 20px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 30px;
	letter-spacing: normal;
}	
.text2{
	font-size: 20px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 30px;
    letter-spacing: normal;
}
.text3 {
    font-family: 'PT Serif', serif;
    font-size: 19px;
    font-weight: 600;
    font-stretch: normal;
    font-style: normal;
    line-height: 30px;
    letter-spacing: normal;
}
.text4{
	font-size: 17px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 26px;
    letter-spacing: normal;
}
.titlePT_1{
	font-family: 'PT Serif', serif;
    font-size: 41px;
    font-weight: bold;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.22;
    letter-spacing: normal;
}
.titlePT_2{
	font-family: 'PT Serif', serif;
	font-size: 33px;
	font-weight: bold;
	font-stretch: normal;
	font-style: normal;
	line-height: 1.19;
	letter-spacing: normal;
}
.titlePT_3{
	font-family: 'PT Serif', serif;
	font-size: 27px;
	font-weight: bold;
	font-stretch: normal;
	font-style: normal;
	line-height: normal;
	letter-spacing: normal;
}
.titlePT_4{
	font-family: 'PT Serif', serif;
	font-size: 24px;
	font-weight: 300;
	font-stretch: normal;
	font-style: normal;
	line-height: normal;
	letter-spacing: normal;
}


/*	FORM	*/
label{
	font-size: 18px;
	font-weight: 300;
	font-stretch: normal;
	font-style: normal;
	line-height: normal;
	letter-spacing: normal;
	color: #fff;
}
.f_c_custom{
    border-radius: 0;
    padding: 15px;
    margin-top: 10px;
    margin-bottom: 10px;
}
input[type="checkbox"] {
    height: 30px;
    width: 30px;
    position: relative;
    top: 7px;
    margin-bottom: 13px;
    float: left;
    margin-right: 10px;
}

/*	FOOTER	*/
footer {
    background: #ffffff;
    padding: 10% 0 3% 0;
}
#collaborazione{
	margin-bottom: 5px;
    font-size: 13px;
}
#logo_LM_footer{ width: 60%; margin-bottom: 13px; }
.txtFooter .link, .txtFooter .fa{
	font-size: 14px;
	font-weight: normal;
	font-stretch: normal;
	font-style: normal;
	line-height: normal;
	letter-spacing: normal;
	color: #d54756;
}
.txtFooter .link{
    text-decoration: underline;
    margin-right: 10px;
    margin-top: 20px;
    display: inline-block;
	cursor: pointer;
}
.txtFooter .fa-facebook {
    font-size: 27px !important;
}
.page_s{ padding-top: 150px; }

/*	ALERT  */
.modal .bootbox-close-button.close{
	margin-top: -10px;
    position: absolute;
    top: 20px;
    right: 17px;
    background: transparent;
    font-size: 20px;
    border: 0;
}
.modal .modal-content {
    border: 0;
    border-radius: 0;
}
.modal .modal-body{
	padding-top: 50px;
    padding-bottom: 40px;
}
.modal .btn-primary{
    color: #fff;
    background-color: #73aedf;
    border-color: #73aedf;
    border-radius: 0;
}

/*	VARI  */
.interna{ padding-top: 155px; }
.domanda, .domanda *{
	font-family: 'PT Serif', serif;
    font-weight: 600;
    font-size: 20px;
    line-height: 32px;
}
ol li::marker { color: #d54756; font-size: 24px; }
.form-check, .form-check *{ cursor: pointer; }


/* css dibattito */
.candidato{
        margin-top: 40px;
    padding: 35px 15px 35px 15px;
    border-radius: 31px;
    background-color: #fff;
}
#camera{
	background-color: #73aedf;
	padding-bottom: 150px;
}
#senato{
	background-color: #135788;
	padding-bottom: 150px;
}
#camera-tab{
	color: #fff;
    background-color: #73aedf;
    border-top-left-radius: 26px;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
    font-size: 24px;
    text-transform: uppercase;
    font-style: italic;
	height: 85px;
	width: 100%;
	text-align: left;
}
#senato-tab{
	color: #fff;
    background-color: #135788;
    border-top-left-radius: 0;
    border-top-right-radius: 26px;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
    font-size: 24px;
    text-transform: uppercase;
    font-style: italic;
	height: 85px;
	width: 100%;
	text-align: left;
}
#tab-camera-senato{ width: 100%; }
#tab-camera-senato .nav-item{ width: 50%; }
.prima{
	font-family: 'PT Serif', serif;
    -webkit-text-stroke: 1px #ffffff;
    color: transparent;
    font-size: 50px;
}
.c_radio {
	display: block;
    position: relative;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    color: #3e3e3e;
    font-size: 24px;
	padding: 0px 0 0px 45px;
	margin-bottom: 20px;
}
.c_radio input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}
.checkmark {
	position: absolute;
    top: 0;
    left: 0;
    height: 37px;
    width: 37px;
    background-color: transparent;
    border: solid 1px #3e3e3e;
}
.c_radio:hover input ~ .checkmark { background-color: transparent; }
#camera .c_radio input:checked ~ .checkmark {
    background-color: transparent;
    border: solid 1px #ffffff;
}
#senato .c_radio input:checked ~ .checkmark {
    background-color: transparent;
    border: solid 1px #ffffff;
}
.checkmark:after {
	content: "";
	position: absolute;
	display: none;
}
.c_radio input:checked ~ .checkmark:after { display: block; }
.c_radio .checkmark:after {
	left: 5px;
    top: 5px;
    width: 25px;
    height: 25px;
}
#camera .c_radio .checkmark:after { background: #ffffff; }
#senato .c_radio .checkmark:after { background: #ffffff; }
.radio_select{
	    margin-top: 40px;
    margin-bottom: 20px;
    padding-bottom: 20px;
}
#camera .radio_select{ border-bottom: 1px solid #135788; }
#senato .radio_select{ border-bottom: 1px solid #73aedf; }
.select2.select2-container { display: inline-block; }
.select2-container--default .select2-selection--single {
    background-color: transparent;
    min-height: 50px;
    border-radius: 37px;
    padding: 12px;
	font-size: 18px;
}
#camera .select2-container--default .select2-selection--single { background-color: #73aedf; }
#senato .select2-container--default .select2-selection--single { background-color: #135788; }
.select2-container--default.select2-container--open.select2-container--below .select2-selection--single, .select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    border-top-left-radius: 25px;
    border-top-right-radius: 25px;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}
#camera .select2-container--default .select2-selection--single { border: 1px solid #135788; }
#senato .select2-container--default .select2-selection--single { border: 1px solid #73aedf; }
#camera .select2-container--default .select2-selection--single .select2-selection__rendered { color: #135788; }
#senato .select2-container--default .select2-selection--single .select2-selection__rendered { color: #73aedf; }
#camera .select2-container--default .select2-selection--single .select2-selection__arrow b { border-color: #135788 transparent transparent transparent; }
#senato .select2-container--default .select2-selection--single .select2-selection__arrow b { border-color: #73aedf transparent transparent transparent; }
#camera .custom-c { border: 1px solid #135788; background-color: #73aedf; color: #135788; }
#senato .custom-c { border: 1px solid #73aedf; background-color: #135788; color: #73aedf; }
.select2-container { width: 100% !important; }
#risposte_candidate select { display: none !important; }
.select2-container--default .select2-selection--single .select2-selection__arrow b {
    border-color: #135788 transparent transparent transparent;
    border-width: 8px 5px 0 5px;
    margin-left: -17px;
    margin-top: 8px;
}
.select2-container--default .select2-results__option--highlighted[aria-selected] { background-color: #d54756; }
body{ overflow-x: hidden; }
.form-control.custom-c {
	min-height: 50px;
    border-radius: 37px;
    padding: 12px 18px;
	font-size: 18px;
}
.label-filtro{
	margin-bottom: 6px;
    margin-left: 10px;
    font-size: 18px;
    font-weight: 400;
}
#contenuto_camera .label-filtro{ color: #135788; }
#contenuto_senato .label-filtro{ color: #73aedf; }
.text_risposte{
	font-size: 20px;
    color: #ffffff;
    font-weight: 300;
    text-align: center;
    margin-top: 30px;
}
.candidato .nominativo{
	font-family: 'PT Serif', serif;
	font-size: 34px;
	font-weight: bold;
	font-stretch: normal;
	font-style: normal;
	line-height: normal;
	letter-spacing: normal;
	color: #135788;
}
.candidato .info{
	font-size: 18px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.46;
    letter-spacing: normal;
    color: #73aedf;
    border-bottom: 1px solid #979797;
    margin-bottom: 6px;
}
.candidato .info:last-of-type{ border-bottom: 0; }
.accordion-candidate.accordion-item .accordion-button{ background: transparent !important; }
.accordion-candidate.accordion-item .accordion-button, .accordion-candidate.accordion-item .accordion-button *{
    font-family: 'PT Serif', serif;
    font-size: 18px;
    font-weight: 600;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #d54756;
}
.accordion-candidate.accordion-item { border: 0; }
.accordion-candidate.accordion-item { border-bottom: 1px solid #d54756; }
.accordion-candidate.accordion-item:last-child { border-bottom: 1px solid #d54756; }
.accordion-button:focus { border-color: transparent; box-shadow: none; }
.accordion-candidate .accordion-body{ 
	background: #f5dac3;
    font-size: 19px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #3e3e3e;
}
.accordion-candidate .accordion-body{ padding: 20px 15px 50px 15px; }
.accordion-candidate.accordion-item .accordion-button { padding: 20px 25px 15px 4px; }
.accordion-candidate .accordion-button::after{ 
	filter: invert(35%) sepia(49%) saturate(1226%) hue-rotate(312deg) brightness(97%) contrast(92%);
	position: relative;
    right: -13px;
}
.accordion-candidate .accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
    filter: invert(35%) sepia(49%) saturate(1226%) hue-rotate(312deg) brightness(97%) contrast(92%);
}
#risposte_candidate .form-check-label{
	padding-top: 10px;
    padding-bottom: 6px;
}
#risposte_candidate .select2.select2-container { margin-bottom: 10px; }


@media (max-width: 768px) {
	.text-center-mobile{ text-align: center !important; }
}

@media (min-width: 576px) {
	
}
@media (min-width: 768px) {
	.titlept{
		font-size: 36px;
		margin-top: 0;
	}
	.btnCta{
		font-size: 17px;
		padding: 8px 50px;
	}
	#menuDesktop{ padding: 25px 0px; }
	.titleheader {
		font-size: 60px;
		line-height: 83px;
	}
	#headerHP{
		height: 965px;
	}
	#vulcano{
		min-height: 500px;
		margin-top: -500px;
		color: #3e3e3e;
		padding-top: 25%;
		font-size: 37px;
		line-height: 47px;
	}
	.tx1{ font-size: 47px; }
	.tx2{ font-size: 26px; }
	.titlePT_1{ font-size: 70px; }
	.titlePT_2{ font-size: 47px; }
	.text1{ font-size: 31px; line-height: 44px; }
	.text2{ font-size: 24px; line-height: 36px; }
	.titlePT_3{ font-size: 31px; }
	.text3{
		font-size: 23px;
		line-height: 37px;
	}
	.domanda, .domanda *{ font-size: 24px; line-height: 38px; }
	#progetto{ padding: 4% 0; }
	#chisiamo{ padding: 4% 0; }
	#arrow-down{ width: 62px; }
	#onde { padding: 20% 0px 10% 0px; }
	#newsletter{ background-size: 74%; }
	footer{  padding: 2% 0; }
	.txtFooter .link{ margin-right: 20px; }
	.txtFooter .link, .txtFooter .fa{ font-size: 16px; }
	.centraLogo{
		display: flex;
		justify-content: center;
		align-items: center;
		margin: 0 auto;
	}
	#risposte_candidate .select2.select2-container { margin-bottom: 25px; }
	.candidato{ padding: 56px 0 59px 36px; }
	.accordion-candidate.accordion-item .accordion-button, .accordion-candidate .accordion-body{ padding: 15px 40px 15px 20px; }
}

@media (min-width: 992px) {
	#headerHP{
		background-image: url(/assets/images/dipinto_1.jpg);
		background-position: center +11%;
		background-size: cover;
		padding-top: 156px;
	}
	.titleheader{
		font-size: 77px;
		line-height: 95px;
		letter-spacing: 2px;
	}
	#vulcano{ padding-top: 18%; }
	#onde{
		padding: 20% 0px 4% 0px; 
		background-position: top center;
		
	}
	#newsletter{ background-size: 50%; padding: 4% 0 8% 0; }
	.centraLogo{
		display: flex;
		justify-content: right;
		align-items: center;
		margin: 0 auto;
	}
	.radio_select{
		position: relative;
		top: -56px;
		padding-left: 5%;
	    margin-top: 0;
		margin-bottom: 0;
		padding-bottom: 0;
	}
	#camera .radio_select, #senato .radio_select { border-bottom: 0; }
	#camera .c_radio input:checked ~ .checkmark {
		background-color: transparent;
		border: solid 1px #73aedf;
	}
	#senato .c_radio input:checked ~ .checkmark {
		background-color: transparent;
		border: solid 1px #135788;
	}
	#camera .c_radio .checkmark:after { background: #73aedf; }
	#senato .c_radio .checkmark:after { background: #135788; }
	#risposte_candidate .select2.select2-container { margin-bottom: 0; }
	.c_radio { margin-bottom: 20px; }
}

@media (min-width: 1200px) {
	#onde{ background-size: 125%; }
}		