/* GENERAL */
/* GENERAL */
body {
	font-family: 'Open Sans', sans-serif;
	font-size: 12px;
}
img {
	height: auto;
    max-width: 100%;
}
.nowrap {
    white-space: nowrap;
}
.clear {
	clear: both;
}
.nomargin {margin: 0 !important;}
.nopadding {padding: 0 !important;}
.nopadding-left {padding-left: 0 !important}
.nopadding-right {padding-right: 0 !important}
.nomargin-left {margin-left: 0 !important}
.nomargin-right {margin-right: 0 !important}
.barra_titolo {
	width: 60px;
	height: 4px;
	background-color: #006EBB;
	display: block;
	margin-top: 10px;
}

/* HEADER */
#header {}
#header .logo {
	float: left;
	margin-top: 15px;
	width: 16.66%;
}
#header .headerright {
	float: right;
	width: 81.33%
}
#header .headerright .top {
    background-color: #ebebeb;
    width: 100%;
    font-size: 11px;
}
#header .headerright .top ul {
	float: left;
	margin: 0;
}
#header .headerright .top ul li {
	display: block;
	float: left;
}
#header .headerright .top ul li a {
	color: #444442;
    font-weight: 700;
    padding: 4px 14px;
    text-transform: none;
    display: block;
    text-decoration: none;
}
#header .headerright .top ul li a:hover {
	color: #ffffff;
	background-color: #006EBB;
}
#header .headerright .top .language {
	float: right;
	background-color: #575652;
	height: 26px;
}
#header .headerright .top .language a {
	background-color: #575652;
	color: #ffffff;
    font-size: 11px;
    font-weight: 700;
    padding: 4px 14px;
    text-transform: uppercase;
    display: block;
}
#header .headerright .top .search {
	float: right;
	background-color: #006EBB;
}
#header .headerright .top .search input.input_ricerca {
	border: none;
	background-color: transparent;
    color: #fff;
    font-size: 11px;
    margin: 0;
    padding: 4px 8px;
    text-transform: uppercase;
    width: 280px;
}
#header .headerright .top .search input.submit_ricerca {
	border: none;
	background-color: transparent;
	background-image: url("../images/lente.png");
	background-repeat: no-repeat;
    margin: 0;
    width: 34px;
    font-size: 11px;
    padding: 4px 0;
}
#header .headerright .bottom .menu-principale {
	float: left;
	width: 50%;
}
#header .headerright .bottom .menu-principale li {
	display: inline-block;
	margin-left: 20%;
}
#header .headerright .bottom .menu-principale li:first-child {
	margin-left: 0;
}
#header .headerright .bottom .menu-principale li a {
	padding: 20px 20px 11px 0;
	text-transform: uppercase;
	text-decoration: none;
	color: #777777;
	display: block;
	border-bottom: 4px solid transparent;
	font-weight: 700;
}
#header .headerright .bottom .menu-principale li a:hover {
	border-bottom-color: #777777;
}
#header .headerright .bottom .menu-principale li a.active {
	border-bottom-color: #006ebb;
    color: #006ebb;
}
#header .headerright .bottom .menu-principale li .submenu {
	display: none;
}
#header .headerright .bottom .menu-principale li:hover .submenu {}
#header .headerright .bottom .menu-principale li .submenu li {}
#header .headerright .bottom .menu-offerte {
	float: right;
	width: 50%;
	text-align: right;
}
#header .headerright .bottom .menu-offerte li {
	display: inline-block;
    font-size: 11px;
    margin: 15px 3px;
    font-weight: 700;
	text-transform: uppercase;
}
#header .headerright .bottom .menu-offerte li a {
	color: #ffffff;
	padding: 6px 16px;
	display: block;
}
#header .headerright .bottom .menu-offerte li a.bg-pink {
	background-color: #E0168C;
}
#header .headerright .bottom .menu-offerte li a.bg-green {
	background-color: #19A786;
}
#header .headerright.mobile .bottom {
	text-align: right;
}

/* FOOTER */
#footer {
	background-color: #575653;
	padding: 40px 0;
	color: #bcbbba;
}
#footer a {
	color: #bcbbba;
	text-decoration: none;
}
#footer .box {
	float: left;
	border-left: 1px solid #6d6c69;
	padding: 0 15px;
}
#footer .box:first-child {
	border-left: none;
}
#footer .box.hera_on_demand,
#footer .box.siti_gruppo,
#footer .box.nostre_sedi  {
	font-size: 12px;
}
#footer .box.hera_on_demand,
#footer .box.aree_interesse,
#footer .box.siti_gruppo {

}
#footer .box .box_title {
	font-size: 16px;
	margin-bottom: 10px;
	color: #FFFFFF;
	text-transform: none;
}
#footer ul {
    margin: 10px 0 0 0;
    list-style-type: none;
    padding: 0;
    text-transform: uppercase;
}
#footer .box_lista_allegati li.li_correlate, .cls-serv_acqua .footer .box_lista_allegati li.li_correlate {
    background-image: url(../images/link_int.png);
}
#footer ul li {
    margin: 0;
    padding: 3px 0;
}
#footer ul img {
    margin-right: 10px;
}
#footer .box_lista_allegati li.li_correlate {
    background-image: url(../images/link_int.png);
    background-position: left center;
    background-repeat: no-repeat;
    padding-left: 25px;
    font-size: 0.9em;
}
#footer .box.aree_interesse ul li {
    border-top: 1px solid #6d6c69;
    font-size: 12px;
    padding: 10px 10px 10px 0;
}
#footer .box.aree_interesse ul li:first-child {
    border-top: none;
}
#footer .row-fluid .footer_menu2 {
    text-transform: uppercase;
    clear: both;
    margin-left: 0;
    font-size: 0.8em;
    margin-top: 1%;
}

#footer .footer_menu2 {
	font-size: 0.8em;
}
#footer .footer_menu2 ul {
    margin: 25px 0 0 0;
    list-style-type: none;
    padding: 0;
}

#footer .footer_menu2 ul > li:first-child {
    border-left: none;
    padding-left: 0;
}

#footer .footer_menu2 ul li {
    display: inline;
    margin: 0;
    padding: 0 10px;
    border-left: 1px solid #000;
}

#footer .footer_menu2 ul li a:link, .footer_menu2 ul li a:visited {
    text-decoration: none;
    color: #8a8987;
    font-weight: normal;
}

/* BREADCRUMBS */
#breadcrumbs {
	margin-top: 30px;
	margin-bottom: 30px;
}
#breadcrumbs span {
	background-image: url("../images/icone/freccia_nera.png");
	background-position: left center;
	background-repeat: no-repeat;
	margin-right: 13px;
    padding-left: 9px;
	font-weight: 700;
	color: #777777;
}
#breadcrumbs span a {
	color: inherit;
	text-decoration: none;
}
#breadcrumbs span.active {
	background-image: url("../images/icone/freccia_blu.png");
	color: #006CBE;
}

/* CONTENUTO */
#contenuto > h2 {
	margin-bottom: 40px;
}
#fasi {
	margin-top: 40px;
}
#fasi .fase {
	margin-bottom: 30px;
	height: 230px;
}
#fasi .fase .icona {
	color: #ffffff;
	text-align: center;
	padding-top: 15px;
	padding-bottom: 15px;
	height: 100%;
}
#fasi .fase.fase1 .icona {
	background-color: #006EBB;
}
#fasi .fase.fase2 .icona {
	background-color: #006EBB;
}
#fasi .fase.fase3 .icona {
	background-color: #006EBB;
}
#fasi .fase.fase4 .icona {
	background-color: #006EBB;
}
#fasi .fase.fase5 .icona {
	background-color: #006EBB;
}
#fasi .fase.fase6 .icona {
	background-color: #006EBB;
}
#fasi .fase.fase7 .icona {
	background-color: #006EBB;
}
#fasi .fase.fase8 .icona {
	background-color: #006EBB;
}
#fasi .fase.fase9 .icona {
	background-color: #006EBB;
}
#fasi .fase .icona i {
	display: block;
	font-size: 200px;
	line-height: 140px;
}
#fasi .fase .icona span {
	display: block;
	font-size: 22px;
    font-weight: 600;
}
#fasi .fase .testo {
	height: 100%;
	padding-top: 30px;
	padding-bottom: 45px;
	position: relative;
	background-color: #F5F5F5;
	font-size: 12px;
}
#fasi .fase .testo > a {
	background-image: url("../images/icone/link_int_blu.png");
    background-position: left center;
    background-repeat: no-repeat;
    bottom: 15px;
    font-size: 14px;
    padding-left: 30px;
    position: absolute;
    text-transform: uppercase;
	
}

/* FASI */
.contenutoFase .intro span {
    background-position: left center;
    background-repeat: no-repeat;
    background-size: 40px auto;
    display: block;
    font-size: 18px;
    padding-bottom: 30px;
    padding-left: 60px;
    padding-top: 30px;
}
/*
.contenutoFase#fase1 .intro span {
	background-image: url("../images/fase1.png");
}
.contenutoFase#fase2 .intro span {
	background-image: url("../images/fase2.png");
	background-size: 50px;
}
.contenutoFase#fase3 .intro span {
	background-image: url("../images/fase2.png");
}
.contenutoFase#fase4 .intro span {
	background-image: url("../images/fase4.png");
}
*/

.contenutoFase .steps {}
.contenutoFase .steps .step {
    background-color: #dadada;
    color: #000000;
    float: left;
    height: 40px;
    line-height: 40px;
    margin: 0 2px;
    position: relative;
    text-align: center;
    width: calc(8% - 4px);
    padding-left: 20px;
    font-size: 11px;
}
.contenutoFase .steps .step.active {
    background-color: #006CBE;
    color: #ffffff;
    width: auto;
    font-size: 11px;
}
.contenutoFase .steps .step:not(.step9)::after {
    border-bottom: 20px inset transparent;
    border-left: 20px solid #dadada;
    border-top: 20px inset transparent;
    content: "";
    height: 0;
    position: absolute;
    right: -20px;
    top: 0;
    width: 0;
    z-index: 2;
}
.contenutoFase .steps .step.active::after {
    border-left-color: #006CBE;
}
.contenutoFase .steps .step:not(.step1)::before {
    border-bottom: 20px inset transparent;
    border-left: 20px solid #fff;
    border-top: 20px inset transparent;
    content: "";
    height: 0;
    left: 0;
    position: absolute;
    top: 0;
    width: 0;
}
.contenutoFase .steps .step::before {
    border-right-color: #dadada;
}
.contenutoFase .steps .step span {
    display: block;
    overflow: hidden;
    height: 100%;
    margin-left: 5px
}
.contenutoFase .formcontainer {
	background-color: #F9F9F9;
	padding: 30px 0;
}
.contenutoFase .messageBox {
	border: 1px solid #006CBE;
	background-color: #EBF5F8;
	padding: 20px 15px;
	margin-bottom: 40px;
}
.contenutoFase .messageBox.error {
	border: 1px solid #ff0000;
	background-color: #F3E4E5;
}
.contenutoFase .messageBox.confirm {
	border: 1px solid #449D44;
	background-color: #DFF0D8;
	display: none;
}
.contenutoFase .messageBox span {
	display: block;
}
.contenutoFase .messageBox span.title {
    color: #006CBE;
    font-size: 18px;
    padding: 12px 0px;
}
.contenutoFase .messageBox.error span.title {
	background-image: url("../images/attenzione.png");
    background-position: left center;
    background-repeat: no-repeat;
    color: #ff0000;
    padding-left: 40px;
}
.contenutoFase .messageBox.error span.message {}

.contenutoFase .formcontainer .fields {
	padding: 0px 30px;
	margin-bottom: 30px;
}
.contenutoFase .formcontainer .fields .checkbox input,
.contenutoFase .formcontainer .fields .radio input {
	margin-left: 0;
}
.contenutoFase .formcontainer .fields .checkbox label,
.contenutoFase .formcontainer .fields .radio label {
	margin-left: 10px;
}
.contenutoFase .formcontainer .fields .text,
.contenutoFase .formcontainer .fields .select {
	margin-bottom: 10px; 
}
.contenutoFase .formcontainer .fields .text input[type="text"],
.contenutoFase .formcontainer .fields .text input[type="file"],
.contenutoFase .formcontainer .fields .text input[type="password"],
.contenutoFase .formcontainer .fields .text input[type="email"],
.contenutoFase .formcontainer .fields .text input[type="number"],
.contenutoFase .formcontainer .fields .text textarea,
.contenutoFase .formcontainer .fields .select select {
	width: 100%;
	border: 1px solid #dadada; 
	padding: 4px;
	background-color: #ffffff;
}
.contenutoFase .formcontainer .fields .select select {
	cursor: pointer;
}
.contenutoFase#fase2 .formcontainer .fields .text input {
	width: 100%;
}
.contenutoFase .formcontainer .fields .text label,
.contenutoFase .formcontainer .fields .select label {
	font-weight: 400;
	display: block;
}
.contenutoFase#fase2 .formcontainer .fields .text label {
	min-width: 140px;
	display: inline-block;
}

.contenutoFase .formcontainer .fields .legend {
	border-bottom: 1px solid #dadada;
    display: block;
    font-size: 16px;
    font-weight: 600;
    margin: 0 -20px 10px;
    padding-bottom: 4px;
    padding-left: 10px;
}
.contenutoFase .formcontainer .fields ul {
	padding-left: 20px;
	list-style: disc;
}

.contenutoFase .formcontainer .actions {
	margin: 0px 10px;
}
.contenutoFase .formcontainer .actions .btn {
	background-color: #E6E6E6;
	color: #000000;
	padding: 10px 55px;
	border-radius: 0;
	margin-bottom: 15px;
	padding-left: 20px;
	padding-right: 20px;
}
.contenutoFase .formcontainer .actions .btn.cancel,
.contenutoFase .formcontainer .actions .btn.privacy {
	float: left;
	margin-right: 10px;
}
.contenutoFase .formcontainer .actions .navigation {
	float: right;
}
.contenutoFase .formcontainer .actions .navigation .prev,
.contenutoFase .formcontainer .actions .navigation .save-state,
.contenutoFase .formcontainer .actions .navigation .upload {
	margin-right: 10px;
}
.contenutoFase .formcontainer .actions .navigation .next {}

.list-unstyled {
	padding-left: 0px !important;
	list-style-type: none !important;
}

#privacy {
	padding-left: 0px;
}
#testo-privacy > .title {
	font-weight: bold;
	font-size: 16px;
}

button[disabled], html input[disabled] {
    cursor: default;
    background-color: #fff !important;
}

.popover-title {
	background-color: red;
	color: #fff;
}

.invalid {
	color: red;
}

input[type="number"] {
	width: 60px;
}

.current-upload {
	font-weight: bold;
}

.accordion-label {
	margin-left: 10px;
	cursor: pointer;
}

.alert-danger,
.alert-info {
	font-size: 16px;
}

.variante_pratica, .scarico_temporaneo {
	width: 80% !important;
}

.punto_scarico, .trattamento {
	border-bottom: 1px solid #dadada;
	margin-bottom: 4px;
}

.destinazioni_uso_guida_body .row {
	border-bottom: 1px solid #eee;
}

#validator_msg {
	z-index:3000;
}

@media (min-width: 768px) {
	#destinazione_uso_guida .modal-dialog {
		width: 800px;
	}
	.modal-body.destinazioni_uso_guida_body {
		margin: 20px;
	}
	.destinazioni_uso_guida_body .row {
		padding: 5px;
	}
}

.modal-gps-iframe {
	position: relative;
	top: 34%;
}
.modal-warning-iframe {
	position: relative;
	top: 88%;
}

.contenutoFase .formcontainer .fields .select.form-group select:disabled {
	background-color: #ebebeb;
	cursor: default;
}

li.li_pdf {
	background-image: url('../images/file_pdf.png');
	background-repeat: no-repeat;
	background-position: left center;
	padding: .2rem;
	padding-left: 1.8rem;
}

li.li_pdf a{
	color: #000;
}

.pl-3 {
	padding-left: 1rem !important;
}

#info-privacy-modal h5{
	font-weight: bold;
}

#save-partial-compilation-password-account {
	padding-left: 30px;
	padding-right: 30px;
}

#save-partial-compilation-message, 
#save-partial-compilation-password-message {
	padding: 10px;
}

@keyframes spinner {
  to {transform: rotate(360deg);}
}
 
.spinner:before {
  content: '';
  box-sizing: border-box;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 30px;
  height: 30px;
  margin-top: -15px;
  margin-left: -15px;
  border-radius: 50%;
  border: 1px solid #ccc;
  border-top-color: #07d;
  animation: spinner .6s linear infinite;
}

.preventivo_costo[disabled] {
	background-color: #E6E6E6 !important;
}