html,
body {
  overflow-x: hidden !important;
}

body {
  background: #000 !important;
  height: auto !important;
}

figure {
  margin: 0 !important;
}

.responsive-image,
.responsive-image img {
  width: 100%;
  height: auto;
}

ul {
  color: #b7c4ca;
}

.hide {
  display: none;
}

.barlow-thin {
  font-family: "Barlow", sans-serif;
  font-weight: 100;
  font-style: normal;
}

.barlow-extralight {
  font-family: "Barlow", sans-serif;
  font-weight: 200;
  font-style: normal;
}

.barlow-light {
  font-family: "Barlow", sans-serif;
  font-weight: 300;
  font-style: normal;
}

.barlow-regular {
  font-family: "Barlow", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.barlow-medium {
  font-family: "Barlow", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.barlow-semibold {
  font-family: "Barlow", sans-serif;
  font-weight: 600;
  font-style: normal;
}

.barlow-bold {
  font-family: "Barlow", sans-serif;
  font-weight: 700;
  font-style: normal;
}

.barlow-extrabold {
  font-family: "Barlow", sans-serif;
  font-weight: 800;
  font-style: normal;
}

.barlow-black {
  font-family: "Barlow", sans-serif;
  font-weight: 900;
  font-style: normal;
}

.barlow-thin-italic {
  font-family: "Barlow", sans-serif;
  font-weight: 100;
  font-style: italic;
}

.barlow-extralight-italic {
  font-family: "Barlow", sans-serif;
  font-weight: 200;
  font-style: italic;
}

.barlow-light-italic {
  font-family: "Barlow", sans-serif;
  font-weight: 300;
  font-style: italic;
}

.barlow-regular-italic {
  font-family: "Barlow", sans-serif;
  font-weight: 400;
  font-style: italic;
}

.barlow-medium-italic {
  font-family: "Barlow", sans-serif;
  font-weight: 500;
  font-style: italic;
}

.barlow-semibold-italic {
  font-family: "Barlow", sans-serif;
  font-weight: 600;
  font-style: italic;
}

.barlow-bold-italic {
  font-family: "Barlow", sans-serif;
  font-weight: 700;
  font-style: italic;
}

.barlow-extrabold-italic {
  font-family: "Barlow", sans-serif;
  font-weight: 800;
  font-style: italic;
}

.barlow-black-italic {
  font-family: "Barlow", sans-serif;
  font-weight: 900;
  font-style: italic;
}

body,
p {
  color: #b7c4ca;
  font-family: "Montserrat", sans-serif !important;
  font-size: 1rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5rem;
}

span,
a {
  font-family: "Montserrat", sans-serif !important;
  font-size: 1rem;
  font-weight: 400;
}

b,
strong {
  font-weight: 700;
}

h1 {
  color: #b7c4ca !important;
  font-family: "Barlow", sans-serif !important;
  font-size: 2.986 !important;
  font-style: normal !important;
  font-weight: 500 !important;
  line-height: 6.25rem !important;
  text-transform: uppercase !important;
}

h2 {
  color: #b7c4ca !important;
  font-family: "Barlow", sans-serif !important;
  font-style: normal !important;
  font-weight: 500 !important;
  font-size: 2.488rem !important;
  text-transform: uppercase !important;
}

h3 {
  color: #b7c4ca !important;
  font-family: "Barlow", sans-serif !important;
  font-style: normal !important;
  font-weight: 500 !important;
  font-size: 2.074rem !important;
  text-transform: uppercase !important;
}

h4 {
  color: #b7c4ca !important;
  font-family: "Barlow", sans-serif !important;
  font-style: normal !important;
  font-weight: 500 !important;
  font-size: 1.728rem !important;
  text-transform: uppercase !important;
}

h5 {
  color: #b7c4ca !important;
  font-family: "Barlow", sans-serif !important;
  font-style: normal !important;
  font-weight: 500 !important;
  font-size: 1.44rem !important;
  text-transform: uppercase !important;
}

h6 {
  color: #b7c4ca !important;
  font-family: "Barlow", sans-serif !important;
  font-style: normal !important;
  font-weight: 500 !important;
  font-size: 1.2rem !important;
  text-transform: uppercase !important;
}

#video_main.video-responsive-fullpage,
#video_main2.video-responsive-fullpage,
#video_main3.video-responsive-fullpage {
  position: relative;
  top: 0;
  left: 0;
  z-index: 5;
  filter: saturate(1.5);
  background: #ffffff;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.container-content-video-slide {
  display: flex;
  flex-flow: row wrap;
  z-index: 5;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  justify-content: center;
  align-content: flex-end;
  align-items: center;
}

.overlay-slide-video {
  display: block;
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  opacity: 1;
}

.overlay-slide-video::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background-color: #000;
  opacity: 0.5;
}

/*.content-video-slide {
    width: 100vw;
    height: 100%;
    align-self: center;
    text-align: center;
    z-index: 4;
    display: flex;
    flex-direction: row;
    align-content: center;
    justify-content: flex-end;
    align-items: center;
    background: transparent !important;
    position: absolute;
    margin-right: 2.5rem;
}*/

.content-video-slide {
  width: 100vw;
  height: 100%;
  align-self: center;
  text-align: center;
  z-index: 4;
  display: flex;
  align-content: center;
  justify-content: flex-start;
  align-items: center;
  background: transparent !important;
  position: absolute;
  margin-right: 2.5rem;
}

.full-page {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.scala-grigi {
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
  opacity: 1;
  filter: alpha(opacity=100);
}

/*.container-testo-intro {
    width: 100%;
    max-width: 48rem;
    text-align: left;
}*/

.container-testo-intro {
  width: 100%;
  max-width: 63rem;
  text-align: left;
}

/*.container-icone-intro {
    display: flex;
    flex-direction: column;
    align-content: flex-end;
    align-items: center;
    justify-content: center;
    height: 100%;
}*/

.container-icone-intro {
  display: flex;
  flex-direction: column;
  align-content: flex-end;
  align-items: center;
  justify-content: center;
  height: 100%;
  position: absolute;
  z-index: 4;
  right: 2rem;
  top: 0;
  bottom: 0;
}

.distanziamento-icone {
  margin-bottom: 2rem;
  color: #b7c4ca;
  font-size: 1.3rem !important;
}

.dimensionamento-paragrafo-intro {
  width: 50%;
}

.bottone {
  height: 3rem !important;
  border: 1px solid rgba(255, 255, 255, 0);
  background: #93c01f;
  text-decoration: none;
  align-content: flex-end;
  padding: 0.5rem;
  display: flex;
  justify-content: space-between;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: flex-end;
  transition: 0.3s;
  max-width: max-content;
}

.bottone:hover {
  background: #6b8c17;
  transition: 0.3s;
}

.testo-bottone {
  color: #fff;
  font-size: 0.9rem;
  font-style: normal;
  font-weight: 300;
  line-height: normal;
  text-transform: uppercase;
  margin-right: 1rem;
}

.spaziamento-bottoni {
  margin-right: 0.5rem;
  margin-bottom: 0.5rem;
}

.contenitore-bottoni {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  align-content: center;
}

.icona-bottone {
  max-width: 2rem;
  width: 100%;
  margin-bottom: -0.5rem;
}

.titolo-bottoni {
  color: #b7c4ca;
  font-size: 0.833rem;
  font-style: normal;
  font-weight: 400;
  line-height: 0.625rem;
  position: relative;
  padding-left: 0.5rem;
  transition: 0.3s;
  display: block;
  width: 100%;
}

.titolo-bottoni::before {
  content: "";
  display: inline-flex;
  position: absolute;
  left: 0;
  align-items: center;
  width: 0.25rem;
  height: 0.25rem;
  background: #93c01f;
  top: calc(50% - 0.125rem);
}

.back-img-chi-siamo {
  background-position: right !important;
  background-repeat: no-repeat !important;
  background-size: contain;
  height: 100%;
  width: 100vw;
}

.container-testo-chi-siamo {
  margin-left: 0;
  max-width: 100vw;
}

.titolo-chi-siamo {
  font-size: 2.488rem !important;
  line-height: 3rem !important;
}

.contenuto-chi-siamo {
  max-width: 40rem;
  width: 100%;
}

.immagine-chi-siamo {
  max-width: 40rem;
}

.container-chi-siamo {
  display: flex;
  flex-direction: row;
  align-content: center;
  align-items: center;
  justify-content: space-evenly;
  flex-wrap: nowrap;
}

.content-video-slide2 {
  width: 100vw;
  height: 100%;
  align-self: center;
  text-align: center;
  z-index: 4;
  display: flex;
  align-content: center;
  justify-content: flex-start;
  align-items: center;
  background: transparent !important;
  position: absolute;
  margin-left: 20rem;
}

.dimensionamento-paragrafo-intro2 {
  max-width: 44rem;
}

.contenitore-slider-corsi {
  border: 1px solid #363636;
  background: #1f1f1f;
  padding: 1rem;
}

.titolo-slider-corsi {
  font-size: 1.44rem !important;
  line-height: 2rem;
  margin-top: 2rem;
}

#slider_1 .owl-stage {
  padding-left: 0 !important;
}

.owl-carousel .owl-stage {
  position: relative;
  -ms-touch-action: pan-Y;
  touch-action: manipulation;
  -moz-backface-visibility: hidden;
  padding-left: 0 !important;
}

.bottone-slider {
  border: 1px solid #b7c4ca;
  background-color: transparent;
  height: 4rem;
  width: 4rem;
}

.bottone-slider-sinistra {
  background-image: url("../img/immagini/_freccia_sinistra.svg");
  background-position: 20% !important;
  background-repeat: no-repeat;
  background-size: 70%;
  margin-right: 1.5rem;
}

.bottone-slider-destra {
  background-image: url("../img/immagini/_freccia_destra.svg");
  background-position: 80% !important;
  background-repeat: no-repeat;
  background-size: 70%;
}

.container-sezione-slider-servizi {
  padding-top: 5rem;
  padding-bottom: 5rem;
}

.padding-testo-servizi {
  padding: 2rem !important;
  display: flex;
  align-content: center;
  justify-content: center;
  align-items: center;
}

.back-img-date {
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  height: 100vh;
  display: flex;
  justify-content: center;
  align-content: center;
  align-items: center;
}

.container-date {
  padding: 5rem;
  display: flex;
  flex-direction: row;
  align-content: center;
  justify-content: space-between;
  align-items: center;
}

.container-testo-date {
  max-width: 46rem;
  width: 100%;
}

.accordion {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  width: 80%;
}

/* Stile per ogni elemento del menu */
.accordion .accordion-item {
  color: #636362;
  background-color: transparent !important;
  border-bottom: 1px solid #b7c4ca !important;
  border-radius: 0 !important;
  border: none;
}

/* Stile per l'intestazione del menu (il titolo cliccabile) */
.accordion-item-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1rem;
  cursor: pointer;
  background-color: transparent;
  color: #b7c4ca;
}

/* Stile per il contenuto del menu (il testo nascosto) */
.accordion-item-content {
  background-color: transparent;
  display: none;
  padding: 1rem;
}

/* Stile per la freccia */
.arrow {
  width: 0;
  height: 0;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid #b7c4ca;
  transition: transform 0.3s;
}

.arrow:hover {
  color: #b7c4ca !important;
  border-top-color: #b7c4ca !important;
  transition: transform 0.3s;
}

/* Stile per la freccia quando la sezione è aperta */
.active .arrow {
  transform: rotate(180deg);
}

/* Hover effect */
.accordion-item:hover {
  background-color: transparent;
}

.accordion-item:hover .accordion-item-header {
  background-color: transparent;
}

.accordion-item:hover .arrow {
  border-top-color: transparent;
}

.container-accordion {
  width: 60%;
}

.link-categoria {
  color: #93c01f;
  font-weight: 300;
  line-height: 2rem;
  text-decoration: none;
  transition: 0.3s;
}

.link-categoria:hover {
  color: #556f13;
  transition: 0.3s;
}

.back-img-post {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  height: 50vh;
  width: 100%;
}

.container-eventi {
  padding: 2rem !important;
  display: flex;
  align-items: flex-end;
  position: relative;
  flex-flow: row wrap;
  justify-content: space-between;
}

.container-titolo-bottone {
  display: flex;
  justify-content: space-between;
  width: 100%;
  position: relative;
  z-index: 2;
  background-color: #000000cc;
  padding: 1rem;
  max-width: 30rem;
  flex-flow: row wrap;
  align-self: flex-end;
}

.testo-corsi {
  color: #b7c4ca;
  font-family: "Barlow", sans-serif !important;
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5rem;
  text-transform: uppercase;
  text-decoration: none;
  max-width: 100%;
  transition: 0.3s;
  margin-bottom: 0.55rem;
  display: block;
  width: 100%;
}

.testo-corsi:hover {
  color: #6a7479;
  transition: 0.3s;
}

.back-img-post::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  /*background-color: #0000008f;*/
  width: 100%;
  height: 100%;
  z-index: 0;
}

.data-eventi {
  color: #b7c4ca;
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1;
  position: relative;
  padding-left: 0.5rem;
  margin: 0 0 0.5rem 0;
  display: block;
}

.container-cat-data {
  display: flex;
  background-color: #000000cc;
  padding: 1rem;
  width: 100%;
  flex-flow: row wrap;
  align-self: flex-end;
  max-width: 30rem;
}

#corsi .titolo-bottoni:hover {
  color: #6a7479;
  transition: 0.3s;
}

.top-button.visible {
  display: none !important;
}

.campo-form {
  width: 100%;
  height: 3rem;
  border: 1px solid #444;
  background: #1f1f1f;
  padding: 1rem;
  margin-bottom: 0.5rem;
  color: #b7c4ca;
}

.text-area-form {
  width: 100%;
  height: auto;
  border: 1px solid #444;
  background: #1f1f1f;
  padding: 1rem;
  color: #b7c4ca;
}

.testo-acceptance {
  color: #b7c4ca;
  font-size: 0.833rem;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.centramento-acceptance {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: flex-start;
  align-items: center;
}

.link-acceptance {
  color: #93c01f;
  font-size: 0.833rem;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  text-decoration: none;
  transition: 0.3s;
}

.link-acceptance:hover {
  color: #556f13;
  transition: 0.3s;
}

input[type="checkbox" i] {
  background: #1f1f1f !important;
  cursor: default;
  appearance: auto;
  box-sizing: border-box;
  margin: 3px 3px 3px 4px;
  padding: initial;
  border: 1px solid #444 !important;
}

.wpcf7 .wpcf7-submit {
  height: 3rem !important;
  max-width: 10rem !important;
  border: 1px solid rgba(255, 255, 255, 0);
  background: #93c01f;
  text-decoration: none;
  align-content: center;
  padding: 0.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: 0.3s;
  width: 100%;
  flex-direction: row;
  flex-wrap: nowrap;
  color: #fff;
  font-size: 1rem;
  font-style: normal;
  font-weight: 350;
  line-height: normal;
  text-transform: uppercase;
  transition: 0.3s;
  margin-top: 1rem;
}

.wpcf7 .wpcf7-submit:hover {
  background: #556f13;
  transition: 0.3s;
}

.container-form-contatto {
  padding: 8rem !important;
  border-right: 2px solid #444;
  display: flex;
  flex-direction: column;
  align-content: center;
  justify-content: center;
}

.immagine-form {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.container-sezione-form {
  border-top: 2px solid #444;
  border-bottom: 2px solid #444;
  width: 100vw !important;
}

.logo-partner {
  max-width: 10rem;
  width: 100%;
  filter: brightness(0.9) !important;
}

.container-partner-img {
  max-width: max-content;
}

.container-partner {
  display: flex;
  align-content: center;
  align-items: center;
  padding: 2rem;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-evenly;
  border-bottom: 2px solid #444;
  gap: 1rem;
}

.padding-partner {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}

.container-footer {
  display: flex;
  flex-direction: row;
  align-content: center;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: nowrap;
}

.foot-logo {
  max-width: 10rem;
}

.foot-text-bold {
  color: #b7c4ca;
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 800;
  line-height: 1.5rem;
}

.foot-text {
  color: #b7c4ca;
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 350;
  line-height: 1.5rem;
  transition: 0.3s;
  text-decoration: none !important;
}

.foot-text:hover {
  color: #747c80;
  transition: 0.3s;
}

.foot-link {
  text-decoration: none !important;
  transition: all 0.3s;
}

.foot-link:hover {
  color: #747c80;
  transition: all 0.3s;
}

.container-indirizzo {
  max-width: 14rem;
  width: 100%;
  margin-top: 1rem;
}

.foot-icon {
  margin-right: 0.5rem;
}

.foot-title {
  color: #93c01f;
  font-size: 1rem;
  font-style: normal;
  font-weight: 800;
  line-height: 1.5rem;
  text-transform: uppercase;
  border-bottom: 1px solid #4b5255;
}

.video-full-width {
  width: 100vw;
  height: 100vh;
}

.campo-form-testo {
  color: #b7c4ca;
  font-size: 1rem;
  font-style: normal;
  font-weight: 300;
  line-height: 1rem;
  text-transform: uppercase;
  margin-bottom: 0.5rem !important;
}

.container-idemedia {
  display: flex;
  justify-content: flex-end;
  align-content: center;
  align-items: center;
}

.bg-body-tertiary.transparent-color {
  background-color: transparent !important;
  transition: 0.5s;
}

.logo-bianco {
  background-image: url("../img/logo/logo_bianco_sws.svg");
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  width: 8rem !important;
  height: 3rem !important;
  transition: 0.5s;
}

.bg-body-tertiary.black-color {
  background-color: #00000079 !important;
  border-bottom: 1px solid rgb(84, 84, 84);
  transition: 0.5s;
}

.header-class:not(.bg-body-tertiary.transparent-color) .logo-bianco {
  background-image: url("../img/logo/Logo_color.svg");
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  width: 8rem !important;
  height: 3rem !important;
  transition: 0.5s;
}

button.btn.btn-outline-secondary.ms-1.ms-md-2 {
  border: none !important;
}

.btn-outline-secondary {
  --bs-btn-color: #b7c4ca !important;
  --bs-btn-border-color: none !important;
  --bs-btn-hover-color: #93c01f !important;
  --bs-btn-hover-bg: none !important;
  --bs-btn-hover-border-color: none !important;
  --bs-btn-focus-shadow-rgb: 108, 117, 125;
  --bs-btn-active-color: #b7c4ca;
  --bs-btn-active-bg: none !important;
  --bs-btn-active-border-color: none !important;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: none !important;
  --bs-btn-disabled-bg: transparent !important;
  --bs-btn-disabled-border-color: none !important;
  --bs-gradient: none;
}

div#offcanvas-navbar {
  width: 100vw;
  height: 100%;
  background-color: #00000064 !important;
}

.container-menu {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-content: center;
  align-items: center;
}

a.nav-link {
  color: #b7c4ca !important;
  font-family: "Barlow", sans-serif !important;
  font-size: 2.488rem;
  font-style: normal;
  font-weight: 400;
  line-height: 2.5rem;
  max-width: max-content;
  transition: 0.3s;
  text-transform: uppercase;
}

a.nav-link:hover {
  color: #747c80 !important;
  transition: 0.3s;
}

a.nav-link.active {
  color: #93c01f !important;
  font-family: "Barlow", sans-serif !important;
  font-size: 2.488rem;
  font-style: normal;
  font-weight: 400;
  line-height: 3rem;
  transition: 0.3s;
}

.logo-menu {
  max-width: 25rem;
  width: 100%;
}

.centramento-menu {
  display: flex;
  align-content: center;
  justify-content: center;
  align-items: center;
}

.campo-newsletter {
  width: 150%;
  height: 3rem;
  border: 1px solid #444;
  background: #1f1f1f;
  padding: 1rem;
  margin-bottom: 0.5rem;
  color: #b7c4ca;
}

.bottone-newsletter {
  height: 3rem !important;
  border: 1px solid rgba(255, 255, 255, 0);
  background: #93c01f;
  text-decoration: none;
  align-content: flex-end;
  padding: 0.5rem;
  display: flex;
  justify-content: space-between;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: flex-end;
  transition: 0.3s;
  max-width: max-content;
  margin-left: 8rem;
  color: #fff;
  font-size: 0.9rem;
  font-style: normal;
  font-weight: 300;
  line-height: normal;
  text-transform: uppercase;
  transition: 0.3s;
}

.bottone-newsletter:hover {
  background: #6b8c17;
  transition: 0.3s;
}

.mc4wp-form-fields {
  display: flex !important;
  flex-direction: column;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  align-items: flex-start;
}

.container-testo-pulsante {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  align-items: flex-start;
}

.container-pagine-menu {
  align-content: center !important;
  padding-left: 5rem !important;
}

.header-social {
  margin-right: 0.5rem;
  color: #b7c4ca;
  font-size: 0.9rem;
  transition: 0.3s;
}

.last-header-social {
  color: #b7c4ca;
  font-size: 0.9rem;
  transition: 0.3s;
}

.container-social-header {
  display: none;
  transition: 0.3s;
}

.header-class:not(.bg-body-tertiary.transparent-color)
  .container-social-header {
  display: initial;
  transition: 0.3s;
}

.container-search {
  margin-left: auto !important;
  margin-right: 0.5rem;
}

input.form-control {
  border: 1px solid #444 !important;
  background: #1f1f1f !important;
  color: #b7c4ca !important;
}

.form-control,
.woocommerce-cart .coupon input,
.woocommerce form .form-row textarea,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row .form-row textarea,
.woocommerce .qty {
  display: block;
  width: 100%;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 350;
  line-height: 1.5;
  color: #b7c4ca !important;
  appearance: none;
  background-color: #1f1f1f;
  background-clip: padding-box;
  border: 1px solid #444;
  border-radius: 0 !important;
  transition:
    border-color 0.15s ease-in-out,
    box-shadow 0.15s ease-in-out;
}

.form-control:focus,
.woocommerce-cart .coupon input:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row .form-row textarea:focus,
.woocommerce .qty:focus {
  color: #b7c4ca !important;
  background-color: #1f1f1f !important;
  border-color: #444 !important;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

::placeholder {
  color: #b7c4ca !important;
  opacity: 1;
  /* Firefox */
}

::-ms-input-placeholder {
  /* Edge 12-18 */
  color: #b7c4ca !important;
}

.bottone-custom-search {
  border: none;
  background: transparent;
  color: #b7c4ca;
  transition: 0.3s;
  font-size: 0.9rem;
}

.bottone-custom-search:hover {
  color: #93c01f;
  transition: 0.3s;
}

.header-social:hover {
  color: #93c01f;
  transition: 0.3s;
}

.last-header-social:hover {
  color: #93c01f;
  transition: 0.3s;
}

.mappa-contatti {
  height: 80vh !important;
  width: 100vw !important;
}

.dimensionamento-mappa-contatti {
  position: relative !important;
  overflow: hidden !important;
  display: block !important;
  padding-top: 45% !important;
  width: 80%;
  top: 5rem;
  margin-bottom: 10rem;
}

.container-form-pagina-contatti {
  padding: 4rem !important;
  display: flex;
  align-content: center;
  justify-content: flex-start;
  align-items: flex-start;
  flex-direction: column;
}

.container-prevenzione {
  display: flex;
  flex-direction: row;
  align-content: center;
  justify-content: space-between;
  align-items: center;
}

.container-immagine-prevenzione {
  height: 100%;
  width: 100%;
  max-width: 40%;
}

.immagine-prevenzione {
  width: 100%;
  height: 100vh;
  object-fit: cover;
  object-position: center;
}

.container-testo-prevenzione {
  max-width: 60%;
  width: 100%;
}

.sistemazione-testo-prevenzione {
  padding-left: 5rem;
}

.dropdown-menu.depth_0.show {
  background-color: transparent;
  max-width: max-content;
}

.dropdown-item {
  font-family: "Barlow", sans-serif !important;
  display: block;
  width: 100%;
  padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
  clear: both;
  font-weight: 400;
  color: #b7c4ca !important;
  text-align: inherit;
  text-decoration: none;
  white-space: nowrap;
  background-color: initial;
  border: 0;
  border-radius: none !important;
  border: none !important;
  transition: 0.3s;
}

.dropdown-menu {
  --bs-dropdown-border-color: none !important;
  --bs-dropdown-border-radius: none !important;
  --bs-dropdown-border-width: none !important;
  --bs-dropdown-inner-border-radius: none !important;
  --bs-dropdown-divider-bg: none !important;
  border: none !important;
  border-radius: none !important;
}

.dropdown-item:hover,
.dropdown-item:focus {
  color: #93c01f !important;
  background-color: transparent !important;
  transition: 0.3s;
}

.dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.4em !important;
  vertical-align: 0.2em !important;
  content: "";
  border-top: 0.2em solid !important;
  border-right: 0.15em solid transparent !important;
  border-bottom: 0;
  border-left: 0.15em solid transparent !important;
  transition: transform 0.3s;
}

/* Stile per la freccia quando la sezione è aperta */
.dropdown-toggle.show.dropdown-toggle::after {
  transform: rotate(180deg);
}

.back-img-certificazioni {
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  height: 100vh;
  filter: grayscale(1);
  position: relative;
}

.back-img-certificazioni::before {
  content: "";
  width: 100vw;
  height: 100vh;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #000000ae;
  z-index: -1;
}

.certificazione-img1 {
  height: 100%;
  object-fit: cover;
  object-position: 80%;
}

.certificazione-img2 {
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.container-certificazioni {
  padding: 2rem;
  margin-top: 5rem !important;
  margin-bottom: 5rem;
}

.sistemazione-bottone-certificazioni {
  align-items: center;
  justify-content: center;
  display: flex;
  align-content: center;
  flex-direction: row;
  flex-wrap: wrap;
}

.container-certificazione-centrale {
  min-height: 60vh;
  height: 100%;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-content: flex-start;
  justify-content: center;
  align-items: flex-start;
  gap: 2rem;
}

.row.alternamento:nth-child(odd) div:first-child {
  order: 1;
  padding: 0;
}

.row.alternamento:nth-child(odd) div:last-child {
  order: 2;
  padding: 0;
  padding-left: 2rem;
}

.row.alternamento:nth-child(even) div:first-child {
  order: 2;
  padding: 0;
}

.row.alternamento:nth-child(even) div:last-child {
  order: 1;
  padding: 0;
  padding-right: 2rem;
}

.immagini-zone {
  max-width: 100%;
  max-height: 30rem;
  object-fit: cover;
  object-position: center;
}

.container-zone {
  max-width: 70vw;
  margin: 0 auto;
  margin-top: 5rem;
  margin-bottom: 5rem;
}

.sistemazione-testo-zone {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  align-items: flex-start;
}

.immagini-kask {
  max-width: 30rem;
}

.contenitor-prodotti-kask {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  align-items: center;
}

.container-testo-partner {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  align-items: flex-start;
}

.container-generale-kask {
  margin-top: 5rem !important;
  margin-bottom: 5rem;
}

.container-generale-sofrapa {
  margin: 10rem auto !important;
}

.titolo-partner {
  font-size: 3rem !important;
  line-height: 3.5rem !important;
}

.dropdown-item.active,
.dropdown-item:active {
  color: #93c01f !important;
  text-decoration: none;
  background-color: transparent !important;
}

.contenitor-prodotti-harken {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-content: center;
  justify-content: center;
  align-items: center;
}

.immagini-harken {
  max-width: 15rem;
}

.container-video-yt {
  padding: 0 1rem;
  margin: 5rem 0;
}

.contenitore-consulenze {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: space-around;
  align-items: flex-start;
  padding: 2rem !important;
}

.titolo-consulenze {
  padding: 2rem;
  margin: 5rem auto;
  font-size: 3rem !important;
  line-height: 3.5rem !important;
}

.contenitore-consulenze-tot {
  margin-bottom: 10rem;
}

.sistemazione-testo-addestramento {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  align-items: flex-start;
  padding: 2rem !important;
}

.container-lista-addestramento {
  margin: 0 1rem !important;
  margin-top: 5rem !important;
}

.container-servizio {
  display: flex;
  flex-direction: column;
  align-content: center;
  justify-content: center;
  align-items: flex-start;
}

.img1-consulenza {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.contenuto1-consulenza {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  align-items: flex-start;
  padding: 5rem !important;
}

.titolo-della-consulenza {
  font-size: 4rem !important;
}

.contenitore-slider-consulenza {
  border: 1px solid #363636;
  background: #1f1f1f;
  padding: 0.8rem;
  display: flex;
  align-content: center;
  align-items: center;
  justify-content: flex-start;
}

.contenitore-servizio-consulenze {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-content: center;
  justify-content: center;
  align-items: flex-start;
}

.contenitore-lista-della-consulenza {
  border-left: 5px solid #363636;
  padding: 0.2rem;
  align-items: center;
  justify-content: flex-start;
  margin: 0.5rem 0;
  padding-left: 0.5rem !important;
}

.centramento-testo-consulenza {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  align-items: flex-start;
}

.colori-tabella {
  background-color: #1f1f1f !important;
  color: #b7c4ca !important;
  font-weight: 300 !important;
}

tr {
  border: 2px solid #363636 !important;
  background: #1f1f1f !important;
}

td {
  border: 2px solid #363636 !important;
  background: #1f1f1f !important;
}

.contenitore-tabella {
  margin-top: 10rem;
}

.titolo-tabella {
  margin-bottom: 5rem;
  text-align: center;
}

.img1-formazione-formatori {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.sizing-marchi {
  max-width: 7rem;
  width: 100%;
}

.container-marchi {
  display: flex;
  flex-direction: row;
  align-content: center;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-bottom: 5rem;
}

.container-titolo-marchio-dpi:last-child .container-marchi {
  display: flex;
  flex-direction: row;
  align-content: center;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-bottom: 0;
}

.titolo-marchi {
  margin-bottom: 1rem;
  color: #93c01f !important;
}

.contenuto-tutti-marchi {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  align-items: center;
  padding: 3rem !important;
}

.container-dei-marchi {
  margin-top: 5rem !important;
  margin-bottom: 5rem !important;
}

.orario-eventi {
  color: #b7c4ca;
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1;
  position: relative;
  padding-left: 0.5rem;
  margin: 0 0 0.5rem 0;
}

.container-data-ora-corsi {
  display: flex;
  flex-direction: row;
  align-content: center;
  justify-content: center;
  align-items: center;
  margin-top: 1rem;
}

.luogo-eventi {
  color: #b7c4ca;
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1;
  position: relative;
  padding-left: 0.5rem;
  margin: 0;
}

.titolo-sezioni-corsi {
  text-align: center;
  margin: 5rem 0;
  font-size: 3rem !important;
  line-height: 3.5rem !important;
}

.immagine-post-corso {
  width: 100vw;
  height: 80vh;
}

.max-80vw {
  max-width: 80vw;
  width: 100%;
  margin: 0 auto;
}

.titoli-post-corsi {
  color: #93c01f !important;
}

.distanziamento-sezioni-post-corsi {
  padding: 1rem;
  width: 50% !important;
}

.sistemazione-elementi-corsi {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: flex-start;
}

.titolo-del-post-corso {
  font-size: 4rem !important;
  line-height: 5rem !important;
}

.card {
  --bs-card-spacer-y: 1rem;
  --bs-card-spacer-x: 1rem;
  --bs-card-title-spacer-y: 0.5rem;
  --bs-card-title-color: ;
  --bs-card-subtitle-color: ;
  --bs-card-border-width: var(--bs-border-width);
  --bs-card-border-color: var(--bs-border-color-translucent);
  --bs-card-border-radius: var(--bs-border-radius);
  --bs-card-box-shadow: ;
  --bs-card-inner-border-radius: calc(
    var(--bs-border-radius) - (var(--bs-border-width))
  );
  --bs-card-cap-padding-y: 0.5rem;
  --bs-card-cap-padding-x: 1rem;
  --bs-card-cap-bg: rgba(var(--bs-body-color-rgb), 0.03);
  --bs-card-cap-color: ;
  --bs-card-height: ;
  --bs-card-color: ;
  --bs-card-bg: transparent !important;
  --bs-card-img-overlay-padding: 1rem;
  --bs-card-group-margin: 0.75rem;
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  height: var(--bs-card-height);
  color: #b7c4ca !important;
  word-wrap: break-word;
  background-color: transparent !important;
  background-clip: border-box;
  border: 1px solid #444 !important;
  border-radius: 6px !important;
}

.page-link.active,
.active > .page-link {
  z-index: 3;
  color: #b7c4ca !important;
  background-color: #93c01f !important;
  border-color: #93c01f !important;
}

.page-link {
  position: relative;
  display: block;
  padding: var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);
  font-size: var(--bs-pagination-font-size);
  color: #b7c4ca !important;
  text-decoration: none;
  background-color: transparent !important;
  border: 1px solid #444 !important;
  transition:
    color 0.15s ease-in-out,
    background-color 0.15s ease-in-out,
    border-color 0.15s ease-in-out,
    box-shadow 0.15s ease-in-out;
}

.page-header.mb-4 h1 {
  font-size: 2.986rem !important;
}

a.read-more {
  color: #93c01f !important;
  text-decoration: none !important;
  transition: 0.3s;
}

a.read-more:hover {
  color: #6b8c17 !important;
  transition: 0.3s;
}

a.text-body.text-decoration-none {
  color: #b7c4ca !important;
}

p.meta.small.mb-2.text-body-tertiary {
  color: #b7c4ca !important;
}

a.url.fn.n {
  color: #93c01f !important;
  text-decoration: none !important;
  transition: 0.3s;
}

a.url.fn.n:hover {
  color: #6b8c17 !important;
  transition: 0.3s;
}

a.post-edit-link {
  color: #93c01f !important;
  text-decoration: none !important;
  transition: 0.3s;
}

a.post-edit-link:hover {
  color: #6b8c17 !important;
  transition: 0.3s;
}

.contenitore-info-corsi {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-content: center;
  justify-content: space-around;
  align-items: center;
  margin-top: 2.5rem;
  margin-bottom: 2rem;
}

.icone-info-corso {
  margin-right: 0.5rem !important;
  color: #93c01f;
}

.link-categoria-corso {
  text-decoration: none;
  color: #b7c4ca;
  font-size: 1rem;
  font-style: normal;
  font-weight: 350;
  line-height: 1.5rem;
  transition: 0.3s;
}

.link-categoria-corso:hover {
  color: #93c01f;
  transition: 0.3s;
}

.footer-color {
  background-color: #000 !important;
  --bs-bg-opacity: 1;
}

.accordion-sizing {
  max-width: 40rem;
  margin: 0 auto !important;
}

#corsi .row {
  width: 100vw;
}

.container-link-pagine-video-intro {
  background-color: #f7f7f7;
  padding: 5rem;
}

.bg-green-video-intro {
  display: flex;
  align-items: center;
  justify-content: space-around;
  align-content: center;
  flex-direction: row;
  flex-wrap: nowrap;
}

.row-icone {
  display: flex;
  flex-flow: row wrap;
  width: 100%;
  justify-content: space-between;
}

.logo-servizi-intro-h {
  max-width: 15rem;
  transform: scale(1);
  transition: all 0.3s;
}

.logo-servizi-intro-h:hover {
  transform: scale(1.1);
  transition: all 0.3s;
}

.link-servizi-intro-h {
  display: block;
  text-decoration: none;
  text-align: center;
  padding: 0.5rem;
  width: 33.333%;
}

.link-servizi-intro-h span {
  display: block;
  font-size: 1.44rem !important;
  line-height: 2rem !important;
  text-transform: uppercase !important;
  font-weight: 500 !important;
  color: #b7c4ca !important;
}

.campo-data {
  position: relative;
  padding-left: 0 !important;
  margin-left: -0.5rem !important;
}

.campo-data:hover {
  cursor: alias;
}

.campo-data::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
  display: block;
}

.sezione-form-corso {
  margin-top: 5rem;
}

.testo-form-corso {
  text-align: center !important;
  margin-bottom: 5rem;
}

.wpcf7 form.sent .wpcf7-response-output {
  color: #b7c4ca !important;
}

.sezione-thank-you {
  position: relative;
  width: 100vw;
  height: 90vh;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  display: flex;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  align-items: center;
}

.sezione-thank-you::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100vw;
  height: 100%;
  background-color: #000000a1;
  z-index: 1;
}

.contenuto-thank-you {
  position: relative;
  z-index: 10;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  align-items: center;
}

.mail-thank {
  color: #fff;
  font-size: 10rem;
}

.titolo-dei-contatti {
  font-size: 3rem !important;
  line-height: 3.5rem !important;
}

.bg-accordion {
  background-color: #0000009e;
  padding: 1rem !important;
}

body.page-template-venditadpi .container-partner {
  display: flex;
  align-content: center;
  align-items: center;
  padding: 2rem;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-evenly;
  border-bottom: 2px solid #444;
  border-top: 1px solid #444;
  margin-top: 5rem;
}

.contenitore-sede-contatti {
  border: 1px solid #444;
  padding: 2rem !important;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  align-items: flex-start;
  box-shadow: 0px 0px 10px 0px #3b3b3b;
  max-width: 36rem !important;
  background-color: #1f1f1f;
}

.sezione-sedi-recapiti {
  gap: 1rem;
  margin-bottom: 1rem;
}

.link-recapiti-sedi {
  color: #b7c4ca !important;
  font-family: "Montserrat", sans-serif !important;
  font-size: 1rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5rem;
  text-decoration: none !important;
  margin-bottom: 0.5rem !important;
  transition: all 0.3s;
}

.link-recapiti-sedi:hover {
  color: #747c80 !important;
  transition: all 0.3s;
}

.link-recapiti-sedi-titolo {
  color: #b7c4ca !important;
  font-family: "Montserrat", sans-serif !important;
  font-size: 1.44rem !important;
  font-style: normal;
  font-weight: 500 !important;
  line-height: 1.5rem;
  text-decoration: none !important;
  transition: all 0.3s;
  margin-bottom: 1.5rem;
}

.link-recapiti-sedi-titolo span {
  color: #b7c4ca !important;
  font-family: "Montserrat", sans-serif !important;
  font-size: 1.44rem !important;
  font-style: normal;
  font-weight: 500 !important;
  line-height: 1.5rem;
  text-decoration: none !important;
  transition: all 0.3s;
}

.link-recapiti-sedi-titolo:hover span {
  color: #747c80 !important;
  transition: all 0.3s;
}

.link-recapiti-sedi-icon {
  margin-right: 0.5rem !important;
}

.centramento-sezione-contatti {
  max-width: max-content !important;
  margin: 0 auto !important;
}

.dimensionamento-recapiti {
  max-width: fit-content !important;
}

.container-video-yt {
  display: flex;
  align-items: center;
  justify-content: center;
  align-content: center;
  flex-wrap: nowrap;
  margin-top: 10rem !important;
}

.youtube_channel.default.responsive.ytc_display_thumbnail {
  display: flex;
  max-width: 80vw;
  margin: 0 auto !important;
  flex-direction: row;
  flex-wrap: wrap;
  align-content: center;
  align-items: center;
  justify-content: center;
  gap: 2rem;
}

.youtube_channel.responsive .ytc_video_container {
  width: 100% !important;
  max-width: 40rem !important;
}

.ytc_title.ytc_title_below {
  margin-top: 1rem;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  align-content: center;
  flex-direction: row;
  flex-wrap: nowrap;
}

.ytc_title.ytc_title_below a {
  color: #93c01f !important;
  font-family: "Montserrat", sans-serif !important;
  font-size: 1rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5rem;
  text-decoration: none !important;
  transition: all 0.3s;
}

.ytc_title.ytc_title_below a:hover {
  color: #6b8c17 !important;
  transition: all 0.3s;
}

.ytc_link {
  display: flex;
  align-items: center;
  justify-content: center;
  align-content: center;
  margin-top: 10rem;
}

.ytc_link p a {
  color: #fff !important;
  font-family: "Montserrat", sans-serif !important;
  font-size: 1rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5rem;
  text-decoration: none !important;
  transition: all 0.3s;
  height: 3rem !important;
  border: 1px solid rgba(255, 255, 255, 0);
  background: #93c01f;
  align-content: center;
  padding: 0.5rem;
  display: flex;
  justify-content: center;
  flex-wrap: nowrap;
  align-items: center;
  transition: 0.3s;
  max-width: max-content;
  text-transform: uppercase;
}

.ytc_link p a:hover {
  background: #6b8c17 !important;
  transition: all 0.3s;
}

.ytc_title.ytc_title_below::before {
  content: "";
  background-image: url(https://sws.srl/wp-content/uploads/2024/10/logo-yt-chanel.svg);
  display: block;
  width: 2rem;
  height: 2rem;
  background-size: 100% 100%;
  align-self: center;
  margin-right: 0.5rem;
}

.img-freefall a {
  position: relative;
  padding-right: 4rem;
}

.img-freefall a::before {
  content: "";
  position: absolute;
  color: #fff;
  top: 0;
  right: 0;
  bottom: 0;
  background-image: url(../img/logo/LOGO-SFF-TM.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 3.5rem;
  height: 3.5rem;
  transition: all 0.3s;
}

.img-freefall a:hover::before {
  filter: brightness(0.5);
  transition: all 0.3s;
}

li#menu-item-372 a {
  color: #fff !important;
  transition: all 0.3s;
}

li#menu-item-372 a:hover {
  color: #747c80 !important;
  transition: all 0.3s;
}

.contenitore-logo-partner-dpi {
  width: 100%;
  height: 100%;
  display: flex;
  display: flex;
  align-content: center;
  justify-content: center;
  align-items: center;
}

.titolo-slider-vendita-dpi {
  text-align: center;
  margin-top: 10rem;
}

.inizio-corso {
  position: relative;
  padding-left: 2rem;
}

.inizio-corso::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  height: 1.5rem;
  background-color: #93c01f;
  width: 1.5rem;
  border-radius: 100%;
}

.durata-corso {
  position: relative;
  padding-left: 2rem;
}

.durata-corso::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  height: 1.5rem;
  border: 2px solid #93c01f;
  width: 1.5rem;
  border-radius: 100%;
}

.titolo-calendario-corso {
  text-transform: uppercase;
  display: block;
  width: 100%;
  margin-bottom: 1rem;
  padding: 0;
  font-size: 1rem !important;
  font-weight: 700;
}

.legenda-data {
  margin-top: 2rem;
}

.img-sofrapa {
  height: 100%;
  width: 100%;
  object-fit: cover;
  object-position: center;
}

body.page-template-venditadpi .contenitore-logo-partner-dpi {
  width: 100%;
  height: 8rem;
  display: flex;
  align-content: center;
  justify-content: center;
  align-items: center;
}

body.page-template-venditadpi .owl-nav {
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: space-between;
  align-items: center;
}

body.page-template-venditadpi .owl-nav .owl-prev span,
body.page-template-venditadpi .owl-nav .owl-next span {
  color: #93c01f !important;
  font-size: 3rem !important;
  font-weight: 200;
  transition: all 0.3s;
}

body.page-template-venditadpi .owl-theme .owl-nav [class*="owl-"]:hover {
  background: transparent !important;
  color: #536d12 !important;
  text-decoration: none;
  transition: all 0.3s;
}

.contenuto-cat-corso {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  align-items: flex-start;
}

.checkboxes-wrap span.wpcf7-form-control-wrap {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-content: center;
  justify-content: flex-start;
  align-items: center;
  gap: 2rem;
}

.check-iscrizioni {
  border: 1px solid #363636;
  background: #1f1f1f;
  padding: 1rem;
}

.back-img-iscrizioni {
  background-position: bottom !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  height: 100%;
  position: relative;
  margin-top: 0 !important;
}

.back-img-iscrizioni::before {
  content: "";
  width: 100vw;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #000000ae;
  z-index: -1;
}

.testo-form-iscrizione {
  text-align: center !important;
  margin-bottom: 5rem;
}

.form-iscrizioni {
  background-color: #000000e6;
  padding: 2rem !important;
  margin-bottom: 5rem;
  margin-top: 5rem;
}

body.page-template-iscrizioni div#scambio_colore {
  display: none !important;
}

.dimensione-titolo-iscrizione {
  font-size: 2.5rem !important;
  line-height: 4rem !important;
}

.contenitore-sezioni-del-form {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-content: center;
  justify-content: center;
  align-items: center;
}

.sezione-del-form {
  width: 100%;
  max-width: 50%;
  padding-right: 0.5rem;
}

.bp-controls {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 80%;
  height: 100%;
  pointer-events: none;
  text-align: center;
  transition: opacity 0.3s;
  animation: bp-fadein 0.3s;
  margin: 0 auto !important;
}

.bp-controls button {
  pointer-events: auto;
  cursor: pointer;
  position: absolute;
  border: 0;
  background: rgba(0, 0, 0, 0.15);
  opacity: 0.9;
  transition: all 0.1s;
  contain: content;
  top: 5rem;
  right: 5rem;
  z-index: 999999999999999999 !important;
}

.container1-consulenze {
  margin: 10rem auto !important;
}

.row {
  width: 100%;
}

.col-sm-12.box-spacer:not(:last-child) {
  margin-bottom: 1rem;
}

.content-dati-singolo-corso {
  display: flex;
  flex-flow: row wrap;
  margin-top: 4rem;
  margin-bottom: 4rem;
}

.colonna-dati-singolo-corso {
  width: 21rem;
  display: block;
  padding-right: 1rem;
}

.colonna-dati-singolo-corso .link-categoria-corso {
  display: block;
  width: 100%;
  text-transform: uppercase;
  margin-bottom: 2rem;
}

.colonna-descrizione-corso {
  width: -webkit-calc(100% - 21rem);
  width: -moz-calc(100% - 21rem);
  width: calc(100% - 21rem);
  padding-left: 1rem;
}

.contenitore-informazioni-corsi {
  display: block;
  width: 100%;
  list-style-type: none;
  margin-left: 0;
  padding: 0;
}

.container-testo-date .riassunto {
  color: #b7c4ca !important;
}

h2.h1.titolo-descrizione-corso {
  text-transform: uppercase;
}

.contenitore-informazioni-corsi li {
  color: #b7c4ca;
  font-size: 0.875rem;
}

.contenitore-informazioni-corsi li a {
  color: #b7c4ca;
  text-decoration: none;
}

.contenitore-informazioni-corsi li:not(:last-child) {
  padding-bottom: 0.5rem;
  margin-bottom: 0.5rem;
  border-bottom: 1px solid #545454;
}

.macrocontainer-dati-corsi {
  display: block;
  width: 100%;
  margin: 2rem 0;
}

ul.indice-tab-info-corsi {
  display: flex;
  flex-flow: row wrap;
  width: calc(100% + 1rem);
  padding: 0;
  list-style-type: none;
  margin-left: -0.5rem;
  margin-bottom: 0.5rem;
}

li.tab-index-item {
  display: block;
  font-size: 0.75rem;
  line-height: 1;
  border: 1px solid #545454;
  margin: 0.5rem;
}

li.tab-index-item a {
  color: #b7c4ca;
  text-decoration: none;
  cursor: pointer;
  display: block;
  padding: 0.5rem;
  font-size: 0.75rem;
  text-transform: uppercase;
}

.content-tab-info-corsi {
  display: block;
  width: 100%;
  padding: 1rem;
  border: 1px solid #545454;
  display: block;
}

.content-tab-info-corsi:not(.tab-selezionato) {
  display: none;
}

li.tab-index-item.tab-index-selezionato {
  background: #93c01f;
}

li.tab-index-item.tab-index-selezionato a {
  color: #ffffff;
}

li.tab-index-item:hover {
  background: #93c01f;
}

li.tab-index-item:hover a {
  color: #ffffff;
}

h3.titolo-colonna-corsi {
  text-transform: uppercase;
  color: #93c01f !important;
  display: block;
  width: 100%;
  margin-bottom: 1rem;
  padding: 0;
  font-size: 1.5rem !important;
}

.container-calendar h3.titolo-colonna-corsi {
  padding: 0 2rem;
}

.calendar {
  display: flex;
  flex-wrap: wrap;
}

.month {
  width: 100%;
  margin: 0;
}

.month table {
  width: 100%;
  border-collapse: collapse;
}

.month th,
.month td {
  text-align: center;
  padding: 5px;
}

.month th {
  background-color: #000000;
  color: #93c01f;
  border: 1px solid #000;
  font-weight: normal;
  font-size: 0.75rem;
  text-transform: uppercase;
}

.month td {
  color: #b7c4ca;
  border: 1px solid #000000 !important;
  padding: 0.5rem;
  font-size: 0.875rem;
  text-align: center;
  height: 3rem;
}

.month tr {
  border: 0 !important;
}

.container-calendar {
  display: block;
  width: 100%;
  position: relative;
  margin-top: 3rem;
  padding: 0;
}

.giorno-corso {
  position: relative;
}

.giorno-corso span {
  position: relative;
  z-index: 20;
  color: #363636;
}

.giorno-corso-aggiuntivo {
  position: relative;
}

.giorno-corso-aggiuntivo span {
  position: relative;
  z-index: 20;
  color: #93c01f;
}

.giorno-corso:after {
  content: "";
  display: block;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  background: #93c01f;
  position: absolute;
  top: calc(50% - 1rem);
  left: calc(50% - 1rem);
  z-index: 5;
}

.giorno-corso-aggiuntivo:after {
  content: "";
  display: block;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  border: 1px solid #93c01f;
  position: absolute;
  top: calc(50% - 1rem);
  left: calc(50% - 1rem);
  z-index: 5;
}

.owl-nav .owl-prev span,
.owl-nav .owl-next span {
  color: #fff;
}

.container-calendar .owl-nav {
  position: absolute;
  left: 0;
  right: 0;
  width: 100%;
  top: -0.35rem;
  margin-top: 0 !important;
  height: 1.5rem;
}

.container-calendar .owl-nav .owl-prev,
.container-calendar .owl-nav .owl-next {
  position: absolute;
}

.container-calendar .owl-nav .owl-prev {
  left: 0;
}

.container-calendar .owl-nav .owl-next {
  right: 0;
}

.container-dati-singolo-corso {
  display: block;
  width: 100%;
}

.container-link-pagine-video-intro.background-nero {
  background: #000000;
  border-bottom: 1px solid #333333;
}

.container-link-pagine-video-intro.background-grigio-scuro {
  background: #1a1a1a;
}

.colore-bianco,
a.colore-bianco:link,
a.colore-bianco:visited,
a.colore-bianco:hover {
  color: #ffffff;
}

.hidden-item {
  display: none !important;
}

.lightbox-pdf {
  position: fixed;
  z-index: 10000000000;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  padding: 2rem;
  background: #ffffff66;
  backdrop-filter: grayscale(1);
  display: flex;
  flex-flow: row wrap;
}

.container-lightbox-pdf {
  display: block;
  width: 100%;
  max-width: 50rem;
  margin: 0 auto;
  align-self: center;
  position: relative;
  border: 1px solid #323539;
}

a.link-close-lightbox-pdf {
  display: block;
  width: 2rem;
  height: 1.5rem;
  background: #323539;
  position: absolute;
  top: -1.5rem;
  right: 0;
  text-align: center;
  color: #fff;
  border: 1px solid #323539;
  text-decoration: none;
}

a.link-close-lightbox-pdf span {
  color: #fff;
  text-decoration: none;
}

.content-lightbox-pdf {
  display: block;
  width: 100%;
  background: #fff;
  padding-top: 141%;
  position: relative;
  margin: 0 auto;
}

iframe#iframe_lightbox_pdf {
  position: absolute;
  width: 100%;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  height: 100%;
  background: #fff;
  border: 0;
}

.no-scroll {
  overflow-y: hidden !important;
}

figure.thumbnail-post-corso {
  position: relative;
  z-index: 1;
  padding-top: 60%;
  height: 0;
  width: 100%;
}

.post-content-header-container {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
  background: rgba(0, 0, 0, 0.5);
}

figure.thumbnail-post-corso a,
figure.thumbnail-post-corso a img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
}

figure.thumbnail-post-corso a::before {
  content: "";
  /*background: rgba(0, 0, 0, .45);*/
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
}

figure.thumbnail-post-corso a img {
  object-fit: cover;
}

.box-content-post-corso header {
  display: block;
  min-width: 40%;
  width: max-content;
  max-width: 70%;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 1rem;
  z-index: 10;
  background-color: #000000cc;
  margin: 1rem !important;
}

.box-content-post-corso time {
  display: block;
  width: 100%;
  font-size: 0.875rem;
  margin-bottom: 1rem;
  position: absolute;
  top: 0;
  left: 0;
  padding: 1rem;
  z-index: 10;
}

.box-content-post-corso header h3 {
  text-transform: uppercase;
  display: block;
  margin-left: auto !important;
  font-size: 1.25rem;
  width: 100%;
  background-color: transparent;
  margin: 0;
}

.box-content-post-corso header p {
  font-size: 1rem;
  margin: 1rem 0 0 0;
  line-height: 1.5;
}

.box-content-post-corso h3 a {
  color: #b7c4ca;
  font-family: "Barlow", sans-serif !important;
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-transform: uppercase;
  text-decoration: none;
  transition: 0.3s;
  width: 100%;
  display: block;
  margin-bottom: 0.5rem;
}

.box-content-post-corso .titolo-colonna-corsi {
  color: #93c01f !important;
}

.colore-chiaro {
  color: #b7c4ca;
}

.align-center {
  text-align: center;
  display: block;
}

h1.titolo-sezione,
h2.titolo-sezione,
h3.titolo-sezione {
  font-size: 2.488rem !important;
  line-height: 3rem !important;
  margin-bottom: 2rem !important;
  text-transform: uppercase !important;
}

.container-lightbox-mappa {
  display: block;
  width: 100%;
  max-width: 50rem;
  margin: 0 auto;
  align-self: center;
  position: relative;
  border: 1px solid #323539;
}

.content-lightbox-mappa {
  display: block;
  width: 100%;
  background: #fff;
  padding-top: 100%;
  position: relative;
  margin: 0 auto;
  height: 0;
  overflow: hidden;
}

.content-lightbox-mappa iframe {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  filter: grayscale(1);
}

body.search-results h1 span.text-secondary {
  font-size: inherit;
}

.contenitore-testi2-corsi {
  margin: 5rem auto !important;
  text-align: center;
}

.titolo2-sezioni-corsi {
  font-size: 3rem !important;
  line-height: 3.5rem !important;
}

.container-form .row {
  --bs-gutter-x: 0;
  --bs-gutter-y: 0;
  display: flex;
  flex-wrap: wrap;
  margin-top: calc(-1 * var(--bs-gutter-y));
  margin-right: calc(-0.5 * var(--bs-gutter-x));
  margin-left: calc(-0.5 * var(--bs-gutter-x));
}

.container-form .row div:nth-child(1) {
  padding-right: 0.5rem !important;
}

.container-form .row div:nth-child(2) {
  padding-left: 0.5rem !important;
}

body.page-id-302 .row.sezione-1-landing.distanziamento-sezioni.max-65vw {
  display: none !important;
}

body.page-id-302 .sezione-gallery.back-gallery {
  display: none !important;
}

body.page-id-302 .sezione-dicono {
  margin: 5rem auto;
}

body.page-id-302 .back-img-certificazioni::before {
  content: "";
  width: 100vw;
  height: 85vh;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #00000061;
  z-index: -1;
  background: linear-gradient(
    180deg,
    rgba(255, 255, 255, 0) 20%,
    rgba(0, 0, 0, 1) 100%
  );
}

@media all and (max-width: 767.5px) {
  .row-icone {
    display: block;
  }

  .link-servizi-intro-h {
    width: 100%;
    max-width: 20rem;
    margin-left: auto;
    margin-right: auto;
  }

  .link-servizi-intro-h img {
    display: inline-block;
    width: 100%;
    max-width: 10rem;
  }
}

/* XX-Large devices (larger desktops, 1400px and up) */
@media (min-width: 1400px) {
}

/* X-Large devices (large desktops, 1200px and up) */
@media (max-width: 1200px) {
}

/* X-Large devices (large desktops, 1110px and up) */
@media (max-width: 1110px) {
  .container-chi-siamo {
    display: flex;
    flex-direction: row;
    align-content: center;
    align-items: center;
    justify-content: center;
    flex-wrap: nowrap;
    padding: 3rem;
  }

  .container-testo-chi-siamo {
    max-width: 50rem;
    margin: 0;
  }

  .container-form .row div:nth-child(2) {
    padding-left: 0rem !important;
  }

  .container-form .row div:nth-child(1) {
    padding-right: 0rem !important;
  }
}

/* X-Large devices (large desktops, 1200px and up) */
@media (max-width: 1024.5px) {
}

/*  (desktops, 991.5px and up) */
@media all and (max-width: 991.5px) {
  .container-date {
    padding: 3rem;
    display: flex;
    flex-direction: column;
    align-content: center;
    justify-content: space-around;
    align-items: center;
  }

  .container-footer {
    display: block;
    width: 100%;
  }

  .container-footer div {
    width: 100%;
    text-align: center;
    max-width: 100%;
  }

  .container-footer > div {
    max-width: 20rem;
    margin-left: auto;
    margin-right: auto;
  }

  .container-footer div .mc4wp-form-fields p {
    display: block;
    width: 100%;
  }

  .container-footer div .mc4wp-form-fields {
    display: block !important;
    width: 100%;
  }

  .container-footer div .mc4wp-form-fields .campo-newsletter {
    width: 100% !important;
  }

  .container-footer div .mc4wp-form-fields .bottone-newsletter {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0;
  }

  .container-prevenzione {
    display: flex;
    flex-direction: column-reverse;
    align-content: center;
    justify-content: center;
    align-items: center;
  }

  .container-immagine-prevenzione {
    height: 100%;
    width: 100%;
    max-width: 100vw;
  }

  .immagine-prevenzione {
    width: 100vw;
    height: 100vh;
    object-fit: cover;
    object-position: center;
  }

  .container-testo-prevenzione {
    max-width: 80vw;
    width: 100%;
    margin: 0 auto !important;
    padding: 5rem 0;
  }

  .sistemazione-testo-prevenzione {
    padding-left: 0;
  }

  .hide-991 {
    display: none !important;
  }

  .container-eventi {
    padding: 2rem !important;
    display: flex;
    position: relative;
    flex-flow: row wrap;
    justify-content: flex-start;
    align-content: flex-end;
    align-items: center;
  }

  .container-chi-siamo {
    display: flex;
    flex-direction: column;
    align-content: center;
    align-items: center;
    justify-content: center;
    flex-wrap: nowrap;
    padding: 3rem;
  }

  .immagine-chi-siamo {
    max-width: none;
  }

  .container-testo-partner {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: flex-start;
    padding: 2rem 0.5rem !important;
  }

  .contenitor-prodotti-harken {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
    align-items: center;
    padding: 0 0.5rem !important;
  }

  .contenuto1-consulenza {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: flex-start;
    padding: 5rem 0.5rem !important;
  }

  .container-idemedia {
    display: flex;
    justify-content: flex-end;
    align-content: center;
    align-items: center;
    margin-top: 2rem;
  }

  .pulsante-newsletter {
    max-width: 30%;
    width: fit-content !important;
  }

  .bottone-newsletter {
    height: 3rem !important;
    border: 1px solid #93c01f;
    background: #93c01f;
    text-decoration: none;
    align-content: center;
    padding: 0.5rem !important;
    display: flex;
    justify-content: center;
    flex-wrap: nowrap;
    align-items: center;
    transition: 0.3s;
    color: #fff;
    font-size: 0.9rem;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
    text-transform: uppercase;
    transition: 0.3s;
  }
}

/*  (desktops, 965px and up) */
@media all and (max-width: 965px) {
}

/*  (desktops, 875px and up) */
@media all and (max-width: 875px) {
  .container-testo-intro {
    width: 100%;
    max-width: 48rem;
    text-align: left;
    margin-left: 2.5rem;
  }

  .content-video-slide2 {
    width: 100vw;
    height: 100%;
    align-self: center;
    text-align: center;
    z-index: 4;
    display: flex;
    align-content: center;
    justify-content: center;
    align-items: center;
    background: transparent !important;
    position: absolute;
    margin-left: 0rem;
  }
}

/* Medium devices (tablets, 795px and up) */
@media (max-width: 795px) {
}

/* Medium devices (tablets, 768px and up) */
@media (max-width: 768px) {
}

/*Small devices (landscape phones, 767.5px and up) */
@media (max-width: 767.5px) {
  .row.alternamento:nth-child(odd) div:first-child {
    order: 1;
    padding: 0;
  }

  .row.alternamento:nth-child(odd) div:last-child {
    order: 2;
    padding: 0;
    padding-left: 0rem;
  }

  .row.alternamento:nth-child(even) div:first-child {
    order: 1;
    padding: 0;
  }

  .row.alternamento:nth-child(even) div:last-child {
    order: 2;
    padding: 0;
    padding-right: 0rem;
  }

  .sistemazione-testo-zone {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: flex-start;
    padding-top: 2rem !important;
    padding-bottom: 2rem !important;
  }

  .centramento-menu {
    display: flex;
    align-content: center;
    justify-content: center;
    align-items: center;
    display: none;
  }

  .contenuto1-consulenza {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: flex-start;
    padding: 2rem 0.5rem !important;
  }

  .container-sezione-slider-servizi {
    padding-top: 0rem;
    padding-bottom: 5rem;
  }

  .order-2 {
    order: 2;
  }

  .padding-testo-servizi {
    padding: 1rem !important;
    display: flex;
    align-content: center;
    justify-content: center;
    align-items: center;
  }

  .sezione-del-form {
    width: 100%;
    max-width: 100%;
    padding-right: 0rem;
  }

  .box-content-post-corso header {
    display: block;
    width: max-content;
    max-width: 97%;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 0.5rem !important;
    z-index: 10;
    background-color: #000000cc;
    margin: 0.5rem !important;
  }

  figure.thumbnail-post-corso {
    position: relative;
    z-index: 1;
    padding-top: 60%;
    height: 35vh;
    width: 100%;
  }
}

/*  (desktops, 750px and up) */
@media all and (max-width: 750px) {
  .contenitore-bottoni {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
  }

  .dimensionamento-paragrafo-intro {
    width: 75%;
  }

  .container-form-contatto {
    padding: 5rem !important;
    border-right: 2px solid #444;
  }

  .container-testo-intro {
    width: 100%;
    max-width: 48rem;
    text-align: left;
    margin-left: 0rem;
    padding: 2rem;
  }
}

/*Small devices (landscape phones, 670px and up) */
@media (max-width: 670px) {
}

/*  (desktops, 640px and up) */
@media all and (max-width: 640.5px) {
}

/*Small devices (landscape phones, 576px and up) */
@media (max-width: 576px) {
}

/*Small devices (landscape phones, 576px and up) */
@media (max-width: 575px) {
}

/*Small devices (landscape phones, 500px and up) */
@media (max-width: 500.5px) {
  .container-form-contatto {
    padding: 2rem !important;
    border-right: 2px solid #444;
  }

  .container-partner {
    display: flex;
    align-content: center;
    align-items: center;
    padding: 1rem;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    border-bottom: 2px solid #444;
  }

  .container-date {
    padding: 2rem;
    display: flex;
    flex-direction: column;
    align-content: center;
    justify-content: space-around;
    align-items: center;
  }

  .container-zone {
    max-width: 100%;
    padding: 2rem;
  }

  .container-form-pagina-contatti {
    padding: 2rem !important;
    display: flex;
    align-content: center;
    justify-content: flex-start;
    align-items: flex-start;
    flex-direction: column;
  }

  h1 {
    color: #b7c4ca !important;
    font-style: normal !important;
    font-weight: 200 !important;
    text-transform: uppercase !important;
  }

  .container-chi-siamo {
    display: flex;
    flex-direction: column;
    align-content: center;
    align-items: center;
    justify-content: center;
    flex-wrap: nowrap;
    padding: 2rem;
  }

  .container-testo-partner {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: flex-start;
    padding: 2rem 0.5rem !important;
  }

  .titolo-partner {
    line-height: 2rem !important;
    font-size: 1.728rem !important;
    font-weight: 500 !important;
  }

  .titolo-consulenze {
    padding: 2rem;
    margin: 5rem auto;
    line-height: 2rem !important;
    font-size: 1.728rem !important;
    font-weight: 500 !important;
  }

  .titolo-della-consulenza {
    font-size: 3rem !important;
  }

  .titolo-sezioni-corsi {
    text-align: center;
    margin: 5rem 0;
    font-size: 3rem !important;
    font-weight: 500 !important;
  }

  .titolo2-sezioni-corsi {
    text-align: center;
    line-height: 2rem !important;
    font-size: 1.728rem !important;
    font-weight: 500 !important;
  }

  .header-class:not(.bg-body-tertiary.transparent-color)
    .container-social-header {
    display: none !important;
    transition: 0.3s;
  }

  .titolo-del-post-corso {
    font-size: 3rem !important;
    line-height: 3.5rem !important;
  }

  .sistemazione-elementi-corsi {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: center;
    width: 100% !important;
  }

  .distanziamento-sezioni-post-corsi {
    padding: 1rem;
    width: 100% !important;
  }

  body.page-template-home .owl-item {
    width: 100% !important;
    max-width: 62vw !important;
  }

  .container-eventi {
    padding: 1rem !important;
    display: flex;
    align-items: center;
    position: relative;
    flex-flow: row wrap;
    justify-content: center;
    align-content: flex-end;
  }

  .container-form .row div {
    padding-left: 0 !important;
    padding-right: 0.5rem;
  }

  .container-form .row div:nth-child(2) {
    padding: 0rem !important;
  }

  .dimensione-titolo-iscrizione {
    font-size: 2rem !important;
    line-height: 3rem !important;
  }

  .form-iscrizioni {
    background-color: #000000e0;
    padding: 1rem !important;
    margin-bottom: 0rem;
    margin-top: 0rem;
  }

  input.bottone-newsletter {
    text-align: center !important;
  }

  .container1-consulenze {
    margin: 2rem auto !important;
  }

  .ytc_link {
    display: flex;
    align-items: center;
    justify-content: center;
    align-content: center;
    margin-top: 3rem;
  }

  .container-generale-sofrapa {
    margin: 5rem auto !important;
  }

  .titolo-chi-siamo {
    line-height: 2rem !important;
    font-size: 1.728rem !important;
    font-weight: 500 !important;
  }

  .titolo-del-campoprove {
    line-height: 2rem !important;
    font-size: 1.728rem !important;
    font-weight: 500 !important;
  }

  .fw-500 {
    font-weight: 500 !important;
  }

  .titoli-generali-small {
    line-height: 2rem !important;
    font-size: 1.728rem !important;
    font-weight: 500 !important;
  }

  .titolo-slider-vendita-dpi {
    line-height: 2rem !important;
    font-size: 1.728rem !important;
    font-weight: 500 !important;
  }

  .titolo-dei-contatti {
    line-height: 2rem !important;
    font-size: 1.728rem !important;
    font-weight: 500 !important;
  }

  div#bwg_thumbnails_masonry_0 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    align-items: center;
    align-content: start;
    justify-content: center;
    justify-items: center;
    height: fit-content !important;
  }

  .bwg-item {
    max-height: fit-content;
    height: fit-content;
  }
}

/*Small devices (landscape phones, 400px and up) */
@media (max-width: 480px) {
  body.page-template-home .owl-item {
    width: 100% !important;
    max-width: 55vw !important;
  }

  input.form-control {
    max-width: 6.75rem;
    width: 100%;
  }

  .container-date {
    padding: 2rem;
    display: flex;
    flex-direction: column;
    align-content: center;
    justify-content: space-around;
    align-items: center;
    width: 100vw;
    height: 100vh;
  }

  .container-icone-intro {
    display: flex;
    flex-direction: column;
    align-content: flex-end;
    align-items: center;
    justify-content: center;
    height: 100%;
    position: absolute;
    z-index: 4;
    right: 0.5rem;
    top: 0;
    bottom: 0;
  }

  .container-testo-intro {
    width: 100%;
    max-width: 100vw;
    text-align: left;
    margin-left: 0rem;
    padding: 0rem;
    padding-right: 1.1rem;
  }

  .container-sezione-form {
    border-top: 2px solid #444;
    border-bottom: 2px solid #444;
    width: 100% !important;
    margin: 0 !important;
  }

  .container-pagine-menu {
    align-content: center !important;
    padding-left: 1rem !important;
    padding: 1rem !important;
  }

  .row {
    margin: 0 !important;
  }

  .container-zone {
    max-width: 100%;
    padding: 1rem;
  }

  .youtube_channel.default.responsive.ytc_display_thumbnail {
    display: flex;
    max-width: 100vw;
    margin: 0 auto !important;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    align-items: center;
    justify-content: center;
    gap: 2rem;
  }

  .container-form-pagina-contatti {
    padding: 1rem !important;
    display: flex;
    align-content: center;
    justify-content: flex-start;
    align-items: flex-start;
    flex-direction: column;
  }

  .container-form .row div:nth-child(2) {
    padding-left: 0rem !important;
    padding-right: 0.5rem !important;
  }

  .titolo-slider-vendita-dpi {
    text-align: center;
    margin-top: 5rem;
    padding: 0 0.5rem;
    font-size: 1.5rem !important;
  }

  body.page-template-sofrapa .back-img-certificazioni {
    background-position: top center !important;
    background-size: cover !important;
    height: auto;
    min-height: 40vh;
    padding: 6rem 0.5rem;
    position: relative;
  }
}

@media all and (min-width: 768px) {
  .col-lg-6.box-spacer {
    width: calc(50% - 1rem);
    margin: 0.5rem;
  }
}

@media all and (min-width: 992px) {
  .col-lg-6.box-spacer {
    width: calc(50% - 1rem);
    margin: 0.5rem;
  }
}

.content-video-slide2 {
  margin-left: 0;
}

@media all and (max-width: 639.5px) {
  .sby_item {
    width: 100% !important;
  }
}

@media all and (max-width: 991.5px) {
  .colonna-dati-singolo-corso {
    width: 100%;
    display: flex;
    padding-right: 0;
    flex-flow: row wrap;
  }

  .container-dati-singolo-corso {
    width: 50%;
    padding-right: 1rem;
  }

  .container-calendar {
    display: block;
    width: 50%;
    position: relative;
    margin-top: 0;
    padding: 0;
  }

  .colonna-descrizione-corso {
    width: 100%;
    padding-left: 0;
    margin-top: 2rem;
  }
}

@media all and (max-width: 767.5px) {
  .container-dati-singolo-corso {
    width: 100%;
    padding-right: 0;
  }

  .container-calendar {
    display: block;
    width: 100%;
    margin-top: 2rem;
  }

  .colonna-descrizione-corso {
    width: 100%;
    padding-left: 0;
    margin-top: 2rem;
  }
}

.archive-search-post-container {
  display: flex;
  flex-flow: row wrap;
  width: -webkit-calc(100% + 2rem);
  width: -moz-calc(100% + 2rem);
  width: calc(100% + 2rem);
  margin-left: -1rem;
}

.box-content-post-corso {
  position: relative;
  width: -webkit-calc(50% - 2rem);
  width: -moz-calc(50% - 2rem);
  width: calc(50% - 2rem);
  margin: 1rem;
}

#tutti_corsi .archive-search-post-container {
  width: 100%;
  margin-left: 0;
}

#tutti_corsi .box-content-post-corso {
  width: 33.333%;
  margin: 0;
  padding: 0.3rem;
}

@media all and (max-width: 1199.5px) {
  #tutti_corsi .box-content-post-corso {
    width: 50%;
  }
}

@media all and (max-width: 767.5px) {
  .archive-search-post-container {
    width: 100%;
    padding: 0;
    margin-left: 0;
  }

  #tutti_corsi .archive-search-post-container {
    width: 100%;
    padding: 0 1rem;
  }

  .box-content-post-corso {
    width: 100%;
    margin: 0.5rem 0;
  }

  #tutti_corsi .box-content-post-corso {
    width: 100%;
    margin: 0.5rem 0;
  }
}

@media all and (max-width: 767.5px) {
  h1.titolo-sezione,
  h2.titolo-sezione,
  h3.titolo-sezione {
    font-size: 2.488rem !important;
    margin-bottom: 1.5rem !important;
  }

  #tutti_corsi .box-content-post-corso {
    padding: 0;
  }
}

@media all and (max-width: 511.5px) {
  h1.titolo-sezione,
  h2.titolo-sezione,
  h3.titolo-sezione {
    font-size: 2rem !important;
    margin-bottom: 1rem !important;
    font-weight: 500 !important;
  }
}

@media all and (max-width: 639.5px) {
  .back-img-certificazioni {
    background-position: top center !important;
    background-size: cover !important;
    height: auto;
    min-height: 40vh;
    padding: 4rem 1rem 1rem 1rem;
    position: relative;
  }

  .back-img-certificazioni::before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: #000000ae;
    z-index: -1;
  }

  .testo-corsi,
  .box-content-post-corso h3 a {
    font-size: 1rem;
  }
}

.form-raccolta-info {
  display: block;
  width: 100%;
  max-width: 64rem;
  margin: 2rem auto;
  padding: 1rem;
  border: 1px solid #363636;
}

.form-raccolta-info .section-form:not(:last-child) {
  margin-bottom: 2rem;
}

.row-form {
  display: flex;
  flex-flow: row wrap;
  width: 100%;
  justify-content: space-between;
}

.column-form {
  display: flex;
  align-self: center;
  flex-flow: row wrap;
  margin-bottom: 0.5rem;
}

.column-form.full-column {
  width: 100%;
}

.column-form.half-column {
  width: calc(50% - 0.25rem);
}

.campo-form-info input {
  display: block;
  width: 100%;
  height: 2.5rem;
  border: 0;
  border-top-right-radius: 3px;
  border-bottom-right-radius: 3px;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}

.column-form label {
  width: 10rem;
  line-height: 1;
  color: #000;
  background: #93c01f;
  padding: 0.5rem;
  font-size: 0.875rem;
  height: 2.5rem;
  border-top-left-radius: 3px;
  border-bottom-left-radius: 3px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  align-content: center;
}

.column-form label span {
  display: inline-block;
  position: relative;
  font-size: 0.875rem;
}

.column-form label.mandatory span::after {
  content: "*";
  position: absolute;
  right: -0.5rem;
  top: -0.25rem;
  font-size: 0.75rem;
}

.campo-form-info {
  width: calc(100% - 10rem);
}

.campo-form-dummy {
  display: block;
  width: 100%;
  position: relative;
  background: #93c01f;
  border-radius: 3px;
  padding: 0 0.5rem;
}

.campo-form-dummy input[type="checkbox"],
.campo-form-dummy .wpcf7-form-control-wrap {
  position: absolute;
  z-index: 10;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  opacity: 0;
}

.campo-form-dummy input[type="checkbox"] {
  cursor: pointer;
}

.dummy-data {
  display: flex;
  width: 100%;
  position: relative;
  z-index: 1;
  flex-flow: row wrap;
}

label.dummy-label {
  width: calc(100% - 2rem);
  padding-left: 0.5rem;
  align-self: center;
  border-radius: 0;
  background: transparent;
}

.dummy-data > span {
  display: block;
  width: 2rem;
  align-self: center;
  position: relative;
  border: 1px solid #222;
  height: 1rem;
  border-radius: 1rem;
  background: #222;
}

.dummy-data > span > span {
  display: block;
  width: 0.875rem;
  height: 0.875rem;
  background: #666;
  border-radius: 50%;
}

.campo-form-dummy.checked-checkbox .dummy-data > span {
  background: #343;
  border: 1px solid #343;
}

.campo-form-dummy.checked-checkbox .dummy-data > span > span {
  margin-left: auto;
  margin-right: 0;
  background: #b2f111;
}

.column-form .wpcf7-form-control-wrap {
  display: block;
  width: 100%;
}

.campo-note-testo {
  display: block;
  width: 100%;
}

.column-form .wpcf7-acceptance label {
  display: block;
  width: 100%;
  background: transparent;
}

.margin-top-page {
  margin-top: 4rem;
}

.entry-content-info-page {
  width: 100%;
  max-width: 64rem;
  margin: 0 auto;
}

section.margin-top-page.immagine-header-info {
  margin-bottom: 4rem;
}

header.header-info-page h1 {
  line-height: 1 !important;
  margin-bottom: 1rem;
}

@media all and (max-width: 767.5px) {
  .column-form.half-column {
    width: 100%;
  }

  .desktop-only {
    display: none;
  }

  section.margin-top-page.immagine-header-info {
    margin-bottom: 2rem;
  }
}

@media all and (min-width: 768px) {
  .mobile-only {
    display: none;
  }
}

section.raccolta-dati-form {
  display: block;
  width: calc(100% - 4rem);
  margin: 4rem auto;
  padding: 1rem;
}

section.raccolta-dati-form table.cf7-db-table {
  width: 100%;
}

section.raccolta-dati-form table.cf7-db-table tr,
section.raccolta-dati-form table.cf7-db-table td {
  background: #fff !important;
}

section.raccolta-dati-form table.cf7-db-table td,
section.raccolta-dati-form table.cf7-db-table td {
  border: 1px solid #363636 !important;
}

section.raccolta-dati-form .dataTables_filter label {
  color: #999;
}

.contenitore-video-dicono {
  max-width: 98vw;
}

.sws-accordion {
  background-color: #121212;
  border-radius: 0.25rem;
  border: 0.0625rem solid #333;
  margin: 2rem 0;
  overflow: hidden;
  box-shadow: 0 0.625rem 1.875rem rgba(0, 0, 0, 0.5);
}

.sws-accordion-header {
  padding: 1.5rem 2rem;
  background-color: #1a1a1a;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-weight: 700;
  font-size: 1rem;
  color: #ffffff;
  text-transform: uppercase;
  letter-spacing: 0.05rem;
  transition: all 0.3s ease;
  border-bottom: 0.0625rem solid transparent;
}

.sws-accordion-header:hover {
  background-color: #222;
  color: #93c01f;
}

.sws-accordion-header.is-open {
  background-color: #000;
  border-bottom: 0.0625rem solid #333;
  color: #93c01f;
}

.sws-accordion-icon {
  width: 0.75rem;
  height: 0.75rem;
  border-right: 0.125rem solid #fff;
  border-bottom: 0.125rem solid #fff;
  transform: rotate(45deg);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  margin-right: 0.5rem;
}

.sws-accordion-header:hover .sws-accordion-icon,
.sws-accordion-header.is-open .sws-accordion-icon {
  border-color: #93c01f;
}

.sws-accordion-header.is-open .sws-accordion-icon {
  transform: rotate(225deg);
  margin-top: 0.3rem;
}

.sws-accordion-content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  background-color: #121212;
}

.sws-accordion-inner {
  padding: 2rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  line-height: 1.6;
}

.sws-cat-link {
  text-decoration: none;
  color: #b0b0b0;
  font-weight: 500;
  text-transform: uppercase;
  font-size: 0.8125rem;
  letter-spacing: 0.025rem;
  transition:
    color 0.2s ease,
    text-shadow 0.2s ease;
}

.sws-cat-link:hover {
  color: #93c01f;
  text-shadow: 0 0 0.5rem rgba(212, 242, 0, 0.3);
}

.sws-cat-sep {
  color: #444;
  margin: 0 0.5rem;
  font-size: 0.75rem;
}

.titolo-accordion {
  text-align: center;
}

.appointment-box {
  display: flex;
  background-color: #1e1e1e;
  padding: 2rem;
  border-radius: 0.5rem;
  font-family: sans-serif;
  max-width: 48rem;
  align-items: center;
  gap: 2rem;
  margin: 0 auto;
}

.icon-container {
  flex-shrink: 0;
}

.icon-circle {
  width: 9rem;
  height: 9rem;
  background-color: #2a2a2a;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.4);
}

.icon-circle img {
  max-width: 75%;
}

.big-icon {
  width: 4.5rem;
  height: 4.5rem;
}

.content-container {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.header-title {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.header-title h2 {
  color: #7bc229;
  font-size: 1.5rem;
  margin: 0;
  font-weight: 700;
}

.subtitle {
  font-size: 1.125rem;
  font-weight: 700;
  color: #ffffff;
  margin: 0;
}

.description {
  font-size: 1rem;
  color: #bbbbbb;
  margin: 0 0 0.75rem 0;
  line-height: 1.4;
}

.btn-prenota {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  width: max-content;
  background-color: transparent;
  color: #7bc229;
  border: 0.125rem solid #7bc229;
  padding: 0.75rem 1.25rem;
  border-radius: 0.375rem;
  font-size: 0.9rem;
  font-weight: 700;
  cursor: pointer;
  gap: 1.5rem;
  transition: background-color 0.2s ease;
}

.btn-prenota:hover {
  background-color: rgba(123, 194, 41, 0.15);
}

.arrow-icon {
  width: 1.25rem;
  height: 1.25rem;
}

@media (max-width: 40rem) {
  .appointment-box {
    flex-direction: column;
    text-align: center;
    padding: 1.5rem;
  }

  .header-title {
    justify-content: center;
  }

  .btn-prenota {
    margin: 0 auto;
  }
}

@media (max-width: 767.5px) {
  .appointment-box {
    display: flex;
    background-color: #1e1e1e;
    padding: 2rem;
    border-radius: 0.5rem;
    font-family: sans-serif;
    max-width: 48rem;
    align-items: center;
    gap: 2rem;
    margin: 0 auto;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    text-align: center;
  }

  .btn-prenota {
    margin: 0 auto;
  }
}

/* CTA corsi su richiesta */
.cta-contatti-corso {
  position: relative;
  text-align: center;
  padding: 4rem 2rem;
  border: 1px solid rgba(147, 192, 31, 0.35);
  background: linear-gradient(180deg, rgba(147, 192, 31, 0.09) 0%, rgba(147, 192, 31, 0.02) 100%);
}

.cta-contatti-corso::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 6rem;
  height: 3px;
  background: #93c01f;
}

.cta-contatti-icona {
  font-size: 2.5rem;
  color: #93c01f;
  margin-bottom: 1.5rem;
}

.cta-contatti-titolo {
  color: #fff;
  margin-bottom: 1rem;
}

.cta-contatti-testo {
  color: #b7c4ca;
  max-width: 38rem;
  margin: 0 auto 2rem;
  line-height: 1.6;
}

.cta-contatti-bottone {
  margin: 0 auto;
}

.btn-cta .testo-bottone {
  margin-right: 0;
}

@media (max-width: 768px) {
  .cta-contatti-corso {
    padding: 2.5rem 1.25rem;
  }
}

.container.sezione-form-corso.sezione-cta-contatti-corso {
  margin-bottom: 5rem;
}
