html {
  overflow-x: hidden;
}
body {
  font-family: 'Lato', sans-serif;
  letter-spacing: 0.5px;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility !important;
}
a {
  color: #000000;
  text-decoration: none;
}
a:active,
a:hover,
a:focus {
  color: #000000;
}
a.download {
  display: inline-block;
  color: #F08B19;
  font-size: 0.75rem;
  font-weight: bold;
  text-transform: uppercase;
  line-height: 27px;
  padding-left: 34px;
  background: url("../images/download.eca6ec1ead40.svg") no-repeat center left / 27px;
}
img {
  max-width: 100%;
}
select {
  border: 1px solid #CECECE;
  border-radius: 4px;
  background: #FFFFFF url("../images/arrow_dropdown.2f45e48f68a8.svg") no-repeat center right / 24px;
  padding: 0 35px 0 5px;
  height: 30px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
select[multiple] {
  background: none;
  padding-right: 5px;
  height: auto;
}
select::-ms-expand {
  display: none;
  /* remove default arrow on ie10 and ie11 */
}
table.visually-hidden {
  table-layout: fixed;
}
.dropdown .dropdown-toggle {
  padding-top: 0;
  padding-bottom: 0;
  background-color: #FFFFFF;
}
.dropdown .dropdown-toggle:after {
  margin-left: 1rem;
  width: 8px;
  height: 8px;
  border: solid #F08B19;
  border-width: 0.2em 0.2em 0 0;
  transform: rotate(135deg);
}
.dropdown .dropdown-toggle.show:after {
  border-width: 0 0 0.2em 0.2em;
  vertical-align: 0;
}
.dropdown .dropdown-item {
  padding-top: 0;
  padding-bottom: 0;
  line-height: 34px;
}
.dropdown .dropdown-item:hover,
.dropdown .dropdown-item:focus {
  background-color: #EEEEEE;
}
.dropdown .dropdown-item.active {
  color: #FFFFFF !important;
  background-color: #F08B19;
}
header li a.link-news {
  background-image: url("../images/header/news_ico.62a84408303f.svg");
}
footer li a.link-news {
  background-image: url("../images/footer/news_ico.d8543b400bae.svg");
}
.container {
  max-width: 1424px;
}
body > header .container-fluid > .row,
body > footer .container-fluid > .row {
  padding-left: 20px;
  padding-right: 20px;
}
@media (max-width: 767px) {
  body > header .container > .row,
  body > footer .container > .row {
    padding-left: 20px;
    padding-right: 20px;
  }
}
body > header {
  border-bottom: 1px solid #CECECE;
}
body > main .container > .row {
  margin-left: 0;
  margin-right: 0;
  padding-left: 30px;
  padding-right: 30px;
}
#oc_link span {
  display: inline-block;
  height: 25px;
  font-size: 1rem;
  font-weight: bold;
  text-transform: uppercase;
  color: #0066CC;
}
#oc_link span:first-of-type {
  padding-right: 34px;
  background: url("../images/coesione-italia-sm.31fa71f8f8ec.svg") no-repeat right center;
}
#oc_link span:nth-of-type(2) {
  position: relative;
  padding-left: 17px;
}
#oc_link span:nth-of-type(2):before {
  content: '';
  position: absolute;
  top: 10%;
  left: 8px;
  width: 1px;
  height: 80%;
  background-color: #003183;
}
#middle-header,
#top-footer {
  padding-top: 30px;
  padding-bottom: 30px;
  background-image: linear-gradient(to right, #133A63, #0066CC);
}
#middle-header .loghi,
#top-footer .loghi {
  display: flex;
  justify-content: space-between;
  gap: 1.5rem;
  flex-direction: column;
  white-space: nowrap;
}
@media (min-width: 1200px) {
  #middle-header .loghi,
  #top-footer .loghi {
    flex-direction: row;
  }
}
@media (min-width: 992px) {
  #middle-header .loghi,
  #top-footer .loghi {
    padding-left: 20px;
    padding-right: 20px;
  }
  #middle-header .loghi .loghi1,
  #top-footer .loghi .loghi1 {
    display: flex;
    align-items: center;
  }
}
#middle-header .loghi .logo-cpt,
#top-footer .loghi .logo-cpt {
  display: inline-block;
  width: 150px;
  height: 79px;
  overflow: hidden;
  text-indent: -9999px;
  vertical-align: bottom;
  background: url("../images/sistemacpt_logo.ebbe04de9599.png") no-repeat top center / contain;
}
#middle-header .loghi .cpt-claim,
#top-footer .loghi .cpt-claim {
  display: inline-block;
  position: relative;
  margin-left: 56px;
  color: #FFFFFF;
}
#middle-header .loghi .cpt-claim:before,
#top-footer .loghi .cpt-claim:before {
  content: '';
  position: absolute;
  top: 10%;
  left: -29px;
  width: 1px;
  height: 80%;
  background-color: #F08B19;
}
#middle-header .loghi .logo-pcm,
#top-footer .loghi .logo-pcm {
  display: inline-block;
  width: 350px;
  height: 79px;
  overflow: hidden;
  text-indent: -9999px;
  max-width: 100%;
  vertical-align: bottom;
  background: url("../images/pcm_logo.35387b683853.svg") no-repeat top center / contain;
}
#top-header .secondary-menu,
#top-footer .secondary-menu {
  list-style: none;
  margin: 0;
  padding: 0;
  line-height: 2;
}
@media (min-width: 992px) {
  #top-header .secondary-menu,
  #top-footer .secondary-menu {
    text-align: right;
  }
}
#top-header .secondary-menu li,
#top-footer .secondary-menu li {
  display: inline;
}
#top-header .secondary-menu li:after,
#top-footer .secondary-menu li:after {
  content: ' ';
  letter-spacing: 2em;
  background: linear-gradient(90deg, transparent calc(50% - 0.03125em), #003183 0, #003183 calc(50% + 0.03125em), transparent 0);
}
#top-header .secondary-menu li a,
#top-footer .secondary-menu li a {
  color: #003183;
  font-size: 0.875rem;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
}
#top-header .secondary-menu li a[class],
#top-footer .secondary-menu li a[class] {
  padding-left: 32px;
  background-position: center left;
  background-repeat: no-repeat;
}
#top-header {
  padding-top: 10px;
  padding-bottom: 10px;
}
.navbar {
  padding: 0;
}
.navbar .navbar-toggler {
  border-radius: 0;
  padding: 15px;
  background-color: #FFFFFF;
}
.navbar .navbar-toggler:focus {
  box-shadow: none;
}
.navbar .navbar-toggler .navbar-toggler-icon {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><path stroke="rgb(0, 115, 230)" stroke-linecap="round" stroke-miterlimit="10" stroke-width="4" d="M0 5h30M0 15h30M0 25h30"/></svg>');
}
#middle-header {
  position: relative;
  border-bottom: 2px solid #F08B19;
}
#middle-header .navbar {
  position: absolute;
  top: 30px;
  right: 20px;
}
#bottom-header #search-form {
  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  padding: 16px 0;
  border-top: 1px solid #F08B19;
  background-color: #F8F8F8;
}
#bottom-header #search-form .typeahead__container {
  margin: 0 10%;
}
#bottom-header #search-form .typeahead__list {
  border: 0;
  border-radius: 0;
  margin-top: 0;
  background-color: #F08B19;
  color: #FFFFFF;
  font-weight: bold;
  box-shadow: 0px 28px 25px 6px rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 0px 28px 25px 6px rgba(0, 0, 0, 0.2);
}
#bottom-header #search-form .typeahead__list li {
  border: none;
}
#bottom-header #search-form .typeahead__list li a {
  color: inherit;
}
#bottom-header #search-form .typeahead__list .typeahead__group {
  margin: 1.5rem 0.75rem 0.5rem 0.75rem;
}
#bottom-header #search-form .typeahead__list .typeahead__group a {
  padding-left: 0;
  padding-right: 0;
  background-color: transparent;
  border-bottom: 1px solid #FFFFFF;
  text-transform: uppercase;
}
#bottom-header #search-form .typeahead__list .typeahead__item:not([disabled]) a:hover,
#bottom-header #search-form .typeahead__list .typeahead__item:not([disabled]) a:focus {
  background-color: #FFFFFF;
  color: #F08B19;
}
#bottom-header #search-form .typeahead__list .typeahead__item:not([disabled]).active a {
  background-color: #FFFFFF;
  color: #F08B19;
}
#bottom-header #search-form input {
  border: none;
  padding-top: 18px;
  padding-bottom: 18px;
  line-height: 20px;
  background-color: #F08B19;
  color: #FFFFFF;
}
#bottom-header #search-form button {
  border: none;
  height: 56px;
  background-color: #F08B19;
}
#bottom-header #search-form button span {
  display: inline-block;
  padding: 0 10px;
  background-image: url("../images/search_white.3eb54a7cf713.svg");
}
@media (min-width: 992px) {
  #bottom-header #search-form .typeahead__container {
    margin: 0 25%;
  }
}
@media (min-width: 1400px) {
  #bottom-header #search-form .typeahead__container {
    margin: 0 33%;
  }
}
#top-footer {
  margin-top: 80px;
}
@media (max-width: 991px) {
  #top-footer .loghi {
    margin-bottom: 20px;
  }
}
#top-footer .secondary-menu li:after {
  background: linear-gradient(90deg, transparent calc(50% - 0.03125em), #FFFFFF 0, #FFFFFF calc(50% + 0.03125em), transparent 0);
}
#top-footer .secondary-menu li a {
  color: #FFFFFF;
}
#middle-footer {
  position: relative;
  background-color: #10343C;
  padding-top: 20px;
  padding-bottom: 40px;
  color: #FFFFFF;
  font-size: 0.875rem;
}
#middle-footer::before,
#middle-footer::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(50vw - 50%);
  background-color: inherit;
}
#middle-footer::before {
  left: calc(50% - 50vw);
}
#middle-footer::after {
  right: calc(50% - 50vw);
}
#middle-footer p {
  margin: 20px 0 0 0;
}
#middle-footer p strong {
  display: inline-block;
  margin-bottom: 10px;
  font-size: 1.0625rem;
}
#middle-footer ul {
  list-style: none;
  margin: 0;
  padding: 0;
  margin-top: 20px;
}
#middle-footer ul a {
  color: inherit;
  text-decoration: none;
}
#bottom-footer {
  display: flex;
  justify-content: space-between;
  gap: 1.5rem;
  flex-direction: column;
  padding-top: 20px;
  padding-bottom: 60px;
  text-align: center;
}
@media (min-width: 992px) {
  #bottom-footer {
    flex-direction: row;
  }
}
#bottom-footer .disclaimer {
  font-size: 0.6875rem;
  line-height: 1;
  margin-bottom: 16px;
}
#bottom-footer .flag {
  display: inline-block;
  width: auto;
  height: 62px;
  overflow: hidden;
  text-indent: -9999px;
  max-width: 100%;
  margin-bottom: 20px;
  background-position: top left;
  background-repeat: no-repeat;
  background-size: 200%;
}
#bottom-footer .flag:hover,
#bottom-footer .flag:focus {
  background-position: top right;
}
#bottom-footer .flag.flag-rgs {
  width: 135px;
  background-image: url("../images/footer/loghi/rgs.17008a80adca.png");
}
#bottom-footer .flag.flag-capcoe {
  width: 204px;
  height: 170px;
  background-image: url("../images/footer/loghi/capcoe_mob.9ab771756c14.png");
}
@media (min-width: 992px) {
  #bottom-footer .flag.flag-capcoe {
    width: 603px;
    height: 50px;
    background-image: url("../images/footer/loghi/capcoe.971187b3f326.png");
  }
}
#bottom-footer .flag.flag-ess {
  width: 160px;
  background-image: url("../images/footer/loghi/eutalia.f897c919120c.png");
}
article section {
  margin-top: 60px !important;
}
article section.section,
article section.selector {
  margin-top: 0 !important;
}
article .section {
  padding-top: 8px;
  padding-bottom: 8px;
}
article .section > * {
  padding-top: 8px;
  padding-bottom: 8px;
}
article .section > *:first-child {
  line-height: 33px;
  font-size: 1.125rem;
  font-weight: bold;
}
article .section > * .ocbtn {
  margin: 0;
}
@media (min-width: 576px) {
  article .section > * .ocbtn {
    float: right;
  }
}
article header {
  padding-top: 30px;
  padding-bottom: 30px;
  background-image: linear-gradient(to right, #133A63, #0066CC);
  color: #FFFFFF;
}
article header.old {
  margin-bottom: 40px;
}
article header:first-child {
  margin-top: 66px;
}
article header h1 {
  margin: 0;
  font-size: 2rem;
}
article h2 {
  font-size: 1.875rem;
  padding-bottom: 16px;
  margin-bottom: 20px;
  position: relative;
  margin: 30px 0 40px 0;
}
article h2::after {
  position: absolute;
  content: '';
  width: 50px;
  height: 5px;
  left: 0;
  bottom: 0;
  background-color: #F08B19;
}
article .ocbtn {
  margin-top: 20px;
  padding: 6px 10px;
  font-size: 0.875rem;
}
article .ocbtn + .ocbtn {
  margin-left: 1.5rem;
}
article .immagine {
  min-height: 380px;
}
article .immagine img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
article .immagine + * {
  margin-top: 4rem;
}
article .descrizione {
  font-size: 1.375rem;
  line-height: 1.25;
}
article .descrizione p {
  margin-bottom: 27.5px;
}
article .descrizione p:last-child {
  margin-bottom: 0;
}
article .video_list {
  background-color: #EBEBEB;
  padding-left: 42px;
  padding-right: 42px;
}
article .video_list > * {
  margin-left: -43px !important;
  margin-right: -43px !important;
}
article .video_list > * > * {
  padding-left: 43px;
  padding-right: 43px;
}
article .video_list > * > * {
  margin-top: 0;
  margin-bottom: 40px;
}
article .video_list > * > *:first-child {
  margin-top: 10px;
  margin-bottom: 0;
}
article .data_pubblicazione {
  margin-bottom: 20px;
  font-size: 1.375rem;
}
article .video {
  margin-top: 2rem;
  margin-left: -42px !important;
  margin-right: -42px !important;
  padding: 70px 20%;
  background-color: #EBEBEB;
}
article .video_others {
  padding-left: 42px !important;
  padding-right: 42px !important;
  margin-left: -36px !important;
  margin-right: -36px !important;
}
article .video_others > * {
  padding-left: 36px;
  padding-right: 36px;
}
@media (min-width: 1200px) {
  article .video_others {
    margin-left: -75px !important;
    margin-right: -75px !important;
  }
  article .video_others > * {
    padding-left: 75px;
    padding-right: 75px;
  }
}
article .scopri .row {
  margin-left: -50px !important;
  margin-right: -50px !important;
}
article .scopri .row > * {
  padding-left: 50px;
  padding-right: 50px;
}
article .scopri .card {
  border: none;
  padding-bottom: 30px;
}
article .scopri .card > * {
  border: none;
  padding: 0;
  background-color: transparent;
}
article .scopri p {
  font-size: 1.125rem;
  line-height: 1.25;
}
article .scopri a {
  display: block;
  margin-top: 16px;
  padding: 10px 36px 10px 6px;
  border: 10px solid #F08B19;
  background: url("../images/arrow_orange.331db441c8d1.svg") no-repeat center right #F08B19;
  color: #FFFFFF;
  font-size: 1.125rem;
  font-weight: bold;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 0.2px;
}
.selector {
  padding-top: 16px;
  padding-bottom: 16px;
  font-size: 1.125rem;
  font-weight: bold;
  line-height: 34px;
}
.selector .dropdown-toggle {
  vertical-align: bottom;
  margin-left: 1rem;
  font-size: 0.875rem;
  line-height: 32px;
  border-color: #F08B19;
}
.card-video {
  background-color: transparent;
  border: none;
  margin-bottom: 2rem;
}
.card-video a > * {
  color: #000000;
  font-size: 1.125rem;
  font-weight: normal;
}
.card-video a > *:not(img) {
  padding-right: 36px;
}
.card-video a img {
  width: 100%;
}
.card-video a .data_pubblicazione {
  margin: 1rem 0;
  font-weight: bold;
}
.card-video a h3 {
  background: url("../images/arrow_orange.331db441c8d1.svg") no-repeat top right;
  padding-right: 30px;
  line-height: 29px;
  font-weight: bold;
  font-size: 1.25rem;
}
.card-video a p:last-of-type {
  margin-bottom: 0;
}
.video_wrapper {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 25px;
  height: 0;
}
.video_wrapper > * {
  position: absolute !important;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.img_wrapper {
  position: relative;
  padding-bottom: calc(200% / 3);
  height: 0;
}
.img_wrapper img {
  position: absolute;
  height: 100%;
  object-fit: cover;
}
.showmore-button {
  display: inline-block;
  margin-top: 12px;
  cursor: pointer;
  color: #F08B19;
  font-size: 1.375rem;
  font-weight: bold;
  text-decoration: underline;
}
.slider .slick-dots {
  list-style: none;
  margin: 0;
  padding: 0;
  width: 100%;
  text-align: center;
}
.slider .slick-dots li {
  display: inline-block;
  margin: 0 5px;
  padding: 0;
}
.slider .slick-dots li button {
  display: inline-block;
  border: 0;
  background: #CECECE;
  height: 4px;
  width: 28px;
  outline: none;
  line-height: 0;
  font-size: 0;
  color: transparent;
  cursor: pointer;
}
.slider .slick-dots li.slick-active button {
  background: #DB3622;
}
#intro-form form {
  display: flex;
  margin: 12px auto;
}
@media (min-width: 768px) {
  #intro-form form {
    width: 80%;
  }
}
@media (min-width: 1200px) {
  #intro-form form {
    width: 40%;
  }
}
#intro-form form input {
  width: 100%;
  border: none;
  padding: 18px;
  line-height: 20px;
  background-color: #F08B19;
  color: #FFFFFF;
}
#intro-form form input::placeholder {
  color: inherit;
  opacity: 1;
}
#intro-form form input::-ms-input-placeholder {
  color: inherit;
}
#intro-form form button {
  width: 50px;
  height: 56px;
  overflow: hidden;
  text-indent: -9999px;
  border: none;
  background: url("../images/search_white.3eb54a7cf713.svg") #F08B19 no-repeat center / 16px;
}
#main-menu a[href="#"] {
  cursor: default;
}
@media (min-width: 992px) {
  #main-menu .nav-item {
    display: table-cell;
    vertical-align: middle;
  }
  #main-menu .nav-item > .nav-link {
    display: table-cell;
    padding: 0;
    width: 100vw;
    height: 54px;
    vertical-align: middle;
    line-height: 20px;
    text-align: center;
    text-transform: uppercase;
    color: #F08B19;
    font-size: 0.875rem;
    font-weight: bold;
    white-space: nowrap;
    transition: none;
  }
  #main-menu .nav-item > .nav-link:hover,
  #main-menu .nav-item > .nav-link:focus,
  #main-menu .nav-item > .nav-link.active,
  #main-menu .nav-item > .nav-link.highlighted {
    color: #FFFFFF;
    background-color: #F08B19;
  }
  #main-menu .nav-item > .nav-link.btn-search:before {
    display: inline-block;
    content: url("../images/search_orange.31a6c7042c23.svg");
    width: 16px;
    height: 16px;
    margin-right: 0.5rem;
    vertical-align: text-top;
  }
  #main-menu .nav-item > .nav-link.btn-search:hover:before,
  #main-menu .nav-item > .nav-link.btn-search:focus:before,
  #main-menu .nav-item > .nav-link.btn-search.active:before,
  #main-menu .nav-item > .nav-link.btn-search.highlighted:before {
    content: url("../images/search_white.3eb54a7cf713.svg");
  }
  #main-menu .nav-item > .nav-link .sub-arrow {
    display: none;
  }
  #main-menu .nav-item > .dropdown-menu .sub-arrow {
    border: solid;
    border-width: 0 2px 2px 0;
    display: inline-block;
    padding: 3px;
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
  }
  #main-menu .dropdown-menu {
    background-color: #F08B19;
    border: 1px solid #F08B19;
    border-radius: 0;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    box-shadow: 0px 28px 25px 6px rgba(0, 0, 0, 0.2);
    -webkit-box-shadow: 0px 28px 25px 6px rgba(0, 0, 0, 0.2);
  }
  #main-menu .dropdown-menu .dropdown-item {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    color: #FFFFFF;
  }
  #main-menu .dropdown-menu .dropdown-item:hover,
  #main-menu .dropdown-menu .dropdown-item:focus {
    background-color: #FFFFFF;
    color: #F08B19;
  }
  #main-menu .dropdown-menu .dropdown-divider {
    margin-left: 1rem;
    margin-right: 1rem;
    color: #FFFFFF;
    border: none;
    opacity: initial;
  }
}
.cc_div .bar #s-inr {
  max-width: 38em;
}
.ocbtn {
  display: inline-block;
  padding: 10px;
  background-color: #F08B19;
  color: #FFFFFF;
  font-size: 1rem;
  font-weight: bold;
  text-decoration: none;
  text-transform: uppercase;
}
.ocbtn:hover,
.ocbtn:focus,
.ocbtn:active {
  color: #FFFFFF;
}
#highlights {
  margin-bottom: 60px;
}
#highlights .slide-overtitle,
#highlights .slide-title,
#highlights .slide-text {
  margin-bottom: 1.5rem;
}
#highlights .slide-title {
  padding: 0 20px;
}
#highlights .slide-title span {
  padding: 10px 0;
  background-color: #F08B19;
  box-shadow: 20px 0 0 #F08B19, -20px 0 0 #F08B19;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  font-size: 1.625rem;
}
#highlights .carousel-item {
  width: 100%;
  padding: 60px 0;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  color: #FFFFFF;
  font-size: 1.0625rem;
  font-weight: bold;
}
@media (min-width: 1200px) {
  #highlights .carousel-item {
    padding: 60px 130px;
  }
}
#highlights .carousel-indicators [data-bs-target] {
  width: 28px;
  height: 4px;
  overflow: hidden;
  text-indent: -9999px;
  margin-right: 5px;
  margin-left: 5px;
}
#daticoesione {
  font-size: 1.125rem;
  line-height: 1.3;
}
#daticoesione h2 {
  font-size: 1.375rem;
  font-weight: bold;
  text-transform: uppercase;
}
#daticoesione #finanziamenti {
  display: flex;
  gap: 1rem;
  flex-direction: column;
  min-height: 62px;
  padding-left: 90px;
  margin-top: 20px;
  background-position: left top;
  background-repeat: no-repeat;
  background-size: auto 62px;
  background-image: url("../images/home/costo_pubblico_ico.1835e937c6e2.svg");
}
@media (min-width: 992px) {
  #daticoesione #finanziamenti {
    margin-top: 0;
  }
}
@media (min-width: 576px) {
  #daticoesione #finanziamenti {
    flex-direction: row;
  }
}
#daticoesione #finanziamenti .value {
  display: block;
  font-size: 1.625rem;
  line-height: 1.5;
}
#daticoesione #finanziamenti:before {
  content: '';
  border-top: 1px solid #FFFFFF;
  border-left: 1px solid #FFFFFF;
}
#daticoesione #finanziamenti :first-child {
  order: -1;
}
#daticoesione ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
#daticoesione ul li {
  display: inline-block;
  margin: 20px 20px 0 0;
}
#videotutorial h2 {
  font-size: 1.875rem;
  padding-bottom: 16px;
  margin-bottom: 20px;
  position: relative;
}
#videotutorial h2::after {
  position: absolute;
  content: '';
  width: 50px;
  height: 5px;
  left: 0;
  bottom: 0;
  background-color: #F08B19;
}
#videotutorial h2:after {
  background-color: #FFFFFF;
}
#videotutorial h3 {
  margin-bottom: 20px;
  font-size: 1.875rem;
  font-weight: bold;
  text-transform: uppercase;
}
#videotutorial img {
  width: 100%;
}
#videotutorial #video-main h4 {
  margin-top: 1rem;
  font-size: 1.375rem;
  font-weight: bold;
  text-transform: uppercase;
}
#videotutorial #video-others > :not(:first-child) {
  margin-top: 2rem;
}
#videotutorial #video-others h4 {
  font-size: 1.125rem;
  font-weight: bold;
  text-transform: uppercase;
}
#videotutorial #video-others h4 a {
  display: inline-block;
  padding-bottom: 38px;
  background: url("../images/arrow_white.7ef05b5c09f6.svg") no-repeat bottom left;
  color: inherit;
}
#daticoesione,
#videotutorial {
  margin-bottom: 80px;
  padding-top: 30px;
  padding-bottom: 30px;
  background-color: #D37100;
  background-image: repeating-radial-gradient(circle at 0 0, transparent 0, #D37100 40px), repeating-linear-gradient(#C56900, #C56900);
  color: #FFFFFF;
}
#daticoesione .ocbtn,
#videotutorial .ocbtn {
  padding: 6px 10px;
  background-color: #FFFFFF;
  color: #133A63;
  font-size: 0.875rem;
}
.new a:after {
  content: 'Novità';
  display: inline-block;
  margin-left: 16px;
  padding: 4px 6px;
  background-color: #F08B19;
  line-height: 1rem;
  font-size: 0.765rem;
  font-weight: bold;
  color: #FFFFFF;
  text-transform: uppercase;
  vertical-align: middle;
}
.new a:lang(en):after {
  content: 'New';
}
.nav-tabs .nav-link {
  border-radius: 0;
  transition: none;
  margin-right: 2px;
  color: #000000;
  text-transform: uppercase;
}
.nav-tabs .nav-link:hover:not(.active),
.nav-tabs .nav-link:focus:not(.active) {
  background-color: #EEEEEE;
}
.nav-tabs .nav-link.active {
  cursor: default;
}
.download-wrapper {
  margin-top: 1em;
  text-align: right;
}
main p a,
main table.dataTable a,
main #item-detail a,
main .flatpage a {
  color: #F08B19 !important;
  font-weight: bold;
}
#head,
#tools,
.notice {
  position: relative;
}
#head::before,
#tools::before,
.notice::before,
#head::after,
#tools::after,
.notice::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(50vw - 50%);
  background-color: inherit;
}
#head::before,
#tools::before,
.notice::before {
  left: calc(50% - 50vw);
}
#head::after,
#tools::after,
.notice::after {
  right: calc(50% - 50vw);
}
#head {
  display: flex;
  align-items: flex-end;
  min-height: 160px;
  padding-top: 40px;
  padding-bottom: 20px;
  margin-bottom: 60px;
  background-color: #F08B19;
  color: #FFFFFF;
}
#head.row {
  margin-left: -12px;
  margin-right: -12px;
  margin-bottom: 0;
  padding-left: 0;
  padding-right: 0;
}
#head.child {
  position: relative;
  padding-top: 80px;
}
#head.child .top-link {
  position: absolute;
  top: 40px;
}
#head.child .top-link a {
  color: #65DCDF;
  font-weight: bold;
  text-transform: uppercase;
  padding-bottom: 12px;
  position: relative;
}
#head.child .top-link a:after {
  position: absolute;
  content: '';
  width: 60px;
  height: 1px;
  left: 0;
  bottom: 0;
  background-color: #65DCDF;
}
#head h1 {
  margin: 0;
  font-size: 1.75rem;
  line-height: 1.3;
  overflow-wrap: break-word;
}
#head .date {
  margin-bottom: 10px;
}
#head ul#submenu {
  list-style: none;
  margin: 0;
  padding: 0;
  display: inline-block;
  margin: 30px 0 20px 0;
  border: 1px solid #00A2C8;
  border-radius: 6px;
}
#head ul#submenu li {
  display: inline-block;
  font-size: 0.75rem;
  text-transform: uppercase;
  color: #FFFFFF;
  line-height: 28px;
}
#head ul#submenu li.selected {
  padding: 0 8px;
  background-color: #00A2C8;
}
#head ul#submenu li a {
  display: inline-block;
  padding: 0 8px;
  color: inherit !important;
}
#head ul#submenu li a:active,
#head ul#submenu li a:hover,
#head ul#submenu li a:focus {
  text-decoration: none;
}
#head p {
  margin: 20px 0 0 0;
  line-height: 1.8;
}
#head p a {
  color: #65DCDF !important;
}
#head .carousel {
  padding: 0 20px 30px 20px;
}
#head .carousel .carousel-item {
  padding: 0 10px;
}
#head .carousel .carousel-control-prev,
#head .carousel .carousel-control-next {
  width: 15px;
  height: auto;
  overflow: hidden;
  text-indent: -9999px;
  text-shadow: none;
  opacity: 1;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}
#head .carousel .carousel-control-prev {
  background-image: url("../images/arrow_left_white.6764866cf4da.svg");
}
#head .carousel .carousel-control-next {
  background-image: url("../images/arrow_right_white.7a279eb4eec5.svg");
}
#head .carousel .carousel-indicators {
  bottom: 4px;
  margin-bottom: 0;
}
#head .carousel .carousel-indicators [data-bs-target] {
  width: 20px;
  height: 3px;
  overflow: hidden;
  text-indent: -9999px;
  border: none;
  margin: 0 3px;
  background-color: #71A0A9;
}
#head .carousel .carousel-indicators [data-bs-target].active {
  background-color: #FFFFFF;
}
.modal {
  z-index: 11000;
  text-align: center;
}
@media screen and (min-width: 576px) {
  .modal:before {
    display: inline-block;
    vertical-align: middle;
    content: '';
    height: 100%;
  }
}
.modal .btn-close {
  background-size: 0.6em;
}
.modal-dialog {
  display: inline-block;
  text-align: left;
  vertical-align: middle;
}
#message-modal .modal-content {
  background-color: #E8F4EB;
}
#message-modal .modal-header {
  padding-left: 30px;
  border-color: #CECECE;
}
#message-modal .modal-header h2 {
  margin: 0;
  text-transform: uppercase;
  font-size: 1.1em;
  font-weight: bold;
  color: #13606F;
  line-height: 19px;
}
#message-modal .modal-body {
  padding: 10px 30px 30px 30px;
}
#message-modal .modal-body ul.messages {
  list-style: none;
  margin: 0;
  padding: 0;
  margin-bottom: 16px;
}
#message-modal .modal-body a {
  color: #F08B19;
  font-weight: bold;
  text-transform: uppercase;
}
#tools {
  background-color: #175798;
  color: #FFFFFF;
  border-top: 1px solid #CECECE;
  padding: 16px 0;
}
#tools::before,
#tools::after {
  top: -1px;
  border: inherit;
}
#tools a {
  color: inherit;
}
#tools .dropdown {
  display: inline-block;
}
#tools .dropdown .dropdown-toggle {
  vertical-align: initial;
  line-height: 28px;
}
#tools #regione-wrapper,
#tools #search-link,
#tools #filter-form {
  display: inline-block;
  margin-left: 30px;
  padding-left: 30px;
  border-left: 1px solid #CECECE;
}
#tools #filter-form label,
#tools #filter-form button {
  display: none;
}
#tools #search-link {
  line-height: 30px;
  text-transform: uppercase;
}
#tools #opendata-links {
  font-weight: bold;
}
#tools #opendata-links ul {
  display: inline-block;
  list-style: none;
  margin: 0;
  padding: 0;
}
#tools #opendata-links ul li {
  display: inline-block;
  position: relative;
  margin-left: 16px;
  padding: 10px 0 10px 34px;
  line-height: 17px;
}
#tools #opendata-links ul li:before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 26px;
  min-height: 26px;
  max-height: 54px;
  background-position: 0 50%;
  background-repeat: no-repeat;
  background-size: contain;
}
#tools #opendata-links ul li.opendata-csv:before {
  background-image: url("../images/csv.68d3fbb31346.svg");
}
#tools #opendata-links ul li.opendata-json:before {
  background-image: url("../images/json.0a93d2acbe40.svg");
}
#tematizzazione ul {
  list-style: none;
  margin: 0;
  padding: 0;
  text-align: center;
}
#tematizzazione > ul {
  display: flex;
  flex-direction: column;
  border: 1px solid #CECECE;
}
#tematizzazione > ul li {
  display: block;
  flex: 1 1 0;
}
#tematizzazione > ul li a {
  display: block;
  height: 100%;
  padding: 10px 0;
  font-size: 0.9375rem;
}
#tematizzazione > ul li a:hover,
#tematizzazione > ul li a:focus {
  text-decoration: none;
  background-color: #EEEEEE;
}
#tematizzazione > ul li a.active {
  cursor: default;
  text-decoration: none;
  background-color: #F08B19;
  color: #FFFFFF;
}
#tematizzazione > ul li a span.value {
  display: block;
  font-size: 1.5rem;
}
#tematizzazione > ul li li {
  padding: 5px 12px;
  font-style: italic;
}
#tematizzazione > ul li li + li {
  position: relative;
}
#tematizzazione > ul li li + li:before {
  content: '';
  display: inline-block;
  width: 70%;
  height: 1px;
  background-color: #CECECE;
  position: absolute;
  top: 0;
  left: 15%;
}
#tematizzazione > ul li li a {
  padding: 0;
  border-radius: 12px;
  font-style: normal;
}
#tematizzazione > ul > li {
  position: relative;
}
#tematizzazione > ul > li + li {
  border-top: 1px solid #CECECE;
}
#tematizzazione > ul > li > a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
#tematizzazione > ul > li .tematizzazione-help {
  display: block;
  width: 20px;
  height: 20px;
  overflow: hidden;
  text-indent: -9999px;
  position: absolute;
  top: 5px;
  right: 5px;
  padding: 0;
  border-radius: 50%;
  background: url("../images/help.6ca919adc8d8.svg") no-repeat center;
  background-color: #FFFFFF !important;
  cursor: pointer !important;
}
#tematizzazione > ul > li .tematizzazione-help:hover,
#tematizzazione > ul > li .tematizzazione-help:focus {
  background-color: inherit;
}
@media (min-width: 768px) {
  #tematizzazione > ul {
    flex-direction: row;
  }
  #tematizzazione > ul > li + li {
    border-top: none;
    border-left: 1px solid #CECECE;
  }
}
.data-notes,
.data-update {
  margin-top: 10px;
  margin-bottom: 50px;
  color: #13606F;
}
.data-notes > :last-child {
  text-align: right;
}
.data-notes a {
  color: inherit;
  text-decoration: underline;
}
.data-update {
  text-align: right;
}
.block-chart {
  overflow: hidden;
  margin-bottom: 40px;
}
.block-chart#programmi {
  margin-top: 0;
}
.block-chart h2 {
  margin: 0;
  color: #F08B19;
  font-size: 1.25rem;
  font-weight: bold;
}
.block-chart h2 + p {
  font-size: 1rem;
}
.block-chart table.highcharts_legend {
  float: left;
  width: 320px;
  margin-top: 10px;
}
.block-chart table.highcharts_legend[id^="fonti_"] {
  width: auto;
}
.block-chart table.highcharts_legend td {
  padding: 5px 0;
  vertical-align: top;
}
.block-chart table.highcharts_legend td.amount {
  padding-left: 8px;
  text-align: right;
  white-space: nowrap;
}
.block-chart table.highcharts_legend span {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 4px;
  margin-right: 10px;
}
.block-chart table.highcharts_legend + .highcharts_wrapper {
  float: right;
}
.block-highlight {
  margin-bottom: 40px;
}
.block-highlight h2 {
  font-size: 1.875rem;
  padding-bottom: 16px;
  margin-bottom: 20px;
  position: relative;
}
.block-highlight h2::after {
  position: absolute;
  content: '';
  width: 50px;
  height: 5px;
  left: 0;
  bottom: 0;
  background-color: #F08B19;
}
.block-highlight table {
  width: 100%;
  margin: 0;
}
.block-highlight table tr td {
  padding: 8px 0;
  vertical-align: top;
  overflow-wrap: break-word;
}
.block-highlight table tr td.amount {
  padding-left: 8px;
  text-align: right;
  white-space: nowrap;
}
.block-highlight table tr + tr td {
  border-top: 1px solid #CECECE;
}
.block-highlight#top-comuni p {
  margin-top: 12px;
  line-height: 1.8;
  color: #000000;
  font-size: 0.6875rem;
}
.block-highlight#altri-progetti {
  margin-bottom: 0;
}
.block-highlight#altri-progetti h2 {
  margin-top: 40px;
  margin-bottom: 20px;
}
.block-highlight#altri-progetti h3 {
  color: #F08B19;
  font-size: 1.25rem;
  font-weight: bold;
}
.block-highlight img {
  margin-bottom: 30px;
}
.block-highlight p {
  font-size: 0.9375rem;
}
.block-highlight .go-page {
  margin-top: 1.5em;
  text-transform: uppercase;
}
.block-highlight .pillola-home img {
  width: 100%;
  margin: 0;
}
.block-highlight .pillola-home h3 {
  font-size: 1.25rem;
  margin-bottom: 14px;
}
.block-highlight .pillola-home .date {
  font-weight: bold;
  text-transform: uppercase;
  margin-bottom: 14px;
}
.block-highlight .news-home {
  margin-bottom: 30px;
}
.block-highlight .news-home h3 {
  margin-top: 0;
  margin-bottom: 14px;
  font-size: 1.25rem;
  text-transform: uppercase;
}
.block-highlight .news-home .date {
  padding: 8px;
  background-color: #F08B19;
  color: #FFFFFF;
  text-transform: uppercase;
  text-align: center;
}
.block-highlight .news-home .date span {
  display: block;
}
.block-highlight .news-home .date span.day {
  padding-bottom: 4px;
  margin-bottom: 4px;
  border-bottom: 1px solid #FFFFFF;
  font-size: 1.75rem;
}
.block-highlight .news-home .date span.month {
  font-size: 1.125rem;
}
.map-outer {
  position: relative;
}
.map-outer .map-selectors {
  margin-bottom: 12px;
}
@media (min-width: 576px) and (max-width: 767px), (min-width: 1200px) {
  .map-outer .map-selectors {
    position: absolute;
    top: 12px;
    right: -8px;
    text-align: right;
  }
}
.map-selectors {
  overflow: hidden;
}
.map-selectors ul {
  float: left;
  border: none;
  margin-right: 8px;
}
.map-selectors ul li a {
  display: inline-block;
  border: 1px solid #F08B19;
  font-size: 0.75rem;
  text-transform: uppercase;
  text-decoration: none;
  line-height: 40px;
  padding: 0 12px;
}
.map-selectors ul li a.active {
  background-color: #F08B19;
  color: #FFFFFF;
}
.map-selectors ul li:first-child a {
  border-top-left-radius: 6px;
  border-bottom-left-radius: 6px;
}
.map-selectors ul li:last-child a {
  border-top-right-radius: 6px;
  border-bottom-right-radius: 6px;
}
.map-selectors ul li + li {
  margin-left: -1px;
}
.search-territorio .typeahead__container {
  background-color: #CECECE;
  padding: 8px;
}
.search-territorio .typeahead__field {
  border-radius: 10px;
  padding: 0 10px 0 30px;
  background: url("../images/search_gray.a58e5f1f560b.svg") no-repeat 8px 50% #FFFFFF;
  background-size: 14px;
}
.search-territorio .typeahead__field input {
  padding: 0;
  border: none;
  line-height: 26px;
  font-size: 1rem;
}
.search-territorio .typeahead__button {
  display: none;
}
.search-territorio .typeahead__list {
  padding: 0;
  font-size: 0.875rem;
}
.search-territorio .typeahead__list li {
  padding: 0;
  border: none;
}
#map-container {
  position: relative;
  background-color: #F8F8F8;
  margin-top: 2px;
}
#map-container svg {
  width: 100%;
}
#map-container svg path.area {
  fill: #CECECE;
}
#map-container svg path.area[style*="fill"] {
  cursor: pointer;
}
#map-container svg path.area[style*="fill"]:hover,
#map-container svg path.area[style*="fill"]:focus {
  opacity: 0.75;
}
#map-container svg circle.marker {
  stroke: #FFFFFF;
  stroke-width: 2 !important;
  fill: #F08B19;
}
#map-container .map-controls {
  position: absolute;
  bottom: 10px;
  right: 10px;
}
#map-container .map-controls .btn {
  color: #999999;
  border-color: #999999;
  background-color: #FFFFFF;
}
#map-container .map-controls .btn img {
  vertical-align: -0.125em;
}
#map-container ul.map-legend {
  list-style: none;
  margin: 0;
  padding: 0;
  position: absolute;
  top: 0;
  right: 0;
  padding: 10px 16px;
  background-color: #F8F8F8;
}
#map-container ul.map-legend li {
  padding: 6px 0;
  line-height: 1;
  font-size: 0.75rem;
}
#map-container ul.map-legend li span {
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 5px;
  margin-right: 6px;
}
#map2-container {
  margin-top: 2px;
}
.d3-tip,
.d3-tip1,
.d3-tip2 {
  z-index: 3;
  pointer-events: none;
  padding: 16px;
  border-radius: 10px;
  background-color: #000000;
  color: #FFFFFF;
  font-size: 0.75rem;
  text-transform: uppercase;
}
.d3-tip ul,
.d3-tip1 ul,
.d3-tip2 ul {
  list-style: none;
  margin: 0;
  padding: 0;
  margin-top: 10px;
  text-transform: none;
}
.d3-tip:after,
.d3-tip1:after,
.d3-tip2:after {
  content: '';
  position: absolute;
  left: 50%;
  top: 100%;
  width: 0;
  height: 0;
  margin-left: -3px;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid #000000;
}
.totale {
  margin-bottom: 26px;
  padding: 10px;
  background-color: #F08B19;
  color: #FFFFFF;
  font-size: 1rem;
  text-align: center;
}
.totale strong {
  display: block;
  font-size: 1.875rem;
  font-weight: normal;
}
.totale.pagamenti {
  background-image: url('data:image/gif;base64,R0lGODlhAQABAIAAABdXmAAAACH5BAAAAAAALAAAAAABAAEAAAICRAEAOw==');
  background-repeat: no-repeat;
  position: relative;
}
.totale.pagamenti .perc-label {
  color: #175798;
  position: absolute;
  bottom: -26px;
  line-height: 18px;
  padding-top: 8px;
}
.totale.pagamenti .perc-label::before {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  height: 8px;
  border-left: 1px solid #175798;
}
.totale.pagamenti .perc-label.m::before {
  margin-left: -1px;
  left: 50%;
}
.totale.pagamenti .perc-label.r::before {
  margin-left: -1px;
  left: 100%;
}
.block-classification {
  margin-bottom: 30px;
}
.block-classification h2 {
  margin-top: 0;
  padding-bottom: 10px;
  border-bottom: 1px solid #CECECE;
  color: #F08B19;
  font-size: 1.25rem;
  font-weight: bold;
}
.block-classification ul {
  list-style: none;
  margin: 0;
  padding: 0;
  text-transform: uppercase;
}
.block-classification ul a {
  font-weight: bold;
}
.block-classification ul#area-list {
  margin-top: -10px;
  text-transform: none;
}
.block-classification ul#area-list li {
  padding: 16px 0;
  border-bottom: 1px solid #CECECE;
}
.block-classification dl dt {
  margin: 14px 0 0 0;
}
.block-classification dl dt:first-of-type {
  margin-top: 0;
}
.block-classification dl.soggetti dt {
  padding-top: 14px;
  border-top: 1px solid #CECECE;
  text-transform: uppercase;
  font-weight: normal;
}
.block-classification dl.soggetti dt:first-of-type {
  padding-top: 0;
  border-top: none;
}
.block-classification dl.soggetti dd {
  font-weight: bold;
}
.block-classification dl.qsn dt {
  text-transform: uppercase;
}
.block-classification dl.ambito {
  display: flex;
  flex-flow: row wrap;
  column-gap: 2rem;
  margin: 1rem 0 0 0;
  padding: 0.5rem 1rem;
  background-color: #F8F8F8;
}
.block-classification dl.ambito dt,
.block-classification dl.ambito dd {
  flex: 1 100%;
}
.block-classification dl.ambito dt {
  margin-top: 12px;
  font-size: 1.125rem;
  font-weight: normal;
}
.block-classification dl.ambito dd {
  margin: 0;
}
.block-classification dl.ambito > dt:first-of-type {
  margin-top: 0;
  font-size: 1.25rem;
}
.block-classification dl.ambito > dd:first-of-type {
  font-size: 1.0625rem;
  font-weight: bold;
}
.block-classification dl.ambito div dd {
  font-weight: bold;
}
.search-head {
  display: flex;
  align-items: flex-end;
  height: 38px;
  margin-bottom: 20px;
  padding-bottom: 10px;
  border-bottom: 1px solid #CECECE;
  font-weight: bold;
}
.search-head ul {
  list-style: none;
  margin: 0;
  padding: 0;
  margin: 0 40px 0 auto;
  float: right;
}
.search-head ul li {
  float: left;
  margin-left: 30px;
}
.search-head p {
  margin: 0;
}
.search-item {
  font-size: 0.9375rem;
}
.search-item + .search-item {
  margin-top: 30px;
  padding-top: 30px;
  border-top: 1px solid #CECECE;
}
.search-item h3 {
  margin: 0;
  font-size: inherit;
  font-weight: bold;
}
.search-item .totale {
  padding: 4px;
}
.search-item .totale strong {
  display: inline;
  font-size: 1.0625rem;
  white-space: nowrap;
}
ul.paginator {
  list-style: none;
  margin: 0;
  padding: 0;
  margin: 100px 0 20px 0;
  float: right;
}
ul.paginator li {
  float: left;
}
ul.paginator li span,
ul.paginator li a {
  margin: 10px 15px;
}
ul.paginator li .next,
ul.paginator li .prev {
  margin: 0;
  padding: 10px 15px;
  background-color: #F08B19;
  color: #FFFFFF;
  text-transform: uppercase;
}
ul.paginator li .next {
  margin-left: 15px;
}
ul.paginator li .prev {
  margin-right: 15px;
}
ul.paginator li .active {
  color: #F08B19;
}
#search-reset {
  text-align: right;
}
#search-reset a {
  color: #F08B19;
  font-size: 0.75rem;
  font-weight: bold;
  text-transform: uppercase;
}
.search-activefilter {
  padding: 20px 14px;
  background-color: #E9E9E9;
  border: 1px solid #CECECE;
  border-bottom: none;
}
.search-activefilter h2 {
  margin: 10px 0 !important;
}
.search-activefilter ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.search-activefilter ul li {
  position: relative;
  margin-top: 16px;
  padding-left: 40px;
  font-weight: bold;
  color: #A8A8A8;
  line-height: 1.2;
  font-size: 0.9375rem;
}
.search-activefilter ul li a {
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -15px;
  width: 30px;
  height: 30px;
  overflow: hidden;
  text-indent: -9999px;
  background: url("../images/icons/x.df13156bbaa7.svg") #A8A8A8 no-repeat center / 1.8em;
}
.search-activefilter ul li a:hover,
.search-activefilter ul li a:focus {
  color: #A8A8A8;
  background-color: #FFFFFF;
}
.search-activefilter ul li span {
  display: block;
  color: #000000;
}
.search-filter {
  background-color: #F8F8F8;
  border: 1px solid #CECECE;
}
.search-filter h2 {
  margin: 20px 14px !important;
}
.search-filter .panel {
  border-top: 1px solid #CECECE;
  background-color: #FFFFFF;
}
.search-filter .panel .panel-heading .panel-title {
  margin: 0;
  font-size: 1rem;
}
.search-filter .panel .panel-heading .panel-title a {
  display: block;
  background: url("../images/arrow_gray_up.f9e1fa02bc5f.svg") no-repeat 95% 50%;
  background-size: 14px;
  padding: 12px;
  text-transform: uppercase;
}
.search-filter .panel .panel-heading .panel-title a:hover,
.search-filter .panel .panel-heading .panel-title a:focus {
  text-decoration: none;
}
.search-filter .panel .panel-heading .panel-title a.collapsed {
  background-color: #F8F8F8;
  background-image: url("../images/arrow_orange_dw.e55b2bca4fdf.svg");
}
.search-filter .panel .panel-collapse form {
  padding: 0 14px 14px 14px;
}
.search-filter .panel .panel-collapse form button,
.search-filter .panel .panel-collapse form input {
  line-height: 2;
}
.search-filter .panel .panel-collapse form button {
  background-color: #F08B19;
  border-color: #F08B19;
}
.search-filter .panel .panel-collapse form .typeahead__container {
  font-size: 0.875rem;
}
.search-filter .panel .panel-collapse form .typeahead__search-icon {
  background-image: url("../images/search_white.3eb54a7cf713.svg");
  background-size: 16px;
}
.search-filter .panel .panel-collapse form .typeahead__list {
  padding: 0;
}
.search-filter .panel .panel-collapse form .typeahead__list li {
  padding: 0;
  border: none;
}
.search-filter .panel .panel-collapse ul {
  list-style: none;
  margin: 0;
  padding: 0;
  padding: 0 14px 14px 14px;
}
.search-filter .panel .panel-collapse ul li {
  padding: 4px 0;
  color: #A8A8A8;
}
.search-filter .panel .panel-collapse p {
  margin: 0;
  padding: 4px 14px 14px 14px;
}
.progetto-detail .notice {
  background: url("../images/alert.351fed9749b8.svg") no-repeat 0 20px #F8F8F8;
  padding: 20px 40px;
  line-height: 25px;
  font-size: 0.9375rem;
  font-weight: bold;
  text-transform: uppercase;
}
.progetto-detail .notice a {
  text-decoration: underline;
}
.progetto-detail .notice ul {
  list-style: none;
  margin: 0;
  padding: 0;
  font-weight: normal;
}
.progetto-detail #finanziamenti-altro {
  margin: -40px 0 40px 0;
}
.progetto-detail #finanziamenti-altro dl {
  overflow: hidden;
  margin: 0;
}
.progetto-detail #finanziamenti-altro dl * {
  float: left;
}
.progetto-detail #finanziamenti-altro dl dt {
  clear: both;
  font-weight: normal;
}
.progetto-detail #finanziamenti-altro dl dd {
  margin-left: 10px;
  font-weight: bold;
}
.progetto-detail #finanziamenti-altro dl.altre-risorse {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid #CECECE;
}
.progetto-detail #location-list {
  margin-bottom: 20px;
  text-transform: none;
}
.progetto-detail #location-list li {
  display: inline;
}
.progetto-detail #location-list li:after {
  content: ',';
}
.progetto-detail #location-list li:last-of-type:after {
  content: '';
}
table.dataTable {
  padding-top: 30px;
}
table.dataTable th {
  text-align: center;
  text-transform: uppercase;
  white-space: nowrap;
}
.dataTables_wrapper.no-footer .dataTables_scrollBody {
  border-bottom: none !important;
}
.dataTables_wrapper .dataTables_filter input[type="search"] {
  border: 1px solid #CECECE;
  border-radius: 4px;
  padding: 1px;
}
@media (min-width: 641px) {
  .dataTables_filter + .dataTables_filter {
    margin-right: 10px;
  }
}
.flatpage h2 {
  margin-top: 0;
  font-size: 1.75rem;
}
.flatpage h3 {
  margin-top: 0;
  font-size: 1.0625rem;
}
.flatpage p {
  line-height: 1.5;
  font-size: 1.125rem;
}
.flatpage table {
  width: 100%;
  border-top: 1px solid #CECECE;
  border-left: 1px solid #CECECE;
}
.flatpage table th {
  vertical-align: middle !important;
}
.flatpage table th,
.flatpage table td {
  border-style: solid;
  border-color: #CECECE;
  border-width: 0 1px 1px 0 !important;
  padding: 8px;
}
.flatpage table.tbl1 {
  border: none;
}
.flatpage table.tbl1 tr:first-of-type th {
  width: 50%;
  border: none;
  padding-bottom: 30px;
  text-align: center;
}
.flatpage table.tbl1 th {
  border-right: none;
  padding: 20px 0 10px 0;
  font-size: 1.0625rem;
}
.flatpage table.tbl1 td {
  border: none;
  vertical-align: top;
  padding: 30px 30px 10px 30px;
}
@media (min-width: 576px) {
  .flatpage .dataset {
    padding-left: 30px;
  }
}
.flatpage .dataset .dataset-title {
  position: relative;
  margin: 0;
  padding: 16px 100px 10px 0;
  border-bottom: 1px solid #CECECE;
}
.flatpage .dataset .dataset-title .toggle-btn {
  position: absolute;
  right: 0;
  bottom: 10px;
  margin: 0;
  padding: 0 20px 0 0;
  border: 0;
  color: #F08B19;
  font-weight: bold;
  background: url("../images/arrow_orange_up.24e74c7827ed.svg") no-repeat right center;
  background-size: 14px;
}
.flatpage .dataset .dataset-title .toggle-btn.collapsed {
  background-image: url("../images/arrow_orange_dw.e55b2bca4fdf.svg");
}
@media (min-width: 576px) {
  .flatpage .dataset .dataset-title {
    margin-left: -30px;
  }
}
.flatpage .dataset table {
  border: none;
  margin-top: 30px;
}
.flatpage .dataset table th,
.flatpage .dataset table td {
  border: none;
  padding: 0;
  vertical-align: top !important;
}
.flatpage .dataset table th {
  width: 1%;
  padding-right: 4px;
  white-space: nowrap;
}
.flatpage .dataset table:last-of-type th {
  width: 50%;
  padding-right: 0;
  padding-bottom: 10px;
}
.flatpage .dataset table:last-of-type td {
  padding-bottom: 20px;
}
.flatpage .dataset table:last-of-type th:nth-of-type(odd),
.flatpage .dataset table:last-of-type td:nth-of-type(odd) {
  padding-right: 5px;
}
@media (min-width: 576px) {
  .flatpage .dataset table:last-of-type th:nth-of-type(odd),
  .flatpage .dataset table:last-of-type td:nth-of-type(odd) {
    padding-right: 30px;
  }
}
.flatpage .dataset table:last-of-type th:nth-of-type(even),
.flatpage .dataset table:last-of-type td:nth-of-type(even) {
  padding-left: 5px;
}
@media (min-width: 576px) {
  .flatpage .dataset table:last-of-type th:nth-of-type(even),
  .flatpage .dataset table:last-of-type td:nth-of-type(even) {
    padding-left: 30px;
  }
}
.flatpage .dataset table:last-of-type tr + tr th {
  padding-top: 20px;
  border-top: 1px solid #CECECE !important;
}
.chart-container {
  display: none;
  margin-top: 25px;
}
.chart-container h2 {
  margin-top: 0;
  font-size: 1.0625rem;
  text-align: center;
}
.chart-container form {
  margin-bottom: 14px;
  text-align: center;
}
.chart-container form select {
  text-align: center;
}
.chart-container + .chart-container {
  padding-top: 25px;
  border-top: 1px solid #CECECE;
}
#item-list {
  font-size: 0.9375rem;
  line-height: 1.5;
}
#item-list #item-list-intro {
  margin-bottom: 50px;
}
#item-list #item-list-intro p {
  margin: 0;
}
#item-list .tags a {
  color: #F08B19 !important;
  font-weight: bold;
}
#item-list .item + .item {
  margin-top: 50px;
}
#item-list .item .date {
  color: #999999;
  font-weight: bold;
  margin-bottom: 8px;
}
#item-list .item h3 {
  margin: 0;
  padding: 8px 0;
  border-top: 1px solid #CECECE;
  border-bottom: 1px solid #CECECE;
  font-size: 1.25rem;
  font-weight: bold;
  line-height: inherit;
}
#item-list .item .tags {
  margin-top: 8px;
}
#item-list .item p:first-of-type {
  margin-top: 20px !important;
}
#item-detail {
  font-size: 0.9375rem;
  line-height: 1.5;
}
#item-detail .descrizione {
  line-height: inherit;
}
#item-detail .tags {
  margin-top: 40px;
  font-size: 1.375rem;
}
#item-detail .list-link {
  display: block;
  border: 1px solid #CECECE;
  background-color: #F8F8F8;
  padding: 10px;
  margin-right: 80px;
  margin-bottom: 40px;
  font-size: 1.375rem;
  text-transform: uppercase;
}
#item-detail .list-link:active,
#item-detail .list-link:hover,
#item-detail .list-link:focus {
  text-decoration: none;
}
#opendata .intro {
  padding-top: 30px;
  padding-bottom: 20px;
  margin-bottom: 40px;
  background-color: #F1F1F1;
}
#opendata aside .search-filter {
  margin-bottom: 30px;
  background-color: transparent;
}
#opendata aside .search-filter .panel {
  background-color: #F8F8F8;
}
#opendata aside .search-filter .panel .panel-heading .panel-title a {
  transition: background-color 0.5s;
}
#opendata aside .search-filter .panel .panel-heading .panel-title a.collapsed {
  background-color: #FFFFFF;
}
#opendata aside h2 {
  font-size: 2rem;
}
#opendata aside h2:after {
  content: none;
}
#opendata #opendatatree section:first-of-type {
  margin-top: 20px !important;
}
#opendata h2 {
  margin: 0 0 20px 0;
  font-size: 1.375rem;
}
#opendata .opendata-section {
  padding: 4px 20px;
  border-bottom: 1px solid #CECECE;
  transition: background-color 0.5s;
}
#opendata .opendata-section.show {
  background-color: #F8F8F8;
  border-bottom: none;
}
#opendata .opendata-section .opendata-subsection {
  margin-left: 20px;
}
#opendata .opendata-section .opendata-subsection + .opendata-subsection {
  border-top: 1px solid #CECECE;
}
#opendata .opendata-section h3,
#opendata .opendata-section h4 {
  margin: 0;
  padding: 16px 0;
  font-size: 1.125rem;
}
#opendata .opendata-section h3 a,
#opendata .opendata-section h4 a {
  display: block;
  color: #F08B19;
}
#opendata .opendata-section h4 {
  padding: 8px 0;
  font-size: 1rem;
}
#opendata .opendata-section .downloads {
  display: flex;
  flex-direction: column;
  margin-left: 10px;
}
#opendata .opendata-section .downloads a.download {
  font-size: 0.8125rem;
}
#opendata .opendata-section .downloads a.download + a.download {
  margin-top: 4px;
}
#opendata .opendata-section a[data-bs-toggle] {
  font-weight: bold;
  padding-right: 20px;
  background: url("../images/arrow_gray_up.f9e1fa02bc5f.svg") no-repeat right center;
  background-size: 14px;
}
#opendata .opendata-section a[data-bs-toggle]:active,
#opendata .opendata-section a[data-bs-toggle]:hover,
#opendata .opendata-section a[data-bs-toggle]:focus {
  text-decoration: none;
}
#opendata .opendata-section a[data-bs-toggle].collapsed {
  background-image: url("../images/arrow_orange_dw.e55b2bca4fdf.svg");
}
#opendata .opendata-section .collapse {
  padding-bottom: 16px;
}
#opendata .opendata-section table.table tr td {
  border-top: none;
  width: 1%;
  white-space: nowrap;
}
#opendata .opendata-section table.table tr td:first-of-type {
  width: auto;
  white-space: normal;
}
#opendata .opendata-section table.table tr td:first-of-type a {
  color: #F08B19;
  font-weight: bold;
}
#opendata .opendata-section table.table tr td:nth-of-type(3) {
  text-align: right;
}
#opendata .opendata-section table.table tr td a[data-bs-toggle] {
  display: inline-block;
  margin-left: 50px;
  font-size: 0.8125rem;
  text-transform: uppercase;
  line-height: 27px;
}
#opendata .opendata-section table.table tr.subitems td {
  padding: 0;
  border: none;
}
#opendata .opendata-section table.table tr.subitems td ul {
  list-style: none;
  margin: 0;
  padding: 0;
  padding: 0 30px;
  border-top: 1px solid #CECECE;
  background-color: #F8F8F8;
}
#opendata .opendata-section table.table tr.subitems td ul li {
  padding: 8px 0;
  display: flex;
  justify-content: end;
}
#opendata .opendata-section table.table tr.subitems td ul li + li {
  border-top: 1px solid #CECECE;
}
#opendata .opendata-section table.table tr.subitems td ul li a {
  text-align: right;
}
#opendata .opendata-section table.table tr.subitems td ul li a.download {
  text-align: left;
  white-space: nowrap;
}
#opendata .opendata-section table.table tr + tr td {
  border-top: 1px solid #CECECE;
}
#opendata .opendata-section .notes {
  margin: 0;
  font-style: italic;
}
#opendata #progetti .opendata-section:nth-of-type(2),
#opendata #progetti .opendata-section:nth-of-type(3),
#opendata #progetti .opendata-section:nth-of-type(4),
#opendata #progetti .opendata-section:nth-of-type(5) {
  padding-left: 40px;
}
#opendata .search-head {
  display: block;
  height: auto;
  margin-top: 20px;
  margin-bottom: 0;
}
#opendata .search-head h2 {
  font-size: 1.5rem;
}
#opendata .search-head h2:after {
  width: 100%;
}
#opendata .search-item {
  padding: 20px;
  border: 1px solid #CECECE;
  border-radius: 4px;
  font-size: 1rem;
}
#opendata .search-item .dataset-header .downloads {
  display: flex;
  flex-direction: column;
}
#opendata .search-item .dataset-header .downloads .download + .download {
  margin-top: 4px;
}
#opendata .search-item .dataset-body {
  color: #707070;
}
#opendata .search-item a {
  color: #F08B19;
  font-weight: bold;
}
#opendata .search-item a.download {
  white-space: nowrap;
  font-size: 0.875rem;
}
#opendata .search-item h3 {
  margin-bottom: 6px;
  text-transform: uppercase;
}
#opendata .search-item .dataset-footer ul li {
  display: inline;
  margin-right: 20px;
  white-space: nowrap;
}
.dataset-detail .download {
  background-size: 30px;
  font-size: 0.875rem;
  line-height: 1.2;
  letter-spacing: 0;
}
.dataset-detail .download + .download {
  margin-left: 20px;
}
.dataset-detail .dataset-footer ul {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
}
.dataset-detail .dataset-footer ul li {
  margin-bottom: 0.8rem;
}
.dataset-detail #more-datasets h2 {
  margin-top: 50px;
  margin-bottom: 30px;
  font-size: 1.5rem;
}
.dataset-detail #more-datasets h2:after {
  width: 100%;
}
.dataset-detail #more-datasets .dataset {
  margin-top: 20px;
  padding: 20px;
  border: 1px solid #CECECE;
  border-radius: 4px;
  font-size: 1rem;
  color: #707070;
}
.dataset-detail #more-datasets .dataset h3 {
  font-size: 1.0625rem;
  font-weight: bold;
  text-transform: uppercase;
}
.dataset-detail #more-datasets .dataset .download {
  display: flex;
  align-items: center;
  min-height: 30px;
}
.dataset-detail #more-datasets .dataset .download + .download {
  margin-left: 0;
  margin-top: 10px;
}
.dataset-header,
.dataset-body {
  margin-bottom: 16px;
  border-bottom: 1px solid #CECECE;
}
.dataset-header {
  padding-bottom: 4px;
}
.dataset-header > * {
  margin-bottom: 6px;
}
.dataset-header .period .value {
  font-weight: bold;
}
@media (min-width: 1200px) {
  .dataset-header {
    overflow: hidden;
  }
  .dataset-header .period {
    float: left;
  }
  .dataset-header .downloads {
    float: right;
  }
}
.dataset-footer ul {
  list-style: none;
  margin: 0;
  padding: 0;
  color: #707070;
}
.dataset-footer ul li .value {
  color: #000000;
  white-space: normal;
}
.dataset-footer .last-update {
  display: inline-block;
  padding: 4px;
  margin-top: 20px;
  background-color: #F2F2F2;
}
.dataset-footer .last-update .value {
  font-weight: bold;
}
@media (max-width: 575px), (min-width: 768px) and (max-width: 991px) {
  #map-container .map-controls {
    bottom: auto;
    top: 10px;
  }
  #map-container ul.map-legend {
    position: static;
  }
  #map-container ul.map-legend li {
    display: inline-block;
    margin-right: 10px;
  }
}
@media (-ms-high-contrast: none) {
  #map-container {
    padding-bottom: 130%;
  }
  #map-container svg {
    position: absolute;
    height: 100%;
  }
}
@media print {
  a[href]:after {
    content: none !important;
  }
}
/*# sourceMappingURL=project.css.a0149e26af12.map */