/* Media query */
@import url("https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");
/* FONTS */
/* MIXIN */
/* VARIABILI */
/* GENERALI */
:root {
  --app-height: 100%;
  --main-color: #3c3c3b;
  -ms-overflow-style: none;
}
a:active,
a:focus {
  outline: 0 !important;
  -moz-outline-style: none !important;
}

* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

img {
  image-rendering: -moz-crisp-edges;
  image-rendering: -o-crisp-edges;
  image-rendering: -webkit-optimize-contrast;
  image-rendering: optimizequality;
  -ms-interpolation-mode: nearest-neighbor;
}

picture {
  display: flex;
}
picture img {
  width: 100%;
}

html {
  position: relative;
}

body {
  font-family: "Be Vietnam Pro", sans-serif;
  font-weight: 300;
  font-style: normal;
  font-size: 22px;
  line-height: 32px;
  position: relative;
  color: #292C2C;
  overflow-x: hidden;
}
@media screen and (min-device-width: 1921px) and (max-device-width: 2049px), screen and (min-width: 1921px) and (max-width: 2049px) {
  body {
    font-size: 22px;
    line-height: 32px;
  }
}
@media screen and (min-device-width: 1551px) and (max-device-width: 1792px), screen and (min-width: 1551px) and (max-width: 1792px) {
  body {
    font-size: 18px;
    line-height: 28px;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  body {
    font-size: 20px;
    line-height: 26px;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  body {
    font-size: 20px;
    line-height: 26px;
    overflow-x: hidden;
  }
}
@media screen and (max-width: 480px) {
  body {
    font-size: 16px;
    line-height: 1.4;
  }
}
body a {
  text-decoration: none;
  color: inherit;
}

.contenitore-flex {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}
.contenitore-flex.no-wrap {
  flex-wrap: nowrap;
}
@media screen and (max-width: 480px) {
  .contenitore-flex.no-wrap {
    flex-wrap: wrap;
  }
}

.page-content,
.entry-content,
.entry-summary {
  margin: 0 auto !important;
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .page-content,
  .entry-content,
  .entry-summary {
    margin: 0 auto !important;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .page-content,
  .entry-content,
  .entry-summary {
    margin: 0 auto !important;
  }
}
@media screen and (max-width: 480px) {
  .page-content,
  .entry-content,
  .entry-summary {
    margin: 0 auto !important;
  }
}

.post,
.page {
  margin-bottom: 0 !important;
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .post,
  .page {
    overflow-x: clip;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .post,
  .page {
    overflow-x: clip;
  }
}
@media screen and (max-width: 480px) {
  .post,
  .page {
    overflow-x: clip;
  }
}

.fcol {
  flex-direction: column !important;
}

section {
  position: relative;
}

.grecaptcha-badge {
  display: none !important;
}

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

/* DIMENSIONI */
.mw-50 {
  max-width: 50vw;
  margin: 0 auto;
}
@media screen and (max-width: 480px) {
  .mw-50 {
    max-width: 80vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .mw-50 {
    max-width: 80vw;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .mw-50 {
    max-width: 70vw;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .mw-50 {
    max-width: 70vw;
  }
}
@media screen and (min-device-width: 1551px) and (max-device-width: 1792px), screen and (min-width: 1551px) and (max-width: 1792px) {
  .mw-50 {
    max-width: 60vw;
  }
}

.mw-55 {
  max-width: 55vw;
  margin: 0 auto;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .mw-55 {
    max-width: 65vw;
  }
}

.mw-60 {
  max-width: 60vw;
  margin: 0 auto;
}
@media screen and (min-device-width: 1551px) and (max-device-width: 1792px), screen and (min-width: 1551px) and (max-width: 1792px) {
  .mw-60 {
    max-width: 65vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .mw-60 {
    max-width: 80vw;
  }
}
@media screen and (max-width: 480px) {
  .mw-60 {
    max-width: 80vw;
  }
}

.mw-70 {
  max-width: 70vw;
  margin: 0 auto;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .mw-70 {
    max-width: 80vw;
  }
}
@media screen and (max-width: 480px) {
  .mw-70 {
    max-width: 90vw;
  }
}

.mw-80 {
  max-width: 80vw;
  margin: 0 auto;
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .mw-80 {
    max-width: 90vw;
  }
}
@media screen and (max-width: 480px) {
  .mw-80 {
    max-width: 90vw;
  }
}

.mw-90 {
  max-width: 90vw;
  margin: 0 auto;
}

.un-mezzo {
  flex-basis: 50%;
  width: 50%;
}
@media screen and (max-width: 480px) {
  .un-mezzo {
    flex-basis: 100%;
    width: 100%;
  }
}

.due-terzi {
  flex-basis: 66.666%;
  width: 66.666%;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .due-terzi {
    flex-basis: 100%;
    width: 100%;
  }
}
@media screen and (max-width: 480px) {
  .due-terzi {
    flex-basis: 100%;
    width: 100%;
  }
}

.un-terzo {
  flex-basis: 33.333%;
  width: 33.333%;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .un-terzo {
    flex-basis: 100%;
    width: 100%;
  }
}
@media screen and (max-width: 480px) {
  .un-terzo {
    flex-basis: 100%;
    width: 100%;
  }
}

.mt-0 {
  margin-top: 0 !important;
}

.pdt-0 {
  padding-top: 0 !important;
}

.pdb-0 {
  padding-bottom: 0 !important;
}

.pdt-5 {
  padding-top: 5vh !important;
}

.pdb-5 {
  padding-bottom: 5vh !important;
}

.pdb-10 {
  padding-bottom: 10vh !important;
}

.pdlr-5 {
  padding-left: 5vw;
  padding-right: 5vw;
}

.pdb-20 {
  padding-bottom: 20vh !important;
}

/* ELEMENTI */
.bottone-semplice {
  font-family: "Be Vietnam Pro", sans-serif;
  font-size: 20px;
  letter-spacing: 3px;
  font-weight: 500;
  line-height: 1;
  text-transform: uppercase;
  border: 1px solid #00D464;
  padding: 15px 60px;
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  transition: background-color 0.3s ease-in-out, color 0.3s ease-in-out;
  will-change: background-color, color;
}
@media screen and (max-width: 480px) {
  .bottone-semplice {
    font-size: 16px;
    padding: 15px 40px;
  }
}
.bottone-semplice.white {
  color: #fff;
}
.bottone-semplice.green {
  color: #17352F;
}
.bottone-semplice:hover {
  background-color: #00D464;
}

.wrapper-animazione {
  overflow: hidden;
}

.img-animata {
  opacity: 0;
  visibility: hidden;
}

/* SITE HEADER */
.site-header {
  position: absolute;
  width: 100%;
  margin: 0 auto;
  display: flex;
  left: 0;
  top: 0;
  justify-content: space-between;
  z-index: 10;
  background-color: rgba(23, 53, 47, 0.8);
  padding: 30px 8vw;
  align-items: center;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .site-header {
    padding: 20px 8vw;
  }
}
@media screen and (max-width: 480px) {
  .site-header {
    padding: 20px 8vw;
  }
}
.site-header .site-branding {
  flex-basis: 25%;
  z-index: 10;
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .site-header .site-branding {
    flex-basis: 20%;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .site-header .site-branding {
    flex-basis: 20%;
  }
}
.site-header .site-branding a img {
  max-width: 200px;
  width: 100%;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .site-header .site-branding a img {
    max-width: 50px;
    margin: 0;
    display: block;
  }
}
@media screen and (max-width: 480px) {
  .site-header .site-branding a img {
    max-width: 50px;
    margin: 0;
    display: block;
  }
}
.site-header .wrapper-site-nav {
  flex-basis: 70%;
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .site-header .wrapper-site-nav {
    flex-basis: 78%;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .site-header .wrapper-site-nav {
    flex-basis: 78%;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .site-header .wrapper-site-nav {
    justify-content: center;
  }
}
.site-header .wrapper-site-nav ul.menu {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  align-items: flex-end;
  gap: 20px;
  padding: 0;
  margin: 0;
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .site-header .wrapper-site-nav ul.menu {
    gap: 18px;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .site-header .wrapper-site-nav ul.menu {
    gap: 15px;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .site-header .wrapper-site-nav ul.menu {
    display: none;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .site-header .wrapper-site-nav ul.menu {
    display: none;
  }
}
@media screen and (max-width: 480px) {
  .site-header .wrapper-site-nav ul.menu {
    display: none;
  }
}
.site-header .wrapper-site-nav ul.menu li {
  position: relative;
}
.site-header .wrapper-site-nav ul.menu li::after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 4px;
  background-color: #00D464;
  border-radius: 0;
  position: absolute;
  top: -20px;
  left: 0;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
  will-change: opacity, visibility;
  z-index: 9;
}
.site-header .wrapper-site-nav ul.menu li:hover::after {
  opacity: 1;
  visibility: visible;
}
.site-header .wrapper-site-nav ul.menu li:hover > ul.sub-menu::before {
  height: calc(100% - 75px);
  transition-delay: 0.3s;
}
.site-header .wrapper-site-nav ul.menu li.current-menu-item::after, .site-header .wrapper-site-nav ul.menu li.current-menu-parent::after {
  opacity: 1;
  visibility: visible;
}
.site-header .wrapper-site-nav ul.menu li a {
  font-family: "Be Vietnam Pro", sans-serif;
  font-weight: 500;
  line-height: 1;
  font-size: 18px;
  color: #fff;
  transition: color 0.3s ease-in-out;
  will-change: color;
  position: relative;
  z-index: 10;
}
@media screen and (min-width: 1921px) {
  .site-header .wrapper-site-nav ul.menu li a {
    font-size: 20px;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .site-header .wrapper-site-nav ul.menu li a {
    font-size: 16px;
  }
}
.site-header .wrapper-site-nav ul.menu li a:hover {
  color: #00D464;
}
.site-header .wrapper-site-nav ul.sub-menu {
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 20px 0 40px 0;
}
.site-header .wrapper-site-nav ul.sub-menu::before {
  content: "";
  display: inline-block;
  width: 250vw;
  height: 0;
  background-color: rgba(23, 53, 47, 0.8);
  position: absolute;
  top: 47px;
  left: -100vw;
  transition: height 0.3s ease-in-out 0.1s;
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .site-header .wrapper-site-nav ul.sub-menu::before {
    top: 45px;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .site-header .wrapper-site-nav ul.sub-menu::before {
    top: 40px;
  }
}
.site-header .wrapper-site-nav ul.sub-menu li {
  width: -moz-fit-content;
  width: fit-content;
}
.site-header .wrapper-site-nav ul.sub-menu li::after {
  content: none;
}
.site-header .wrapper-site-nav ul.sub-menu li.current-menu-item a {
  color: #00D464;
}
.site-header .wrapper-site-nav ul.sub-menu li a {
  font-family: "Be Vietnam Pro", sans-serif;
  font-weight: 300;
  line-height: 1;
  font-size: 18px;
  color: #fff;
  text-transform: unset;
  padding: 15px 0;
  background-image: linear-gradient(to right, #fff 63%, rgba(255, 255, 255, 0) 0%);
  background-position: left top;
  background-size: 20px 2px;
  background-repeat: repeat-x;
}
.site-header .wrapper-site-nav ul.sub-menu li a:hover {
  color: #00D464;
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .site-header .wrapper-site-nav ul.sub-menu li a {
    font-size: 16px;
  }
}
@media screen and (min-width: 1921px) {
  .site-header .wrapper-site-nav ul.sub-menu li a {
    font-size: 20px;
  }
}
.site-header.clone {
  position: fixed !important;
  top: 0;
  left: 0;
  right: 0;
  transform: translateY(-200%);
  transition: 0.2s transform cubic-bezier(0.3, 0.73, 0.3, 0.74), background-color 0.4s;
  width: 100%;
  max-width: 100%;
  z-index: 9;
  margin: 0;
  padding: 20px 8vw;
  background-color: rgba(23, 53, 47, 0.8);
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .site-header.clone {
    z-index: 99;
  }
}
@media screen and (max-width: 480px) {
  .site-header.clone {
    z-index: 99;
  }
}
.site-header.clone .site-branding img {
  max-width: 130px;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .site-header.clone .site-branding img {
    max-width: 50px;
  }
}
@media screen and (max-width: 480px) {
  .site-header.clone .site-branding img {
    max-width: 50px;
  }
}
.site-header.clone .wrapper-site-nav ul.sub-menu::before {
  top: 29px;
}
@media screen and (min-width: 1921px) {
  .site-header.clone .wrapper-site-nav ul.sub-menu::before {
    top: 28px;
  }
}
@media screen and (min-device-width: 1551px) and (max-device-width: 1792px), screen and (min-width: 1551px) and (max-width: 1792px) {
  .site-header.clone .wrapper-site-nav ul.sub-menu::before {
    top: 28px;
  }
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .site-header.clone .wrapper-site-nav ul.sub-menu::before {
    top: 28px;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .site-header.clone .wrapper-site-nav ul.sub-menu::before {
    top: 29px;
  }
}
.site-header.clone .wrapper-site-nav ul.menu li:hover > ul.sub-menu::before {
  height: calc(100% - 60px);
}

/* HAMBURGER MENU */
.contenitore-hamburger {
  display: none;
  gap: 0 10px;
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .contenitore-hamburger {
    display: flex;
    align-items: center;
    gap: 0 20px;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .contenitore-hamburger {
    display: flex;
    align-items: center;
    gap: 0 15px;
  }
}
@media screen and (max-width: 480px) {
  .contenitore-hamburger {
    display: flex;
  }
}
.contenitore-hamburger .hamburger {
  display: flex;
}
.contenitore-hamburger span {
  color: #fff;
}

.hamburger-inner,
.hamburger-inner::before,
.hamburger-inner::after {
  width: 100%;
}

body.down .site-header.clone {
  transform: translateY(0);
}

/* OVERLAY MENU MOBILE */
.overlay-menu-mobile {
  background-color: #3f5752;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100dvh;
  z-index: 9;
  overflow: scroll;
  opacity: 0;
  visibility: hidden;
}
.overlay-menu-mobile .wrapper-contenuto {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding: 20vh 8vw;
}
.overlay-menu-mobile .wrapper-contenuto .main-navigation {
  filter: brightness();
}
.overlay-menu-mobile .wrapper-contenuto .main-navigation .menu {
  display: flex;
  flex-direction: column;
  gap: 30px 0;
  position: relative;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .overlay-menu-mobile .wrapper-contenuto .main-navigation .menu {
    gap: 40px 0;
  }
}
.overlay-menu-mobile .wrapper-contenuto .main-navigation .menu li {
  position: relative;
  width: 100%;
  --after-width: 0;
  z-index: 8;
}
.overlay-menu-mobile .wrapper-contenuto .main-navigation .menu li::after {
  content: "";
  display: inline-block;
  width: var(--after-width);
  height: 2px;
  background-color: #fff;
  border-radius: 12px;
  position: absolute;
  bottom: -5px;
  left: 0;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
  will-change: opacity, visibility;
}
.overlay-menu-mobile .wrapper-contenuto .main-navigation .menu li a {
  font-weight: 500;
  line-height: 1.2;
  font-size: 25px;
  color: #fff;
  width: 100%;
  pointer-events: all;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .overlay-menu-mobile .wrapper-contenuto .main-navigation .menu li a {
    font-size: 35px;
  }
}
.overlay-menu-mobile .wrapper-contenuto .main-navigation .menu li.current-menu-item > .wrapper-animazione a, .overlay-menu-mobile .wrapper-contenuto .main-navigation .menu li.current-menu-item > a, .overlay-menu-mobile .wrapper-contenuto .main-navigation .menu li.current_page_item > .wrapper-animazione a, .overlay-menu-mobile .wrapper-contenuto .main-navigation .menu li.current_page_item > a {
  color: #00D464;
}
.overlay-menu-mobile .wrapper-contenuto .main-navigation .menu li.current-menu-parent > .wrapper-animazione a, .overlay-menu-mobile .wrapper-contenuto .main-navigation .menu li.current-menu-ancestor > .wrapper-animazione a, .overlay-menu-mobile .wrapper-contenuto .main-navigation .menu li.current_page_parent > .wrapper-animazione a, .overlay-menu-mobile .wrapper-contenuto .main-navigation .menu li.current_page_ancestor > .wrapper-animazione a {
  color: #00D464;
}
.overlay-menu-mobile .wrapper-contenuto .main-navigation .menu li.current-menu-parent::after, .overlay-menu-mobile .wrapper-contenuto .main-navigation .menu li.current-menu-ancestor::after, .overlay-menu-mobile .wrapper-contenuto .main-navigation .menu li.current_page_parent::after, .overlay-menu-mobile .wrapper-contenuto .main-navigation .menu li.current_page_ancestor::after {
  opacity: 1;
  visibility: visible;
}
.overlay-menu-mobile .wrapper-contenuto .main-navigation .menu li .sub-menu {
  display: flex !important;
  flex-direction: column;
  gap: 0;
  top: 20px;
  left: 0;
  position: relative;
  width: 100%;
  height: 0;
  overflow: hidden;
  transform: none;
}
.overlay-menu-mobile .wrapper-contenuto .main-navigation .menu li .sub-menu li {
  position: relative;
  width: 100%;
  --before-width: 0;
}
.overlay-menu-mobile .wrapper-contenuto .main-navigation .menu li .sub-menu li::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: var(--before-width);
  height: 1px;
  background-image: linear-gradient(to right, #fff 63%, rgba(255, 255, 255, 0) 0%);
  background-position: left bottom;
  background-size: 10px 1px;
  background-repeat: repeat-x;
}
.overlay-menu-mobile .wrapper-contenuto .main-navigation .menu li .sub-menu li a {
  width: 100%;
  font-size: 18px;
  padding: 10px 0;
  opacity: 1;
  visibility: visible;
}
.overlay-menu-mobile .sub-menu__toggle {
  position: absolute;
  top: 3px;
  right: 0;
  background: url("/wp-content/uploads/2026/06/boldarino-ico-arrow-menu.svg");
  background-size: contain;
  border: 0;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-position: center;
  background-repeat: no-repeat;
  width: 25px;
  height: 25px;
  pointer-events: all;
  z-index: 9;
  opacity: 0;
  visibility: hidden;
}
.overlay-menu-mobile .sub-menu__back {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: transparent;
  border: 0;
  text-align: left;
  color: #fff;
  padding: 10px 0;
  font-size: 20px;
  display: flex;
  align-items: center;
  gap: 10px;
}
.overlay-menu-mobile .sub-menu__back::before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background: url("/wp-content/uploads/2026/06/boldarino-arrow-submenu.svg");
  background-position: center;
  background-repeat: no-repeat;
  transform: rotate(180deg);
}
.overlay-menu-mobile .wrapper-animazione {
  overflow: hidden;
}
.overlay-menu-mobile .wrapper-animazione a {
  transform: translateY(100%);
}

/* HERO SECTION */
.hero-slider-section {
  position: relative;
  width: 100%;
  height: 100dvh;
  overflow: hidden;
  background-color: #17352F;
}
.hero-slider-section .wrapper-slider .slider .slide {
  position: relative;
}
.hero-slider-section .wrapper-slider .slider .slide .wrapper-hero-content {
  position: absolute;
  left: 8vw;
  top: 50%;
  transform: translateY(-50%);
  z-index: 4;
}
.hero-slider-section .wrapper-slider .slider .slide .wrapper-hero-content h1 {
  font-family: "Be Vietnam Pro", sans-serif;
  font-weight: 700;
  color: #fff;
  font-size: clamp(30px, 4vw, 58px);
  line-height: 1.2;
  margin: 0;
  position: relative;
}
@media screen and (min-width: 1921px) {
  .hero-slider-section .wrapper-slider .slider .slide .wrapper-hero-content h1 {
    font-size: 4vw;
  }
}
@media screen and (min-device-width: 1921px) and (max-device-width: 2049px), screen and (min-width: 1921px) and (max-width: 2049px) {
  .hero-slider-section .wrapper-slider .slider .slide .wrapper-hero-content h1 {
    font-size: clamp(30px, 4vw, 58px);
  }
}
@media screen and (min-device-width: 1551px) and (max-device-width: 1792px), screen and (min-width: 1551px) and (max-width: 1792px) {
  .hero-slider-section .wrapper-slider .slider .slide .wrapper-hero-content h1 {
    font-size: clamp(30px, 4vw, 50px);
  }
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .hero-slider-section .wrapper-slider .slider .slide .wrapper-hero-content h1 {
    font-size: 3vw;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .hero-slider-section .wrapper-slider .slider .slide .wrapper-hero-content h1 {
    font-size: 3.5vw;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .hero-slider-section .wrapper-slider .slider .slide .wrapper-hero-content h1 {
    font-size: 4vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .hero-slider-section .wrapper-slider .slider .slide .wrapper-hero-content h1 {
    font-size: 7vw;
  }
}
@media screen and (max-width: 480px) {
  .hero-slider-section .wrapper-slider .slider .slide .wrapper-hero-content h1 {
    font-size: 8vw;
  }
}
.hero-slider-section .wrapper-slider .slider .slide .wrapper-hero-content h1 {
  font-size: clamp(60px, 10vw, 80px);
  opacity: 0;
  visibility: hidden;
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .hero-slider-section .wrapper-slider .slider .slide .wrapper-hero-content h1 {
    font-size: 6vw;
    max-width: 80%;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .hero-slider-section .wrapper-slider .slider .slide .wrapper-hero-content h1 {
    font-size: 10vw;
    max-width: 80%;
  }
}
@media screen and (max-width: 480px) {
  .hero-slider-section .wrapper-slider .slider .slide .wrapper-hero-content h1 {
    font-size: 10vw;
    max-width: 80%;
  }
}
.hero-slider-section .wrapper-slider .slider .slide .wrapper-hero-content h2 {
  font-family: "Be Vietnam Pro", sans-serif;
  font-weight: 700;
  color: #fff;
  font-size: clamp(30px, 4vw, 58px);
  line-height: 1.2;
  margin: 0;
  position: relative;
}
@media screen and (min-width: 1921px) {
  .hero-slider-section .wrapper-slider .slider .slide .wrapper-hero-content h2 {
    font-size: 4vw;
  }
}
@media screen and (min-device-width: 1921px) and (max-device-width: 2049px), screen and (min-width: 1921px) and (max-width: 2049px) {
  .hero-slider-section .wrapper-slider .slider .slide .wrapper-hero-content h2 {
    font-size: clamp(30px, 4vw, 58px);
  }
}
@media screen and (min-device-width: 1551px) and (max-device-width: 1792px), screen and (min-width: 1551px) and (max-width: 1792px) {
  .hero-slider-section .wrapper-slider .slider .slide .wrapper-hero-content h2 {
    font-size: clamp(30px, 4vw, 50px);
  }
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .hero-slider-section .wrapper-slider .slider .slide .wrapper-hero-content h2 {
    font-size: 3vw;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .hero-slider-section .wrapper-slider .slider .slide .wrapper-hero-content h2 {
    font-size: 3.5vw;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .hero-slider-section .wrapper-slider .slider .slide .wrapper-hero-content h2 {
    font-size: 4vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .hero-slider-section .wrapper-slider .slider .slide .wrapper-hero-content h2 {
    font-size: 7vw;
  }
}
@media screen and (max-width: 480px) {
  .hero-slider-section .wrapper-slider .slider .slide .wrapper-hero-content h2 {
    font-size: 8vw;
  }
}
.hero-slider-section .wrapper-slider .slider .slide .wrapper-hero-content h2 {
  font-weight: 300;
  font-size: clamp(30px, 8vw, 40px);
  margin-top: 0px;
  opacity: 0;
  visibility: hidden;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .hero-slider-section .wrapper-slider .slider .slide .wrapper-hero-content h2 {
    font-size: 25px;
    max-width: 80%;
    margin-top: 10px;
  }
}
@media screen and (max-width: 480px) {
  .hero-slider-section .wrapper-slider .slider .slide .wrapper-hero-content h2 {
    font-size: 25px;
    max-width: 80%;
    margin-top: 10px;
  }
}
.hero-slider-section .wrapper-slider .slider .slide .wrapper-hero-content .bottone-semplice {
  margin-top: 60px;
  opacity: 0;
  visibility: hidden;
}
.hero-slider-section .wrapper-slider .slider .slide .hero-image img {
  height: 100dvh;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.hero-slider-section .slick-dots {
  right: 8vw;
  bottom: unset;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  flex-direction: column;
  width: -moz-fit-content;
  width: fit-content;
  gap: 20px 0;
}
@media screen and (max-width: 480px) {
  .hero-slider-section .slick-dots {
    gap: 10px 0;
  }
}
.hero-slider-section .slick-dots li {
  width: 30px;
  height: 30px;
}
@media screen and (max-width: 480px) {
  .hero-slider-section .slick-dots li {
    width: 20px;
    height: 20px;
  }
}
.hero-slider-section .slick-dots li.slick-active button::before {
  opacity: 1;
}
.hero-slider-section .slick-dots li:hover button::before {
  opacity: 1;
}
.hero-slider-section .slick-dots li button::before {
  content: "";
  -webkit-mask-image: url("/wp-content/uploads/2026/06/boldarino-ico-plus.svg");
          mask-image: url("/wp-content/uploads/2026/06/boldarino-ico-plus.svg");
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  background-color: #00D464;
  width: 30px;
  height: 30px;
  transition: opacity 0.3s ease-in-out;
  will-change: opacity;
  opacity: 0.5;
}
@media screen and (max-width: 480px) {
  .hero-slider-section .slick-dots li button::before {
    width: 20px;
    height: 20px;
  }
}

/* HERO SECTION */
.hero-section {
  position: relative;
  width: 100%;
  height: 100dvh;
  overflow: hidden;
}
.hero-section.uneven .wrapper-hero-content {
  left: 20vw;
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .hero-section.uneven .wrapper-hero-content {
    left: 8vw;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .hero-section.uneven .wrapper-hero-content {
    left: 8vw;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .hero-section.uneven .wrapper-hero-content {
    left: 8vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .hero-section.uneven .wrapper-hero-content {
    left: 8vw;
  }
}
@media screen and (max-width: 480px) {
  .hero-section.uneven .wrapper-hero-content {
    left: 8vw;
  }
}
.hero-section .hero-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 3;
}
.hero-section .hero-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.hero-section .wrapper-hero-content {
  position: absolute;
  left: 8vw;
  top: 50%;
  transform: translateY(-50%);
  z-index: 5;
}
.hero-section .wrapper-hero-content h1 {
  font-family: "Be Vietnam Pro", sans-serif;
  font-weight: 700;
  color: #fff;
  font-size: clamp(30px, 4vw, 58px);
  line-height: 1.2;
  margin: 0;
  position: relative;
}
@media screen and (min-width: 1921px) {
  .hero-section .wrapper-hero-content h1 {
    font-size: 4vw;
  }
}
@media screen and (min-device-width: 1921px) and (max-device-width: 2049px), screen and (min-width: 1921px) and (max-width: 2049px) {
  .hero-section .wrapper-hero-content h1 {
    font-size: clamp(30px, 4vw, 58px);
  }
}
@media screen and (min-device-width: 1551px) and (max-device-width: 1792px), screen and (min-width: 1551px) and (max-width: 1792px) {
  .hero-section .wrapper-hero-content h1 {
    font-size: clamp(30px, 4vw, 50px);
  }
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .hero-section .wrapper-hero-content h1 {
    font-size: 3vw;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .hero-section .wrapper-hero-content h1 {
    font-size: 3.5vw;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .hero-section .wrapper-hero-content h1 {
    font-size: 4vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .hero-section .wrapper-hero-content h1 {
    font-size: 7vw;
  }
}
@media screen and (max-width: 480px) {
  .hero-section .wrapper-hero-content h1 {
    font-size: 8vw;
  }
}
.hero-section .wrapper-hero-content h1 {
  font-size: clamp(60px, 10vw, 80px);
  opacity: 0;
  visibility: hidden;
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .hero-section .wrapper-hero-content h1 {
    font-size: 4vw;
    padding-right: 8vw;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .hero-section .wrapper-hero-content h1 {
    font-size: 4vw;
    padding-right: 8vw;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .hero-section .wrapper-hero-content h1 {
    font-size: 6vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .hero-section .wrapper-hero-content h1 {
    font-size: 7vw;
    padding-right: 8vw;
  }
}
@media screen and (max-width: 480px) {
  .hero-section .wrapper-hero-content h1 {
    font-size: 8vw;
    padding-right: 8vw;
  }
}
.hero-section .wrapper-hero-content h2 {
  font-family: "Be Vietnam Pro", sans-serif;
  font-weight: 700;
  color: #fff;
  font-size: clamp(30px, 4vw, 58px);
  line-height: 1.2;
  margin: 0;
  position: relative;
}
@media screen and (min-width: 1921px) {
  .hero-section .wrapper-hero-content h2 {
    font-size: 4vw;
  }
}
@media screen and (min-device-width: 1921px) and (max-device-width: 2049px), screen and (min-width: 1921px) and (max-width: 2049px) {
  .hero-section .wrapper-hero-content h2 {
    font-size: clamp(30px, 4vw, 58px);
  }
}
@media screen and (min-device-width: 1551px) and (max-device-width: 1792px), screen and (min-width: 1551px) and (max-width: 1792px) {
  .hero-section .wrapper-hero-content h2 {
    font-size: clamp(30px, 4vw, 50px);
  }
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .hero-section .wrapper-hero-content h2 {
    font-size: 3vw;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .hero-section .wrapper-hero-content h2 {
    font-size: 3.5vw;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .hero-section .wrapper-hero-content h2 {
    font-size: 4vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .hero-section .wrapper-hero-content h2 {
    font-size: 7vw;
  }
}
@media screen and (max-width: 480px) {
  .hero-section .wrapper-hero-content h2 {
    font-size: 8vw;
  }
}
.hero-section .wrapper-hero-content h2 {
  font-weight: 300;
  font-size: clamp(30px, 8vw, 40px);
  margin-top: 0px;
  opacity: 0;
  visibility: hidden;
}
.hero-section .wrapper-hero-content .bottone-semplice {
  margin-top: 60px;
  opacity: 0;
  visibility: hidden;
}
.hero-section.hero-icona.infrastrutture .icona {
  left: 8vw;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .hero-section.hero-icona.infrastrutture .icona {
    left: -12vw;
  }
}
@media screen and (max-width: 480px) {
  .hero-section.hero-icona.infrastrutture .icona {
    left: -12vw;
  }
}
.hero-section.hero-icona.industria .icona {
  left: -5vw;
  max-width: 40vw;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .hero-section.hero-icona.industria .icona {
    left: -12vw;
  }
}
@media screen and (max-width: 480px) {
  .hero-section.hero-icona.industria .icona {
    left: -12vw;
    max-width: 80vw;
    top: 60%;
  }
}
.hero-section.hero-icona .wrapper-hero-content {
  left: 20vw;
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .hero-section.hero-icona .wrapper-hero-content {
    left: 8vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .hero-section.hero-icona .wrapper-hero-content {
    left: 8vw;
  }
}
@media screen and (max-width: 480px) {
  .hero-section.hero-icona .wrapper-hero-content {
    left: 8vw;
  }
}
.hero-section.hero-icona .icona {
  position: absolute;
  z-index: 4;
  max-width: 22vw;
  width: 100%;
  top: 50%;
  transform: translateY(-50%);
  opacity: 0;
  visibility: hidden;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .hero-section.hero-icona .icona {
    max-width: 42vw;
    top: 70%;
  }
}
@media screen and (max-width: 480px) {
  .hero-section.hero-icona .icona {
    max-width: 42vw;
    top: 70%;
  }
}

/* INTRO CON ICONA */
.intro-con-icona {
  position: relative;
  width: 100%;
}
.intro-con-icona.parallax .parallax-ico {
  position: absolute;
  top: 15vh;
  width: 120vw;
  max-width: unset;
  left: -60vw;
}
@media screen and (max-width: 480px) {
  .intro-con-icona.parallax .parallax-ico {
    width: 420vw;
  }
}
.intro-con-icona.parallax.intro-about-vision .parallax-ico {
  top: 0;
  transform: translateY(-50%);
  left: 10vw;
}
.intro-con-icona.parallax.intro-about-vision h2 {
  font-weight: 700;
  font-size: clamp(30px, 4vw, 58px);
  margin-bottom: 60px;
  --before-width: 0;
  --after-width: 0;
  padding-top: 30px;
}
@media screen and (max-width: 480px) {
  .intro-con-icona.parallax.intro-about-vision h2 {
    padding-top: 20px;
  }
}
.intro-con-icona.parallax.intro-about-vision h2::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: var(--before-width);
  height: 4px;
  background-color: #17352F;
}
.intro-con-icona.parallax.intro-about-vision h2::after {
  content: "";
  position: absolute;
  bottom: -30px;
  left: 0;
  width: var(--after-width);
  height: 2px;
  background-image: linear-gradient(to right, #17352F 63%, rgba(255, 255, 255, 0) 0%);
  background-position: left bottom;
  background-size: 19px 2px;
  background-repeat: repeat-x;
}
@media screen and (max-width: 480px) {
  .intro-con-icona.parallax.intro-about-vision h2::after {
    bottom: -15px;
  }
}
.intro-con-icona.parallax.intro-about-vision h2 {
  padding-right: 5vw;
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .intro-con-icona.parallax.intro-about-vision h2 {
    font-size: 3vw;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .intro-con-icona.parallax.intro-about-vision h2 {
    font-size: 3.5vw;
  }
}
@media screen and (max-width: 480px) {
  .intro-con-icona.parallax.intro-about-vision h2 {
    font-size: 6vw;
  }
}
.intro-con-icona.parallax.intro-about-vision h2::before, .intro-con-icona.parallax.intro-about-vision h2::after {
  max-width: calc(100% - 5vw);
}
.intro-con-icona .wrapper-image {
  width: 100%;
  height: 54dvh;
  overflow: hidden;
}
@media screen and (min-device-width: 1551px) and (max-device-width: 1792px), screen and (min-width: 1551px) and (max-width: 1792px) {
  .intro-con-icona .wrapper-image {
    height: 54dvh;
  }
}
.intro-con-icona .wrapper-image picture {
  height: 100%;
  width: 100%;
}
.intro-con-icona .wrapper-image picture img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.intro-con-icona .wrapper-content {
  padding: 10vh 8vw;
  padding-left: 20vw;
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .intro-con-icona .wrapper-content {
    padding-left: 8vw;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .intro-con-icona .wrapper-content {
    padding-left: 8vw;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .intro-con-icona .wrapper-content {
    padding-left: 8vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .intro-con-icona .wrapper-content {
    padding-left: 8vw;
  }
}
@media screen and (max-width: 480px) {
  .intro-con-icona .wrapper-content {
    padding-left: 8vw;
  }
}
.intro-con-icona .wrapper-content {
  background-color: var(--bg-color);
}
.intro-con-icona .wrapper-content h1 {
  font-family: "Be Vietnam Pro", sans-serif;
  font-weight: 700;
  color: #fff;
  font-size: clamp(30px, 4vw, 58px);
  line-height: 1.2;
  margin: 0;
  position: relative;
}
@media screen and (min-width: 1921px) {
  .intro-con-icona .wrapper-content h1 {
    font-size: 4vw;
  }
}
@media screen and (min-device-width: 1921px) and (max-device-width: 2049px), screen and (min-width: 1921px) and (max-width: 2049px) {
  .intro-con-icona .wrapper-content h1 {
    font-size: clamp(30px, 4vw, 58px);
  }
}
@media screen and (min-device-width: 1551px) and (max-device-width: 1792px), screen and (min-width: 1551px) and (max-width: 1792px) {
  .intro-con-icona .wrapper-content h1 {
    font-size: clamp(30px, 4vw, 50px);
  }
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .intro-con-icona .wrapper-content h1 {
    font-size: 3vw;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .intro-con-icona .wrapper-content h1 {
    font-size: 3.5vw;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .intro-con-icona .wrapper-content h1 {
    font-size: 4vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .intro-con-icona .wrapper-content h1 {
    font-size: 7vw;
  }
}
@media screen and (max-width: 480px) {
  .intro-con-icona .wrapper-content h1 {
    font-size: 8vw;
  }
}
.intro-con-icona .wrapper-content h1 {
  color: var(--title-color);
  margin-top: 5vh;
  opacity: 0;
  visibility: hidden;
}
.intro-con-icona .wrapper-content h2 {
  font-family: "Be Vietnam Pro", sans-serif;
  font-weight: 700;
  color: #fff;
  font-size: clamp(30px, 4vw, 58px);
  line-height: 1.2;
  margin: 0;
  position: relative;
}
@media screen and (min-width: 1921px) {
  .intro-con-icona .wrapper-content h2 {
    font-size: 4vw;
  }
}
@media screen and (min-device-width: 1921px) and (max-device-width: 2049px), screen and (min-width: 1921px) and (max-width: 2049px) {
  .intro-con-icona .wrapper-content h2 {
    font-size: clamp(30px, 4vw, 58px);
  }
}
@media screen and (min-device-width: 1551px) and (max-device-width: 1792px), screen and (min-width: 1551px) and (max-width: 1792px) {
  .intro-con-icona .wrapper-content h2 {
    font-size: clamp(30px, 4vw, 50px);
  }
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .intro-con-icona .wrapper-content h2 {
    font-size: 3vw;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .intro-con-icona .wrapper-content h2 {
    font-size: 3.5vw;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .intro-con-icona .wrapper-content h2 {
    font-size: 4vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .intro-con-icona .wrapper-content h2 {
    font-size: 7vw;
  }
}
@media screen and (max-width: 480px) {
  .intro-con-icona .wrapper-content h2 {
    font-size: 8vw;
  }
}
.intro-con-icona .wrapper-content h2 {
  font-size: clamp(20px, 5vw, 35px);
  line-height: 1.3;
  font-weight: 300;
  color: var(--subtitle-color);
  margin-top: 20px;
  opacity: 0;
  visibility: hidden;
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .intro-con-icona .wrapper-content h2 {
    font-size: 25px;
  }
}
.intro-con-icona .wrapper-content p {
  color: var(--text-color);
  opacity: 0;
  visibility: hidden;
}
.intro-con-icona .icona {
  position: absolute;
  top: 50dvh;
  max-width: 30vw;
  transform: translateY(-50%);
  opacity: 0;
  visibility: hidden;
}
.intro-con-icona.edilizia .icona {
  left: -8vw;
  max-width: 33vw;
}
@media screen and (max-width: 480px) {
  .intro-con-icona.edilizia .icona {
    max-width: 83vw;
  }
}

/* MAPPA ANIMATA */
.riga-mappa-animata {
  position: relative;
  width: 100%;
  background-color: #DDEAE1;
}
.riga-mappa-animata:has(.bottone-semplice) {
  padding-top: 10vh;
}
.riga-mappa-animata .dot,
.riga-mappa-animata .label {
  opacity: 0;
}
.riga-mappa-animata .bottone-semplice {
  margin: 0 auto 10vh auto;
  opacity: 0;
  visibility: hidden;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-mappa-animata svg {
    width: 220vw;
    left: -60vw;
    position: relative;
  }
}
@media screen and (max-width: 480px) {
  .riga-mappa-animata svg {
    width: 220vw;
    left: -60vw;
    position: relative;
  }
}

/* LISTA VALORI */
.riga-lista-valori {
  position: relative;
  width: 100%;
  background-color: #3B8555;
  padding-top: 10vh;
  padding-bottom: 10vh;
}
@media screen and (max-width: 480px) {
  .riga-lista-valori {
    padding-top: 5vh;
    padding-bottom: 5vh;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-lista-valori {
    padding: 10vh 8vw;
  }
}
@media screen and (max-width: 480px) {
  .riga-lista-valori {
    padding: 10vh 8vw;
  }
}
.riga-lista-valori .wrapper-titolo {
  padding-left: 8vw;
  padding-right: 8vw;
  position: relative;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-lista-valori .wrapper-titolo {
    padding-left: 0;
    padding-right: 0;
  }
}
@media screen and (max-width: 480px) {
  .riga-lista-valori .wrapper-titolo {
    padding-left: 0;
    padding-right: 0;
  }
}
.riga-lista-valori .wrapper-titolo h2 {
  font-family: "Be Vietnam Pro", sans-serif;
  font-weight: 700;
  color: #fff;
  font-size: clamp(30px, 4vw, 58px);
  line-height: 1.2;
  margin: 0;
  position: relative;
}
@media screen and (min-width: 1921px) {
  .riga-lista-valori .wrapper-titolo h2 {
    font-size: 4vw;
  }
}
@media screen and (min-device-width: 1921px) and (max-device-width: 2049px), screen and (min-width: 1921px) and (max-width: 2049px) {
  .riga-lista-valori .wrapper-titolo h2 {
    font-size: clamp(30px, 4vw, 58px);
  }
}
@media screen and (min-device-width: 1551px) and (max-device-width: 1792px), screen and (min-width: 1551px) and (max-width: 1792px) {
  .riga-lista-valori .wrapper-titolo h2 {
    font-size: clamp(30px, 4vw, 50px);
  }
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .riga-lista-valori .wrapper-titolo h2 {
    font-size: 3vw;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .riga-lista-valori .wrapper-titolo h2 {
    font-size: 3.5vw;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .riga-lista-valori .wrapper-titolo h2 {
    font-size: 4vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-lista-valori .wrapper-titolo h2 {
    font-size: 7vw;
  }
}
@media screen and (max-width: 480px) {
  .riga-lista-valori .wrapper-titolo h2 {
    font-size: 8vw;
  }
}
.riga-lista-valori .wrapper-titolo h2 {
  margin-bottom: 60px;
  --before-width: 0;
  --after-width: 0;
  padding-top: 30px;
}
@media screen and (max-width: 480px) {
  .riga-lista-valori .wrapper-titolo h2 {
    padding-top: 20px;
  }
}
.riga-lista-valori .wrapper-titolo h2::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: var(--before-width);
  height: 4px;
  background-color: #17352F;
}
.riga-lista-valori .wrapper-titolo h2::after {
  content: "";
  position: absolute;
  bottom: -30px;
  left: 0;
  width: var(--after-width);
  height: 2px;
  background-image: linear-gradient(to right, #17352F 63%, rgba(255, 255, 255, 0) 0%);
  background-position: left bottom;
  background-size: 19px 2px;
  background-repeat: repeat-x;
}
@media screen and (max-width: 480px) {
  .riga-lista-valori .wrapper-titolo h2::after {
    bottom: -15px;
  }
}
.riga-lista-valori .wrapper-titolo h2 {
  opacity: 0;
  visibility: hidden;
  font-size: clamp(30px, 10vw, 40px);
  color: #fff;
  width: 100%;
  margin: 0 auto 10vh auto;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-lista-valori .wrapper-titolo h2 {
    font-size: 7vw;
  }
}
@media screen and (max-width: 480px) {
  .riga-lista-valori .wrapper-titolo h2 {
    font-size: 8vw;
  }
}
.riga-lista-valori .wrapper-titolo .wrapper-nav {
  position: absolute;
  right: 8vw;
  top: 36px;
  /* transform: translateY(50%); */
  display: flex;
  gap: 10px;
  flex-direction: row;
  align-items: center;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-lista-valori .wrapper-titolo .wrapper-nav {
    right: 0;
    top: 26px;
  }
}
@media screen and (max-width: 480px) {
  .riga-lista-valori .wrapper-titolo .wrapper-nav {
    right: 0;
    top: 26px;
  }
}
.riga-lista-valori .wrapper-titolo .wrapper-nav .nav {
  width: 40px;
  height: 40px;
  cursor: pointer;
}
.riga-lista-valori .wrapper-valori .slider-valori {
  left: 8vw;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-lista-valori .wrapper-valori .slider-valori {
    left: 0;
  }
}
@media screen and (max-width: 480px) {
  .riga-lista-valori .wrapper-valori .slider-valori {
    left: 0;
  }
}
.riga-lista-valori .wrapper-valori .slider-valori .slick-slide {
  margin: 0 5vw;
}
.riga-lista-valori .wrapper-valori .slider-valori .slick-list {
  margin: 0 -5vw;
}
.riga-lista-valori .wrapper-valori .slider-valori .blocco-valore .cerchio {
  background-color: #17352F;
  width: 10vw;
  height: 10vw;
  border-radius: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 480px) {
  .riga-lista-valori .wrapper-valori .slider-valori .blocco-valore .cerchio {
    width: 20vw;
    height: 20vw;
  }
}
.riga-lista-valori .wrapper-valori .slider-valori .blocco-valore .cerchio span {
  font-weight: 800;
  color: #00D464;
  font-size: clamp(30px, 10vw, 40px);
}
.riga-lista-valori .wrapper-valori .slider-valori .blocco-valore .wrapper-testo {
  margin-top: 5vh;
}
.riga-lista-valori .wrapper-valori .slider-valori .blocco-valore .wrapper-testo h3 {
  font-family: "Be Vietnam Pro", sans-serif;
  font-weight: 700;
  color: #fff;
  font-size: clamp(30px, 4vw, 58px);
  line-height: 1.2;
  margin: 0;
  position: relative;
}
@media screen and (min-width: 1921px) {
  .riga-lista-valori .wrapper-valori .slider-valori .blocco-valore .wrapper-testo h3 {
    font-size: 4vw;
  }
}
@media screen and (min-device-width: 1921px) and (max-device-width: 2049px), screen and (min-width: 1921px) and (max-width: 2049px) {
  .riga-lista-valori .wrapper-valori .slider-valori .blocco-valore .wrapper-testo h3 {
    font-size: clamp(30px, 4vw, 58px);
  }
}
@media screen and (min-device-width: 1551px) and (max-device-width: 1792px), screen and (min-width: 1551px) and (max-width: 1792px) {
  .riga-lista-valori .wrapper-valori .slider-valori .blocco-valore .wrapper-testo h3 {
    font-size: clamp(30px, 4vw, 50px);
  }
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .riga-lista-valori .wrapper-valori .slider-valori .blocco-valore .wrapper-testo h3 {
    font-size: 3vw;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .riga-lista-valori .wrapper-valori .slider-valori .blocco-valore .wrapper-testo h3 {
    font-size: 3.5vw;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .riga-lista-valori .wrapper-valori .slider-valori .blocco-valore .wrapper-testo h3 {
    font-size: 4vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-lista-valori .wrapper-valori .slider-valori .blocco-valore .wrapper-testo h3 {
    font-size: 7vw;
  }
}
@media screen and (max-width: 480px) {
  .riga-lista-valori .wrapper-valori .slider-valori .blocco-valore .wrapper-testo h3 {
    font-size: 8vw;
  }
}
.riga-lista-valori .wrapper-valori .slider-valori .blocco-valore .wrapper-testo h3 {
  margin-bottom: 60px;
  --before-width: 0;
  --after-width: 0;
  padding-top: 30px;
}
@media screen and (max-width: 480px) {
  .riga-lista-valori .wrapper-valori .slider-valori .blocco-valore .wrapper-testo h3 {
    padding-top: 20px;
  }
}
.riga-lista-valori .wrapper-valori .slider-valori .blocco-valore .wrapper-testo h3::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: var(--before-width);
  height: 4px;
  background-color: #17352F;
}
.riga-lista-valori .wrapper-valori .slider-valori .blocco-valore .wrapper-testo h3::after {
  content: "";
  position: absolute;
  bottom: -30px;
  left: 0;
  width: var(--after-width);
  height: 2px;
  background-image: linear-gradient(to right, #17352F 63%, rgba(255, 255, 255, 0) 0%);
  background-position: left bottom;
  background-size: 19px 2px;
  background-repeat: repeat-x;
}
@media screen and (max-width: 480px) {
  .riga-lista-valori .wrapper-valori .slider-valori .blocco-valore .wrapper-testo h3::after {
    bottom: -15px;
  }
}
.riga-lista-valori .wrapper-valori .slider-valori .blocco-valore .wrapper-testo h3 {
  font-size: clamp(30px, 10vw, 40px);
  color: #fff;
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .riga-lista-valori .wrapper-valori .slider-valori .blocco-valore .wrapper-testo h3 {
    font-size: 2.5vw;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .riga-lista-valori .wrapper-valori .slider-valori .blocco-valore .wrapper-testo h3 {
    font-size: 3vw;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .riga-lista-valori .wrapper-valori .slider-valori .blocco-valore .wrapper-testo h3 {
    font-size: 2vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-lista-valori .wrapper-valori .slider-valori .blocco-valore .wrapper-testo h3 {
    font-size: 5vw;
  }
}
@media screen and (max-width: 480px) {
  .riga-lista-valori .wrapper-valori .slider-valori .blocco-valore .wrapper-testo h3 {
    font-size: 8vw;
  }
}
.riga-lista-valori .wrapper-valori .slider-valori .blocco-valore .wrapper-testo h3::before, .riga-lista-valori .wrapper-valori .slider-valori .blocco-valore .wrapper-testo h3::after {
  width: 100%;
}
.riga-lista-valori .wrapper-valori .slider-valori .blocco-valore .wrapper-testo p {
  color: #fff;
}

/* DUE COLONNE */
.riga-due-colonne {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-due-colonne {
    grid-template-columns: repeat(1, 1fr);
  }
}
@media screen and (max-width: 480px) {
  .riga-due-colonne {
    grid-template-columns: repeat(1, 1fr);
  }
}
.riga-due-colonne .col {
  padding: 10vh 8vw;
  position: relative;
  z-index: 2;
}
.riga-due-colonne .col h2 {
  font-family: "Be Vietnam Pro", sans-serif;
  font-weight: 700;
  color: #fff;
  font-size: clamp(30px, 4vw, 58px);
  line-height: 1.2;
  margin: 0;
  position: relative;
}
@media screen and (min-width: 1921px) {
  .riga-due-colonne .col h2 {
    font-size: 4vw;
  }
}
@media screen and (min-device-width: 1921px) and (max-device-width: 2049px), screen and (min-width: 1921px) and (max-width: 2049px) {
  .riga-due-colonne .col h2 {
    font-size: clamp(30px, 4vw, 58px);
  }
}
@media screen and (min-device-width: 1551px) and (max-device-width: 1792px), screen and (min-width: 1551px) and (max-width: 1792px) {
  .riga-due-colonne .col h2 {
    font-size: clamp(30px, 4vw, 50px);
  }
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .riga-due-colonne .col h2 {
    font-size: 3vw;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .riga-due-colonne .col h2 {
    font-size: 3.5vw;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .riga-due-colonne .col h2 {
    font-size: 4vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-due-colonne .col h2 {
    font-size: 7vw;
  }
}
@media screen and (max-width: 480px) {
  .riga-due-colonne .col h2 {
    font-size: 8vw;
  }
}
.riga-due-colonne .col h2 {
  margin-bottom: 60px;
  --before-width: 0;
  --after-width: 0;
  padding-top: 30px;
}
@media screen and (max-width: 480px) {
  .riga-due-colonne .col h2 {
    padding-top: 20px;
  }
}
.riga-due-colonne .col h2::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: var(--before-width);
  height: 4px;
  background-color: #17352F;
}
.riga-due-colonne .col h2::after {
  content: "";
  position: absolute;
  bottom: -30px;
  left: 0;
  width: var(--after-width);
  height: 2px;
  background-image: linear-gradient(to right, #17352F 63%, rgba(255, 255, 255, 0) 0%);
  background-position: left bottom;
  background-size: 19px 2px;
  background-repeat: repeat-x;
}
@media screen and (max-width: 480px) {
  .riga-due-colonne .col h2::after {
    bottom: -15px;
  }
}
.riga-due-colonne .col h2 {
  opacity: 0;
  visibility: hidden;
  padding-top: 10vh;
}
.riga-due-colonne .col p {
  margin: 40px 0;
  opacity: 0;
  visibility: hidden;
}
.riga-due-colonne .col:nth-of-type(1) h2 {
  color: #3B8555;
}
.riga-due-colonne .col:nth-of-type(2) {
  background-color: #17352F;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.riga-due-colonne .col:nth-of-type(2) p {
  color: #fff;
  text-align: center;
}
.riga-due-colonne .ico-plus {
  position: absolute;
  top: 22vh;
  left: 8vw;
  opacity: 0;
  visibility: hidden;
}
.riga-due-colonne .bottone-semplice {
  opacity: 0;
  visibility: hidden;
}
@media screen and (max-width: 480px) {
  .riga-due-colonne .bottone-semplice {
    width: 100%;
    text-align: center;
  }
}
.riga-due-colonne.con-immagine.invertita .col:nth-of-type(1) {
  order: 2;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-due-colonne.con-immagine.invertita .col:nth-of-type(1) {
    order: 1;
  }
}
@media screen and (max-width: 480px) {
  .riga-due-colonne.con-immagine.invertita .col:nth-of-type(1) {
    order: 1;
  }
}
.riga-due-colonne.con-immagine.invertita .col:nth-of-type(2) {
  order: 1;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-due-colonne.con-immagine.invertita .col:nth-of-type(2) {
    order: 2;
  }
}
@media screen and (max-width: 480px) {
  .riga-due-colonne.con-immagine.invertita .col:nth-of-type(2) {
    order: 2;
  }
}
.riga-due-colonne.con-immagine:has(.bottone-semplice:hover) .col-img img {
  transform: scale(1.1);
}
.riga-due-colonne.con-immagine .col-testo h2 {
  font-size: clamp(30px, 10vw, 40px);
  padding-top: 30px;
  margin-bottom: 35px;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-due-colonne.con-immagine .col-testo h2 {
    font-size: 7vw;
  }
}
@media screen and (max-width: 480px) {
  .riga-due-colonne.con-immagine .col-testo h2 {
    font-size: 8vw;
  }
}
.riga-due-colonne.con-immagine .col-testo ul {
  padding: 0;
  margin: 0;
  list-style: none;
}
.riga-due-colonne.con-immagine .col-testo ul li {
  display: flex;
  padding: 10px 0 15px 0;
  position: relative;
  --before-width: 0;
  opacity: 0;
  visibility: hidden;
}
.riga-due-colonne.con-immagine .col-testo ul li::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: var(--before-width);
  height: 2px;
  background-image: linear-gradient(to right, #17352F 63%, rgba(255, 255, 255, 0) 0%);
  background-position: left bottom;
  background-size: 19px 2px;
  background-repeat: repeat-x;
}
.riga-due-colonne.con-immagine .col-testo ul li .titolo {
  font-weight: 500;
  color: #fff;
}
.riga-due-colonne.con-immagine .col-testo ul li .testo {
  color: #3B8555;
}
.riga-due-colonne.con-immagine .col-testo .bottone-semplice {
  margin: 50px 0;
  opacity: 0;
  visibility: hidden;
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .riga-due-colonne.con-immagine .col-testo .bottone-semplice {
    text-align: center;
    padding: 20px 25px;
  }
}
.riga-due-colonne.con-immagine .col-img {
  padding: 0;
  overflow: hidden;
}
.riga-due-colonne.con-immagine .col-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.3s ease-in-out;
  will-change: transform;
}
.riga-due-colonne.con-mappa .col {
  background-color: #3B8555;
}
.riga-due-colonne.con-mappa .col h2 {
  font-size: clamp(30px, 10vw, 40px);
  padding-top: 30px;
  margin-bottom: 60px;
  color: #fff;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-due-colonne.con-mappa .col h2 {
    font-size: 7vw;
  }
}
@media screen and (max-width: 480px) {
  .riga-due-colonne.con-mappa .col h2 {
    font-size: 8vw;
  }
}
.riga-due-colonne.con-mappa .col p {
  color: #fff;
}
.riga-due-colonne.con-mappa .col .bottone-semplice {
  border-color: #fff;
}
.riga-due-colonne.con-mappa .col .bottone-semplice:hover {
  background-color: #fff;
}
.riga-due-colonne.con-mappa .col.col-mappa {
  padding: 0;
  justify-content: flex-end;
}
.riga-due-colonne.con-mappa .col.col-mappa svg {
  max-width: 110%;
  width: 110%;
  height: auto;
  position: relative;
  right: 5%;
}
.riga-due-colonne.con-download {
  background-color: #fff;
}
.riga-due-colonne.con-download.invertita .col:nth-of-type(1) {
  order: 2;
}
.riga-due-colonne.con-download.invertita .col:nth-of-type(2) {
  order: 1;
}
.riga-due-colonne.con-download .col h2 {
  font-size: clamp(30px, 10vw, 40px);
  padding-top: 30px;
  margin-bottom: 60px;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-due-colonne.con-download .col h2 {
    font-size: 7vw;
  }
}
@media screen and (max-width: 480px) {
  .riga-due-colonne.con-download .col h2 {
    font-size: 8vw;
  }
}
.riga-due-colonne.con-download .col:not(:has(h2)) p {
  margin-top: 0;
}
.riga-due-colonne.con-download .col-allegati {
  background-color: #fff;
  justify-content: flex-start;
}
.riga-due-colonne.con-download .col-allegati ul {
  position: relative;
  list-style: none;
  padding: 0;
  margin: 0;
  width: 100%;
}
.riga-due-colonne.con-download .col-allegati ul li {
  display: flex;
  padding: 30px 0 50px 0;
  position: relative;
  --before-width: 0;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  opacity: 0;
  visibility: hidden;
}
.riga-due-colonne.con-download .col-allegati ul li::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: var(--before-width);
  height: 2px;
  background-image: linear-gradient(to right, #3B8555 63%, rgba(255, 255, 255, 0) 0%);
  background-position: left bottom;
  background-size: 19px 2px;
  background-repeat: repeat-x;
}
.riga-due-colonne.con-download .col-allegati ul li:hover a {
  color: #17352F;
}
.riga-due-colonne.con-download .col-allegati ul li:hover + .ico-download {
  transform: translateY(-60%);
}
.riga-due-colonne.con-download .col-allegati ul li:hover + .ico-download .cls-ico-2 {
  fill: #3B8555;
}
.riga-due-colonne.con-download .col-allegati ul li a {
  width: 100%;
  display: block;
  color: #3B8555;
  font-size: 18px;
  font-weight: 500;
  transition: color 0.3s ease-in-out;
  will-change: color;
}
@media screen and (max-width: 480px) {
  .riga-due-colonne.con-download .col-allegati ul li a {
    width: 80%;
  }
}
.riga-due-colonne.con-download .col-allegati .line-mask,
.riga-due-colonne.con-download .col-allegati .line {
  width: 100%;
}
.riga-due-colonne.con-download .col-allegati .wrapper {
  position: relative;
}
.riga-due-colonne.con-download .col-allegati .ico-download {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-70%);
  pointer-events: none;
  transition: transform 0.3s ease-in-out;
  will-change: transform;
  opacity: 0;
  visibility: hidden;
}
.riga-due-colonne.con-download .col-allegati .ico-download .cls-ico-2 {
  transition: fill 0.3s ease-in-out;
  will-change: fill;
}

/* DUE COLONNE SIMBOLO */
.riga-due-colonne-simbolo {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-due-colonne-simbolo {
    grid-template-columns: repeat(1, 1fr);
  }
}
@media screen and (max-width: 480px) {
  .riga-due-colonne-simbolo {
    grid-template-columns: repeat(1, 1fr);
  }
}
.riga-due-colonne-simbolo .col {
  padding: 10vh 8vw;
  position: relative;
  z-index: 2;
  overflow: hidden;
}
.riga-due-colonne-simbolo .col:has(.bottone-semplice:hover) .img-bg {
  transform: scale(1.1);
}
.riga-due-colonne-simbolo .col:has(a:hover) .img-bg {
  transform: scale(1.1);
}
.riga-due-colonne-simbolo .col .img-bg {
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.3s ease-in-out;
  will-change: transform;
}
.riga-due-colonne-simbolo .col .img-animata {
  max-width: 20vw;
  width: 100%;
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .riga-due-colonne-simbolo .col .img-animata {
    max-width: 10vw;
  }
}
@media screen and (max-width: 480px) {
  .riga-due-colonne-simbolo .col .img-animata {
    max-width: 30vw;
  }
}
.riga-due-colonne-simbolo .col h2 {
  font-family: "Be Vietnam Pro", sans-serif;
  font-weight: 700;
  color: #fff;
  font-size: clamp(30px, 4vw, 58px);
  line-height: 1.2;
  margin: 0;
  position: relative;
}
@media screen and (min-width: 1921px) {
  .riga-due-colonne-simbolo .col h2 {
    font-size: 4vw;
  }
}
@media screen and (min-device-width: 1921px) and (max-device-width: 2049px), screen and (min-width: 1921px) and (max-width: 2049px) {
  .riga-due-colonne-simbolo .col h2 {
    font-size: clamp(30px, 4vw, 58px);
  }
}
@media screen and (min-device-width: 1551px) and (max-device-width: 1792px), screen and (min-width: 1551px) and (max-width: 1792px) {
  .riga-due-colonne-simbolo .col h2 {
    font-size: clamp(30px, 4vw, 50px);
  }
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .riga-due-colonne-simbolo .col h2 {
    font-size: 3vw;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .riga-due-colonne-simbolo .col h2 {
    font-size: 3.5vw;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .riga-due-colonne-simbolo .col h2 {
    font-size: 4vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-due-colonne-simbolo .col h2 {
    font-size: 7vw;
  }
}
@media screen and (max-width: 480px) {
  .riga-due-colonne-simbolo .col h2 {
    font-size: 8vw;
  }
}
.riga-due-colonne-simbolo .col h2 {
  margin-bottom: 60px;
  --before-width: 0;
  --after-width: 0;
  padding-top: 30px;
}
@media screen and (max-width: 480px) {
  .riga-due-colonne-simbolo .col h2 {
    padding-top: 20px;
  }
}
.riga-due-colonne-simbolo .col h2::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: var(--before-width);
  height: 4px;
  background-color: #fff;
}
.riga-due-colonne-simbolo .col h2::after {
  content: "";
  position: absolute;
  bottom: -30px;
  left: 0;
  width: var(--after-width);
  height: 2px;
  background-image: linear-gradient(to right, #fff 63%, rgba(255, 255, 255, 0) 0%);
  background-position: left bottom;
  background-size: 19px 2px;
  background-repeat: repeat-x;
}
@media screen and (max-width: 480px) {
  .riga-due-colonne-simbolo .col h2::after {
    bottom: -15px;
  }
}
.riga-due-colonne-simbolo .col h2 {
  opacity: 0;
  visibility: hidden;
  color: #fff;
  margin-top: 5vh;
}
.riga-due-colonne-simbolo .col p {
  margin: 40px 0;
  color: #fff;
  opacity: 0;
  visibility: hidden;
}
.riga-due-colonne-simbolo .col .bottone-semplice {
  opacity: 0;
  visibility: hidden;
}

/* PARALLAX ICO */
.parallax-ico {
  position: absolute;
  top: -50%;
  max-width: unset;
  z-index: 3;
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
}

/* RIGA CONTATORI */
.riga-contatori {
  position: relative;
  padding: 10vh 8vw;
  background-color: #3B8555;
}
.riga-contatori .wrapper-contatori {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20vh 80px;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-contatori .wrapper-contatori {
    grid-template-columns: repeat(1, 1fr);
    gap: 10vh 0;
  }
}
@media screen and (max-width: 480px) {
  .riga-contatori .wrapper-contatori {
    grid-template-columns: repeat(1, 1fr);
    gap: 10vh 0;
  }
}
.riga-contatori .wrapper-contatori .wrapper-contatore {
  align-items: center;
  gap: 50px;
  flex-wrap: nowrap;
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .riga-contatori .wrapper-contatori .wrapper-contatore {
    flex-wrap: wrap;
    justify-content: center;
    flex-direction: column;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .riga-contatori .wrapper-contatori .wrapper-contatore {
    flex-wrap: wrap;
    justify-content: center;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-contatori .wrapper-contatori .wrapper-contatore {
    flex-wrap: wrap;
    flex-direction: column;
  }
}
@media screen and (max-width: 480px) {
  .riga-contatori .wrapper-contatori .wrapper-contatore {
    flex-wrap: wrap;
    flex-direction: column;
  }
}
.riga-contatori .wrapper-contatori .wrapper-contatore .col-ico .wrapper-ico {
  background-color: #17352F;
  border-radius: 50%;
  padding: 10px;
  width: 20vw;
  max-width: 230px;
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1;
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-ico .wrapper-ico {
    width: 15vw;
    flex-basis: 100%;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-ico .wrapper-ico {
    width: 15vw;
    flex-basis: 100%;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-ico .wrapper-ico {
    width: 20vw;
  }
}
@media screen and (max-width: 480px) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-ico .wrapper-ico {
    width: 35vw;
  }
}
.riga-contatori .wrapper-contatori .wrapper-contatore .col-ico .wrapper-ico img {
  max-width: 100px;
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-ico .wrapper-ico img {
    max-width: 70px;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-ico .wrapper-ico img {
    max-width: 70px;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-ico .wrapper-ico img {
    max-width: 70px;
  }
}
@media screen and (max-width: 480px) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-ico .wrapper-ico img {
    max-width: 70px;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info {
    text-align: center;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info {
    text-align: center;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info {
    text-align: center;
  }
}
@media screen and (max-width: 480px) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info {
    text-align: center;
  }
}
.riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info .numero,
.riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info .simbolo {
  font-family: "Be Vietnam Pro", sans-serif;
  font-weight: 700;
  color: #fff;
  font-size: clamp(30px, 4vw, 58px);
  line-height: 1.2;
  margin: 0;
  position: relative;
}
@media screen and (min-width: 1921px) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info .numero,
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info .simbolo {
    font-size: 4vw;
  }
}
@media screen and (min-device-width: 1921px) and (max-device-width: 2049px), screen and (min-width: 1921px) and (max-width: 2049px) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info .numero,
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info .simbolo {
    font-size: clamp(30px, 4vw, 58px);
  }
}
@media screen and (min-device-width: 1551px) and (max-device-width: 1792px), screen and (min-width: 1551px) and (max-width: 1792px) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info .numero,
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info .simbolo {
    font-size: clamp(30px, 4vw, 50px);
  }
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info .numero,
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info .simbolo {
    font-size: 3vw;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info .numero,
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info .simbolo {
    font-size: 3.5vw;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info .numero,
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info .simbolo {
    font-size: 4vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info .numero,
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info .simbolo {
    font-size: 7vw;
  }
}
@media screen and (max-width: 480px) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info .numero,
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info .simbolo {
    font-size: 8vw;
  }
}
.riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info .numero,
.riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info .simbolo {
  color: #17352F;
  font-size: clamp(50px, 10vw, 80px);
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info .numero,
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info .simbolo {
    font-size: 50px;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info .numero,
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info .simbolo {
    text-align: center;
    font-size: 50px;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info .numero,
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info .simbolo {
    text-align: center;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info .numero,
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info .simbolo {
    text-align: center;
    font-size: 15vw;
  }
}
@media screen and (max-width: 480px) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info .numero,
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info .simbolo {
    text-align: center;
    font-size: 15vw;
  }
}
.riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info h3 {
  font-family: "Be Vietnam Pro", sans-serif;
  font-weight: 700;
  color: #fff;
  font-size: clamp(30px, 4vw, 58px);
  line-height: 1.2;
  margin: 0;
  position: relative;
}
@media screen and (min-width: 1921px) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info h3 {
    font-size: 4vw;
  }
}
@media screen and (min-device-width: 1921px) and (max-device-width: 2049px), screen and (min-width: 1921px) and (max-width: 2049px) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info h3 {
    font-size: clamp(30px, 4vw, 58px);
  }
}
@media screen and (min-device-width: 1551px) and (max-device-width: 1792px), screen and (min-width: 1551px) and (max-width: 1792px) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info h3 {
    font-size: clamp(30px, 4vw, 50px);
  }
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info h3 {
    font-size: 3vw;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info h3 {
    font-size: 3.5vw;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info h3 {
    font-size: 4vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info h3 {
    font-size: 7vw;
  }
}
@media screen and (max-width: 480px) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info h3 {
    font-size: 8vw;
  }
}
.riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info h3 {
  color: #fff;
  font-size: clamp(30px, 10vw, 40px);
  margin: 30px 0 0 0;
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info h3 {
    text-align: center;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info h3 {
    text-align: center;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info h3 {
    text-align: center;
    margin-top: 0;
    font-size: 7vw;
  }
}
@media screen and (max-width: 480px) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info h3 {
    text-align: center;
    margin-top: 0;
    font-size: 8vw;
  }
}
.riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info p {
  color: #fff;
  margin: 0;
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info p {
    text-align: center;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info p {
    text-align: center;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info p {
    text-align: center;
  }
}
@media screen and (max-width: 480px) {
  .riga-contatori .wrapper-contatori .wrapper-contatore .col-data .wrapper-info p {
    text-align: center;
  }
}

/* RIGA PORTFOLIO */
.riga-portfolio {
  padding: 5vh 8vw;
  background-color: #292C2C;
  position: relative;
}
.riga-portfolio h2 {
  font-family: "Be Vietnam Pro", sans-serif;
  font-weight: 700;
  color: #fff;
  font-size: clamp(30px, 4vw, 58px);
  line-height: 1.2;
  margin: 0;
  position: relative;
}
@media screen and (min-width: 1921px) {
  .riga-portfolio h2 {
    font-size: 4vw;
  }
}
@media screen and (min-device-width: 1921px) and (max-device-width: 2049px), screen and (min-width: 1921px) and (max-width: 2049px) {
  .riga-portfolio h2 {
    font-size: clamp(30px, 4vw, 58px);
  }
}
@media screen and (min-device-width: 1551px) and (max-device-width: 1792px), screen and (min-width: 1551px) and (max-width: 1792px) {
  .riga-portfolio h2 {
    font-size: clamp(30px, 4vw, 50px);
  }
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .riga-portfolio h2 {
    font-size: 3vw;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .riga-portfolio h2 {
    font-size: 3.5vw;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .riga-portfolio h2 {
    font-size: 4vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-portfolio h2 {
    font-size: 7vw;
  }
}
@media screen and (max-width: 480px) {
  .riga-portfolio h2 {
    font-size: 8vw;
  }
}
.riga-portfolio h2 {
  margin-bottom: 60px;
  --before-width: 0;
  --after-width: 0;
  padding-top: 30px;
}
@media screen and (max-width: 480px) {
  .riga-portfolio h2 {
    padding-top: 20px;
  }
}
.riga-portfolio h2::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: var(--before-width);
  height: 4px;
  background-color: #00D464;
}
.riga-portfolio h2::after {
  content: "";
  position: absolute;
  bottom: -30px;
  left: 0;
  width: var(--after-width);
  height: 2px;
  background-image: linear-gradient(to right, #00D464 63%, rgba(255, 255, 255, 0) 0%);
  background-position: left bottom;
  background-size: 19px 2px;
  background-repeat: repeat-x;
}
@media screen and (max-width: 480px) {
  .riga-portfolio h2::after {
    bottom: -15px;
  }
}
.riga-portfolio h2 {
  opacity: 0;
  visibility: hidden;
  color: #fff;
  max-width: 30vw;
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .riga-portfolio h2 {
    max-width: 100%;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .riga-portfolio h2 {
    max-width: 100%;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .riga-portfolio h2 {
    max-width: 100%;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-portfolio h2 {
    max-width: 100%;
  }
}
@media screen and (max-width: 480px) {
  .riga-portfolio h2 {
    max-width: 100%;
  }
}
.riga-portfolio p {
  color: #fff;
  opacity: 0;
  visibility: hidden;
}
.riga-portfolio .griglia-portfolio {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-portfolio .griglia-portfolio {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 480px) {
  .riga-portfolio .griglia-portfolio {
    grid-template-columns: repeat(1, 1fr);
  }
}
.riga-portfolio .griglia-portfolio .wrapper-progetto {
  opacity: 0;
  visibility: hidden;
  position: relative;
}
.riga-portfolio .griglia-portfolio .wrapper-progetto > a {
  display: flex;
  aspect-ratio: 1;
  position: relative;
  overflow: hidden;
}
.riga-portfolio .griglia-portfolio .wrapper-progetto > a::before {
  content: "";
  position: absolute;
  display: inline-block;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: #17352F;
  opacity: 0.2;
  z-index: 2;
  transition: opacity 0.3s ease-in-out;
  will-change: opacity;
}
.riga-portfolio .griglia-portfolio .wrapper-progetto > a:hover::before {
  opacity: 0.7;
}
.riga-portfolio .griglia-portfolio .wrapper-progetto > a:hover img {
  transform: scale(1.2);
}
.riga-portfolio .griglia-portfolio .wrapper-progetto > a img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: relative;
  z-index: 1;
  transition: transform 0.3s ease-in-out;
  will-change: transform;
}
.riga-portfolio .griglia-portfolio .wrapper-progetto > a .wrapper-titolo {
  position: absolute;
  z-index: 3;
  width: 80%;
  left: 0;
  right: 0;
  bottom: 10%;
  margin: 0 auto;
  color: #fff;
  font-size: 18px;
  line-height: 28px;
  font-weight: bold;
}
.riga-portfolio .griglia-portfolio .wrapper-progetto > a .wrapper-titolo h3 {
  --before-width: 0;
}
.riga-portfolio .griglia-portfolio .wrapper-progetto > a .wrapper-titolo h3::before {
  content: "";
  position: absolute;
  display: inline-block;
  left: 0;
  top: 0;
  width: var(--before-width);
  height: 1px;
  background-color: #00D464;
}
.riga-portfolio .griglia-portfolio .wrapper-progetto .ico-plus {
  position: absolute;
  z-index: 3;
  left: 2.5vw;
  top: 5vh;
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
}
.riga-portfolio .bottone-semplice {
  margin: 5vh auto 0 auto;
  opacity: 0;
  visibility: hidden;
  cursor: pointer;
}
@media screen and (max-width: 480px) {
  .riga-portfolio .bottone-semplice {
    text-align: center;
    padding: 15px 7px;
  }
}

@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .page-id-9 .riga-portfolio .wrapper-progetto:last-of-type {
    display: none;
  }
}

/* RIGA PARTNER */
.riga-partner {
  padding: 5vh 8vw;
  background-color: rgba(41, 44, 44, 0.05);
  overflow: hidden;
  width: 100%;
  position: relative;
}
@media screen and (max-width: 480px) {
  .riga-partner {
    background-color: #f4f4f4;
  }
}
.riga-partner h2 {
  font-family: "Be Vietnam Pro", sans-serif;
  font-weight: 700;
  color: #fff;
  font-size: clamp(30px, 4vw, 58px);
  line-height: 1.2;
  margin: 0;
  position: relative;
}
@media screen and (min-width: 1921px) {
  .riga-partner h2 {
    font-size: 4vw;
  }
}
@media screen and (min-device-width: 1921px) and (max-device-width: 2049px), screen and (min-width: 1921px) and (max-width: 2049px) {
  .riga-partner h2 {
    font-size: clamp(30px, 4vw, 58px);
  }
}
@media screen and (min-device-width: 1551px) and (max-device-width: 1792px), screen and (min-width: 1551px) and (max-width: 1792px) {
  .riga-partner h2 {
    font-size: clamp(30px, 4vw, 50px);
  }
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .riga-partner h2 {
    font-size: 3vw;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .riga-partner h2 {
    font-size: 3.5vw;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .riga-partner h2 {
    font-size: 4vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-partner h2 {
    font-size: 7vw;
  }
}
@media screen and (max-width: 480px) {
  .riga-partner h2 {
    font-size: 8vw;
  }
}
.riga-partner h2 {
  margin-bottom: 60px;
  --before-width: 0;
  --after-width: 0;
  padding-top: 30px;
}
@media screen and (max-width: 480px) {
  .riga-partner h2 {
    padding-top: 20px;
  }
}
.riga-partner h2::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: var(--before-width);
  height: 4px;
  background-color: #17352F;
}
.riga-partner h2::after {
  content: "";
  position: absolute;
  bottom: -30px;
  left: 0;
  width: var(--after-width);
  height: 2px;
  background-image: linear-gradient(to right, #17352F 63%, rgba(255, 255, 255, 0) 0%);
  background-position: left bottom;
  background-size: 19px 2px;
  background-repeat: repeat-x;
}
@media screen and (max-width: 480px) {
  .riga-partner h2::after {
    bottom: -15px;
  }
}
.riga-partner h2 {
  opacity: 0;
  visibility: hidden;
  color: #17352F;
  width: 100%;
  margin: 0 auto 10vh auto;
  font-size: clamp(30px, 10vw, 40px);
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-partner h2 {
    font-size: 7vw;
  }
}
@media screen and (max-width: 480px) {
  .riga-partner h2 {
    font-size: 8vw;
    margin: 0 auto 5vh auto;
  }
}
.riga-partner p {
  color: #17352F;
  opacity: 0;
  visibility: hidden;
}
.riga-partner .grid-partner {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 40px;
}
@media screen and (max-width: 480px) {
  .riga-partner .grid-partner {
    grid-template-columns: repeat(1, 1fr);
  }
}
.riga-partner .grid-partner .wrapper {
  opacity: 0;
  visibility: hidden;
  background-color: #f4f4f4;
}
.riga-partner .grid-partner .wrapper img {
  mix-blend-mode: multiply;
  filter: grayscale(1);
  transition: filter 0.3s ease-in-out;
  will-change: filter;
  transform: translateZ(0);
}
.riga-partner .grid-partner .wrapper img:hover {
  filter: grayscale(0);
}
.riga-partner .slick-prev:before, .riga-partner .slick-next:before {
  color: #17352F;
}
.riga-partner .slick-slide {
  margin: 0 10px;
}
.riga-partner .slick-list {
  margin: 0 -10px;
}
.riga-partner .slick-track {
  background-color: rgba(41, 44, 44, 0.05);
  background-color: #f4f4f4;
}
.riga-partner .slick-track img {
  mix-blend-mode: multiply;
  filter: grayscale(1);
  transition: filter 0.3s ease-in-out;
  will-change: filter;
  transform: translateZ(0);
}
.riga-partner .slick-track img:hover {
  filter: grayscale(0);
}
.riga-partner .marquee-partner {
  display: flex;
  align-items: center;
  width: -moz-max-content;
  width: max-content;
  animation: marquee-scroll 45s linear infinite;
  animation-play-state: paused;
  will-change: transform;
  transform: translateZ(0);
  mix-blend-mode: multiply;
  opacity: 0;
  visibility: hidden;
}
.riga-partner .marquee-partner.run {
  animation-play-state: running;
}
@media screen and (max-width: 480px) {
  .riga-partner .marquee-partner {
    animation-duration: 25s;
  }
}
.riga-partner .marquee-partner img {
  flex-shrink: 0;
  height: auto;
  max-height: 70px;
  width: auto;
  display: block;
  margin-right: 4rem;
}
@media screen and (max-width: 480px) {
  .riga-partner .marquee-partner img {
    margin-right: 2rem;
    max-height: 50px;
  }
}

@keyframes marquee-scroll {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(-50%, 0, 0);
  }
}
/* RIGA TESTO */
.riga-testo {
  position: relative;
  width: 100%;
  padding: 5vh 8vw;
  background-color: var(--bg-color);
}
.riga-testo.uneven {
  padding-left: 20vw;
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .riga-testo.uneven {
    padding-left: 8vw;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .riga-testo.uneven {
    padding-left: 8vw;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .riga-testo.uneven {
    padding-left: 8vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-testo.uneven {
    padding-left: 8vw;
  }
}
@media screen and (max-width: 480px) {
  .riga-testo.uneven {
    padding-left: 8vw;
  }
}
.riga-testo.f40 p {
  font-size: clamp(20px, 5vw, 35px);
  line-height: 1.3;
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .riga-testo.f40 p {
    font-size: 25px;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .riga-testo.f40 p {
    font-size: 25px;
  }
}
.riga-testo p {
  color: var(--text-color);
  opacity: 0;
  visibility: hidden;
}

/* RIGA ACCORDION */
.riga-accordion {
  position: relative;
  width: 100%;
  padding: 5vh 8vw;
  background-color: #17352F;
}
.riga-accordion .wrapper-accordion .titolo-accordion {
  position: relative;
  padding: 30px 0 30px 5vw;
  cursor: pointer;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-accordion .wrapper-accordion .titolo-accordion {
    padding: 30px 0 30px 12vw;
  }
}
@media screen and (max-width: 480px) {
  .riga-accordion .wrapper-accordion .titolo-accordion {
    padding: 30px 0 30px 12vw;
  }
}
.riga-accordion .wrapper-accordion .titolo-accordion::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: var(--before-width, 0);
  height: 1px;
  top: 0;
  left: 0;
  background-color: #fff;
}
.riga-accordion .wrapper-accordion .titolo-accordion:hover h3, .riga-accordion .wrapper-accordion .titolo-accordion.active h3 {
  color: #fff;
}
.riga-accordion .wrapper-accordion .titolo-accordion:hover .ico-open-close .cls-1, .riga-accordion .wrapper-accordion .titolo-accordion.active .ico-open-close .cls-1 {
  fill: #fff;
}
.riga-accordion .wrapper-accordion .titolo-accordion.active .ico-open-close {
  transform: translateY(-50%) rotate(45deg);
}
.riga-accordion .wrapper-accordion .titolo-accordion h3 {
  font-family: "Be Vietnam Pro", sans-serif;
  font-weight: 700;
  color: #fff;
  font-size: clamp(30px, 4vw, 58px);
  line-height: 1.2;
  margin: 0;
  position: relative;
}
@media screen and (min-width: 1921px) {
  .riga-accordion .wrapper-accordion .titolo-accordion h3 {
    font-size: 4vw;
  }
}
@media screen and (min-device-width: 1921px) and (max-device-width: 2049px), screen and (min-width: 1921px) and (max-width: 2049px) {
  .riga-accordion .wrapper-accordion .titolo-accordion h3 {
    font-size: clamp(30px, 4vw, 58px);
  }
}
@media screen and (min-device-width: 1551px) and (max-device-width: 1792px), screen and (min-width: 1551px) and (max-width: 1792px) {
  .riga-accordion .wrapper-accordion .titolo-accordion h3 {
    font-size: clamp(30px, 4vw, 50px);
  }
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .riga-accordion .wrapper-accordion .titolo-accordion h3 {
    font-size: 3vw;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .riga-accordion .wrapper-accordion .titolo-accordion h3 {
    font-size: 3.5vw;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .riga-accordion .wrapper-accordion .titolo-accordion h3 {
    font-size: 4vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-accordion .wrapper-accordion .titolo-accordion h3 {
    font-size: 7vw;
  }
}
@media screen and (max-width: 480px) {
  .riga-accordion .wrapper-accordion .titolo-accordion h3 {
    font-size: 8vw;
  }
}
.riga-accordion .wrapper-accordion .titolo-accordion h3 {
  color: #3B8555;
  font-weight: 700;
  transition: color 0.3s ease-in-out;
  will-change: color;
  opacity: 0;
  visibility: hidden;
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .riga-accordion .wrapper-accordion .titolo-accordion h3 {
    font-size: 3vw;
  }
}
.riga-accordion .wrapper-accordion .titolo-accordion .ico-open-close {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%) rotate(0);
  width: 30px;
  height: 30px;
  transition: transform 0.3s ease-in-out;
  will-change: transform;
  opacity: 0;
  visibility: hidden;
}
@media screen and (max-width: 480px) {
  .riga-accordion .wrapper-accordion .titolo-accordion .ico-open-close {
    width: 20px;
    height: 20px;
  }
}
.riga-accordion .wrapper-accordion .titolo-accordion .ico-open-close .cls-1 {
  transition: fill 0.3s ease-in-out;
  will-change: fill;
}
.riga-accordion .wrapper-accordion .contenuto-accordion {
  padding: 0 0 30px 5vw;
  display: none;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-accordion .wrapper-accordion .contenuto-accordion {
    padding: 0 0 12vw 0;
  }
}
@media screen and (max-width: 480px) {
  .riga-accordion .wrapper-accordion .contenuto-accordion {
    padding: 0 0 30px 0;
  }
}
.riga-accordion .wrapper-accordion .contenuto-accordion > .contenitore-flex {
  justify-content: space-between;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-accordion .wrapper-accordion .contenuto-accordion > .contenitore-flex {
    gap: 30px 0;
  }
}
@media screen and (max-width: 480px) {
  .riga-accordion .wrapper-accordion .contenuto-accordion > .contenitore-flex {
    gap: 30px 0;
  }
}
.riga-accordion .wrapper-accordion .contenuto-accordion .wrapper-testo p {
  color: #fff;
  margin: 0;
  font-size: clamp(20px, 5vw, 35px);
  line-height: 1.3;
  padding-top: 2.5vh;
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .riga-accordion .wrapper-accordion .contenuto-accordion .wrapper-testo p {
    font-size: 25px;
  }
}
@media screen and (max-width: 480px) {
  .riga-accordion .wrapper-accordion .contenuto-accordion .wrapper-testo .bottone-semplice {
    display: none;
  }
}
.riga-accordion .wrapper-accordion .contenuto-accordion .wrapper-icona .bottone-semplice {
  display: none;
}
@media screen and (max-width: 480px) {
  .riga-accordion .wrapper-accordion .contenuto-accordion .wrapper-icona .bottone-semplice {
    display: flex;
  }
}
.riga-accordion .wrapper-accordion .contenuto-accordion .wrapper-icona img {
  max-width: 40vw;
}
.riga-accordion .bottone-semplice {
  margin-top: 30px;
}

/* RIGA LISTINO */
.riga-listino {
  position: relative;
  width: 100%;
  padding: 10vh 0;
  background-color: #E8E6E7;
}
.riga-listino:has(~ .riga-listino):nth-of-type(even) .wrapper-listino, .riga-listino:nth-of-type(even):has(~ .riga-listino) .wrapper-listino {
  flex-direction: row-reverse;
}
@media screen and (max-width: 480px) {
  .riga-listino:has(~ .riga-listino):nth-of-type(even) .wrapper-listino, .riga-listino:nth-of-type(even):has(~ .riga-listino) .wrapper-listino {
    flex-direction: column;
  }
}
.riga-listino .wrapper-listino {
  align-items: center;
  flex-direction: row;
}
@media screen and (max-width: 480px) {
  .riga-listino .wrapper-listino {
    gap: 50px 0;
  }
}
.riga-listino .wrapper-listino .col-img {
  flex-basis: 50%;
  overflow: hidden;
}
@media screen and (max-width: 480px) {
  .riga-listino .wrapper-listino .col-img {
    flex-basis: 100%;
  }
}
.riga-listino .wrapper-listino .col-img img {
  max-width: 90%;
  margin: 0 auto 0 0;
  transform: translateX(-17%);
}
@media screen and (max-width: 480px) {
  .riga-listino .wrapper-listino .col-img img {
    transform: translateX(-17%);
  }
}
.riga-listino .wrapper-listino .col-testo {
  flex-basis: 50%;
  padding: 0 8vw;
}
@media screen and (max-width: 480px) {
  .riga-listino .wrapper-listino .col-testo {
    flex-basis: 100%;
  }
}
.riga-listino .wrapper-listino .col-testo h2 {
  font-family: "Be Vietnam Pro", sans-serif;
  font-weight: 700;
  color: #fff;
  font-size: clamp(30px, 4vw, 58px);
  line-height: 1.2;
  margin: 0;
  position: relative;
}
@media screen and (min-width: 1921px) {
  .riga-listino .wrapper-listino .col-testo h2 {
    font-size: 4vw;
  }
}
@media screen and (min-device-width: 1921px) and (max-device-width: 2049px), screen and (min-width: 1921px) and (max-width: 2049px) {
  .riga-listino .wrapper-listino .col-testo h2 {
    font-size: clamp(30px, 4vw, 58px);
  }
}
@media screen and (min-device-width: 1551px) and (max-device-width: 1792px), screen and (min-width: 1551px) and (max-width: 1792px) {
  .riga-listino .wrapper-listino .col-testo h2 {
    font-size: clamp(30px, 4vw, 50px);
  }
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .riga-listino .wrapper-listino .col-testo h2 {
    font-size: 3vw;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .riga-listino .wrapper-listino .col-testo h2 {
    font-size: 3.5vw;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .riga-listino .wrapper-listino .col-testo h2 {
    font-size: 4vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-listino .wrapper-listino .col-testo h2 {
    font-size: 7vw;
  }
}
@media screen and (max-width: 480px) {
  .riga-listino .wrapper-listino .col-testo h2 {
    font-size: 8vw;
  }
}
.riga-listino .wrapper-listino .col-testo h2 {
  margin-bottom: 60px;
  --before-width: 0;
  --after-width: 0;
  padding-top: 30px;
}
@media screen and (max-width: 480px) {
  .riga-listino .wrapper-listino .col-testo h2 {
    padding-top: 20px;
  }
}
.riga-listino .wrapper-listino .col-testo h2::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: var(--before-width);
  height: 4px;
  background-color: #17352F;
}
.riga-listino .wrapper-listino .col-testo h2::after {
  content: "";
  position: absolute;
  bottom: -30px;
  left: 0;
  width: var(--after-width);
  height: 2px;
  background-image: linear-gradient(to right, #17352F 63%, rgba(255, 255, 255, 0) 0%);
  background-position: left bottom;
  background-size: 19px 2px;
  background-repeat: repeat-x;
}
@media screen and (max-width: 480px) {
  .riga-listino .wrapper-listino .col-testo h2::after {
    bottom: -15px;
  }
}
.riga-listino .wrapper-listino .col-testo h2 {
  color: #3B8555;
  font-size: clamp(20px, 5vw, 35px);
  opacity: 0;
  visibility: hidden;
}
.riga-listino .wrapper-listino .col-testo p {
  opacity: 0;
  visibility: hidden;
}
.riga-listino .wrapper-listino .col-testo .bottone-semplice {
  opacity: 0;
  visibility: hidden;
}

/* RIGA LISTA DUE COLONNE */
.riga-lista-due-colonne {
  position: relative;
  width: 100%;
  padding: 5vh 8vw;
  background-color: #17352F;
}
.riga-lista-due-colonne .wrapper-content h2 {
  font-family: "Be Vietnam Pro", sans-serif;
  font-weight: 700;
  color: #fff;
  font-size: clamp(30px, 4vw, 58px);
  line-height: 1.2;
  margin: 0;
  position: relative;
}
@media screen and (min-width: 1921px) {
  .riga-lista-due-colonne .wrapper-content h2 {
    font-size: 4vw;
  }
}
@media screen and (min-device-width: 1921px) and (max-device-width: 2049px), screen and (min-width: 1921px) and (max-width: 2049px) {
  .riga-lista-due-colonne .wrapper-content h2 {
    font-size: clamp(30px, 4vw, 58px);
  }
}
@media screen and (min-device-width: 1551px) and (max-device-width: 1792px), screen and (min-width: 1551px) and (max-width: 1792px) {
  .riga-lista-due-colonne .wrapper-content h2 {
    font-size: clamp(30px, 4vw, 50px);
  }
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .riga-lista-due-colonne .wrapper-content h2 {
    font-size: 3vw;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .riga-lista-due-colonne .wrapper-content h2 {
    font-size: 3.5vw;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .riga-lista-due-colonne .wrapper-content h2 {
    font-size: 4vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-lista-due-colonne .wrapper-content h2 {
    font-size: 7vw;
  }
}
@media screen and (max-width: 480px) {
  .riga-lista-due-colonne .wrapper-content h2 {
    font-size: 8vw;
  }
}
.riga-lista-due-colonne .wrapper-content h2 {
  margin-bottom: 60px;
  --before-width: 0;
  --after-width: 0;
  padding-top: 30px;
}
@media screen and (max-width: 480px) {
  .riga-lista-due-colonne .wrapper-content h2 {
    padding-top: 20px;
  }
}
.riga-lista-due-colonne .wrapper-content h2::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: var(--before-width);
  height: 4px;
  background-color: #fff;
}
.riga-lista-due-colonne .wrapper-content h2::after {
  content: "";
  position: absolute;
  bottom: -30px;
  left: 0;
  width: var(--after-width);
  height: 2px;
  background-image: linear-gradient(to right, #fff 63%, rgba(255, 255, 255, 0) 0%);
  background-position: left bottom;
  background-size: 19px 2px;
  background-repeat: repeat-x;
}
@media screen and (max-width: 480px) {
  .riga-lista-due-colonne .wrapper-content h2::after {
    bottom: -15px;
  }
}
.riga-lista-due-colonne .wrapper-content h2 {
  font-size: 22px;
  opacity: 0;
  visibility: hidden;
  color: var(--title-color);
  width: 100%;
  margin: 0 auto 5vh auto;
  padding-top: 15px;
}
.riga-lista-due-colonne .wrapper-content h2::before {
  height: 2px;
}
.riga-lista-due-colonne .wrapper-content h2::after {
  content: none;
}
.riga-lista-due-colonne .wrapper-lista ul {
  padding: 0;
  margin: 0;
  list-style: none;
  -moz-columns: 2;
       columns: 2;
  -moz-column-gap: 50px;
       column-gap: 50px;
}
@media screen and (max-width: 480px) {
  .riga-lista-due-colonne .wrapper-lista ul {
    -moz-columns: 1;
         columns: 1;
  }
}
.riga-lista-due-colonne .wrapper-lista ul li {
  display: flex;
  flex-direction: column;
  padding: 10px 0 15px 0;
  position: relative;
  -moz-column-break-inside: avoid;
       break-inside: avoid;
  --before-width: 0;
  opacity: 0;
  visibility: hidden;
}
.riga-lista-due-colonne .wrapper-lista ul li::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: var(--before-width);
  height: 2px;
  background-image: linear-gradient(to right, #fff 63%, rgba(255, 255, 255, 0) 0%);
  background-position: left bottom;
  background-size: 19px 2px;
  background-repeat: repeat-x;
  max-width: 91%;
}
@media screen and (max-width: 480px) {
  .riga-lista-due-colonne .wrapper-lista ul li::before {
    max-width: 100%;
  }
}
.riga-lista-due-colonne .wrapper-lista ul li .titolo {
  font-weight: 500;
  color: #fff;
}
.riga-lista-due-colonne .wrapper-lista ul li .testo {
  color: #3B8555;
}

/* RIGA GALLERY */
.riga-slider-gallery {
  position: relative;
  width: 100%;
  background-color: #17352F;
}
.riga-slider-gallery.left-0 .wrapper-slider-gallery .slider-gallery .slick-track {
  left: 0;
}
.riga-slider-gallery .wrapper-slider-gallery .slider-gallery {
  opacity: 0;
  visibility: hidden;
}
.riga-slider-gallery .wrapper-slider-gallery .slider-gallery .slick-track {
  left: -13vw;
}
.riga-slider-gallery .wrapper-slider-gallery .slider-gallery a {
  display: flex;
  position: relative;
  overflow: hidden;
}
.riga-slider-gallery .wrapper-slider-gallery .slider-gallery a:hover .overlay {
  opacity: 0;
}
.riga-slider-gallery .wrapper-slider-gallery .slider-gallery a:hover img {
  transform: scale(1.2);
}
.riga-slider-gallery .wrapper-slider-gallery .slider-gallery a .overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #17352F;
  z-index: 2;
  opacity: 0.7;
  transition: opacity 0.3s ease-in-out;
  will-change: opacity;
  pointer-events: none;
}
.riga-slider-gallery .wrapper-slider-gallery .slider-gallery a img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
  aspect-ratio: 1;
  transition: transform 0.3s ease-in-out;
  will-change: transform;
}

/* CALL TO ACTION */
.call-to-action {
  position: relative;
  width: 100%;
  padding: 10vh 0;
  background-color: #00D464;
}
.call-to-action .bottone-semplice {
  width: 75%;
  margin: 0 auto;
  text-align: center;
  border-color: #fff;
  opacity: 0;
  visibility: hidden;
}
@media screen and (max-width: 480px) {
  .call-to-action .bottone-semplice {
    line-height: 1.2;
    width: 95%;
  }
}
.call-to-action .bottone-semplice:hover {
  background-color: #fff;
}

/* SINGLE PROGETTO */
.single-progetto .voce-progetti::after {
  opacity: 1 !important;
  visibility: visible !important;
}
.single-progetto .intro-con-icona {
  background-color: #292C2C;
}
.single-progetto .intro-con-icona .wrapper-content {
  justify-content: space-between;
}
.single-progetto .intro-con-icona .wrapper-content .col-testo {
  flex-basis: 50%;
  max-width: 50%;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .single-progetto .intro-con-icona .wrapper-content .col-testo {
    flex-basis: 100%;
    max-width: 100%;
  }
}
@media screen and (max-width: 480px) {
  .single-progetto .intro-con-icona .wrapper-content .col-testo {
    flex-basis: 100%;
    max-width: 100%;
  }
}
.single-progetto .intro-con-icona .wrapper-content .col-testo h1 {
  color: #00D464;
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .single-progetto .intro-con-icona .wrapper-content .col-testo h1 {
    font-size: 4vw;
  }
}
.single-progetto .intro-con-icona .wrapper-content .col-testo p {
  color: #fff;
}
.single-progetto .intro-con-icona .col-dettagli {
  flex-basis: 40%;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .single-progetto .intro-con-icona .col-dettagli {
    flex-basis: 100%;
    margin-top: 5vh;
  }
}
@media screen and (max-width: 480px) {
  .single-progetto .intro-con-icona .col-dettagli {
    flex-basis: 100%;
    margin-top: 5vh;
  }
}
.single-progetto .intro-con-icona .col-dettagli .titolo {
  font-weight: 700;
  color: #00D464;
  margin-bottom: 60px;
  --before-width: 0;
  --after-width: 0;
  padding-top: 30px;
}
@media screen and (max-width: 480px) {
  .single-progetto .intro-con-icona .col-dettagli .titolo {
    padding-top: 20px;
  }
}
.single-progetto .intro-con-icona .col-dettagli .titolo::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: var(--before-width);
  height: 4px;
  background-color: #fff;
}
.single-progetto .intro-con-icona .col-dettagli .titolo::after {
  content: "";
  position: absolute;
  bottom: -30px;
  left: 0;
  width: var(--after-width);
  height: 2px;
  background-image: linear-gradient(to right, #fff 63%, rgba(255, 255, 255, 0) 0%);
  background-position: left bottom;
  background-size: 19px 2px;
  background-repeat: repeat-x;
}
@media screen and (max-width: 480px) {
  .single-progetto .intro-con-icona .col-dettagli .titolo::after {
    bottom: -15px;
  }
}
.single-progetto .intro-con-icona .col-dettagli .titolo {
  position: relative;
  width: 100%;
  display: block;
  padding-top: 15px;
  margin-bottom: 30px;
  opacity: 0;
  visibility: hidden;
}
.single-progetto .intro-con-icona .col-dettagli .titolo::before {
  height: 2px;
}
.single-progetto .intro-con-icona .col-dettagli .titolo::after {
  height: 1px;
  bottom: -15px;
}
.single-progetto .intro-con-icona .col-dettagli .testo {
  font-weight: 500;
  color: #fff;
  margin: 0 0 50px 0;
  display: block;
  opacity: 0;
  visibility: hidden;
}
.single-progetto .outro-progetti {
  background-color: #292C2C;
  padding: 10vh 10vw;
}
.single-progetto .outro-progetti .bottone-semplice {
  margin: 0 auto;
}

/* PAGINA CONTATTI */
.riga-mappa {
  position: relative;
  width: 100%;
  height: 100dvh;
}
.riga-mappa .img-mappa {
  width: 100%;
  height: 100dvh;
  -o-object-fit: cover;
     object-fit: cover;
}
.riga-mappa .img-mappa img {
  width: 100%;
  height: 100dvh;
  -o-object-fit: cover;
     object-fit: cover;
}

.intro-contatti {
  position: relative;
  width: 100%;
  padding: 10vh 15vw;
  background-color: #3B8555;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .intro-contatti {
    padding: 10vh 8vw;
  }
}
@media screen and (max-width: 480px) {
  .intro-contatti {
    padding: 10vh 8vw;
  }
}
.intro-contatti .wrapper-testo h1 {
  font-family: "Be Vietnam Pro", sans-serif;
  font-weight: 700;
  color: #fff;
  font-size: clamp(30px, 4vw, 58px);
  line-height: 1.2;
  margin: 0;
  position: relative;
}
@media screen and (min-width: 1921px) {
  .intro-contatti .wrapper-testo h1 {
    font-size: 4vw;
  }
}
@media screen and (min-device-width: 1921px) and (max-device-width: 2049px), screen and (min-width: 1921px) and (max-width: 2049px) {
  .intro-contatti .wrapper-testo h1 {
    font-size: clamp(30px, 4vw, 58px);
  }
}
@media screen and (min-device-width: 1551px) and (max-device-width: 1792px), screen and (min-width: 1551px) and (max-width: 1792px) {
  .intro-contatti .wrapper-testo h1 {
    font-size: clamp(30px, 4vw, 50px);
  }
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .intro-contatti .wrapper-testo h1 {
    font-size: 3vw;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .intro-contatti .wrapper-testo h1 {
    font-size: 3.5vw;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .intro-contatti .wrapper-testo h1 {
    font-size: 4vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .intro-contatti .wrapper-testo h1 {
    font-size: 7vw;
  }
}
@media screen and (max-width: 480px) {
  .intro-contatti .wrapper-testo h1 {
    font-size: 8vw;
  }
}
.intro-contatti .wrapper-testo h1 {
  color: #fff;
  font-size: clamp(30px, 10vw, 40px);
  opacity: 0;
  visibility: hidden;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .intro-contatti .wrapper-testo h1 {
    font-size: 7vw;
  }
}
@media screen and (max-width: 480px) {
  .intro-contatti .wrapper-testo h1 {
    font-size: 8vw;
  }
}
.intro-contatti .wrapper-testo b {
  font-weight: 700;
}
.intro-contatti .wrapper-testo p {
  opacity: 0;
  visibility: hidden;
}
.intro-contatti .wrapper-testo .due-colonne {
  -moz-columns: 2;
       columns: 2;
  -moz-column-gap: 30px;
       column-gap: 30px;
}
@media screen and (max-width: 480px) {
  .intro-contatti .wrapper-testo .due-colonne {
    -moz-columns: 1;
         columns: 1;
  }
}
.intro-contatti .wrapper-testo .due-colonne a {
  font-weight: 700;
}
.intro-contatti .wrapper-testo .due-colonne p {
  margin: 0 0 20px 0;
  opacity: 0;
  visibility: hidden;
}
.intro-contatti .wrapper-testo .due-colonne p:last-of-type {
  margin: 0;
}

.lista-sedi .riga-sede {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  position: relative;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .lista-sedi .riga-sede {
    grid-template-columns: repeat(1, 1fr);
  }
}
@media screen and (max-width: 480px) {
  .lista-sedi .riga-sede {
    grid-template-columns: repeat(1, 1fr);
  }
}
.lista-sedi .riga-sede:nth-of-type(even) .col-testo {
  order: 2;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .lista-sedi .riga-sede:nth-of-type(even) .col-testo {
    order: 1;
  }
}
@media screen and (max-width: 480px) {
  .lista-sedi .riga-sede:nth-of-type(even) .col-testo {
    order: 1;
  }
}
.lista-sedi .riga-sede:nth-of-type(even) .col-img {
  order: 1;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .lista-sedi .riga-sede:nth-of-type(even) .col-img {
    order: 2;
  }
}
@media screen and (max-width: 480px) {
  .lista-sedi .riga-sede:nth-of-type(even) .col-img {
    order: 2;
  }
}
.lista-sedi .riga-sede.sede-principale .col-testo {
  background-color: #17352F;
}
.lista-sedi .riga-sede.sede-principale .col-testo h2 {
  margin-bottom: 60px;
  --before-width: 0;
  --after-width: 0;
  padding-top: 30px;
}
@media screen and (max-width: 480px) {
  .lista-sedi .riga-sede.sede-principale .col-testo h2 {
    padding-top: 20px;
  }
}
.lista-sedi .riga-sede.sede-principale .col-testo h2::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: var(--before-width);
  height: 4px;
  background-color: #00D464;
}
.lista-sedi .riga-sede.sede-principale .col-testo h2::after {
  content: "";
  position: absolute;
  bottom: -30px;
  left: 0;
  width: var(--after-width);
  height: 2px;
  background-image: linear-gradient(to right, #00D464 63%, rgba(255, 255, 255, 0) 0%);
  background-position: left bottom;
  background-size: 19px 2px;
  background-repeat: repeat-x;
}
@media screen and (max-width: 480px) {
  .lista-sedi .riga-sede.sede-principale .col-testo h2::after {
    bottom: -15px;
  }
}
.lista-sedi .riga-sede.sede-principale .col-testo h2 {
  color: #3B8555;
  opacity: 0;
  visibility: hidden;
}
.lista-sedi .riga-sede.sede-principale .col-testo hr {
  background-image: linear-gradient(to right, #fff 63%, rgba(255, 255, 255, 0) 0%);
}
.lista-sedi .riga-sede.sede-principale .col-testo b,
.lista-sedi .riga-sede.sede-principale .col-testo strong,
.lista-sedi .riga-sede.sede-principale .col-testo span {
  color: #3B8555;
}
.lista-sedi .riga-sede .col-testo {
  padding: 15vh 10vw;
  background-color: #3B8555;
  --before-width: 0;
}
.lista-sedi .riga-sede .col-testo h2 {
  font-family: "Be Vietnam Pro", sans-serif;
  font-weight: 700;
  color: #fff;
  font-size: clamp(30px, 4vw, 58px);
  line-height: 1.2;
  margin: 0;
  position: relative;
}
@media screen and (min-width: 1921px) {
  .lista-sedi .riga-sede .col-testo h2 {
    font-size: 4vw;
  }
}
@media screen and (min-device-width: 1921px) and (max-device-width: 2049px), screen and (min-width: 1921px) and (max-width: 2049px) {
  .lista-sedi .riga-sede .col-testo h2 {
    font-size: clamp(30px, 4vw, 58px);
  }
}
@media screen and (min-device-width: 1551px) and (max-device-width: 1792px), screen and (min-width: 1551px) and (max-width: 1792px) {
  .lista-sedi .riga-sede .col-testo h2 {
    font-size: clamp(30px, 4vw, 50px);
  }
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .lista-sedi .riga-sede .col-testo h2 {
    font-size: 3vw;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .lista-sedi .riga-sede .col-testo h2 {
    font-size: 3.5vw;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .lista-sedi .riga-sede .col-testo h2 {
    font-size: 4vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .lista-sedi .riga-sede .col-testo h2 {
    font-size: 7vw;
  }
}
@media screen and (max-width: 480px) {
  .lista-sedi .riga-sede .col-testo h2 {
    font-size: 8vw;
  }
}
.lista-sedi .riga-sede .col-testo h2 {
  margin-bottom: 60px;
  --before-width: 0;
  --after-width: 0;
  padding-top: 30px;
}
@media screen and (max-width: 480px) {
  .lista-sedi .riga-sede .col-testo h2 {
    padding-top: 20px;
  }
}
.lista-sedi .riga-sede .col-testo h2::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: var(--before-width);
  height: 4px;
  background-color: #17352F;
}
.lista-sedi .riga-sede .col-testo h2::after {
  content: "";
  position: absolute;
  bottom: -30px;
  left: 0;
  width: var(--after-width);
  height: 2px;
  background-image: linear-gradient(to right, #17352F 63%, rgba(255, 255, 255, 0) 0%);
  background-position: left bottom;
  background-size: 19px 2px;
  background-repeat: repeat-x;
}
@media screen and (max-width: 480px) {
  .lista-sedi .riga-sede .col-testo h2::after {
    bottom: -15px;
  }
}
.lista-sedi .riga-sede .col-testo h2 {
  opacity: 0;
  visibility: hidden;
  color: #fff;
  font-size: clamp(20px, 10vw, 40px);
  margin-bottom: 60px;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .lista-sedi .riga-sede .col-testo h2 {
    font-size: 7vw;
  }
}
@media screen and (max-width: 480px) {
  .lista-sedi .riga-sede .col-testo h2 {
    font-size: 8vw;
  }
}
.lista-sedi .riga-sede .col-testo a,
.lista-sedi .riga-sede .col-testo p {
  color: #fff;
}
.lista-sedi .riga-sede .col-testo p {
  opacity: 0;
  visibility: hidden;
}
.lista-sedi .riga-sede .col-testo b,
.lista-sedi .riga-sede .col-testo strong,
.lista-sedi .riga-sede .col-testo span {
  color: #17352F;
}
.lista-sedi .riga-sede .col-testo hr {
  width: var(--before-width);
  height: 2px;
  background-image: linear-gradient(to right, #17352F 63%, rgba(255, 255, 255, 0) 0%);
  background-position: left bottom;
  background-size: 19px 2px;
  background-repeat: repeat-x;
  border: 0;
  background-color: transparent;
  margin: 20px 0;
}
.lista-sedi .riga-sede .col-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.lista-sedi .riga-sede .parallax-ico {
  top: -50%;
}

/* TIMELINE */
.riga-timeline {
  padding-bottom: 10vh;
}
.riga-timeline .stage {
  position: relative;
  width: 100%;
}
.riga-timeline .stage .viewport {
  position: relative;
  overflow: hidden;
  padding: 0 clamp(20px, 5vw, 56px);
}
@media (hover: hover) and (pointer: fine) {
  .riga-timeline .stage .viewport:hover .track.run {
    animation-play-state: paused;
  }
}
.riga-timeline .stage .viewport .axis {
  position: absolute;
  inset: 50% 0 auto 0;
  height: 2px;
  background: #17352F;
  transform-origin: left center;
  z-index: 1;
}
.riga-timeline .stage .viewport .track {
  display: flex;
  position: relative;
  z-index: 2;
  will-change: transform;
  animation: marquee var(--dur, 60s) linear infinite;
  animation-play-state: paused;
}
.riga-timeline .stage .viewport .track.run {
  animation-play-state: running;
}
.riga-timeline .stage .viewport .track .item {
  position: relative;
  flex: 0 0 clamp(260px, 78vw, 400px);
  height: 420px;
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .riga-timeline .stage .viewport .track .item {
    flex: 0 0 clamp(200px, 38vw, 240px);
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .riga-timeline .stage .viewport .track .item {
    flex: 0 0 clamp(200px, 38vw, 240px);
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .riga-timeline .stage .viewport .track .item {
    flex: 0 0 clamp(200px, 38vw, 340px);
  }
}
@media screen and (max-width: 480px) {
  .riga-timeline .stage .viewport .track .item {
    flex: 0 0 clamp(200px, 38vw, 340px);
  }
}
.riga-timeline .stage .viewport .track .item:hover .dot {
  box-shadow: 0 0 0 8px rgba(86, 180, 106, 0.16);
}
.riga-timeline .stage .viewport .track .item.top .card {
  bottom: 50%;
  margin-bottom: 46px;
}
.riga-timeline .stage .viewport .track .item.bottom .card {
  top: 50%;
  margin-top: 46px;
  flex-direction: column-reverse;
}
.riga-timeline .stage .viewport .track .item .dot {
  position: absolute;
  left: 6px;
  top: 50%;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #00D464;
  transform: translate(-50%, -50%);
  box-shadow: 0 0 0 0 rgba(86, 180, 106, 0.35);
  z-index: 3;
}
.riga-timeline .stage .viewport .track .item .card {
  position: absolute;
  left: 0;
  width: calc(clamp(260px, 78vw, 400px) - 28px);
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.riga-timeline .stage .viewport .track .item .desc {
  max-width: 230px;
}
.riga-timeline .stage .viewport .track .item .desc p {
  margin: 0;
  font-weight: 600;
  font-size: 16px;
  line-height: 1.45;
  color: #292C2C;
}
.riga-timeline .stage .viewport .track .item .year {
  font-weight: 500;
  font-size: 46px;
  line-height: 1;
  letter-spacing: 0.01em;
  color: #3B8555;
}

@keyframes marquee {
  to {
    transform: translateX(calc(-1 * var(--shift, 50%)));
  }
}
@media (max-width: 560px) {
  .item {
    height: 380px;
  }
  .year {
    font-size: 40px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .track {
    animation: none;
  }
}
/* SEPARATORE IMMAGINE */
.separatore-immagine picture {
  width: 100%;
  display: flex;
}

/* FOOTER */
.site-footer {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 10vh 8vw;
  background-color: #17352F;
}
.site-footer .footer-col {
  position: relative;
}
.site-footer .footer-col h3 {
  font-family: "Be Vietnam Pro", sans-serif;
  font-weight: 700;
  color: #fff;
  font-size: clamp(30px, 4vw, 58px);
  line-height: 1.2;
  margin: 0;
  position: relative;
}
@media screen and (min-width: 1921px) {
  .site-footer .footer-col h3 {
    font-size: 4vw;
  }
}
@media screen and (min-device-width: 1921px) and (max-device-width: 2049px), screen and (min-width: 1921px) and (max-width: 2049px) {
  .site-footer .footer-col h3 {
    font-size: clamp(30px, 4vw, 58px);
  }
}
@media screen and (min-device-width: 1551px) and (max-device-width: 1792px), screen and (min-width: 1551px) and (max-width: 1792px) {
  .site-footer .footer-col h3 {
    font-size: clamp(30px, 4vw, 50px);
  }
}
@media screen and (min-device-width: 1357px) and (max-device-width: 1550px), screen and (min-width: 1357px) and (max-width: 1550px) {
  .site-footer .footer-col h3 {
    font-size: 3vw;
  }
}
@media screen and (min-device-width: 1025px) and (max-device-width: 1439px), screen and (min-width: 1025px) and (max-width: 1439px) {
  .site-footer .footer-col h3 {
    font-size: 3.5vw;
  }
}
@media screen and (min-device-width: 821px) and (max-device-width: 1180px) and (orientation: landscape), screen and (min-width: 821px) and (max-width: 1180px) and (orientation: landscape) {
  .site-footer .footer-col h3 {
    font-size: 4vw;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .site-footer .footer-col h3 {
    font-size: 7vw;
  }
}
@media screen and (max-width: 480px) {
  .site-footer .footer-col h3 {
    font-size: 8vw;
  }
}
.site-footer .footer-col h3 {
  margin-bottom: 60px;
  --before-width: 0;
  --after-width: 0;
  padding-top: 30px;
}
@media screen and (max-width: 480px) {
  .site-footer .footer-col h3 {
    padding-top: 20px;
  }
}
.site-footer .footer-col h3::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: var(--before-width);
  height: 4px;
  background-color: #00D464;
}
.site-footer .footer-col h3::after {
  content: "";
  position: absolute;
  bottom: -30px;
  left: 0;
  width: var(--after-width);
  height: 2px;
  background-image: linear-gradient(to right, #00D464 63%, rgba(255, 255, 255, 0) 0%);
  background-position: left bottom;
  background-size: 19px 2px;
  background-repeat: repeat-x;
}
@media screen and (max-width: 480px) {
  .site-footer .footer-col h3::after {
    bottom: -15px;
  }
}
.site-footer .footer-col h3 {
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  --before-width: 100%;
  --after-width: 100%;
  padding-top: 20px;
  margin: 30px 0;
}
.site-footer .footer-col h3::before {
  height: 2px;
}
.site-footer .footer-col h3::after {
  height: 1px;
  bottom: -15px;
}
.site-footer .footer-col p {
  font-size: 16px;
  line-height: 1.4;
  color: #fff;
}
.site-footer .footer-col p b {
  color: #3B8555;
  font-weight: 700;
}
.site-footer .footer-col a {
  transition: color 0.3s ease-in-out;
  will-change: color;
  font-size: 16px;
}
.site-footer .footer-col a:hover {
  color: #00D464;
}
.site-footer .footer-col ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.site-footer .footer-col ul li {
  padding: 10px 0;
  line-height: 1.2;
}
@media screen and (min-device-width: 1921px) and (max-device-width: 2049px), screen and (min-width: 1921px) and (max-width: 2049px) {
  .site-footer .footer-col ul li {
    line-height: 1;
  }
}
.site-footer .footer-col ul li a {
  color: #fff;
}
.site-footer .footer-col ul.links-privacy li {
  border-top: 2px solid #00D464;
}
.site-footer .footer-col ul.links-privacy li:last-of-type {
  border-bottom: 2px solid #00D464;
}
.site-footer .footer-col ul.links-privacy li a {
  font-weight: 700;
}
.site-footer .footer-col.col-info {
  flex-basis: 35%;
}
@media screen and (max-width: 480px) {
  .site-footer .footer-col.col-info {
    flex-basis: 100%;
  }
}
.site-footer .footer-col.col-link {
  flex-basis: 30%;
}
@media screen and (max-width: 480px) {
  .site-footer .footer-col.col-link {
    flex-basis: 100%;
    margin-top: 20px;
  }
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .site-footer .footer-col.col-link .wrapper-due-col {
    grid-template-columns: repeat(1, 1fr);
    gap: 20px;
  }
}
@media screen and (max-width: 480px) {
  .site-footer .footer-col.col-link .wrapper-due-col {
    grid-template-columns: repeat(1, 1fr);
    gap: 20px;
  }
}
.site-footer .footer-col.col-privacy {
  padding-top: 120px;
  flex-basis: 15%;
}
@media screen and (max-width: 480px) {
  .site-footer .footer-col.col-privacy {
    flex-basis: 100%;
  }
}
.site-footer .footer-col .logo-footer,
.site-footer .footer-col .ico-footer {
  max-width: 84px;
  width: 84px;
}
.site-footer .footer-col .logo-bureau {
  margin: 15vh auto 0 auto;
  max-width: 120px;
  display: block;
}
.site-footer .wrapper-due-col {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}
@media screen and (min-width: 481px) and (max-width: 820px), screen and (min-device-width: 1024px) and (max-device-height: 1366px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait), screen and (min-width: 834px) and (orientation: portrait) {
  .site-footer .wrapper-due-col {
    grid-template-columns: repeat(1, 1fr);
    gap: 0;
  }
}
@media screen and (max-width: 480px) {
  .site-footer .wrapper-due-col {
    grid-template-columns: repeat(1, 1fr);
    gap: 0;
  }
}
.site-footer .social-grid {
  display: flex;
  gap: 10px;
  padding-top: 20px;
  margin-top: 50px;
  border-top: 2px solid #00D464;
}
.site-footer .social-grid a {
  background-color: #00D464;
  border-radius: 100%;
  aspect-ratio: 1;
  max-width: 50px;
  width: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.site-footer .social-grid a img,
.site-footer .social-grid a svg {
  max-height: 20px;
}
.site-footer .social-grid a img .cls-1-linkedin,
.site-footer .social-grid a svg .cls-1-linkedin {
  fill: #17352F;
}
.site-footer .wrapper-legal {
  margin-top: 50px;
}
.site-footer .wrapper-legal p,
.site-footer .wrapper-legal a {
  margin: 0;
  color: #fff;
  font-size: 14px;
}
.site-footer .wrapper-legal a {
  transition: color 0.3s ease-in-out;
  will-change: color;
}
.site-footer .wrapper-legal a:hover {
  color: #00D464;
}
@media screen and (max-width: 480px) {
  .site-footer .wrapper-legal span:last-of-type {
    display: none;
  }
}

.fascia-grifone {
  position: relative;
  padding: 4vh 8vw;
  background-color: #3B8555;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}
.fascia-grifone p {
  font-weight: 700;
  font-size: 16px;
  margin: 0;
  color: #fff;
}
.fascia-grifone img {
  max-width: 20vw;
}

/* 404 */
.contenitore-404 {
  max-width: 60vw;
  margin: 0 auto;
  display: flex;
  text-align: center;
  padding: 150px 0;
  justify-content: center;
  flex-direction: column;
}
.contenitore-404 h1 {
  font-style: normal;
  font-size: 3vw;
  line-height: 1.2;
  color: #17352F;
}
@media screen and (max-width: 480px) {
  .contenitore-404 h1 {
    font-size: 8vw;
  }
}
.contenitore-404 a {
  font-style: normal;
  font-size: 40px;
  color: #17352F !important;
  text-decoration: underline;
}
@media screen and (max-width: 480px) {
  .contenitore-404 a {
    font-size: 20px;
  }
}