:root {
  --text-color: #000;
  --bg-color: #FFFFFF;
  --adv-bg-color: #D7DEE5;
  --desktop-max-width: 600px;
  --padding-laterale: 12px;

  --colore-bianco: #FFFFFF;
  --colore-verde: #41A664;
  --colore-viola: #8750A1;
  --colore-giallo: #FBE202;
  --colore-rosa: #FE61A4;
  --colore-neutro: #E6E6E6;
  --colore-azzurro: #27b9b6;
  --colore-nero: #000000;
  --colore-arancione: #FF8901;

  --spaziatura: 88px;

  --device: desktop;
}

* {
  box-sizing: border-box;
}

*:focus {
  outline: none;
}

html,
body {
  scroll-behavior: smooth;
}

html {
  font-size: 18px;
}

/* 
  font-family: "SoleSans", Arial, Helvetica, sans-serif;
  font-family: "sole_text", Georgia, Times, "Times New Roman", serif;
  font-family: "sole_headline", Georgia, Times, "Times New Roman", Serif;
  font-family: "sole_display", Georgia, Times, "Times New Roman", serif;

  Roc Grotesk Regular
  font-family: "roc-grotesk", sans-serif;
  font-weight: 400;
  font-style: normal;

  Roc Grotesk Medium
  font-family: "roc-grotesk-wide", sans-serif;
  font-weight: 500;

  font-family: "roc-grotesk-compressed", sans-serif;
  font-weight: 400;
  font-style: normal;

  font-family: "roc-grotesk-condensed", sans-serif;
  font-weight: 400;
  font-style: normal;

*/

body {
  font-family: "SoleSans", Arial, Helvetica, sans-serif;
  background-color: var(--bg-color);
  padding: 0;
  margin: 0;
  color: var(--text-color);
  -webkit-transition: all 0.35s;
  transition: all 0.35s;
  /* overflow-x: hidden; */
}

div {
  width: 100%;
}

.container_over_skin {
  width: 100%;
  z-index: 5;
  background-color: var(--bg-color);
  /* overflow-x: hidden; */
}

.container_over_skin>* {
  z-index: 5;
  background-color: var(--bg-color);
}

.shrinkable,
.backgroundAdv {
  background-color: var(--bg-color) !important;
  position: relative;
  z-index: 1;
}

/* TOP BAR */

#header-fisso {
  z-index: 99999 !important;
}

.backgroundAdv #header-fisso {
  margin-top: 150px !important;
}

.top-bar {
  height: 50px !important;
}

.faN {
  width: 30px !important;
  height: 30px !important;
}

.padding-sezione{
  padding-top: var(--spaziatura);
  padding-bottom: var(--spaziatura);
}

.padding-sezione + .padding-sezione{
  padding-top: 0;
}

.sfondo-bianco, .sfondo-bianco h3   { background-color: var(--colore-bianco);  }
.sfondo-verde, .sfondo-verde h3     { background-color: var(--colore-verde);  }
.sfondo-viola, .sfondo-viola h3     { background-color: var(--colore-viola);  }
.sfondo-giallo, .sfondo-giallo h3   { background-color: var(--colore-giallo); }
.sfondo-rosa, .sfondo-rosa h3       { background-color: var(--colore-rosa);   }
.sfondo-neutro, .sfondo-neutro h3   { background-color: var(--colore-neutro); }
.sfondo-nero, .sfondo-nero h3       { background-color: var(--colore-nero);   }
.sfondo-arancione, .sfondo-arancione h3   { background-color: var(--colore-arancione); }

.underline-verde u    { text-decoration-color: var(--colore-verde);     }
.underline-viola u    { text-decoration-color: var(--colore-viola);     }
.underline-giallo u   { text-decoration-color: var(--colore-giallo);    }
.underline-rosa u     { text-decoration-color: var(--colore-rosa);      }
.underline-azzurro u  { text-decoration-color: var(--colore-azzurro);   }
.underline-neutro u   { text-decoration-color: var(--colore-neutro);    }
.underline-nero u     { text-decoration-color: var(--colore-nero);      }

.underline-5px u {
  text-decoration-thickness: 8px;
}

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

/* HEADER */

header {
  width: 100%;
  position: relative;
}

.hader_bg_gradient {
  width: 100%;
  height: 480px;
  background: linear-gradient(to bottom,
      #D9D9D900 0%,
      #2B2B2B80 50%,
      #2B2B2BD9 85%);
  z-index: 10;
  position: absolute;
  top: 0;
  left: 0;
}

#header_cnt {
  padding-top: 27vh;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  height: 100vh;
}

.occhiello {
  color: #F5F5F5;
  font-family: "SoleSans", Arial, Helvetica, sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 00;
  line-height: normal;
  text-align: center;
  padding: 8px 10px 0;
}

h1 {
  width: 100%;
  font-family: "roc-grotesk-wide", sans-serif;
  font-style: normal;
  margin-block-start: 0.05em;
  margin-block-end: 0.1em;
  font-weight: 600;
  font-size: 100px;
  line-height: 98px;
  text-align: center;
  color: #F5F5F5;
  text-transform: uppercase;
}

.titolo-paragrafo{
  font-family: "roc-grotesk-wide", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 32px;
  line-height: 36px;
  letter-spacing: 0px;
  text-align: center;
}

.titolo-paragrafo + p,
.titolo-paragrafo + .chart_abstract {
  margin-top: 28px!important;
}

p + .titolo-paragrafo {
  margin-top: var(--spaziatura)!important;
}

.sommario {
  font-family: "roc-grotesk-wide", sans-serif;
  font-style: normal;
  font-weight: 500;
  font-size: 1.2rem;
  line-height: normal;
  color: #FFF;
  text-align: center;
  text-transform: uppercase;
}

.firma_data {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
}

.firma {
  font-family: "SoleSans", Arial, Helvetica, sans-serif;
  font-style: italic;
  font-weight: 400;
  font-size: 1rem;
  line-height: normal;
  margin-top: 50px;
  margin-bottom: 16px;
}

.data {
  color: rgba(0, 0, 0, 0.40);
  font-size: .8rem;
  padding-top: 5px;
}

.firma_data svg {
  margin-left: 3px;
  margin-right: 3px;
}

/* SCHERMATA DUE COLONNE CON MPU */
.column_right {
  width: 320px;
  background-color: var(--adv-bg-color);
  position: absolute;
  top: 0;
  right: -320px;
  display: flex;
  flex-direction: column;
  align-items: center;
  height: 100%;
}

.box_adv_mpu_top {
  position: sticky;
  top: 50px;
  padding-top: 10px;
  padding-bottom: 10px;
}



/* SECTIONS */

section {
  width: 100%;
  display: flex;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative;
}

.section-viewport{
  height: calc( 100vh - 50px );
}

.box_text_cnt {
  margin: auto;
  width: 100%;
  max-width: var(--desktop-max-width);
  padding: 0 var(--padding-laterale);
  position: relative;
}



#second_section {
  padding-top: 50px;
  margin-bottom: var(--spaziatura);
}


.box_text {
  width: 100%;
}


.box_text p {
  font-family: "SoleSans", Arial, Helvetica, sans-serif;
  font-style: normal;
  font-weight: 400;
  text-align: left;
  font-size: 18px;
  line-height: 28px;
  letter-spacing: 0px;
  margin-bottom: 0;
}

.box_text > p:first-of-type {
  margin-top: 0;
}

.box_text p.author {
  font-style: italic;
}


p a:link {
  color: var(--text-color);
  font-weight: 600;
  text-decoration: underline;
}

p a:visited {
  color: var(--text-color);
  font-weight: 600;
  text-decoration: underline;
}

p a:hover {
  color: var(--text-color);
  font-weight: 600;
  text-decoration: underline;
}

p a:active {
  color: var(--text-color);
  font-weight: 600;
  text-decoration: underline;
}

h3{
  font-family: "roc-grotesk-wide", sans-serif;
  font-weight: 600;
  font-size: 62px;
  line-height: 85px;
  letter-spacing: 0%;
  margin: 70px auto;
  margin-block-start: 36px;
  margin-block-end: 36px;
}


.h3-source{
  font-family: "roc-grotesk-wide", sans-serif;
  font-weight: 400;
  font-size: 32px;
  line-height: 100%;
  letter-spacing: 0%;
  margin-top: .3em;
}

.box_text ul {
  padding-inline-start: 35px;
  list-style: none;
}

.box_text li {
  font-family: "SoleSans", Arial, Helvetica, sans-serif;
  font-size: 1rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.4rem;
  text-align: left;
  padding-bottom: 15px;
  position: relative;
}

.box_text li::before {
  content: url('../img/list-icon.svg');
  position: absolute;
  top: 5px;
  left: -35px;
  width: 12px;
  height: 12px;
}

.section_title {
  width: 100%;
  padding: 0 0 10px;
}

.section_title h2 {
  color: var(--text-color);
  font-family: "sole_headline", Georgia, Times, "Times New Roman", Serif;
  font-size: 1.9rem;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  width: 100%;
  text-align: left;
  margin: auto;
}


.box_quote {
  max-width: var(--desktop-max-width);
  padding-left: var(--padding-laterale);
  padding-right: var(--padding-laterale);
  margin: 50px auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.quote_text {
  color: var(--text-color);
  font-family: "SoleSans", Arial, Helvetica, sans-serif;
  text-align: center;
  font-size: 1.4rem;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  margin: 10px auto;
}

.quote_author {
  color: var(--text-color);
  font-family: "SoleSans", Arial, Helvetica, sans-serif;
  text-align: center;
  font-size: .8rem;
  font-style: italic;
  font-weight: 700;
  line-height: normal;
}

.quote_author span {
  color: #00000066;
}

.chart_subtitle {
  padding: 0 0 16px 0;
  margin: auto;
  color: var(--text-color);
  font-family: "SoleSans", Arial, Helvetica, sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  text-align: center;
}

.chart_title,
.cani-grafico1-titolo {
  font-family: "roc-grotesk-wide", sans-serif;
  font-weight: 500;
  font-style: Wide Medium;
  font-size: 32px;

  line-height: 36px;
  letter-spacing: 0px;
  text-align: center;

  padding: 0 0 16px 0;
  margin: auto;
}

.chart_abstract,
.cani-grafico1-abstract {
  color: var(--text-color);
  font-family: "roc-grotesk", sans-serif;
  text-align: left;
  padding: 0 0 24px 0;
  margin: auto;
  text-align: center;

  font-weight: 200;
  font-size: 22px;
  line-height: 100%;
  letter-spacing: 0%;
}

.chart_region_name_italia {
  color: var(--text-color);
  text-align: center;
  font-family: "SoleSans", Arial, Helvetica, sans-serif;
  font-size: 1.2rem;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  padding: 20px 0;
}


.chart_source,
.cani-grafico1-titolazione-dida {
  font-family: "SoleSans", Arial, Helvetica, sans-serif;
  font-weight: 500;
  font-size: 13px;
  line-height: 100%;
  letter-spacing: 0%;
  text-align: center;
  width: 100%;
  margin-top: 24px;
}

.box-chart-cnt{
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 36px;
  max-width: 1150px;
  border-radius: 50px;
  position: relative;
}

.box-chart .chart_title,
.box-chart .chart_subtitle,
.box-chart .chart_abstract {
  padding-top: 0;
  padding-bottom: 0;
}

.box_text_cnt + .box-chart {
  margin-top: 40px;
}

.box_text_cnt + .chart_title {
  margin-top: 70px;
}

.box-chart{
  width: 100%;
  max-width: 1230px;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-left: 32px;
  padding-right: 32px;
}

.box-chart .img-absolute {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.chart_title_absolute {
  position: absolute;
  top: 0;
  left: 0;
  width: 50%;
}

.chart_title_absolute .titolo-paragrafo{
  text-align: left;
  padding-top: 0;
  margin-bottom: 16px;
}

.chart_title_absolute .chart_abstract{
  text-align: left;
  margin-bottom: 16px;
}
.box-chart:not(.no-larghezza) > .box-chart-img {
    width: 100%;
}

.box-chart-img {
    display: flex;
    justify-content: center;
    align-items: center;
}

.box-chart-corda {
  position: absolute;
  bottom: 46px;
}

.chart_source + .box_text_cnt {
  margin-top: var(--spaziatura);
} 

.delimiter {
  text-align: center;
  padding: 20px 0;
}

.citazione-cnt{
  width: 100%;
  padding: 36px;
  min-height: 100vh;
}

.citazione-pin{
  position: relative;
  width: 100%;
  height: 300vh;
}

.citazione-cnt h3{
  width: 100%;
  max-width: 1020px;
  height: 100vh;
  display: flex;
  align-items: center;
}

.citazione-cnt:not(.citazione-pin){
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  min-height: auto;
  padding-top: 0;
  padding-bottom: 0;
  margin-top: var(--spaziatura);
  margin-bottom: var(--spaziatura);
}

.citazione-cnt:not(.citazione-pin) h3{
  height: auto;
  margin-block-start: 0;
  margin-block-end: 0;
}


.h3-sticky {
  position: sticky;
  top: 0;
}

.h3-absolute {
  position: absolute;
  bottom:0;
  width: 100%;
  left: 0;
  z-index: 100;
  left: 50%;
  transform: translateX(-50%);
  padding-left: 32px;
  padding-right: 32px;
}

/* .h3-absolute::before {
    content: "";
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0;
    border-top: 3px solid rgba(0,0,0,.2);
    position: absolute;
    z-index: -1;
} */

.loader {
  width: 40px;
  height: 40px;
  border: 4px solid rgb(236, 233, 231);
  border-top-color: rgb(56, 167, 255);
  border-radius: 50%;
  animation: spin 1.5s linear infinite;
  margin: auto;
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

.img-scontornata {
  position: absolute;
  transform: translateX(-50%);
  left: 50%;
}

.img-scontornata-01{
  top:-280px;
}
.img-scontornata-01-cnt{
  margin-top: 190px;
}

.img-scontornata-02{
  bottom:-215px;
}
.img-scontornata-02-cnt{
  padding-bottom: 100px;
}
.img-scontornata-02-cnt .citazione-cnt {
    padding-bottom: 120px;
}
.img-scontornata-02-cnt .h3-absolute {
    bottom: 120px;
}

.img-scontornata-03 {
    top: -162px;
    z-index: 1;
}

.img-scontornata-03-cnt{
  margin-top: 122px;
}

.scroll-mobile {
  display: block;
  overflow-x: auto;
  -ms-overflow-style: none;  /* Internet Explorer 10+ */
  scrollbar-width: none;  /* Firefox, Safari 18.2+, Chromium 121+ */
}

.scroll-mobile img {
    height: 370px;
    aspect-ratio: 947 / 444;
    width: unset!important;
}

.scroll-mobile::-webkit-scrollbar { 
    display: none;  /* Older Safari and Chromium */
}

.img-scontornata-03-mobile-cnt{
  position: absolute;
  overflow: hidden;
  width: 100%;
  height: 250px;
  top: -162px;
  z-index: 1;
  left: 0;
}


.img-scontornata-03-mobile {
    position: absolute;
    top: -37px;
}

/* TOGGLE MAPPE */


.toggle {
  position: relative;
  width: 200px;
  height: 40px;
  background: #FFF;
  border-radius: 25px;
  box-shadow: 2px 2px 2px 0 rgba(0, 0, 0, 0.25) inset;
  display: flex;
  padding: 4px;
  box-sizing: border-box;
  font-family: sans-serif;
  cursor: pointer;
}


.toggle-thumb {
  position: absolute;
  top: 4px;
  left: 4px;
  width: calc(50% - 4px);
  height: calc(100% - 8px);
  background: #38A7FF;
  border-radius: 25px;
  transition: transform 0.3s ease;
  cursor: pointer;
}

.toggle-option {
  flex: 1;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #00000046;
  transition: color 0.3s ease;
  text-align: center;
  font-family: "SoleSans", Arial, Helvetica, sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  text-transform: capitalize;
  cursor: pointer;
}

.toggle-option.active {
  color: #FFF;
  font-weight: 600;
}


/* NUMERONI */

.box_numerone {
  width: 580px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  position: relative;
  border-top: 1px solid #0F0F0F;
  border-bottom: 1px solid #0F0F0F;
  margin-top: 50px;
}

.num_data {
  width: fit-content;
  position: absolute;
  top: -18px;
  left: 0;
  background-color: #FFF;
  padding: 5px 15px 5px 0;
  color: #0F0F0F;
  font-family: "SoleSans", Arial, Helvetica, sans-serif;
  font-size: 16px;
  font-style: italic;
  font-weight: 700;
  line-height: normal;
  text-align: left;
}

.num_testi {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: 20px 0 20px 20px;
}


.num_soggetto {
  color: var(--text-color);
  font-family: "SoleSans", Arial, Helvetica, sans-serif;
  font-size: 1.2rem;
  font-style: normal;
  font-weight: 800;
  line-height: normal;
  padding: 5px 0;
}

.num_parametro {
  color: var(--text-color);
  font-family: "SoleSans", Arial, Helvetica, sans-serif;
  font-size: .8rem;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  text-transform: uppercase;
}

.num_unita_misura {
  color: var(--text-color);
  font-family: "SoleSans", Arial, Helvetica, sans-serif;
  font-size: .7rem;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
}

.numerone {
  text-align: center;
  font-family: "SoleSans", Arial, Helvetica, sans-serif;
  font-size: 70px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  position: relative;
  text-align: right;
  padding-right: 60px;
}

.numerone::after {
  position: absolute;
  top: -5px;
  right: 20px;
}

.num_deficit {
  color: #FF5E00;
}

.num_surplus {
  color: #38A7FF;
}

.numerone::after {
  position: absolute;
  top: -5px;
  right: 20px;
}

.num_deficit::after {
  content: url(../img/num_freccia_giu.svg);
}

.num_surplus::after {
  content: url(../img/num_freccia_su.svg);
}



/* COMMENTO AVANZI */

.box_commento {
  border-top: 1px solid #0F0F0F;
  /* border-bottom: 1px solid #0F0F0F; */
  position: relative;
  width: 580px;
  margin-bottom: 50px;
}

.box_commento_intestazione {
  width: fit-content;
  position: absolute;
  top: -18px;
  left: 0;
  background-color: #FFF;
  padding: 5px 15px 5px 0;
  color: #0F0F0F;
  font-family: "SoleSans", Arial, Helvetica, sans-serif;
  font-size: 18px;
  font-style: italic;
  font-weight: 700;
  line-height: normal;
}


.box_commento p {
  color: #0F0F0F;
  font-family: "SoleSans", Arial, Helvetica, sans-serif;
  font-size: .9rem;
  font-style: normal;
  font-weight: 400;
  line-height: 28px;
  text-align: left;
}

p.box_commento_data {
  color: #0F0F0F;
  font-family: "SoleSans", Arial, Helvetica, sans-serif;
  font-size: 16px;
  font-style: italic;
  font-weight: 400;
  line-height: normal;
}

p.box_commento_firma {
  /* width: fit-content;
  position: absolute;
  bottom: -15px;
  right: 0;
  background-color: #FFF;
  padding: 5px 0px 5px 15px; */
  color: #0F0F0F;
  font-family: "SoleSans", Arial, Helvetica, sans-serif;
  font-size: 16px;
  font-style: italic;
  font-weight: 700;
  line-height: normal;
}

/*--- FOOTER ----*/

aside {
  padding-top: 32px;
  padding-bottom: 32px;
}


#backtop {
  position: fixed;
  left: calc(50vw + 450px);
  bottom: 0;
  width: 50px;
  z-index: 10;
  text-align: right;
  display: block;
  opacity: 0;
  transition: opacity 1s ease-in-out;
  background-color: transparent;
}

body:not(.backgroundAdv) #backtop {
  right: 10px;
}

#backtop img {
  cursor: pointer;
  width: 30px;
  max-width: 30px;
  height: auto;
  margin-right: 10px;
  padding-bottom: 10px;
}

.riferimenti_bibliografici {
  width: 100%;
  max-width: var(--desktop-max-width);
  margin: auto;
  border-top: 2px solid #0f0f0f;
  padding: 20px 0 30px;
}

.riferimenti_bibliografici a:link,
.riferimenti_bibliografici a:visited,
.riferimenti_bibliografici a:hover,
.riferimenti_bibliografici a:active {
  color: var(--text-color);
}


.box_credits {
  width: 100%;
  max-width: var(--desktop-max-width);
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
  margin: auto;
  padding: 0;
  font-family: "roc-grotesk", sans-serif;
  font-weight: 400;
  font-size: 12px;
  line-height: 32px;
  letter-spacing: 10%;
  text-align: center;
}

/* .box_credits strong {
  text-transform: uppercase;
} */

/* .box_credits .crediti {
  display: flex;
  flex-direction: column;
} */


.logo_cnt {
  margin-top: 15px;
  text-align: left;
}

.logo_cnt img {
  width: 80px;
  height: auto;
}


footer {
  z-index: 20;
}

#footer_div {
  font-family: "SoleSans", Arial, Helvetica, sans-serif;
  line-height: normal;
  background-color: #19171a;
  color: #a19e9e;
  font-size: .7rem;
  text-transform: none;
  padding: 30px 100px;
  text-align: center;
}

.mobile {
  display: none;
}


/* ADV */

#adv-MaxTicker {
  margin: auto;
  padding-top: 20px;
  padding-bottom: 20px;
  text-align: center;
  width: 100%;
  background-color: #0004D4!important;
  display: flex;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
}

#adv-MaxTicker div {
  width: inherit;
}

#div-gpt-ad-MaxTicker>div {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: auto;
}

#div-gpt-ad-MaxTicker iframe {
  width: revert-layer !important;
  height: revert-layer !important;
}

#bordo_adv {
  padding: 10px;
}

#ad-Mpu_Top {
  display: flex;
  justify-content: center;
  width: 320px;
}

#Mpu_Top {
  text-align: center;
  width: fit-content;
}

/* #ad-Mpu_Top div {
  width: inherit !important;
} */

#div-gpt-ad-MPU_Top>div {
  display: flex !important;
  justify-content: center;
}

#ad-Mpu_Top iframe {
  width: revert-layer !important;
  height: revert-layer !important;
}

.advertising {
  display: flex;
  justify-content: center;
}

.backgroundAdv {
  background-attachment: fixed !important;
}

.backgroundAdv #div-gpt-ad-Top {
  margin-top: -150px;
}



#cani-grafico1-titolazione-cnt{
				display: flex;
				flex-direction: column;
				width: 100%;
				height: calc(100vh - 50px);
				position: absolute;
				top: 50px;
				left: 0;
			}
			#cani-grafico1-titolazione{
				flex: 1;
				width: 100%;
				display: flex;
				flex-direction: column;
				align-items: center;
				justify-content: center;
			}
			#cani-grafico1-titolazione-ingombro{
				flex-shrink: 0;
				width: 100%;
				height: 380px;
			}
			#cani-grafico1-titolazione-dida{
				flex: 1;
				width: 100%;
				display: flex;
				justify-content: center;
				align-items: flex-start;
				margin-top: 50px;
			}
			#grafico-cani-skip-cnt{
				position: absolute;
				bottom: 36px;
				width: 100%;
				display: flex;
				justify-content: center;
				z-index: 999;
			}

			#grafico-cani-skip{
				border-radius: 50%;
				cursor: pointer;
				transition: all 0.25s ease-out;
				flex-shrink: 0;
				width: 30px;
				height: 30px;
			}

			#grafico-cani-skip img{
				width: 100%;
			}

			#grafico-cani-skip:hover{
				background-color: rgba(255,255,255,.2);
			}

	#cani-grafico1-wrapper{
		position: relative;
		background-color: transparent;
	}   

	.cani-grafico1-ingombro-cnt{
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
		height: 100%;
		gap: 16px;
	}

	#cani-grafico1-step{
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}

	.cani-grafico1-elemento-cnt{
		width: 50%;
		height: 100%;
		display: flex;
		align-items: center;
	}

	.cani-grafico1-elemento-sx{
		justify-content: flex-end;
		opacity: 0;
	}

	.cani-grafico1-elemento-dx{
		justify-content: flex-start;
	}
	#cani-grafico1-cnt,
	#cani-grafico1-cnt-2{
		position: absolute;
		width: 100%;
		height: 100%;
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
		pointer-events: none;
		z-index: -1;
		top: 0;
	}

	#cani-grafico1-cnt-2{
		z-index: 5;
	}

	#cani-grafico1-cnt-2 .cani-grafico1-elemento-canna,
	#cani-grafico1-cnt-2 .cani-grafico1-elemento-canna-cnt {
		background-color: transparent;
	}

	#cani-grafico1{
		position: sticky;
		top: 0;  
	}

	.cani-grafico1-elemento{
		width: 250px;
		height: 350px;
		position: relative;
	}

	.cani-grafico1-elemento.cani-grafico1-elemento-spiega-cnt{
		width: unset;
		display: flex;
		flex-direction: column;
		justify-content: space-between;

		transform-origin: left center;
		transform: scale(1.3);
	}

	.cani-grafico1-elemento-numero-cnt{
		display: flex;
		flex-shrink: 0;
		gap: 12px;
		align-items: center;
	}

	.cani-grafico1-elemento-numero{
		width: 104px;
		flex-shrink: 0;
		font-family: "roc-grotesk", sans-serif;
		font-weight: 600;
		font-style: Bold;
		font-size: 86px;
		line-height: 100%;
		letter-spacing: -1%;
		text-align: center;
	}

	.cani-grafico1-elemento-nome{
		font-family: "roc-grotesk", sans-serif;
		font-weight: 700;
		font-size: 36px;
		line-height: 34px;
		letter-spacing: 0%;
		text-transform: uppercase;
		width: 100px;
	}

	.cani-grafico1-elemento-dati-cnt{
		display: flex;
		align-content: flex-end;
	}
	
	.cani-grafico1-elemento-immagine{
		width: 160px;
		position: relative;
		flex-shrink: 0;
	}

	.cani-grafico1-elemento-immagine img{
		position: absolute;
		bottom: 0;
		right: 0;
	}

	.cani-grafico1-elemento-dati{
		height: 194px;
	}

	#cani-grafico1-cnt .cani-grafico1-elemento-canna-valore{
		opacity: 0;
	}

	.swiper-slide{
		width: 100%;
		height: 100vh;
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
	}

	.cani-grafico1-info-cnt{
		display: flex;
		justify-content: center;
		align-items: center;
	}

	#cani-grafico1-cnt .cani-grafico1-elemento-sx,
	#cani-grafico1-cnt-2 .cani-grafico1-elemento-sx{
		opacity: 1;
	}

	#cani-grafico1-cnt .cani-grafico1-elemento-dx,
	#cani-grafico1-cnt-2 .cani-grafico1-elemento-dx{
		opacity: 0;
	}

	.blocco.blocco-step{
		width: 100%;
		height: 80vh;
		/* background-color: rgba(0,0,0,.1);
		border-bottom: 2px solid black; */
	}

	.blocco-step{
		display: flex;
		justify-content: center;
		align-items: center;
		border-bottom: none;
	}   

	.interruttore{
		width: 20px;
		height: 20px;
		background-color: transparent;
		border-radius: 50%;
	}

	.cani-grafico1-elemento.cani-grafico1-elemento-spiega-cnt {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}

	.cani-grafico1-elemento-canna-cnt{
		display: flex;
		flex-direction: column;
		justify-content: flex-end;
		align-items: center;
		background-color: rgba(0,0,0,.3);
		position: relative;
		transform-origin: right center;
		transform: scale(1.3);
	}

	.cani-grafico1-elemento-canna{
		width: 100%;
		position: relative;
		background-color: #FDD85F;
		overflow: hidden;
		transition: all 1s ease-out;
	}

	.cani-grafico1-elemento-canna-valore{
		position: absolute;
		top: 8px;
		width: 100%;
		font-family: "SoleSans", Arial, Helvetica, sans-serif;
		font-weight: 900;
		font-size: 50px;
		line-height: 54px;
		letter-spacing: 0%;
		text-align: center;
		display: flex;
		flex-direction: column;
	}

	.cani-grafico1-elemento-canna-spiega{
		font-size: 15px;
		line-height: 100%;
		text-align: center;
	}
	.cani-grafico1-elemento-canna-numero{
		text-align: center;
	}

	.odometer.odometer-auto-theme, .odometer.odometer-theme-default {
		font-family: "SoleSans", Arial, Helvetica, sans-serif;
	}

	.active{
		background-color: rgba(255,0,255,.5) !important;
	}

  .chart_spiega_cnt{
    display: flex;
    justify-content: center;
  }

  .chart_spiega {
    	font-family: "SoleSans", Arial, Helvetica, sans-serif;
      display: flex;
      align-items: center;
      gap: 8px;
      font-weight: 700;
      font-size: 14px;
      width: auto;
  }

  .pallino-blu{
    background-color: #0022FF;
    width: 16px;
    height: 16px;
    border-radius: 50%;
  }

  .pallino-giallo{
    background-color: var(--colore-giallo);
    width: 16px;
    height: 16px;
    border-radius: 50%;
    margin-left: 8px;
  }
/* RESPONSIVE  */

@media only screen and (min-width: 481px) {
  .nascondi-se-desktop{
    display: none!important;
  }
}

@media only screen and (max-width: 1540px) {

  /* h1 {
    font-size: 4.3rem;
    line-height: normal;
  } */

  .firma_data span {
    font-size: 1rem !important;
    line-height: normal !important;
  }
}

@media only screen and (min-width: 1021px) {
  #mpu_top_mobile {
    display: none;
  }
}


@media only screen and (max-width: 1020px) {
  .mpu_top_mobile {
    display: flex;
    justify-content: center;
    margin: 20px auto;
    background-color: var(--adv-bg-color) !important;
  }
}



@media only screen and (min-width: 821px) and (max-width: 1540px) {
  .section_title h2 {
    font-size: 1.8rem;
  }

  .box_quote {
    margin: initial;
  }

  .quote_author,
  .quote_text {
    text-align: left;
  }

  .chart_subtitle,
  .chart_title,
  .chart_abstract,
  .chart_source,
  .chart_region_name {
    margin: initial;
  }


  .box_text_cnt.box_pubblicita {
    margin-left: 50px;
  }

  .riferimenti_bibliografici {
    margin-left: 50px;
  }


  h1 {
    font-size: 80px;
    line-height: 88px;
    max-width: 700px;
  }
}

@media only screen and (min-width: 481px) and (max-width: 820px) {

  .section_title h2 {
    font-size: 1.6rem;
  }

  .column_right {
    max-width: 0;
    display: none;
  }

}

@media only screen and (max-width: 480px) {
  :root {
    --device: mobile1;
  }
    .cani-grafico1-ingombro-cnt {
      display: flex;
      flex-direction: row;
      justify-content: center;
      align-items: center;
      height: 100%;
      gap: 16px;
      width: 100%;
    }

    .cani-grafico1-elemento-sx {
      justify-content: center;
    }

    .cani-grafico1-elemento-canna-cnt {
      transform-origin: center center;
      transform: none;
    }

    #cani-grafico1-cnt .cani-grafico1-elemento-dx, #cani-grafico1-cnt-2 .cani-grafico1-elemento-dx {
      display: none;
    }

    .swiper-slide .cani-grafico1-elemento-sx {
      display: none;
    }

    .cani-grafico1-elemento.cani-grafico1-elemento-spiega-cnt {
        transform-origin: center center;
        transform: none;
        width: 100%;
        justify-content: space-between;
        align-items: center;
        height: calc(100vh - 391px);
        margin-top: 220px;
    }

    .cani-grafico1-elemento-nome {
        width: auto;
    }

    .cani-grafico1-elemento-numero-cnt {
        display: flex;
        flex-shrink: 0;
        gap: 12px;
        align-items: center;
        justify-content: center;
    }
    
    .cani-grafico1-elemento-immagine img {
        position: absolute;
        bottom: 0;
        right: auto;
        left: 50%;
        transform: translateX(-50%);
    }

    .cani-grafico1-elemento-cnt {
        align-items: flex-start;
    }

    .swiper-slide .cani-grafico1-elemento-dati-cnt {
      display: flex;
      justify-content: center;
      align-items: center;
      flex-direction: column;
    }

    .cani-grafico1-elemento-dati {
      height: unset;
      margin-top: 20px;
    }

    .swiper-slide .cani-grafico1-elemento-cnt.cani-grafico1-elemento-dx {
      width: 100%;
      justify-content: center;
      align-items: flex-center;
    }

    #cani-grafico1-titolazione {
        flex: 0;
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding-top: 24px;
    }

    #cani-grafico1-titolazione-dida {
        flex: 0;
        margin-bottom: 80px;
    }

    #cani-grafico1-titolazione-cnt {
        justify-content: space-between;
    }

    #grafico-cani-skip-cnt {
        bottom: 24px;
    }

    .cani-grafico1-elemento-canna-spiega {
        width: auto;
    }
    .cani-grafico1-elemento-canna-valore {
        width: auto;
    }
    .odometer.odometer-auto-theme, .odometer.odometer-theme-default {
        width: auto;
    }

    .cani-grafico1-elemento-canna-valore {
        align-items: flex-start;
    }    

    .cani-grafico1-elemento-canna-valore {
        left: 10px;
    }
  .chart_title, .cani-grafico1-titolo {
    font-size: 29px;
    line-height: 33px;
  }

  .chart_abstract, .cani-grafico1-abstract {
      font-size: 18px;
      line-height: 26px;
  }

  .cani-grafico1-elemento-cnt {
      width: 100%;
  }

  .cani-grafico1-elemento {
      width: 350px;
      height: calc(100vh - 585px);
      margin-top: 310px;
  }

  #cani-grafico1-cnt .cani-grafico1-elemento-cnt.cani-grafico1-elemento-sx {
      width: 100%;
  }

  .cani-grafico1-elemento-canna-cnt {
    background-color: rgba(0,0,0,.15);
  }

  .box-chart-corda{
    left: 0;
    top: 24%;
  }

  .chart_title{
    font-size: 29px;
    line-height: 33px;
    letter-spacing: 0px;
  }

  .box-chart-corda .chart_title {
    text-align: left;
    padding-left: 24px;
  }

  .chart_source, .cani-grafico1-titolazione-dida {
    font-weight: 500;
    font-size: 13px;
  }

  .box-chart-corda .chart_source, .cani-grafico1-titolazione-dida {
    text-align: left;
    padding-left: 24px;
  }
  
  .nascondi-se-mobile{
    display: none!important;
  } 

  h3, .h3-absolute{
    font-size: 36px;
    line-height: 56px;
    letter-spacing: 0%;
  }

  .h3-source{
    font-size: 16px;
    line-height: 100%;
    letter-spacing: 0%;
    text-align: right;
  }

  .box-chart .box-chart-img {
    width: 100%;
  }


  #adv-MaxTicker {
    padding: 20px 0;
  }

  #adv-MaxTicker iframe {
    margin-top: 50px
  }

  #bordo_adv {
    padding: 10px 0x;
  }

  #ad-Mpu_Top {
    margin-bottom: 10px;
  }

  #adv_middle {
    margin: 40px auto;
    text-align: center;
  }

  h1 {
    margin-block-start: 0;
    margin-block-end: 0;
    font-size: 3.5rem;
    line-height: normal;
    margin-bottom: 16px;
  }

  .sommario {
    font-size: 1.2rem;
    line-height: normal;
    max-width: 300px;
  }

  .firma {
    font-size: 1rem;
    line-height: nromal;
  }


  aside {
    padding-left: 15px;
    padding-right: 15px;
  }

  section.no-padding {
    padding-left: 0;
    padding-right: 0;
  }

  section {
    padding-left: 8px;
    padding-right: 8px;
  }


  .citazione-cnt,
  .h3-absolute {
      padding: 12px;
  }

  section#first_section {
    padding-left: 0;
    padding-right: 0;
  }

  .column_right {
    width: 0;
    height: 0;
    display: none;
  }

  .section_title h2 {
    font-size: 1.8rem;
  }

  .box_text_cnt {
    max-width: 100%;
  }

  .box_text {
    max-width: 100%;
  }

  .box_quote {
    max-width: 100%;
  }

  .chart_subtitle,
  .chart_title,
  .chart_abstract,
  .chart_source {
    max-width: 100%;
  }

  .chart_title h3 {
    font-size: 1.3rem;
  }

  .box_numerone {
    width: 100%;
    flex-direction: column;
  }

  .num_testi {
    padding-bottom: 0;
  }

  .num_soggetto,
  .num_parametro,
  .num_unita_misura,
  .numerone {
    text-align: center;
  }

  .numerone {
    padding-right: 0;
  }

  .box_commento {
    width: 100%;
  }

  .riferimenti_bibliografici {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }

  .box_credits {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }

  .riferimenti_bibliografici h5,
  .box_credits h5 {
    font-size: 1rem;
    color: var(--text-color);
    text-transform: uppercase;
  }

  #footer_div {
    padding: 30px 10px;
  }

  #backtop {
    left: initial;
    right: 3px;
    bottom: 3px;
  }

  #backtop img {
    margin-right: 0;
    padding-bottom: 0;
  }

  .mobile {
    display: initial;
  }

  .desktop {
    display: none;
  }

  .box_credits {
    font-size: 14px;
    line-height: 18px;
  }

  .box-chart {
    padding-left: 4px;
    padding-right: 4px;
  }
}

@media only screen and (max-width: 480px) and (max-height: 820px) {
  :root{
    --device: mobile2;
  }
}