/* INDICE
   [TOKENS] :root
     - [TOKENS] FONT
     - [TOKENS] BORDER RADIUS
     - [TOKENS] SPAZIATURE
     - [TOKENS] COLORI (PALETTE)
     - [TOKENS] ALPHA (TRASPARENZE)
     - [TOKENS] TIPOGRAFIA (COLORI)
     - [TOKENS] BOX SHADOW (TOKEN)
     - [TOKENS] DERIVATE

   [TIPOGRAFIA]

   [HIGHLIGHT] — BASE
   [HIGHLIGHT] — VARIANTI

   [ANIMUNDERLINE] - BASE
   [ANIMUNDERLINE] - VARIANTI

   [SEZIONI] — BASE
   [SEZIONI] — VARIANTI

   [HEADER] — BASE

   [FOOTER] — BASE

   [BADGE] — BASE
   [BADGE] - VARIANTI

   [BOTTONI] — BASE
   [BOTTONI] — VARIANTI

   [CHECKBOX] — BASE
   [CHECKBOX] — VARIANTI

   [CARD] — BASE
   [CARD] — VARIANTI
   [CARD TESTIMONIAL] — BASE

   [TABLE] — BASE

   [TABS] — BASE
   [TABS] — VARIANTI

   [CAROSELLO LOGHI] - BASE

   [CAROSELLO LOGHI TESTATE] - BASE

   [FORM] — BASE
   [FORM] — VARIANTI

   [UTILITY]
*/

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   [TOKENS] :root
   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
:root {

  /* ++ [TOKENS] FONT +++++++++++++++++++++++++++++++++++++++++++++++++++ */
    --Font_Family_Gabarito: 'Gabarito', sans-serif;
    --Font_Family_OpenSans: 'Open Sans', sans-serif;

  /* ++ [TOKENS] BORDER RADIUS +++++++++++++++++++++++++++++++++++++++++ */
    --br-0: 0.125rem;
    --br-1: 0.375rem;
    --br-2: 0.625rem;
    --br-3: 0.875rem;
    --br-4: 1.125rem;
    --br-5: 1.375rem;
    --br-6: 1.875rem;
    --br-7: 2.125rem;
    --br-8: 2.625rem;
    --br-9: 6.188rem;
  
  /* ++ [TOKENS] SPAZIATURE ++++++++++++++++++++++++++++++++++++++++++++ */
    --s-1: 0.25rem;
    --s-2: 0.5rem;
    --s-3: 1rem;
    --s-4: 1.5rem;
    --s-5: 3rem;

  /* ++ [TOKENS] COLORI (PALETTE) ++++++++++++++++++++++++++++++++++++++ */
    --blu-50: #F0F4F7;
    --blu-100: #DFE7EE;
    --blu-200: #A1BBD0;
    --blu-300: #5B88AD;
    --blu-400: #14568A;
    --blu-500: #114975;
    --blu-600: #0D395C;
    --blu-700: #011D33;

    --indaco-50: #F7F8FC;
    --indaco-100: #E1E2FA;
    --indaco-200: #C3C5FA;
    --indaco-300: #A2A5FA;
    --indaco-400: #8185EE;
    --indaco-500: #5E60AC;
    --indaco-600: #50528C;
    --indaco-700: #2B2C4F;

    --corallo-50: #FAEDEF;
    --corallo-100: #FAE1E5;
    --corallo-200: #F2C2CA;
    --corallo-300: #FA647E;
    --corallo-400: #E94561;
    --corallo-500: #C63B52;
    --corallo-600: #742230;
    --corallo-700: #4E1720;

    --verde-50: #F8FCF0;
    --verde-100: #EDF8D5;
    --verde-200: #DBEDB4;
    --verde-300: #AADB42;
    --verde-400: #8DC022;
    --verde-425: #7FAD1F;
    --verde-475: #5F860D;
    --verde-500: #507306;
    --verde-600: #395204;
    --verde-700: #233301;

    --giallo-50: #FFF5CC;
    --giallo-100: #FCEDBD;
    --giallo-200: #FDE99E;
    --giallo-300: #FFE580;
    --giallo-400: #FFC800;
    --giallo-500: #D9AA00;
    --giallo-600: #8A6803;
    --giallo-700: #554400;

    --verde-scuro-50: #F5FAF7;
    --verde-scuro-100: #D8E7DF;
    --verde-scuro-200: #BDD7C9;
    --verde-scuro-300: #8FC2A6;
    --verde-scuro-400: #3A885E;
    --verde-scuro-600: #347A55;
    --verde-scuro-700: #1D442F;

    --arancione-scuro-50: #FCF2EF;
    --arancione-scuro-100: #FCE1D9;
    --arancione-scuro-200: #F9CDBF;
    --arancione-scuro-300: #F49B7F;
    --arancione-scuro-400: #EE693F;
    --arancione-scuro-600: #C65835;
    --arancione-scuro-700: #4F2315;

    --viola-50: #F5EDF3;
    --viola-100: #EFD3E8;
    --viola-200: #E5B5D9;
    --viola-300: #CB6CB4;
    --viola-400: #B1228E;
    --viola-500: #A21F82;
    --viola-600: #931C76;
    --viola-700: #591147;

    --turchese-50: #EBF5F3;
    --turchese-100: #CCEEE6;
    --turchese-200: #AAE2D6;
    --turchese-300: #55C5AD;
    --turchese-400: #00A884;
    --turchese-600: #008C6E;
    --turchese-700: #005442;

    --marrone-50: #F7F2F2;
    --marrone-100: #E4D5D5;
    --marrone-200: #D2B9B8;
    --marrone-300: #A47472;
    --marrone-400: #772E2B;
    --marrone-600: #4F1F1D;
    --marrone-700: #3C1716;

    --azzurro-50: #ECF3FB;
    --azzurro-100: #DBEAFB;
    --azzurro-200: #A5C9F5;
    --azzurro-300: #87B8F2;
    --azzurro-400: #4B94EC;
    --azzurro-600: #3F7BC5;
    --azzurro-700: #19314F;

    --arancione-50: #FCF9F5;
    --arancione-100: #FFEACC;
    --arancione-200: #FFDDAA;
    --arancione-300: #FFD699;
    --arancione-400: #FF9800;
    --arancione-500: #F39100;
    --arancione-600: #E68900;
    --arancione-700: #804C00;

    --grigio-25: #FDFDFD;
    --grigio-50: #FCFCFC;
    --grigio-100: #F7F7F7;
    --grigio-200: #F0F0F0;
    --grigio-300: #DFDFDF;
    --grigio-400: #B3B3B3;
    --grigio-500: #85898C;
    --grigio-600: #666666;
    --grigio-700: #3E3F40;
    --grigio-900: #0C0C0D;

  /* ++ [TOKENS] ALPHA (TRASPARENZE) +++++++++++++++++++++++++++++++++++ */
    --alpha-nero-5: #0C0C0D0D;
    --alpha-nero-10: #0C0C0D1A;
    --alpha-nero-30: #0C0C0D4D;
    --alpha-nero-60: #0C0C0D99;
    --alpha-nero-75: #0C0C0DBF;
    --alpha-bianco-30: #FFFFFF4D;
    --alpha-bianco-60: #FFFFFF99;
    --alpha-bianco-75: #FFFFFFBF;

   /* ++ [TOKENS] TIPOGRAFIA (COLORI) ++++++++++++++++++++++++++++++++++ */
    --Primario---Blu_GEO-350-Blu_Geo_TXT: #386F9BFF;
    --Grigi-800-Grigio_GEO_TXT: #212629FF;

   /* ++ [TOKENS] BOX SHADOW (TOKEN) +++++++++++++++++++++++++++++++++++ */
    --bs-n1: rgba(129, 133, 238, .15) 0 2px 4px 0 inset;
    --bs-0: 0 1px 0 0 var(--Grigi-300);
    --bs-1: 0 2px 4px 0px var(--alpha-Nero-10), 0 0 0 1px var(--alpha-Nero-05);
   
   /* ++ [TOKENS] DERIVATE +++++++++++++++++++++++++++++++++++++++++++++ */
    --txt-fs-std: 0.875rem;
    --txt-color-std: var(--Grigi-800-Grigio_GEO_TXT);
    --btn-br-std: var(--br-2);
    --btn-border-std: 1px solid var(--Grigi-300);
    --btn-focus-std: 0 0 0 4px rgba(223, 223, 223, 0.50);
    --bg-color-header-std: var(--blu-50);
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   [TIPOGRAFIA]
   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.display-4 {
    font-size: 2.5rem;
    font-weight: 300;
    line-height: 1.2;
}
@media (min-width: 768px) {
    .display-4 {
        font-size: 3.5rem;
        font-weight: 300;
        line-height: 1.2;
    }
}

h1, h2, h3, .h1, .h2, .h3 {
    font-weight: 600 !important;
    font-family: Gabarito, Arial, sans-serif;
}

h4, h5, h6, .h4, .h5, .h6 {
    font-weight: 500 !important;
    font-family: Gabarito, Arial, sans-serif;
}

body {
    font-family: 'Poppins', sans-serif;
    background-color: var(--grigio-50);
}

b {
    font-weight: bold;
}

.text-muted {
    color: inherit !important;
    opacity: 0.7;
}

.nav-link i {
    color: var(--blu-400);
}

.text-clip {
    background-clip: text;
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

.icona-rotonda {
  border-radius: var(--br-9);
  display: inline-flex;
  justify-content: center;
  align-items: center;
  background: #fdfdfd70;
  width: 52px;
  height: 52px;
  aspect-ratio: 1;
}
.fa-2x.icona-rotonda {
  width: 72px;
  height: 72px;
}
.fa-3x.icona-rotonda {
  width: 92px;
  height: 92px;
}
.fa-4x.icona-rotonda {
  width: 112px;
  height: 112px;
}
.c-bianco .icona-rotonda {
  border: .0625rem solid var(--grigio-300);
}

.fa-ul.fa-ul-custom {
  margin-left: var(--fa-li-margin,3em);
}
.fa-li.fa-li-custom {
  left: calc(var(--fa-li-width, 2.5em)*-1);
  width: 32px;
  height: 32px;
  border-radius: 8px;
}
.fa-li.fa-li-custom.indaco {
  background: var(--indaco-400);
  line-height: 32px;
  color: var(--indaco-100);
}
.fa-li.fa-li-custom.verde-scuro {
  background: var(--verde-scuro-400);
  line-height: 32px;
  color: var(--verde-scuro-100);
}
.fa-li.fa-li-custom.verde {
  background: var(--verde-400);
  line-height: 32px;
  color: var(--verde-100);
}
.fa-li.fa-li-custom.blu {
  background: var(--blu-400);
  line-height: 32px;
  color: var(--blu-100);
}
.fa-li.fa-li-custom.arancione {
  background: var(--arancione-400);
  line-height: 32px;
  color: var(--arancione-100);
}
.fa-li.fa-li-custom.arancione-scuro {
  background: var(--arancione-scuro-400);
  line-height: 32px;
  color: var(--arancione-scuro-100);
}
.fa-li.fa-li-custom.giallo {
  background: var(--giallo-700);
  line-height: 32px;
  color: var(--giallo-100);
}
.fa-li.fa-li-custom.azzurro {
  background: var(--azzurro-400);
  line-height: 32px;
  color: var(--azzurro-100);
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   [HIGHLIGHT] — BASE
   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* Sottolineature / evidenziazioni */
.highlight {
    border-radius: var(--br-2);
    padding: 0px 8px;
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   [HIGHLIGHT] — VARIANTI
   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.highlight.verde-scuro {
    background-color: var(--verde-scuro-400);
    color: var(--grigio-25);
}
.highlight.verde-scuro-v2 {
    background-color: var(--verde-scuro-100);
    color: var(--verde-scuro-700);
}

.highlight.verde {
    background-color: var(--verde-400);
    color: var(--grigio-25);
}
.highlight.verde-v2 {
    background-color: var(--verde-100);
    color: var(--verde-700);
}

.highlight.blu {
    background-color: var(--blu-400);
    color: var(--grigio-25);
}
.highlight.blu-v2 {
    background-color: var(--blu-100);
    color: var(--blu-700);
}

.highlight.indaco {
    background-color: var(--indaco-400);
    color: var(--grigio-25);
}
.highlight.indaco-v2 {
    background-color: var(--indaco-100);
    color: var(--indaco-700);
}

.highlight.giallo {
    background-color: var(--giallo-400);
    color: var(--grigio-25);
}
.highlight.giallo-v2 {
    background-color: var(--giallo-100);
    color: var(--giallo-700);
}

.highlight.arancione-scuro {
    background-color: var(--arancione-scuro-400);
    color: var(--grigio-25);
}
.highlight.arancione-scuro-v2 {
    background-color: var(--arancione-scuro-100);
    color: var(--arancione-scuro-700);
}

.highlight.arancione {
    background-color: var(--arancione-400);
    color: var(--grigio-25);
}
.highlight.arancione-v2 {
    background-color: var(--arancione-100);
    color: var(--arancione-700);
}

.highlight.azzurro {
    background-color: var(--azzurro-400);
    color: var(--grigio-25);
}
.highlight.azzurro-v2 {
    background-color: var(--azzurro-100);
    color: var(--azzurro-700);
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   [ANIMUNDERLINE] - BASE
   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
a.anim-underline::after {
    content: '';
    display: block;
    width: 100%;
    border-bottom-width: 2px;
    border-bottom-style: solid;
    transform: scaleX(0);
    transition: transform .25s ease-in-out;
    transform-origin: 100% 50%;
}
a.anim-underline:hover::after {
    transform: scaleX(1);
    transform-origin: 0% 50%;
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   [ANIMUNDERLINE] - VARIANTI
   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
a.anim-underline.blu {
    color: var(--blu-400);
}
a.anim-underline.blu::after {
    border-bottom-color: var(--blu-400);
}
a.anim-underline.verde::after {
    border-bottom-color: var(--verde-400);
}
a.anim-underline.verde-scuro::after {
    border-bottom-color: var(--verde-scuro-400);
}
a.anim-underline.bianco::after {
    border-bottom-color: var(--grigio-25);
}
   
/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   [SEZIONI] — BASE
   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.section-spacing {
    padding: 80px 0;
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   [SEZIONI] — VARIANTI
   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.sezione-verde {
    border-top: .1875rem solid var(--verde-100);
    border-bottom: .1875rem solid var(--verde-100);
    background-color: var(--verde-200);
    color: var(--verde-700);
}
.sezione-verde h1,
.sezione-verde h2,
.sezione-verde h3,
.sezione-verde h4,
.sezione-verde h5,
.sezione-verde h6,
.sezione-verde p {
    color: var(--verde-700);
}

.sezione-verde-scuro {
    border-top: .1875rem solid var(--verde-scuro-100);
    border-bottom: .1875rem solid var(--verde-scuro-100);
    background-color: var(--verde-scuro-200);
}
.sezione-verde-scuro h1,
.sezione-verde-scuro h2,
.sezione-verde-scuro h3,
.sezione-verde-scuro h4,
.sezione-verde-scuro h5,
.sezione-verde-scuro h6,
.sezione-verde-scuro p {
    color: var(--verde-scuro-700);
}

.sezione-arancione {
    border-top: .1875rem solid var(--arancione-100);
    border-bottom: .1875rem solid var(--arancione-100);
    background-color: var(--arancione-300);
}
.sezione-arancione h1,
.sezione-arancione h2,
.sezione-arancione h3,
.sezione-arancione h4,
.sezione-arancione h5,
.sezione-arancione h6,
.sezione-arancione p {
    color: var(--arancione-700);
}

.sezione-arancione-scuro {
    border-top: .1875rem solid var(--arancione-scuro-50);
    border-bottom: .1875rem solid var(--arancione-scuro-50);
    background-color: var(--arancione-scuro-100);
}
.sezione-arancione-scuro h1,
.sezione-arancione-scuro h2,
.sezione-arancione-scuro h3,
.sezione-arancione-scuro h4,
.sezione-arancione-scuro h5,
.sezione-arancione-scuro h6,
.sezione-arancione-scuro p {
    color: var(--arancione-scuro-700);
}

.sezione-gialla {
    border-top: .1875rem solid var(--giallo-50);
    border-bottom: .1875rem solid var(--giallo-50);
    background-color: var(--giallo-100);
}
.sezione-gialla h1,
.sezione-gialla h2,
.sezione-gialla h3,
.sezione-gialla h4,
.sezione-gialla h5,
.sezione-gialla h6,
.sezione-gialla p {
    color: var(--gialla-700);
}

.sezione-grigia {
    border-top: .0625rem solid var(--blu-100);
    border-bottom: .0625rem solid var(--blu-100);
    background-color: var(--grigio-100);
}

.sezione-blu {
    border-top: .1875rem solid var(--blu-100);
    border-bottom: .1875rem solid var(--blu-100);
    background-color: #C0D1DF; /* TODO: nessuna variabile corrispondente */
}
.sezione-blu h1,
.sezione-blu h2,
.sezione-blu h3,
.sezione-blu h4,
.sezione-blu h5,
.sezione-blu h6,
.sezione-blu cite,
.sezione-blu footer,
.sezione-blu p {
    color: var(--blu-700);
}

.sezione-indaco {
    border-top: .1875rem solid var(--indaco-100);
    border-bottom: .1875rem solid var(--indaco-100);
    background-color: var(--indaco-200);
}
.sezione-indaco h1,
.sezione-indaco h2,
.sezione-indaco h3,
.sezione-indaco h4,
.sezione-indaco h5,
.sezione-indaco h6,
.sezione-indaco cite,
.sezione-indaco footer,
.sezione-indaco p {
    color: var(--indaco-700);
}

.sezione-azzurra {
    border-top: .1875rem solid var(--azzurro-50);
    border-bottom: .1875rem solid var(--azzurro-50);
    background-color: var(--azzurro-100);
}
.sezione-azzurra h1,
.sezione-azzurra h2,
.sezione-azzurra h3,
.sezione-azzurra h4,
.sezione-azzurra h5,
.sezione-azzurra h6,
.sezione-azzurra p {
    color: var(--azzurra-700);
}

.sezione-verde .blockquote-footer {
    color: var(--verde-500);
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   [HEADER] — BASE
   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.background-pattern-dx {
    background-size: auto auto, 1650px auto !important;
}
a.link-text.nav-link {
    font-weight: 500;
}
ul.list-container.navbar-nav {
  padding: 22px 0;
  gap: 6px;
}
ul.list-container.navbar-nav li:first-child {
  margin-left: 0px;
}
@media screen and (min-width: 992px) {
  ul.list-container.navbar-nav {
    padding: 0 4px;
    gap: 12px;
  }
  ul.list-container.navbar-nav li:first-child {
    margin-left: 12px;
  }
}

.footer {
  padding: 44px 16px 16px;
  padding-right: 16px;
  padding-left: 16px;
  background-color: #011d33;
  box-shadow: rgba(13, 57, 92, .4) 0 -3px 0 0;
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   [FOOTER] — BASE
   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.footer h5 {
  color: #dfe7ee;
  font-size: 1rem;
  font-family: 'Poppins'
}

.footer a {
  color: #a1bbd0;
}
.footer a:hover {
  color: #F0F4F7;
}

.footer i:not(.social-icon) {
  margin-right: var(--s-2);
}

.social-button {
    width: 25px;
    height: 25px;
    text-align: center;
    border-radius: 8px;
    text-decoration: none !important;
    transition: background .15s ease;
}

 .social-button:hover {
    background: #14568A;
}

 .social-button:active {
    background: #14568A40;
}

.social-icon {
    color: #a1bbd0;
    align-self: center;
  line-height: 25px;
}

.social-button:hover .social-icon {
    color: #F0F4F7;
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   [BADGE] — BASE (.badge-custom .colore)
   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.badge-custom {
    padding: var(--s-1) var(--s-3);
    border-radius: var(--br-9);
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   [BADGE] - VARIANTI
   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.badge-custom.blu {
    color: var(--blu-600);
    background: var(--blu-100);
    border: 1px solid var(--blu-200);
}
.badge-custom.indaco {
    color: var(--indaco-600);
    background: var(--indaco-100);
    border: 1px solid var(--indaco-200);
}
.badge-custom.verde {
    color: var(--verde-600);
    background: var(--verde-100);
    border: 1px solid var(--verde-200);
}
.badge-custom.corallo {
    color: var(--corallo-600);
    background: var(--corallo-100);
    border: 1px solid var(--corallo-200);
}
.badge-custom.giallo {
    color: var(--giallo-700);
    background: var(--giallo-100);
    border: 1px solid var(--giallo-300);
}
.badge-custom.arancione {
    color: var(--arancione-700);
    background: var(--arancione-100);
    border: 1px solid var(--arancione-200);
}
.badge-custom.arancione-scuro {
    color: var(--arancione-scuro-700);
    background: var(--arancione-scuro-100);
    border: 1px solid var(--arancione-scuro-200);
}
.badge-custom.verde-scuro {
    color: var(--verde-scuro-700);
    background: var(--verde-scuro-100);
    border: 1px solid var(--verde-scuro-200);
}
.badge-custom.azzurro {
    color: var(--azzurro-700);
    background: var(--azzurro-100);
    border: 1px solid var(--azzurro-200);
}
.badge-custom.marrone {
    color: var(--marrone-600);
    background: var(--marrone-100);
    border: 1px solid var(--marrone-200);
}
.badge-custom.viola {
    color: var(--viola-600);
    background: var(--viola-100);
    border: 1px solid var(--viola-200);
}
.badge-custom.turchese {
    color: var(--turchese-700);
    background: var(--turchese-100);
    border: 1px solid var(--turchese-200);
}
.badge-custom.grigio {
    color: var(--grigio-700);
    background: var(--grigio-200);
    border: 1px solid var(--grigio-300);
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   [BOTTONI] — BASE
   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* Bottoni */
.btn-v2 {
    padding: 0 24px;
    height: 44px;
    border-width: 0;
    border-radius: 10px;
    /* vertical-align: baseline; */
    font-weight: 600;
    font-size: 18px;
    font-family: Gabarito, Arial, sans-serif;
    line-height: 44px;
    box-shadow: #ffffff85 0 0 0 2px inset, var(--grigio-300) 0 1px 0 0;
    transition: box-shadow 0.15s ease-in-out, color 0.15s ease-in-out;
    display: block;
    text-wrap: nowrap;
}
.btn-v2:hover {
    box-shadow: #ffffff85 0 0 0 4px inset, var(--grigio-300) 0 1px 0 0;
    color: var(--grigio-25);
}
.btn-v2:active {
    box-shadow: #ffffff85 0 0 0 2px inset, var(--grigio-300) 0 1px 0 0;
    transition: none;
}
.btn-v2:focus {
    box-shadow: #ffffff85 0 0 0 4px inset, var(--grigio-300) 0 1px 0 0;
    transition: none;
}
.btn-v2:focus-visible {
    outline: -webkit-focus-ring-color auto thin;
    outline: revert;
}

a.btn-v2 {
    text-decoration: none;
    color: var(--grigio-25);
}
a.btn-v2:active {
    color: #ffffff85 !important;
}

.btn-txt-large {
    font-size: 20px;
}

.btn-v2.rotondo {
    padding: 0px !important;
    text-align: center;
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   [BOTTONI] — VARIANTI (.btn .btn-v2 .colore)
   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.btn-v2.blu {
    background-color: var(--blu-400);
}

.btn-v2.indaco {
    background-color: var(--indaco-400);
}

.btn-v2.corallo {
    background-color: var(--corallo-400);
}

.btn-v2.verde {
    background-color: var(--verde-400);
}

.btn-v2.giallo {
    background-color: var(--giallo-400);
}

.btn-v2.verde-scuro {
    background-color: var(--verde-scuro-400);
}

.btn-v2.arancione-scuro {
    background-color: var(--arancione-scuro-400);
}

.btn-v2.viola {
    background-color: var(--viola-400);
}

.btn-v2.turchese {
    background-color: var(--turchese-400);
}

.btn-v2.marrone {
    background-color: var(--marrone-400);
}

.btn-v2.arancione {
    background-color: var(--arancione-400);
}

.btn-v2.bianco {
    padding: 0 20px;
    height: 44px;
    border-width: 0;
    border-radius: 10px;
    font-weight: 600;
    font-size: 18px;
    font-family: Gabarito, Arial, sans-serif;
    line-height: 44px;
    box-shadow: var(--grigio-300) 0 0 0 1px inset, var(--grigio-300) 0 2px 0 0;
    transition: box-shadow 0.15s ease-in-out, color 0.15s ease-in-out;
    display: block;
    text-wrap: nowrap;
    background-color: var(--grigio-25);
}
.btn-v2.bianco:hover {
    box-shadow: var(--grigio-300) 0 0 0 3px inset, var(--grigio-300) 0 1px 0 0;
}
.btn-v2.bianco:active {
    box-shadow: var(--grigio-300) 0 0 0 1px inset, var(--grigio-300) 0 1px 0 0;
    transition: none;
}
a.btn-v2.bianco {
    color: var(--grigio-600);
}
a.btn-v2.bianco:active {
    color: #66666678 !important; /* TODO: alpha su grigio-600 non presente come variabile */
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   [CHECKBOX] — BASE
   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.checkbox-wrapper-4 * {
  box-sizing: border-box;
}
.checkbox-wrapper-4 .cbx {
  -webkit-user-select: none;
  user-select: none;
  cursor: pointer;
  padding: 6px 8px 6px 0px;
  border-radius: 6px;
  overflow: hidden;
  transition: all 0.2s ease;
  display: inline-block;
}
.checkbox-wrapper-4 .cbx:not(:last-child) {
  margin-right: 6px;
}
.checkbox-wrapper-4 .cbx span {
  float: left;
  vertical-align: middle;
  transform: translate3d(0, 0, 0);
}
.checkbox-wrapper-4 .cbx span:first-child {
  position: relative;
  width: 18px;
  height: 18px;
  border-radius: 4px;
  transform: scale(1);
  border: 1px solid;
  transition: all 0.2s ease;
  box-shadow: 0 1px 1px rgba(0, 16, 75, 0.05);
}
.checkbox-wrapper-4 .cbx span:first-child svg {
  position: absolute;
  top: 3px;
  left: 2px;
  fill: none;
  stroke: #fff;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-dasharray: 16px;
  stroke-dashoffset: 16px;
  transition: all 0.3s ease;
  transition-delay: 0.1s;
  transform: translate3d(0, 0, 0);
}
.checkbox-wrapper-4 .cbx span:last-child {
  padding-left: 8px;
  line-height: 18px;
}
.checkbox-wrapper-4 .cbx:hover span:first-child {
  border-color: #14568A;
}
.checkbox-wrapper-4 .inp-cbx {
  position: absolute;
  visibility: hidden;
}
.checkbox-wrapper-4 .inp-cbx:checked + .cbx span:first-child {
  background: #14568A;
  border-color: #14568A;
  animation: wave-4 0.4s ease;
}
.checkbox-wrapper-4 .inp-cbx:checked + .cbx span:first-child svg {
  stroke-dashoffset: 0;
}
.checkbox-wrapper-4 .inline-svg {
  position: absolute;
  width: 0;
  height: 0;
  pointer-events: none;
  user-select: none;
}
.cbx-row {
  align-self: flex-start;
  display: flex !important;
}
.cbx-min-size {
  min-width: 18px;
  min-height: 18px;
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   [CHECKBOX] — VARIANTI
   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.c-verde .checkbox-wrapper-4 .cbx span:first-child {
  border-color: var(--verde-400);
}
.c-verde .checkbox-wrapper-4 .cbx:hover span:first-child {
  border-color: var(--verde-400);
}
.c-verde .checkbox-wrapper-4 .inp-cbx:checked + .cbx span:first-child {
  background: var(--verde-400);
  border-color: var(--verde-400);
}

.c-blu .checkbox-wrapper-4 .cbx span:first-child {
  border-color: var(--blu-400);
}
.c-blu .checkbox-wrapper-4 .cbx:hover span:first-child {
  border-color: var(--blu-400);
}
.c-blu .checkbox-wrapper-4 .inp-cbx:checked + .cbx span:first-child {
  background: var(--blu-400);
  border-color: var(--blu-400);
}

.c-indaco .checkbox-wrapper-4 .cbx span:first-child {
  border-color: var(--indaco-400);
}
.c-indaco .checkbox-wrapper-4 .cbx:hover span:first-child {
  border-color: var(--indaco-400);
}
.c-indaco .checkbox-wrapper-4 .inp-cbx:checked + .cbx span:first-child {
  background: var(--indaco-400);
  border-color: var(--indaco-400);
}


/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   [CARD] — BASE (.card .card-md .c-colore)
   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.card-lg {
    border-radius: 44px;
}

.card-md {
    border-radius: 22px;
}

.card-hover:hover {
    transform: translateY(-5px);
    transition: all 0.3s ease;
    box-shadow: 0 8px 25px rgba(0,0,0,0.15);
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   [CARD] — VARIANTI
   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.c-verde {
    border: .0625rem solid var(--verde-300);
    background-color: var(--verde-100);
}
.c-verde h1,
.c-verde h2,
.c-verde h3,
.c-verde h4,
.c-verde h5,
.c-verde h6,
.c-verde p {
    color: var(--verde-700);
}
.c-verde i:not(.btn i, a.anim-underline i) {
    color: var(--verde-400);
}
.c-verde a:not(.btn) {
    color: var(--verde-500);
}
.c-verde button.btn-link {
    color: var(--verde-500);
}

.c-verde-scuro {
    border: .0625rem solid var(--verde-scuro-300);
    background-color: var(--verde-scuro-100);
}
.c-verde-scuro h1,
.c-verde-scuro h2,
.c-verde-scuro h3,
.c-verde-scuro h4,
.c-verde-scuro h5,
.c-verde-scuro h6,
.c-verde-scuro p {
    color: var(--verde-scuro-700);
}
.c-verde-scuro i:not(.btn i, a.anim-underline i) {
    color: var(--verde-scuro-400);
}

.c-indaco {
    border: .0625rem solid var(--indaco-300);
    background-color: var(--indaco-100);
}
.c-indaco h1,
.c-indaco h2,
.c-indaco h3,
.c-indaco h4,
.c-indaco h5,
.c-indaco h6,
.c-indaco p {
    color: var(--indaco-700);
}
.c-indaco i:not(.btn i, a.anim-underline i) {
    color: var(--indaco-400);
}
.c-indaco a:not(.btn) {
    color: var(--indaco-500);
}
.c-indaco button.btn-link {
    color: var(--indaco-500);
}

.c-blu {
    border: .0625rem solid var(--blu-200);
    background-color: var(--blu-100);
}
.c-blu h1,
.c-blu h2,
.c-blu h3,
.c-blu h4,
.c-blu h5,
.c-blu h6,
.c-blu p {
    color: var(--blu-700);
}
.c-blu i:not(.btn i, a.anim-underline i) {
    color: var(--blu-400);
}
.c-blu a:not(.btn) {
    color: var(--blu-400);
}
.c-blu button.btn-link {
    color: var(--blu-500);
}

.c-giallo {
    border: .0625rem solid var(--giallo-400);
    background-color: var(--giallo-50);
}
.c-giallo h1,
.c-giallo h2,
.c-giallo h3,
.c-giallo h4,
.c-giallo h5,
.c-giallo h6,
.c-giallo p {
    color: var(--giallo-700);
}
.c-giallo i:not(.btn i, a.anim-underline i) {
    color: var(--giallo-400);
}

.c-corallo {
    border: .0625rem solid #FF6A6A; /* TODO: nessuna variabile corrispondente esatta */
    background-color: #FFDADA;      /* TODO: nessuna variabile corrispondente */
}
.c-corallo h1,
.c-corallo h2,
.c-corallo h3,
.c-corallo h4,
.c-corallo h5,
.c-corallo h6,
.c-corallo p {
    color: var(--corallo-700);
}
.c-corallo i:not(.btn i, a.anim-underline i) {
    color: var(--corallo-400);
}

.c-arancione {
    border: .0625rem solid var(--arancione-400);
    background-color: var(--arancione-100);
}
.c-arancione h1,
.c-arancione h2,
.c-arancione h3,
.c-arancione h4,
.c-arancione h5,
.c-arancione h6,
.c-arancione p {
    color: var(--arancione-700);
}
.c-arancione i:not(.btn i, a.anim-underline i) {
    color: var(--arancione-400);
}

.c-arancione-scuro {
    border: .0625rem solid var(--arancione-scuro-400);
    background-color: var(--arancione-scuro-50);
}
.c-arancione-scuro h1,
.c-arancione-scuro h2,
.c-arancione-scuro h3,
.c-arancione-scuro h4,
.c-arancione-scuro h5,
.c-arancione-scuro h6,
.c-arancione-scuro p {
    color: var(--arancione-scuro-700);
}
.c-arancione-scuro i:not(.btn i, a.anim-underline i) {
    color: var(--arancione-scuro-400);
}

.c-azzurro {
    border: .0625rem solid var(--azzurro-300);
    background-color: var(--azzurro-50);
}
.c-azzurro h1,
.c-azzurro h2,
.c-azzurro h3,
.c-azzurro h4,
.c-azzurro h5,
.c-azzurro h6,
.c-azzurro p {
    color: var(--azzurro-700);
}
.c-azzurro i:not(.btn i, a.anim-underline i) {
    color: var(--azzurro-400);
}

.c-bianco {
    border: .0625rem solid var(--grigio-300);
    background-color: var(--grigio-25);
    color: var(--grigio-900);
}
.c-bianco i:not(.btn i, a.anim-underline i) {
    color: var(--grigio-400);
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   [CARD TESTIMONIAL] — BASE
   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.testimonial-stars {
    color: var(--giallo-400);
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   [TABLE] — BASE
   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.table-comparison .fa-check {
    color: var(--verde-scuro-400);
}

.table-comparison .fa-times {
    color: var(--corallo-400);
}

.table-comparison .fa-exclamation-triangle {
    color: var(--giallo-400);
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   [TABS] — BASE
   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
a.link-button.tabslink {
  display: inline-flex;
  padding: 10px 24px;
  width: 100%;
  text-align: center;
  text-decoration: none;
  font-weight: 500;
  font-size: 16px;
  cursor: pointer;
  font-family: 'Poppins', sans-serif;
  justify-content: center;
  align-items: center;
  background-color: var(--grigio-25);
}
.tabscontent {
  position: relative;
  display: none;
  overflow: hidden;
  background-color: var(--grigio-25);
  border-radius: var(--br-4);
}
.tabs-buttons {
  position: relative;
  display: flex;
  overflow: hidden;
  border-radius: var(--br-4);
  gap: 2px;
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   [TABS] — VARIANTI
   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.c-blu a.link-button.tabslink {
    color: var(--blu-600);
}
.c-blu a.link-button.tabslink:hover {
    background-color: var(--blu-50);
}
.c-blu .tabscontent {
    border: .0625rem solid var(--blu-50);
}
.c-blu .tabs-buttons {
    border: .125rem solid var(--blu-200);
    background: var(--blu-200);
}
/* openPage('nomePagina', this, 'var(--blu-50)', 'var(--blu-600)', 'var(--blu-400) 0px -3px 0px 0px inset')" */

.c-indaco a.link-button.tabslink {
    color: var(--indaco-600);
}
.c-indaco a.link-button.tabslink:hover {
    background-color: var(--indaco-50);
}
.c-indaco .tabscontent {
    border: .0625rem solid var(--indaco-50);
}
.c-indaco .tabs-buttons {
    border: .125rem solid var(--indaco-200);
    background: var(--indaco-200);
}
/* openPage('nomePagina', this, 'var(--indaco-50)', 'var(--indaco-600)', 'var(--indaco-400) 0px -3px 0px 0px inset')" */


/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   [CAROSELLO LOGHI] - BASE
   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.carousel {
    margin: 0 auto;
    width: 100%;
    position: relative;
}
.carousel-slides {
    display: flex;
    list-style: none;
    gap: 4px;
}
.carousel-slide {
    position: relative;
    min-width: 0;
    flex-shrink: 0;
    height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    padding: 28px;
    filter: grayscale(1);
}
.carousel-item-img {
    width: 180px;
    height: auto;
}
.carousel-slide.blusky .carousel-item-img {
    filter: grayscale(1) invert(1);
}

#loghiClienti::before,
#loghiClienti::after {
    content: '';
    display: block;
    position: absolute;
    width: 84px;
    height: 100%;
    background: linear-gradient(90deg, rgba(247, 247, 247, 1) 5%, rgba(247, 247, 247, 0) 100%);
    top: 0;
    z-index: 1;
}
#loghiClienti::before {
    left: 0;
}
#loghiClienti::after {
    right: 0;
    background: linear-gradient(90deg, rgba(247, 247, 247, 0) 0%, rgba(247, 247, 247, 1) 95%);
}

@media (min-width: 768px) {
    #loghiClienti::before,
    #loghiClienti::after {
        width: 180px;
    }
    .carousel-slides {
        gap: 22px;
    }
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   [CAROSELLO LOGHI TESTATE] - BASE
   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.logo-testata {
  filter: opacity(0.6);
  transition: filter 0.15s ease-in-out, color 0.15s ease-in-out;
}
.logo-testata:hover {
  filter: opacity(1);
  transition: filter 0.15s ease-in-out, color 0.15s ease-in-out;
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   [FORM] — BASE
   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.input-form-small {
    padding: 8px 24px;
    border: none;
    width: 100%;
    border-radius: 20px;
    font-size: 14px;
    font-family: 'Poppins';
    text-overflow: ellipsis;
}
  
/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   [FORM] — VARIANTI
   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.input-bianco {
    background-color: var(--grigio-25);
}
.input-bianco:hover {
    background-color: var(--grigio-25);
    box-shadow: rgba(0, 0, 0, .1) 0 0 20px 0;
    -webkit-transition-duration: .3s;
    -moz-transition-duration: .3s;
    -o-transition-duration: .3s;
    transition-duration: .3s;
}

.input-bianco-v2 {
    background-color: var(--grigio-100);
    border: 1px solid var(--grigio-300) !important;
}
.input-bianco-v2:hover {
    background-color: var(--grigio-100);
    border: 1px solid var(--grigio-300) !important;
    box-shadow: rgba(0, 0, 0, .1) 0 0 20px 0;
    -webkit-transition-duration: .3s;
    -moz-transition-duration: .3s;
    -o-transition-duration: .3s;
    transition-duration: .3s;
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   [UTILITY] — BASE
   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.elevazione-z0 {
    box-shadow: rgba(129, 133, 238, .15) 0 2px 4px 0 inset;
}
.elevazione-z1 {
    box-shadow: 0px 0px 2px 0px rgba(12, 12, 13, 0.10), 0px 1px 2px 0px rgba(12, 12, 13, 0.10);
}
.elevazione-z2 {
    box-shadow: 0px 0px 2px 0px rgba(129, 133, 238, .10), 0px 2px 4px 0px rgba(129, 133, 238, .30);
}

.gradient-background {
    color: #fff;
    background: linear-gradient(300deg,var(--verde-400),var(--blu-400),var(--indaco-400));
    background-size: 100% 100%;
}
.gradient-background-light {
    background: linear-gradient(300deg,var(--verde-100),var(--blu-100),var(--indaco-100));
    background-size: 100% 100%;
}
.gradient-background-dark {
    color: #fff;
    background: linear-gradient(300deg,var(--verde-600),var(--blu-600),var(--indaco-600));
    background-size: 100% 100%;
}