*{box-sizing:border-box}
:root{
  --ink:#0e2340;
  --text:#272727;
  --muted:#666;
  --line:rgba(15,14,12,.12);
  --paper:#fff;
  --soft:#f7f5f0;
  --brand-blue:#00a4e5;
  --brand-green:#afca3e;
  --gold:#7f9b1d;
  --max:1120px;
}
html,body{margin:0;padding:0}
body{
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  color:var(--text);
  background:var(--paper);
  line-height:1.65;
}
a{color:var(--ink);text-decoration:none}
a:hover{text-decoration:none;color:var(--brand-blue)}
.wrap{width:min(calc(100% - 34px),var(--max));margin:auto}
.site-header{background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:18px 0}
.brand{font-family:Georgia,serif;font-weight:700;font-size:1.28rem;color:var(--ink)}
.nav{display:flex;gap:22px;flex-wrap:wrap;font-size:.95rem}
.hero{background:var(--soft);border-bottom:1px solid var(--line);padding:70px 0 44px}
.kicker{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:800}
.hero h1,.article h1,.admin h1{font-family:Georgia,serif;color:var(--ink)}
.hero h1{font-size:clamp(2.4rem,5vw,4.2rem);line-height:1.03;margin:8px 0 16px}
.hero p{max-width:760px;color:var(--muted);font-size:1.12rem}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding:42px 0 70px}
.card{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 12px 35px rgba(14,35,64,.06)}
.card img{width:100%;aspect-ratio:16/9;object-fit:cover;background:#eee}
.card-body{padding:23px}
.badge{display:inline-block;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;font-weight:800;color:var(--gold);margin-bottom:8px}
.card h2{font-family:Georgia,serif;color:var(--ink);font-size:1.45rem;line-height:1.22;margin:.2rem 0 .7rem}
.card p{color:#555}
.meta{font-size:.9rem;color:var(--muted)}
.article{max-width:820px;margin:52px auto 76px}
.article h1{font-size:clamp(2.35rem,5vw,4rem);line-height:1.08;margin:.35rem 0 1rem}
.article .lead{font-size:1.2rem;color:#5b5b5b}
.article-content{font-family:Georgia,serif;font-size:1.12rem;line-height:1.82}
.article-content h2,.article-content h3{font-family:Georgia,serif;color:var(--ink);line-height:1.2;margin-top:2.2em}
.article-content img{max-width:100%;height:auto}
.paywall{margin:38px 0;padding:30px;border:1px solid var(--line);border-radius:18px;background:var(--soft)}
.paywall h2{font-family:Georgia,serif;color:var(--ink);margin-top:0}
.btn{
  display:inline-block;border:0;border-radius:999px;padding:12px 21px;
  background:var(--ink);color:#fff;font:inherit;font-weight:750;cursor:pointer
}
.btn:hover{text-decoration:none;opacity:.93}
.btn.secondary{background:#fff;color:var(--ink);border:1px solid var(--line)}
.footer{border-top:1px solid var(--line);padding:30px 0;color:var(--muted);font-size:.9rem}
.admin{max-width:1000px;margin:38px auto 70px}
.admin-card{padding:28px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 12px 35px rgba(14,35,64,.06)}
form label{display:block;font-weight:700;margin-top:16px;color:var(--ink)}
input[type=text],input[type=email],input[type=password],input[type=url],input[type=datetime-local],textarea,select{
  width:100%;padding:11px 12px;border:1px solid #c9c9c9;border-radius:9px;background:#fff;font:inherit
}
textarea{min-height:120px}
textarea.content{min-height:430px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.92rem}
table{width:100%;border-collapse:collapse}
th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line);vertical-align:top}
.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.notice,.error{padding:12px 14px;border-radius:9px;margin:16px 0}
.notice{background:#edf8f0}
.error{background:#fff0ee;color:#8b2e22}
.empty{padding:48px 0;color:var(--muted)}
@media(max-width:820px){
  .grid{grid-template-columns:1fr}
  .site-header .wrap{align-items:flex-start;flex-direction:column;gap:10px}
}

.plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:stretch}.plans .paywall{margin:0}@media(max-width:760px){.plans{grid-template-columns:1fr}}


/* ===== TrainingLoad Pro — Unification V3 / Articles ===== */
:root{
  --navy:#0e2340;
  --brand-blue:#00a4e5;
  --brand-green:#afca3e;
  --ink:#182436;
  --muted:#667085;
  --line:#e4e9ee;
  --soft:#f7f9fa;
}
body{background:#fff;color:var(--ink)}
.site-header{
  background:rgba(255,255,255,.97);
  border-bottom:1px solid var(--line);
  position:sticky;top:0;z-index:30;
  backdrop-filter:blur(12px);
}
.site-header .brand{color:var(--navy)}
.site-header nav a{color:var(--navy)}
.site-header nav a:hover{color:var(--brand-blue)}

/* Le bandeau éditorial reprend désormais la logique visuelle d'Ouvrages :
   blanc, beaucoup d'espace, titre bleu nuit et accents de marque discrets. */
.hero,.page-hero,.articles-hero,.intro-hero{
  background:#fff !important;
  color:var(--navy) !important;
  border-bottom:1px solid var(--line);
  position:relative;
  overflow:hidden;
}
.hero:after,.page-hero:after,.articles-hero:after,.intro-hero:after{
  content:"";
  position:absolute;
  width:360px;height:360px;border-radius:50%;
  right:-150px;top:-150px;
  border:52px solid rgba(175,202,62,.10);
  pointer-events:none;
}
.hero h1,.page-hero h1,.articles-hero h1,.intro-hero h1{
  color:var(--navy) !important;
  font-family:Georgia,"Times New Roman",serif;
  letter-spacing:-.035em;
}
.hero p,.page-hero p,.articles-hero p,.intro-hero p{
  color:#526075 !important;
}
.kicker,.eyebrow{
  color:#7d971d !important;
  background:transparent !important;
}
.btn,.button,.cta{
  box-shadow:none;
}
.article-card,.card,.paywall{
  border-color:var(--line);
}
