
/* ========== USARCI Vicenza - stile magazine ispirato a electomagazine.it (senza copiarlo) ========== */
:root{
  --bg:#0c0f14;
  --bg-soft:#121722;
  --surface:#141a26;
  --text:#e8eef5;
  --muted:#a9b3c1;
  --brand:#6ac3ff;
  --brand-strong:#3aa5ef;
  --accent:#ffd166;
  --danger:#ff6b6b;
  --radius:14px;
  --maxw:1200px;
  --shadow:0 10px 30px rgba(0,0,0,.35);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";line-height:1.6}
img{max-width:100%;display:block}
a{color:var(--brand);text-decoration:none}
a:hover{text-decoration:underline}
.container{max-width:var(--maxw);margin:auto;padding:0 16px}

/* Header */
.topbar{background:var(--bg-soft);border-bottom:1px solid #1c2433;position:sticky;top:0;z-index:50}
.topbar-inner{display:flex;align-items:center;gap:16px;padding:10px 0}
.brand{display:flex;align-items:center;gap:12px}
.brand img{height:40px}
.brand-title{font-weight:800;letter-spacing:.4px}
.nav{margin-left:auto;display:flex;gap:18px}
.nav a{padding:8px 10px;border-radius:10px}
.nav a:hover{background:#1a2230}
#menuToggle{display:none}
.burger{display:none;border:1px solid #213049;border-radius:12px;padding:8px}

/* Hero + lead */
.hero{background:linear-gradient(180deg,rgba(106,195,255,.2),transparent);padding:28px 0 10px;border-bottom:1px solid #1c2433}
.hero h1{margin:10px 0 0;font-size:clamp(24px,4vw,40px);line-height:1.2}
.kicker{color:var(--muted);text-transform:uppercase;letter-spacing:1px;font-size:12px}

/* Grid cards */
.grid{display:grid;gap:18px}
.grid.cards-3{grid-template-columns:repeat(3,1fr)}
.grid.cards-2{grid-template-columns:repeat(2,1fr)}
@media (max-width:900px){
  .grid.cards-3{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:640px){
  .grid.cards-3,.grid.cards-2{grid-template-columns:1fr}
  .nav{display:none}
  .burger{display:block}
}

/* Card */
.card{background:var(--surface);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);border:1px solid #1c2433}
.card .body{padding:16px}
.card .meta{display:flex;gap:10px;align-items:center;color:var(--muted);font-size:12px}
.card h3{margin:.2rem 0 0;font-size:1.1rem}
.badge{background:#1b2637;color:var(--brand);padding:4px 10px;border-radius:999px;font-size:12px;border:1px solid #22334a}

/* Sidebar / sponsors */
.layout{display:grid;grid-template-columns:3fr 1.2fr;gap:24px;margin-top:18px}
@media (max-width:1024px){.layout{grid-template-columns:1fr}}
.sidebar .widget{background:var(--surface);border:1px solid #1c2433;border-radius:var(--radius);padding:12px 12px 4px;margin-bottom:18px;box-shadow:var(--shadow)}
.widget h4{margin:4px 0 10px 4px}
.banner{display:block;border:1px dashed #334a6b;border-radius:12px;overflow:hidden;padding:6px;background:#0f131d}
.banner img{width:100%;height:auto}

/* Footer */
.footer{margin-top:30px;padding:24px 0;background:var(--bg-soft);border-top:1px solid #1c2433;color:var(--muted);font-size:14px}
.footer a{color:var(--text)}

/* Article */
.article header{margin-bottom:12px}
.article h1{font-size:clamp(26px,4vw,42px)}
.article .meta{color:var(--muted)}
.article figure{margin:0;border-radius:var(--radius);overflow:hidden}
.article .content p{margin:1rem 0}
.article .content blockquote{margin:1rem 0;padding:1rem;border-left:4px solid var(--brand);background:#0f141e;border-radius:8px}

/* Forms */
input,textarea,select,button{font:inherit}
.input, .btn{width:100%;padding:12px 14px;border-radius:12px;border:1px solid #263348;background:#0f141e;color:var(--text)}
.btn{background:linear-gradient(180deg,var(--brand),var(--brand-strong));border:0;color:#06243a;font-weight:700;cursor:pointer}
.btn.secondary{background:#1a2230;color:var(--text);border:1px solid #2a3a53}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.form-grid .span-2{grid-column:span 2}
@media (max-width:640px){.form-grid{grid-template-columns:1fr}}

/* Breadcrumbs */
.breadcrumbs{font-size:13px;color:var(--muted);margin:4px 0 10px}
.breadcrumbs a{color:var(--muted)}
/* Accessibility helpers */
.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.skip-link:focus{left:10px;top:10px;width:auto;height:auto;padding:8px 12px;background:#fff;color:#000;border-radius:8px}


/* --- Tweak: homepage sidebar banner reduced --- */
.sidebar .widget[data-rotate="banners"] .banner img{max-height:160px;object-fit:cover}
.sidebar .widget[data-rotate="banners"]{padding-top:8px;padding-bottom:8px}
.sidebar .widget[data-rotate="banners"] h4{margin-bottom:6px}


/* --- Veneto SVG Map --- */
.map-veneto{background:var(--surface);border:1px solid #1c2433;border-radius:var(--radius);padding:12px;box-shadow:var(--shadow)}
.map-veneto svg{width:100%;height:auto;display:block}
.map-veneto a:hover path{fill:#1e2a3d;stroke:var(--brand)}
.map-veneto .label{font-size:12px;fill:var(--muted)}
