/* èpiceno — stile pagine interne (articoli, archivi, pagine).
   Le variabili di palette (--blu-dark, --oro-ink, --blu-deep, --ink-soft)
   sono ereditate dallo style.css principale. */
:root{ --bg:#fbfaf7; }
body.epiceno-inner{ background:var(--bg); }

/* ---- Articolo singolo ---- */
.article-page{ max-width:820px; margin:0 auto; padding:48px 22px 90px; }
.article-page .kicker{ font-family:'Montserrat',sans-serif; font-size:13px; letter-spacing:.14em; text-transform:uppercase; color:var(--oro-ink); font-weight:600; margin:0 0 10px; }
.article-page h1{ font-family:'Cormorant Garamond',serif; font-weight:700; font-size:clamp(2rem,5vw,3rem); line-height:1.12; color:var(--blu-deep); margin:0 0 8px; }
.article-page .lead{ font-size:18px; color:var(--ink-soft,#4a5763); margin:0 0 30px; }
.article-body{ font-size:17px; line-height:1.75; }
.article-body h2{ font-family:'Cormorant Garamond',serif; font-weight:600; font-size:clamp(1.5rem,3.4vw,2rem); color:var(--blu-dark); margin:36px 0 6px; line-height:1.2; }
.article-body h3{ font-family:'Cormorant Garamond',serif; font-weight:600; color:var(--blu-dark); margin:28px 0 6px; }
.article-body p{ margin:0 0 18px; }
.article-body ul,.article-body ol{ margin:0 0 18px; padding-left:1.3em; }
.article-body li{ margin:0 0 8px; }
.article-body img{ border-radius:12px; margin:22px 0; }
.article-body a{ color:var(--blu-dark); }
.article-body blockquote{ border-left:3px solid var(--oro); margin:22px 0; padding:4px 0 4px 18px; color:var(--ink-soft,#4a5763); font-style:italic; }
.article-page hr{ border:none; border-top:1px solid #e6e0d4; margin:26px 0; }
.article-foot{ margin-top:46px; padding-top:22px; border-top:1px solid #e6e0d4; }
.article-foot a.btn{ display:inline-block; background:var(--blu-dark); color:#fff; text-decoration:none; padding:12px 22px; border-radius:6px; font-weight:600; font-size:15px; }
.article-foot a.btn:hover{ background:var(--blu-deep); }

/* ---- Archivio / elenco articoli ---- */
.archive-head{ max-width:900px; margin:0 auto; padding:64px 22px 0; text-align:center; }
.archive-head .kicker{ display:inline-flex; align-items:center; gap:.65rem; font-family:'Montserrat',sans-serif; font-size:.7rem; font-weight:700; letter-spacing:.22em; text-transform:uppercase; color:var(--oro-ink); margin:0 0 1rem; }
.archive-head h1{ font-family:'Cormorant Garamond',serif; color:var(--blu-deep); font-size:clamp(2rem,5vw,3.2rem); margin:0; }
.archive-head p.sub{ color:var(--ink-soft,#4a5763); margin:.6rem 0 0; }
.card-grid{ max-width:1080px; margin:0 auto; padding:34px 22px 40px; display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:26px; }
.post-card{ background:#fff; border:1px solid #ece3d3; border-radius:16px; padding:26px; box-shadow:0 6px 18px rgba(18,52,82,.06); transition:transform .25s,box-shadow .25s; display:flex; flex-direction:column; }
.post-card:hover{ transform:translateY(-4px); box-shadow:0 14px 34px rgba(18,52,82,.12); }
.post-card .pc-kicker{ font-size:12px; letter-spacing:.14em; text-transform:uppercase; color:var(--oro-ink); font-weight:700; margin:0 0 8px; }
.post-card h2{ font-family:'Cormorant Garamond',serif; color:var(--blu-dark); font-size:1.4rem; line-height:1.2; margin:0 0 10px; }
.post-card h2 a{ color:inherit; text-decoration:none; }
.post-card h2 a:hover{ color:var(--blu-deep); }
.post-card p{ color:var(--ink-soft,#4a5763); font-size:15px; margin:0 0 18px; }
.post-card .pc-link{ margin-top:auto; color:var(--blu-dark); font-weight:600; font-size:15px; text-decoration:none; }
.ep-pagination{ max-width:1080px; margin:0 auto 90px; padding:0 22px; display:flex; gap:10px; justify-content:center; flex-wrap:wrap; }
.ep-pagination .page-numbers{ display:inline-block; padding:8px 14px; border:1px solid #d9cdb5; border-radius:8px; color:var(--blu-dark); text-decoration:none; }
.ep-pagination .page-numbers.current{ background:var(--blu-dark); color:#fff; border-color:var(--blu-dark); }
.ep-empty{ max-width:820px; margin:0 auto; padding:40px 22px 100px; text-align:center; color:var(--ink-soft,#4a5763); }

/* Skip link (coerente con la palette) */
.skip-link{ position:absolute; left:8px; top:-48px; background:var(--blu-deep); color:#fff; padding:10px 16px; border-radius:0 0 8px 8px; z-index:100; transition:top .15s; text-decoration:none; font-weight:600; }
.skip-link:focus{ top:0; }

/* --- FIX navbar sulle pagine interne (articoli, archivi, pagine) ---
   Sulla home la navbar è volutamente trasparente sopra l'hero scuro e
   diventa piena allo scroll. Sulle pagine interne non c'è hero scuro:
   qui la forziamo sempre "piena" (blu) così il menu è sempre visibile,
   e aggiungiamo spazio in alto per non far coprire il contenuto dalla
   navbar fissa. */
body.epiceno-inner { padding-top: 72px; }
body.epiceno-inner .navbar {
	background: rgba(18,52,82,0.96);
	box-shadow: 0 2px 24px rgba(0,0,0,0.2);
	-webkit-backdrop-filter: blur(12px);
	backdrop-filter: blur(12px);
	padding-top: 0.55rem;
	padding-bottom: 0.55rem;
}
