* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
.service-card-s h3 { color:#fff}
 .b-rows h1 { margin:10px 5%}
.iperlink {color: #e7b21f;font-weight:bold;text-decoration:none}
.recensioni-block li { text-align:left}
.prev-step {
  display: inline-block;
  position: relative;
  width: 40px !important;
  height: 40px;
    padding:0 !important;
  background:#000;
  border-radius: 50%; 
  text-align: center;
  line-height: 36px;
  font-size: 20px;
  font-weight: bold;
  color: #000;
     
  cursor: pointer;
  transition: background-color 0.3s ease;
}

 
.prev-step::before,
.prev-step::after {
  content: '';
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 16px;
  height: 3px;
  background-color: #fff;
}

.prev-step::before {
   top:26px;
    left:25%;
  transform: translateY(-50%) rotate(45deg);
}

.prev-step::after {
 top:16px;left:25%;
  transform: translateY(-50%) rotate(-45deg);
}

.prev-step:hover {
 background:#0c163c;
}
h4 {font-weight: 400;text-transform:uppercase;font-size: 36px;}
.images {display:flex; margin:50px 0;width:100%;gap:20px;flex-direction: row;justify-content: space-evenly;}
.images img {flex:0 0 30%; width:3%; display:flex;}
.hero h3 {
    display:flex;
    color: #fff;
    font-size: 40px;
    text-align: center;
    text-transform: uppercase;
    gap: 10px;
    align-content: center;
    justify-content: center;
    align-items: center;
    }
.line-heis {width: 2px;height: 20px;background:#ffffff;position:relative;display: flex;}
.content-jotform .elementor-widget-container {top:0;padding: 0px;position:relative;}
.b-rows .content-jotform #multi-step-form { background:none !important}
.hero .content-jotform #multi-step-form { width:80%}
.hero .elementor-widget-container {margin-top: 0px;padding: 0px;position:relative;}
.elementor-widget-container {margin-top: 100px;padding: 30px;position:relative;}
form {/* width:450px; */display:flex;position:relative;height:auto;margin:auto;/* background: #111; *//* box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3); */}
.secondary-color .content-jotform  { margin:auto;}
.hero .content-jotform {width: 80%;background: none;}
.hero .content-jotform h2 span {/* color:#fff !important; */font-size: 22px; margin:20px 0;font-weight: 100;width: 80%;display: inline-block;}
.content-jotform {width: 100%;background: #bfd4eb;}
.image_slide { width:100%; height:100vh}
.wrapper-content {
    width: 100%;
    margin:auto;
}
 
h6 { font-size:16px; font-weight:200; text-align:justify}
header div {/* margin:0 5%; */}
 header div ul {
        flex-direction: row;
        position: relative;
        left: 0;
        width: 100%;
        display: flex;
        gap: 30px;
        list-style: none;
        height: 50px;
    }
header div ul  li {/* padding:0 20px  0 0; */}
header div ul  li:last-child { padding:0 20px  0 0; border-right:none}
 header div ul li a {color: #000000;text-decoration:none;font-weight: bold;font-size: 14px;text-transform:uppercase;transition:  0.5s linear;height: 100%;position: relative;line-height: 50px;padding:0;display: inline-block;}
 header div ul li a:hover { color:#edb61c; }
.contactphone {width: auto;display: flex;position: relative;float: right;margin: 0 5%;}
#message { position:relative; width:100%; height:200px; border:1px solid #ccc; border-radius:8px; resize:none}
 
    nav {
        position: fixed;
        width: 100%;
        height: auto;
        display: none;
        background: rgb(0 0 0 / 60%);
        right: 0;
        top: 80px;
        backdrop-filter: blur(10px);
        padding: 50px 0;
        z-index: 1000;
    }
.sectionmobile { display: none; }
.sectionsplit {width: 50%;display: flex;flex-direction: column;justify-content: center;align-content: flex-start;align-items: center;margin: auto;left: 10%;position: relative;}
#displayblocked {
    background: #00000050;
    display: none;
    z-index: 999;
    position: fixed;
    width: 100%;
    height: 110vh;
}
.mini-link { position:fixed; bottom:20px; left:20px; background:#ccc; border-radius:50px}
.mini-link i { margin:9px 10px; font-size:30px}
#cookie-banner.show, #mini-link.show, #cookie-customization.show, #displayblocked.show {
    display: flex;
    animation: fadeIn 1s;
    flex-direction: column;
}
#cookie-customization {
    display: none;
    z-index: 1000;
    background: #fff;
    width: 90%;
    position: fixed;
    height: auto;
    bottom: 20px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    margin: auto;
    padding: 20px;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    -moz-box-shadow: 0px 0px 10px #00000040;
    -webkit-box-shadow: 0px 0px 10px #00000040;
    box-shadow: 0px 0px 10px #00000040;
}

#cookie-banner p {
    margin: 10px;
    width: 100%;
    font-size:12px;
}

#cookie-customization p {
    margin: 10px 0;
    font-size: 16px;
}

#cookie-banner h3 {
    margin: 10px;
    width: 100%;
}

#accept-all-cookies {
    
    
}

#accept-all-cookies:hover {
    background: #f61213 !important;
    border: 2px solid #f61213;
    color: #fff !important
}
.whatsapp-btn {
    display: inline-block;
    position:fixed;
    z-index:99999;
    align-items: center;
    justify-content: center;
    background-color: #26a69a;
    color: white;
    text-decoration: none;
    font-size: 16px;
    font-weight: 200;
    padding: 5px 20px;
    border-radius: 4px;
    bottom:20px;
    right:20px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
  }

  .whatsapp-btn:hover {
    transform: scale(1.05);
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.3);
  }

  .whatsapp-btn i {
    margin-right: 10px;
    font-size: 16px;
  }
#cookie-banner {
    display: none;
    position: fixed;
    margin-top:50px;
    top: 50%;                 /* Position in the middle vertically */
    left: 50%;                /* Position in the middle horizontally */
    transform: translate(-50%, -50%); /* Adjust position to be centered */
    width: auto;
    height: auto;
    background-color: #fff;
    color: #000;
    text-align: left;
    padding: 10px;
    z-index: 1000;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    -moz-box-shadow: 0px 0px 10px #00000040;
    -webkit-box-shadow: 0px 0px 10px #00000040;
    box-shadow: 0px 0px 10px #00000040;
}
#cookie-banner button, #cookie-customization button {
    background: none;
    border: 2px solid #000000;
    color: #000000;
    padding: 10px 20px;
    margin: 5px 5px;
    cursor: pointer;
    font-weight: bold;
    border-radius: 0px;
}

#save-preferences {
    bottom: 20px;
    position: absolute;
}

#cookie-banner button:hover, #cookie-customization button:hover {
    background-color: #000;
    color: #fff !important;
    
}
body {
    font-family: 'Montserrat', sans-serif;
    line-height: 1.6;
    color: #333;
    scroll-behavior: smooth;
    overflow-x: hidden;
}

 

header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    gap:100px;
    box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.2); /* Ombra grigia sfocata */
    background: #fff;
    backdrop-filter:blur(10px);
    padding: 20px 0;
    z-index: 1000;
    display: flex;
    color: #fff;
    /* height: 160px; */
    transition: background 0.3s;
    transition: padding 0.5s ease;
    /* border-bottom: 2px solid #ddd; */
    /* flex-direction: row-reverse; */
    justify-content: space-between;
    align-items: center;
}
.desktopheader {display: flex;}
.mobileheader {display: none; z-index:99999}
header.scrolled {
    background: black;
}
 
.contactphone a {width:150px;padding:5px 10px; position:relative;
                  background-image: linear-gradient(to right, #e7b21f 50%, #0056b3 50%);
    background-size: 200% 100%;
    background-position: 100% 0;
            transition:all 0.5s linear;
            color:#fff;text-decoration:none;display:flex;align-content: center;justify-content: center;align-items: center;}
.contactphone a:hover { color:#fff; background-position: 0 100%;}
.contactphone a:hover .text-botton { display:none }
.contactphone a:hover .number-botton { display:block }
  .number-botton { display:none }
.mens {width:100%;display: flex;}
header .logo {
    /* width:100%; */
    margin: 0  4%;
    font-size: 34px;
    font-weight: bold;
    color: #000;
    height: 70px;
    display:flex;
    align-content: center;
    align-items: center;
    gap: 10px;
    justify-content: center;
}
.imglogo {width: 200px;height: 54px;position:relative;margin:auto;background:url(../immagini/logo.png) no-repeat center/cover}
header .logo a {
    font-size: 34px;
    font-weight: bold;
    color: #000;
    text-decoration:none;
    font-style:italic;
    /* height: 50px; */
}

header .logo span {
    color: #ff5722;
}

 nav ul {
    display: flex;
    list-style: none;
    overflow: hidden;
    transition: height 0.3s ease-in-out;
    align-content: center;
    justify-content: center;
}

 nav ul li {
    margin: 0 15px;
    border:2px solid transparent;
    padding:10px 15px;
   transition: border 0.8s ease;
}
 nav ul li:hover {
    margin: 0 15px;
    border:2px solid #fff
    
}

 nav ul li a {
    color: #eee;
    text-decoration: none;
    font-size: 16px;
    transition: all 0.8s;
    font-weight: 100;
    text-transform: uppercase;
}

header nav ul li a:hover {
    color: #fff;
   
}

header .menu-toggle {
    display: block;
    font-size: 24px;
    position: relative;
    cursor: pointer;
}
.hero img {
    width: 450px;
    height: auto;
    
    animation: zoomIn 1s ease-in-out forwards;
}
/* Menu Mobile */
@media (max-width: 768px) {
 .content-nss .wrapper-content {
    width: 90%;
    margin: auto;
}
    .hero img {
    width: 90vw;
     
}
    .recensioni { flex-direction:column; gap: 5px}
    .newhero h4 { display:none; }
    .hero h1 { font-size:24px !important; }
    .hero .sectiondesktop {width: 90% !important; display:none }
    .mobile-el { display:block !important }
     .desktop-el { display:none }
    .sectiondesktop h3 { font-size:28px; display:none}
    section {
      padding: 20px 0 !important;
}
      #counterBlock {display: flex;flex-direction: column;height: auto !important;padding: 30px 0;gap: 10px !important;}
    .start-box02 {border-right:0 !important;/* border-bottom: 2px solid #ed1b24; */}
    .start-box02 div:first-child { font-size:30px !important}
    .start-box02 div{ font-size:12px !important}
    .testimonial:first-child { background:#eee}
    .testimonial:last-child {background:#eee} 
    .testimonial, .faq-item  {width: 100% !important;margin: auto !important;}
    .service-card  { width:100% !important}
 .whatsapp-btn { width:60px; height:60px; display:flex;  transition: transform 0.3s ease-in-out;
  animation: popupEffect 3s ease-in-out infinite;
}
    .service-card .fas {
     color: #000000 !important;
}
      .grid-colon {display:flex;gap: 20px !important;width: 100vw;flex-direction:column}
    .rows-info a { font-size:20px !important}
        .noteinfo .itemgrid-colon { padding:60px 20px !important}
    .itemgrid-colon h2 { font-size:22px !important}
   .itemgrid-colon {width: 90% !important;margin:0 5%; padding:10px 0 !important; border-bottom:1px solid #ddd}
    .itemgrid-colon:last-child { border:none;}
    .newsletter .fas{ color:#0089ff !important}
    .menu-toggle  .fas {
     color: #000 !important;
}
    .fa-solid, .fas {
     color: #fff !important;
}
    .mobileheader {display: none;}
    header .logo {
    font-size: 34px;
    font-weight: bold;
    color: #000;
    height: 50px;
    display:flex;
    align-content: center;
    align-items: center;
    gap: 10px;
    margin: 0 !important;
}
.imglogo {width: 148px;height:40px;display:flex;position:relative;margin:5px 0;background:url(../immagini/logo.png) no-repeat center/cover;align-content: center;justify-content: center;align-items: center;}
header .logo a {
    font-size: 24px;
    font-weight: bold;
    color: #000;
    text-decoration:none;
    font-style:italic;
    height: 50px;
}
    .products { padding : 30px 0 30px 0 !important}
    .products p { margin:10px}
    .services {padding: 20px 0 !important;}
    .hero { margin-top:0 !important}
.elementor-widget-container h2  {margin:0 5%;font-size:20px !important}
  .infoproduct .product-grid { width:92% !important; margin:auto}
    .jotformclas .product-grid { width:90% !important; margin:auto}
    .product-grid {
    /* display: flex !important; */
    flex-direction: column;
 
    }

    .b-row {
    height: 50vh !important;
    width: 100%;
}
    #image_slide {height: 100% !important;width:100%}
    .wrapper-content {
    width: 100%;
    margin: auto;
}
    nav {position:fixed;width:100%;height:100vh;display: none;background: #eee;left:0;top:0px;/* backdrop-filter: blur(10px); */}
    header .menu-toggle {
        display: block;
        z-index: 999999;
        color: #000;
    }
   @keyframes popupEffect {
  0%, 100% { transform: scale(1); }
  10%, 30%, 50% { transform: scale(1.3); }
  20%, 40% { transform: scale(1); }
}
    .elementor-widget-container {/* padding: 30px 0; *//* top:40px; */position:relative;}
    
    
   

@keyframes repeatPopup {
  0%, 72.72% { opacity: 1; }
  72.73%, 100% { opacity: 0; }
}

.whatsapp-btn-container {
  animation: repeatPopup 11s infinite;
  animation-delay: 8s;
}

 

.whatsapp-btn i {
    margin: auto;
 
    
}
    .ss { display:none }
.sectionmobile { display: flex !important; flex-direction: column; position: relative; gap: 20px; }
    .newhero 
    .hero h1 {
     /* text-align:center; */
     line-height: 1.1;
}
    header nav ul {
        flex-direction: column;
        position: absolute;
        top: 70px;
        left: 0;
        width: 100%;
        /* background: black; */
        overflow: hidden;
    }

    header.nav-open nav ul {
        height: calc(100vh - 70px);
    }

    header nav ul li {
        margin: 1px 0;
        text-align: center;
    }
    header nav ul li a {
    color: #000;
    text-decoration: none;
    font-size: 20px;
    font-weight: 100;
}
}
.line-ico { width:200%; right:-10%; height:150px; position:absolute; bottom:-140px; background:#fff;  transform: skew(0deg, -3deg);}

/* Hero Section */


.newhero .btn {  background-image: linear-gradient(to right, #ed1c24 50%, #b10000 50%);
    background-size: 200% 100%;
    background-position: 100% 0;
            transition:all 0.5s linear; color: #fff;padding: 10px 20px;text-decoration: none;font-size: 18px;border: none; cursor: pointer;  display: flex;align-items: center;gap: 10px; justify-content: center;text-transform: uppercase;align-content: center;margin: 20px auto;}

  .newhero .btn .fas {
        color: #fff !important;
    }
.newhero .btn i {
    font-size: 20px;
}

.newhero .btn:hover {
  color:#fff; background-position: 0 100%;
}
.content-chisiamo { padding:50px 0px 50px 50px ; color:#000; text-align:justify; border-top:1px solid #0056b3;border-left:1px solid #0056b3; }
.chisiamo{ width:80%; margin:40px auto; position:relative; display:flex; gap:80px }
.text-chisiamo {width:200px;position:relative;color:#000;height: 140px;text-align:left;font-size:30px;font-weight:600;text-transform:uppercase;border-bottom: 2px solid #0056b3;}
.newhero  {
    /* margin-top: 90px; */
    /* height: 400px; */
    background: #fff;
    /* background-repeat: no-repeat; */
    /* background-position: 50% 0%; */
    /* background-size: cover; */
    /* background-color: rgba(0, 0, 0, 0.95); */
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-evenly;
    align-items: center;
    text-align: center;
    color: #fff !important;!i;!;
    gap: 40px;
}
.newhero h4 { font-size:20px;  }
.newhero .sectiondesktop { width:80% }
.hero {
    padding:0;
    margin-top: 110px;
    min-height: 100%;
    background-repeat: no-repeat;
    background-position: 50% 0%;
    background-size: cover;
    background-color: #e6e6e6;
    display: flex;
    flex-direction: row-reverse;
    justify-content: center;
    /* align-items: center; */
    text-align: center;
    color: #fff !important;!i;!;
    /* gap: 40px; */
}

.products h1 {margin: 30px;line-height:1.2em}


.hero h1 {
    font-size: 30px;
    line-height: 1.2;
    animation: slideUp 1.5s ease-in-out forwards;
    color: #ffffff;
    text-align: center;
}

.hero h1 span {
    color: #ed1c24;
}

.hero p {
    font-size: 18px;
    margin-bottom: 30px;
    animation: fadeIn 1.5s ease-in-out forwards;
    text-align: justify;
}
.request-motor a {  background-image: linear-gradient(to right, #ed1c24 50%, #b10000 50%);
    background-size: 200% 100%;
    background-position: 100% 0;
            transition:all 0.5s linear; color: #fff;padding: 10px 20px;text-decoration: none;font-size: 16px;border: none; cursor: pointer;  display: flex;align-items: center;gap: 10px; justify-content: center;text-transform: uppercase;align-content: center;margin: 0px auto;}
.request-motor a:hover {
  color:#fff; background-position: 0 100%;
}
.hero .btn {  background-image: linear-gradient(to right, #eda61c 50%, #ffffff00 50%);
    background-size: 200% 100%;
    background-position: 100% 0;
            transition:all 0.5s linear;
            border:2px solid #fff; color: #fff;padding: 10px 20px;text-decoration: none;font-size: 18px;  cursor: pointer;  display: flex;align-items: center;gap: 10px; justify-content: center;text-transform: uppercase;align-content: center;margin: 20px auto;}

   .hero .btn .fas {
        color: #fff !important;
    }
.hero .btn i {
    font-size: 20px;
}

.hero .btn:hover {
  color:#fff; background-position: 0 100%;  border:2px solid #eda61c;
}
.hero .btn:hover  .plus-sign::before {
  content: '';
  position: absolute;
  background-color: #fff;
       transition: all 0.5s;
   
}
.hero .btn:hover  
.plus-sign::after {
  content: '';
  position: absolute;
  background-color: #fff;
       transition: all 0.5s;
   
}


/* --- Stili per la Sezione Servizi --- */
.services {
    padding:20px 0;
    background:url(../immagini/backgroundsss.png) no-repeat bottom #0056b3;
    text-align: center;
}
.services h2 { color:#fff }
.information {
    padding: 20px 0 0px 0;
    background: #fff;
    text-align: center;
}
.adgg_fpo {background: #0056b3;display:flex;}
.rows-info { margin:50px auto; position:relative}
.recensioni-block { margin:30px 5%; display:flex; flex-direction:column; gap:20px  }
.recensioni-block h2 { margin:0 auto !important; }
.recensioni-block p { font-size:16px !important; line-height:1.8em}
.rows-info a { color:#fff; transition:all 0.5s ease; text-decoration:none; font-size:28px;font-weight:600; text-transform:uppercase;}
.rows-info a:hover { color:#e7b21f}
.services .cont-product-card {
    margin:50px 0;
    gap: 10px;
}
.services .service-grid {
     /* background: #444; */
     color:#fff !important
}
.services .cont-product-card h3{
    
    color:#fff !important
}
.services .cont-product-card p{
    
    color:#ccc !important
}

.service-grid-s{
    display: flex;
    width:90%;
    justify-content: space-between;
    flex-wrap: wrap;
    /* gap: 10px; */
    flex-direction: row;
    margin: auto;
}
.service-grid {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 20px;
}
.service-card h3 {color: #000;text-align:center;font-size: 16px;text-transform: uppercase;}
.service-card-s  .cerchio {border: 2px solid #fff; }
.service-card-s .cerchio:hover { background:#e7b21f ; border: 2px solid #e7b21f ; }
.service-card-s .cerchio:hover i { color:#000 }
.cerchio {border: 2px solid #000;position:relative;display: flex;width: 100px;height: 100px;border-radius:60px;margin: 0 auto;transition:all 0.2s linear}
.cerchio:hover { background:#f60f12; border: 2px solid #f60f12; }
.cerchio:hover i { color:#fff }
.foto1 { background:url(../immagini/autodemolitore.webp) no-repeat center/cover}
.foto2 { background:url(../immagini/rs.jpg) no-repeat center/cover}
.foto3 { background:url(../immagini/autorig.jpg) no-repeat center/cover}
.service-cards {height: 300px;position:relative;display:flex;width: 100%;}
.centerb {margin-top:100px !important }
.service-card-s:first-child { margin-top:0}
.service-card-s:last-child { margin-top:0}
.service-card-s {
    color: #fff !important;!i;!;
    width: 20%;
    margin-top:50px;
    text-align: center;
    transition: 0.3s;
    display: flex;
    flex-direction: column;
    align-content: center;
    justify-content: flex-start;
    align-items: center;
    gap: 20px;
}
.service-card {
    color: #000;
    width: 30%;
    padding: 10px;
    text-align: center;
    transition: 0.3s;
    display: flex;
    flex-direction: column;
    align-content: center;
    justify-content: flex-start;
    align-items: center;
    gap: 20px;
    min-width: 300px;
}

.service-card:hover {
    
    transform: scale(1.05);
}

.service-card i {
    font-size: 40px;
    margin:auto;
    position:relative;
    color: #000;
    transition:all 0.1s linear
}
.service-card-s i {
    font-size: 40px;
    margin:auto;
    position:relative;
    color: #ffffff;
    transition:all 0.1s linear
}

/* --- Stili per la Sezione Testimonianze --- */
.testimonials {
    /* background: #f1f1f1; */
    text-align: center;
}
.recensioni {position:relative;display:flex;border-bottom: 1px solid #ddd;}
.testimonial {
    /* background: white; */
    padding: 20px;
    margin: 20px auto;
    width: 80%;
    max-width: 500px;
    border-radius: 10px;
    /* box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1); */
}

.testimonial p {
    font-style: italic;
    color: #555;
}

.testimonial h4 {
    color: #ed1c24;
    text-align:center;
}

/* --- Stili per la Sezione FAQ --- */
.faq {
    background: white;
    max-width: 800px;
    margin: auto;
}

.faq-item {
    background: #f1f1f1;
    /* margin: 0 auto 10px auto; */
    padding: 15px;
    border-left: 4px solid #ed1b24;
    cursor: pointer;
    transition: 0.3s;
}

.faq-item:hover {
    background: #ddd;
}

/* --- Stili per la Sezione Newsletter --- */
.newsletter {
    background: #424a53;
    color: white;
    text-align: center;
}

.newsletter form {
    display: flex;
    justify-content: space-between;
    margin-top: 20px;
    flex-direction: row;
    gap: 20px;
    align-content: center;
    align-items: center;
}

.newsletter input {
    width: 300px;
    padding: 10px;
    border: none;
    border-radius: 5px;
}
.newsletter input:focus {
   
    border: none;
   outline:none
}
.newsletter button {
    margin:0;
    background: white;
    color: #007bff;
    border: none;
    padding: 10px 15px; 
    cursor: pointer;
    transition: 0.3s;
}

.newsletter button:hover {
    border:none !important;
    background: #0056b3 !important;
    color: white;
}

/* --- Stili per il Contact Form --- */
.contact {
    background: #fff;
    text-align: center;
}

.contact form {
    max-width: 500px;
    margin: auto;
}

.contact input, .contact textarea {
    width: 100%;
    padding: 10px;
    margin: 10px 0;
    border: 1px solid #ccc;
    border-radius: 5px;
}

.contact button {
    background: #007bff;
    color: white;
    border: none;
    padding: 10px 15px;
    border-radius: 5px;
    cursor: pointer;
}

.contact button:hover {
    background: #0056b3;
}
/* Sections */
.intro {height: auto !important;!i;!;background:rgb(69 140 85) !important;display:flex;margin-top: 100px;position:relative}
.intro .testopage {height:auto !important;margin: 80px auto;position:relative;width:auto;display:flex;justify-content: center;align-content: center;align-items: center;}
.b-row {background:#eee;padding: 0 !important;height: 100vh;}
#image_slide {height: 100%;width:100%}
 
#content_slide, .container_slide,.imgsliderdiv {width:100%;position:relative;display:flex;height:100%;background:#111;}
 .imgsliderdiv::before {
            content: "";
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-color: rgba(0, 0, 0, 0.95);
            z-index: 0;
        }
.testopage {width:100%;position: absolute;display:flex;height:100%;bottom: 0;justify-content: center;align-items: center;align-content: center;}
.text-page {color:#fff;position:relative;display:flex;font-size: 40px;font-weight:bold;background: none;padding:25px 40px;/* margin:20px 0; */border-top:2px solid #ffffff;border-left:2px solid #ffffff; /* align-items: center; */}
.slidew { width:100%; position:relative; display:inline-block; height:100% }
.imgsliderdiv:before {background: #00000090;}
.imgsliderdiv { background-size:cover !important;}
.jotformclas { background:#eee}
.jotformclas .product-grid { width:80%; margin:auto}
.jotformclas .content-jotform {border: 4px solid #a728283d;background: #a728283d;padding:0 5%; }
.b-roww { width:100%; height:auto; padding:0 }
.b-rows { padding:0}
.ricambiinfo { padding: 30px 0 60px 0}
.ricambiinfo .product-card { background:#fff; gap:50px;width:80%; margin:auto}
.ricambiauto { background:#eee}
.ricambiauto p {width:80%; margin:auto}
section {
    padding: 60px 0px;
    opacity: 0;
    animation: fadeInUp 1s ease-in-out forwards;
}
.infoproduct h4 { font-size:20px; font-weight:900; text-transform:initial; margin:0 5%; text-align:left;}
.infoproduct .product-grid {width:80%;margin:auto;/* background:#ddd; */}
.infoproduct .cont-product-card { height:100%;}
.infoproduct .cont-prod-card { margin:0}
.infoproduct .product-card { background:none}
.secondary-color {/* background: #212121; */}
.wwwa { padding:0}
.newsletter  h2 { color:#fff }
.mobile-el { display:none }
.elementor-widget-container h2 {
    text-align: center;
    font-size: 28px;
    margin-bottom: 20px;
    color: #000;
    opacity: 0;
    animation: slideFromTop 1s ease-in-out forwards;
    line-height: 1.2em;
}
.divisor { width:100px; height:3px; margin:10px auto 20px auto; display:flex; gap:4px}
.start-box02 {position:relative;display:flex;gap: 15px;color:#fff;padding:0 15px;border-right: 2px solid #737373;justify-content: center;align-items: center;font-size:18px;height: 52px;}
.start-box02 div:first-child { font-size:60px }
.start-box02 div:last-child { text-align:left; line-height:1.3em}
#counterBlock {background: #0c163c;display: flex;gap: 40px;height: 300px;align-content: center;justify-content: center;align-items: center;}

.divisor div:first-child { background:#ed1b24; height:3px; width:3px; }
.divisor div { background:#ed1b24; height:3px; width:3px; }
.divisor div:last-child { background:#ed1b24; height:3px; width:50px; }
.recensioni-block h2 { margin:40px 0}
.ricambiinfo h2 { font-size:36px; }
.ricambiinfo p { font-size:16px !important; }
.products h2 { color:#fff; width:auto; position:relative; margin:0 !important; width:80%}
.line-ds { height:2px; width:auto; position:relative; background:#fff; width:100%  }
.sssk {display:flex;gap:0px;justify-content: center;align-items: center;align-content: center;}
.products p { color:#fff !important }
section h2 {
    text-align: center;
    font-size: 48px;
    margin-bottom: 20px;
    color: #000000;
    opacity: 0;
    animation: slideFromTop 1s ease-in-out forwards;
}
.descr-kit p {
    text-align: left;   
    margin-bottom: 2px;
   
}
.faq-item p {
    text-align: justify;
    font-size: 16px;
    margin-bottom: 20px;
    opacity: 0;
    animation: slideFromTop 1.2s ease-in-out forwards;
}
.b-rows h6 { font-weight:900 }
.cont-sss p { text-align:justify !important; height:100%}
.b-rows p {
    text-align: left;
    font-size: 16px;
    margin-bottom: 20px;
    opacity: 0;
    animation: slideFromTop 1.2s ease-in-out forwards;
}
.services p {width: 80%;margin: 40px auto;color: #dfdfdf;/* top: -20px; */position: relative;}
.service-card  p {width: 90%;margin: 0px auto;color: #555; top: -20px; position: relative;}
section p {
    text-align: center;
    font-size: 18px;
    margin-bottom: 20px;
    opacity: 0;
    animation: slideFromTop 1.2s ease-in-out forwards;
}

/* Products Section */

.products {
    background: #e29c10;
    padding: 20px 5% 5px 5%;
}
.noteinfo, .infoproduct {
    background: #fff;
}
.grid-colon {display:flex;gap: 0;width: 100vw;flex-direction: column;}
.itemgrid-colon {display:flex;gap: 80px;flex-direction: row;width: 80%;margin:auto;padding: 40px 20px;}
.itemgrid-colon:first-child { flex-direction:row-reverse }
.itemgrid-colon:last-child { flex-direction:row-reverse }
.itemgrid-colon-d { border-top:1px solid #0056b3; border-right:1px solid #0056b3; padding:60px 60px 60px 0}
.itemgrid-colon div { width:50%; overflow:hidden;  }
.itemgrid-colon div img { width:100%;}
.itemgrid-colon a { color:#0056b3; text-transform:uppercase; font-weight:bold; border:1px solid #0056b3; padding:10px 20px; text-decoration:none; transition:all 0.5s ease }
.itemgrid-colon a:hover {background:#0056b3; color:#fff}
.itemgrid-colon h2 {font-size: 30px;!;text-transform:uppercase;letter-spacing:-1px;line-height:1.2em}
.itemgrid-colon p { font-size:18px !important; line-height:1.8em; text-align:justify}
.img-grid {/* height:300px; */}
.beige { background:#f0eee0;}
.red { background:#ed1b24;   }
.red h2 { color:#fff}
.red p { color:#fff}
.noir { background:#120f0f}
.noir h2 { color:#fff}
.noir p { color:#fff}
.infoproduct h4 { color : #000; font-size:30px; margin:0; font-weight:100;}
.product-grid {
    display: flex;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    /* gap: 20px; */
    justify-items: center;
    flex-direction: column;
}

.imgsupports {background:url(../immagini/chisiamo.jpeg) no-repeat center/cover;width: 400px;height: 250px;display:inline-block;position:relative}
.imgsupport {  width:100%; height:100%; display:inline-block; position:relative}
.contents_spl {width:100%;height:auto;position:relative;display:flex;flex-direction: column;}
.product-card:first-child { flex-direction: row; }
.product-card:last-child { flex-direction: row; }
.question-card {
    display:flex;
    width:100%;
    position:relative;
    overflow:hidden;
    /* height: 500px; */
    text-align: center;
    transition: transform 0.3s, box-shadow 0.3s;
    opacity: 0;
    animation: fadeInUp 1.5s ease-in-out forwards;
    flex-direction: row-reverse;
    gap: 10px;
}
.question-card img { width:100%}
.motoriusati .product-card {width: 80%;margin:auto;background:none;display: flex;align-items: center;}
.motoriusati .product-card  .contents_spl:first-child {width: 1000%;min-height:250px}
.motoriusati .product-card  .contents_spl .cont-sss { height:250px !important}
.motoriusati .product-card  .contents_spl .cont-sss p { height:100% !important}
.infoproduct .cont-product-card { margin:0 5%; width:90%}
.product-card {
    display:flex;
    width:100%;
    position:relative;
    overflow:hidden;
    /* height: 500px; */
    text-align: center;
    transition: transform 0.3s, box-shadow 0.3s;
    opacity: 0;
    animation: fadeInUp 1.5s ease-in-out forwards;
    flex-direction: row-reverse;
    background: #eee;
}

.product-card img {
   
    width:100%;
    height:auto;
    transition: transform 0.3s;
    position:relative;
}
.hover-product-card { width:100%; position:absolute;    background: linear-gradient(to top, rgb(0 0 0 / 80%), rgb(0 0 0 / 0%)); height:100%; bottom:0}
.content-faq { display:flex; flex-direction:column; gap:8px}
.jotformclas .cont-prod-card {  padding:30px 0; background:#fffbe9  }
.jotformclas .cont-prod-card h1 {  margin:0 30px ;   }
.infoproduct .cont-sss { margin: 0px; text-align:justify !important}
.cont-sss {display:flex;flex-direction: column;gap: 10px;height: 100%;margin: 30px;}
.licontss {display:flex;flex-direction: row;gap: 10px;}
.licontss p { margin:0 !important; }
.licontss h4 { text-align:left; font-size:18px !important; font-weight:bold; text-transform:initial}
.circle {/* background: #000000; */width:auto;height: 33px;display:inline-block;border-radius:60px;position:relative}
.licontss i {font-size:30px;/* margin: 12px 12px; */color: #000;/* border:3px solid #fff; */border-radius:20px}
.cont-product-card {
    display:flex;
    z-index:1;
    position: relative;
    width:100%;
    margin: auto;
    height: 100%;
    bottom:0;
    flex-direction: column;
    /* gap: 5px; */
    justify-content: space-between;
}
.cont-product-faq {
    display:flex;
    z-index:1;
    position: relative;
    width:100%;
    /* margin: auto; */
    height:auto;
    bottom:0;
    flex-direction: column;
    gap: 5px;
    justify-content: space-around;
}

 .infoproduct .cont-product-card h3 { margin:30px 0; text-transform: initial }
.cont-product-card h3 {
    margin:0 5%;
    font-size: 22px;
    position: relative;
    color: #000;
    text-transform: uppercase;
}

.cont-product-card p {
    font-size: 16px;
    color: #000;
    margin:0 5%;
    position: relative;
    text-align: justify;
}
.plus-sign {
  position: relative;
  width: 20px;
  height: 20px;
  margin: 10px 15px 10px 0;
  display:flex;
  justify-content: center;
  align-content: center;
  align-items: center;
}

.plus-sign::before,
.plus-sign::after {
  content: '';
  position: absolute;
  background-color: #fff;
       transition: all 0.5s;
   
}

.plus-sign::before {
  top: 10px;
  left: 0;
  width: 20px;
  height: 2px;
  transform: translateY(-50%);
}

.plus-sign::after {
  top: 0;
  left: 10px;
  width: 2px;
  height: 20px;
  transform: translateX(-50%);
}
.cont-product-card .btn {
  background-image: linear-gradient(to right, #0056b3 50%, #000000 50%);
  background-size: 200% 100%;
  background-position: 100% 0;
  transition:all 0.5s linear;
  color: #fff;
  padding: 5px 20px;
  text-decoration: none;
  font-size: 18px;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 10px;
  justify-content: center;
  text-transform: uppercase;
  align-content: center;
  margin: 10px auto;
  }
 

.product-card .btn:hover {
    
 background-position: 0 100%;
}


 
/* Contact Section */
.contact {
    background: #f1f1f1;
    animation: fadeInUp 1.5s ease-in-out forwards;
}

.contact form {
    max-width: 600px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 15px;
    background: white;
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.contact input, .contact textarea {
    padding: 10px;
    font-size: 16px;
    border: 1px solid #ddd;
    border-radius: 5px;
}

.contact button {
    background: #ff5722;
    color: white;
    padding: 10px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    transition: background 0.3s;
}

.contact button:hover {
    background: #333;
}
.sectiondesktop {display: block;background:url(../immagini/svgba.png) no-repeat left/contain #0056b3;float: right;position: relative;width: 100%;min-height: 100%;justify-content: center;align-items: center;align-content: center;}
/* Info Section */
.info {
    background: #222;
    color: white;
    padding: 30px 20px;
    text-align: center;
    line-height: 1.8;
    opacity: 0;
    animation: fadeInUp 1.5s ease-in-out forwards;
}

.info a {
    color: #ff5722;
    text-decoration: none;
}

.info a:hover {
    text-decoration: underline;
}

/* Footer */
footer {
    text-align: center;
    padding: 20px;
    background: #000;
    color: white;
}

/* Animations */
@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes slideUp {
    from {
        transform: translateY(50px);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

@keyframes slideFromTop {
    from {
        transform: translateY(-50px);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}
@media (min-width: 1501px) and (max-width: 1800px) {
     p { font-size:14px !important;}
    h4 {font-size: 20px !important;}
    h3 { font-size:20px !important;}
}
@media (min-width: 1301px) and (max-width: 1500px) {
    .cont-prod-card p { font-size:16px !important}
     .cont-prod-card h3 { font-size:18px !important}
    p { font-size:12px !important;}
    h4 { font-size:16px !important;}
     h3 { font-size:18px !important;}
}
@media (min-width: 1025px) and (max-width: 1300px) {
    .hero {
    margin-top: 80px;
    }
     nav {position:fixed;width: 50%;height:100vh;display: none;background: #eee;right: 0;top:0px;/* backdrop-filter: blur(10px); */}
    header nav ul {
        flex-direction: column;
        position: absolute;
        top: 70px;
        left: 0;
        width: 100%;
        /* background: black; */
        overflow: hidden;
    }

    header.nav-open nav ul {
        height: calc(100vh - 70px);
    }

    header nav ul li {
        margin: 1px 0;
        text-align: center;
    }
    header nav ul li a {
    color: #000;
    text-decoration: none;
    font-size: 20px;
    font-weight: 100;
}
    header { gap:20px; }
    header div ul {
    
    gap: 15px;
    
}
    .hero h1 { font-size:26px !important }
    .hero h2 { font-size:20px !important }
    .hero h4 { font-size:30px !important }
    h2 { font-size:38px !important }
    .cont-product-card h3 { font-size:16px }
    .cont-product-card p { font-size:14px }
    .product-card img {/* margin:25% 0; */}
    .infoproduct h4 { font-size:16px; } 
    .infoproduct p { font-size:12px }
    .infoproduct .product-grid {width:80%;margin:auto} 
    .elementor-widget-container h2 { font-size:20px !important }
     header div ul li a {color: #000000;text-decoration:none;font-weight: bold;font-size: 12px;text-transform:uppercase;transition:  0.5s linear;height: 100%;position: relative;line-height: 50px;padding:0;display: inline-block;}
  
   .request-motor a {  background-image: linear-gradient(to right, #ed1c24 50%, #b10000 50%);
    background-size: 200% 100%;
    background-position: 100% 0;
            transition:all 0.5s linear; color: #fff;padding: 0px 10px;text-decoration: none;font-size: 11px;border: none; cursor: pointer;  display: flex;align-items: center;gap: 10px; justify-content: center;text-transform: uppercase;align-content: center;margin: 0px auto;}  
   
    
     
     header .menu-toggle {
        display: block;
        z-index: 999999;
        color: #000;
    }
}
@media (min-width: 769px) and (max-width: 1024px) {
    .hero {
    margin-top: 80px;
    }
     nav {position:fixed;width: 50%;height:100vh;display: none;background: #eee;right: 0;top:0px;/* backdrop-filter: blur(10px); */}
    header nav ul {
        flex-direction: column;
        position: absolute;
        top: 70px;
        left: 0;
        width: 100%;
        /* background: black; */
        overflow: hidden;
    }

    header.nav-open nav ul {
        height: calc(100vh - 70px);
    }

    header nav ul li {
        margin: 1px 0;
        text-align: center;
    }
    header nav ul li a {
    color: #000;
    text-decoration: none;
    font-size: 20px;
    font-weight: 100;
}
     .desktopheader {display:none;}
    .imgsupport { display:none }
        .product-card:first-child {flex-direction: column;}
.product-card:last-child {flex-direction: column}
    .grid-colon {display:flex;gap: 20px;width: 100vw; flex-direction:column}
    .noteinfo .itemgrid-colon { padding:60px 20px}
   .itemgrid-colon {width:90%;margin:0 5%;padding: 10px 0;border-bottom: 1px solid #ddd;}
    .itemgrid-colon:last-child{ border:none;}
    .mobileheader {display:flex;justify-content: space-between; padding:5px 15px}
     header .menu-toggle {
        display: block;
        z-index: 999999;
        color: #000;
    }
}
@media (max-width: 768px) {
    .imgsupport { display:none }
     nav ul {
    display: flex;
    list-style: none;
    overflow: hidden;
    transition: height 0.3s ease-in-out;
    align-content: center;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}
    .product-card { flex-direction:column-reverse}
    .product-card:first-child {flex-direction: column;}
.product-card:last-child {flex-direction: column;}
.service-grid-s{ flex-direction:column; }
    .service-card-s { width:100%}
    .cont-product-faq,.question-card{ flex-direction:column }
    .content-jotform {width: 100%;/* padding:0; *//* background:url(../immagini/banner-bg-red.svg) no-repeat bottom right/cover; */}
    .mobileheader {display:flex;justify-content: space-between; padding:5px 15px}
    .itemgrid-colon  { flex-direction:column !important}
    .itemgrid-colon div { width:100%; overflow:hidden;  }
    .newhero .btn { font-size:14px }
    .newhero {height: auto;}
    .chisiamo {flex-direction:column;height: 100%;}
    .plus-sign {
  position: relative;
  width: 16px;
  height: 16px;
  margin: 10px 15px 10px 0;
  display:flex;
  justify-content: center;
  align-content: center;
  align-items: center;
}

.plus-sign::before,
.plus-sign::after {
  content: '';
  position: absolute;
  background-color: #ddd;
       transition: all 0.5s;
   
}

.plus-sign::before {
  top:8px;
  left: 0;
  width: 16px;
  height: 2px;
  transform: translateY(-50%);
}

.plus-sign::after {
  top: 0;
  left: 8px;
  width: 2px;
  height: 16px;
  transform: translateX(-50%);
}
    .products h2 { color:#fff; width:auto; position:relative; margin:0 !important; width:150%}
   .ricambiinfo .cont-sss { margin:10px 0; }
   .ricambiinfo .product-card { margin:0 5%; width:90% !important }
    .whatsapp-btn i {
    margin-right: 0px;
    font-size: 30px;
  }
    h4 {font-weight: 400;text-transform:uppercase;font-size: 18px;}
    .services>p {width: 80%;margin: 20px auto; display:none}
    .service-grid {width: 100%;margin:auto}
    .sectiondesktop h4 { display:none !important;}
    .content-jotform { width:100% !important}
    .hero  .content-jotform {width:90% !important;margin-top: 50px;}
    .jotformclas p { width:90% }
    .desktopheader {display:none;}
   
    #cookie-banner { width:100%; height:auto; bottom:0 !important; top:inherit; transform:inherit; left:inherit }
    #cookie-banner div { display:flex; flex-direction:column }
        section h2 { font-size:26px !important; margin:0 5% }
    h2 { line-height:1.2em}
    .product-card {
        height: auto;
        flex-direction: column;
    }
    form {
        /* box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1); */
        display: flex;
        width: 100% !important;
        margin: auto !important;!i;!;
        flex-direction: column;
    }
}