/* ! fix col safari */
.row:before, .row:after {
  display: none !important;
}

/* ! override struct bootstrap-italia */
@media only screen and (min-width: 1340px) {
  .container {
    max-width: 1280px;
  }

  .it-carousel-wrapper.it-carousel-landscape-abstract {
    max-width: 1280px;
  }
}

.btn-block {
  border-radius: 4px;
}

.collapse-header .btn {
  font-size: 18px;
}

a.read-more,
.cdc-list-wrapper a,
#trasparenza a,
#navSearch a {
  text-decoration: none;
}

a:hover.read-more,
.cdc-list-wrapper a:hover,
#trasparenza a:hover,
#navSearch a:hover {
  text-decoration: underline;
}

.breadcrumb-container .active a {
  text-decoration: none;
}

.navbar .navbar-collapsable {
  /* mantiene la navigazione principale centrata */
  width: inherit !important;
  z-index: 2;
}

a.text-white:focus,
a.text-white:hover {
  color: #fff !important;
}

.form-group {
  margin-bottom: 2.4rem;
}

.link-list-wrapper>ul {
  margin-left: 0;
}

/* ! gestione spaziature verticali */
.mb-4 {
  margin-bottom: 2em !important;
}

.pb-4 {
  padding-bottom: 2em !important;
}

/* ! mappe google */
iframe.map  {
  padding-bottom: 2em;
  width: 100%;
  height: 100%;
  min-height: 400px;
}

/* ! accordion vecchi */
.DnnModule-CdcDnnAccordion:last-of-type  {
  margin-bottom: 2em;
}

/* ! spazia se l'accordion è seguito da un modulo */
.DnnModule-CdcDnnAccordion + .DnnModule-CdcDnnLinks,
.DnnModule-CdcDnnAccordion + .DnnModule-CdcInternetDnnModuleContent,
.DnnModule-CdcDnnAccordion + .DnnModule-CdcDnnArgomentiCorrelati{
  margin-top: 2em;
}

#Title {
  margin-bottom: 1em;
}

/* ! carousel stessa altezza card */
@media (min-width: 768px) {
  .owl-carousel .owl-stage {
    display: flex;
  }

  .owl-carousel .owl-item {
    display: flex;
    flex: 1 0 auto;
  }

  .it-carousel-wrapper .card-wrapper {
    padding-bottom: 0;
    height: 100%;
  }
}

/* ! skiplinks */
.skiplinks {
  top: 0;
  left: 0;
  right: 0;
  position: fixed;
  width: 100%;
  z-index: 1100;
  background-color: #f8f8f8;
  max-width: 832px;
  left: 50%;
  right: auto;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  border-radius: 0 0 4px 4px;
}

/* ! cookie */
.cookiebar.show {
  display: inherit !important;
}

.cookiebar p {
  width: 100% !important;
  margin: 0;
}

.cookiebar .cookiebar-buttons {
  width: 100% !important;
  margin-top: 20px;
  display: flex !important;
  justify-content: center !important;
}

/* ! icon share */
.share .left {
  float: inherit;
}

.share .btn-dropdown {
  padding: 10px;
  border-radius: 4px;
}

.share .btn-dropdown:hover,
.share .btn-dropdown:focus {
  background-color: #ECECEC;
}

/* ! sections */
.card .card-body .card-text {
  /* font-family: 'Titillium Web', sans-serif; */
  /* line-height: normal !important; */
  line-height: inherit;
}

.it-carousel-wrapper.it-carousel-landscape-abstract .it-single-slide-wrapper .it-text-slider-wrapper-outside .card .card-body a.read-more {
  float: inherit;
  display: block;
}

.card.card-big .card-body {
  padding: 18px 48px;
}

.it-hero-wrapper {
  align-items: normal;
  min-height: 280px;
}

.it-hero-wrapper .it-hero-text-wrapper {
  padding: 0 0 20px 0;
}

.it-hero-wrapper .it-hero-text-wrapper p {
  font-family: "Titillium web", sans-serif;
}

.card .card-body .card-text {
  font-family: inherit;
  font-size: inherit;
}

/* ! italy map */
path:focus {
  outline: inherit;
  z-index: 9999;
}

.region-decoration {
  fill: #0066cc !important;
  transition: fill .4s ease-in-out;
}

.cls-1,
.cls-2 {
  fill: #d9dadb;
}

.cls-1 {
  stroke: #fff;
  stroke-miterlimit: 10;
  stroke-width: 1.55px;
}

.cls-1:hover,
.cls-2:hover {
  fill: #0066cc;
  transition: fill .4s ease-in-out;
}

.img-fluid {
  width: 100% \9;
}

p.chip-cdc {
  font-weight: bold;
  font-size: .888em;
}

/* ! sezione documenti */
.it-primary a.read-more:hover,
a.read-more.dark:hover {
  color: #fff;
}

.it-hero-wrapper .it-hero-text-wrapper p.big-data {
  font-size: 4.666rem !important;
  line-height: 1.25;
  font-weight: 800;
}

.it-hero-wrapper .it-hero-text-wrapper p.big-data.text {
  margin: .5em auto;
  font-size: 2.222rem !important;
  line-height: 1.2;
}

div.btn-doc {
  padding: .3em;
  background-color: #fff;
  border-radius: .5em;
}

div.btn-doc a {
  text-transform: uppercase;
  font-size: 0.875em;
  font-weight: 600;
  color: #17324D;
}

.card.card-bg {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* ! sezioni con bg scuro */
#focus .card {
  background-color: #184B70;
  /* For browsers that do not support gradients */
  background-image: linear-gradient(180deg, #477070, #004080);
  /* Standard syntax (must be last) */
}

.card-wrapper.gradient-bg-focus .card .card-body .category-top,
.card-wrapper.gradient-bg-focus .card h1,
.card-wrapper.gradient-bg-focus .card h2,
.card-wrapper.gradient-bg-focus .card h3,
.card-wrapper.gradient-bg-focus .card h4,
.card-wrapper.gradient-bg-focus .card h5,
.card-wrapper.gradient-bg-focus .card p,
.card-wrapper.gradient-bg-focus .card a {
  color: #fff;
}

.it-list-box li a {
  padding-top: .5em;
  padding-bottom: .5em;
  display: block;
}

/* ! form */
.form-group small.form-text {
  position: inherit;
}

.collapse-body>.form-row:first-child {
  padding-top: 15px;
}

.collapse-body label {
  width: auto !important;
}

/* ! separatore elementi */
.separator span:not(:first-child):before {
  content: '—';
  display: inline-block;
  margin: 0 8px;
}

/* ! button collapse */
.btn.btn-collapse {
  font-size: 100%;
}

.btn[aria-expanded="true"].btn-collapse.btn-outline-primary {
  background: #06c;
  color: #fff;
}

.btn[aria-expanded="true"].btn-collapse.btn-outline-primary .icon-primary {
  fill: #fff !important;
}

.btn.btn-collapse .icon-expand {
  transition: transform .3s,-webkit-transform .3s;
}

.btn[aria-expanded="true"].btn-collapse .icon-expand {
  transform: scaleY(-1);
}

/* ! immagine float left */
.img-float-left {
  overflow: hidden;
  margin-bottom: 0.5em;
  margin-top: 0.5em;
  border-radius: 4px;
}

.img-float-left img {
  width: 100%;
  /* height: 345px; */
  height: 430px;
  object-fit: cover;
}

@media (min-width: 1200px) {
  .img-float-left {
    width: 55%;
    float: left;
    margin-right: 1.5em;
  }
  .img-float-left img {
    height: 305px;
  }
}

/* ! position absolute bottom */
.position-abs-bottom {
  position: absolute;
  bottom: 24px;
}

/* ! focus per accessibilità */
a.focus--mouse {
  box-shadow: none !important;
  outline: none !important;
}

a:focus,
a:active,
.dropdown-toggle:focus,
.dropdown-toggle:active {
  outline-offset: 2px;
  outline: 2px solid #f90;
}

a:focus,
a:active {
  text-decoration: underline !important;
}

a.btn:focus,
a.btn:active,
.item-search-result .details a:focus,
.item-search-result .details a:active {
  text-decoration: none !important;
}

a.btn-documenti:focus,
a.btn-documenti:active {
  outline-offset: 2px;
  outline: 2px solid #f90;
  text-decoration: none;
}

.skiplinks a.sr-only:focus,
.skiplinks a.sr-only:active {
  outline: none !important;
  box-shadow: none;
}

.nav-tabs a:focus,
.nav-tabs a:active {
  outline-offset: -2px !important;
  /* background-color: #eee !important; */
  text-decoration: none !important;
}

#sediRegionali a:focus,
#sediRegionali a:active {
  outline: none;
}

.cdc-list-wrapper a:focus,
.cdc-list-wrapper a:active {
  display: inline-block;
}

.link-list-wrapper a:focus span,
.link-list-wrapper a:active span {
  text-decoration: inherit;
}

#doc .card .card-body .card-title:focus {
  display: block;
}

a.page-link:focus,
a.page-link:active,
button:focus,
button:active,
.it-carousel-control button:focus,
.it-carousel-control button:active {
  outline-offset: 2px;
  outline: 2px solid #f90;
  box-shadow: none;
}

.thumb-nav a:focus,
.thumb-nav a:active {
  outline-offset: 6px;
  outline: 4px solid #f90;
}

.item-search-result .details a:focus,
.item-search-result .details a:active {
  display: inline-block;
  outline-offset: -2px;
}

.form-check [type="checkbox"]:focus+label,
.form-check [type="checkbox"]:active+label,
.form-check [type="radio"]:focus+label,
.form-check [type="radio"]:active+label {
  outline-offset: 2px;
  outline: 2px solid #f90;
}
