/* Schermo singolo — layout condiviso delle proposte EU Monitoring.
   Ogni pagina definisce solo i colori/font via variabili. Nessuno scorrimento. */
:root{
  --bg:#f8f9fa; --bg-img:none; --overlay:none;
  --ink:#2c3e50; --muted:#495057; --accent:#e74c3c;
   --bar-bg:#0c1626; --bar-line:#22304a; --bar-ink:#ffffff; --bar-muted:#93a1b5; --bar-link:#c3ccd8;
  --card:#ffffff; --card-line:#e8ecf0;
  --font:'Inter',sans-serif; --title-font:'Inter',sans-serif;
  --radius:10px;
}
*{margin:0;padding:0;box-sizing:border-box;}
html,body{height:100%;}
body{
  font-family:var(--font);color:var(--ink);background-color:var(--bg);
  background-image:var(--bg-img);background-size:cover;background-position:center 90px;
  background-repeat:no-repeat;background-attachment:fixed;
  display:flex;flex-direction:column;height:100vh;overflow:hidden;
}
body::before{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;background:var(--overlay);}

.bar{flex:0 0 auto;background:var(--bar-bg);border-bottom:1px solid var(--bar-line);}
.bar .in{max-width:1500px;margin:0 auto;padding:0 24px;height:60px;display:flex;align-items:center;justify-content:space-between;}
.brand{display:flex;align-items:center;gap:12px;}
.brand img{width:40px;height:40px;border-radius:8px;object-fit:cover;}
.brand b{font-family:var(--title-font);font-size:15px;display:block;line-height:1.15;color:var(--bar-ink);}
.brand span{font-size:11px;color:var(--bar-muted);}
.nav{display:flex;gap:18px;font-size:13px;font-weight:500;}
.nav a{color:var(--bar-link);text-decoration:none;opacity:.8;transition:opacity .2s,color .2s;}
.nav a:hover{opacity:1;color:var(--accent);}

.stage{flex:1 1 auto;min-height:0;width:100%;max-width:1500px;margin:0 auto;padding:16px 28px;display:flex;flex-direction:column;}
.title{flex:0 0 auto;text-align:center;font-family:var(--title-font);font-size:clamp(20px,2.3vw,32px);letter-spacing:-.02em;margin-bottom:12px;}

.cols{flex:1 1 auto;min-height:0;display:grid;grid-template-columns:300px minmax(0,1fr) 300px;gap:26px;align-items:center;}
.col-text{font-size:13.5px;line-height:1.5;color:var(--muted);max-height:100%;overflow:hidden;}
.col-text strong{color:var(--ink);}
.col-foto{display:flex;justify-content:center;align-items:center;min-height:0;height:100%;}
.col-foto img{max-width:100%;max-height:100%;width:auto;height:auto;border-radius:var(--radius);box-shadow:0 14px 38px rgba(15,23,43,.22);display:block;}
.col-cta{border-left:3px solid var(--accent);padding-left:16px;text-align:center;}
.col-cta h3{font-family:var(--title-font);font-size:16px;margin-bottom:12px;}
.col-cta a{display:block;font-size:13px;color:var(--ink);text-decoration:none;padding:6px 0;transition:color .2s;}
.col-cta a:hover{color:var(--accent);text-decoration:underline;}

footer{flex:0 0 auto;border-top:1px solid var(--bar-line);text-align:center;font-size:11.5px;color:var(--muted);padding:9px 20px;}

/* --- pagina 2: libro aperto dinamico --- */
.kit-head{flex:0 0 auto;text-align:center;margin-bottom:10px;}
.kit-head .kicker{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--accent);margin-bottom:8px;}
.kit-head h1{font-family:var(--title-font);font-size:clamp(20px,2.3vw,30px);letter-spacing:-.02em;}
.kit-head p{font-size:13px;color:var(--muted);margin-top:6px;}
.kit-wrap{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;}
.kit-wrap [data-kit]{display:flex;align-items:center;justify-content:center;width:100%;}
.kit-wrap .kit-stage{width:min(100%, calc((100vh - 360px) * 1200 / 896));aspect-ratio:1200/896;padding-top:0;height:auto;}
.kit-legend .chip{border-color:var(--card-line);background:var(--card);color:var(--ink);}
.kit-legend .chip .dot{background:var(--accent);}
.note{flex:0 0 auto;text-align:center;font-size:11px;color:var(--muted);margin-top:8px;}

@media(max-width:900px){
  body{overflow:auto;height:auto;min-height:100vh;}
  .cols{grid-template-columns:1fr;gap:20px;}
  .col-foto{height:auto;}
  .col-text{max-height:none;overflow:visible;}
  .nav{display:none;}
}

/* --- navigazione pubblica: sezioni + lingue (modello massimogabellone.com) --- */
.site-nav{display:flex;justify-content:space-between;align-items:center;gap:14px;max-width:1500px;margin:0 auto;padding:0 24px 10px;flex-wrap:wrap;position:relative;z-index:1;}
.site-nav-links{display:flex;gap:18px;flex-wrap:wrap;}
.site-nav-langs{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
.site-nav a,.site-nav .current{font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;}
.site-nav a{color:var(--bar-muted);text-decoration:none;transition:color .18s;padding:15px 5px;margin:-15px -5px;}
.site-nav a:hover,.site-nav a:focus{color:#FFD700;}
.site-nav .current{color:#FFD700;}
@media(max-width:900px){
  .site-nav{padding:0 16px 8px;gap:10px;}
  .site-nav-links{gap:12px;}
}
