/* Style CSS webpage */
/* Reset di base */
    * {
      margin: 0;
      padding: 0;
      box-sizing: border-box;
    }

    body, html {
      width: 100%;
      background-color: white;
      display: flex;
      flex-direction: column;
      align-items: center;
      font-family: "Dosis", serif;
      font-optical-sizing: auto;
      font-style: normal;

    }

    /* Container principale */
    .containercloud {
      display: flex;
      justify-content: center;
      align-items: center;
      width: 100%;
      background-color: white;
    }

    /* Box centrale con immagini */
    .central-div {
      position: relative;
      width: 1292px;
      max-width: 90vw;
      height: 720px; 
      display: flex;
      justify-content: center;
      align-items: center;
      overflow: hidden;
     /* border: 1px solid white; */
    }

    /* Immagine di sfondo */
    .background-img {
      position: absolute;
      top: 0px;
      width: 100%;
      height: 80vh;
      background-size: cover;
      /* background-position: ; */
      z-index: 1;
    }
    .imglay{
            top: 0px;
            left: 0px;
            position: absolute;
            width: 120vw;
            height: 80vh;
            background-image: url('/img/rett25.svg');
            background-size: cover;
            /* background-image: transparent url('/img/rett25.svg') 0% 0% no-repeat padding-box; */
            z-index: 2;
            overflow: hidden;
            opacity: 1.00;
    }

    .storeinfo{
            text-align: center;
            font: normal normal 300 100px/127px Dosis; 
          /*   font: italic small-caps bold 12px/30px Georgia, serif; */
            letter-spacing: 0px;
            color: #FBFAF5;
            opacity: 1;
            z-index:4;
    }
    /* Contenitore immagini per adattarle su mobile */
    .floating-container, .footer-floating-container {
      position: absolute;
      width: 100%;
      height: 100%;
      display: flex;
      justify-content: center;
      align-items: center;
      flex-wrap: wrap;
    }

    /* Immagini fluttuanti */
    .floating-img {
      position: absolute;
      /* width: 15%; */
      min-width: 50px;
      max-width: 240px;
      z-index: 2;
      transition: all 0.3s ease-in-out;
    }

    /* Posizionamento delle immagini */
    .img143 {
      top: 5%;
      left: 2%;
    }

    .img139 {
      top: -11%;
      right: 10%;
    }

    .img140 {
      top: 12%;
      right: -3%;
    }

    .img141 {
      bottom: 42%;
      left: -2%;
    }

    .img142 {
      bottom: 7%;
      left: -2%;
    }

    .img145 {
      bottom: 25%;
      right: -5%;
    }

    .img144 {
      bottom: 12%;
      right: 2%;
    }



    /* Sezione contenuto */
    .content {
      
      max-width: 1292px;
      margin: 0 auto;
      text-align: center;
      padding: 20px;
      /*
      border-radius: 12px;
      box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
      */
    }

    .content h1 {
      font-size: 2rem;
      margin-bottom: 20px;
    }

    .content p {
      font-size: 1rem;
      line-height: 1.6;
      color: #555;
    }

   

    /* SECTION  */

    .services-section {
        text-align: center;
        padding: 20px;
        position: relative;
        background: #FFFFFF 0% 0% no-repeat padding-box;
        color: #062639;
    }
    .services-section-t {
        text-align: center;
        padding: 20px;
        position: relative;
        background: #f9f9f9 0% 0% no-repeat padding-box;
        color: #062639;
    }

    .services-section-v {
        text-align: center;
        padding: 20px;
        position: relative;
        background: #3F8195 0% 0% no-repeat padding-box;
        color: #FFFFFF;
    }
    .services-section-v p {
        color: #FFFFFF;
    }
    .header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        border-top: 1px solid #062639;
        padding-bottom: 10px;
        margin-bottom: 20px;
    }
     .services-section-v .header {
        border-top: 1px solid #FFFFFF;
    }
    .header .number {
        text-align: left;
        font: normal normal 500 25px/38px Dosis;
        letter-spacing: 1.5px;
    }
    .header .title {
        flex-grow: 1;
        text-align: center;
        font: normal normal 300 50px/60px Dosis;
        letter-spacing: 0px;

    }
    .header .services-text {
        text-align: right;
        font: normal normal 500 25px/38px Dosis;
        letter-spacing: 1.5px;
    }
    .services-container {
        display: flex;
        justify-content: center;
        gap: 50px;
        flex-wrap: wrap;
        margin-top: 40px;

    }


    .service-item {
        text-align: center;
        max-width: 150px;
    }
    .service-item img {
        width: 50px;
        height: 50px;
    }
    .service-item p {
        margin-top: 10px;
        font-size: 16px;
    }

    .offer-section {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        gap: 20px;
        margin-top: 40px;
        background-color: #f8f8f8;
        padding: 20px;
        border-radius: 10px;
    }
    .offer-image img {
        width: 100%;
        max-width: 400px;
        min-width: 300px;
        border-radius: 15px;
    }
    .offer-text {
        max-width: 500px;
        text-align: left;
        padding: 20px;
        border: 1px solid #ccc;
        border-radius: 10px;
    }

    .sx-text {
        width: 100%;
        max-width: 300px;
        left: 83px;
    }

    .sx-text .title {
        flex-grow: 1;
        text-align: left;
        font: normal normal 300 50px/60px Dosis;
        letter-spacing: 0px;
        color: #062639;
    }

    .dx-text {
        max-width: 500px;
        text-align: left;
        padding: 10px;
    }

    .cx-title{
        flex-grow: 1;
        max-width: 800px;
        text-align: center;
        font: normal normal 300 40px/50px Dosis;
        letter-spacing: 0px;
    }
    
     .cx-title-single{
        flex-grow: 1;
        text-align: center;
        font: normal normal 300 40px/50px Dosis;
        letter-spacing: 0px;
    }

    .cx-text p {
        max-width: 800px;
        text-align: center;
        padding: 10px;
        font: normal normal 500 20px/30px Dosis;
    }
    /* ---- end ---- */
    
    /* Footer */

    .footer {
      width: 100%;
      max-width: 1292px;
      margin: 0 auto;
      text-align: center;
     
      background-color: #062639;
      color: white;
      padding: 0px 0px 40px 0px;
    }
    .footer form {
        max-width: 400px;
        margin: auto;
    }
    .footer input, .footer .button {
        width: 100%;
        padding: 10px;
        margin: 10px 0;
        z-index:2;
    }
    .footer .button {
        background: #062635;
        color: #ebdddd;
        cursor: pointer;
        border-color: #FFFFFF;
    }
    .footer input {
        background: #062635;
        color: #ebdddd;
        border-bottom-color: #FFFFFF;
    }

    .footer .content__gdpr p, .footer .content__gdprLegal p {
        font-size: 12px;
        margin-bottom: 0px;
        z-index:2;
    }

    .footer .content__gdpr span {
        font-size: 14px;
    }

    .footer .content__gdpr span {
        font-size: 14px;
    }

    #mc-embedded-subscribe-form h2 {
        font-size: 21px;
        text-align: left;
       
    }

    #mc_embed_shell {
        margin-top: 10%;
        position: relative;
        z-index: 1;
    }

    #mc-embedded-subscribe-form input[type=checkbox] {
        display: inline;
        width: auto;
        margin-right: 10px;
        z-index:2;
    }
    .footer .privacy {
        font-size: 12px;
        margin: 10px 0;
    }
    .footer-logo {
        margin-top: 20px;
        display: inline-block;
    }
    .footer-logo .logo {
        width: 300px;
        height: 100px;

    }
    .footer-logo h2 {
        display: none;
    }
    .footer-contact {
        font-size: 14px;
        margin-top: -10px;
        position: absolute;
        right: 10vw;
        margin-right: 5%;
    }
    .footer-copy {
        margin-top: -10px;
        position: absolute;
        margin-left: 5%;
    }
    .footer .indicates-required {
        left: 60%;
        position: absolute;
        z-index:2;
    }
    .footer .mc-field-group {
        text-align: left;
        z-index:2;
    }

    /* Box centrale con immagini */
    .footer-central-div {
      position: absolute;
      width: 1292px;
      height: 720px; 
      display: flex;
      overflow: hidden;
    }
    .img143f {
      top: 2%;
      left: 10%;
    }

    .img139f {
        top: 27%;
        right: 10%;
    }

    .img140f {
      top: 10%;
      right: 12%;
    }

    .img141f {
      top: 12%;
      left: -2%;
    }

    .img142f {
      bottom: 7%;
      left: -2%;
    }

    .img145f {
      bottom: 25%;
      right: -5%;
    }

    .img144f {
      bottom: 12%;
      right: 2%;
    }
    /* login modal */
    #loginBtn {
        padding: 10px 20px;
        background-color: #062639;
        color: white;
        cursor: pointer;
        position: absolute;
        top: 10px;
        z-index: 90;
        right: 15%;
        border: 1px solid #FBFAF5;
        text-align: center;
        font: normal normal normal 18px/22px Helvetica Neue;
        letter-spacing: 0px;
        opacity: 1;
    }

    #loginModal {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.5);
        justify-content: center;
        align-items: center;
        z-index: 8;
    }

    .modal-content {
        background-color: white;
        padding: 20px;
        border-radius: 10px;
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
        width: 100%;
        max-width: 400px;
    }

    .modal-content input[type="email"],
    .modal-content input[type="password"] {
        width: 100%;
        padding: 10px;
        margin: 10px 0;
        border: 1px solid #ccc;
        border-radius: 5px;
    }

    .modal-content button {
        width: 100%;
        padding: 10px;
        background-color: #062639;
        color: white;
        border: none;
        border-radius: 5px;
        cursor: pointer;
    }

    .modal-content img {
        position:absolute; 
        max-width:150px; 
        top:0.5vh;
        right:0.5vw;
    }

    .close-btn {
        float: right;
        font-size: 30px;
        cursor: pointer;
    }
    /* Responsività */
    @media (max-width: 768px) {
        .imglay{
            
            height: 100vh;
        }
        .storeinfo{
            margin-top: 100px;
        }
        /* Ridimensiona il div centrale */
        .central-div {
        width: 95vw;
        max-height: 40vh;
        /* height: auto; */
        }

        /* Ridimensiona il contenitore delle immagini */

        .floating-container {
        width: 100%;
        height: 100%;
        }


        .background-img {
        width: 95vw;
        height: 80vh;
        }
        /* Ridimensiona tutte le immagini */
        .floating-img {
        min-width: 5vw;
        max-width: 30vw;
        }

        /* Riposizionamento immagini */
        .img143 { top: 5%; left: 2%; }
        .img139 { top: -11%; right: 10%; }
        .img140 { visibility: hidden; top: 12%; right: -3%;  }
        .img141 {  visibility: hidden; bottom: 42%; left: -2%; }
        .img142 {  bottom: 7%;  left: -4%;  }
        .img145 {  visibility: hidden; bottom: 25%; right: -5%; }
        .img144 { bottom: -2%; right: 2%; }


        /* Adatta la sezione di contenuto */
        .content {
        width: 95%;
        padding: 15px;
        }

        .content h1 {
        font-size: 1.5rem;
        }

        .content p {
        font-size: 0.9rem;
        }

        .services-container .cx-title {
          padding: 20px 0px 20px 0px;
        }

        .sx-text .title {
            text-align: center;
        }
        /* per mappa */
        .services-container .sx-text iframe {
          max-width: 100%;
          display: block;
          margin: 30px auto;
        }

      /* Adatta offer */
      

      .offer-section, .sx-text {
      
        flex-direction: column;
        text-align: center;
      }
      .offer-text, .dx-text {
        text-align: center;
      }
      .offer-section {
        flex-wrap: nowrap;
        padding: 0px;
      }
      

      /* *** FOOTER **  */

      .footer {
        font-size: 0.8rem;
        padding: 10px;
      }
      .footer-central-div {
        width: 95vw;
      }
      .footer-floating-container {
        width: 100vw;
        height: 720px;
      }
      .footer-logo .logo {  
        width: 70vw;

      }
      /* Riposizionamento immagini */
      .img139f { visibility: hidden; }
      .img140f { visibility: hidden;   }
      .img145f {  visibility: hidden; }
      /*
      .img143f{ top: 5%; left: 2%; }
      .img144f { bottom: 10%; right: 47%; }
      .img141f { bottom: 42%; left: -2%; }
      .img142f { bottom: 7%;  left: -4%;  }
      */
      .img143f { top: 2%; left: 10%; }
      .img141f { top: 15%;  left: -2%; }
      .img142f { bottom: 12%; left: -2%; }
      .img144f { bottom: 12%; right: 2%; }

      
      .footer-contact p {
            font-size: 14px;
            right: 10vw;
            margin:0px;
            /* margin-right: 5%; */
      }
      .footer-copy p {
        margin-top: 0px;
        margin-bottom: 0px;
      }

      /* form */
      #mc_embed_shell {
          z-index: 2;
          position: relative;
      }

    }

    /* --- Responsività per Smartphone --- 
    @media (max-width: 768px) {
      /* Ridimensiona il div centrale 
      .central-div {
        width: 100%;
        height: auto;
      }

      /* Ridimensiona tutte le immagini 
      .floating-img {
        width: 30%;
      }

      /* Mantiene le immagini nella stessa posizione relativa 
      .img1, .img2, .img3, .img4, .img5, .img6 {
        transform: translate(0, 0);
      }

      /* Adatta la sezione di contenuto 
      .content {
        width: 95%;
        padding: 15px;
      }

      .content h1 {
        font-size: 1.5rem;
      }

      .content p {
        font-size: 0.9rem;
      }

      /* Adatta il footer 
      .footer {
        font-size: 0.8rem;
      }
*/