/* ################################################### */
/* GENERALI DI SISTEMA */
/* ################################################### */

* {
  box-sizing: border-box;
  margin: 0;
  font-family: var(--font-family);
}

/* main {
  overflow: hidden;
} */

.container-fluid {
  max-width: 1800px;
}

@media screen and (min-width: 1600px) {
  .container {
    max-width: 1500px;
  }
}

.custom-shadow {
  box-shadow: 0px 0px 99px #0000001A;
}

.position-unset {
  position: unset !important;
}

.breadcrumb {
  margin-bottom: 0;
}

.breadcrumb,
.breadcrumb span,
.breadcrumb a {
  font-size: 12px;
  color: #cbcbcb !important;
  text-decoration: none;
}

/* ################################################### */
/* SPLIDE COROUSEL */
/* ################################################### */

.splide__arrow:disabled {
  display: none;
}

.splide__pagination {
  bottom: -2.5em !important;
}

.splide__pagination__page.is-active {
  background: var(--first-color);
  transform: scale(1.4);
  z-index: 1;
}

.splide__arrow {
  background-color: var(--light-grey);
  color: var(--dark);
  height: 50px;
  width: 50px;
}

.splide__arrow i {
  font-size: 20px;
}

/* ################################################### */
/* GRAVITY FORM */
/* ################################################### */

.gform_required_legend {
  display: none;
}

.gform-button--width-full {
  inline-size: unset !important;
}

#field_submit {
  align-items: flex-end;
  justify-content: end !important;
}

.gfield_consent_label a {
  color: var(--first-color);
  transition: 0.1s ease-in-out;
}

.gfield_consent_label a:hover {
  opacity: 0.8;
}

.gform-theme--foundation #field_submit input[type="submit"][id*="gform_submit_button_"].gform-button--width-full {
  inline-size: unset !important;
}

#form input[type="text"],
#form input[type="email"],
#form input[type="tel"] {
  padding: 15px !important;
  border: 1px solid #dedede;
  border-radius: 5px;
  box-shadow: none;
  height: 50px;
}

#form textarea {
  padding: 15px !important;
  border: 1px solid #dedede;
  border-radius: 5px;
  box-shadow: none;
}

#form select {
  height: 50px;
  padding-top: 5px;
  border: 1px solid #dedede;
  box-shadow: none;
}

#form .gform-theme--foundation .gform_fields {
  row-gap: 15px;
}



/* ################################################### */
/* ANIMAZIONI */
/* ################################################### */

.fade-in {
  opacity: 0;
  transition: all 2s cubic-bezier(0.215, 0.6, 0.355, 1);
}

.fade-in.in-page {
  opacity: 1;
}

.fade-in-top {
  opacity: 0;
  transform: translateY(10vh);
  transition: all 1s cubic-bezier(0.215, 0.6, 0.355, 1);
}

.fade-in-top.in-page {
  opacity: 1;
  transform: translateY(0);
}

.fade-in-top.in-page {
  opacity: 1;
  transform: translateY(0);
}

.fade-in-left {
  opacity: 0;
  transform: translateX(-10vw);
  transition: all 1s cubic-bezier(0.215, 0.6, 0.355, 1);
  overflow: hidden;
}

.fade-in-left.in-page {
  opacity: 1;
  transform: translateX(0);
}

.fade-in-right {
  opacity: 0;
  transform: translateX(10vw);
  transition: all 1s cubic-bezier(0.215, 0.6, 0.355, 1);
  overflow: hidden;
}

.fade-in-right.in-page {
  opacity: 1;
  transform: translateX(0);
}

.transition-delay-0 {
  transition-delay: 0ms;
}

.transition-delay-1 {
  transition-delay: 100ms;
}

.transition-delay-2 {
  transition-delay: 200ms;
}

.transition-delay-3 {
  transition-delay: 300ms;
}

.transition-delay-4 {
  transition-delay: 400ms;
}

.transition-delay-5 {
  transition-delay: 500ms;
}

.transition-delay-6 {
  transition-delay: 600ms;
}

.transition-delay-7 {
  transition-delay: 700ms;
}

.transition-delay-8 {
  transition-delay: 800ms;
}

.transition-delay-9 {
  transition-delay: 900ms;
}

.transition-delay-10 {
  transition-delay: 1000ms;
}