 input[type=number]::-webkit-inner-spin-button,
 input[type=number]::-webkit-outer-spin-button {
     -webkit-appearance: none;
     margin: 0;
 }

 html {
     scroll-behavior: smooth;

 }

 .mob {
     display: none !important;
 }

 * {
     box-sizing: border-box;
 }

 .fascia3 h1 {
     font-size: 38px;
     display: block !important;
     font-weight: bold;
     padding-bottom: 10px;
 }

 :root {
     --Rosso: #E41548;
     --blu: #1649D8;
     --verde: #41C516;
     --grigio: #FAFAFA;
     --azzurro: #F0F7FF;
     --nero: #1A1A1A;
 }


 body {
     font-family: 'Roboto', arial;
     font-size: 20px;
     margin: 0 auto;
     padding: 0;
     scroll-behavior: smooth;
     background: white;
     padding-bottom: 6vw;
 }

 .header {
     width: 100%;
     box-shadow: 0 4px 6px 0px rgb(236 236 236);
     display: block;
     padding: 0.2%;
     box-sizing: border-box;
     min-width: 1240;
 }

 .header .logo {
     width: 100%;
     margin: 0.5% auto;
     display: block;
     max-width: max-content;
     padding-bottom: 0%;
 }

 .centrale {
     max-width: 1100px;
     margin: 0 auto;
     display: block;
 }

 .offerta {
     background-color: var(--azzurro);
     width: 48%;
 }

 .carosello {
     width: 100%;
 }

 .boll {
     width: 12em;
     display: inline-block;
     position: absolute;
     margin-left: -13em;
     margin-top: 2.2em;
 }

 h1 {
     font-size: 30px;
     font-weight: normal;
     padding-left: 20px;
     padding-top: 1%;
     margin: 0;
     padding: 2%;
     display: inline-block;

 }

 .fascia1 h1 {
     margin-bottom: 3%;
 }

 .t1 {
     width: 92%;
     margin: 0 auto;
     font-size: 15px;
     text-align: left;
     margin: 3% auto;
 }


 .tab1 {
     font-weight: bold;
     width: 98%;
     margin: 0 auto;
     margin-left: 12px;
 }


 .tab1 td {
     width: 50%;
 }

 .check {
     width: 13%;
     vertical-align: top;
     margin-right: 1%;
     font-size: 25px;
 }



 td>div {
     width: 83%;
     display: inline-block;
     padding-top: 3%;
     font-size: 15px;
 }


 /**** FORM ***/


 .card {
     width: 100%;
     background: #fff;
     border-radius: 12px;
     border-bottom-left-radius: 0;
     overflow: hidden;
     border: 1px solid #eeeeee;
     max-width: 450px;
     margin: 0 auto;
 }

 .card-header {
     background: #1691ff;
     color: #fff;
     text-align: center;
     /* padding: 18px 16px; */
     font-size: 23px;
     font-weight: 600;
     padding: 16px;
     padding-inline: 40px;
 }

 .form {
     padding: 20px;
     padding-bottom: 0;
 }

 .row {
     display: flex;
     gap: 12px;
 }

 .field {
     display: flex;
     flex-direction: column;
     margin-bottom: 14px;
     width: 100%;
 }

 .field label {
     font-size: 17px;
     font-weight: 600;
     margin-bottom: 6px;
 }

 .field input {
     height: 46px;
     border-radius: 8px;
     border: 1px solid #e3e3e3;
     padding: 26px 14px;
     font-size: 17px;
 }

 .field input::placeholder {
     color: #9e9e9e;
 }

 .phone {
     display: flex;
     align-items: center;
     border: 1px solid #e3e3e3;
     border-radius: 8px;
     overflow: hidden;
     height: 46px;
 }

 .prefix {
     background: white;
     padding: 0 12px;
     font-size: 14px;
     border-right: 1px solid #e3e3e3;
     display: flex;
     align-items: center;
     gap: 6px;
     width: 17%;
 }

 .phone input {
     border: none;
     flex: 1;
     height: 100%;
     padding: 0 12px;
     font-size: 15px;
 }

 .phone input:focus {
     outline: none;
 }

 .privacy {
     display: flex;
     align-items: flex-start;
     gap: 8px;
     font-size: 13px;
     margin: 16px 0;
 }

 .privacy input {
     accent-color: #1aa34a;
     width: 18px;
     height: 18px;
 }

 .privacy a {
     color: #1a73e8;
     text-decoration: underline;
 }

 .cta {
     width: 100%;
     height: 56px;
     border: none;
     border-radius: 28px;
     background: #e3124c;
     color: #fff;
     font-size: 20px;
     font-weight: 700;
     cursor: pointer;
 }

 .cta:hover {
     opacity: 0.95;
 }

 .offerta,
 .cont_form {
     display: inline-block;
     vertical-align: top;
     margin-top: 1%;
     border-radius: 12px;
     padding-bottom: 20px;
 }

 .cont_form {
     width: 44%;
     float: right;
 }

 .mezzo {
     width: 48%;
 }


 /* Bottone verde pill */
 .cta2 {
     width: 300px;
     height: 70px;
     margin: 20px auto 0;
     background: var(--verde);
     border-radius: 999px;
     position: relative;
     display: flex;
     align-items: center;
     justify-content: center;
     /* box-shadow: 0 8px 18px rgba(0, 0, 0, .25); */
     cursor: pointer;
     user-select: none;
     text-decoration: none;
     color: white;
 }

 .cta2 .main {
     font-weight: 900;
     font-size: 30px;
     letter-spacing: .5px;
     line-height: 1;
     margin-top: -1%;
     margin-left: -4%;
 }

 .cta2 .sub {
     position: absolute;
     left: 0;
     right: 0;
     text-align: center;
     top: 50px;
     font-style: italic;
     font-weight: 500;
     font-size: 13px;
     color: rgba(255, 255, 255, .9);
     text-shadow: 0 1px 0 rgba(0, 0, 0, .15);
     margin-top: -1%;
     margin-left: -4%;
 }

 /* Cerchio freccia a destra */
 .cta2 .arrowWrap {
     position: absolute;
     right: 22px;
     width: 44px;
     height: 44px;
     border-radius: 50%;
     border: 2px solid rgba(255, 255, 255, .95);
     display: grid;
     place-items: center;
     background: rgba(0, 0, 0, .08);
 }

 .cta2 svg {
     display: block;
 }

 .fascia_blu {
     background: #1691ff;
     color: white;
     padding: 0.5%;
     font-weight: bold;
     text-align: center;
     margin-top: 2%;
     padding-bottom: 2%;
     min-width: 1240px;
 }

 .cont_fascia_blu {
     display: flex;
     width: 42%;
     margin: 0 auto;
     text-align: center;
     padding-top: 16px;
     min-width: 1000px;
 }


 .cont_fascia_blu img {
     display: block;
     margin: 0 auto;
     width: 25%;
 }

 .ele {
     width: 33%;
     text-align: center;

     font-size: 20px;
     padding-inline: 3%;
     font-weight: normal;
 }

 .check-list {
     list-style: none;
     padding: 0;
     margin: 0;
     margin-top: 5%;
     /* width: 78%; */
     /* margin: 6% auto; */
 }

 .check-list li {
     display: flex;
     align-items: center;
     gap: 10px;
     font-size: 26px;
     color: #000;
     margin-bottom: 7px;
 }

 .check-list li img {
     width: 30px;
     height: 30px;
     flex-shrink: 0;
 }

 .fascia3 {
     background-color: var(--azzurro);
     min-width: 1240px;
 }

 .cont_fascia_3 {
     width: 1201px;
     margin: 0 auto;
     display: flex;
 }

 .dx_fascia_3 {
     width: 40%;
     margin: 2%;
 }

 .img_sx {
     width: 28VW;
     HEIGHT: max-content;
     margin: 2% auto;
     min-width: 600px;
 }

 .cta-attiva {
     width: 80%;
     height: 70px;
     border-radius: 999px;
     border: 2px solid rgb(28 28 28 / 70%);
     display: flex;
     align-items: center;
     justify-content: center;
     text-decoration: none;
     font-size: 24px;
     font-weight: 700;
     color: black;
     position: relative;
     margin: 0 auto;
     margin-top: 5%;
     margin-bottom: 4%;
     margin-left: 0;
 }

 .flag {
     width: 50%;
 }









 :root {
     --card-radius: 12px;
     --shadow: 0 10px 24px rgba(0, 0, 0, .12), 0 1px 2px rgba(0, 0, 0, .08);
     --gold: #F9B008;
     --text: #111;
     --muted: #8d8d8d;
     --border: #d9d9d9;
 }

 /* container */
 .wrap {
     width: 1240px;
     /* come lo screenshot */
     height: auto;
     /* come lo screenshot */
     display: flex;
     align-items: center;
     justify-content: center;
     margin: 0 auto;
     /* display: none; */
 }

 .card2 {
     width: 90%;
     height: 230px;
     background: #fff;
     border-radius: var(--card-radius);
     box-shadow: var(--shadow);
     display: flex;
     align-items: center;
     padding: 34px 44px;
     gap: 54px;
     position: relative;
 }

 /* Left block */
 .brand {
     width: 190px;
     display: flex;
     flex-direction: column;
     gap: 14px;
     padding-left: 12px;
 }

 .brand .name {
     font-weight: 600;
     font-size: 16px;
     letter-spacing: .1px;
 }

 .brand .rating {
     display: flex;
     align-items: center;
     gap: 12px;
 }

 .brand .rating .num {
     font-weight: 800;
     font-size: 36px;
     color: var(--gold);
     line-height: 1;
 }

 .stars-img {
     height: 26px;
     width: auto;
     display: block;
     transform: translateY(2px);
 }

 /* slider wrapper: frecce possono uscire */
 .reviews-slider {
     width: 880px;
     position: relative;
     overflow: visible;
     /* IMPORTANTISSIMO */
     margin-left: 3%;
 }

 /* viewport: taglia solo le recensioni */
 .reviews-viewport {
     overflow: hidden;
     /* width: 80%; */
     /* margin-left: 13%; */
 }

 /* track e card */
 .reviews-track {
     display: flex;
     transition: transform .6s ease;
 }

 .review {
     flex: 0 0 49%;
     padding: 0 18px;
     font-size: 16px;
 }

 /* frecce */
 .reviews-slider .navbtn {
     position: absolute;
     top: 50%;
     transform: translateY(-50%);
     width: 32px;
     height: 32px;
     border-radius: 50%;
     border: 1px solid #ddd;
     background: #fff;
     cursor: pointer;
     font-size: 22px;
     line-height: 32px;
     display: flex;
     align-items: center;
     justify-content: center;
 }

 /* fuori dal viewport (come screenshot) */
 .reviews-slider .navbtn.left {
     left: -38px;
 }

 .reviews-slider .navbtn.right {
     right: -28px;
 }

 .foo {
     width: 100%;
     text-align: center;
     padding: 1%;
     font-size: 14px;
     min-width: 1240px;
 }

 a {
     color: inherit;
     text-decoration: none;
 }

 .fascia_nera table {
     color: white;
     margin: 0 auto;
     width: 40%;
     font-size: 24px;
     padding: 0;
     min-width: 640px;
 }

 .fascia_nera {
     background-color: #000;
     color: white;
     position: fixed;
     bottom: 0vw;
     width: 100%;
     FONT-SIZE: 12PX;
 }

 .fascia_nera .cta2 {
     font-size: 23px;
     FONT-WEIGHT: 900;
     margin: 2% auto;
     width: 100%;
 }

 .verified {
     margin-left: 60%;
 }

 .who img {
     display: inline-block;
     margin-left: 20%;
     vertical-align: bottom;
     width: 30%;
     margin-left: 38%;
 }

 .who {
     margin: 2%;
     margin-inline: 0;
     font-weight: bold;
 }

 .topstars img {
     width: 35%;
     margin-left: -1%;
     margin-top: 0%;
 }

 .pagina {
     min-width: 1240px;
     padding-bottom: 3%;
 }

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

     /* togli i min-width che ti bloccano il responsive */
     .pagina,
     .header,
     .fascia_blu,
     .fascia3,
     .cont_fascia_blu,
     .cont_fascia_3,
     .foo {
         min-width: 0 !important;
         width: 100% !important;
         padding-top: 3%;
     }

     body {
         padding-bottom: 90px;
         /* spazio per fascia nera fissa */
     }

     /* HERO: tutto verticale */
     .offerta,
     .cont_form {
         width: 100% !important;
         float: none !important;
         display: block !important;
         margin: 12px auto !important;
         font-size: 16PX !IMPORTANT;
         margin-bottom: 0;
         padding-bottom: 0;
     }

     .centrale {
         max-width: 100% !important;
         padding: 0 12px;
     }

     /* fascia blu: icone in colonna */
     .cont_fascia_blu {
         min-width: 0 !important;
         width: 59% !important;
         flex-direction: column;
         gap: 14px;
         font-size: 28px;
         margin: 0 auto;
         padding: 0;
     }

     .ele {
         width: 100% !important;
         font-size: 21px;
         margin-top: 5%;
         margin-bottom: 7%;
     }

     /* fascia 3: immagine sopra, testo sotto */
     .cont_fascia_3 {
         width: 100% !important;
         flex-direction: column;
         padding: 0 12px;
     }

     .img_sx {
         width: 100% !important;
         min-width: 0 !important;
         height: auto !important;
         margin: 12px 0 !important;
     }

     .dx_fascia_3 {
         width: 100% !important;
         margin: 0 !important;
     }

     /* RECENSIONI: card + slider full width */
     .wrap {
         width: 100% !important;
         height: auto !important;
         padding: 16px 12px;
     }

     .card2 {
         width: 100% !important;
         height: auto !important;
         flex-direction: column;
         align-items: flex-start;
         gap: 18px;
         padding: 18px;
     }

     .brand {
         width: 100% !important;
         padding-left: 0 !important;
     }

     .reviews-slider {
         width: 100% !important;
         margin-left: 0 !important;
     }

     /* 1 recensione visibile */
     .review {
         flex: 0 0 100% !important;
         padding: 0 10px !important;
         width: 2%;
     }

     .review .text {
         max-width: 100% !important;
         FONT-SIZE: 16PX;
     }

     /* frecce dentro al box su mobile (piÃ¹ comodo) */
     .reviews-slider .navbtn.left {
         left: -8px !important;
     }

     .reviews-slider .navbtn.right {
         right: -8px !important;
     }

     /* fascia nera: piÃ¹ compatta */
     .fascia_nera table {
         width: 92% !important;
         min-width: 0 !important;
         font-size: 14px;
     }

     .fascia_nera .cta2 {
         width: 109% !important;
         height: 56px !important;
         font-size: 15px !important;
         PADDING-INLINE: 0;
         margin: 10px auto !important;
     }

     .who img {
         display: inline-block;
         margin-left: 20%;
         vertical-align: bottom;
         width: 42%;
         margin-left: 16%;
     }

     .check-list {

         margin-left: 5%;
     }

     .t2 {
         font-size: 25px;
         margin-left: 4%;
     }

     .cta2 {
         width: 90%;
     }

     .card-header {
         padding-inline: 10px;
         FONT-SIZE: 20PX;
     }

     .reviews-viewport {
         overflow: hidden;
         width: 80%;
         margin-left: 13%;
     }

     .prefix {
         gap: 2px;
     }

     .boll {
         width: 45%;
         display: block;
         margin: 1%;
         position: static;
     }

     .desk {
         display: none;
     }

     .mob {
         display: block !important;
     }

     .carosello {
         width: 95%;
         margin: 0 auto;
         display: block;
     }

     .t1 {
         width: 95%;
         margin: 0 auto;
         font-size: 15px;
         text-align: left;
         margin: 3% auto;
     }

     .check {
         width: 13%;
         vertical-align: top;
         margin-right: 1%;
         font-size: 21px;
         margin-top: 16px;
         top: 4px !important;
     }

     .fascia3 h1 {
         font-size: 31px;
         display: block !important;
         font-weight: bold;
         padding-bottom: 10px;
     }

     .check-list li {


         font-size: 20px;

     }

     .brand {
         display: none;
     }

     .pagina {
         min-width: 1240px;
         padding-bottom: 3%;
     }

     .offerta>.mob {

         display: flex !important;
     }

     .cta-attiva {

         margin: 0 auto;
         margin-top: 5%;
         margin-bottom: 4%;

     }

     h1 {
         font-size: 24px;
     }
 }