/* jb-charcot.css — externalisé depuis le <style> inline, aligné design-system AION
   (Satoshi corps / Fraunces display, tokens --aion-*, rythme partagé) */
:root{
  --charcot-white:rgba(255,255,255,.04);
  --charcot-deep:var(--aion-snow, #f4f8fb);
  --charcot-muted:rgba(228,242,252,.62);
  --charcot-accent:var(--aion-cta, #c8a872);
  --charcot-rose:#f6a5c0;
  --charcot-steel:var(--aion-glacier, #c8a872);
  --charcot-stroke:rgba(255,255,255,.10);
  --charcot-shadow:var(--aion-sh3, 0 18px 50px rgba(0,0,0,.42));
  --charcot-shadow2:var(--aion-sh2, 0 12px 28px rgba(0,0,0,.32));
  --charcot-shadowHover:0 22px 60px rgba(0,0,0,.50);
  --charcot-r:var(--aion-r-lg, 24px);
  --charcot-max:var(--aion-max, 1180px);
  --charcot-pad:var(--aion-pad, 22px);
}
*,*::before,*::after{box-sizing:border-box}
img{max-width:100%;height:auto;display:block}

/* HERO */
.charcot-hero{
  position:relative;min-height:60vh;display:flex;align-items:flex-end;
  padding-bottom:clamp(48px,7vw,72px);isolation:isolate;
  background:url('/medias/oa0049.webp') center 20%/cover no-repeat;
}
.charcot-hero::before{
  content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(180deg,rgba(6,15,24,.2) 0%,rgba(6,15,24,.5) 50%,rgba(6,15,24,.9) 100%);
}
.charcot-heroInner{
  position:relative;z-index:2;width:100%;max-width:var(--charcot-max);
  margin:0 auto;padding:0 var(--charcot-pad);
}
.charcot-heroKicker{
  font-size:11px;font-weight:800;letter-spacing:.3em;text-transform:uppercase;
  color:var(--aion-cta, #c8a872);margin-bottom:12px;
}
.charcot-heroH1{
  font-family:var(--aion-font-display, "Fraunces", Georgia, serif);
  font-size:clamp(34px,5.4vw,64px);font-weight:600;line-height:1.04;
  letter-spacing:-.02em;color:#fff;margin:0 0 16px;
}
.charcot-heroLead{
  font-size:clamp(15px,1.6vw,18px);line-height:1.7;
  color:rgba(255,255,255,.82);max-width:620px;margin:0;
}

/* CORPS */
.charcot-wrap{width:100vw;position:relative;left:50%;margin-left:-50vw;overflow:hidden;background:#f2f4f3}
.charcot-container{max-width:var(--charcot-max);margin:0 auto;padding:0 var(--charcot-pad)}
@media(max-width:900px){.charcot-container{padding:0 16px}}
.charcot-sec{padding:var(--aion-sec, 78px) 0;position:relative}
.charcot-sec.alt{background:radial-gradient(1100px 520px at 50% 0%,rgba(127,164,184,.14),transparent 70%),var(--aion-navy, #0b1c2c)}
.charcot-sec+.charcot-sec::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,rgba(228,242,252,0),rgba(228,242,252,.12),rgba(228,242,252,0))}
.charcot-label{font-size:12px;letter-spacing:.28em;text-transform:uppercase;font-weight:800;color:var(--charcot-rose);margin:0 0 16px}
.charcot-title{
  font-family:var(--aion-font-display, "Fraunces", Georgia, serif);
  margin:0 0 18px;font-size:clamp(26px,3.2vw,32px);font-weight:600;line-height:1.22;
  position:relative;padding-left:14px;color:#16202a;
}
.charcot-title::before{content:"";position:absolute;left:0;top:.26em;width:4px;height:1.05em;border-radius:3px;background:var(--charcot-accent)}
.charcot-muted{color:rgba(20,30,40,.62)}
.charcot-card{border-radius:var(--charcot-r);background:#fff;border:1px solid rgba(20,30,40,.10);box-shadow:var(--aion-sh2, 0 12px 28px rgba(0,0,0,.10));padding:clamp(26px,4vw,34px) clamp(20px,3.4vw,32px);margin-bottom:32px;color:#1c2630}
@media(max-width:900px){.charcot-card{padding:26px 20px}}
.charcot-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:32px;align-items:start}
@media(max-width:900px){.charcot-grid{grid-template-columns:1fr;gap:24px}}
.charcot-img{border-radius:var(--aion-r, 18px);overflow:hidden;background:#111;box-shadow:var(--aion-sh2, 0 12px 28px rgba(0,0,0,.32))}
.charcot-img img{transition:transform .5s var(--aion-ease, ease)}
.charcot-img:hover img{transform:scale(1.05)}
.charcot-caption{padding:12px 16px;background:#111;color:#fafafa;font-size:13px;text-align:center}
.charcot-quote{
  font-family:var(--aion-font-display, "Fraunces", Georgia, serif);
  margin:28px 0;padding-left:18px;border-left:4px solid var(--charcot-accent);
  font-style:italic;color:#2a3640;font-size:clamp(17px,2vw,20px);line-height:1.55;
}
.charcot-timeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:24px}
@media(max-width:900px){.charcot-timeline{grid-template-columns:1fr}}
.charcot-timeline-item{border-radius:var(--aion-r, 18px);border:1px solid rgba(20,30,40,.12);background:#fbfcfd;padding:18px 20px;box-shadow:var(--aion-sh1, 0 4px 18px rgba(0,0,0,.08))}
.charcot-timeline-year{font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:#9a7b3e;margin-bottom:8px;font-weight:800}
.charcot-timeline-item p{margin:0;font-size:15.5px;line-height:1.6}
.charcot-cta{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin:32px 0}
.charcot-btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 22px;border-radius:999px;font-size:14px;font-weight:700;text-decoration:none;border:1px solid rgba(20,30,40,.18);background:#fff;color:#16202a;box-shadow:var(--aion-sh1, 0 4px 18px rgba(0,0,0,.08));transition:transform var(--aion-t,.2s) var(--aion-ease,ease),box-shadow var(--aion-t,.2s) var(--aion-ease,ease)}
.charcot-btn.primary{background:var(--charcot-accent);border-color:var(--aion-cta-h, #d6ba87);color:#1a1305}
.charcot-btn:hover{transform:translateY(-2px);box-shadow:var(--charcot-shadowHover)}
.charcot-btn.primary:hover{box-shadow:0 18px 44px var(--aion-cta-glow, rgba(200,168,114,.28))}
@media(max-width:600px){.charcot-btn{padding:12px 20px;font-size:13.5px}}

/* SCROLL-REVEAL (moteur main.js : .xs-reveal -> .is-in) */
.charcot-wrap .xs-reveal{will-change:opacity,transform}
