/* ---- menu hamburger ---- */
.nav-toggle{display:none;background:transparent;border:1px solid var(--line);border-radius:var(--radius);width:42px;height:42px;padding:0;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:5px}
.nav-toggle span{display:block;width:20px;height:2px;background:var(--black);transition:transform .2s ease,opacity .2s ease}
header.nav-open .nav-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
header.nav-open .nav-toggle span:nth-child(2){opacity:0}
header.nav-open .nav-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

@media (max-width:900px){
  .nav-toggle{display:inline-flex}
  .nav-links{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:#fff;border-bottom:1px solid #ece8df;box-shadow:0 12px 24px rgba(20,20,20,.08);padding:6px 18px 12px;font-size:13px}
  header.nav-open .nav-links{display:flex}
  .nav-links a{padding:14px 0;border-bottom:1px solid #f0ece3}
  .nav-links a:last-child{border-bottom:0}
}

/* ---- telefono ---- */
@media (max-width:700px){
  .wrap{padding:0 18px}
  .utilbar .wrap{padding:8px 18px;justify-content:center}
  .utilbar .wrap > :not(.right){display:none}
  .utilbar .right{gap:16px}

  .header-inner{min-height:64px;padding:8px 0}
  .logo{width:auto;min-width:0;min-height:0}
  .logo img{width:110px;height:44px}
  .header-actions{gap:10px}
  .header-actions .btn{display:none}

  .hero{min-height:0}
  .hero .wrap{padding:56px 18px}
  .hero h1{font-size:clamp(30px,8.5vw,44px)}
  .hero p.lead{font-size:16.5px}
  .hero-actions .btn{width:100%;justify-content:center}

  section{padding:56px 0}
  .section-head{margin-bottom:32px}

  .trust .wrap{display:grid;grid-template-columns:1fr 1fr;gap:20px}
  .trust-item{min-width:0}
  .trust-item .trust-logo{width:140px}

  .pillar{padding:26px 20px}
  .service{padding:22px 18px;gap:12px}
  .cross-card{padding:26px 20px}

  .gate{padding:28px 18px;gap:28px;border-radius:12px}
  .gate h2{font-size:24px}
  .gate-form{padding:18px}
  .gate-form input,.gate-form textarea,.gate-form select{font-size:16px}

  .process{flex-direction:column;overflow:visible}
  .process-step{min-width:0;border-left:none;border-top:1px solid #d8d1c2;padding:18px 0}
  .process-step:first-child{border-top:none}

  .footer-grid{grid-template-columns:1fr}
  .footer-bottom{flex-direction:column}
}

/* niente effetto "sollevamento" al tocco */
@media (hover:none){
  .service:hover,.pillar:hover,.cross-card:hover{transform:none}
}
