/* ===== Desktop defaults (ensure unchanged on PC) ===== */
.burger { display: none; }
.navlinks { display: flex; align-items: center; gap: 12px; }

/* Keep header clickable above other content */
.header { position: sticky; top: 0; z-index: 1000; }
.header .container.navbar { position: relative; z-index: 1001; background: transparent; }

/* ===== Mobile behaviour (≤768px) ===== */
@media (max-width: 768px){
  :root { --vh: 1vh; }
  html { -webkit-text-size-adjust: 100%; }
  body { margin: 0; padding: env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left); }

  .burger { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border: 0; border-radius: 12px; background: #243447; color: #fff; }
  .navlinks { display: none; width: 100%; gap: 8px; }
  .navlinks.open { display: flex; flex-direction: column; }
  .navlinks a, .navlinks .btn { display: block; width: 100%; text-align: left; }

  .container { padding-left: 16px; padding-right: 16px; }
  .brand { display:flex; align-items:center; gap:10px; }
  .brand-logo { width:72px; height:auto; border-radius: 16px; }
  .brand span { font-size: 18px; font-weight: 700; line-height:1.2; }

  .grid-2, .grid-3, .card-grid, .phases-grid { display:grid !important; grid-template-columns:1fr !important; gap:16px; }
  .btn.primary { width:100%; }
  .card { padding: 16px; }

  /* Avoid overlays blocking clicks: stack header above */
  .header { background: rgba(17, 24, 39, 0.85); backdrop-filter: saturate(140%) blur(6px); }
}

/* Hide honeypot field by placeholder text */
label:has(+ input[placeholder*="Lascia questo campo vuoto" i]),
div:has(> input[placeholder*="Lascia questo campo vuoto" i]){
  display:none !important;
}
