footer .brand .logo{width:auto; height:80px; background:linear-gradient(135deg, var(--accent), #7cc3ff); display:inline-block}
.site-footer{
    --bg:#0a0f1a; --text:#e6eefc; --muted:#9fb0d2; --panel:#10192b; --accent:#5aa3ff;
    color:var(--text); background:linear-gradient(180deg, #0a0f1a, #0c1425 35%, #0a0f1a 100%);
    padding:40px 20px 16px; font: 400 14px/1.6 Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}
.site-footer a{color:inherit; text-decoration:none}
.site-footer a:hover{color:#7cc3ff}

.footer-top{
    max-width:1100px; margin:0 auto 24px; display:grid;
    grid-template-columns: 1.15fr 2fr; gap:32px; align-items:start;
}
.footer-brand .brand{display:inline-flex; align-items:center; gap:10px; font-weight:700; letter-spacing:.2px}
.footer-brand .tagline{color:var(--muted); margin:8px 0 16px}
.newsletter{display:flex; gap:8px; margin:8px 0 16px}
.newsletter input{
    flex:1; min-width:160px; border:1px solid rgba(255,255,255,.12); border-radius:10px;
    background:var(--panel); color:var(--text); padding:10px 12px; outline:none;
}
.newsletter input::placeholder{color:#7f90b1}
.newsletter button{
    background:linear-gradient(135deg, var(--accent), #7cc3ff); color:#0a0f1a;
    border:none; padding:10px 14px; border-radius:10px; font-weight:700; cursor:pointer;
}
.newsletter button:hover{filter:brightness(1.05)}

.social{display:flex; gap:10px; margin-top:8px}
.social a{
    width:36px; height:36px; display:inline-flex; align-items:center; justify-content:center;
    background:var(--panel); border:1px solid rgba(255,255,255,.08); border-radius:10px; color:#cfe2ff;
}
.social a:hover{color:#0a0f1a; background:linear-gradient(135deg, var(--accent), #7cc3ff); border-color:transparent}

.footer-links{display:grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap:20px}
.footer-links h4{font-size:14px; margin:0 0 10px; color:#cfe2ff; letter-spacing:.3px}
.footer-links ul{list-style:none; padding:0; margin:0; display:grid; gap:8px}
.footer-links a{color:var(--muted)}
.footer-links a:hover{color:#7cc3ff}

.footer-bottom{
    max-width:1100px; margin:24px auto 0; padding-top:16px;
    border-top:1px solid rgba(255,255,255,.08); display:flex; align-items:center; gap:16px; justify-content:space-between;
}
.legal{display:flex; gap:16px; flex-wrap:wrap; color:#a8b8d8}
.legal a{color:#b8c7e6}
.legal a:hover{color:#7cc3ff}

.locale select{
    background:var(--panel); color:#e6eefc; border:1px solid rgba(255,255,255,.12);
    border-radius:10px; padding:8px 10px; appearance:none; cursor:pointer;
}

  /* Accessibilità */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}

  /* Responsive */
@media (max-width: 900px){
    .footer-top{grid-template-columns: 1fr; gap:24px}
    .footer-links{grid-template-columns: repeat(2, minmax(0,1fr))}
}
@media (max-width: 520px){
    .footer-links{grid-template-columns: 1fr}
    .footer-bottom{flex-direction:column; align-items:flex-start; gap:10px}
    .newsletter{flex-direction:column}
}