:root{--blu:#163853;--blu2:#1f4f74;--giallo:#f5b301;--grigio:#eff1ee;--testo:#1d2a36;--muto:#7c8ea8;--rosso:#c0392b;--verde:#2e8b57}
*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--testo);background:var(--grigio);line-height:1.45}
header{background:var(--blu);color:#fff;padding:.7rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}
header img{height:34px}header nav a{color:#fff;text-decoration:none;margin-left:1rem;font-size:.95rem}header nav a:hover{color:var(--giallo)}
main{max-width:860px;margin:0 auto;padding:1.2rem 1rem 3rem}
.hero{background:var(--blu);color:#fff;margin:-1.2rem -1rem 1.5rem;padding:2.2rem 1rem}.hero .in{max-width:860px;margin:0 auto}
.hero h1{margin:0 0 .4rem;font-size:1.9rem}.hero p{margin:0;font-size:1.05rem;opacity:.92}
.hero .verde{color:var(--giallo)}
.scelte{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:640px){.scelte{grid-template-columns:1fr}}
.card{background:#fff;border-radius:14px;padding:1.3rem;box-shadow:0 2px 10px rgba(22,56,83,.08)}
.card h2{margin:.2rem 0 .5rem;color:var(--blu)}.card ul{padding-left:1.1rem;margin:.4rem 0 .9rem}.card li{margin:.2rem 0}
.btn{display:inline-block;background:var(--giallo);color:var(--blu);font-weight:700;padding:.65rem 1.2rem;border-radius:10px;text-decoration:none;border:0;cursor:pointer;font-size:1rem}
.btn.blu{background:var(--blu);color:#fff}.btn.ghost{background:transparent;border:2px solid var(--blu);color:var(--blu)}.btn.rosso{background:var(--rosso);color:#fff}.btn.sm{padding:.35rem .7rem;font-size:.85rem}
form.modulo{background:#fff;border-radius:14px;padding:1.3rem;box-shadow:0 2px 10px rgba(22,56,83,.08)}
.griglia{display:grid;grid-template-columns:1fr 1fr;gap:.7rem 1rem}@media(max-width:640px){.griglia{grid-template-columns:1fr}}
label{display:block;font-size:.88rem;color:var(--blu);font-weight:600;margin-top:.5rem}label small{color:var(--muto);font-weight:400}
input,select,textarea{width:100%;padding:.55rem .65rem;border:1px solid #c9d3df;border-radius:8px;font-size:1rem;margin-top:.2rem;background:#fff}
textarea{min-height:80px}.pieno{grid-column:1/-1}.ob::after{content:" *";color:var(--rosso)}
.check{display:flex;gap:.6rem;align-items:flex-start;margin:1rem 0;font-size:.92rem}.check input{width:auto;margin-top:.25rem}
.msg{padding:.7rem 1rem;border-radius:10px;margin:.6rem 0;background:#e6f4ea;color:#1e5631}.msg.errore{background:#fdecea;color:var(--rosso)}
.stato{display:inline-block;padding:.2rem .6rem;border-radius:999px;font-size:.8rem;font-weight:700}
.stato.in_verifica{background:#fff3cd;color:#7a5a00}.stato.attivo{background:#dff5e5;color:var(--verde)}.stato.sospeso{background:#e9ecef;color:#555}.stato.rifiutato{background:#fdecea;color:var(--rosso)}
table{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;font-size:.92rem}th,td{padding:.55rem .7rem;text-align:left;border-bottom:1px solid #eef1f4;vertical-align:top}th{background:var(--blu);color:#fff;font-weight:600}
dl{display:grid;grid-template-columns:max-content 1fr;gap:.25rem 1rem;font-size:.93rem}dt{color:var(--muto)}dd{margin:0}
.passi{counter-reset:p;padding:0;list-style:none}.passi li{counter-increment:p;position:relative;padding-left:2.2rem;margin:.5rem 0}.passi li::before{content:counter(p);position:absolute;left:0;top:0;width:1.6rem;height:1.6rem;border-radius:50%;background:var(--giallo);color:var(--blu);font-weight:700;display:grid;place-items:center;font-size:.85rem}
footer{text-align:center;color:var(--muto);font-size:.82rem;padding:1rem}footer a{color:var(--muto)}
.doc{display:flex;justify-content:space-between;align-items:center;gap:.6rem;padding:.5rem 0;border-bottom:1px solid #eef1f4}.doc:last-child{border:0}.doc .ok{color:var(--verde);font-weight:700}
