/* Il Circolo degli Scipioni — stile condiviso
   Modificare qui cambia l'aspetto di TUTTE le pagine. */

*{ box-sizing:border-box; margin:0; padding:0; }
body{ background:var(--paper); color:var(--ink); font-family:'Newsreader', Georgia, serif; -webkit-font-smoothing:antialiased; }
a{ color:inherit; text-decoration:none; }
.wrap{ max-width:1100px; margin:0 auto; padding:0 28px; }
header{ border-bottom:1px solid var(--line); background:var(--paper); }
.headbar{
    display:flex; flex-direction:column; align-items:center; justify-content:center;
    gap:13px; height:auto; padding:20px 0 18px;
  }
.marchio{
    display:flex; flex-direction:column; align-items:center; gap:9px;
    text-decoration:none;
  }
.logo{
    display:block; height:44px; width:auto;
    transition:opacity .25s ease;
  }
.marchio:hover .logo{ opacity:0.7; }
.wordmark{ font-family:'Newsreader', Georgia, serif; font-weight:600; font-size:23px; letter-spacing:0.01em; text-align:center; }
nav{ display:flex; gap:8px; justify-content:center; }
nav a{
    font-family:'Inter', -apple-system, sans-serif; font-size:11px; font-weight:500;
    letter-spacing:0.09em; text-transform:uppercase; color:var(--ink-soft);
    padding:9px 15px; border:1px solid var(--line);
    transition:border-color .15s, color .15s, background .15s;
  }
nav a:hover{ border-color:var(--ink); color:var(--ink); }
nav a.active{ background:var(--ink); color:var(--paper); border-color:var(--ink); }
footer{ border-top:1px solid var(--line); margin-top:40px; padding:34px 0 60px; }
footer p{ font-size:13px; color:var(--ink-soft); }
.hb-data{
    position:absolute; left:0; top:50%; transform:translateY(-50%);
    font-family:'Inter', -apple-system, sans-serif; font-size:10.5px; font-weight:500;
    letter-spacing:0.08em; text-transform:uppercase; color:var(--ink-faint);
  }
.lang-corner{
    position:absolute; right:0; top:50%; transform:translateY(-50%);
    font-family:'Inter', -apple-system, sans-serif; font-size:10.5px; font-weight:600;
    letter-spacing:0.08em; text-transform:uppercase; color:var(--ink-faint);
    transition:color .2s;
  }
.lang-corner:hover{ color:var(--ink); }
.mini-bar{
    position:fixed; top:0; left:0; right:0; z-index:60;
    background:var(--paper); border-bottom:1px solid var(--line);
    transform:translateY(-100%); transition:transform .3s cubic-bezier(.22,.61,.36,1);
  }
.mini-bar.mostra{ transform:translateY(0); }
.mini-in{
    display:flex; align-items:center; justify-content:space-between;
    height:52px; gap:16px;
  }
.mini-nome{
    font-family:'Newsreader', Georgia, serif; font-weight:600; font-size:14px;
    letter-spacing:0.01em; color:var(--ink); text-decoration:none;
    white-space:nowrap; flex:0 0 auto;
  }
.mini-nav{ display:flex; gap:6px; flex:1; justify-content:center; }
.mini-nav a{
    font-family:'Inter', -apple-system, sans-serif; font-size:10px; font-weight:500;
    letter-spacing:0.08em; text-transform:uppercase; color:var(--ink-soft);
    padding:7px 12px; border:1px solid var(--line); text-decoration:none;
    transition:border-color .2s, background .2s, color .2s;
  }
.mini-nav a:hover{ border-color:var(--ink); color:var(--ink); }
.mini-nav a.active{ background:var(--ink); color:var(--paper); border-color:var(--ink); }
.mini-cerca{
    flex:0 0 auto; width:32px; height:32px; border:1px solid var(--line);
    background:none; color:var(--ink-soft); cursor:pointer;
    display:flex; align-items:center; justify-content:center;
    transition:border-color .2s, color .2s;
  }
.mini-cerca:hover{ border-color:#A8452B; color:#A8452B; }
.mini-lang{
    flex:0 0 auto; font-family:'Inter', -apple-system, sans-serif; font-size:10px; font-weight:600;
    letter-spacing:0.08em; text-transform:uppercase; color:var(--ink-soft);
    transition:color .2s;
  }
.mini-lang:hover{ color:var(--ink); }
:focus-visible{ outline:2px solid var(--ink); outline-offset:2px; }
.share-row{
    display:flex; align-items:center; justify-content:center; flex-wrap:wrap;
    gap:14px; margin-top:44px;
  }
.share-lbl{
    font-family:'Inter', -apple-system, sans-serif; font-size:10px; font-weight:600;
    letter-spacing:0.14em; text-transform:uppercase; color:var(--ink-faint);
  }
.share-link{
    font-family:'Inter', -apple-system, sans-serif; font-size:11px; font-weight:500;
    letter-spacing:0.04em; color:var(--ink-soft); text-decoration:none;
    background:none; border:none; padding:0; cursor:pointer;
    transition:color .2s;
  }
.share-link:hover{ color:#A8452B; }
:root{
    --ink:#12100E; --ink-soft:#55524C; --ink-faint:#78746D;
    --line:rgba(18,16,14,0.13);
    --paper:#FFFFFF; --panel:#F7F7F5;
  }
