.listItem {
  padding: 0.8rem 0;
  border-bottom: 1px dashed #707070;
}

.caricaAltro {
  padding: 0.8rem 0;
  color: var(--lightRed);
  text-decoration: uppercase;
  cursor: pointer;
}

.caricaAltro:hover {
  color: var(--red);
}

.caricaAltro i {
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}

.caricaAltro[aria-expanded="true"] i {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}

.nav-tabs {
  border: 0;
}

.programmiTab {
  border-radius: 38px;
  padding: 0.5rem 1rem;
  background: var(--lightPurple);
  color: var(--white);
  cursor: pointer;
}

.programmiTab span {
  opacity: 0.7;
  font-weight: 600;
}

.programmiTab.show,
.programmiTab:hover {
  background: var(--white);
  color: var(--purple);
}

.programmiTab.show span,
.programmiTab:hover span {
  opacity: 1;
}

.mainContent {
  overflow: auto;
}

.mainContent table {
  width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
  margin-bottom: 2rem;
  border: 0;
  border-color: var(--grey);
  background-color: transparent;
}

.mainContent td,
.mainContent th {
  padding: 1rem;
}

.mainContent tr>td:not(td:first-child) {
  white-space: nowrap;
}


.mainContent th {
  color: var(--purple);
  font-size: 1.1rem;
  font-weight: 500;
}

.mainContent tr {
  border-bottom: 1px dashed #707070;
}

.mainContent caption {
  font-size: 0.8rem;
  color: var(--black);
}

.mainContent h2,
.mainContent h3,
.mainContent h4,
.mainContent h5,
.mainContent h6 {
  color: var(--green);
  font-weight: 500;
  font-size: 1.65rem;
  margin-bottom: 1.5rem;
}

.mainContent [class*="title"]:not(:first-child) {
  margin-top: 1.2em;
}

.mainContent ul {
  margin-top: 1rem;
}

.mainContent .resizer{
  width: 70%;
  margin: auto;
}

.mainContent .imgContainer{
  padding-top: 120%;
}

.mainContent ul{
  margin-top: 1rem;
}

.mainContent li{
  position: relative;
  padding-left: 1.5rem;
  margin-bottom: 1rem;
  line-height: 1.5;
}


.mainContent li:last-child{
  margin-bottom: 0;
}

.mainContent li::before{
  content: '';
  width: 20px;
  height: 15px;
  position: absolute;
  background-image: url('../images/bullet-purple.svg');
  background-size: cover;
  background-position: center;
  left: 0;
  top: 5px;
}

.mainContent blockquote{
  position: relative;
}

.mainContent blockquote p{
  margin-bottom: 0;
}

.mainContent blockquote:not(.withQuote):before{
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 0.5em;
  height: 100%;
  background-image: var(--purple);
}

.mainContent blockquote > p, .mainContent blockquote > span, .mainContent blockquote > a{
  font-style: italic;
  padding: 0;
}

.mainContent blockquote footer{
  text-align: right;
}

.mainContent blockquote footer, .mainContent blockquote footer cite, .mainContent blockquote footer > p, .mainContent blockquote footer > a{
  font-size: 0.9em;
  padding: 0;
}

.mainContent blockquote footer cite{
  font-size: 0.9em;
  font-weight: 700;
}

.mainContent blockquote.withQuote{
  --quoteSize: 1.9em;
  --quoteRatio: 1.158;
  position: relative;
  padding-block: calc(var(--quoteSize) + 0.5em);
  padding-inline: calc(var(--quoteSize) * var(--quoteRatio) * 0.5);
}

.mainContent blockquote.withQuote::before,
.mainContent blockquote.withQuote::after{
  content: "";
  background: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='41.964'%20height='37'%20viewBox='0%200%2041.964%2037'%3E%3Cg%20transform='translate(-304%20-1602)'%3E%3Cpath%20d='M1.773,46.3H20.5l-.959,37H9.808L2.038,58.2Z'%20transform='translate(302.227%201555.7)'%20fill='%239F4188'/%3E%3Cpath%20d='M1.773,46.3H20.5l-.959,37H9.808L2.038,58.2Z'%20transform='translate(325.467%201555.7)'%20fill='%239F4188'/%3E%3C/g%3E%3C/svg%3E") no-repeat center / contain;
  height: var(--quoteSize);
  width: calc(var(--quoteSize) * var(--quoteRatio));
  position: absolute;
}

.mainContent blockquote.withQuote::before{
  top: 0;
  left: 0;
}

.mainContent blockquote.withQuote::after{
  bottom: 0;
  right: 0;
  transform: rotate(180deg);
}

.mainContent figure {
  max-width: 100%;
}

.mainContent figure > img, .mainContent img{
  width: 100%;
}

.mainContent figure > figcaption{
  margin-top: 0.5rem;
  position: relative;
  font-size: 0.9em;
  font-style: italic;
  padding-left: .7rem;
}

.mainContent figure > figcaption::after{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 5px;
  height: 1em;
  background: var(--purple);
  transform: skew(-10deg);
}

@media (max-width: 1199px) {
  .mainContent table th {
    text-align: center;
  }

  .mainContent ul {
    column-count: 1;
  }

  .mainContent .resizer{
    width: 100%;
  }

  .mainContent .imgContainer{
    padding-top: 70%;
  }
}

@media(max-width: 991px) {}

@media(max-width: 767px) {

  .mainContent table::before {
    /* content: ""; */
    width: 20%;
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    background: linear-gradient(90deg, rgba(247, 247, 247, 0) 0%, rgba(247, 247, 247, 0.8) 56%);
  }

  .mainContent ul li {
    padding-bottom: 0.5rem;
  }

  .mainContent .imgContainer{
    padding-top: 120%;
  }
}
@media (max-width: 575px){

  .mainContent blockquote{
    text-align: center;
    padding: 1.54em;
    margin: 0.3em 0;
  }
}

@media (min-width: 576px){
  
  .mainContent blockquote{
    text-align: center;
    margin: 0.3em 0;
  }
}

@media (min-width: 768px){

  .mainContent blockquote{
    text-align: left;
    margin: 0.8em 0;
  }

}