/* Pages secondaires (books, about, resources, contact, privacy) : même contenu que site_build.py,
   habillé au nouveau système (papier blanc, encre navy, Young Serif + Atkinson, achat en terracotta). */
body{background:#EEF1EC;font:400 17px/1.6 var(--text)}
a{color:var(--ink)}
:focus-visible{outline:3px solid var(--terra);outline-offset:3px}
.wrap{width:min(1240px,100% - 32px);margin-inline:auto}

/* en-tête courant */
header.top{background:var(--paper);border:0}
header.top .bar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px 18px;min-height:60px;padding:8px 0;border-bottom:1px solid var(--ink)}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font:400 19px/1.1 var(--display);letter-spacing:-.01em;color:var(--ink)}
.brand small{display:none}
.mark{width:36px;height:36px}
nav.main{display:flex;gap:22px;flex-wrap:wrap;align-items:center}
nav.main a{font:700 15px var(--text);text-decoration:none;color:var(--ink)}
nav.main a:hover,nav.main a.on{text-decoration:underline;text-decoration-style:dotted;text-decoration-thickness:2px;text-underline-offset:6px}
nav.main a.lang{border:0;padding:0;font-size:15px}

/* la page : une feuille posée sur la table, comme l'accueil */
main{width:min(1280px,100% - 40px);margin:28px auto 0;background:var(--paper);border-radius:3px;
  box-shadow:0 2px 2px rgba(38,53,74,.06),0 30px 60px -30px rgba(38,53,74,.45);overflow:hidden}
section{padding-block:56px}
section+section{border-top:1px solid var(--hair)}
section.alt{background:var(--paper)}
section.sage{background:var(--sage-field)}
main .wrap{width:min(100% - 120px,1080px)}

h1,h2,h3{font-family:var(--display);font-weight:400;letter-spacing:-.015em;color:var(--ink)}
h1{font-size:clamp(32px,3.4vw,46px);line-height:1.1;margin:0 0 .35em}
h2{font-size:clamp(26px,2.6vw,36px);line-height:1.15;margin:0 0 .5em}
h3{font-size:20px;line-height:1.3;margin:0 0 .3em}
.eyebrow{font:700 12px var(--text);letter-spacing:.16em;text-transform:uppercase;color:var(--sage-ink)}
.lead{font-size:18px;color:var(--ink-2);max-width:40em}
.prose{max-width:46em}
.prose p,.prose li{color:var(--ink-2)}
blockquote{font:400 24px/1.35 var(--display);margin:0 0 .6em;color:var(--ink)}
.lockup{display:block;width:300px;max-width:80%;height:auto;margin:0 0 22px}

/* boutons : terracotta = achat, contour = secondaire */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 1.4em;margin:6px 12px 6px 0;border-radius:3px;
  background:var(--buy);border:2px solid var(--buy);color:#fff;font:700 16px var(--text);text-decoration:none}
.btn:hover{background:var(--buy-hover);border-color:var(--buy-hover)}
.btn.ghost{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn.ghost:hover{background:var(--ink);color:#fff}

/* cartes : filets fins, pas d'arrondis ni d'ombres molles */
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.card{background:var(--paper);border:1px solid var(--hair);border-radius:3px;padding:24px;box-shadow:none}
.bookcard{text-decoration:none;color:var(--ink);background:var(--paper);border:0;border-radius:0;box-shadow:none;display:flex;flex-direction:column;border-bottom:3px solid var(--ink)}
.bookcard .cv{background:var(--sage-field);padding:26px 15px}
.bookcard .cv img{height:250px;width:100%;object-fit:contain;filter:drop-shadow(0 12px 14px rgba(38,53,74,.35))}
.bookcard .bd{padding:16px 2px 18px}
.bookcard .bd h2,.bookcard .bd h3{font-size:20px;line-height:1.3;margin:0 0 .3em}
.bookcard .meta,.meta,.facts{color:var(--ink-2);font-size:14px}
.script{font-size:13px;color:var(--sage-ink);font-weight:700}

/* pied de page */
footer{background:transparent;padding:26px 0 40px;color:var(--ink-2);font-size:14px}
footer .fgrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:24px}
footer ul{list-style:none;padding:0;margin:0}footer li{margin:0 0 6px}
footer a{color:var(--ink-2)}footer .brand{font-size:17px}
footer .copy{margin-top:18px;padding-top:14px;border-top:1px solid var(--hair)}
.mbar{display:none}

@media (max-width:760px){
  body{background:var(--paper)}
  main{width:100%;margin:0;box-shadow:none;border-radius:0}
  main .wrap{width:min(100% - 32px,1080px)}
  section{padding-block:40px}
  .grid,footer .fgrid{grid-template-columns:1fr}
  nav.main{gap:14px}nav.main a{font-size:14px}
}
.bookcard:hover h2{text-decoration:underline;text-decoration-style:dotted;text-underline-offset:5px}
