html,
body,
div,
span,
h1,
h2,
h3,
h4,
h5,
h6,
p,
a,
em,
img,
strong,
ol,
ul,
li,
form,
label,
article,
footer,
header,
nav,
section{
    margin: 0;
    padding: 0;
    border: 0;
}
html {
    line-height: 1;
}
ol,
ul {
    list-style: none;
}

a img {
    border: none;
}
article,
aside,
footer,
header,
main,
section{
    display: block;
}
.width-cnt {
    width: 100%;
    margin: auto;
    max-width: 1920px; /* 825px; new - MDG */ 
    /* padding-top: 20px;  MDG */
    /* padding-left: 20px;  new - MDG */ 
    padding: 10px 20px;  /* new - MDG */
}
.width-cnt h6{
    width: 90%;
    margin: auto;
    text-align: justify;
    max-width: 1920px; /* 825px; new - MDG */ 
}
.row-button a,
.row-button a:link, .row-button button {
    text-decoration: none;
    background: #00f5d8;
    height: 40px;
    border-radius: 32px;
    text-align: center;
    width: auto;
    color: #004b44;
    border: none;
    display: inline-flex;
    align-items: center;
    font-size: clamp(0.875rem, 0.259vw + 0.814rem, 1.125rem);
    font-weight: 700;
    padding: 0 32px;
}
/* .row-button a::after, .row-button a:link::after {
    content: "";
    display: block;
    width: 17px;
    height: 17px;
    margin-left: 10px;
    background: url("../img/arrow-btn.svg") 0 0 / contain no-repeat;
    transition: none, .5s;
} */
.row-button a:hover {
    text-decoration: none;
    -webkit-box-shadow: 0 6px 10px -5px rgba(29, 75, 68, .5);
    box-shadow: 0 6px 10px -5px rgba(29, 75, 68, .5);
    background-color: #004b44;
    color: #fff;
}
.box-spec .row-button a:hover {   /* MDG - sostutuito .box-spec con poichè non presente in nessun tag html */
    background-color: #004b44;
    color: #fff;
}

.row-button a:hover::after {
    background: url("../img/arrow-btn.svg") 0 0 / contain no-repeat;
}

.box-spec .row-button a:hover::after {
    background: url("../img/arrow-btnW.svg") 0 0 / contain no-repeat;
}
.row-button {
    display: flex;
    justify-content: center;
    padding-top: 20px;
}
* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    outline: none;
}
strong{
    font-weight: bold;
}
html,
body,
.wrapper {
    line-height: normal;
    position: relative;
}
.desktop{
    display: none !important;
}
body {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 400;
    font-size: 1rem;
    line-height: 1.2;
    color: #252525;
    display: flex;
    flex-direction: column;
    min-height: 80%;
    /* min-height: 100vh; MDG */
    overflow-x: hidden;
}
/*  MDG - Spostato in .advantage .width-cnt
	.width-cnt {
    position: relative;
    max-width: 1280px; 
    margin: 0 auto;
} 
*/
a,
a:link {
    text-decoration: none;
    color: #252525;
    -webkit-transition: all, 0.5s;
    -moz-transition: all, 0.5s;
    -ms-transition: all, 0.5s;
    -o-transition: all, 0.5s;
    transition: all, 0.5s;
}
a:hover {
    text-decoration: underline;
}
header{
    width: 100%;
}
.interne header{
    background: #fff;
    position: fixed;
    z-index: 200;
    top: 0;
    left: 0;
}
.interne .generic-txt .width-cnt{
    padding: 0 20px;
}
header .cnt-img{
    position: relative;
    overflow: auto;
    height: 80vh;
    z-index: 10;
}
header .cnt-img .txt{
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 102;
    transform: translate(-50%, -50%);
    width: calc(100% - 40px);
    color: #fff;
    max-width: 1240px;
}
header .cnt-img img{
    display: block;
    width: auto;
    height: 100%;
    position: relative;
    left: 50%;
    z-index: 100;
    transform: translateX(-50%);
}
header .cnt-img::before{
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 50%;
    z-index: 101;
    transform: translateX(-50%); 
    background: rgba(0,0,0,.5);   
}
header .width-cnt{
    display: flex;
    align-items: center;  
    justify-content: space-between;
}
.logo{
    width: 50%;
    max-width: 300px;
}
.logo img{
    width: auto;
    height: 36px;
    display: block;
}
/* body::after{
    content:"";
    position: fixed;
    height: 100vh;
    width: 100%;
    z-index: 100;
    left:100%;
    top:0;
    background:rgba(38,38,38,.5);
    transition: all 0.6s ease;
    display: block;
}
body.has-navigation-toggled::after{
    left:0;
} */           
.nav-bar{
    padding: 10px 20px;
/*     position: absolute;
    top: 0;
    z-index: 200;
            left: 50%;
        z-index: 100;
        transform: translateX(-50%); */
}
.home .nav-bar{
    background:transparent;
    position: absolute;
    z-index: 200;
    top: 0;
    left: 0;
    width: 100%;
}
 .home .scrolled .nav-bar{
    background:#fff;
    position: fixed;
    z-index: 200;
    top: 0;
    left: 0;
    width: 100%;
} 
.logo img.scrolled-img{
    display: none;
}
.scrolled .logo img.scrolled-img{
    display: block;
}
.scrolled .logo img.not-scrolled-img{
    display: none;
}
.main-nav #menu-primary{
    position: fixed;
    right: -84%;
    width: 84%;
    max-width: 400px;
    z-index: 150;
    padding: 30px;
    background:#fff;
    top: 60px;
    transition: all 0.6s ease;
    height: 100vh;
    overflow-y: auto;
}


.main-item{
    margin-bottom: 10px;
    position: relative; 
}


.main-item > a,.main-item  >a:link{
    cursor: pointer;
    color: #004B44;
    font-size:16px;
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 400;
    white-space: nowrap;
    min-height: 36px;
    display: flex;
    align-items: center;
    transition: all 0.6s ease;
    background:#fff;
    padding: 5px 10px;
}
.main-item > a::after,.main-item  >a:link::after{
    content: "";
    height: 2px;
    width: 0;
    position: absolute;
    bottom: 0;
    left: 0;
    background: #eb3738;
    opacity: 0;
    transition: all 0.6s ease;
}
.main-item  > a:hover {
  text-decoration: none;
}
.main-item  > a:hover::after,.main-item > a.selected::after,.main-item  > a.selected:link::after,.main-item  > a.selected:hover::after{
  width: 100%;
    opacity: 1;
}
.menu-toggle{
    width: 40px;
    height: 40px;
    z-index: 300;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.6s ease;
    background:#CCFDF7;
    border:none;
    border-radius:5px;
}

.menu-toggle span{
    border-radius:2px;
    height: 2px;
    display: block;
    width: 20px;
    background: #004B44;
    position: relative;
    transition: all .5s ease;
    -webkit-transition-duration: 0s; transition-duration: 0s;
    -webkit-transition-delay: 0.2s; transition-delay: 0.2s;    
}
.menu-toggle span::before{
    border-radius:2px;
    content: "";
    height: 2px;
    display: block;
    width: 20px;
    background: #004B44;
    position: absolute;
    margin-top: -6px;
    -webkit-transition-property: margin, -webkit-transform; transition-property: margin, transform;
    -webkit-transition-duration: 0.2s; transition-duration: 0.2s;
    -webkit-transition-delay: 0.2s, 0s; transition-delay: 0.2s, 0s;
}


.menu-toggle span::after{
    border-radius:2px;
    content: "";
    height: 2px;
    display: block;
    width: 20px;
    background: #004B44;
    position: absolute;
    margin-top: 6px;
    -webkit-transition-property: margin, -webkit-transform; transition-property: margin, transform;
    -webkit-transition-duration: 0.2s; transition-duration: 0.2s;
    -webkit-transition-delay: 0.2s, 0s; transition-delay: 0.2s, 0s;
}      
#menu-toggle[aria-expanded="true"] span{
    background: transparent;

}   
#menu-toggle[aria-expanded="true"] span::before{
    margin-top: 0;
    -webkit-transform: rotate(45deg); transform: rotate(45deg);
    -webkit-transition-delay: 0s, 0.2s; transition-delay: 0s, 0.2s;
}

#menu-toggle[aria-expanded="true"] span::after{
    margin-top: 0;
    -webkit-transform: rotate(-45deg); transform: rotate(-45deg);
    -webkit-transition-delay: 0s, 0.2s; transition-delay: 0s, 0.2s;
}       

#menu-toggle[aria-expanded="true"] ~ #menu-primary{
    right: 0;
}


nav{
    font-size:14px;
    overflow-y: auto;
}

.top{
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    background: #004B44;
    color: #fff;
}
.hero-title{
    font-size: calc(clamp(2rem, 0.906vw + 1.98rem, 2.875rem));  /* calc(clamp(2rem, 0.906vw + 1.788rem, 2.875rem));  MDG */
    max-width: 670px;
}
header p{
    font-size: clamp(1.125rem, 0.388vw + 1.034rem, 1.5rem);    
        max-width: 455px;
        padding: 20px 0;
}
.page-title{
    text-align: center;
    font-size: calc(clamp(1.5rem, 1.683vw + 1.106rem, 3.125rem));
    color: #004B44;
    font-weight: bold;
    letter-spacing:1px;
    margin-bottom: 20px;
}
.section-title{
    font-size:clamp(1.5rem, 0.777vw + 1.318rem, 2.25rem);
    color: #eb3738;
    /*margin-bottom: 20px;  MDG */
}
.pdt-offer .section-title{
    color: #fff;
}
.generic-txt{
    padding-bottom: 40px;
}
.generic-txt p{
    margin-bottom: 20px;
}
.generic-txt p:last-child{
    margin-bottom: 0;
}
.generic-txt .page-title{
text-align: left;
}
.generic-txt a, .generic-txt a:link{
    color: #004B44;
    text-decoration: underline;
}
.generic-list{
    margin-bottom: 20px;    
}
.generic-list li{
   position: relative;
   padding-left: 20px;   
   margin-bottom: 10px;
}
.txt-optional .generic-list li{ 
   margin-left: 20px;
}
.generic-list li:last-child{
   margin-bottom: 0;
}
.generic-list li::before{
    content: "";
    display: block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #004B44;
  position: absolute;
  left: 0;
  top: 9px;  
}
.page-title span{
    display: block;
    color: #004B44;
    padding-bottom: 10px;
}
.top-img{
    position: relative;
    order: 2;
}
.top-img img{
    display: block;
    width: 100%;
}
.app .top-img img{
    max-width: 250px;
}

.cnt-img-promo  {
    display: flex;
    flex-direction: column;
}

/* Crea l'area di sovrapposizione immagini */
.image-container {
  position: relative; /* Indispensabile per "ancorare" l'immagine piccola */
  display: inline-block; /* Il contenitore si stringe attorno all'immagine */
}

.img-main {
  display: block;
  width: 65%;    /* Rende l'immagine responsive */
  height: auto;
}

.img-overlay {
  position: absolute !important; /* Forza il posizionamento */
  top: 10px;
  left: 8%;
  
  /* DEFINISCI UNA GRANDEZZA FISSA O PERCENTUALE PICCOLA */
  width: 15% !important; /* Prova a mettere un valore fisso per testare */
  height: auto;
  
  z-index: 2; /*999 Assicura che sia sopra a tutto */

  /* Opzionale: aggiunge un'ombra per farla risaltare */
  filter: drop-shadow(0 4px 6px rgba(0,0,0,0.3));
}
/* Fine area di sovrapposizione */

.txt-promo-img{
    padding: 20px;
    position: absolute;
    bottom: 0;
    z-index: 100;
    left: 0;
    width: 100%;
}
.lp-title{
   padding-bottom: 20px;
   font-size:  calc(clamp(1.875rem, 0.777vw + 1.693rem, 2.625rem));
   color:#fff;
   font-weight: 400;
}

.lp-title strong{
   font-weight: 900;
}
.lp-title .small-txt{
    font-size: calc(clamp(1.5rem, 0.518vw + 1.379rem, 2rem));

}
.app .lp-title{
   font-size: calc(clamp(1.5rem, 0.906vw + 1.288rem, 2.375rem));

   color:#fff;
   font-weight: 400;
}
.app .lp-title .small-txt{
    font-size: calc(clamp(1.125rem, 0.388vw + 1.034rem, 1.5rem));
    display: block;
    padding-bottom: 20px;

}

.lp-subtitle{
    font-weight: 700;
    font-size: calc(clamp(1.25rem, 0.777vw + 1.068rem, 2rem));

}
.txt-promo{
    padding: 30px;
    text-align: center;
    order: 1;
}
.txt-promo span{
   display: block;
}
.offerta {
    text-align: center;
    max-width: 1000px;
    margin: 0 auto;
    font-size: calc(clamp(1rem, 0.518vw + 0.879rem, 1.5rem));
    padding: 50px 20px;
}
.offerta ul{
    padding-top: 40px;  
}
.offerta li{
    border-radius: 20px;
    padding: 20px;
    color: #fff;
    background: #004B44;
    margin-bottom: 30px;
}
.offerta img{
    margin: 0 auto;
}
.offerta .cnt-img{
    display: flex;
    justify-content: center;
}

.offerta li p{
    padding-bottom: 20px;
    font-size: calc(clamp(0.875rem, 0.129vw + 0.845rem, 1rem));
}
.offerta li p:last-child{
    padding-bottom: 0;
}
.offerta.services{
    max-width: 1280px;
    padding: 50px 0;
}
.offerta.services ul{
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
}
.offerta.services li{
    background: transparent;
    color: #252525;
    font-size: clamp(1rem, 0.518vw + 0.879rem, 1.5rem);
    text-transform: uppercase;
    font-weight: 700;
    width: calc(50% - 20px);
    max-width: 190px;
    margin: 0;
    padding: 0 20px;
}
.offerta.services li img{
    display: block;
    width: 100%;
    margin-bottom: 20px;
}
.lp-innertitle{
    font-weight: 400;
    font-size: calc(clamp(1.25rem, 0.777vw + 1.068rem, 2rem));
    padding-bottom: 30px;
}
.lp-innertitle strong{
    font-weight: 900;
    color: #004B44;
}
.cyanColor{
      color: #004B44;  
}
.list-title{
    font-weight: 700;
    font-size: calc(clamp(1.125rem, 0.388vw + 1.034rem, 1.5rem));
    
    padding-bottom: 10px;
}
.offerta .list-title{
    padding: 0 30px 10px 30px;
}
.list-title span{
    font-weight: 900;
}
.generic-txt{
   font-size: calc(clamp(1rem, 0.129vw + 0.97rem, 1.125rem));
}
.center-txt{
    text-align: center;
}

/* .row-button {
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    display: flex;
}
.row-button a,
.row-button a:link {
    font-weight: bold;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
}

.row-button a:hover {
    text-decoration: none;
    background: #004B44;
}
 */
.box-spec{
    padding: 10px 20px 40px 20px;
}
.box-spec .row-button{
    margin-top: 20px;
}
.box-spec p{
    margin-bottom: 20px;
    font-size: calc(clamp(1.125rem, 1.165vw + 0.852rem, 2.25rem));
    color: #004B44;
}
.box-spec p span{
    color: #004B44;
}
.cnt-box-spec .title{
    text-align:center;
	font-weight: 400;
    font-size: calc(clamp(1.5rem, 0.906vw + 1.288rem, 2.375rem));
    padding-bottom: 10px;
}

.title strong{
    font-weight: 700;
}
main{
    padding: 0;
    width: 100%;
    margin: 0 auto;
    margin-top: 80px;
}
.home main{
    margin-top: 0;
}
footer {
    width: 100%;
    padding: 40px 20px 20px 20px;
    font-size: 14px;
    font-size: 0.875rem;
    margin-top: auto;
  color: #fff;
    background: #004B44;
 /*      color: #004B44;
    background: #fff;    */ 
}
footer .title {
    padding-top: 20px;
    font-weight: 400;
    /* color: #004B44; */
}
footer .title a, footer .title a:link{
    text-decoration: none; 
    color: #fff;
}
footer .logo img{   /* new - MDG */
    width: auto;
    height: 25px;
    display: block;
}
.footer-nav{
    padding-top:30px;
}
.footer-nav a, .footer-nav a:link{
    color: #fff;
}
.footer-nav a:hover{
    text-decoration: underline;
}
.pb-10{
    padding-bottom: 10px;
}
.bottom-footer{
    padding: 20px;
    line-height: 1.5;
}
.bottom-footer a, .bottom-footer a:link{
    text-decoration: underline;
}
.promo-list{
    padding: 60px 10px;
    background: #fdebeb;
}
.promo-list .width-cnt{
    width: 80%;
}
.promo-list li{
    border-radius: 20px;
    border: solid 1px #eb3738;
    margin-bottom: 60px;
}
.promo-list li:last-child{
    margin-bottom: 0;
}
.promo-list img{
    width: 70%;  /*100% MDG*/
    /*-webkit-border-top-left-radius: 20px;
	-webkit-border-top-right-radius: 20px;
	-moz-border-radius-topleft: 20px;
	-moz-border-radius-topright: 20px;
	border-top-left-radius: 20px;
	border-top-right-radius: 20px;*/
}
.top-card{
    background: #fff;
    position: relative;
    -webkit-border-top-left-radius: 20px;
	-webkit-border-top-right-radius: 20px;
	-moz-border-radius-topleft: 20px;
	-moz-border-radius-topright: 20px;
	border-top-left-radius: 20px;
	border-top-right-radius: 20px;
}
.top-card .cnt-img{
    padding: 10px;
	display: flex;
    align-items: center;
    justify-content: center;
}
.label-cta{
    position: absolute;
    left: 50%;
    z-index: 100;
    transform: translateX(-50%);
    background: #eb3738;
    color: #fff;
    border-radius: 20px;
    padding: 5px 30px;
    white-space: nowrap;
    font-weight: 700;
    top: -17px;
}
.label-km0 {
    background: #066867;
}
.bottom-card{
    text-align: center;
    color: #fff;
    padding: 10px;
    background: #eb3738;
    -webkit-border-bottom-right-radius: 20px;
-webkit-border-bottom-left-radius: 20px;
-moz-border-radius-bottomright: 20px;
-moz-border-radius-bottomleft: 20px;
border-bottom-right-radius: 20px;
border-bottom-left-radius: 20px;
}
.pdt-title{
    padding: 10px;
    text-align: center;
    text-transform: uppercase;
    font-size: clamp(1.375rem, 0.518vw + 1.254rem, 1.875rem); /*clamp(1.375rem, 0.518vw + 1.254rem, 1.875rem) MDG */
}
.bottom-card .row-button a, .bottom-card .row-button a:link, .info-offer .row-button a, .info-offer .row-button a:link{
	background: #fff;
}

.bottom-card .row-button a:hover, .info-offer .row-button a:hover {  /*  MDG - new */
    background-color: #004b44;
}

.bottom-card p{
     font-size: 0.875rem;
}
.bottom-card p.price{
    font-weight: 700;
    font-size: clamp(2.25rem, 1.165vw + 1.977rem, 3.375rem);
}
.advantage{
    position: relative;
    overflow: hidden;
}
.advantage img{
    display: block;
    width: auto;
    height: 800px;
    position: relative;
    left: 50%;
    z-index: 100;
    transform: translateX(-50%);
}
.advantage .cnt-img{
	overflow: hidden;
    height: 650px;
}
.advantage .tutela  img{
  height: 400px;
}
.advantage .tutela .cnt-img{
    height: 400px;
}
.advantage .width-cnt{
    width: 100%;   /* new  MDG */
	position: absolute;  /* new  MDG */
	max-width: 1280px;   /* new  MDG */
	/*margin: 0 auto;    new  MDG */
    top: 50%;
    left: 50%;
    z-index: 100;
    transform: translate(-50%, -50%);
}
.advantage .txt{
    width: 90%;
    max-width: 600px;
    margin: 0 auto;
    padding: 20px;
    border-radius: 20px;
    background: #fdebeb;
    position: relative;
}
.advantage .call-box {
	display:flex;
	flex-direction: column;
}

.advantage .call-box .txt{
    background: #e5edec;
    
}
.advantage li{
    margin-bottom: 15px;
}

.advantage li:first-child {    /* new  MDG */
    margin-top: 20px;
}	
.advantage li:last-child{
    margin-bottom: 0;
}

.listitem-title{
    color: #eb3738;    
    font-size: calc(clamp(1.125rem, 0.129vw + 1.095rem, 1.25rem));
}
.advantage{
    margin-bottom: 50px;
}
.advantage .section-title{
   font-size: calc(clamp(1.125rem, 0.518vw + 1.004rem, 1.625rem));
    /* padding-bottom: 20px;   MDG */
	
}
.tutela .section-title {
    color: #004B44;
	justify-content: center;    /* new  MDG */
	position: relative;         /* new  MDG */
	/*padding-left: 100px;		   new  MDG */
	padding-bottom: 0px;
}

.advantage li div[class^='ico-']{
	position: relative;
	padding-left: 50px;
}
.advantage li div[class^='ico-']::before{
    content: "";
	width: 40px;
	height: 40px;
	position: absolute;
	left: 0;
	top: 0;
	display: block;
}
.advantage li div.ico-sicurezza::before{
background: url('../img/Icona_Sicurezza.svg') no-repeat;
background-size: contain;
}
.advantage li div.ico-dealer::before{
background: url('../img/Icona_Dealer.svg') no-repeat;
background-size: contain;
}
.advantage li div.ico-manutenzione::before{
background: url('../img/Icona_Manutenzione.svg') no-repeat;
background-size: contain;
}
.advantage li div.ico-flex::before{
background: url('../img/Icona_Flessibilita.svg') no-repeat;
background-size: contain;
}
.advantage li div.ico-strumenti::before{
background: url('../img/Icona_Strumenti.svg') no-repeat;
background-size: contain;
}
.advantage li div.ico-tutela::before{
background: url('../img/Icona_Modellounico.svg') no-repeat;
background-size: contain;
}
.advantage .row-button {
    justify-content: flex-start;
}
.advantage .row-button a, .advantage .row-button a:link{
background: #fff;
}
.advantage .row-button a:hover{
background: #004B44;
}
.box{
    width: 70%;
    max-width: 1280px;
    margin: 0 auto;
    border-radius: 20px;
    padding-top: 20px;          /* padding:0px; MDG */
    padding-bottom: 20px;
    display: flex;
    margin-bottom: 30px;
	justify-content: center;
	flex-direction: row;
}
/* MDG eliminato 
.box::before{
    content: "";
    width: 60px;
    height: 60px;
    display: block;
    margin-right: 20px;
}*/
.info-box .txt::before{  /* MDG specificato il .txt */
    content: "";
    width: 60px;
    height: 60px;
    display: block;
	position: absolute; 
    margin-right: 8px;
	background: url("../img/Info.webp") no-repeat;
    background-size: contain;
}
.call-box .txt .section-title::after{
    content: "";
    width: 80px;
    height: 80px;
    display: block;
	text-align: -webkit-match-parent;
	justify-content: center;
	position: relative; 
    background: url("../img/Rivenditore.webp") no-repeat;
    background-size: contain;
    margin: 0 auto;
}
.advantage .call-box .row-button{
    justify-content: center;
}

.box .txt{
    width: calc(100% - 80px);
}
.box .row-button{
    justify-content: center;
}
.box .row-button a, .box .row-button a:link{
    background: #fff;
}
.box .row-button a:hover{
	background: #004B44;
}
.info-box{
    background: #fdebeb;
}

/*.info-box .txt{       MDG - new */
    /*text-align: center; 
    text-align: -webkit-match-parent;
	position: relative;
} */

.box .section-title {
    font-size: calc(clamp(1.125rem, 0.518vw + 1.004rem, 1.625rem)); /* clamp(1.25rem, 0.647vw + 1.098rem, 1.875rem);  MDG */
	margin-left: 70px;
    padding-top: 7px;
	position: relative;
	/*text-align:center;*/
}

.accordion-header {
    position: relative;
}
.accordion-header .accordion-optional {
    width: 100%;
    text-align: left;
    border: 0;
    background-color: transparent;
    border-bottom: 1px solid #ccc;
    box-shadow: none;
    padding: 14px 24px;
    cursor: pointer;
    color: #004B44;
    font-size: 1.2rem;
    font-weight: 600;
    line-height: 1.5rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.accordion-header .accordion-button {
    width: 100%;
    text-align: left;
    border: 0;
    background-color: transparent;
    border-bottom: 1px solid #ccc;
    box-shadow: none;
    padding: 14px 24px;
    cursor: pointer;
    color: #004B44;
    font-size: 1.2rem;
    font-weight: 600;
    line-height: 1.5rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.accordion-item:last-child .accordion-header .accordion-button{
    border-bottom: none;
}
.accordion-header .accordion-button::after {
    content: "";
    width: 30px;
    height: 30px;
    display: block;
    background: url("../img/arrow-btn.svg") no-repeat;
    background-size: contain;
}
.accordion-header .accordion-button:not(.collapsed)::after {
    transform: rotate(90deg);
}
.accordion-collapse.collapse:not(.show) {
    max-height: 0;
    visibility: hidden;
    transition: all 0.6s ease;
}
.accordion-collapse.collapse{
     overflow: hidden;
    max-height: 10000px;
    visibility: visible;   
}
.accordion-body {
    padding: 20px;
    font-size: 1rem;
}

.txt-optional {
    position: relative;
    padding: 1px 60px;
    font-size: 1rem;
}

.faq{
    padding: 20px;
    margin-bottom: 30px;
}
.faq .generic-txt{
	font-size: 1rem;  /* new  MDG */
    padding: 0;
}
.faq .row-button{
        justify-content: flex-start;
    }

.faq-list{
    margin-top: 30px;  
}

.faq-list li{
        margin-bottom: 20px;  
    } 
.faq-list li:last-child{
        margin-bottom: 0;  
        padding-bottom: 0;
        border-bottom: none;  
    } 
/* .faq-list a, .faq-list a:link{
        display: flex;
        align-items: center;
        justify-content: space-between;
} */
.faq-list span{
        width: calc(100% - 40px);
        display: block;
}

.pdt-offer img{
    display: block;
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
}

.km0-title {
    display: flex;
    justify-content: center;
    align-items: center;
}

.km0-img {
    width: 15%;
    margin: 0 0 0 0;
}

.pdt-offer .cnt-img{
    position: relative;
}
.pdt-offer .txt{
    color: #fff;
    width: 80%;
    max-width: 400px;
/*     max-width: 400px; 
    margin: 0 auto 30px auto;*/
    margin: 0 auto;
    padding: 20px;
    border-radius: 20px;
    background: #eb3738;
}
.pdt-offer .section-title{
    font-size: clamp(2.125rem, 1.165vw + 1.852rem, 2.95rem);
    text-transform: uppercase;
}
.pdt-offer .sub-title{
    font-size: clamp(1rem, 0.388vw + 0.909rem, 1.375rem);
    /*text-transform: uppercase;*/
}
.pdt-offer .price{
    font-size: clamp(2.125rem, 1.165vw + 1.852rem, 3.25rem);
    font-weight: 700;
}
.pdt-offer .month{
    margin-top: 20px;
}
.pdt-offer .info-offer{
    position: relative;
    padding-top: 10px;
    margin-top: 10px;
}
.pdt-offer .info-offer::before{
    content: "";
    width: 100px;
    height: 1px;
    background: #fff;
    position: absolute;
    left: 0;
    top: 0;
    display: block;
}
.pdt-offer .info-offer strong{
    display: block;
}
.pdt-offer p{
    font-size: clamp(1rem, 0.129vw + 0.97rem, 1.125rem);
}
/*.pdt-offer .row-button{
    justify-content: flex-start;
}
.pdt-offer .row-button a, .pdt-offer .row-button a:link{
    background: #fff;
}  MDG - eliminaro ed inserito css spsecifico per i bottoni .bottom-card .row-button e .promo-info .row-button */
.descript-title{    
    font-size: clamp(1rem, 0.129vw + 0.97rem, 1.125rem);
    font-weight: 700;
    color: #eb3738;
}
.offerta.form{
    padding: 20px 0;
}
.cnt-form{
    padding-top: 40px;
    text-align: left;
}
.cnt-form label{
    display: block;   
    font-size: 1rem;
    font-weight: 700;
}
.cnt-form label span{
    color: #eb3738;
}
.item-form{
    padding-bottom: 30px;
}
.cnt-form input[type="text"], .cnt-form textarea{
    border: solid 1px #252525;
    border-radius: 10px;
    height: 40px;
    width: 100%;
    padding: 0 20px;
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 400;
}
.cnt-form textarea{
    height: 200px;
}
.error{
    font-size: 0.875rem;
    color: #eb3738;
}
.txt-about-us{
    padding-top: 40px;
}
.txt-about-us strong{
   color: #eb3738;
}
.quote{
    background: #fdebeb;
    padding: 40px 50px;
    color: #004B44;
    text-align: center;
}
.quote h4{
    font-size: clamp(1.5rem, 0.906vw + 1.288rem, 2.375rem);
    position: relative;
    padding: 0 30px;
}
.quote .width-cnt{
    max-width: 900px;
}
.quote .width-cnt h4::before{
    content: "";
    width: 36px;
    height: 28px;
    display: block;
    background: url("../img/left-quote.webp") no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    left: -37px;
}
.quote .width-cnt h4::after{
    content: "";
    width: 36px;
    height: 28px;
    display: block;
    background: url("../img/right-quote.webp") no-repeat;
    background-size: contain;
    position: absolute;
    bottom: 0;
    right: -37px;
}


.quote p{
    padding-top: 20px;
}
.cnt-img-promo.app img{
    margin: 0 auto;
}


table, th, td {
  border: 1px solid black;
  border-collapse: collapse;
  vertical-align: middle;
}

.table-cookies {
    width: 100%;
}
.table-cookies td, .table-cookies th{
    padding: 5px 10px;
}
.tr-cookies {
    background: #004B44;
    color: #fff;
}
.agos-renting-graph{
    padding: 30px 0;
}
.agos-renting-graph .cnt-img{
    display: flex;
    justify-content: center;
}
.agos-renting-graph img{
    width: 70%;
    height: auto;
   max-width: 1000px;
   margin: 0 auto;
}
.app .top-img{
    padding-bottom: 30px;
}
    .offerta.download-store ul li{
        background: transparent;
        padding: 0;
    }

@media only screen and (min-width: 660px) {
    .offerta.services ul{
        justify-content: center;
        max-width: 1280px;
        margin: 0 auto;
        gap: 40px 180px;
    }
    .cnt-img-promo img {
        width: 100%;
        height: auto;
    }
    .promo-list ul{
        display: flex;
        justify-content: center;
        gap: 40px;
    }
    .promo-list ul li{
        width: calc(50% - 40px);
        max-width: 530px;
        margin: 0;
        height: fit-content;
    } 
}
@media only screen and (min-width: 768px) {   
    .advantage.tutela  img{
  height: 620px;
}
/* .advantage.tutela .cnt-img{
    height: 620px;
} */
.app .top-img{
    padding: 30px;
}
.cnt-img-promo {
    flex-direction: row;
    align-items: center;    
}
.top-img {
    width: 33%;
    order: 1;
}
.txt-promo {
    width: 67%;
    order: 2;
}
.lp-subtitle{
    text-align: center;
}
.box-spec {
    padding: 30px 20px 60px 20px;
}
.lp-innertitle{
    padding-bottom: 40px;
}
.pdt-offer img {
    display: block;
    width: 65%;
    max-width: 1000px;
    margin: 0 auto;
}
.footer-nav {
    padding-top: 0;
}
.footer-nav ul{
    gap: 30px;
    display: flex;
}
}
@media only screen and (min-width: 1024px) {
      .scrolled  .main-item > a, .scrolled  .main-item >a:link {
        color: #004b44;
    }
    .quote .width-cnt h4::before{
        width: 70px;
        height: 55px;
        left: -37px;
    }
    .quote .width-cnt h4::after{
        width: 70px;
        height: 55px;
        right: -37px;
    }
    .pdt-offer .txt{
        max-width: 400px;
        position: absolute;
        right:20px;
        top: 50%;
        transform: translateY(-50%);
        z-index: 100;
        margin: 0;
        background: rgba(235, 55,56,.9);
    }
    .pdt-offer img {
        display: block;
        width: 65%;
        max-width: 1000px;
        margin: 0;
    }
    .faq{
		margin-bottom: 50px;
    }
    .faq .width-cnt{
        display: flex;
        justify-content: space-between;
		max-width: 1280px;  /* new  MDG */
		width: 100%;  /* new  MDG */

    }
    .faq .txt-box{
        width: 30%;
    }
    .faq-list{
        width: 60%;
        margin-top: 0;
    }
    .box{
         padding: 30px 50px;
         margin-bottom: 50px;
    }
    .box::before{
        width: 80px;
        height: 80px;
        margin-right: 40px;
    }
    .box .txt {
        width: calc(100% - 130px);
    }
    .advantage .width-cnt{
        padding-right: 30px;
    }
    .advantage .txt{
        margin: 0 auto 0 30px;
        padding: 30px;
    }
    .advantage.tutela .txt{
        margin: 0 auto 0 30px;
        padding: 30px;
        position: relative;
    }    
    .row-button a, .row-button a:link{
        height: 50px;
    }
    header .cnt-img {
        height: auto;
    }
    header .cnt-img img {
        width: 100%;
        height: auto;
    }
    header .row-button{
        justify-content: flex-start;
    }
    footer {
        padding: 40px 20px;
    }
    footer .width-cnt{
        display: flex;  
        align-items: center;    
        justify-content: space-between; 
        flex-wrap: wrap;
    }
    footer .title{
        width: 100%;
        text-align: right;
    }
    .offerta ul{
        display: flex;
        justify-content: space-between;
        padding-top: 70px;
    }
    .offerta.download-store{
        width: 100%;
    }
    .offerta.download-store ul{
        justify-content: center;
        gap: 50px;
        padding-top: 40px;
    }
    .offerta li{
        width: 30%;
    }

    .offerta.download-store li{
        width: auto;
    }

    .menu-toggle{
        display: none;
    }
    .nav-bar{
        padding: 10px 20px;
    }
    nav {
        overflow-y: visible;
    }
    .interne .nav-bar {
        position: relative;
        left: 0;
        transform: translateX(0);
    }
    .main-nav #menu-primary {
        overflow: visible;
        position: static;
        width: auto;
        max-width: 100%;
        z-index: 200;
        padding: 0;
        background: transparent;
        top: 100px;
        transition: all 0.6s ease;
        height: auto;
        display: flex;
    }

    .main-item{
        margin: 0 0 0 20px;
    }
    .main-item > a, .main-item >a:link{
        color: #fff;
        background: transparent;
    }
/*     .main-item >a:hover{
        background: #00f5d8;
        color: #004B44;
    }     */
    .interne .main-item > a, .interne .main-item >a:link{
        color: #004B44;
    }


}
@media only screen and (min-width: 1280px) {
    .advantage img{
        height: 650px;
    }
    .advantage .cnt-img{
        height: 650px;
    }
}
@media only screen and (min-width: 1366px) {
    .agos-renting-graph img {
    width: 100%;
    max-width: 1000px;
	}
    .offerta{
        padding: 70px 20px;
    }
    main{
        padding: 20px 0;
    }
    .nav-bar {
        padding: 10px 20px;
    }
    .quote .width-cnt h4::before{
        left: -70px;
    }
.quote .width-cnt h4::after{
    right: -70px;
}
.quote {
    padding: 70px 50px;
}
}

@media only screen and (min-width: 1480px) {
    .advantage .cnt-img{
        height: auto;
    }
    .advantage img{
        width: 100%;
        height: auto;
    }
    .advantage.tutela img{
        width: 100%;
        height: auto;        
    }

}