.border_radius {
  border-radius: 8px;
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
}
@keyframes horizontal-shaking {
  0% {
    transform: translateX(0);
  }
  25% {
    transform: translateX(5px);
  }
  50% {
    transform: translateX(-5px);
  }
  75% {
    transform: translateX(5px);
  }
  100% {
    transform: translateX(0);
  }
}
.mixin-colore-sfondo.sfondo-rosa {
  background-color: #F5EDE7;
}
.mixin-colore-sfondo.sfondo-azzurro {
  background-color: #EDF4F9;
}
.mixin-colore-sfondo.sfondo-acquamarina {
  background-color: #E9F4F4;
}
.mixin-colore-sfondo.sfondo-beige {
  background-color: #EEEBE3;
}
.mixin-colore-sfondo.sfondo-grigio_chiaro {
  background-color: #F8F9FA;
}
.mixin-colore-sfondo.sfondo-grigio_scuro {
  background-color: #51575E;
}
.mixin-colore-sfondo.sfondo-grigio_scuro .title-component,
.mixin-colore-sfondo.sfondo-grigio_scuro p,
.mixin-colore-sfondo.sfondo-grigio_scuro h1,
.mixin-colore-sfondo.sfondo-grigio_scuro h2,
.mixin-colore-sfondo.sfondo-grigio_scuro h3,
.mixin-colore-sfondo.sfondo-grigio_scuro h4,
.mixin-colore-sfondo.sfondo-grigio_scuro h5,
.mixin-colore-sfondo.sfondo-grigio_scuro h6 {
  color: white;
}
.mixin-colore-sfondo.sfondo-grigio_scuro .swiper-button-next,
.mixin-colore-sfondo.sfondo-grigio_scuro .swiper-button-prev {
  background-color: white;
}
.component.timeline h2 {
  margin-bottom: 0;
  text-align: center;
  color: #333333;
}
.component.timeline .smart-cta {
  margin: auto;
}
.component.timeline .agenda {
  margin-top: 40px;
  justify-content: center;
  position: relative;
  /* Rispetta preferenze ridotte */
}
.component.timeline .agenda::before {
  content: '';
  position: absolute;
  top: 8px;
  left: 50%;
  transform: translateX(-50%) scaleY(0);
  transform-origin: top;
  height: calc(100% - 23px);
  width: 1px;
  background-color: black;
  transition: transform 1.5s ease-in-out;
  will-change: transform;
}
.component.timeline .agenda.in-view::before {
  transform: translateX(-50%) scaleY(1);
}
.component.timeline .agenda.in-view .row {
  opacity: 1;
  transform: translateY(0);
}
.component.timeline .agenda.in-view .row:nth-child(1) {
  transition-delay: 0.45s;
}
.component.timeline .agenda.in-view .row:nth-child(2) {
  transition-delay: 0.6s;
}
.component.timeline .agenda.in-view .row:nth-child(3) {
  transition-delay: 0.75s;
}
.component.timeline .agenda.in-view .row:nth-child(4) {
  transition-delay: 0.9s;
}
.component.timeline .agenda.in-view .row:nth-child(5) {
  transition-delay: 1.05s;
}
.component.timeline .agenda.in-view .row:nth-child(6) {
  transition-delay: 1.2s;
}
.component.timeline .agenda.in-view .row:nth-child(7) {
  transition-delay: 1.35s;
}
.component.timeline .agenda.in-view .row:nth-child(8) {
  transition-delay: 1.5s;
}
.component.timeline .agenda.in-view .row:nth-child(9) {
  transition-delay: 1.65s;
}
.component.timeline .agenda.in-view .row:nth-child(10) {
  transition-delay: 1.8s;
}
.component.timeline .agenda.in-view .row:nth-child(11) {
  transition-delay: 1.95s;
}
.component.timeline .agenda.in-view .row:nth-child(12) {
  transition-delay: 2.1s;
}
.component.timeline .agenda.in-view .row:nth-child(13) {
  transition-delay: 2.25s;
}
.component.timeline .agenda.in-view .row:nth-child(14) {
  transition-delay: 2.4s;
}
.component.timeline .agenda.in-view .row:nth-child(15) {
  transition-delay: 2.55s;
}
.component.timeline .agenda.in-view .row:nth-child(16) {
  transition-delay: 2.7s;
}
.component.timeline .agenda.in-view .row:nth-child(17) {
  transition-delay: 2.85s;
}
.component.timeline .agenda.in-view .row:nth-child(18) {
  transition-delay: 3s;
}
.component.timeline .agenda.in-view .row:nth-child(19) {
  transition-delay: 3.15s;
}
.component.timeline .agenda.in-view .row:nth-child(20) {
  transition-delay: 3.3s;
}
@media (prefers-reduced-motion: reduce) {
  .component.timeline .agenda::before {
    transition: none;
    transform: translateX(-50%) scaleY(1);
  }
}
.component.timeline .agenda .row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 35px;
  position: relative;
  opacity: 0;
  transform: translateY(10px);
  transition: opacity 0.8s ease, transform 0.8s ease;
}
.component.timeline .agenda .row:after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: black;
}
.component.timeline .agenda .row.featured:after {
  width: 16px;
  height: 16px;
}
.component.timeline .agenda .row.featured span:not(.bottom) {
  font-size: 20px;
  font-weight: 500;
}
.component.timeline .agenda .row.less-space {
  margin-bottom: 10px;
}
.component.timeline .agenda .row.lighten:after {
  background-color: #ff4600;
}
.component.timeline .agenda .row > div {
  padding: 0 15px;
}
.component.timeline .agenda .row span {
  line-height: 1;
  font-size: 16px;
  font-weight: 400;
}
.component.timeline .agenda .row .col-left {
  width: 50%;
  text-align: right;
}
.component.timeline .agenda .row .col-right {
  width: 50%;
}
.component.timeline .agenda .row .col-right span {
  display: block;
}
.component.timeline .agenda .row .col-right span.job {
  margin-top: 7px;
  font-size: 13px;
  font-style: italic;
  font-weight: 300;
  line-height: 1.2;
}
.component.timeline .agenda .row .col-right span.bottom {
  margin-top: 10px;
  line-height: 1.2;
}
