/* Parco Mezzi: stile comune. Caratteri ospitati qui, niente servizi esterni. */
@font-face{font-family:'Source Sans 3';font-weight:400;font-display:swap;src:url(/fonts/source-sans-3-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Source Sans 3';font-weight:600;font-display:swap;src:url(/fonts/source-sans-3-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Source Sans 3';font-weight:700;font-display:swap;src:url(/fonts/source-sans-3-latin-700-normal.woff2) format('woff2')}
@font-face{font-family:'Source Sans 3';font-weight:800;font-display:swap;src:url(/fonts/source-sans-3-latin-800-normal.woff2) format('woff2')}
@font-face{font-family:'Roboto Slab';font-weight:600;font-display:swap;src:url(/fonts/roboto-slab-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Roboto Slab';font-weight:800;font-display:swap;src:url(/fonts/roboto-slab-latin-800-normal.woff2) format('woff2')}

:root{
  --fondo:#F6F4EF; --carta:#FFFFFF; --carta2:#FBFAF7; --linea:#E9E5DB; --linea2:#EFECE4; --bordo:#D9D3C4;
  --testo:#3D3A35; --testo2:#5F5B53; --testo3:#7A766D;
  --verde:#4F7353; --verde-scuro:#3E5C41; --verde-chiaro:#E4ECE3; --salvia:#6E8F71;
  --senape-fondo:#FBF1DC; --senape-bordo:#EBD6A8; --senape-testo:#6B4E12;
  --rosso:#B4574A; --rosso-fondo:#F7E7E3; --rosso-bordo:#E6C3BA; --rosso-testo:#7A3B30;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--fondo);color:var(--testo);font-family:'Source Sans 3',system-ui,sans-serif;font-size:16px;line-height:1.45}
a{color:var(--verde-scuro)}a:hover{color:#2C442E}
h1,h2,h3{letter-spacing:-.02em;font-weight:800;margin:0}
.lab{font-family:'Roboto Slab',serif;font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:12px;color:var(--salvia)}
.wrap{max-width:1160px;margin:0 auto;padding:0 32px}
.logo{display:block;width:180px;height:48px;background:url(/img/logo.png) left center/contain no-repeat}
.testata{background:var(--carta);border-bottom:1px solid var(--linea)}
.testata .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px 20px;flex-wrap:wrap;padding-top:14px;padding-bottom:14px}
.card{background:var(--carta);border:1px solid var(--linea);border-radius:16px;padding:26px;box-shadow:0 1px 2px rgba(61,58,53,.04)}
.campo{display:flex;flex-direction:column;gap:7px;margin-top:16px}
.campo label{font-weight:700;font-size:14.5px}
.campo input,.campo select,.campo textarea{font:inherit;font-size:16px;border:1px solid var(--bordo);border-radius:12px;padding:12px 14px;background:var(--carta2);color:var(--testo);min-height:48px;width:100%}
.campo textarea{min-height:90px;resize:vertical}
.campo input:focus,.campo select:focus,.campo textarea:focus{outline:2px solid var(--salvia);outline-offset:1px;border-color:var(--salvia)}
.aiuto{font-size:13.5px;color:var(--testo3)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--verde);color:#fff;border:0;border-radius:12px;padding:12px 20px;font:inherit;font-weight:800;font-size:16px;text-decoration:none;min-height:48px;cursor:pointer}
.btn:hover{background:var(--verde-scuro);color:#fff}
.btn:disabled{opacity:.6;cursor:wait}
.btn.largo{width:100%}
.btn2{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#fff;color:var(--verde-scuro);border:1.5px solid var(--salvia);border-radius:12px;padding:10px 16px;font:inherit;font-weight:700;font-size:15px;text-decoration:none;min-height:44px;cursor:pointer}
.btn2:hover{background:var(--verde-chiaro)}
.btnr{display:inline-flex;align-items:center;justify-content:center;background:#fff;color:#8E3A2E;border:1.5px solid var(--rosso);border-radius:12px;padding:10px 16px;font:inherit;font-weight:700;font-size:15px;min-height:44px;cursor:pointer}
.btnr:hover{background:var(--rosso-fondo)}
.link{background:none;border:0;padding:6px 0;font:inherit;color:var(--verde-scuro);text-decoration:underline;cursor:pointer;min-height:44px}
.msg{margin-top:14px;padding:12px 14px;border-radius:12px;font-size:15px;line-height:1.45}
.msg.ok{background:var(--verde-chiaro);color:var(--verde-scuro)}
.msg.err{background:var(--rosso-fondo);color:var(--rosso-testo);border:1px solid var(--rosso-bordo)}
.msg.info{background:var(--senape-fondo);color:var(--senape-testo);border:1px solid var(--senape-bordo)}
.nascosto{display:none!important}
.targa{display:inline-block;border:1.5px solid var(--testo);border-radius:4px;background:linear-gradient(90deg,#2B4A9B 0 8px,#fff 8px);padding:0 8px 0 14px;font-family:'Roboto Slab',serif;font-weight:600;font-size:13px;line-height:1.55;letter-spacing:.04em;white-space:nowrap;color:var(--testo)}
.pill{display:inline-block;border-radius:20px;padding:3px 11px;font-size:13px;font-weight:700;white-space:nowrap}
.pill.verde{background:var(--verde-chiaro);color:var(--verde-scuro)}
.pill.senape{background:var(--senape-fondo);color:var(--senape-testo)}
.pill.rosso{background:var(--rosso-fondo);color:var(--rosso-testo)}
.pill.grigio{background:#EDEAE1;color:#5F5B53}
.pill.blu{background:#E3ECF6;color:#285E99}
.al{position:absolute;right:8px;bottom:8px;background:#285E99;color:#fff;border-radius:20px;padding:2px 10px;font-size:12px;font-weight:700}
/* Targa italiana vera: banda blu con stelle e I, numeri, banda blu a destra */
.tg{display:inline-flex;width:max-content;align-self:flex-start;flex:none;white-space:nowrap;align-items:stretch;height:2.2em;border:.09em solid #1E1E1E;border-radius:.28em;background:#fff;overflow:hidden;box-shadow:0 .12em .3em rgba(0,0,0,.12);vertical-align:middle;font-size:15px}
.tg-ue{width:1.25em;background:#1F3F9B;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.12em .1em}
.tg-ue svg{width:.95em;height:.95em}
.tg-ue b{color:#fff;font-family:'Source Sans 3',sans-serif;font-size:.6em;line-height:1;margin-top:.05em}
.tg-n{display:flex;align-items:center;padding:0 .45em;font-family:'Source Sans 3',sans-serif;font-weight:700;font-size:1.35em;letter-spacing:.04em;color:#111}
.tg-dx{width:1em;background:#1F3F9B}
@keyframes sali{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-delay:0s!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
.piede{border-top:1px solid var(--linea);margin-top:40px}
.piede .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 24px;padding-top:22px;padding-bottom:28px;font-size:14px;color:var(--testo3)}
@media (max-width:760px){.wrap{padding:0 16px}.card{padding:20px}.logo{width:150px;height:40px}}
