@charset "UTF-8";
/* COLOR VARIABLES
============================================= */
/* BASE */
/* GREY */
/* BLUE */
/* AZURE */
/* ORANGE */
/* YELLOW */
/* ============================================= */
/*$marginMenu: 150px;*/
/* COLORS
============================================= */
/* BG IMAGES
============================================= */
/* FLEXBOX
============================================= */
/* GRID
============================================= */
/* BOX SHADOW
============================================= */
/* OPACITY
============================================= */
/* TRANSITION
============================================= */
/* TRANSFORM
============================================= */
/* BORDER RADIUS
============================================= */
/* TEXT TRANSFORM
============================================= */
/* FONT
============================================= */
/* MANROPE
   =============================================
   font-display: optional e NON swap.

   Con "swap" il browser disegna subito col font di sistema e poi sostituisce
   Manrope quando arriva: la sostituzione e' per definizione un ricalcolo delle
   larghezze. Sul menu si vedeva come un guizzo — la riga di voci e' larga 18px
   in piu' col font vero, e avendo justify-content:center ogni voce si spostava
   di ~9px.

   Con "optional" il browser da al font ~100ms: se e' pronto lo usa da subito,
   se non lo e' tiene il fallback per QUESTA visita e non sostituisce piu'.
   In nessuno dei due casi il layout si muove.

   Perche' funziona bene qui: i woff2 sono self-hosted e pesano 14KB l'uno, e
   sono precaricati in _css.php (400, 500, 700), quindi la finestra dei 100ms
   la rispettano praticamente sempre.

   Il compromesso, da sapere: alla primissima visita con cache vuota e rete
   lenta la pagina puo' restare col font di sistema fino alla navigazione
   successiva. E' il prezzo di non avere spostamenti.
   ============================================= */
/* manrope-regular - latin */
@font-face {
  font-display: optional; /* vedi la nota sopra il primo @font-face */
  font-family: "Manrope";
  font-style: normal;
  font-weight: 400;
  src: url("/library/fonts/manrope-v20-latin-regular.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* manrope-500 - latin */
@font-face {
  font-display: optional; /* vedi la nota sopra il primo @font-face */
  font-family: "Manrope";
  font-style: normal;
  font-weight: 500;
  src: url("/library/fonts/manrope-v20-latin-500.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* manrope-600 - latin */
@font-face {
  font-display: optional; /* vedi la nota sopra il primo @font-face */
  font-family: "Manrope";
  font-style: normal;
  font-weight: 600;
  src: url("/library/fonts/manrope-v20-latin-600.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* manrope-700 - latin */
@font-face {
  font-display: optional; /* vedi la nota sopra il primo @font-face */
  font-family: "Manrope";
  font-style: normal;
  font-weight: 700;
  src: url("/library/fonts/manrope-v20-latin-700.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* manrope-800 - latin */
@font-face {
  font-display: optional; /* vedi la nota sopra il primo @font-face */
  font-family: "Manrope";
  font-style: normal;
  font-weight: 800;
  src: url("/library/fonts/manrope-v20-latin-800.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* SCROLLBAR
============================================= */
/* Barra di scroll sottile, aspetto simile a quella di macOS.
   Va dichiarata due volte: `scrollbar-width`/`scrollbar-color` e' lo standard
   (Firefox e Chromium 121+), i pseudo-elementi ::-webkit-scrollbar coprono
   Safari e i Chromium precedenti. Dove valgono entrambi vincono i pseudo.

   NON usarlo con un selettore universale: i ::-webkit-scrollbar hanno la
   precedenza su `scrollbar-width: none`, quindi farebbero ricomparire le barre
   nascoste di proposito (.filtri-shop, .menu-container, ecc.). */
.section-label {
  grid-area: label;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  flex-wrap: nowrap;
  gap: 20px;
  color: #636B73;
  margin: 0;
}
.section-label::before {
  width: 15px;
  height: 15px;
  background-color: #EA7600;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  content: "";
}

section.strip {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  flex-direction: row;
  flex-wrap: nowrap;
  gap: clamp(30px, 2.5vw, 50px);
  /*.one {
    flex: 0 0 8.3333333333333%;
  }
  .two {
    flex: 0 0 16.666666666667%;
  }
  .three {
    flex: 0 0 25%;
  }
  .four {
    flex: 0 0 33.333333333333%;
  }
  .five {
    flex: 0 0 41.666666666667%;
  }
  .six {
    flex: 0 0 50%;
  }
  .seven {
    flex: 0 0 58.333333333333%;
  }
  .eight {
    flex: 0 0 66.666666666667%;
  }
  .nine {
    flex: 0 0 75%;
  }
  .ten {
    flex: 0 0 83.333333333333%;
  }
  .eleven {
    flex: 0 0 91.666666666667%;
  }
  .twelve {
    flex: 0 0 100%;
  }*/
  /* -- CARDS -- */
  /* -- SCROLL-X CON CARDS  -- */
}
section.strip.reverse {
  flex-direction: row-reverse;
}
section.strip.justify-flex-center {
  justify-content: center;
}
section.strip.bigPadding {
  padding-top: clamp(70px, 8vw, 130px) !important;
  padding-bottom: clamp(70px, 8vw, 130px) !important;
}
section.strip.title-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-areas: "label label" "title text" "content content";
}
section.strip.title-grid h2 {
  grid-area: title;
}
section.strip.title-grid .section-label {
  grid-area: label;
}
section.strip.title-grid h3, section.strip.title-grid .intro {
  grid-area: text;
}
section.strip.title-grid h3 {
  color: #636B73;
  text-align: right;
  font-size: clamp(17px, 1.5vw, 18px);
}
section.strip.title-grid p {
  margin: 0;
}
section.strip.title-grid .title-grid-content {
  grid-area: content;
  min-width: 0;
}
section.strip.title-grid.intro-box-settori {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}
section.strip.title-grid.intro-box-settori .intro {
  align-self: center;
}
section.strip.title-grid.intro-box-settori .title-grid-content {
  display: none !important;
}
section.strip.title-grid.title-grid-products {
  padding-bottom: clamp(45px, 2.5vw, 80px);
  grid-template-areas: "label label" "title title" "content content";
}
section.strip.direction-column {
  flex-direction: column;
  gap: clamp(20px, 1.5vw, 30px);
}
section.strip.direction-column .stripe-pic {
  margin: clamp(30px, 4%, 60px) auto 0 !important;
}
section.strip.direction-column .section-label {
  width: 100%;
}
section.strip.first.margin-top-first {
  padding-top: clamp(50px, 5vw, 110px);
}
section.strip.margin-80 {
  margin-bottom: clamp(45px, 2.5vw, 80px);
}
section.strip.sicurezza .section-label {
  max-width: 960px;
  margin: 0 auto;
  width: calc(100% - 80px);
}
section.strip.sicurezza h2, section.strip.sicurezza h3 {
  margin-bottom: clamp(20px, 1.5vw, 30px);
}
section.strip.sicurezza picture {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}
section.strip.ambiente-etica .section-label {
  max-width: 960px;
  margin: 0 auto;
  width: calc(100% - 80px);
}
section.strip.ambiente-etica h2, section.strip.ambiente-etica h3 {
  margin-bottom: clamp(20px, 1.5vw, 30px);
}
section.strip.infos {
  align-items: flex-start;
  justify-content: space-between;
  gap: clamp(40px, 4vw, 64px);
}
section.strip.infos h2 {
  font-size: clamp(30px, 3vw, 48px);
  line-height: normal;
}
section.strip.infos h3 {
  font-size: clamp(17px, 1.5vw, 18px);
}
section.strip.infos #okForm {
  color: #FFFFFF;
}
section.strip.infos #okForm h2, section.strip.infos #okForm h3 {
  color: #FFFFFF;
}
section.strip.infos #okForm hr {
  background-color: #0071CE;
}
section.strip.infos address {
  padding: 20px;
}
section.strip.infos address p {
  display: inline-block;
}
section.strip.infos address p a {
  color: #EA7600;
}
section.strip.infos address span {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-start;
  gap: 16px;
}
section.strip.infos address span img {
  flex: 0 0 40px;
}
section.strip.infos .contact-us {
  background-color: #EA7600;
  -webkit-border-radius: 24px;
  -moz-border-radius: 24px;
  border-radius: 24px;
  width: 100%;
  padding: clamp(24px, 2vw, 32px);
}
section.strip.infos .contact-us h3, section.strip.infos .contact-us p {
  color: #FFFFFF;
}
section.strip.infos .contact-us .btn {
  margin-top: 20px;
}
section.strip.infos .form-container {
  padding: clamp(24px, 2vw, 32px);
  background-color: #1D428A;
  -webkit-border-radius: 24px;
  -moz-border-radius: 24px;
  border-radius: 24px;
}
section.strip.infos .form-container p, section.strip.infos .form-container .contact-form label {
  color: #FFFFFF;
}
section.strip.infos .form-container .warning {
  margin-bottom: 0;
}
section.strip.infos .form-container .mkt p a {
  color: #EA7600;
}
section.strip.infos .form-container .btn {
  background-color: #EA7600;
}
section.strip.infos .form-container .btn:hover {
  background-color: #EE9133;
}
section.strip.infos .pubdownload-list article {
  align-items: flex-start;
  justify-content: flex-start;
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 1px solid #E0E1E3;
}
section.strip.infos .pubdownload-list article a {
  width: 100%;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: space-between;
  flex-direction: row;
}
section.strip.infos .pubdownload-list article a p {
  font-size: 13px;
  color: #82898F;
}
section.strip.infos .pubdownload-list article a h3 {
  -webkit-transition: color 0.5s ease 0s;
  -moz-transition: color 0.5s ease 0s;
  -ms-transition: color 0.5s ease 0s;
  -o-transition: color 0.5s ease 0s;
  transition: color 0.5s ease 0s;
}
section.strip.infos .pubdownload-list article a img {
  max-width: 40px;
}
section.strip.infos .pubdownload-list article a:hover h3 {
  color: #EA7600;
}
section.strip picture {
  width: 100%;
  height: 100%;
  display: block;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
}
section.strip picture img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}
section.strip .sedi-hs {
  padding: clamp(25px, 5vw, 50px);
  background-color: #EA7600;
  -webkit-border-radius: 24px;
  -moz-border-radius: 24px;
  border-radius: 24px;
  height: 100%;
  color: #FFFFFF;
}
section.strip .sedi-hs h4, section.strip .sedi-hs p {
  color: #FFFFFF;
}
section.strip .sedi-hs picture {
  aspect-ratio: 7/4;
  -webkit-border-radius: 12px;
  -moz-border-radius: 12px;
  border-radius: 12px;
  margin-bottom: clamp(24px, 2vw, 32px);
}
section.strip .sedi-hs picture img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  background-position: 50% 50%;
}
section.strip .sedi-hs address {
  margin-bottom: 0;
}
section.strip .sedi-hs address span {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-start;
  gap: 16px;
  margin-bottom: calc(clamp(24px, 2vw, 32px) / 2);
}
section.strip .sedi-hs address span p a {
  color: #FFFFFF;
}
section.strip .sedi-hs address span img {
  flex: 0 0 40px;
}
section.strip ol li {
  color: #636B73;
}
section.strip ol li::marker {
  color: #EA7600;
  font-weight: 700;
  margin-right: 16px;
}
section.strip ol li:not(:last-child) {
  margin-bottom: 16px;
}
section.strip.big-ol-marker ol li::marker {
  font-size: clamp(20px, 2.2vw, 24px);
}
section.strip .stripe-txt h3::after, section.strip .stripe-txt h4::after {
  content: "";
  width: 40px;
  height: 2px;
  border-radius: 1px;
  background-color: #EA7600;
  display: block;
  margin-top: 8px;
}
section.strip .stripe-txt .text {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-direction: column;
  flex-wrap: nowrap;
  gap: clamp(20px, 1.5vw, 30px);
}
section.strip .stripe-txt.title-center {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: column;
  flex-wrap: nowrap;
  gap: clamp(20px, 1.5vw, 30px);
  align-items: center;
}
section.strip .stripe-txt.title-center .section-label {
  justify-content: center;
}
section.strip .stripe-txt.title-center h1, section.strip .stripe-txt.title-center h2, section.strip .stripe-txt.title-center h3 {
  width: 100%;
  text-align: center;
}
section.strip .stripe-txt.title-center h3::after {
  display: none;
}
section.strip .stripe-txt.title-center .text {
  width: 100%;
}
section.strip.side-side .stripe-txt {
  /*@include grid;
  grid-template-rows: auto;
  grid-template-columns: 100%;
  grid-template-areas: "label" "titolo" "pretitolo" "sottotitolo" "testo" "btn";
  column-gap: $gap30;*/
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-direction: column;
  flex-wrap: nowrap;
  gap: clamp(20px, 1.5vw, 30px);
  /* & > *:not(:last-child) {
     margin-bottom: $gap30;
   }*/
}
section.strip.side-side .stripe-txt h1, section.strip.side-side .stripe-txt h2 {
  grid-area: titolo;
}
section.strip.side-side .stripe-txt h3 {
  grid-area: sottotitolo;
}
section.strip.side-side .stripe-txt h4 {
  grid-area: pretitolo;
  margin: clamp(20px, 1.5vw, 30px) 0 15px 0;
}
section.strip.side-side .stripe-txt .action {
  grid-area: btn;
  /*height: 50px;*/
  font-size: 16px;
}
section.strip.side-side .stripe-txt.title-center h1, section.strip.side-side .stripe-txt.title-center h2 {
  text-align: center;
}
section.strip.side-side .stripe-txt .text {
  grid-area: testo;
}
section.strip.side-side.applications {
  flex-direction: row-reverse;
}
section.strip.side-side.applications:nth-of-type(even) {
  flex-direction: row;
}
section.strip.side-side.applications .btn {
  margin: 0;
}
section.strip.direction-column {
  /*.stripe-txt {
    display: block;
  }*/
}
section.strip.direction-column.txtcenter .section-label {
  justify-content: center;
}
section.strip.direction-column.txtcenter .stripe-txt .text {
  align-items: center;
}
section.strip.download-container .text {
  gap: clamp(30px, 2.5vw, 50px);
  flex-direction: row;
  align-items: flex-end;
  justify-content: space-between;
}
section.strip.download-container .text .btn {
  flex: 0 0 30%;
}
section.strip.two-boxes-container .two-boxes {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: stretch;
  justify-content: center;
  flex-direction: row;
  flex-wrap: wrap;
  gap: clamp(30px, 2.5vw, 50px);
}
section.strip.two-boxes-container .two-boxes article {
  padding: clamp(30px, 2.5vw, 50px);
  width: calc(50% - clamp(30px, 2.5vw, 50px) / 2);
  background-color: #EA7600;
  -webkit-border-radius: 20px;
  -moz-border-radius: 20px;
  border-radius: 20px;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: column;
  flex-wrap: nowrap;
  gap: clamp(30px, 2.5vw, 50px);
}
section.strip.two-boxes-container .two-boxes article img {
  -webkit-border-radius: clamp(12px, 2vw, 20px);
  -moz-border-radius: clamp(12px, 2vw, 20px);
  border-radius: clamp(12px, 2vw, 20px);
}
section.strip.two-boxes-container .two-boxes article h3, section.strip.two-boxes-container .two-boxes article p {
  color: #FFFFFF;
  margin: 0;
}
section.strip.two-boxes-container .two-boxes article h3 {
  font-size: clamp(30px, 3vw, 48px);
  line-height: normal;
}
section.strip.two-boxes-container.sedi-hs .two-boxes article {
  align-items: flex-start;
}
section.strip.two-boxes-container.sedi-hs .two-boxes article h3 {
  font-size: clamp(20px, 2.2vw, 24px);
  line-height: normal;
}
section.strip.three-boxes-container {
  padding: clamp(25px, 5vw, 50px) !important;
}
section.strip.three-boxes-container .section-label {
  width: auto;
  justify-content: center;
}
section.strip.three-boxes-container .three-boxes {
  width: 100%;
  flex: 0 0 100%;
  display: -moz-grid;
  display: -ms-grid;
  display: grid;
  grid-template-rows: auto;
  grid-template-columns: 1fr 24% 24% 24%;
  grid-template-areas: "intro primobox secondobox terzobox";
  gap: 32px;
}
section.strip.three-boxes-container .three-boxes .content {
  background: #FFFFFF;
  -webkit-border-radius: 16px;
  -moz-border-radius: 16px;
  border-radius: 16px;
  padding: 32px;
}
section.strip.three-boxes-container .three-boxes .content p {
  color: #636B73;
}
section.strip.three-boxes-container .three-boxes .content .number {
  display: block;
  /* font-family: "Manrope";
   font-style: normal;*/
  font-weight: 600;
  font-size: clamp(36px, 4vw, 64px);
  color: #262626;
  margin-bottom: clamp(45px, 2.5vw, 80px);
}
section.strip.three-boxes-container .three-boxes .content h3 {
  margin-top: 0;
  margin-bottom: 10px;
  font-size: clamp(17px, 1.5vw, 18px);
  color: #262626;
  height: 70px;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
section.strip.three-boxes-container .three-boxes .content:nth-child(1) {
  grid-area: intro;
  background: none;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  padding: 0;
  display: -moz-grid;
  display: -ms-grid;
  display: grid;
  grid-template-rows: 50% 50%;
  grid-template-columns: auto;
  grid-template-areas: "txt" "btn";
}
section.strip.three-boxes-container .three-boxes .content:nth-child(1) p {
  color: #FFFFFF;
  grid-area: txt;
  align-self: start;
  text-align: left;
}
section.strip.three-boxes-container .three-boxes .content:nth-child(1) .action {
  grid-area: btn;
  align-self: end;
  justify-self: start;
}
section.strip.three-boxes-container .three-boxes .content:nth-child(1) .action .btn {
  background-color: transparent;
  border: 1px solid #FFFFFF;
  color: #FFFFFF;
}
section.strip.three-boxes-container .three-boxes .content:nth-child(1) .action img {
  filter: brightness(0) invert(1);
}
section.strip.three-boxes-container .three-boxes .content:nth-child(2) {
  grid-area: primobox;
}
section.strip.three-boxes-container .three-boxes .content:nth-child(3) {
  grid-area: secondobox;
}
section.strip.three-boxes-container .three-boxes .content:nth-child(4) {
  grid-area: terzobox;
}
section.strip.three-boxes-container.onlybox .three-boxes .content .number {
  margin-bottom: 0;
}
section.strip.three-boxes-container.onlybox .three-boxes .content img {
  max-width: 65px;
  margin-bottom: 10px;
}
section.strip.three-boxes-container.onlybox .three-boxes .content h3 {
  height: 35px;
  -webkit-line-clamp: 1;
}
section.strip .numeri {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  flex-wrap: nowrap;
  gap: clamp(45px, 4vw, 80px);
}
section.strip .numeri .content .number {
  font-size: clamp(30px, 3vw, 48px);
}
section.strip .numeri .content .number .unit {
  color: #EA7600;
}
section.strip.big-font .text p:not(.small) {
  font-size: clamp(20px, 2vw, 36px);
  line-height: calc(clamp(20px, 2vw, 36px) * 1.5);
}
section.strip.big-font strong, section.strip.big-font b {
  font-weight: 400;
  color: #EA7600;
}
section.strip.big-font .avatar {
  margin-top: clamp(20px, 1.5vw, 40px);
}
section.strip.big-font .avatar strong {
  color: #262626;
  font-weight: 700;
}
section.strip.grey-h3 h3 {
  color: #636B73;
}
section.strip.grey-h3 h3::after {
  content: unset;
}
section.strip.bg-orange, section.strip.bg-blue {
  padding: clamp(40px, 6vw, 80px);
  -webkit-border-radius: 24px;
  -moz-border-radius: 24px;
  border-radius: 24px;
  color: #FFFFFF;
}
section.strip.bg-orange.main-section, section.strip.bg-blue.main-section {
  padding: clamp(40px, 6vw, 80px);
  margin-bottom: clamp(70px, 8vw, 130px);
}
section.strip.bg-orange h2, section.strip.bg-orange h3, section.strip.bg-orange h4, section.strip.bg-orange h5, section.strip.bg-orange p, section.strip.bg-orange .contact-form label, section.strip.bg-blue h2, section.strip.bg-blue h3, section.strip.bg-blue h4, section.strip.bg-blue h5, section.strip.bg-blue p, section.strip.bg-blue .contact-form label {
  color: #FFFFFF;
}
section.strip.bg-orange .contact-form .input-block, section.strip.bg-orange .contact-form .checkmark, section.strip.bg-blue .contact-form .input-block, section.strip.bg-blue .contact-form .checkmark {
  border: none;
}
section.strip.bg-orange {
  background-color: #EA7600;
}
section.strip.bg-blue {
  background-color: #1D428A;
}
section.strip.bg-lightgrey {
  color: #262626;
  background-color: #F7F7F7;
}
section.strip.bg-lightgrey h1, section.strip.bg-lightgrey h2, section.strip.bg-lightgrey h3, section.strip.bg-lightgrey h4, section.strip.bg-lightgrey h5, section.strip.bg-lightgrey p {
  color: #262626;
}
section.strip.foto-sfondo.bg-dark-image .stripe-txt {
  flex-direction: row;
  align-items: center;
  gap: clamp(30px, 2.5vw, 50px);
}
section.strip.bg-dark-image {
  padding: clamp(40px, 6vw, 80px);
  -webkit-border-radius: 24px;
  -moz-border-radius: 24px;
  border-radius: 24px;
  color: #FFFFFF;
  width: calc(100% - clamp(40px, 6vw, 80px) * 2);
  position: relative;
  margin-bottom: clamp(70px, 8vw, 130px);
}
section.strip.bg-dark-image::after {
  border-radius: 24px;
}
section.strip.bg-dark-image .stripe-txt {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-direction: column;
  flex-wrap: nowrap;
  gap: clamp(20px, 1.5vw, 30px);
}
section.strip.bg-dark-image h2 {
  font-size: clamp(36px, 4vw, 64px);
  font-weight: 700;
}
section.strip.bg-dark-image .action {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-direction: row;
  flex-wrap: nowrap;
  width: 100%;
}
section.strip.bg-dark-image .btn {
  background-color: #EA7600;
  position: relative;
  z-index: 2;
  margin: clamp(20px, 1.5vw, 40px) 0 0 0;
}
section.strip.bg-dark-image .btn:hover {
  background-color: #EE9133;
}
section.strip.bg-dark-image .btn img {
  filter: brightness(0) invert(1);
}
section.strip.bg-image-data {
  gap: 0;
  padding: clamp(40px, 6vw, 80px);
  -webkit-border-radius: 24px;
  -moz-border-radius: 24px;
  border-radius: 24px;
  color: #FFFFFF;
  width: calc(100% - clamp(40px, 6vw, 80px) * 2);
  position: relative;
  margin-bottom: clamp(70px, 8vw, 130px);
  display: -moz-grid;
  display: -ms-grid;
  display: grid;
  grid-template-columns: 50% 25% 25%;
  grid-template-rows: auto;
  grid-template-areas: "header header btn" "desc desc desc" "numeri . .";
}
section.strip.bg-image-data::after {
  border-radius: 24px;
  background-color: rgba(0, 0, 0, 0.65);
}
section.strip.bg-image-data .stripe-txt {
  grid-area: header;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-direction: column;
  flex-wrap: nowrap;
}
section.strip.bg-image-data .stripe-txt h2 {
  font-size: clamp(36px, 4vw, 64px);
  /* font-family: "Manrope";
   font-style: normal;*/
  font-weight: 700;
}
section.strip.bg-image-data .text {
  grid-area: desc;
  margin-top: 20px;
}
section.strip.bg-image-data .action {
  grid-area: btn;
  align-self: start;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-direction: row;
  flex-wrap: nowrap;
  width: 100%;
}
section.strip.bg-image-data .action .btn {
  background-color: #EA7600;
  position: relative;
  z-index: 2;
  margin: clamp(20px, 1.5vw, 40px) 0 0 0;
}
section.strip.bg-image-data .action .btn:hover {
  background-color: #EE9133;
}
section.strip.bg-image-data .action .btn img {
  filter: brightness(0) invert(1);
}
section.strip.bg-image-data .numbers {
  margin-top: clamp(45px, 2.5vw, 80px);
  padding: clamp(20px, 1.5vw, 40px);
  -webkit-border-radius: 24px;
  -moz-border-radius: 24px;
  border-radius: 24px;
  background-color: #EA7600;
  grid-area: numeri;
  z-index: 9;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  /*justify-content: center;*/
  justify-content: flex-start;
  flex-flow: wrap;
  gap: 16px;
}
section.strip.bg-image-data .numbers span {
  flex: 0 0 calc(50% - 8px);
}
section.strip.info-pages {
  margin-bottom: clamp(70px, 8vw, 130px);
  gap: 10px;
}
section.strip.info-pages h1 {
  font-size: clamp(30px, 3vw, 48px);
  line-height: normal;
  margin-bottom: clamp(20px, 1.5vw, 30px);
}
section.strip.info-pages h2 {
  font-size: clamp(28px, 3vw, 40px);
}
section.strip.info-pages h3 {
  margin-top: clamp(24px, 2vw, 32px);
}
section.strip.info-pages h4 {
  color: #0071CE;
}
section.strip.info-pages a {
  /* font-family: "Manrope";
   font-style: normal;*/
  font-weight: 500;
  color: #EA7600;
}
section.strip.info-pages a.btn {
  color: #FFFFFF;
}
section.strip.info-pages.governance {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  flex-wrap: nowrap;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
}
section.strip.info-pages.governance h1 {
  width: 100%;
}
section.strip.info-pages.governance p {
  margin-bottom: clamp(20px, 1.5vw, 30px);
}
section.strip.info-pages.governance div {
  -webkit-border-radius: 24px;
  -moz-border-radius: 24px;
  border-radius: 24px;
  gap: 30px;
  width: calc(33.333% - 15px);
  padding: 30px;
  border: 1px solid #E0E1E3;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  flex-wrap: nowrap;
  position: relative;
  padding-bottom: 100px;
  gap: 0;
}
section.strip.info-pages.governance div h2 {
  font-size: clamp(20px, 2.2vw, 24px);
  line-height: calc(clamp(20px, 2.2vw, 24px) * 1.4);
  /* font-family: "Manrope";
   font-style: normal;*/
  font-weight: 600;
  margin-bottom: 10px;
}
section.strip.info-pages.governance div p {
  margin: 5px 0;
}
section.strip.info-pages.governance div a {
  /* font-family: "Manrope";
   font-style: normal;*/
  font-weight: 500;
  position: absolute;
  bottom: 30px;
}
section.strip.info-pages.governance div a.btn img {
  filter: brightness(0) invert(1);
}
section.strip.strip-video .stripe-pic {
  aspect-ratio: 960/640;
  overflow: hidden;
  -webkit-border-radius: 20px;
  -moz-border-radius: 20px;
  border-radius: 20px;
}
section.strip.strip-video .stripe-pic video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
section.strip.news-home {
  position: relative;
}
section.strip.news-home .overflow-x {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}
section.strip.news-home .txt {
  flex: 8 1 0;
  min-width: 0;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-direction: column;
  flex-wrap: nowrap;
  gap: clamp(20px, 1.5vw, 30px);
}
section.strip.news-home .pic-container {
  flex: 4 1 0;
  min-width: 0;
}
section.strip.news-home ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
section.strip.news-home ul li {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: flex-start;
  column-gap: clamp(30px, 2.5vw, 50px);
  width: 100%;
}
section.strip.news-home ul li .pic-container picture {
  aspect-ratio: 1/1;
  position: relative;
}
section.strip.news-home ul li .pic-container picture img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
section.strip.news-home ul li .pic-container picture span {
  background-color: #FFFFFF;
  position: absolute;
  left: 20px;
  bottom: 20px;
  z-index: 2;
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px;
  padding: 12px 16px;
  font-size: 14px;
  color: #636B73;
  line-height: 150%;
}
section.strip.news-home ul li .pic-container picture span p {
  font-size: 14px;
  color: #636B73;
  line-height: 150%;
}
section.strip.news-home ul li .pic-container picture span p strong {
  font-size: 18px;
  color: #262626;
}
section.strip.news-home ul li article {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-direction: row;
  flex-wrap: nowrap;
  gap: clamp(30px, 2.5vw, 50px);
  width: 100%;
}
section.strip.news-home ul li article h3 {
  /* font-family: "Manrope";
   font-style: normal;*/
  font-weight: 600;
  font-size: 24px;
  color: #262626;
}
section.strip.news-home ul li article h4 {
  /* font-family: "Manrope";
   font-style: normal;*/
  font-weight: 600;
  font-size: 16px;
  color: #636B73;
}
section.strip.news-home ul li article p {
  font-size: 14px;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
}
section.strip.news-home .slide-x-nav {
  position: absolute;
  bottom: calc(clamp(45px, 2.5vw, 80px) - 20px);
  left: 0;
  right: 0;
  z-index: 5;
  width: auto;
}
section.strip.news-home .counter {
  width: 50%;
  position: absolute;
  bottom: calc(clamp(45px, 2.5vw, 80px) - 20px);
  left: 0;
}
section.strip.news-home.li-reverse ul li article {
  flex-direction: row-reverse;
}
section.strip.news-home.li-reverse .slide-x-nav {
  right: 0;
  left: calc(33.3333333333% + 50px);
}
section.strip.news-home.li-reverse .counter {
  left: 0;
}
section.strip.testo-schema-cta .pic-container {
  padding: clamp(20px, 1.5vw, 40px);
  display: grid;
  grid-template-rows: 50% 50%;
  grid-template-columns: auto;
  grid-template-areas: "title" "txt";
}
section.strip.testo-schema-cta .pic-container h2 {
  grid-area: title;
  align-self: start;
}
section.strip.testo-schema-cta .pic-container .bottom-text {
  grid-area: txt;
  align-self: end;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  flex-wrap: nowrap;
  flex-wrap: wrap;
  gap: 16px;
}
section.strip.testo-schema-cta .pic-container .bottom-text span {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: column;
  flex-wrap: nowrap;
  width: calc(50% - 8px);
}
section.strip.testo-schema-cta .bg-dark-image::after {
  background-color: rgba(0, 0, 0, 0.5);
}
section.strip.testo-schema-cta .text {
  margin-bottom: 0 !important;
}
section.strip .cards {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  flex-direction: row;
  flex-wrap: wrap;
  gap: clamp(30px, 2vw, 40px);
  color: #FFFFFF;
}
section.strip .cards article {
  background-color: #EA7600;
  -webkit-border-radius: 16px;
  -moz-border-radius: 16px;
  border-radius: 16px;
  padding: clamp(24px, 2vw, 32px);
  width: calc(33.3333% - 2 * clamp(30px, 2vw, 40px) / 3);
  overflow: hidden;
  position: relative;
  justify-content: flex-start;
  text-align: left;
}
section.strip .cards article .btn {
  background-color: #FFFFFF;
  color: #262626;
}
section.strip .cards article .btn:hover {
  background-color: #F7C899;
}
section.strip .cards article.outline {
  background-color: transparent;
  border: 1px solid #EA7600;
}
section.strip .cards article.outline1 {
  align-items: flex-start;
}
section.strip .cards article.help {
  background-color: #1D428A;
}
section.strip .cards article.help .btn {
  background-color: #EA7600;
  color: #FFFFFF;
}
section.strip .cards article.help .btn:hover {
  background-color: #EE9133;
}
section.strip .cards article .actions {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  flex-wrap: nowrap;
  margin-top: 16px;
  gap: 10px;
  width: 100%;
}
section.strip .cards article .actions .btn {
  margin: 0;
}
section.strip .cards article .action {
  position: relative;
  z-index: 2;
}
section.strip .cards article img {
  height: 50px;
  width: auto;
}
section.strip .cards article h3, section.strip .cards article h4, section.strip .cards article h5, section.strip .cards article p {
  color: #FFFFFF;
}
section.strip .cards article h3 {
  margin: 20px 0;
  width: 100%;
  font-size: clamp(18px, 1.5vw, 20px);
}
section.strip .cards article h4 {
  margin: 40px 0 20px 0;
}
section.strip .cards article a:not(.btn) {
  display: block;
  width: 100%;
  height: 100%;
}
section.strip .cards article a:not(.btn) h4, section.strip .cards article a:not(.btn) h3 {
  color: #FFFFFF;
}
section.strip .cards article a:not(.btn) p {
  color: #FFFFFF;
}
section.strip .cards article .hover {
  overflow: hidden;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
  background-color: #0071CE;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  flex-wrap: nowrap;
  color: #FFFFFF;
  font-size: clamp(18px, 1.5vw, 20px);
  font-weight: 700;
  gap: 12px;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: 0;
  -webkit-transition: opacity 0.5s ease 0s;
  -moz-transition: opacity 0.5s ease 0s;
  -ms-transition: opacity 0.5s ease 0s;
  -o-transition: opacity 0.5s ease 0s;
  transition: opacity 0.5s ease 0s;
  z-index: 1;
  -webkit-border-radius: 16px;
  -moz-border-radius: 16px;
  border-radius: 16px;
}
section.strip .cards article .hover::after {
  overflow: hidden;
  content: "";
  background-color: rgba(0, 0, 0, 0.75);
  position: absolute;
  inset: 0;
}
section.strip .cards article:hover .hover {
  opacity: 1;
}
section.strip .cards.cards-single-products .other {
  width: calc(33.3333% - 2 * clamp(30px, 2vw, 40px) / 3);
  height: 100%;
}
section.strip .cards.cards-single-products .other h2 {
  margin-bottom: clamp(30px, 2.5vw, 50px);
}
section.strip .cards.cards-single-products .other article {
  width: 100%;
  min-height: 330px;
  /* height: 100%;*/
}
section.strip .cards.cards-single-products .other article.categorie-support {
  background-color: #1D428A;
}
section.strip .cards.cards-single-products .other article.categorie-support .btn {
  background-color: #EA7600;
  color: #FFFFFF;
  margin-top: 20px;
}
section.strip .cards.cards-single-products .other article.categorie-support h4 {
  display: inline-block;
  padding: 8px 15px;
  background-color: #FFFFFF;
  color: #262626;
  font-size: 14px;
  -webkit-border-radius: 24px;
  -moz-border-radius: 24px;
  border-radius: 24px;
  /* font-family: "Manrope";
   font-style: normal;*/
  font-weight: 300;
  margin-top: 0;
}
section.strip .cards.overflow-x {
  flex-wrap: nowrap;
}
section.strip.institutional-tag .cards article {
  background-color: #1D428A;
}
section.strip.institutional-tag .cards article a {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: column;
  flex-wrap: nowrap;
  gap: clamp(20px, 1.5vw, 30px);
}
section.strip.institutional-tag .cards article a .btn {
  margin: 0;
  background-color: #EA7600;
  color: #FFFFFF;
}
section.strip.institutional-tag .cards article a .btn:hover {
  color: #FFFFFF;
}
section.strip.institutional-tag .cards article a h4 {
  margin: 0;
}
section.strip.scroll-cards ul {
  align-items: stretch;
  counter-reset: lista;
  gap: clamp(30px, 2vw, 40px);
}
section.strip.scroll-cards ul li {
  background-color: #EA7600;
  -webkit-border-radius: 16px;
  -moz-border-radius: 16px;
  border-radius: 16px;
  padding: clamp(24px, 2vw, 32px);
  flex: 0 0 calc(25% - 3 * clamp(30px, 2vw, 40px) / 4);
  overflow: hidden;
  position: relative;
  justify-content: flex-start;
  text-align: left;
  min-height: 270px;
  counter-increment: lista;
  position: relative;
}
section.strip.scroll-cards ul li::before {
  content: counter(lista, decimal-leading-zero);
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  flex-wrap: nowrap;
  width: 54px;
  height: 54px;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  background-color: #FFFFFF;
  color: #262626;
  font-weight: 700;
  /*margin-bottom: $gap50;*/
  font-size: 24px;
  position: absolute;
  top: clamp(20px, 1.5vw, 40px);
}
section.strip.scroll-cards ul li img {
  height: 50px;
  width: auto;
}
section.strip.scroll-cards ul li h4 {
  color: #FFFFFF;
  /*margin: 40px 0 20px 0;*/
  padding-top: 72px;
  margin-bottom: 20px;
}
section.strip.scroll-cards ul li p {
  color: #FFFFFF;
}
section.strip.scroll-cards ul li a {
  display: block;
  height: 100%;
  color: #FFFFFF;
  padding-bottom: 50px;
}
section.strip.scroll-cards ul li a::after {
  content: url(/library/pagination/ui/Arrow-Right-Small-White.svg);
  position: absolute;
  right: 22px;
  bottom: 22px;
  border: 1px solid #FFFFFF;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  width: 50px;
  height: 50px;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  flex-wrap: nowrap;
  -webkit-transition: opacity 0.5s ease 0s;
  -moz-transition: opacity 0.5s ease 0s;
  -ms-transition: opacity 0.5s ease 0s;
  -o-transition: opacity 0.5s ease 0s;
  transition: opacity 0.5s ease 0s;
}
section.strip.scroll-cards ul li a:hover::after {
  opacity: 0.6;
}
section.strip.scroll-cards ul li .hover {
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: 0;
  -webkit-transition: opacity 0.5s ease 0s;
  -moz-transition: opacity 0.5s ease 0s;
  -ms-transition: opacity 0.5s ease 0s;
  -o-transition: opacity 0.5s ease 0s;
  transition: opacity 0.5s ease 0s;
  z-index: 1;
}
section.strip.scroll-cards ul li:hover .hover {
  opacity: 1;
}
section.strip.bg-orange .section-label::before {
  background-color: #1D428A;
}
section.strip.bg-orange .cards {
  color: #262626;
}
section.strip.bg-orange .cards article {
  background-color: #FFFFFF;
}
section.strip.bg-orange .cards p, section.strip.bg-orange .cards h3 {
  color: #262626;
  width: 100%;
  margin: 0;
}
section.strip.bg-orange .btn {
  background-color: #FFFFFF;
  color: #262626;
}
section.strip.bg-orange .btn:hover {
  background-color: #E0E1E3;
}
section.strip.bg-orange .btn img {
  filter: none;
}
section.strip.five-boxes-container {
  padding: clamp(20px, 1.5vw, 30px) !important;
}
section.strip.five-boxes-container .section-label {
  justify-content: center;
}
section.strip .five-boxes {
  width: 100%;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  grid-template-areas: "card1 pic card2" "card3 pic card4";
  gap: clamp(20px, 1.5vw, 30px);
}
section.strip .five-boxes .pic-container {
  grid-area: pic;
}
section.strip .five-boxes .pic-container picture {
  display: block;
  width: 100%;
  height: 100%;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  -webkit-border-radius: 20px;
  -moz-border-radius: 20px;
  border-radius: 20px;
}
section.strip .five-boxes .pic-container picture img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
section.strip .five-boxes:has(article:nth-child(6)) {
  grid-template-rows: auto auto;
  grid-template-areas: "card1 pic card2" "card3 card4 card5";
}
section.strip .five-boxes:has(article:nth-child(6)) picture {
  aspect-ratio: 1/1.1;
}
section.strip .five-boxes:has(article:nth-child(6)) p {
  margin-bottom: 20px;
  height: 140px;
}
section.strip .five-boxes:has(article:nth-child(6)) h3 {
  height: 70px;
}
section.strip .five-boxes article {
  width: 100%;
  align-items: flex-start;
  gap: 20px;
}
section.strip .five-boxes article:nth-child(2) {
  grid-area: card1;
}
section.strip .five-boxes article:nth-child(3) {
  grid-area: card3;
}
section.strip .five-boxes article:nth-child(4) {
  grid-area: card2;
}
section.strip .five-boxes article:nth-child(5) {
  grid-area: card4;
}
section.strip .five-boxes article:nth-child(6) {
  grid-area: card5;
}
section.strip.valori-hp {
  position: relative;
}
section.strip.valori-hp .section-label {
  position: absolute;
  top: 0;
  left: 0;
}
section.strip.valori-hp .btn img {
  filter: brightness(0) invert(1);
}
section.strip.cards-container {
  flex-wrap: wrap;
}
section.strip.cards-container h2 {
  color: #262626;
}
section.strip.cards-container .section-label {
  width: 100%;
}
section.strip.box-scroll-x {
  flex-wrap: wrap;
}
section.strip.box-scroll-x h2 {
  color: #262626;
}
section.strip.box-scroll-x p.intro {
  color: #636B73;
  /*text-align: right;*/
  margin-left: 35%;
  align-self: center;
  text-align: left;
}
section.strip.box-scroll-x .section-label {
  width: 100%;
}
section.strip.shoplogin .box-login {
  -webkit-border-radius: 24px;
  -moz-border-radius: 24px;
  border-radius: 24px;
  padding: clamp(24px, 2vw, 32px);
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  flex-wrap: nowrap;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
}
section.strip.shoplogin .box-login h1 {
  font-size: clamp(30px, 3vw, 48px);
  line-height: normal;
  margin-bottom: 10px;
}
section.strip.shoplogin .box-login h2 {
  font-size: clamp(20px, 2.2vw, 24px);
  margin-bottom: 20px;
}
section.strip.shoplogin .box-login hr {
  width: 100%;
  margin: 25px 0 10px 0;
}
section.strip.shoplogin .box-login.bg-lightgrey {
  width: 55%;
  background-color: #F7F7F7;
}
section.strip.shoplogin .box-login.bg-lightgrey #login_form, section.strip.shoplogin .box-login.bg-lightgrey #login_recover {
  width: 100%;
}
section.strip.shoplogin .box-login.bg-orange {
  flex-direction: row;
  width: 45%;
  background-color: #EA7600;
  color: #FFFFFF;
}
section.strip.shoplogin .box-login.bg-orange div {
  margin-right: clamp(20px, 1.5vw, 30px);
}
section.strip.shoplogin .box-login.bg-orange h2, section.strip.shoplogin .box-login.bg-orange h3, section.strip.shoplogin .box-login.bg-orange p {
  color: #FFFFFF;
}
section.strip.shoplogin .box-login.bg-orange h2 {
  font-size: clamp(30px, 3vw, 48px);
  /* font-family: "Manrope";
   font-style: normal;*/
  font-weight: 600;
  line-height: 110%;
}
section.strip.shoplogin .box-login.bg-orange picture {
  aspect-ratio: 1/2;
}
section.strip.shoplogin .box-login.bg-orange hr {
  background-color: #FFFFFF;
}
section.strip.shoplogin .box-login.bg-orange .btn {
  margin: 15px 0 0 0;
}
section.strip.shoplogin .box-login.bg-orange .btn img {
  filter: brightness(0) invert(1);
}
section.strip.shoplogin .seven {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: row;
  flex-wrap: nowrap;
  flex-direction: column;
  gap: 25px;
}
section.strip.shoplogin h2 {
  font-size: clamp(28px, 3vw, 38px);
}
section.strip.search-realizations {
  flex-direction: column;
  gap: clamp(20px, 1.5vw, 30px);
}
section.strip.search-realizations .browser {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-direction: row;
  flex-wrap: nowrap;
}
section.strip.search-realizations .browser div {
  position: relative;
  flex-grow: 1;
}
section.strip.search-realizations .browser div .delete-selection {
  position: absolute;
  bottom: 25px;
  right: 20px;
  width: 30px;
  cursor: pointer;
  line-height: 0;
}
section.strip.search-realizations .browser div .delete-selection.inactive {
  display: none;
  opacity: 0;
  cursor: none;
}
section.strip.search-realizations .browser div:first-child {
  padding-right: 10px;
}
section.strip.search-realizations .browser div:last-child {
  padding-left: 10px;
}
section.strip.search-realizations .browser div:last-child .delete-selection {
  right: 10px;
}
section.strip.search-realizations .browser label {
  margin-bottom: 12px;
  display: block;
}
section.strip.search-realizations .browser select {
  width: calc(100% - 2px);
  background-image: url(/library/pagination/ui/Arrow-Right-Small-Orange.svg);
  background-repeat: no-repeat;
  background-position: 15px 50%;
  padding-left: 45px;
}
section.strip.search-realizations .browser .btn {
  margin: 0;
}
section.strip.img-cover .stripe-txt {
  padding-top: 10%;
  padding-bottom: 10%;
}
section.strip.img-cover picture {
  background-size: contain;
}

#map-canvas {
  -webkit-border-radius: 24px;
  -moz-border-radius: 24px;
  border-radius: 24px;
  width: 100%;
  height: clamp(330px, 30vw, 520px);
}

/*.job-offer, section.strip.infos .job-offer {
  width: calc(100% - 48px);
  background: $blue-500;
  @include borderRadius(24px);
  padding: clamp(15px, 3vw, 24px);
  @include flex();
  flex-direction: column;
  margin-top: $gap30;
  gap: $gap30;

  h2 {
    color: $bianco;
    text-align: center;
    font-size: 20px;
    line-height: normal;
  }
}*/
.cta {
  background-color: #EA7600;
  padding: clamp(20px, 1.5vw, 30px);
  -webkit-border-radius: 16px;
  -moz-border-radius: 16px;
  border-radius: 16px;
  gap: clamp(30px, 2.5vw, 50px);
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  flex-wrap: nowrap;
}
.cta h2, .cta h3, .cta h4, .cta h5, .cta p {
  color: #FFFFFF;
  margin: 10px 0;
}
.cta .btn {
  white-space: nowrap;
  flex-wrap: nowrap;
  flex-shrink: 0;
}

/* ---------------------------------------------------------------------------------------------------- */
/* LOADER --------------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------- */
#loader {
  width: 100%;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  text-align: center;
  z-index: 20;
  background-color: rgba(255, 255, 255, 0.85);
  color: #262626;
  font-size: 16px;
  font-weight: 400;
}
#loader img {
  margin-top: 150px;
}
#loader img.loading-products {
  margin-top: calc(50vh - 203px);
}

#login_failed, #ok_recover, #nok_recover, #okForm {
  margin-top: 15px;
}

/* ---------------------------------------------------------------------------------------------------- */
/* FORM ----------------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------- */
input {
  /* font-family: "Manrope";
   font-style: normal;*/
  font-weight: 400;
  font-size: 16px;
}

.contact-form .view-pwd {
  cursor: pointer;
}
.contact-form section {
  width: 100%;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-direction: column;
  flex-wrap: nowrap;
  gap: clamp(24px, 2vw, 32px);
}
.contact-form section.flex-direction-row {
  flex-direction: row;
}
.contact-form p.warning {
  margin-bottom: 25px;
  font-size: 14px;
}
.contact-form .input-block {
  background: #FFFFFF;
  border: solid 1px #262626;
  width: 100%;
  height: 60px;
  padding: 15px 25px;
  position: relative;
  -webkit-transition: all 0.5s ease 0s;
  -moz-transition: all 0.5s ease 0s;
  -ms-transition: all 0.5s ease 0s;
  -o-transition: all 0.5s ease 0s;
  transition: all 0.5s ease 0s;
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px;
  margin-top: 35px;
}
.contact-form .input-block.no-border {
  border: 0;
  padding: 15px 0;
}
.contact-form .input-block.nomarginbottom {
  margin-bottom: 0;
}
.contact-form .input-block.no-padding {
  padding: 0;
}
.contact-form .input-block.readonly {
  border-color: #E0E1E3;
}
.contact-form .input-block.error {
  border: 1px solid #EA7600;
  background-color: #f4d9bd;
}
.contact-form .input-block img {
  max-width: 40px;
  position: absolute;
  top: calc(50% - 20px);
  right: 25px;
  z-index: 3;
}
.contact-form .input-block.text-area {
  height: auto;
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px;
}
.contact-form .input-block input {
  margin-top: 3px;
  text-indent: 0;
  outline: none;
  -webkit-appearance: none !important;
  /* font-family: "Manrope";
   font-style: normal;*/
  font-weight: 400;
  width: 100%;
}
.contact-form .input-block textarea {
  /* font-family: "Manrope";
   font-style: normal;*/
  font-weight: 400;
  font-size: 16px;
  text-indent: 0;
  width: 100%;
  -webkit-appearance: none !important;
  outline: none;
}
.contact-form .input-block.focus {
  background-color: #FFFFFF;
  border: solid 1px;
}
.contact-form .info-login, .contact-form .twoinput, .contact-form .threeinput {
  width: 100%;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  flex-wrap: nowrap;
  gap: 20px;
}
.contact-form .info-login.sleeves-conf, .contact-form .twoinput.sleeves-conf, .contact-form .threeinput.sleeves-conf {
  align-items: flex-start;
  justify-content: flex-start;
}
.contact-form .info-login .input-block, .contact-form .twoinput .input-block, .contact-form .threeinput .input-block {
  width: calc(50% - 10px);
  flex: 0 0 calc(50% - 10px);
}
.contact-form .info-login p:empty, .contact-form .twoinput p:empty, .contact-form .threeinput p:empty {
  display: none;
}
.contact-form .info-login .img-bussola, .contact-form .twoinput .img-bussola, .contact-form .threeinput .img-bussola {
  width: 40%;
  flex: 0 0 40%;
}
.contact-form .info-login .input-block {
  /* margin-bottom: 0;*/
}
.contact-form .actions {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  flex-wrap: nowrap;
  gap: 15px;
}
.contact-form .conf-step-2, .contact-form .conf-step-3 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
}
.contact-form .conf-step-2 h4, .contact-form .conf-step-3 h4 {
  grid-column: 1/-1;
  margin: 0 0 25px 0;
}
.contact-form .conf-step-2 .input-block, .contact-form .conf-step-3 .input-block {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  flex-wrap: nowrap;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%;
  box-sizing: border-box;
}
.contact-form .conf-step-2 .input-block label, .contact-form .conf-step-3 .input-block label {
  margin-bottom: 4px;
}
.contact-form .conf-step-2 .input-block input, .contact-form .conf-step-3 .input-block input {
  width: 100%;
}
.contact-form .conf-step-3 {
  width: 100%;
}
.contact-form p:empty {
  display: none;
}
.contact-form .conf-preview {
  margin: 0;
}
.contact-form .conf-preview h3 {
  color: #EA7600;
}
.contact-form .btn {
  margin: 0;
}
.contact-form .btn img {
  filter: brightness(0) invert(1);
}
.contact-form .btn.active {
  background: #82898F;
}
.contact-form .textarea {
  height: auto;
}
.contact-form label {
  -webkit-transition: all 0.5s ease 0s;
  -moz-transition: all 0.5s ease 0s;
  -ms-transition: all 0.5s ease 0s;
  -o-transition: all 0.5s ease 0s;
  transition: all 0.5s ease 0s;
  position: absolute;
  left: 5px;
  top: -30px;
  display: block;
  margin: 0;
  /* font-family: "Manrope";
   font-style: normal;*/
  font-weight: 400;
  color: #262626;
  font-size: 14px;
}
.contact-form label.error {
  color: #CC0303;
}
.contact-form .form-control {
  resize: none;
  background-color: transparent;
  padding: 0;
  border: none;
  box-shadow: none;
  height: auto;
  position: relative;
  z-index: 2;
  font-size: 16px;
  color: #262626;
}
.contact-form .form-control:focus label {
  top: 0;
}
.contact-form .condizioni-privacy {
  line-height: 20px;
}
.contact-form .condizioni-privacy label {
  top: 0;
  left: 0;
}
.contact-form .submit_form {
  margin-top: 15px;
  cursor: pointer;
  cursor: hand;
}
.contact-form .error input, .contact-form input.error, .contact-form .error textarea, .contact-form textarea.error {
  border: 0 !important;
  -webkit-box-shadow: none !important;
  -moz-box-shadow: none !important;
  box-shadow: none !important;
  color: #CC0303 !important;
  /* font-family: "Manrope";
   font-style: normal;*/
  font-weight: 400;
  opacity: 1 !important;
}
.contact-form label.error {
  /* font-family: "Manrope";
   font-style: normal;*/
  font-weight: 400;
}
.contact-form .note-legali label, .contact-form .iscrizione-newsletter label {
  left: 40px;
  top: 10px;
}
.contact-form .note-legali label.lineHeightNormal, .contact-form .iscrizione-newsletter label.lineHeightNormal {
  line-height: normal;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  flex-wrap: nowrap;
  height: 48px;
}
.contact-form .note-legali input, .contact-form .iscrizione-newsletter input {
  padding: 0;
  margin: 0;
  border: solid 1px #262626;
  background-color: #FFFFFF;
  width: 30px;
  height: 30px;
  float: left;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
}
.contact-form .note-legali input.mtop20, .contact-form .iscrizione-newsletter input.mtop20 {
  margin-top: 18px;
}
.contact-form section.mkt {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  flex-wrap: nowrap;
  gap: 12px;
  width: 100%;
}
.contact-form section.mkt.margin {
  margin: clamp(24px, 2vw, 32px) 0;
}
.contact-form section.mkt > p {
  text-align: left;
  font-size: 14px;
  line-height: 22px;
  margin: 5px 0 0;
}
.contact-form section.mkt label.labelcontainer {
  position: relative;
  left: unset;
  top: unset;
  flex-shrink: 0;
  display: flex;
  align-items: flex-start;
  gap: 12px;
  cursor: pointer;
}
.contact-form section.mkt label.labelcontainer.error .checkmark {
  border: 1px solid #EA7600;
  background-color: #f4d9bd;
}
.contact-form section.mkt label.labelcontainer input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}
.contact-form section.mkt label.labelcontainer p {
  text-align: left;
  font-size: 14px;
  line-height: 22px;
  margin: 5px 0 0;
}
.contact-form .checkmark {
  display: inline-block;
  flex-shrink: 0;
  width: 30px;
  height: 30px;
  background-color: #FFFFFF;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  border: 1px solid #262626;
  position: relative;
  -webkit-transition: background-color 0.2s ease 0s;
  -moz-transition: background-color 0.2s ease 0s;
  -ms-transition: background-color 0.2s ease 0s;
  -o-transition: background-color 0.2s ease 0s;
  transition: background-color 0.2s ease 0s;
}
.contact-form .checkmark:after {
  content: "";
  position: absolute;
  display: none;
  left: 10px;
  top: 4px;
  width: 8px;
  height: 15px;
  border: solid #FFFFFF;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}
.contact-form .help .checkmark {
  border: 1px solid #FFFFFF;
}
.contact-form .labelcontainer:hover .checkmark {
  background-color: #C1C4C7;
}
.contact-form .labelcontainer input:checked ~ .checkmark {
  background-color: #EA7600;
  border-color: #EA7600;
}
.contact-form .labelcontainer input:checked ~ .checkmark:after {
  display: block;
}
.contact-form .radio-group {
  display: flex;
  gap: 16px;
  align-items: center;
}
.contact-form .radio-group label.radio-label {
  position: relative;
  top: unset;
  left: unset;
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  font-size: 16px;
  color: #262626;
  line-height: 1;
}
.contact-form .radio-group label.radio-label input[type=radio] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}
.contact-form .radio-group label.radio-label .radio-mark {
  display: inline-block;
  flex-shrink: 0;
  width: 22px;
  height: 22px;
  border: 1px solid #262626;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  background-color: #FFFFFF;
  position: relative;
  -webkit-transition: border-color 0.2s ease 0s;
  -moz-transition: border-color 0.2s ease 0s;
  -ms-transition: border-color 0.2s ease 0s;
  -o-transition: border-color 0.2s ease 0s;
  transition: border-color 0.2s ease 0s;
}
.contact-form .radio-group label.radio-label .radio-mark::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 16px;
  height: 16px;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  background-color: #EA7600;
  opacity: 0;
  -webkit-transition: opacity 0.2s ease 0s;
  -moz-transition: opacity 0.2s ease 0s;
  -ms-transition: opacity 0.2s ease 0s;
  -o-transition: opacity 0.2s ease 0s;
  transition: opacity 0.2s ease 0s;
}
.contact-form .radio-group label.radio-label:hover .radio-mark {
  border-color: #EA7600;
}
.contact-form .radio-group label.radio-label input[type=radio]:checked ~ .radio-mark {
  border-color: #EA7600;
}
.contact-form .radio-group label.radio-label input[type=radio]:checked ~ .radio-mark::after {
  opacity: 1;
}
.contact-form hr {
  width: 100%;
  margin: 0;
}

.checkboxes {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  flex-wrap: nowrap;
  gap: clamp(20px, 1.5vw, 30px);
  flex-wrap: wrap;
}
.checkboxes h4 {
  margin: 0;
}
.checkboxes .checkbox {
  position: relative;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  flex-wrap: nowrap;
  gap: 8px;
}
.checkboxes .checkbox label {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  flex-wrap: nowrap;
  gap: 8px;
  cursor: pointer;
  font-size: 14px;
  position: relative;
  left: unset;
  top: unset;
}
.checkboxes .checkbox input[type=checkbox] {
  appearance: none;
  -webkit-appearance: none;
  width: 22px;
  height: 22px;
  min-width: 22px;
  border: 1px solid #C1C4C7;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
  border-radius: 6px;
  cursor: pointer;
  -webkit-transition: all 0.5s ease 0s;
  -moz-transition: all 0.5s ease 0s;
  -ms-transition: all 0.5s ease 0s;
  -o-transition: all 0.5s ease 0s;
  transition: all 0.5s ease 0s;
  position: relative;
}
.checkboxes .checkbox input[type=checkbox]:checked {
  background-color: #EA7600;
  border-color: #EA7600;
}
.checkboxes .checkbox input[type=checkbox]:checked::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 6px;
  width: 6px;
  height: 11px;
  border: 2px solid #FFFFFF;
  border-top: none;
  border-left: none;
  transform: rotate(45deg);
}

select {
  background: #FFFFFF;
  border: solid 1px #262626;
  width: 100%;
  height: 60px;
  padding: 15px 55px 15px 35px;
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px;
  /* font-family: "Manrope";
   font-style: normal;*/
  font-weight: 400;
  font-size: 16px;
  color: #262626;
  appearance: none;
  -webkit-appearance: none;
  background-image: url("/library/pagination/ui/Chevron-2.svg");
  background-repeat: no-repeat;
  background-position: right 20px center;
  cursor: pointer;
  outline: none;
  -webkit-transition: border-color 0.5s ease 0s;
  -moz-transition: border-color 0.5s ease 0s;
  -ms-transition: border-color 0.5s ease 0s;
  -o-transition: border-color 0.5s ease 0s;
  transition: border-color 0.5s ease 0s;
}
select:focus {
  border-color: #1D428A;
}

#login_form, #login_recover, #registrazione, #anagrafica {
  margin: 0;
}
#login_form h4, #login_form h2, #login_recover h4, #login_recover h2, #registrazione h4, #registrazione h2, #anagrafica h4, #anagrafica h2 {
  margin: clamp(30px, 2.5vw, 50px) 0 clamp(20px, 1.5vw, 30px) 0;
}

.reserved-profile h2, .reserved-anagrafica h2 {
  margin-bottom: clamp(20px, 1.5vw, 40px);
}

.reserved-profile {
  margin-bottom: clamp(45px, 2.5vw, 80px);
}

.recoverText {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-start;
  gap: 3px;
}
.recoverText img {
  margin-right: 10px;
}
.recoverText.hide {
  display: none;
}

#sede .actions {
  margin-top: clamp(20px, 1.5vw, 30px);
}
#sede section {
  flex-direction: row;
  justify-content: center;
  flex-wrap: wrap;
}
#sede section.form-modal-sede {
  padding-top: 50px;
}
#sede section .input-block {
  width: calc(50% - clamp(24px, 2vw, 32px) / 2);
}

/* ---------------------------------------------------------------------------------------------------- */
/* SEARCH ---------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------- */
#search-form.contact-form {
  width: 100%;
  position: relative;
}
#search-form.contact-form .input-block {
  -webkit-border-radius: 35px;
  -moz-border-radius: 35px;
  border-radius: 35px;
  padding: 20px 35px;
  height: 68px;
  border: none;
  background-color: #F7F7F7;
}
#search-form.contact-form #find_btn {
  position: absolute;
  top: 4px;
  right: 4px;
}
#search-form.contact-form #find_btn img {
  position: relative;
  top: unset;
  right: unset;
}

.search-page h2 {
  margin: clamp(30px, 2.5vw, 50px) 0;
}

.search-results {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  flex-wrap: nowrap;
  gap: clamp(45px, 4vw, 80px);
}
.search-results article {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-direction: row;
  flex-wrap: nowrap;
  gap: clamp(20px, 1.5vw, 30px);
  width: 100%;
}
.search-results article .img-container {
  flex: 0 0 clamp(120px, 15vw, 250px);
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
  -webkit-border-radius: 16px;
  -moz-border-radius: 16px;
  border-radius: 16px;
  aspect-ratio: 1/1;
}
.search-results article .txt {
  flex-grow: 1;
}
.search-results article .txt p {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
}

/* ---------------------------------------------------------------------------------------------------- */
/* PROGETTI ---------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------- */
.projects-list-container {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  flex-direction: row;
  flex-wrap: nowrap;
}
.projects-list-container .tags-container {
  width: 250px;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: column;
  flex-wrap: nowrap;
}
.projects-list-container .tags-container .submenu {
  width: 100%;
}
.projects-list-container .tags-container .tags a {
  white-space: nowrap;
}
.projects-list-container .projects-list {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  flex-direction: row;
  flex-wrap: wrap;
  gap: clamp(40px, 4vw, 64px) clamp(20px, 1.5vw, 40px);
  min-width: 0;
}
.projects-list-container .projects-list article {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: column;
  flex-wrap: nowrap;
  gap: 20px;
  width: calc(33.333% - clamp(20px, 1.5vw, 40px) * 2 / 3);
  /*h3 {
    font-size: $h4FontSize;
    line-height: normal;
  }*/
}
.projects-list-container .projects-list article .intro {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: column;
  flex-wrap: nowrap;
  gap: 20px;
  margin: 0 16px;
}
.projects-list-container .projects-list article picture {
  aspect-ratio: 570/320;
}
.projects-list-container .projects-list article picture img {
  height: 100%;
  object-fit: cover;
}
.projects-list-container .projects-list article a:not(.btn) {
  width: 100%;
}
.projects-list-container .projects-list article .proj-sectors {
  display: flex;
  align-items: flex-start;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  scroll-snap-type: x mandatory;
  gap: 8px;
  width: 100%;
  white-space: nowrap;
  -webkit-border-radius: 24px;
  -moz-border-radius: 24px;
  border-radius: 24px;
}
.projects-list-container .projects-list article .proj-sectors > * {
  flex-shrink: 0;
  scroll-snap-align: start;
}
.projects-list-container .projects-list article h2 {
  font-size: clamp(18px, 1.5vw, 20px);
  font-weight: 700;
  line-height: normal;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  width: 100%;
  text-align: left;
}
.projects-list-container .projects-list article h4 {
  color: #1D428A;
  font-size: 16px;
  line-height: normal;
  margin: 12px 0 6px 0;
}
.projects-list-container .projects-list article p {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  margin: 0;
  width: 100%;
  text-align: left;
}
.projects-list-container .projects-list article .btn {
  /*margin-top: $gap30;*/
  margin: 0;
  background-color: #A1A6AB;
}
.projects-list-container .projects-list article .tags {
  gap: 0px;
}
.projects-list-container.case-histoies-container article {
  width: calc(50% - clamp(20px, 1.5vw, 40px) / 2);
}
.projects-list-container.case-histoies-container article picture {
  aspect-ratio: 870/320;
}
.projects-list-container.case-histoies-container article picture img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}

#proj-gallery li a picture {
  aspect-ratio: 1/1;
}
#proj-gallery li a picture img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.project h1 {
  font-size: clamp(30px, 3vw, 48px);
  line-height: normal;
}
.project h2 {
  font-size: clamp(26px, 2vw, 36px);
  line-height: normal;
}
.project section.strip picture {
  min-height: 300px;
}

section.strip.bg-blue.main-section.case-focus {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  flex-wrap: nowrap;
  gap: clamp(40px, 4vw, 64px);
  padding: 20px;
  margin-bottom: clamp(45px, 2.5vw, 80px);
}
section.strip.bg-blue.main-section.case-focus .section-label, section.strip.bg-blue.main-section.case-focus h2, section.strip.bg-blue.main-section.case-focus h3, section.strip.bg-blue.main-section.case-focus p {
  color: #FFFFFF;
}
section.strip.bg-blue.main-section.case-focus .text {
  padding: calc(clamp(40px, 4vw, 64px) - 20px) 0 calc(clamp(40px, 4vw, 64px) - 20px) calc(clamp(40px, 4vw, 64px) - 20px);
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: column;
  flex-wrap: nowrap;
  gap: clamp(20px, 1.5vw, 40px);
}
section.strip.bg-blue.main-section.case-focus .btn {
  margin: 0;
}
section.strip.bg-blue.main-section.case-focus .img-container {
  flex-shrink: 0;
  width: 40%;
}
section.strip.bg-blue.main-section.case-focus picture {
  aspect-ratio: 600/500;
}
section.strip.bg-blue.main-section.case-focus picture img {
  height: 100%;
  object-fit: cover;
}

.app-detail .detail-intro > .pic {
  margin-bottom: 16px;
}

/* ---------------------------------------------------------------------------------------------------- */
/* PAGINA TAG ---------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------- */
.prods-tag {
  margin-top: clamp(20px, 1.5vw, 30px);
}
.prods-tag .overflow-x {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  flex-direction: row;
  flex-wrap: nowrap;
  gap: clamp(40px, 4vw, 64px) clamp(20px, 1.5vw, 40px);
  min-width: 0;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
}
.prods-tag .overflow-x article {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  flex-direction: column;
  flex-wrap: nowrap;
  gap: 20px;
  flex: 0 0 calc(33.333% - clamp(20px, 1.5vw, 40px) * 2 / 3);
  /* Senza questo vale min-width:auto (default dei flex item) e la larghezza
     usata diventa max(basis, min-content): il min-content di .proj-sectors
     sfonda il 33.333% e la basis non conta piu'. Qui funziona perche'
     .overflow-x e' una riga: se il genitore fosse column non basterebbe. */
  min-width: 0;
  /*h3 {
    font-size: $h4FontSize;
    line-height: normal;
  }*/
}
.prods-tag .overflow-x article .intro {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  flex-direction: column;
  flex-wrap: nowrap;
  gap: 20px;
  margin: 0 16px;
}
.prods-tag .overflow-x article picture {
  aspect-ratio: 570/320;
}
.prods-tag .overflow-x article picture img {
  height: 100%;
  object-fit: cover;
}
.prods-tag .overflow-x article a:not(.btn, .img-container) {
  width: 100%;
}
.prods-tag .overflow-x article .proj-sectors {
  display: flex;
  align-items: flex-start;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  scroll-snap-type: x mandatory;
  gap: 8px;
  width: 100%;
  min-width: 0;
  -webkit-border-radius: 24px;
  -moz-border-radius: 24px;
  border-radius: 24px;
}
.prods-tag .overflow-x article .proj-sectors > * {
  flex-shrink: 0;
  scroll-snap-align: start;
  margin: 0;
  white-space: nowrap;
}
.prods-tag .overflow-x article h4 {
  font-weight: 700;
  line-height: normal;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  width: 100%;
  text-align: left;
}
.prods-tag .overflow-x article p {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  margin: 0;
  width: 100%;
  text-align: left;
}
.prods-tag .overflow-x article .tags {
  gap: 0px;
}
.prods-tag.case-tags article {
  gap: 20px;
  flex: 0 0 calc(50% - clamp(20px, 1.5vw, 40px) / 2);
  background-color: #1D428A;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: row;
  flex-wrap: nowrap;
  padding: 20px;
  -webkit-border-radius: 20px;
  -moz-border-radius: 20px;
  border-radius: 20px;
}
.prods-tag.case-tags article .section-label, .prods-tag.case-tags article h4, .prods-tag.case-tags article p {
  color: #FFFFFF;
}
.prods-tag.case-tags article .text {
  padding: calc(clamp(40px, 4vw, 64px) - 20px) 0 calc(clamp(40px, 4vw, 64px) - 20px) calc(clamp(40px, 4vw, 64px) - 20px);
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: column;
  flex-wrap: nowrap;
  gap: clamp(20px, 1.5vw, 40px);
}
.prods-tag.case-tags article .btn {
  margin: 0;
}
.prods-tag.case-tags article .img-container {
  flex-shrink: 0;
  width: 40%;
}
.prods-tag.case-tags article .text {
  flex-grow: 1;
}
.prods-tag.case-tags article picture {
  aspect-ratio: 410/424;
}
.prods-tag.case-tags article picture img {
  height: 100%;
  object-fit: cover;
}
.prods-tag.institutional-tag .overflow-x {
  -webkit-border-radius: clamp(12px, 2vw, 20px);
  -moz-border-radius: clamp(12px, 2vw, 20px);
  border-radius: clamp(12px, 2vw, 20px);
}

/* ---------------------------------------------------------------------------------------------------- */
/* AREA RISERVATA ---------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------- */
.shop-page-detail {
  flex-grow: 1;
}
.shop-page-detail form section {
  flex-direction: row;
  justify-content: flex-start;
  flex-wrap: wrap;
}
.shop-page-detail .input-block {
  width: calc(50% - clamp(24px, 2vw, 32px) / 2);
}
.shop-page-detail .input-block.four {
  width: calc(33.333% - clamp(24px, 2vw, 32px) * 2 / 3);
}
.shop-page-detail .checkboxes {
  margin: 20px 0;
}

.order-head {
  display: grid;
  grid-template-areas: "titolo stato" "emesso emesso" "desc desc" "actions actions";
  grid-template-columns: 2fr 1fr;
}
.order-head h3 {
  grid-area: titolo;
  margin-bottom: 16px;
}
.order-head .emesso {
  grid-area: emesso;
  margin-bottom: 16px;
}
.order-head .stato {
  grid-area: stato;
  margin-bottom: 16px;
  text-align: right;
}
.order-head .desc {
  grid-area: desc;
}
.order-head .desc.warning {
  background-color: #CC0303;
  -webkit-border-radius: 24px;
  -moz-border-radius: 24px;
  border-radius: 24px;
  padding: 12px 24px;
  margin-top: 10px;
  color: #FFFFFF;
}
.order-head .desc.warning p {
  color: #FFFFFF;
}
.order-head .actions {
  grid-area: actions;
  margin-bottom: 16px;
}

.order-dett {
  border: 1px solid #E0E1E3;
  padding: clamp(20px, 1.5vw, 30px);
  -webkit-border-radius: 20px;
  -moz-border-radius: 20px;
  border-radius: 20px;
  margin: clamp(30px, 2.5vw, 50px) 0;
}

.reserved-newsletter {
  margin: clamp(20px, 1.5vw, 30px) 0;
}

.download-list h3 {
  margin: clamp(30px, 2.5vw, 50px) 0 clamp(20px, 1.5vw, 30px) 0;
  width: 100%;
}

/*.shop-table tr:first-child td, table th td {
  border-bottom: 1px solid $grey-100;
  font-weight: 400;
}*/
.job-list {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-direction: column;
  flex-wrap: nowrap;
  margin-bottom: clamp(45px, 2.5vw, 80px);
}
.job-list h1 {
  font-size: clamp(30px, 3vw, 48px);
  line-height: normal;
  margin-bottom: clamp(20px, 1.5vw, 30px);
}
.job-list h2 {
  font-size: clamp(20px, 2.2vw, 24px);
  line-height: normal;
  margin-bottom: clamp(20px, 1.5vw, 30px);
}
.job-list article {
  text-align: left;
  padding: clamp(20px, 1.5vw, 30px);
  -webkit-border-radius: 12px;
  -moz-border-radius: 12px;
  border-radius: 12px;
  border: 1px solid #E0E1E3;
  margin-bottom: clamp(45px, 4vw, 80px);
}
.job-list article > * {
  width: 100%;
}
.job-list article h3 {
  margin-bottom: 20px;
}
.job-list article h3::after {
  content: "";
  width: 40px;
  height: 2px;
  border-radius: 1px;
  background-color: #EA7600;
  display: block;
  margin-top: 8px;
}

.section-head-button {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: flex-end;
  justify-content: justify-space-between;
  flex-direction: row;
  flex-wrap: nowrap;
  margin-bottom: clamp(30px, 2.5vw, 50px);
}
.section-head-button div {
  flex-grow: 1;
}
.section-head-button .btn {
  margin: 0;
}

/* ---------------------------------------------------------------------------------------------------- */
/* MEDIA QUERY ---------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------- */
@media all and (max-width: 1440px) {
  section.strip.news-home ul li .pic-container picture span {
    right: 20px;
  }
}
@media all and (max-width: 1279px) {
  section.strip.three-boxes-container .three-boxes {
    grid-template-areas: "intro primobox" "secondobox terzobox";
    grid-template-columns: 1fr 1fr;
  }
  section.strip.three-boxes-container .three-boxes .content:nth-child(1) {
    grid-template-rows: 70% 30%;
  }
  section.strip.three-boxes-container .three-boxes .content:nth-child(1) p {
    align-self: center;
    margin-bottom: 20px;
  }
  section.strip.three-boxes-container .three-boxes .content:nth-child(1) .action {
    align-self: inherit;
  }
  section.strip.download-container .text {
    gap: clamp(30px, 2.5vw, 50px);
    flex-direction: column;
    justify-content: center;
  }
  section.strip .five-boxes {
    grid-template-areas: "pic pic " "card1  card2" "card3  card4";
    grid-template-columns: 1fr 1fr;
    grid-auto-rows: auto auto;
  }
  section.strip .five-boxes .pic-container {
    aspect-ratio: 2/0.7;
  }
  section.strip .five-boxes:has(article:nth-child(6)) {
    grid-template-rows: auto auto;
    grid-template-areas: "card1 card2 " "card3  pic" "card4  card5";
  }
  section.strip .five-boxes:has(article:nth-child(6)) p {
    margin-bottom: 20px;
    height: 105px;
  }
  section.strip .five-boxes:has(article:nth-child(6)) h3 {
    height: 40px;
  }
  .page-side-menu .section-head-button {
    flex-direction: column;
    align-items: flex-start;
  }
  .page-side-menu .section-head-button div {
    width: 100%;
  }
  section.strip.bg-image-data {
    grid-template-columns: 60% 40%;
    grid-template-areas: "header btn" "desc  desc" "numeri . ";
  }
  .prods-tag.case-tags article {
    flex-direction: column;
  }
  .prods-tag.case-tags article .img-container {
    width: 100%;
  }
  .prods-tag.case-tags article picture {
    aspect-ratio: 2/1;
  }
}
@media all and (max-width: 1110px) {
  section.strip.shoplogin .box-login.bg-orange picture {
    display: none;
  }
}
@media all and (max-width: 1045px) {
  .projects-list-container .projects-list article {
    width: calc(50% - clamp(20px, 1.5vw, 40px) / 2);
  }
  section.strip .cards.cards-single-products .other article {
    min-height: 380px;
  }
  section.strip .cards.cards-single-products .other article.categorie-support .btn {
    padding-right: 16px;
  }
  section.strip.info-pages.governance div {
    width: calc(50% - 15px);
  }
  section.strip .five-boxes:has(article:nth-child(6)) p {
    height: 130px;
    font-size: 15px;
  }
}
@media all and (max-width: 1024px) {
  section.strip .five-boxes {
    grid-template-areas: "card1  card2" "card3  card4";
    grid-auto-rows: auto auto;
  }
  section.strip .five-boxes .pic-container {
    display: none;
  }
  section.strip .five-boxes:has(article:nth-child(6)) .pic-container {
    display: block;
  }
  section.strip.scroll-cards ul li {
    flex: 0 0 calc(33.3333% - 13.3333333333px);
  }
}
@media all and (max-width: 1023px) {
  .prods-tag.case-tags .overflow-x article {
    flex: 0 0 80%;
  }
  .strip.page-side-menu.infos {
    flex-direction: column;
  }
  .strip.page-side-menu.infos > div {
    width: 100%;
  }
  section.strip.three-boxes-container .three-boxes {
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-areas: "intro intro intro" "primobox secondobox terzobox";
  }
  section.strip.three-boxes-container .three-boxes .action {
    margin-top: 20px;
  }
  section.strip.three-boxes-container .three-boxes .content h3 {
    height: auto;
    -webkit-line-clamp: 4;
  }
  .slider-header.prods-slider {
    position: relative;
  }
  .slider-header.prods-slider ul:not(.breadcrumb) li article {
    grid-template-columns: 100%;
    grid-template-areas: "descrizione";
    gap: 0;
  }
  .slider-header.prods-slider .title {
    display: none;
  }
  .title-mobile {
    display: block;
  }
}
@media all and (max-width: 880px) {
  .prods-tag .overflow-x article {
    flex: 0 0 calc(50% - clamp(20px, 1.5vw, 40px) / 2);
  }
  section.strip, section.strip.reverse {
    flex-direction: column;
    flex-wrap: wrap;
  }
  section.strip .one, section.strip .two, section.strip .three, section.strip .four, section.strip .five, section.strip .six, section.strip .seven, section.strip .eight, section.strip .nine, section.strip .ten, section.strip .eleven, section.strip .twelve, section.strip.reverse .one, section.strip.reverse .two, section.strip.reverse .three, section.strip.reverse .four, section.strip.reverse .five, section.strip.reverse .six, section.strip.reverse .seven, section.strip.reverse .eight, section.strip.reverse .nine, section.strip.reverse .ten, section.strip.reverse .eleven, section.strip.reverse .twelve {
    flex: 0 0 100%;
    width: 100%;
  }
  section.strip .proj-pic, section.strip.reverse .proj-pic {
    margin-top: clamp(30px, 4%, 60px);
    margin-bottom: clamp(30px, 4%, 60px);
  }
  section.strip.foto-sfondo.bg-dark-image .stripe-txt {
    flex-direction: column;
    align-items: flex-start;
  }
  section.strip.shoplogin .box-login.bg-lightgrey {
    width: 100%;
  }
  section.strip.shoplogin .box-login.bg-orange {
    width: 100%;
  }
  section.strip picture {
    aspect-ratio: 2/1;
  }
  section.strip .cards:not(.five-boxes) {
    gap: 20px;
  }
  section.strip .cards:not(.five-boxes) article {
    width: calc(50% - 10px);
  }
  /* section.strip .cards article {
     width: calc(50% - $gapCard / 2);
   }*/
  section.strip .five-boxes {
    /* grid-template-areas:
             "card1"  "card2"
             "card3"  "card4";
     grid-template-columns: 100%;
     grid-template-rows: auto;*/
  }
  section.strip .five-boxes article {
    gap: 10px;
    /*img {
      display: none;
    }
    h3 {
      margin-bottom: 0;
    }*/
  }
  section.strip .five-boxes article .action {
    width: 100%;
    display: flex;
    justify-content: flex-end;
  }
  section.strip .five-boxes article .action .btn {
    font-size: 0;
    width: 50px;
    height: 50px;
    padding: 0;
    gap: 0;
    margin: 0;
  }
  section.strip.two-boxes-container .two-boxes {
    flex-direction: column;
    align-items: flex-start;
  }
  section.strip.two-boxes-container .two-boxes article {
    width: 100%;
  }
  .accordion-container .pic-container {
    display: none;
  }
  section.strip .numeri {
    flex-wrap: wrap;
    gap: 10px 20px;
  }
  section.strip .numeri .content {
    width: calc(50% - 30px);
  }
  section.strip.img-cover picture {
    aspect-ratio: 4/5;
  }
  section.strip.img-cover .stripe-txt {
    padding-bottom: 0;
    padding-top: 0;
  }
  section.strip.three-boxes-container .three-boxes {
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "intro primobox" "secondobox terzobox";
  }
  section.strip.three-boxes-container .three-boxes .action {
    margin-top: 20px;
  }
  section.strip.three-boxes-container .three-boxes .content h3 {
    height: auto;
    -webkit-line-clamp: 4;
  }
  section.strip.news-home ul li article, section.strip.news-home.li-reverse ul li article {
    flex-direction: column;
  }
  section.strip.news-home ul li article h3, section.strip.news-home.li-reverse ul li article h3 {
    overflow: hidden;
    text-overflow: ellipsis;
    display: block;
    white-space: nowrap;
  }
  section.strip.news-home ul li article .pic-container picture, section.strip.news-home.li-reverse ul li article .pic-container picture {
    aspect-ratio: 2/1;
  }
  section.strip.news-home {
    margin-bottom: clamp(45px, 2.5vw, 80px);
  }
  section.strip.news-home .txt, section.strip.news-home .pic-container {
    flex: 100%;
  }
  section.strip.news-home .txt a, section.strip.news-home .pic-container a {
    display: block;
    width: 100%;
  }
  section.strip.news-home .counter, section.strip.news-home .slide-x-nav {
    bottom: 0px;
    width: 100%;
  }
  .cta {
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 20px;
  }
  section.strip.title-grid {
    grid-template-columns: 100%;
    grid-template-areas: "label" "title" "text" "content";
    gap: 20px;
  }
  section.strip.title-grid h3, section.strip.title-grid .intro {
    text-align: left !important;
  }
  section.strip.scroll-cards ul li {
    flex: 0 0 55%;
  }
  #sede section, .shop-page-detail form section {
    flex-direction: column;
  }
  #sede section .input-block, .shop-page-detail form section .input-block {
    width: 100%;
  }
  #range-prodotti.strip {
    grid-template-columns: calc(100% - 20px);
  }
  #range-prodotti.strip .cards article {
    padding-left: 15px;
    padding-right: 15px;
    width: 100%;
  }
  #range-prodotti.strip .cards article .action {
    row-gap: 20px;
    display: -moz-grid;
    display: -ms-grid;
    display: grid;
    grid-template-columns: 90px 1fr;
    grid-template-rows: auto;
    grid-template-areas: "img titolo" "desc desc";
  }
  #range-prodotti.strip .cards article .action img {
    grid-area: img;
  }
  #range-prodotti.strip .cards article .action h4 {
    grid-area: titolo;
    margin: 0;
    align-self: center;
  }
  #range-prodotti.strip .cards article .action p {
    grid-area: desc;
  }
  section.strip .cards.cards-single-products .other {
    width: 100%;
    flex: 0 0 100%;
  }
  section.strip .cards.cards-single-products .other article {
    min-height: unset;
    padding-left: 15px;
    padding-right: 15px;
    /*width: calc(100% - 30px);
    flex: 0 0 calc(100% - 30px);*/
  }
  section.strip .cards.cards-single-products .other article .action {
    row-gap: 20px;
    display: -moz-grid;
    display: -ms-grid;
    display: grid;
    grid-template-columns: 90px 1fr;
    grid-template-rows: auto;
    grid-template-areas: "img titolo" "desc desc";
  }
  section.strip .cards.cards-single-products .other article .action img {
    grid-area: img;
  }
  section.strip .cards.cards-single-products .other article .action h4 {
    grid-area: titolo;
    margin: 0;
    align-self: center;
  }
  section.strip .cards.cards-single-products .other article .action p {
    grid-area: desc;
  }
  section.strip .cards.cards-single-products .other article.categorie-support .action {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-direction: column;
    flex-wrap: nowrap;
  }
  section.strip .cards.cards-single-products .other article.categorie-support .action h4 {
    align-self: start;
  }
  section.strip .cards.cards-single-products .other article.categorie-support .action .btn {
    margin: 0;
  }
  section.strip.bg-image-data {
    grid-template-columns: 60% 40%;
    grid-template-areas: "header btn" "desc  desc" "numeri numeri";
  }
  section.strip.search-realizations .browser {
    flex-direction: column;
  }
  section.strip.search-realizations .browser div {
    width: 100%;
  }
  .projects-list-container .projects-list article {
    width: 100%;
  }
  section.strip.bg-blue.main-section.case-focus {
    flex-direction: column-reverse;
  }
  section.strip.bg-blue.main-section.case-focus .text, section.strip.bg-blue.main-section.case-focus .img-container {
    width: 100%;
  }
  section.strip.bg-blue.main-section.case-focus .text {
    padding-top: 0;
  }
  section.strip.bg-blue.main-section.case-focus picture {
    aspect-ratio: 2/1;
  }
  .projects-list-container.case-histoies-container article picture {
    aspect-ratio: 16/9;
  }
  section.strip.qrcode-reader picture {
    aspect-ratio: 1/1;
  }
  section.strip .five-boxes:has(article:nth-child(6)) p {
    height: 150px;
  }
  section.strip .five-boxes:has(article:nth-child(6)) h3 {
    height: 70px;
  }
}
@media all and (max-width: 767px) {
  .prods-tag .overflow-x article {
    flex: 0 0 80%;
  }
  section.strip .five-boxes:has(article:nth-child(6)) {
    grid-template-columns: 100%;
    grid-template-rows: auto;
    grid-template-areas: "card1" "card2" "card3" "card4" "card5";
  }
  section.strip .five-boxes:has(article:nth-child(6)) p, section.strip .five-boxes:has(article:nth-child(6)) h3 {
    height: auto;
  }
}
@media all and (max-width: 720px) {
  /*.overflow-x > * {
    flex: 0 0 calc(100vw - 40px);
    scroll-snap-align: start;
  }*/
  section.strip.three-boxes-container.onlybox .three-boxes {
    grid-template-areas: "intro" "primobox" "secondobox" "terzobox";
    grid-template-columns: 100%;
    gap: 12px;
  }
  section.strip.three-boxes-container.onlybox .three-boxes .content {
    text-align: center;
  }
  section.strip.three-boxes-container .three-boxes {
    /* grid-template-areas: "intro" "primobox" "secondobox" "terzobox";
     grid-template-columns: 1fr;*/
    gap: 12px;
  }
  section.strip.three-boxes-container .three-boxes p {
    display: none;
  }
  section.strip.three-boxes-container .three-boxes h3 {
    font-size: 16px;
  }
  .contact-form .info-login, .contact-form .twoinput, .contact-form .threeinput {
    flex-direction: column;
  }
  .contact-form .info-login .input-block, .contact-form .twoinput .input-block, .contact-form .threeinput .input-block {
    width: 100%;
    flex: 0 0 100%;
  }
  section.strip.bg-image-data {
    grid-template-columns: 100%;
    grid-template-areas: "header" "desc" "btn" "numeri";
  }
  .search-results article {
    align-items: flex-start;
  }
  .search-results article .img-container {
    flex: 0 0 120px;
  }
  section.strip .cards article h4 {
    margin: 20px 0;
  }
  section.strip.bg-orange.main-section,
  section.strip.bg-blue.main-section {
    padding: clamp(20px, 6vw, 80px);
  }
  section.strip.bg-orange.main-section.txtcenter,
  section.strip.bg-blue.main-section.txtcenter {
    text-align: left;
  }
  section.strip.bg-orange.main-section.txtcenter .section-label,
  section.strip.bg-blue.main-section.txtcenter .section-label {
    justify-content: flex-start;
  }
  section.strip.three-boxes-container .three-boxes .content:nth-child(1) {
    grid-template-rows: auto;
  }
  section.strip.news-home ul li .pic-container picture span {
    display: none;
  }
  section.strip.testo-schema-cta .pic-container .bottom-text {
    align-items: flex-start;
  }
  section.strip .stripe-txt.title-center h1,
  section.strip .stripe-txt.title-center h2,
  section.strip .stripe-txt.title-center h3 {
    text-align: left;
  }
  section.strip .stripe-txt.title-center h3::after {
    content: "";
    width: 40px;
    height: 2px;
    border-radius: 1px;
    background-color: #EA7600;
    display: block;
    margin-top: 8px;
  }
  section.strip .stripe-txt.title-center .section-label {
    justify-content: flex-start;
    margin: 0;
    width: 100%;
  }
}
@media all and (max-width: 620px) {
  .contact-form .actions {
    flex-direction: column;
  }
  .contact-form .actions .btn {
    padding: 0;
    width: 100%;
  }
  section.strip.info-pages.governance div {
    width: calc(100% - 15px);
  }
  section.strip.three-boxes-container .three-boxes .content {
    padding: 12px;
  }
  section.strip.three-boxes-container .three-boxes .action .btn img {
    display: none;
  }
}
@media all and (max-width: 576px) {
  .search-results article {
    flex-direction: column;
  }
  .search-results article .img-container {
    width: 100%;
    aspect-ratio: 2/1;
  }
  .search-results article .txt {
    width: 100%;
  }
  section.strip .cards article {
    width: 100%;
  }
  section.strip .numeri {
    flex-direction: column;
  }
  section.strip .numeri .content {
    width: 100%;
  }
  section.strip .cards:not(.five-boxes) {
    gap: 12px;
  }
  section.strip .cards:not(.five-boxes) article p {
    display: none;
  }
  section.strip .cards:not(.five-boxes) article h4 {
    font-size: 16px;
    margin-bottom: 0;
  }
  section.strip .five-boxes:has(article:nth-child(6)) {
    gap: 0;
    row-gap: 12px;
  }
  section.strip .five-boxes:has(article:nth-child(6)) article {
    flex-direction: row;
    align-items: center;
  }
  section.strip .five-boxes:has(article:nth-child(6)) article h3 {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  #altri-prodotti.strip .cards.cards-single-products .other article .action {
    row-gap: 0;
  }
  #range-prodotti.strip .cards article .action {
    row-gap: 0;
  }
  section.strip.scroll-cards ul li {
    flex: 0 0 67%;
  }
  section.strip.bg-dark-image {
    padding: 25px;
  }
  section.strip.scroll-cards ul {
    gap: 20px;
  }
  section.strip.two-boxes-container .two-boxes article {
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 25px;
  }
  section.strip picture {
    aspect-ratio: 3/2;
  }
  section.strip.qrcode-reader picture {
    aspect-ratio: 1/1;
  }
  section.strip.bg-image-data {
    padding: clamp(20px, 6vw, 80px);
    width: calc(100% - clamp(20px, 6vw, 80px) * 2);
  }
  section.strip.bg-image-data .numbers {
    align-items: flex-start;
  }
  section.strip .five-boxes {
    /*grid-template-areas:
            "card1"  "card2"
            "card3"  "card4";
    grid-template-columns: 100%;
    grid-template-rows: auto;*/
    gap: 12px;
  }
  section.strip .five-boxes article {
    padding: 12px;
  }
  section.strip .five-boxes article p, section.strip .five-boxes article .icon {
    display: none;
  }
  section.strip .five-boxes article h3 {
    margin: 0;
    font-size: 16px;
    height: 60px;
  }
  section.strip.criteri .five-boxes article h3 {
    height: auto;
    text-align: center;
  }
}
@media all and (max-width: 375px) {
  section.strip.three-boxes-container .three-boxes .content:nth-child(1) {
    display: none;
  }
  section.strip.three-boxes-container .three-boxes {
    grid-template-columns: 100%;
    grid-template-areas: "primobox" "secondobox" "terzobox";
  }
  section.strip.three-boxes-container .three-boxes .content .number {
    margin-bottom: 10px;
  }
  section.strip .cards article.box-home {
    text-align: center;
  }
}

/*# sourceMappingURL=custom.css.map */
