@import "https://fonts.googleapis.com/css?family=Open+Sans:400,300,600,700,800&subset=latin,latin-ext";
@font-face {
    font-family: FontAwesome;
    src: url(../fonts/fontawesome-webfont.woff)
}
html {
    font-size: 62.5%!important;
    overflow-x: hidden;
    background-color: #fff;
    background-attachment: fixed;
    background-position: center center;
    background-size: cover;
    min-height: 100%
}
body {
    background-color: #fff;
    -webkit-background-size: cover;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    background-attachment: fixed;
    font-family: Open Sans, sans-serif!important;
    font-size: 14px;
    color: #173863!important;
    position: relative;
    z-index: 1;
    min-height: 100%
}
img,
table,
table tbody tr,
table tbody tr td {
    border: 0
}
select,
input[type="text"],
input[type="number"],
input[type="password"],
textarea {
    background-color: #fff;
    background-image: none;
    border-radius: 3px;
    box-shadow: none;
    color: #0E1C41;
    display: block;
    font-family: Open Sans, sans-serif;
    font-size: .8em;
    font-weight: 300;
    line-height: 1.6rem;
    margin-bottom: 2rem;
    padding: 1.5rem 2.5rem;
    transition: border-color .3s ease-in-out 0s, box-shadow .15s ease-in-out 0;
    width: 100%
}
nav.menu-area .clearfix .submenu-list {
    min-width: 25rem!important;
    width: -moz-max-content!important
}
@media(max-width: 1023px) {
    nav.menu-area .clearfix .submenu-list {
        width: 100%!important
    }
}
.main-header .menu-area ul > li .main-menu-dropdown .header-col > ul > li > a {
    color: #1B3762;
    font-weight: 900!important;
    text-transform: none;
    margin-bottom: 1rem;
    font-size: 1.4em!important
}
.main-header .menu-area ul > li .main-menu-dropdown .header-col > ul > li > a:hover {
    color: #142847!important;
    text-decoration: underline
}
.main-header .menu-area ul > li.mega-menu-centred > a:before {
    border-style: none
}
.main-header .menu-area ul > li .main-menu-dropdown.big-mega-menu {
    padding-top: 0;
    margin-top: 0
}
@media (min-width: 1030px) {
    .main-header .menu-area ul li:hover > a {
        background-color: #86C4FF;
        text-decoration: none;
        color: #173863
    }
}
@media(max-width: 1030px) {
    .main-header .menu-area.modena {
        background-color: #FFC100!important
    }
    .main-header .menu-area.reggio {
        background-color: #D52540!important
    }
    .main-header .menu-area.piacenza {
        background-color: #81A9EC!important
    }
    .main-header .menu-area > ul li:hover {
        background: transparent
    }
    .main-header .menu-area ul > li > a:hover {
        background-color: transparent
    }
    .main-header .menu-area.modena ul > li > a {
        color: #112851!important
    }
    .main-header .menu-area.reggio ul > li > a {
        color: #FFF!important
    }
    .main-header .menu-area.piacenza ul > li > a {
        color: #FFF!important
    }
    .main-header .menu-area.modena > ul li a {
        border-bottom: 1px #112851 solid
    }
    .main-header .menu-area.reggio > ul li a {
        border-bottom: 1px #FFF solid
    }
    .main-header .menu-area.piacenza > ul li a {
        border-bottom: 1px #FFF solid
    }
    .main-header .menu-area > ul li.opened a {
        border-bottom: 0
    }
    .main-header .menu-area.modena > ul li.opened > ul {
        border-bottom: 1px #112851 solid
    }
    .main-header .menu-area.reggio > ul li.opened > ul {
        border-bottom: 1px #FFF solid
    }
    .main-header .menu-area.piacenza > ul li.opened > ul {
        border-bottom: 1px #FFF solid
    }
    .main-header .menu-area.modena ul > li .main-menu-dropdown.light .header-col > ul > li > a {
        color: #323b50!important
    }
    .main-header .menu-area.reggio ul > li .main-menu-dropdown.light .header-col > ul > li > a {
        color: #FFF!important
    }
    .main-header .menu-area.piacenza ul > li .main-menu-dropdown.light .header-col > ul > li > a {
        color: #FFF!important
    }
    .main-header .menu-area.modena ul > li .main-menu-dropdown.light .mega-menu-container a {
        color: #173863!important
    }
    .main-header .menu-area.reggio ul > li .main-menu-dropdown.light .mega-menu-container a {
        color: #FFF!important
    }
    .main-header .menu-area.piacenza ul > li .main-menu-dropdown.light .mega-menu-container a {
        color: #FFF!important
    }
    .main-header .menu-area.modena ul li.opened .main-menu-dropdown.big-mega-menu {
        border-bottom: 1px #112851 solid
    }
    .main-header .menu-area.reggio ul li.opened .main-menu-dropdown.big-mega-menu {
        border-bottom: 1px #FFF solid
    }
    .main-header .menu-area.piacenza ul li.opened .main-menu-dropdown.big-mega-menu {
        border-bottom: 1px #FFF solid
    }
}
.padding_top1 {
    padding-top: 1rem
}
.padding_top2 {
    padding-top: 2rem
}
.padding_top3 {
    padding-top: 3rem
}
.padding_top4 {
    padding-top: 4rem
}
.padding_top5 {
    padding-top: 5rem
}
.padding_top6 {
    padding-top: 6rem
}
.padding_top7 {
    padding-top: 7rem
}
.padding_top8 {
    padding-top: 8rem
}
.padding_bottom1 {
    padding-bottom: 1rem
}
.padding_bottom2 {
    padding-bottom: 2rem
}
.padding_bottom3 {
    padding-bottom: 3rem
}
.padding_bottom4 {
    padding-bottom: 4rem
}
.padding_bottom5 {
    padding-bottom: 5rem
}
.padding_bottom6 {
    padding-bottom: 6rem
}
.padding_bottom7 {
    padding-bottom: 7rem
}
.padding_bottom8 {
    padding-bottom: 8rem
}

.v-center{
    display: inline-block;
    vertical-align: middle;
    float: none;
    margin: 15px -15px;
}

@media only screen and (max-width: 766px){
    .v-center {
        display: inline;
    }
}

#footer {
    float: left;
    min-height: 150px;
    height: auto;
    width: 100%;
    padding-top: 2rem;
    padding-bottom: 30px;
    margin-bottom: 0!important;
    background: #112851;
    text-align: center
}
.footer_box {
    clear: both
}
#barra_briciole_e_titolo {
    float: left;
    min-height: 80px;
    height: auto;
    width: 100%;
    padding-top: 20px;
    padding-bottom: 45px;
    background: #D0DFF3;
    text-align: center
}
#contenuto_briciole_e_titolo {
    background: #ffc0cb
}
.breadcrumbs {
    color: #0D6BBB;
    margin: 1rem 0;
    font-size: .9em
}
.sx {
    float: left
}
.dx {
    float: right
}
.centrata {
    text-align: center
}
.txt_sx {
    text-align: left
}
.txt_dx {
    text-align: right
}
.box_100_no_float {
    width: 100%;
    margin-bottom: 10px;
    float: left;
    clear: both
}
.box_padding {
    padding: 10px
}
.clear {
    clear: both
}
.margin_bottom_xs {
    margin-bottom: 10px !important;
}
.margin_bottom_s {
    margin-bottom: 30px
}
.margin_bottom_m {
    margin-bottom: 60px
}
.margin_top_m {
    margin-top: 80px
}
.margin_top_pag_interna {
    margin-top: 70px
}
.margin_bottom_pag_interna {
    margin-bottom: 100px
}
.box_news_home_banner {
    width: 40%;
    margin-right: 10px;
    margin-bottom: 10px;
    float: left
}
.box_news_home_testo {
    width: 100%
}
.box_news_home_leggi_tutto,
.box_news_home_leggi_tutto_interno {
    float: left;
    width: 100%;
    text-align: left;
    position: relative
}
.box_news_home_leggi_tutto_interno {
    position: absolute;
    bottom: 10px
}
.box_news_home_banner_interno {
    float: left;
    width: 30%;
    margin-bottom: 10px;
    height: 132px;
    background-position: left top!important
}
.box_news_home_testo_interno {
    float: right;
    width: 68%;
    padding-bottom: 30px
}
.news_home_con_video {
	width: 100%;
	float: left;
	clear: both;
	margin-bottom: 15px;
}
.news_home_con_video > .contenitore_icona {
	width: 10%;
	margin-right: 2%;
	float: left;
}
.news_home_con_video > .contenitore_news {
	width: 88%;
	float: right;
}
.news_home_con_video > .contenitore_news > .contenitore_data_tipo {
	clear: both;
	width: 100%;
}
.news_home_con_video > .contenitore_news > .contenitore_titolo {
	width: 100%;
}
.news_home_con_video > .contenitore_news > .contenitore_titolo .titolo_news_home {
	font-size: 1.2em;
	line-height: 1.3em;
}

.box_news_pag_interna {
    position: relative;
    float: left;
    width: 45%;
    height: 235px;
    margin: 0 5% 6% 0;
    overflow: hidden
}
section.section_briciole {
    height: 4.5rem;
    background: #D0DFF3
}
section.section_titolo_pagina {
    height: 7rem;
    background: #D0DFF3
}
@media(max-width: 1023px) {
    .box_100_no_float {
        width: 100%;
        margin-bottom: 5px
    }
    .box_news_home_banner {
        float: left;
        width: 22%
    }
    .box_news_home_testo {
        float: left;
        width: 78%
    }
    .box_news_home_leggi_tutto {
        float: left;
        width: 100%;
        text-align: left;
        position: relative;
        margin-bottom: 20px
    }
    .box_news_pag_interna {
        float: left;
        width: 100%;
        margin: 0
    }
}
@media(max-width: 767px) {
    .box_news_home_banner {
        float: left
    }
    .box_news_home_testo {
        float: left;
        width: 95%;
        margin-left: 2%
    }
    .box_news_home_leggi_tutto {
        float: left;
        width: 100%;
        text-align: left;
        position: relative;
        margin-bottom: 20px
    }
    .box_news_pag_interna {
        float: left;
        width: 100%;
        margin: 0
    }
	.news_home_con_video > .contenitore_icona {
		width: 20%;
	}
	.news_home_con_video > .contenitore_news {
		width: 78%;
	}
}
.box_news_home {
    padding-bottom: 20px;
    margin-top: 0!important
}
#box_overlay_slider_home {
    position: absolute;
    top: 15%;
    left: 12%;
    width: 76%;
    text-align: center;
    z-index: 2
}
.box_overlay_slider_home.logo {
    margin-bottom: 10%
}
.box_overlay_slider_home.box_bacino {
    width: 293px
}
@media(max-width: 1400px) {
    #box_overlay_slider_home {
        position: absolute;
        top: 5%;
        left: 10%;
        width: 80%;
        text-align: center;
        z-index: 2
    }
    .box_overlay_slider_home.logo {
        margin-bottom: 6%;
		width: 65%;
    }
    .box_overlay_slider_home.box_bacino {
        width: 220px
    }
    .md4_custom {
        float: left;
        width: 33.33%
    }
}
@media(max-width: 1023px) {
    #box_overlay_slider_home {
        position: absolute;
        top: 3%;
        left: 10%;
        width: 80%;
        text-align: center;
        z-index: 2
    }
    .box_overlay_slider_home.logo {
        margin-bottom: 8%;
		width: 70%;
    }
    .box_overlay_slider_home.box_bacino {
        width: 180px
    }
    .md4_custom {
        float: left;
        width: 33.33%
    }
}
@media(max-width: 767px) {
    #box_overlay_slider_home {
        position: absolute;
        top: 3%;
        left: 10%;
        width: 80%;
        text-align: center;
        z-index: 2
    }
    .box_overlay_slider_home.logo {
        margin-bottom: 4%;
		width: 70%;
    }
    .box_overlay_slider_home.box_bacino {
        width: 110px
    }
    .md4_custom {
        float: left;
        width: 33.33%
    }
}
.bg_bianco {
    background: #FFF
}
.bg_azzurro {
    background: #D0DFF3
}
.box_titolo {
    clear: both;
    margin: 15px 0 25px!important
}
@media(max-width: 1024px) {
    .box_titolo {
        text-align: center
    }
}
@media(max-width: 767px) {
    .box_titolo {
        text-align: center
    }
}
.box_link_leggi_tutto {
    position: relative;
    width: auto;
    float: left
}
.barra_blu,
.barra_blu_interno {
    width: 0;
    height: 12px;
    border-bottom: 1px solid #173863
}
.barra_blu_interno {
    width: 100%
}
@media(max-width: 1024px) {
    .barra_blu {
        width: 100%;
        height: 12px;
        border-bottom: 1px solid #173863
    }
    .box_link_leggi_tutto {
        position: absolute;
        width: auto;
        padding-left: 8px;
        right: 0
    }
}
@media(max-width: 767px) {
    .barra_blu {
        width: 100%;
        height: 12px;
        border-bottom: 1px solid #173863
    }
    .box_link_leggi_tutto {
        position: absolute;
        width: auto;
        padding-left: 8px;
        right: 0
    }
}
a.riservato_personale {
    color: #337ab7!important
}
a.riservato_personale:hover {
    color: #23527c!important;
    text-decoration: underline
}
.modal h3 {
    font-weight: 400!important;
    color: #173863;
    padding: 0
}
.tooltip > .tooltip-inner {
    background-color: red
}
.tooltip.top > .tooltip-arrow {
    border-top-color: red!important
}
.tooltip.right > .tooltip-arrow {
    border-right-color: red!important
}
.tooltip.bottom > .tooltip-arrow {
    border-bottom-color: red!important
}
.tooltip.left > .tooltip-arrow {
    border-left-color: red!important
}
.panel-group {
    border-radius: 0!important;
    margin-bottom: 1.5rem
}
.panel-group .panel {
    border-radius: 0;
    box-shadow: none;
    margin-bottom: 0;
    margin-top: 0!important;
    padding: 0;
    border: 0!important;
    border-bottom: 1px solid #f5f5f5!important
}
.panel-group .panel-heading {
    border: 1px solid #8C9AB0;
    border-radius: 0!important;
    background: none!important;
    padding: 0
}
.panel-group .panel-heading a {
    display: block;
    padding: 15px;
    text-decoration: none;
    position: relative;
    background: none!important
}
.panel-group .panel-heading a.collapsed {
    color: inherit
}
.panel-group .panel-heading .panel-title {
    font-size: 1em;
    margin-bottom: 0;
    margin-top: 0
}
.panel-group .panel-heading h4 {
    padding: 0
}
.panel-group .panel-heading h4 a {
    display: block;
    font-size: 1em;
    font-weight: 700;
    padding: 2rem 2.5rem;
    text-transform: uppercase
}
.panel-group .panel-heading h4 a:before {
    content: none!important
}
.panel-group .panel-heading h4 a:after {
    font-family: 'FontAwesome';
    content: '\f056';
    position: absolute;
    right: 20px;
    top: 5px;
    font-size: 30px;
    color: #1268B6
}
.panel-group .panel-heading h4 a.collapsed:after {
    font-family: 'FontAwesome';
    content: '\f055';
    color: #173863
}
.panel-group .panel-body {
    background: rgba(209, 223, 243, 0.5)!important;
    padding: 15px
}
.select2-container {
    width: 100%!important
}
.select2-container .select2-selection--single {
    min-height: 41px;
    border-radius: 40px;
    border: 1px solid #95989A;
    padding: 5px 55px 5px 15px
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
    font-family: 'Open Sans', sans-serif;
    font-size: 1.2em;
    line-height: 29px
}
.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-radius: 25px 25px 0 0
}
.select2-selection__arrow {
    top: 13px!important
}
.tabella_allegati {
    width: 100%
}
.tabella_allegati tbody tr {
    margin-bottom: 10px
}
.tabella_allegati tbody tr td {
    padding: 0;
    vertical-align: bottom
}
.tabella_allegati tbody tr td.cella_allegato_con_padding {
    padding-bottom: 10px
}
.tabella_allegati tbody tr td:first-child {
    width: 52px
}
ul.no-style {
    list-style-type: none
}
.no-padding {
    padding: 0!important
}
.no-margin {
    margin: 0!important
}
.no-lateral-margin {
    margin-left: 0!important;
    margin-right: 0!important
}
.full-height {
    height: 100%!important
}
.full-width {
    width: 100%!important
}
.half-width {
    width: 50%!important
}
.not-clickable {
    cursor: default!important;
    text-decoration: none!important
}
.not-clickable:hover {
    cursor: default!important;
    text-decoration: none!important
}
.padding-10 {
    padding: 10px
}
.mano {
    cursor: pointer
}
.clip-content {
    overflow: hidden
}
.inline-block {
    display: inline-block
}
a.no-underline {
    text-decoration: none
}
a.no-underline:hover {
    text-decoration: none
}
li.disc-menu {
    padding-left: 1.8rem!important;
    background-image: url(../images/list-dot.png)!important;
    background-position: .7rem!important;
    background-repeat: no-repeat!important
}
.row-eq-height {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap
}
table.linee {
    background-color: #FFF;
    border: solid #112851 2px;
    border-collapse: collapse;
    color: #112851
}
table.linee tbody tr td {
    padding: 5px;
    border: solid #112851 2px
}
table.linee thead tr th {
    padding: 5px;
    color: #fff;
    background-color: #112851;
    border: solid #fff 2px;
    border-bottom: 0;
    border-top: 0
}
table.linee thead tr th.center {
    text-align: center
}
table.linee tr:last-child td {
    border-bottom: 0
}
table.linee tr td:first-child,
table.linee tr th:first-child {
    border-left: 0
}
table.linee tr td:last-child,
table.linee tr th:last-child {
    border-right: 0
}
table.linee tr:nth-child(even) td {
    background-color: #D0DFF3
}
.sitemap-title {
    background-color: #173863;
    font-size: 22px;
    font-weight: 700;
    color: #fff;
    padding: .3rem 1.3rem;
    border-radius: 1.4rem;
    margin-bottom: .6rem;
    margin-left: 15px;
    margin-right: 15px
}
.sitemap-title:hover {
    background-color: #214f8c;
    text-decoration: none;
    color: #fff
}
.sitemap-title:focus {
    background-color: #214f8c;
    text-decoration: none;
    color: #fff
}
.sitemap-title.disabled:hover {
    background-color: #173863;
    text-decoration: none;
    cursor: default;
    color: #fff
}
.sitemap-subtitle {
    background-color: #D0DFF3;
    font-size: 22px;
    font-weight: 700;
    color: #173863;
    padding: .3rem 1.3rem;
    border-radius: 1.4rem;
    margin-bottom: .6rem;
    margin-left: 15px;
    margin-right: 15px
}
.sitemap-subtitle:hover {
    background-color: #bcd1ee;
    text-decoration: none;
    color: #173863
}
.sitemap-subtitle:focus {
    background-color: #bcd1ee;
    text-decoration: none;
    color: #173863
}
.sitemap-subtitle.disabled:hover {
    background-color: #D0DFF3;
    text-decoration: none;
    cursor: default;
    color: #173863
}
ul.sitemap {
    margin-left: 15px
}
ul.sitemap li {
    padding: .4rem 0
}
ul.sitemap li a {
    color: #173863;
    font-size: 1.2em
}
ul.sitemap li a:hover {
    text-decoration: none;
    color: #255ba1
}
ul.sitemap li a:focus {
    text-decoration: none;
    color: #255ba1
}
ul.sitemap li a.disabled:hover {
    text-decoration: none;
    cursor: default;
    color: #173863
}
ul.newsletter li {
    padding: 7px 0 7px 10px;
    color: #173863;
    font-size: 1.3em;
    font-weight: 600
}
.container-newsletter {
    margin-left: 15px;
    margin-right: 15px;
    background-color: #C5D6F1;
    border-radius: 1.5rem;
    padding: 1.8rem;
    font-size: 1em;
    color: #0E1C41
}
@media (max-width: 992px) {
    .container-newsletter {
        margin-left: 15px !important;
        margin-right: 15px !important;
        margin-bottom: 15px !important;
    }
}
.container-newsletter .title {
    color: #0D47A1;
    font-size: 1.8em;
    font-weight: 600;
    text-align: center
}
.container-newsletter label {
    font-size: 1.5em;
    font-weight: 600;
    color: #0E1C41
}
.container-newsletter label.center {
    width: 100%;
    text-align: center
}
.container-newsletter label.subtitle {
    font-size: 1.2em
}
.container-newsletter input[type=radio] {
    height: 1.2em;
    width: 1.2em;
    line-height: inherit
}
.container-newsletter input[type=text],
.container-newsletter input[type=password],
.container-newsletter input[type=number],
.container-newsletter input[type=tel] {
    border: 1px #95989A solid;
    border-radius: 2.5rem;
    font-size: 1.1em;
    padding: .5em 1em;
    line-height: inherit
}
.container-newsletter select {
    border: 1px #95989A solid;
    border-radius: 2.5rem;
    font-size: 1.1em;
    padding: .5em 1em;
    line-height: inherit
}
.container-newsletter input[type=checkbox] {
    height: 1.2em;
    width: 1.2em;
    line-height: inherit
}
button.newsletter {
    border: 1px #95989A solid;
    border-radius: 2.5rem;
    background-color: #00A0E0;
    color: #FFF;
    font-size: 1.8em;
    text-align: center;
    font-weight: 600;
    width: 100%;
    height: auto;
    padding: .65rem
}
button.newsletter:hover {
    background-color: #008ec7
}
button.newsletter img {
    height: 3.5rem;
    margin: auto;
    float: right
}
.news div.col-md-6 {
    display: flex
}
.news .leggi-tutto {
    float: right;
    padding-right: 0;
    padding-left: 1.3rem;
    background-color: #fff
}
ul.news > li > div {
    float: left;
    padding: 1.5rem 1.5rem .5rem;
    overflow: hidden
}
@media (max-width: 992px) {
    ul.news > li > div {
        padding: 0;
        padding-left: 1.5rem
    }
    ul.news li div.content-right {
        padding-right: 0!important
    }
}
ul.news li div div.image-news {
    max-height: 17rem;
    height: 17rem;
    width: 36%;
    display: inline-block;
    background-size: contain!important
}
@media (max-width: 380px) {
    ul.news li div div.image-news {
        max-height: 13rem
    }
}
ul.news li div.content-right {
    float: right;
    width: 64%;
    padding: 2rem;
    padding-bottom: 0
}
ul.news li div.content-right span.date-title {
    color: #1269B7;
    font-size: 1em
}
ul.news li div.content-right span.bacini-title {
    color: #DC0005;
    font-size: 1em
}
ul.news li div.content-right span.title {
    color: #1268B6;
    font-size: 1.3em;
    font-weight: 700;
    line-height: 2rem
}
ul.news li div.content-right span.title:hover {
    color: #0d4d88
}
ul.news li div.content-right span.descrizione {
    color: #0E1C41;
    font-size: 1.1em;
    line-height: 1rem
}
ul.news a {
    text-decoration: none;
    color: #0E1C41
}
ul.news a:hover {
    text-decoration: none;
    color: #437899
}
.news span.date-title {
    color: #1269B7;
    font-size: 1.1em
}
.news span.bacini-title {
    color: #DC0005;
    font-size: 1.1em
}
.news span.title {
    color: #1268B6;
    font-size: 2em;
    font-weight: 700;
    line-height: 1em
}
.news div.descrizione {
    padding: 4rem 2rem;
    font-size: 1.1em;
    color: #0E1C41
}
.news div.container-date-title {
    padding-top: 1rem;
    padding-left: 2rem;
    padding-right: 2rem
}
.news div.container-title {
    padding-top: 2rem;
    padding-left: 2rem;
    padding-right: 2rem;
    display: flex
}
.news div.allegati {
    padding-left: 2rem;
    padding-right: 2rem;
    padding-bottom: 4rem
}
.news span.file-name {
    padding-left: 1rem;
    display: table-cell;
    vertical-align: bottom;
    font-size: .9em;
    font-weight: 600
}
.news a.box-file {
    width: 100%;
    color: #112851;
    padding-bottom: 1.5rem
}
.news a.box-file:hover {
    text-decoration: none;
    color: #1e4790
}
.news a.box-file:focus {
    text-decoration: none;
    color: #1e4790
}
.news div.photogallery {
    padding-left: 2rem;
    padding-right: 2rem
}
.news div.photogallery-title {
    color: #004C92;
    font-size: 1.1em;
    padding-bottom: 3rem
}
.news div.image-photogallery {
    margin-left: -15px;
    padding-right: 30px;
    padding-bottom: 15px
}
label.error {
    color: red;
    font-size: 1.2em;
    margin-top: -2rem
}
.error_empty {
     color: #ce0000 !important;
     font-size: 1.2em;
 }
.blue-line {
    background: url(../images/blu_line.png);
    background-size: 1px;
    background-repeat: repeat-x;
    background-position: center
}
.page_navigation {
    display: table;
    padding-top: 1rem;
    padding-bottom: 1.5rem;
    margin: 0 auto
}
.page_navigation a {
    padding: .7rem
}
.page_navigation a.page_link {
    padding: .4rem;
    color: #2d6da3;
    font-weight: 600;
    font-size: 1.1em
}
@media(max-width: 767px) {
    .page_navigation a.page_link {
        display: inline-block!important
    }
}
.page_navigation a.page_link:hover {
    text-decoration: none
}
.page_navigation a.page_link:focus {
    text-decoration: none
}
.page_navigation a.page_link.active_page {
    color: #fff;
    background: url(../images/bus.png) no-repeat center;
    background-size: contain
}
.box-cerca-comunicato {
    background-color: #0D47A1;
    width: 100%;
    border-radius: 1rem;
    padding: 1rem;
    text-align: center
}
.box-cerca-comunicato img.center {
    display: table;
    margin: 0 auto
}
.box-cerca-comunicato span.cerca-title {
    color: #C5D6F1;
    font-size: 1.2em;
    font-weight: 700
}
.box-cerca-comunicato label {
    color: #fff;
    font-size: 1.1em;
    font-weight: 400
}
.box-cerca-comunicato input[type="text"] {
    height: 2.5rem;
    border-radius: 0;
    padding: 0;
    font-weight: 600
}
.box-cerca-comunicato .btn-ricerca {
    background-color: #C5D6F1;
    color: #0D47A1;
    font-weight: 700;
    width: 100%;
    border: 0;
    font-size: 1.1em;
    padding: .4rem;
    position: relative;
    margin-top: 1.2rem;
    margin-bottom: 1rem
}
.box-cerca-comunicato .btn-ricerca img {
    position: absolute;
    right: .4rem;
    height: 2rem
}
.box-cerca-comunicato .btn-azzera {
    background-color: transparent;
    color: #fff;
    font-weight: 700;
    width: 100%;
    border: 0;
    padding: .4rem;
    font-size: 1.1em;
    position: relative
}
.box-cerca-comunicato .btn-azzera img {
    position: absolute;
    right: .4rem;
    height: 2rem
}
div.area-giornalisti {
    width: 100%;
    background-color: #C5D6F1;
    color: #0D47A1;
    padding: 1rem;
    border-radius: 1rem;
    margin-top: 1.5rem;
    text-align: center;
    font-size: 1.3em;
    font-weight: 700
}
div.area-giornalisti img {
    margin-bottom: .6rem
}
div.area-giornalisti a {
    color: #0D47A1;
    width: 100%;
    height: 100%
}
div.area-giornalisti a:hover,
div.area-giornalisti a:focus {
    text-decoration: none
}
.contatti-ufficio-stampa {
    padding: 1rem;
    margin-top: 1.2rem;
    color: #0D47A1;
    font-size: 1.1em
}
.contatti-ufficio-stampa span.persona {
    font-weight: 700;
    font-size: 1.3em
}
.box-user {
    background-color: #0D47A1;
    width: 100%;
    border-radius: 1rem;
    padding: 1rem;
    text-align: center;
    margin-bottom: 1rem;
    font-size: 1.2em;
    color: #C5D6F1;
    font-weight: 700
}
.box-user div.user-name {
    color: #0D47A1;
    background-color: #fff;
    border: 1.5px #d4d4d4 solid;
    width: 100%;
    font-weight: 400;
    font-size: 1em;
    margin-bottom: 1rem;
    margin-top: 1rem
}
div.logout {
    width: 100%;
    background-color: #C5D6F1;
    color: #0D47A1;
    padding: 1rem;
    border-radius: 1rem;
    margin-top: 1.5rem;
    text-align: center;
    font-size: 1.3em;
    font-weight: 700;
    margin-bottom: 2rem
}
div.logout img {
    margin-bottom: .6rem
}
div.logout a {
    color: #0D47A1;
    width: 100%;
    height: 100%
}
div.logout a:hover,
div.logout a:focus {
    text-decoration: none
}
.home-site {
    text-align: center;
    margin-bottom: 2rem
}
@media (min-width: 992px) {
    .home-site .page {
        width: 19%
    }
}
.home-site .page {
    float: none;
    display: inline-block;
    padding: 1rem;
    font-size: 1.36em;
    font-weight: 600;
    color: #fff
}
.home-site .page .bottom-line {
    background: #72B4FF;
    height: 1px;
    width: 90%;
    margin: 0 auto;
    margin-top: .9rem
}
@media (max-width: 991px) {
    .home-site .page {
        display: block;
        padding: 1rem 1.6rem;
        font-size: 1.3em
    }
    .home-site .page .bottom-line {
        width: 100%;
        margin-top: .4rem
    }
}
.home-site .page a {
    color: #fff
}
.home-site .page a:hover,
.home-site .page a:focus {
    text-decoration: none
}
.footer-sitemap {
    margin-bottom: 5rem
}
.footer-sitemap .section-title {
    background: #72B4FF;
    color: #102045;
    font-size: 1.1em;
    font-weight: 700;
    padding: .5rem;
    margin-top: 2rem
}
.footer-sitemap ul.sections {
    padding: 0;
    color: #efefef
}
.footer-sitemap ul.sections li {
    list-style-type: none;
    border-bottom: 1px #405273 solid;
    padding: .5rem 1rem;
    text-align: left;
    margin-top: 1.5rem
}
.footer-sitemap ul.sections ul {
    padding: 0;
    margin-top: 1.5rem;
    margin-bottom: .5rem
}
.footer-sitemap ul.sections ul li {
    list-style-image: url(../images/list-type-footer-sitemap.png);
    list-style-position: inside;
    margin-top: 0;
    border-bottom: 0;
    padding: .2rem 1rem
}
.footer-sitemap a {
    color: #efefef
}
.footer-sitemap a:hover,
.footer-sitemap a:focus {
    text-decoration: none
}
.info-utente-loggato {
    float: right;
    text-align: right;
    margin-top: -90px;
    margin-right: 20px;
    width: auto;
}
.change-size {
    float: right;
    /*margin-top: -77px;*/
    margin-top: -67px;
    margin-right: 20px
}
@media(max-width: 1030px) {
    .change-size {
        display: none
    }
}
@media(max-width: 767px) {
    img.btn-bacino {
        width: 100%
    }
}
@media(max-width: 991px) {
    p img {
        display: block;
        max-width: 100%;
        max-height: 100%;
        width: auto!important;
        height: auto!important
    }
}
.modal-dialog.loading {
    width: auto;
    margin: 0 auto;
    display: table
}
.modal-content.loading {
    border-radius: 50%
}
.loader {
    position: relative;
    width: 75px;
    height: 75px;
    margin: auto;
    margin-top: 7px;
    margin-left: 7px
}
.loader .circle {
    position: absolute;
    width: 70px;
    height: 70px;
    opacity: 0;
    transform: rotate(225deg);
    animation-iteration-count: infinite;
    animation-name: orbit;
    animation-duration: 5.5s
}
.loader .circle:after {
    content: '';
    position: absolute;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #0D47A1
}
.loader .circle:nth-child(2) {
    animation-delay: 240ms
}
.loader .circle:nth-child(3) {
    animation-delay: 480ms
}
.loader .circle:nth-child(4) {
    animation-delay: 720ms
}
.loader .circle:nth-child(5) {
    animation-delay: 960ms
}
@keyframes orbit {
    0% {
        transform: rotate(225deg);
        opacity: 1;
        animation-timing-function: ease-out
    }
    7% {
        transform: rotate(345deg);
        animation-timing-function: linear
    }
    30% {
        transform: rotate(455deg);
        animation-timing-function: ease-in-out
    }
    39% {
        transform: rotate(690deg);
        animation-timing-function: linear
    }
    70% {
        transform: rotate(815deg);
        opacity: 1;
        animation-timing-function: ease-out
    }
    75% {
        transform: rotate(945deg);
        animation-timing-function: ease-out
    }
    76% {
        transform: rotate(945deg);
        opacity: 0
    }
    100% {
        transform: rotate(945deg);
        opacity: 0
    }
}
label.areariservata_login {
    float: left
}
div.areariservata_login {
    margin-left: 2rem;
    display: inline-block
}
@media (max-width: 377px) {
    label.areariservata_login {
        text-align: center;
        width: 100%
    }
    div.areariservata_login {
        margin: 0 auto;
        display: block
    }
}

/* --- TARIFFE ACQUISTA ONLINE --- */
.btn-acquista-online {
    padding: 1.0rem;
    color: white;
    font-size: 1.4em;
    margin-top: 2.5rem;
}

.btn-acquista-online div {
    margin-top: 1.0rem;
}

.btn-acquista-online img {
    margin-top: 1.0rem;
}

.btn-acquista-online.ricariche {
    background: #a7d8d8;
    background-image: -moz-linear-gradient(left, #99d2d2 0%, #a7d8d8 100%);
    background-image: -o-linear-gradient(left, #99d2d2 0%, #a7d8d8 100%);
    background-image: -webkit-gradient(linear, left, right, color-stop(0, #99d2d2), color-stop(1, #a7d8d8));
    background-image: -webkit-linear-gradient(left, #99d2d2 0%, #a7d8d8 100%);
    background-image: linear-gradient(left, #99d2d2 0%, #a7d8d8 100%);
}

.btn-acquista-online.paga-sanzioni {
    background: #a28eb9;
    background-image: -moz-linear-gradient(left, #9882b0 0%, #a28eb9 100%);
    background-image: -o-linear-gradient(left, #9882b0 0%, #a28eb9 100%);
    background-image: -webkit-gradient(linear, left, right, color-stop(0, #9882b0), color-stop(1, #a28eb9));
    background-image: -webkit-linear-gradient(left, #9882b0 0%, #a28eb9 100%);
    background-image: linear-gradient(left, #9882b0 0%, #a28eb9 100%);
}

.btn-acquista-online.richiedi-tessera {
    background: #649cc6;
    background-image: -moz-linear-gradient(left, #5995c1 0%, #649cc6 100%);
    background-image: -o-linear-gradient(left, #5995c1 0%, #649cc6 100%);
    background-image: -webkit-gradient(linear, left, right, color-stop(0, #5995c1), color-stop(1, #649cc6));
    background-image: -webkit-linear-gradient(left, #5995c1 0%, #649cc6 100%);
    background-image: linear-gradient(left, #5995c1 0%, #649cc6 100%);
}

.btn-acquista-online.paga-tessera {
    background: #75ca73;
    background-image: -moz-linear-gradient(left, #66c464 0%, #75ca73 100%);
    background-image: -o-linear-gradient(left, #66c464 0%, #75ca73 100%);
    background-image: -webkit-gradient(linear, left, right, color-stop(0, #66c464), color-stop(1, #75ca73));
    background-image: -webkit-linear-gradient(left, #66c464 0%, #75ca73 100%);
    background-image: linear-gradient(left, #66c464 0%, #75ca73 100%);
}

.btn-acquista-online.consulta-tessera {
    background: #dbb5c5;
    background-image: -moz-linear-gradient(left, #cc97ad 0%, #dbb5c5 100%);
    background-image: -o-linear-gradient(left, #cc97ad 0%, #dbb5c5 100%);
    background-image: -webkit-gradient(linear, left, right, color-stop(0, #cc97ad), color-stop(1, #dbb5c5));
    background-image: -webkit-linear-gradient(left, #cc97ad 0%, #dbb5c5 100%);
    background-image: linear-gradient(left, #cc97ad 0%, #dbb5c5 100%);
}

/*form styles*/
#msform {
	margin: 50px auto;
	text-align: center;
	position: relative;
}
#msform fieldset {
	padding: 20px 30px;
	border: 0;
	box-sizing: border-box;
	width: 100%;
	
	/*stacking fieldsets above each other*/
	position: relative;
}
/*Hide all except first fieldset*/
#msform fieldset:not(:first-of-type) {
	display: none;
}
/*inputs*/
#msform input, #msform textarea {
	/*padding: 15px;
	margin-bottom: 10px;
	box-sizing: border-box;
	color: #2C3E50;
	font-size: 13px;*/
}
/*errors*/
form#msform label.error { display: none; }	
/*buttons*/
#msform .action-button {
	/*width: 100px;
	background: ##00a0e0;
	font-weight: bold;
	color: white;
	border: 0 none;
	border-radius: 1px;
	cursor: pointer;
	padding: 10px 5px;
	margin: 10px 5px;*/
    
    background-color: #00a0e0;
    border: 1px solid #95989a;
    border-radius: 2.5rem;
    color: #fff;
    font-size: 1.8em;
    font-weight: 600;
    height: auto;
    padding: 0.65rem;
    text-align: center;
    width: 100%;
	cursor: pointer;
}
/*#msform .action-button:hover, #msform .action-button:focus {
	box-shadow: 0 0 0 2px white, 0 0 0 3px ##00a0e0;
}*/
#msform .action-button:hover, #msform .action-button:focus {
    background-color: #008ec7
}
#msform .action-button img {
    height: 3.5rem;
    margin: auto;
    float: right
}

#msform table td {
	text-align: left;
}

/*progressbar*/
#progressbar {
	margin-bottom: 30px;
	overflow: hidden;
	/*CSS counters to number the steps*/
	counter-reset: step;
}
#progressbar li {
	list-style-type: none;
	color: black;
	text-transform: uppercase;
	/*font-size: 9px;*/
	width: 33%;
	/*width: 50%;*/
	float: left;
	position: relative;
}
#progressbar li:before {
	content: counter(step);
	counter-increment: step;
	width: 25px;
	line-height: 25px;
	display: block;
	font-size: 10px;
	color: #333;
	background: white;
	border-radius: 3px;
	margin: 0 auto 5px auto;
	position: relative;
	z-index: 1;
}
/*progressbar connectors*/
#progressbar li:after {
	content: '';
	width: 100%;
	height: 3px;
	background: white;
	position: absolute;
	left: -50%;
	top: 11px;
	/*z-index: -1; /*put it behind the numbers*/
}
#progressbar li:first-child:after {
	/*connector not needed before the first step*/
	content: none; 
}
/*marking active/completed steps green*/
/*The number of the step and the connector before it = green*/
#progressbar li.active:before,  #progressbar li.active:after{
	background: #649cc6;
	color: white;
}

.form_reg{
	border:none; 
	width:285px;
	height:28px; 
	/*height:32px; 
	background: url(../images/bg_form.jpg) no-repeat; */
	background: #f4f4f4;
	border: 1px solid #D0D0D0;
	padding-left:5px; 
	font:11px Verdana;
	color:#666
}
	
.form_sel_reg{
border:none; 
width:290px;
height:30px; 
/*background: url(../images/bg_form.jpg) no-repeat; */
background: #f4f4f4;
border: 1px solid #D0D0D0;
padding: 5px 1px; 
font:11px Verdana;
color:#666
}

.btn.btn-success {
  background: #40bf40;
  text-shadow: none;
  color: #fff;
  filter: none;
  display: inline-block;
  padding: 4px 12px;
  margin-bottom: 0;
  line-height: 20px;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
}
.btn.btn-danger {
  background: #d9534f;
  text-shadow: none;
  color: #fff;
  filter: none;
  display: inline-block;
  padding: 4px 12px;
  margin-bottom: 0;
  line-height: 20px;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
}

.progress {
  height: 8px;
  margin-bottom: 20px;
  overflow: hidden;
  background-color: #f5f5f5;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
}

.progress-bar {
  float: left;
  width: 0;
  height: 100%;
  font-size: 12px;
  color: #ffffff;
  text-align: center;
  background-color: #428bca;
  -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
          box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
  -webkit-transition: width 0.6s ease;
          transition: width 0.6s ease;
}

.progress-bar-success {
  background-color: #5cb85c;
}
	
label.error{color: #ce0000;}

.riga_realtime_small{
	line-height: 20px;
}
/* ------------------------------- */

.select-no-display select {
    display: inherit;
}

.nascondi{display: none;}





/************************ LINEE DINAMICHE ************************************** >> */
.btn_lineedyn{
    float:left;
    width:100%;
    /*margin-right:1%;*/
    padding:2%;
    height:100px;
    line-height:90px;
    background:#D0DFF3;
}
.btn_lineedyn .area_txt{ height: 90px; line-height: 90px; display: table-cell;vertical-align: middle; }
.btn_lineedyn .area_txt .txt{ line-height: 1.25; color: #337ab7 !important; }
.btn_lineedyn .area_txt .txt:hover{ color: #23527c !important; }

.lineedyn_nota{
    float:left;
    clear: both;
    width:100%;
    height:auto;
}

.lineedyn_mappa_intestazione{
	width:100%;
    background: transparent;
	margin-bottom: 10px;
	margin-top: 10px;
	display: inline-flex;
}

.lineedyn_mappa_legenda{
	width: 200px;
	font-family: Open Sans, sans-serif !important; 
	font-size: 18px; 
	color: #173863;
	/*height: 30px;*/
	margin-right: 10px;
	display: inline;
}

.lineedyn_mappa_ico{
	margin-right: 5px;
	height: inherit;
}

.lineedyn-float-right{
	float: right;
	text-align: right;
	display: inline-flex;
	width: 100%;
}

.label_fermate_secondarie{
	width: 100%;
	font-family: Open Sans, sans-serif !important; 
	font-size: 18px; 
	color: #173863;
	font-weight: normal;
	
}

#visualizza-fermate-secondarie{
	margin-left: 10px;
	margin-bottom: 10px;
	width: 25px;
    height: 23px;
    background-color: white;
    border-radius: 5px;
    vertical-align: middle;
    border: 1px solid #173863;
    -webkit-appearance: none;
    outline: none;
    cursor: pointer;
}

#visualizza-fermate-secondarie:checked{
	background-image: url("../images/lineedyn/icona_check.png");
	background-color: #173863;
	background-position: center;
}

.lineedyn_box_margin_top_sm{ margin-top: 20px; }

.lineedyn_num_linea{
    /*
	width:160px;
    height:130px;
    background:#D0DFF3;
	background:url('../images/lineedyn/fumetto_nr_linea.jpg');
	*/
    width:80px;
    height:75px;
    background-color: #1268b6;
    text-align: center;
	border-radius: 20px;
	float: left;
	margin-top: 10px
}

.lineedyn_copertura_ico{
	margin-right: -20px;
}

.lineedyn_copertura_ico > img {
	margin-top: 25px;
}


.lineedyn_fumetto {
    margin: 20px;
    margin-right:0;
    display: inline-block;
    position: relative;
    width: auto;
    height: auto;
    background-color: #2D66C4;
}

.tri-right.btm-right:after{
	content: ' ';
	position: absolute;
	width: 0;
	height: 0;
    left: auto;
	right: 0px;
	bottom: -10px;
	border: 12px solid;
	border-color: #2D66C4 #2D66C4 transparent transparent;
}
.talktext{
    padding: 0.8em;
    text-align: left;
    line-height: 1.5em;
}
.talktext p{
  /* remove webkit p margins */
  -webkit-margin-before: 0em;
  -webkit-margin-after: 0em;
    color:#ffffff !important;
}

.lineedyn_titolo_elenco_fermate,
.fascia_azzurrina{
    width:100%;
    clear:both;
    background:#D0DFF3;
    height:50px;
    line-height:36px;
    padding:7px 0 7px 0;
    text-align:left;
}
.fascia_azzurrina{
    float:left;
    height:70px;
    line-height: 55px;
}
.lineedyn_titolo_elenco_fermate span.title,
.fascia_azzurrina .title,
.fascia_azzurrina .title_disabled{
    margin-top: 10px;
    font-size: 1.5em;
    line-height:1.0em;
    font-weight: 700;
}
.fascia_azzurrina .disabled{
    font-weight: normal;
    color: #738BAB;
}
.fascia_azzurrina .text_fascia_oraria {
    font-size: 1.0em;
    line-height:1.0em !important;
}

.lineedyn_elenco_fermate_dati{
    float:left;
    width:100%;
    height:auto;
    clear:both;
    text-align:left;
}

/* Tabella responsiva usata nel dettaglio della linea */
.tabellaoraria_td{position:relative;padding-left: 0 !important; height: auto;text-align: left;width: 100% !important;
    max-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    padding: 0 !important;
}
/*
@media only screen and (max-width: 800px) {
    
    .no-more-tables > table, 
    .no-more-tables > table > thead, 
    .no-more-tables > table > tbody, 
    .no-more-tables > table th, 
    .no-more-tables > table td, 
    .no-more-tables > table tr { 
        display: block; 
    }
   
    .no-more-tables > table > thead > tr { 
        position: absolute;
        top: -9999px;
        left: -9999px;
    }
    .no-more-tables > table > thead >  tr { border: 1px solid #ccc; }
    .no-more-tables > table > tbody >  tr { border: 1px solid #ccc; }
    .no-more-tables > table > tbody > tr > td { 
        border: none;
        border-bottom: 1px solid #eee; 
        position: relative;
        padding-left: 30%;/* !important; * /
        white-space: normal;
        text-align:center;
    }
    .no-more-tables > table > tbody > tr > td:before { 
        position: absolute;
        top: 6px;
        left: 6px;
        width: 29%;
        padding-right: 10px; 
        white-space: nowrap;
        text-align:left;
        font-weight: bold;
    }
    .no-more-tables > table > tbody > tr > td:before { content: attr(data-title); }
    
    
	.body_fermate{float:left; height:auto;width: 100% !important;}
    
    td.tabellaoraria_td{
        max-width: inherit;
        overflow: auto;
        text-overflow: inherit;
        white-space: normal;
    }
    td.tabellaoraria_td:before {
        position:relative;
        width: 0 !important;
        padding-left:0 !important;
    }
    td.tabellaoraria_td:before { content: none !important; }
}

@media only screen and (max-width: 800px) {
	
	.flip-scroll .cf:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; }
	.flip-scroll * html .cf { zoom: 1; }
	.flip-scroll *:first-child+html .cf { zoom: 1; }
	
	.flip-scroll table { width: 100%; border-collapse: collapse; border-spacing: 0; }
 
	.flip-scroll th,
	.flip-scroll td { margin: 0; vertical-align: top; }
	.flip-scroll th { text-align: left; }
	
	.flip-scroll table { display: block; position: relative; width: 100%; }
	.flip-scroll thead { display: block; float: left; }
	.flip-scroll tbody { display: block; width: auto; position: relative; overflow-x: auto; white-space: nowrap; }
	.flip-scroll thead tr { display: block; }
	.flip-scroll th { display: block; text-align: right; }
	.flip-scroll tbody tr { display: inline-block; vertical-align: top; }
	.flip-scroll td { display: block; min-height: 1.25em; text-align: left; }
 
 
	/* sort out borders * /
 
	.flip-scroll th { border-bottom: 0; border-left: 0; }
	.flip-scroll td { border-left: 0; border-right: 0; border-bottom: 0; }
	.flip-scroll tbody tr { border-left: 1px solid #babcbf; }
	.flip-scroll th:last-child,
	.flip-scroll td:last-child { border-bottom: 1px solid #babcbf; }
}
*/

/*
.table-wrapper {
    float:left;
    clear:both;
    overflow-x: scroll;
    width: 800px;
    margin: 0 auto;
    padding-left:350px;
}
.table-wrapper td, .table-wrapper th {
    white-space: nowrap;
}
.table-wrapper th.fixedcol {
    position: absolute;
    width: 350px;
    margin-left: -350px;
    background:#FFFFFF;
}*/


.lineedyn_row_margin_bottom{
    margin-bottom: 10px;
}

.lineedyn_row{
	display: flex;
	padding-left: 0;
	padding-right: 0;
}

img.lineedyn_ico_news{
    float: left;
    width: 50px;
    margin-left: 0 auto;
    border:0;
}
img.lineedyn_ico_servizi{
    float:left;
    width: 50px;
    margin-right:10px;
    border:0;
}
.lineedyn_tabella_oraria_section{
	border-top: 1px solid #1268B6 !important;
	border-left: 1px solid #1268B6 !important;
	border-right: 1px solid #1268B6 !important;
	width:100%;
	margin: 0;
	padding: 0;
	display: flex;
}

li.lineedyn_tabella_orari_andata > a {
	background: transparent !important;
	border-bottom: 0 !important;
	border-right: none !important;
	color: #aaa;
	padding-top: 10px;
	
}

li.lineedyn_tabella_orari_ritorno > a {
	background: transparent !important;
	border-bottom: 0 !important;
	border-left: none !important;
	color: #aaa;
	padding-top: 10px;
}

li.lineedyn_tabella_orari_andata.active > a,
li.lineedyn_tabella_orari_andata.active > a:hover,
li.lineedyn_tabella_orari_ritorno.active > a,
li.lineedyn_tabella_orari_ritorno.active > a:hover,
li.lineedyn_tabella_orari_andata.active > a:focus,
li.lineedyn_tabella_orari_ritorno.active > a:focus {
	border-top: none !important;
	border-left: 0 !important;
	border-right: 0 !important;
	border-bottom: 12px solid #1268b6 !important;
	border-radius: 0;
	color:  #173863;
}

li.lineedyn_tabella_orari_circolare.active > a,
li.lineedyn_tabella_orari_circolare.active > a:hover,
li.lineedyn_tabella_orari_circolare.active > a:focus {
	border-top: none !important;
	border-left: 0 !important;
	border-right: 0 !important;
	border-bottom: none !important;
	border-radius: 0;
	color:  #173863;
}


.lineedyn_tabella_traccia {
	border: none;
	border-right: 1px solid #1268b6 !important;
	border-left: 1px solid #1268b6 !important;
	border-bottom: 3px solid #1268b6  !important;
	font-size: 18px;
	text-transform: uppercase;
	font-weight: 700;
}

li.tab_tabella_orari > a{ background:#FFFFFF; border:1px solid #1268B6; border-radius:0px !important; color:#1268B6; cursor:pointer; padding: 10px; }
li.tab_tabella_orari.active > a,
li.tab_tabella_orari.active > a:hover{ background:#1268B6;color:#FFFFFF; }

.lineedyn-table-striped > tbody > tr:nth-child(odd) > td, 
.lineedyn-table-striped > tbody >tr:nth-child(odd) > th {
   background-color: white;
   border-bottom: 1px solid #173863 !important;

 }
 
.lineedyn-table-striped > tbody > tr:nth-child(even) > td, 
.lineedyn-table-striped > tbody >tr:nth-child(even) > th {
   background-color: #F3F6FB;
   border-bottom: 1px solid #173863 !important;
 }
 
 .lineedyn_tabella_oraria_tr{
	 height: 50px;
 }
 
#contenitore_mappa{
    float:left;
    width:100%;
    height:auto;
    margin:0 auto;
}
#contenitore_mappa > .barra_blu{
    width:100%;
    height:40px;
    padding: 10px;
    background: #2572B8;
    color: #ffffff;
}
.container-lineedyn .data_orari_label,
.container-lineedyn .data_orari_calendario{
    width:140px;
	text-align: center;
	line-height: 25px;
	text-decoration: underline;
	margin: 0 auto;
	color: #0D47A1;
	font-size: 16px;
	margin-bottom: 5px;
	display: block;
	cursor: pointer;
	
}

.container-lineedyn input#data_orari{
	width: 140px;
	display: block;
	margin: 0 auto;
	font-size:22px;
	line-height:5px;
    border:1px;
    font-family: Open Sans, sans-serif !important;
    color: #173863;
    font-weight: bold;
	padding:0;
	background-color: transparent;
	margin-top: 10px;
	cursor: pointer;
}

.lineedyn_edit_data{
	background: #C5D6F1;
	border-right: 1px solid #1268b6;
	border-left: 1px solid #1268b6;
	border-top: 1px solid #1268b6;
	
}

.lineedyn_paginazione{
	border-bottom: 1px solid #1268b6;
	border-right: 1px solid #1268b6;
	border-left: 1px solid #1268b6;
	margin-bottom: 0 !important;
}

.lineedyn_paginazione > ul > li.prev > a,
.lineedyn_paginazione > ul > li.next > a{
    color: #0D47A1;
    background: transparent;
	font-size: 20px;
	font-weight: bold;
	border: 0;
}

.lineedyn_paginazione > ul > li.active > a{
    background: transparent;
    color: #1268b6;
	font-size: 20px;
	font-weight: bold;
    border: 0;
}

.lineedyn_paginazione > ul > li > a{
    background: transparent;
    color: #C5D6F1;
	font-size: 20px;
	font-weight: normal;
    border: 0;
}

.lineedyn_num_linea_sm{
	width:auto;
	min-width:2.5rem;
	height:2.5rem;
	-moz-border-radius:0.5rem;
	-webkit-border-radius:0.5rem;
	border-radius:0.5rem; /* future proofing */
	-khtml-border-radius:0.5rem; /* for old Konqueror browsers */
	text-align:center;
	display:table;
    margin: 0 auto;
}
.lineedyn_num_linea_sm > .numero{
	display:table-cell;
    text-align: center;
    vertical-align:middle;
	font-weight:bold;
	font-size:0.95em !important;
	color:#fff;
	padding: 0 3px 0 3px;
}	
.lineedyn_num_linea_sm > .numero a{
	font-weight:bold;
	font-size:0.95em !important;
	color:#fff;
	text-align: center;
}

.lineedyn_ico_presenza_news{
    float: left;margin: 0 2px 2px 0;
}
.input_cerca_linee{
    float: left;
    width: 350px !important;
    
	border: 1px solid #95989a;
	border-radius: 2.5rem !important;
	font-size: 1.1em !important;
	line-height: inherit;
	padding: 0.4em 1em;
	color: #0E1C41;
	resize: none;
}
img.btn_copertura{
   opacity:0.3;
   cursor: pointer;
}

#fake-checkbox {
	width: 25px;
	height: 25px;
	border: 1px solid #173863;
	margin: 0 auto;
	padding: 0;
	border-radius: 5px;
	z-index: 100;
	overflow:hidden;
}


@media(max-width: 768px){
	
	.lineedyn_news_box {
		margin-top: 30px;
	}
	
	#map {
		margin-bottom: 30px;
	}
	
	.lineedyn_mappa_intestazione{
		width:100%;
		background: transparent;
		margin-bottom: 10px;
		margin-top: 10px;
		margin-right: 5px;
		margin-left: 5px;
		display: block;
	}
	
	.lineedyn-float-right{
		width:100%;
		display: block;
		text-align: center;
		float: none;
	}

	.label_fermate_secondarie{
		width: 100%;
		font-family: Open Sans, sans-serif !important; 
		font-size: 14px; 
		color: #173863;
		padding-top: 5px;
		padding-bottom: 5px;
		/* padding-right: 10px; */
		font-weight: normal;
	}

	.lineedyn_mappa_legenda{
		font-family: Open Sans, sans-serif !important; 
		font-size: 14px; 
		color: #173863;
		padding: 0;
		display: inline;
		margin-bottom: 5px;
	}
	
	.lineedyn_paginazione{
		border-bottom: 0;
		border-right: 0;
		border-left: 0;
	}
	
	.lineedyn_paginazione > ul > li.prev > a,
	.lineedyn_paginazione > ul > li.next > a{
		color: #0D47A1;
		background: transparent;
		font-size: 16px;
		font-weight: bold;
		border: 0;
	}

	.lineedyn_paginazione > ul > li.active > a{
		background: transparent;
		color: #1268b6;
		font-size: 16px;
		font-weight: bold;
		border: 0;
	}

	.lineedyn_paginazione > ul > li > a{
		background: transparent;
		color: #C5D6F1;
		font-size: 16px;
		font-weight: bold;
		border: 0;
	}
	
	.lineedyn_row{
		display: block;
	}

    img.lineedyn_ico_news{
        float: left;
        margin: 0 auto;
    }
	
	.container-lineedyn input#data_orari{
		display: block;
		margin: 0 auto;
		font-size:22px;
		line-height:10px;
		border:1px;
		font-family: Open Sans, sans-serif !important;
		color: #173863;
		font-weight: bold;
		padding:0;
		background-color: transparent;
		margin-top: 10px;
	}
	
    .data_orari.data_orari_calendario > img { 
		width: 16px; 
	}
	
	.lineedyn_tabella_traccia{
		display: flex;
		border: 0 !important;
		border-right: 1px solid #1268b6 !important;
		border-left: 1px solid #1268b6 !important;
		border-bottom: 3px solid #1268b6  !important;
		font-size: 18px;
		text-transform: uppercase;
		font-weight: 700;
		width: 100%;
	}
	
	.lineedyn_tabella_orari_circolare{
		width: 100%;
	}
	
	.lineedyn_tabella_orari_andata{
		width: 50%;
	}
	
	.lineedyn_tabella_orari_ritorno{
		width: 50%;
	}
	
	.lineedyn_tabella_orari_andata > #orari_andata {
		margin-bottom: 0;
	}
	
	.lineedyn_tabella_orari_ritorno #orari_ritorno {
		margin-bottom: 0;
	}
	
	.lineedyn_copertura_ico > img {
		margin-top: 25px;
	}
	
	.active {
		margin: 0 !important;
		padding: 0 !important;
	}
	

}

@media only screen 
	and (min-device-width: 375px) 
	and (max-device-width: 812px) 
	and (-webkit-min-device-pixel-ratio: 3)
	and (orientation: landscape) {
	  
	  .lineedyn_mappa_intestazione{
		width:100%;
		background: transparent;
		margin-bottom: 10px;
		margin-top: 10px;
		margin-right: 5px;
		margin-left: 5px;
		display: block;
		text-align: center;
	}
	
	.lineedyn_mappa_legenda{
		font-family: Open Sans, sans-serif !important; 
		font-size: 20px; 
		color: #173863;
		padding: 0;
		display: inline;
		margin-bottom: 5px;
	}
	
	.label_fermate_secondarie{
		width: 100%;
		font-family: Open Sans, sans-serif !important; 
		font-size: 20px; 
		color: #173863;
		padding-top: 5px;
		padding-bottom: 5px;
		/* padding-right: 10px; */
		font-weight: normal;
		text-align: center;
	}

}

@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (orientation: portrait) {
	.lineedyn_tabella_traccia{
		display: block;
		border: 0 !important;
		border-right: 1px solid #1268b6 !important;
		border-left: 1px solid #1268b6 !important;
		border-bottom: 3px solid #1268b6  !important;
		font-size: 18px;
		text-transform: uppercase;
		font-weight: 700;
	}
	
	.lineedyn_mappa_intestazione{
		width:100%;
		background: transparent;
		margin-bottom: 10px;
		margin-top: 10px;
		margin-right: 5px;
		margin-left: 5px;
		display: block;
		text-align: center;
	}
	
	.lineedyn_mappa_legenda{
		font-family: Open Sans, sans-serif !important; 
		font-size: 22px; 
		color: #173863;
		padding: 0;
		display: inline;
		margin-bottom: 5px;
		text-align: center
	}
	
	.label_fermate_secondarie{
		width: 100%;
		font-family: Open Sans, sans-serif !important; 
		font-size: 22px; 
		color: #173863;
		padding-top: 10px;
		padding-bottom: 5px;
		/* padding-right: 10px; */
		font-weight: normal;
	}
}
	
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (orientation: landscape) {
	
	.lineedyn_mappa_intestazione{
		width:100%;
		background: transparent;
		margin-bottom: 10px;
		margin-top: 10px;
		margin-right: 5px;
		margin-left: 5px;
		display: block;
		text-align: center;
	}
	
	.lineedyn_mappa_legenda{
		font-family: Open Sans, sans-serif !important; 
		font-size: 20px; 
		color: #173863;
		padding: 0;
		display: inline;
		margin-bottom: 5px;
	}
	
	.label_fermate_secondarie{
		width: 100%;
		font-family: Open Sans, sans-serif !important; 
		font-size: 20px; 
		color: #173863;
		padding-top: 5px;
		padding-bottom: 5px;
		/* padding-right: 10px; */
		font-weight: normal;
		text-align: center;
	}
	
	.lineedyn_pdf{
		font-weight: bold; 
		margin-bottom: 10px; 
		font-size: 14px !important}
	
}	
/************************ LINEE DINAMICHE ************************************** // */


/* --- RIMBORSI IDROCARBURI --- */

/*form styles*/
#form_rimborsi_idrocarburi {
	margin: auto;
	text-align: center;
	position: relative;
}

#form_rimborsi_idrocarburi fieldset {
	padding: 20px 30px;
	border: 0;
	box-sizing: border-box;
	width: 100%;
	
	/*stacking fieldsets above each other*/
	position: relative;
}

/*Hide all except first fieldset*/
#form_rimborsi_idrocarburi fieldset:not(:first-of-type) {
	display: none;
}

/*errors*/
form#form_rimborsi_idrocarburi label.error { display: none; }

/*buttons*/
#form_rimborsi_idrocarburi .action-button {    
    background-color: #00a0e0;
    border: 1px solid #95989a;
    border-radius: 2.5rem;
    color: #fff;
    font-size: 1.8em;
    font-weight: 600;
    height: auto;
    padding: 0.65rem;
    text-align: center;
    width: 100%;
	cursor: pointer;
}

#form_rimborsi_idrocarburi .action-button:hover, #msform .action-button:focus {
    background-color: #008ec7
}
#form_rimborsi_idrocarburi .action-button img {
    height: 3.5rem;
    margin: auto;
    float: right
}

.form_reg{
	border:none; 
	width:285px;
	height:28px; 
	background: #f4f4f4;
	border: 1px solid #D0D0D0;
	padding-left:5px; 
	font:11px Verdana;
	color:#666
}
	
.form_sel_reg{
    border:none; 
    width:290px;
    height:30px; 
    background: #f4f4f4;
    border: 1px solid #D0D0D0;
    padding: 5px 1px; 
    font:11px Verdana;
    color:#666
}

.btn.btn-success {
  background: #40bf40;
  text-shadow: none;
  color: #fff;
  filter: none;
  display: inline-block;
  padding: 4px 12px;
  margin-bottom: 0;
  line-height: 20px;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
}
.btn.btn-not-selected {
  background: #aaa;
  text-shadow: none;
  color: #fff;
  filter: none;
  display: inline-block;
  padding: 4px 12px;
  margin-bottom: 0;
  line-height: 20px;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
}
.btn.btn-danger {
  background: #d9534f;
  text-shadow: none;
  color: #fff;
  filter: none;
  display: inline-block;
  padding: 4px 12px;
  margin-bottom: 0;
  line-height: 20px;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
}
	
label.error{color: #ce0000;}

.txt_title {
    margin-bottom: 20px;
    font-size: 1.2em;
}

.riga_realtime_small{
	line-height: 20px;
}

.container-form-idrocarburi {
    background-color: #C5D6F1;
    border-radius: 1.5rem;
    padding: 1.8rem;
    font-size: 1em;
    color: #0E1C41
}
@media (max-width: 992px) {
    .container-form-idrocarburi {
        margin-left: 15px !important;
        margin-right: 15px !important;
        margin-bottom: 15px !important;
    }
}
.container-form-idrocarburi .title {
    color: #0D47A1;
    font-size: 1.8em;
    font-weight: 600;
    text-align: center
}
.container-form-idrocarburi label {
    font-size: 1.5em;
    font-weight: 600;
    color: #0E1C41
}
.container-form-idrocarburi label.center {
    width: 100%;
    text-align: center
}
.container-form-idrocarburi label.subtitle {
    font-size: 1.2em
}
.container-form-idrocarburi input[type=radio] {
    height: 1.2em;
    width: 1.2em;
    line-height: inherit
}
.container-form-idrocarburi input[type=text],
.container-form-idrocarburi input[type=password],
.container-form-idrocarburi input[type=number],
.container-form-idrocarburi input[type=tel] {
    border: 1px #95989A solid;
    border-radius: 2.5rem;
    font-size: 1.1em;
    padding: .5em 1em;
    line-height: inherit
}
.container-form-idrocarburi select {
    border: 1px #95989A solid;
    border-radius: 2.5rem;
    font-size: 1.1em;
    padding: .5em 1em;
    line-height: inherit
}
.container-form-idrocarburi input[type=checkbox] {
    height: 1.2em;
    width: 1.2em;
    line-height: inherit
}

.box_richiedente{
    background-color: #00b6ff;
}
/* ------------------------------- */


#modalWimb .modal-content{
	height:650px;
}


.modal-header {
    padding: 0px;
    padding-right: 20px;
}

.container-modulo-generico{
    background-color: #c5d6f1;
    border-radius: 1.5rem;
    color: #0e1c41;
    font-size: 1.0em;
    margin-left: 15px;
    margin-right: 15px;
    padding: 1.8rem;
}

.container-modulo-generico .title{
    color: #0d47a1 !important;
    font-size: 1.8em !important;
    font-weight: 600 !important;
}

.container-modulo-generico .title.center{
    text-align: center !important;
}

.container-modulo-generico label{
    color: #0e1c41;
    font-size: 1.5em;
    font-weight: 600;
}

.container-modulo-generico label.center{
    text-align: center;
    width: 100%;
}

.container-modulo-generico input[type="text"], .container-modulo-generico input[type="number"], .container-modulo-generico select, .container-modulo-generico textarea, {
    border: 1px solid #95989a;
    border-radius: 2.5rem;
    font-size: 1.1em;
    line-height: inherit;
    padding: 0.5em 1em;
    width: 100%;
    color: #999;
    resize: none;		/*evita il resize della textarea*/
}

.container-modulo-generico button{
    background-color: #00a0e0;
    border: 1px solid #95989a;
    border-radius: 2.5rem;
    color: #ffffff;
    font-size: 1.8em;
    font-weight: 600;
    height: auto;
    padding: 0.65rem;
    text-align: center;
    width: 100%;
}

.container-modulo-generico button img {
    float: right;
    height: 3.5rem;
    margin: auto;
}

.container-modulo-generico .campi_obbligatori{
    margin-bottom: 50px;
    text-align: center;
}

.idrocarburi_messaggio_importante{
    padding: 5px 0 5px 0;
    border-bottom: 1px solid #0e1c41;
    border-top: 1px solid #0e1c41;
    margin-bottom: 20px;
}

#tolta_tensione_tabella_prezzi {
    width: 100%;
    border-collapse: collapse;
}

#tolta_tensione_tabella_prezzi thead {
    background-color: #4472c4;
    color: white;
}

#tolta_tensione_tabella_prezzi thead th, #tolta_tensione_tabella_prezzi tbody td {
    text-align: center;
    padding: 10px 0;
    border: 1px solid white;
}

#tolta_tensione_tabella_prezzi tbody tr.even {
    background-color: #e9ebf5;
}

#tolta_tensione_tabella_prezzi tbody tr.odd {
    background-color: #cfd5ea;
}

.flatpickr {
    background-color: white !important;
    height: 38px;
}
@media (min-width: 1280px) {
    .modal_xl {
        width: 80%;
        margin: auto;
    }
}


div.container-img {
    width: 100%;
    background-color: #C5D6F1;
    color: #0D47A1;
    padding: 1rem;
    border-radius: 1rem;
    text-align: center !important;
    margin-bottom: 1rem;
}
div.container-img.no-bg {
    background-color: #ffffff !important;
}

div.container-img > img {
    text-align: center !important;
}

.bordo-inferiore {
    border-bottom: 1px solid #000000;
}

.no-margini-laterali{
    margin-left: 0 !important;
    margin-right: 0 !important;
}

#hide_desktop{ display: none; }
#hide_mobile{ display: block; }
@media(max-width: 1030px) {
    #hide_desktop{ display: block; }
    #hide_mobile{ display: none; }
}


button.btn_arrotondato_blu {
    border: 1px #173863 solid;
    border-radius: 2.5rem;
    background-color: #173863;
    color: #FFF;
    font-size: 1.25em;
    text-align: center;
    height: auto;
    padding: .65rem;
    padding-left: 40px;
    padding-right: 40px;
    margin-top: 20px;
}
button.btn_arrotondato_blu:hover {
    background-color: #173863
}

/*.emv-landing-presentazione-desktop*/
.emv-landing-presentazione-mobile {
    width: 100%;
}

#emv_btn_approfondimenti {
    border:0px solid pink !important;
    margin-top: 0px;
    margin-right: unset;
    margin-left: unset;
}
/* On screens that are 600px or less, set the background color to olive */
@media screen and (max-width: 768px) {
    #emv_btn_approfondimenti {
        margin-top: 20px;
        display: block;
        margin-right: auto;
        margin-left: auto;
    }
}

#cookieChoiceInfo span:nth-of-type(2) {
	display: none !important;
}
#cookieChoiceInfo div:nth-of-type(1) {
	display: none !important;
}

.link_cookies {
	
	margin: 0 !important;
	margin-right : 10px !important;
	text-decoration: none;
	color: white;
	text-align:center;
	white-space: nowrap;
	border-radius: 2.5rem !important;
	background-color: #466183 !important;
	height: auto !important;
	padding: 1.2rem !important;

}

.link_cookies:hover {
	color: white;
}

#cookieChoiceInfo span{
	
    margin: 40px 20px 40px 30px !important;
	margin-right: auto !important;
    max-width: 100% !important;
	text-align:center;
}

#cookieChoiceDismiss {
	margin : 0 !important;
	margin-right : 20px !important;
	text-decoration: none !important;
	border: 1px #173863 solid !important;
    border-radius: 2.5rem !important;
    background-color: #183964 !important;
    color: #white !important;
    font-size: 1.25em !important;
	font-weight: 700 !important;
    text-align: center !important;
    height: auto !important;
    padding: 1.2rem !important;
 
}

@media (max-width: 44em) {
	#cookieChoiceInfo {
		flex-direction: column !important;
		gap: 1.2rem;
	}
	#cookieChoiceInfo span {
		margin : 2rem 2rem 1rem 2rem !important;
	}
	#cookieChoiceDismiss {
		margin: 0 !important; 
		margin-bottom : 2rem !important;
	}
	.link_cookies {
		margin: 0 !important;
	}
}