/* MODIFICHE — Mobile readability & tap targets senza rompere i moduli */

@media (max-width: 767px) {



  /* 1) Copy generale (solo testo, NON i moduli/promo) */

  :where(p, li, .text_column, .content p, .content li, .cu_text_c){

    font-size: clamp(16px, 3.8vw, 18px) !important;

    line-height: 1.6;

  }



  /* 2) Menu mobile: grandezze esplicite, niente inherit */

  .header_mobile .menu_main_nav > li > a,

  .header_mobile .menu_main_nav > li > ul a{

    font-size: 16px;      /* tema = 12px → 16px */

    line-height: 24px;    /* tema = 16px → 24px */

    padding: 14px 40px 14px 35px;

    text-transform: uppercase; /* lasciamo coerente al tema */

  }



  /* 3) Pulsante hamburger: icona + hit area ≥44px */

  .header_mobile .menu_button{

    font-size: 32px;      /* tema = 26px */

    width: 44px; height: 44px; line-height: 44px;

  }



  /* 4) CTA e bottoni: tappabili ovunque */

  .sc_button,

  button,

  input[type="submit"],

  input[type="button"]{

    font-size: clamp(16px, 4.2vw, 18px) !important;

    min-height: 44px;

    padding: 12px 18px;

  }



  /* 5) Opt-out: non toccare i titoli della promo */

  .sc_promo .sc_title,

  .sc_promo .sc_title *{

    line-height: normal; /* evita l'ereditarietà da body */

  }
  
  /* 6) Button style */
  .button {
  padding: 14px 15px;
    font-size: 23px;
  }

}

 /* 7) footer */
.site_footer {
  background:#0f1520;
  color:#e8edf5;
  margin-top:40px;
}
.site_footer .footer_inner {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:24px;
  padding:40px 16px;
  max-width:1100px;
  margin:0 auto;
}
.site_footer .f_title {
  font-size:clamp(16px,3vw,18px);
  margin:0 0 10px;
  color: #FFF;
}
.site_footer .f_list {
  list-style:none;
  margin:0;
  padding:0;
}
.site_footer .f_list li {
  margin:6px 0;
}
.site_footer .f_brand .claim {
  opacity:.85;
  max-width:32ch;
}
.site_footer .f_socials a {
  display:inline-block;
  margin-right:10px;
}
.site_footer .footer_copy {
  border-top:1px solid rgba(255,255,255,.08);
  padding:14px 0;
  color:#b8c2d6;
}
.site_footer .footer_copy .content_wrap {
  max-width:1100px;
  margin:0 auto;
  padding:0 16px;
}
