/* ==========================================================================
   Les Horizons d'Aurèle — feuille de style de la refonte (2026)

   Fichier 00 : fondations. Chargée UNIQUEMENT sur les pages refaites (classe <body> « lha-page »).
   Chaque section Divi de ces pages porte la classe « lha ». Les modules Divi
   restent vierges de réglages de style : tout est décidé ici, une seule fois.

   Pour Hadrien : on ne modifie rien dans ce fichier pour changer un texte.
   Les textes se corrigent dans Divi, onglet « Contenu » du module.
   ========================================================================== */

:root{
  --lha-surface:#f7f4ef; --lha-raised:#fff; --lha-sunken:#efeae1;
  --lha-ink:#252b26; --lha-muted:#5c645c;
  --lha-border:#ddd7cc; --lha-border-strong:#b9b2a3;
  --lha-primary:#5a6f52; --lha-primary-h:#46583f;
  --lha-accent:#8f5a22; --lha-accent-h:#74481a;
  --lha-sage100:#e3e9de; --lha-sage400:#8fa085; --lha-forest900:#1b2a22;
  --lha-on-dark:#e7ebe5; --lha-on-dark-muted:#b9c4b6;
  --lha-display:"Fraunces",Georgia,serif;
  --lha-sans:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;
  --lha-r-md:8px; --lha-r-lg:14px; --lha-r-pill:999px;
}

/* ---------- base ---------- */
body.lha-page{background:var(--lha-surface)}
body.lha-page #main-content{background:var(--lha-surface)}
.lha-page ::selection{background:var(--lha-sage400);color:#14201a}

.lha-page .lha.et_pb_section{
  background-color:var(--lha-surface);
  padding:48px 24px;
  font-family:var(--lha-sans);
}
.lha-page .lha .et_pb_row{
  width:100%; max-width:1180px; padding:0; margin:0 auto;
}
/* les modules ne portent pas de marge : l'espacement vient du contenu */
body.lha-page .lha .et_pb_module{margin-bottom:0}
body.lha-page .lha .et_pb_module + .et_pb_module{margin-top:16px}
body.lha-page .lha .et_pb_row + .et_pb_row{margin-top:24px}

.lha-page .lha p,
.lha-page .lha li,
.lha-page .lha td,
.lha-page .lha th{
  font-family:var(--lha-sans); color:var(--lha-ink);
  font-size:17px; line-height:1.65; padding-bottom:0; margin:0;
}
.lha-page .lha p + p{margin-top:.9em}
.lha-page .lha h1,
.lha-page .lha h2,
.lha-page .lha h3{
  font-family:var(--lha-display); color:var(--lha-ink);
  font-weight:600; letter-spacing:-.018em; line-height:1.1;
  padding-bottom:0; margin:0;
}
.lha-page .lha h3{font-family:var(--lha-sans);font-size:17px;letter-spacing:0;line-height:1.35}
.lha-page .lha a{color:var(--lha-accent);text-underline-offset:3px}
.lha-page .lha a:hover{color:var(--lha-accent-h)}
.lha-page .lha :where(a,button,input,select,textarea):focus-visible{
  outline:3px solid var(--lha-accent); outline-offset:2px; border-radius:4px;
}
.lha-page .lha sup{font-size:.62em;line-height:0}
.lha-page .lha b,.lha-page .lha strong{font-weight:600}
body.lha-page .lha ul,
body.lha-page .lha ol{list-style:none;padding:0;margin:0}

/* ---------- espacements de section ---------- */
.lha-page .lha.lha-s-tete{padding-top:64px;padding-bottom:24px}
.lha-page .lha.lha-s-fin{padding-bottom:96px}
.lha-page .lha.lha-s-serre{padding-top:24px;padding-bottom:24px}
.lha-page .lha.lha-s-sunken{background-color:var(--lha-sunken)}

/* ---------- textes ---------- */
.lha-page .lha-fil p{font-size:14px;color:var(--lha-muted)}
.lha-page .lha-fil a{
  color:var(--lha-muted); text-decoration:underline;
  display:inline-flex; align-items:center; min-height:28px;
}
body.lha-page .lha .lha-fil + .et_pb_module{margin-top:4px}

.lha-page .lha-h1 h1{font-size:clamp(38px,4.6vw,62px)}
body.lha-page .lha .lha-h1 + .et_pb_module{margin-top:16px}

.lha-page .lha-h2 h2{font-size:clamp(28px,3vw,40px)}
body.lha-page .lha .lha-h2 + .et_pb_module{margin-top:12px}

.lha-page .lha-chapo p{font-size:19px;line-height:1.6;color:var(--lha-muted);max-width:62ch}
.lha-page .lha-note p{font-size:15px;color:var(--lha-muted)}

.lha-page .lha-texte h2{font-size:clamp(26px,2.6vw,34px);margin-bottom:20px}
.lha-page .lha-texte h3{margin:1.4em 0 .4em}
.lha-page .lha-texte ul li{position:relative;padding-left:22px}
.lha-page .lha-texte ul li + li{margin-top:.4em}
.lha-page .lha-texte ul li::before{
  content:""; position:absolute; left:4px; top:.72em;
  width:6px; height:6px; border-radius:50%; background:var(--lha-sage400);
}

/* ---------- boutons ---------- */
body.lha-page .lha .et_pb_button_module_wrapper{display:inline-block;margin:0 10px 10px 0}
body.lha-page .lha .et_pb_button_module_wrapper + .et_pb_button_module_wrapper{margin-top:0}
body.lha-page #page-container .lha .et_pb_button{
  font-family:var(--lha-sans)!important; font-size:16px!important; font-weight:600!important;
  line-height:1.2!important; letter-spacing:0!important;
  display:inline-flex!important; align-items:center; justify-content:center;
  min-height:48px; padding:14px 22px!important;
  border:0!important; border-radius:var(--lha-r-md)!important;
  text-decoration:none!important; transition:background-color .15s, box-shadow .15s!important;
}
body.lha-page #page-container .lha .et_pb_button:after,
body.lha-page #page-container .lha .et_pb_button:before{display:none!important}
body.lha-page #page-container .lha .et_pb_button.lha-b-accent{background:var(--lha-accent)!important;color:#fff!important}
body.lha-page #page-container .lha .et_pb_button.lha-b-accent:hover{background:var(--lha-accent-h)!important}
body.lha-page #page-container .lha .et_pb_button.lha-b-primaire{background:var(--lha-primary)!important;color:#fff!important}
body.lha-page #page-container .lha .et_pb_button.lha-b-primaire:hover{background:var(--lha-primary-h)!important}
body.lha-page #page-container .lha .et_pb_button.lha-b-contour{
  background:var(--lha-raised)!important; color:var(--lha-ink)!important;
  box-shadow:inset 0 0 0 1px var(--lha-border-strong)!important;
}
body.lha-page #page-container .lha .et_pb_button.lha-b-contour:hover{box-shadow:inset 0 0 0 1px var(--lha-ink)!important}
body.lha-page #page-container .lha .et_pb_button.lha-b-clair{
  background:transparent!important; color:#fff!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.45)!important;
}
body.lha-page #page-container .lha .et_pb_button.lha-b-clair:hover{box-shadow:inset 0 0 0 1px #fff!important}

/* ---------- mouvement réduit ---------- */
@media (prefers-reduced-motion:reduce){
  .lha-page .lha *{transition:none!important;animation:none!important}
}

/* ---------- tablette et mobile (points de rupture Divi : 980 / 767) ---------- */
@media (max-width:767px){
  .lha-page .lha.et_pb_section{padding-left:16px;padding-right:16px}
  .lha-page .lha.lha-s-tete{padding-top:40px}
  .lha-page .lha-chapo p{font-size:18px}
  body.lha-page .lha .et_pb_button_module_wrapper{display:block;margin-right:0}
  body.lha-page #page-container .lha .et_pb_button{width:100%}
}
