/*
Theme Name: Aspro Archives
Description: Thème éditorial aligné sur la couche d'archives Archivarix. Chrome identique, lecture longue optimisée.
Version: 1.0
Author: —
*/

:root{
  --chrome:#4d504a;        /* bandeau et navigation */
  --rule:#1d201c;          /* filets épais */
  --ink:#1a1a1a;           /* texte courant */
  --ink-soft:#5a5a5a;      /* texte secondaire */
  --ink-faint:#737373;     /* mentions */
  --line:#d9d9d9;          /* filets fins */
  --paper:#fff;
  --wash:#f5f4f2;          /* aplats doux */
  --accent:#8a5a2b;        /* liens : brun chaud, emprunté aux affiches */
  --wrap:975px;
  --measure:660px;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--wash);color:var(--ink);
  font-family:"Quattrocento Sans",Arial,Helvetica,sans-serif;
  font-size:16px;line-height:1.5;text-align:left;
}
img{max-width:100%;height:auto}
a{color:var(--accent)}

/* ---------- chrome repris de la couche archives ---------- */
.wrapper{width:100%;max-width:var(--wrap);background:var(--paper);margin:0 auto}
.header{background:var(--chrome);overflow:hidden;padding-right:30px;min-height:143px}
.header::after{content:"";display:table;clear:both}
.logo{width:290px;padding:42px 0 12px 18px;float:left}
.logo img{max-height:120px;width:auto;display:block}
.topbar{float:right;padding:52px 0 0}
.topbar ul{list-style:none;margin:0;padding:0}
.topbar li{display:inline-block;margin-left:18px}
.topbar a{color:#fff;text-decoration:none;font-size:13px;letter-spacing:.06em;text-transform:uppercase}
.topbar a:hover{text-decoration:underline}
.nav{background:var(--chrome);border-bottom:8px solid var(--rule)}
.nav ul{list-style:none;margin:0;padding:0 18px}
.nav li{display:inline-block;position:relative}
.nav a{display:block;color:#fff;text-decoration:none;padding:11px 14px;font-size:13px;letter-spacing:.04em}
.nav a:hover,.nav a:focus{background:var(--rule)}

/* ---------- gouttière ---------- */
.shell{padding:0 18px 48px}
.crumb{font-size:13px;color:var(--ink-faint);padding:16px 0 0}
.crumb a{color:var(--ink-faint)}

/* ---------- article : la zone de lecture ---------- */
.article{max-width:var(--measure);margin:0 auto;padding:8px 0 0}
.article-head{border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:30px}
.kicker{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);margin:0 0 12px}
.article-head h1{
  font-family:Quattrocento,Georgia,"Times New Roman",serif;
  font-size:38px;line-height:1.18;font-weight:700;color:var(--ink);margin:0 0 14px;letter-spacing:-.01em;
}
.byline{font-size:13px;color:var(--ink-soft);margin:0}
.byline span+span::before{content:"·";margin:0 8px;color:var(--line)}

/* corps : sérif pour la lecture longue */
.prose{
  font-family:Quattrocento,Georgia,"Times New Roman",serif;
  font-size:19px;line-height:1.75;color:var(--ink);
}
.prose > *+*{margin-top:1.15em}
.prose p{margin:0}
.prose .lead{font-size:21px;line-height:1.6;color:#2c2c2c}
.prose h2{
  font-family:"Quattrocento Sans",Arial,sans-serif;
  font-size:15px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);
  margin:2.1em 0 .1em;padding-bottom:8px;border-bottom:2px solid var(--rule);
}
.prose h3{font-family:"Quattrocento Sans",Arial,sans-serif;font-size:18px;margin:1.7em 0 .1em;color:var(--ink)}
.prose ul,.prose ol{margin:0;padding-left:1.3em}
.prose li+li{margin-top:.45em}
.prose a{color:var(--accent);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.prose a:hover{background:#f3ece3}
.prose blockquote{
  margin:1.6em 0;padding:4px 0 4px 22px;border-left:4px solid var(--chrome);
  color:var(--ink-soft);font-style:italic;
}
.prose blockquote p{margin:0}
.prose figure{margin:1.8em 0}
.prose figcaption{font-family:"Quattrocento Sans",Arial,sans-serif;font-size:13px;color:var(--ink-faint);margin-top:8px}
.prose img{display:block}
.prose hr{border:0;border-top:1px solid var(--line);margin:2.4em 0}
.prose code{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.86em;background:var(--wash);padding:2px 5px;border-radius:2px}
.prose pre{background:var(--rule);color:#eee;padding:16px 18px;overflow-x:auto;font-size:14px;line-height:1.6}
.prose pre code{background:none;color:inherit;padding:0}
.prose table{width:100%;border-collapse:collapse;font-size:16px}
.prose th,.prose td{border-bottom:1px solid var(--line);padding:9px 10px;text-align:left}
.prose th{font-family:"Quattrocento Sans",Arial,sans-serif;font-size:13px;text-transform:uppercase;letter-spacing:.06em}
.table-scroll{overflow-x:auto}

/* sommaire auto */
.toc{background:var(--wash);border-left:4px solid var(--chrome);padding:16px 20px;margin:0 0 32px;
     font-family:"Quattrocento Sans",Arial,sans-serif;font-size:14px}
.toc p{margin:0 0 8px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint)}
.toc ol{margin:0;padding-left:1.1em}
.toc li+li{margin-top:5px}
.toc a{color:var(--ink);text-decoration:none}
.toc a:hover{text-decoration:underline}

/* jauge de lecture */
.progress{position:fixed;top:0;left:0;height:3px;background:var(--rule);width:0;z-index:99}

.article-foot{max-width:var(--measure);margin:44px auto 0;padding-top:20px;border-top:1px solid var(--line);
  font-size:14px;color:var(--ink-faint)}

/* ---------- listes d'articles ---------- */
.list{max-width:var(--measure);margin:0 auto}
.card{padding:26px 0;border-bottom:1px solid var(--line)}
.card h2{font-family:Quattrocento,Georgia,serif;font-size:25px;line-height:1.25;margin:0 0 8px}
.card h2 a{color:var(--ink);text-decoration:none}
.card h2 a:hover{color:var(--accent)}
.card .byline{margin-bottom:9px}
.card p{margin:0;color:var(--ink-soft);font-family:Quattrocento,Georgia,serif;font-size:17px;line-height:1.65}
.more{display:inline-block;margin-top:10px;font-family:"Quattrocento Sans",Arial,sans-serif;font-size:13px;
  letter-spacing:.08em;text-transform:uppercase;color:var(--accent);text-decoration:none;border-bottom:1px solid currentColor}

.pager{max-width:var(--measure);margin:34px auto 0;display:flex;justify-content:space-between;font-size:14px}
.pager a{color:var(--accent);text-decoration:none}

/* ---------- pied ---------- */
.footer{border-top:1px solid var(--line);padding:20px 18px 26px;background:var(--paper)}
.footer p{font-size:12px;color:var(--ink-faint);margin:0 0 4px}
.footer a{color:var(--ink);text-decoration:none}
.footer a:hover{text-decoration:underline}

/* ---------- adaptation petits écrans (la couche archives n'en a pas) ---------- */
@media (max-width:820px){
  .logo{float:none;width:auto;padding:22px 0 10px 0}
  .logo img{max-height:78px}
  .topbar{float:none;padding:0 0 16px}
  .topbar li{margin:0 16px 0 0}
  .header{padding:0 18px;min-height:0}
  .nav ul{padding:0 8px}
  .nav a{padding:10px 10px;font-size:12px}
  .article-head h1{font-size:30px}
  .prose{font-size:18px}
  .prose .lead{font-size:19px}
}
@media (max-width:480px){
  .article-head h1{font-size:26px}
  .prose{font-size:17px;line-height:1.72}
}
@media print{
  .nav,.topbar,.progress,.toc,.pager,.article-foot{display:none}
  body{background:#fff}.prose{font-size:12pt}
}

.article-head.list{max-width:var(--measure);margin:0 auto 6px}
