:root{
  --bg:#0a1020; --bg-2:#0f172b; --panel:#131c33; --ink:#ece8dc; --muted:#9aa3b8; --line:rgba(236,232,220,.12);
  --gold:#c9a45c; --gold-2:#e2c385; --ivory:#f4f0e6; --navy:#0a1020;
  --serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,"Times New Roman",serif;
  --sans:Inter,"Segoe UI",system-ui,-apple-system,Roboto,Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--sans);background:var(--bg);color:var(--ink);line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:inherit}
.wrap{max-width:1180px;margin:0 auto;padding:0 28px}
h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.15;letter-spacing:-.01em}
.eyebrow{font:600 .74rem var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--gold)}

/* nav (identica alla home) */
header.top{position:sticky;top:0;z-index:50;background:rgba(10,16,32,.78);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:74px}
.brand{display:flex;align-items:center;gap:14px;text-decoration:none}
.mono{font-family:var(--serif);font-size:1.25rem;color:var(--gold);border:1px solid var(--gold);padding:5px 9px;letter-spacing:.04em}
.brand span.n{font-family:var(--serif);font-size:1.12rem}
nav ul{display:flex;gap:30px;list-style:none}
nav a{text-decoration:none;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);transition:.2s}
nav a:hover,nav a.on{color:var(--gold-2)}
.menu-btn{display:none;background:none;border:1px solid var(--gold);color:var(--gold-2);padding:7px 14px;font:600 .75rem var(--sans);letter-spacing:.1em;text-transform:uppercase;cursor:pointer}

/* testata pagina */
.pagehead{position:relative;padding:96px 0 72px;border-bottom:1px solid var(--line);overflow:hidden}
.pagehead::before{content:"";position:absolute;inset:0;background:radial-gradient(900px 420px at 82% 0%,rgba(201,164,92,.14),transparent 60%),radial-gradient(700px 360px at 0% 100%,rgba(70,100,170,.12),transparent 60%)}
.pagehead .wrap{position:relative}
.pagehead h1{font-size:clamp(2.4rem,5.5vw,4.4rem);margin:20px 0 18px;max-width:900px}
.pagehead p.lead{max-width:640px;font-size:1.12rem;color:var(--muted)}

/* elenco articoli */
.listsec{padding:80px 0 104px}
.alist{border-top:1px solid var(--line)}
.art{display:grid;grid-template-columns:150px 1fr 40px;gap:28px;align-items:start;padding:34px 0;border-bottom:1px solid var(--line);text-decoration:none;transition:.25s}
.art:hover{padding-left:16px;background:linear-gradient(90deg,rgba(201,164,92,.07),transparent)}
.art .d{font:600 .74rem var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--gold);padding-top:8px}
.art h2{font-size:1.65rem;margin-bottom:10px}
.art .sub{font-family:var(--serif);font-style:italic;color:var(--gold-2);margin-bottom:10px}
.art p{color:var(--muted);max-width:760px}
.art .ar{color:var(--gold);font-size:1.4rem;transition:.25s;padding-top:4px}
.art:hover .ar{transform:translateX(6px)}

/* articolo */
.crumbs{font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:26px}
.crumbs a{text-decoration:none;color:var(--muted)}.crumbs a:hover{color:var(--gold-2)}
.post-head{padding:84px 0 48px;border-bottom:1px solid var(--line);position:relative;overflow:hidden}
.post-head::before{content:"";position:absolute;inset:0;background:radial-gradient(900px 420px at 85% 0%,rgba(201,164,92,.13),transparent 60%)}
.post-head .wrap{position:relative;max-width:820px}
.post-head h1{font-size:clamp(2rem,4.6vw,3.3rem);margin:18px 0 20px}
.post-head .sub{font-family:var(--serif);font-style:italic;font-size:1.25rem;color:var(--gold-2)}
.byline{margin-top:26px;font-size:.88rem;color:var(--muted);display:flex;flex-wrap:wrap;gap:6px 22px}
.byline b{color:var(--ink);font-weight:600}
.post{padding:64px 0 96px}
.post .wrap{max-width:820px}
.post h2{font-size:clamp(1.55rem,2.6vw,2rem);margin:54px 0 18px;color:var(--ink)}
.post h2:first-child{margin-top:0}
.post p{font-size:1.1rem;color:#c5c9d6;margin-bottom:20px;line-height:1.8}
.post em{color:var(--ink)}
.post blockquote{margin:30px 0;padding:6px 0 6px 26px;border-left:2px solid var(--gold);font-family:var(--serif);font-style:italic;font-size:1.28rem;line-height:1.6;color:var(--ink)}
.callout{margin:26px 0 8px;padding:28px 30px;border:1px solid var(--gold);background:rgba(201,164,92,.06)}
.callout p:last-child{margin-bottom:0}
.callout .eyebrow{display:block;margin-bottom:12px}
.disc{margin-top:56px;padding-top:24px;border-top:1px solid var(--line);font-size:.86rem;color:var(--muted);line-height:1.7}
.disc p{font-size:.86rem;color:var(--muted);line-height:1.7;margin:0}
.back{display:inline-block;margin-top:34px;color:var(--gold-2);text-decoration:none;font:600 .78rem var(--sans);letter-spacing:.16em;text-transform:uppercase;border-bottom:1px solid rgba(201,164,92,.4);padding-bottom:3px}
.back:hover{color:var(--ink)}

/* footer */
footer{background:var(--bg);padding:64px 0 34px;color:var(--muted);font-size:.92rem;border-top:1px solid var(--line)}
.fg{display:grid;grid-template-columns:1.4fr 1fr 1.4fr;gap:40px}
footer h4{color:var(--ink);font:600 .72rem var(--sans);letter-spacing:.2em;text-transform:uppercase;margin-bottom:14px}
footer ul{list-style:none}footer li{margin-bottom:8px}
footer a{text-decoration:none}footer a:hover{color:var(--gold-2)}
.copy{border-top:1px solid var(--line);margin-top:40px;padding-top:22px;font-size:.8rem}

@media(max-width:900px){
  .menu-btn{display:block}
  nav ul{display:none;position:absolute;top:74px;left:0;right:0;background:var(--bg);flex-direction:column;gap:0;padding:6px 28px 20px;border-bottom:1px solid var(--line)}
  nav ul.open{display:flex}nav li{padding:14px 0;border-bottom:1px solid var(--line)}
  .fg{grid-template-columns:1fr}
  .art{grid-template-columns:1fr;gap:10px}.art .ar{display:none}.art .d{padding-top:0}
  .pagehead{padding:72px 0 56px}.post-head{padding:64px 0 40px}.post{padding:48px 0 72px}
}
