/* Funnel, banner cookie e scelta lingua — misure non negoziabili:
   aree toccabili ≥44px, campi ≥16px (sotto, iOS ingrandisce e il modulo
   scappa da sotto le dita), zero scorrimento laterale a 320px. */

/* ── scelta lingua ─────────────────────────────────────────────────── */
.lingue{display:flex;gap:2px;align-items:center;margin-left:8px}
.lingue a{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 10px;border-radius:999px;text-decoration:none;font-size:15px;font-weight:600;opacity:.6}
.lingue a[aria-current]{opacity:1;background:rgba(255,255,255,.14)}
@media(max-width:900px){.lingue{margin:18px 0 0;justify-content:flex-start}.lingue a{min-width:56px;min-height:52px;font-size:18px;border:1px solid rgba(255,255,255,.18)}}

/* ── funnel ────────────────────────────────────────────────────────── */
.funnel{border-radius:26px;padding:26px;background:var(--sfondo-funnel,#fff);border:1px solid var(--bordo-funnel,rgba(0,0,0,.1))}
.funnel .testa{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}
.funnel .passi-conta{font-size:14px;font-weight:600;letter-spacing:.12em;opacity:.65}
.funnel .rotaia{height:4px;border-radius:4px;background:rgba(127,127,127,.22);overflow:hidden;margin-bottom:24px}
.funnel .rotaia i{display:block;height:100%;width:33%;background:var(--accento-funnel,#B8914A);transition:width .45s cubic-bezier(.22,.8,.3,1)}
.funnel h3{font-size:clamp(22px,3.4vw,28px);margin-bottom:6px}
.funnel .aiuto{font-size:15px;opacity:.7;margin-bottom:18px}
.scelte{display:grid;gap:10px;margin-bottom:6px}
@media(min-width:640px){.scelte{grid-template-columns:repeat(2,minmax(0,1fr))}}
.scelta{display:flex;align-items:center;gap:12px;min-height:60px;padding:14px 18px;border-radius:16px;border:1.5px solid var(--bordo-funnel,rgba(0,0,0,.12));background:transparent;color:inherit;font:inherit;font-size:16px;font-weight:600;text-align:left;cursor:pointer;transition:border-color .2s,transform .2s,background .2s}
.scelta:hover{transform:translateY(-2px)}
.scelta.scelto{border-color:var(--accento-funnel,#B8914A);background:color-mix(in srgb,var(--accento-funnel,#B8914A) 12%,transparent)}
.scelta b{width:28px;height:28px;flex:0 0 28px;border-radius:50%;border:1.5px solid currentColor;opacity:.45;display:flex;align-items:center;justify-content:center;font-size:13px}
.scelta.scelto b{opacity:1;background:var(--accento-funnel,#B8914A);border-color:transparent;color:#fff}
.campi{display:grid;gap:14px}
@media(min-width:640px){.campi.due{grid-template-columns:repeat(2,minmax(0,1fr))}}
.campo{display:grid;gap:6px}
.campo span{font-size:14px;font-weight:600;opacity:.75}
.campo input,.campo select,.campo textarea{width:100%;min-height:52px;padding:14px 16px;border-radius:14px;border:1.5px solid var(--bordo-funnel,rgba(0,0,0,.14));background:var(--campo-funnel,#fff);color:inherit;font:inherit;font-size:16px}
.campo textarea{min-height:110px;resize:vertical}
.campo input:focus,.campo select:focus,.campo textarea:focus{outline:2px solid var(--accento-funnel,#B8914A);outline-offset:1px}
.esca{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.consenso{display:flex;gap:12px;align-items:flex-start;margin-top:16px;font-size:15px;line-height:1.45}
.consenso input{width:24px;height:24px;flex:0 0 24px;margin-top:2px}
.bottoni{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.funnel .btn{min-height:52px}
.indietro{background:transparent;border:1.5px solid var(--bordo-funnel,rgba(0,0,0,.18));color:inherit;cursor:pointer}
.errore{margin-top:14px;padding:14px 16px;border-radius:14px;background:rgba(200,60,60,.12);border:1px solid rgba(200,60,60,.35);font-size:15px}
.grazie{text-align:center;padding:22px 6px}
.grazie .spunta{width:64px;height:64px;margin:0 auto 16px;border-radius:50%;background:var(--accento-funnel,#B8914A);color:#fff;display:flex;align-items:center;justify-content:center;font-size:30px}
.grazie h3{margin-bottom:8px}
.cf-turnstile{margin-top:18px;min-height:65px}

/* ── banner cookie ─────────────────────────────────────────────────── */
.cookie{position:fixed;left:12px;right:12px;bottom:12px;z-index:300;max-width:560px;margin:0 auto;padding:22px;border-radius:20px;background:var(--cookie-sfondo,#0E1B2C);color:var(--cookie-testo,#F6F3EE);box-shadow:0 18px 50px rgba(0,0,0,.35)}
.cookie p{font-size:15px;line-height:1.5}
.cookie p a{text-decoration:underline;text-underline-offset:3px}
.cookie .scelte-cookie{display:grid;gap:10px;margin-top:16px}
@media(min-width:520px){.cookie .scelte-cookie{grid-template-columns:1fr 1fr}}
/* stesso peso: stessa misura, stesso contrasto. Non si mette «Accetta» grande
   e «Rifiuta» in grigio piccolo. */
.cookie button{min-height:52px;border-radius:999px;border:1.5px solid currentColor;background:transparent;color:inherit;font:inherit;font-size:16px;font-weight:600;cursor:pointer}
.cookie button:hover{background:rgba(255,255,255,.1)}

/* La scelta lingua sta SULLA riga del menu, non sotto: senza questa regola
   il <nav> resta in colonna e IT/EN finiscono a capo. */
@media(min-width:901px){nav{display:flex;align-items:center;gap:6px}}
@media(min-width:861px) and (max-width:900px){nav{display:flex;align-items:center;gap:6px}}
