/* ============================================================
   ARTERE — Section « Notre histoire » (page L'Agence)
   Frise éditoriale premium — aérée, hiérarchisée, équilibrée.
   Réutilise styles.css + lagence.css
   ============================================================ */

.histoire{position:relative;overflow:hidden;padding:64px 0 112px;}
.histoire .container{position:relative;z-index:1;}

/* ---------- En-tête centré ---------- */
.hist-head{text-align:center;max-width:860px;margin:0 auto;}
.eyebrow--flank{display:inline-flex;align-items:center;gap:14px;}
.hist-head h2{
  font-size:clamp(1.8rem,2.6vw,2.3rem);font-weight:700;letter-spacing:-.02em;
  line-height:1.08;margin-top:.85rem;color:var(--ink);
}
.hist-head h2 .accent{color:var(--brand);}
.hist-head .rule{width:64px;height:3.5px;border-radius:3px;background:var(--brand);margin:1.3rem auto 0;}
.hist-head .hist-lead{
  margin-top:1.6rem;font-size:1.12rem;line-height:1.65;font-weight:500;color:var(--muted);
  max-width:none;margin-inline:auto;text-wrap:balance;
}
.hist-head .hist-lead .brand-em{color:var(--brand);font-weight:700;}

/* ============================================================
   Frise — jalons (milestones)
   ============================================================ */
.timeline{max-width:none;margin:84px 0 0;}
.milestone{
  display:grid;grid-template-columns:150px 1fr;column-gap:54px;align-items:start;
}
/* colonne méta (gauche) */
.ms-meta{text-align:right;padding-top:4px;}
.ms-index{
  display:block;font-size:2.5rem;font-weight:800;letter-spacing:-.04em;line-height:1;
  color:#E4E5E8;font-variant-numeric:tabular-nums;
}
.ms-phase{
  display:block;margin-top:12px;font-size:.72rem;font-weight:800;letter-spacing:.15em;
  text-transform:uppercase;color:var(--muted-2);line-height:1.4;
}
.ms-year{
  display:block;margin-top:7px;font-size:.9rem;font-weight:800;color:var(--brand);letter-spacing:.01em;
  font-variant-numeric:tabular-nums;
}

/* colonne récit (droite) + colonne vertébrale */
.ms-body{
  position:relative;border-left:2px solid var(--line);
  padding:2px 0 62px 48px;
}
.milestone:last-child .ms-body{border-left-color:transparent;padding-bottom:0;}
.ms-body::before{
  content:"";position:absolute;left:-8.5px;top:8px;width:15px;height:15px;border-radius:50%;
  background:#fff;border:3px solid var(--brand);box-shadow:0 0 0 6px var(--surface);
}
.milestone:first-child .ms-body::before,
.milestone:last-child .ms-body::before{background:var(--brand);}
.ms-body h3{
  font-size:1.34rem;font-weight:800;letter-spacing:-.015em;color:var(--ink);
  line-height:1.2;margin-bottom:.65rem;
}
.ms-body p{
  color:var(--ink-soft);font-size:1.04rem;line-height:1.85;max-width:74ch;
}
.ms-body p .brand-em{color:var(--brand);font-weight:700;}
.ms-body p strong{color:var(--ink);font-weight:700;}

/* ============================================================
   Citation — pull-quote centrée, premium, sans cadre
   ============================================================ */
.story-quote{max-width:800px;margin:92px auto 0;text-align:center;}
.story-quote .sq-mark{
  display:block;font-family:Georgia,serif;font-size:4.6rem;line-height:.5;
  color:var(--brand);height:.55em;
}
.story-quote blockquote{
  margin:1.5rem 0 0;font-size:clamp(1.3rem,1.9vw,1.62rem);line-height:1.5;
  font-weight:700;letter-spacing:-.012em;color:var(--ink);text-wrap:balance;
}
.story-quote blockquote .accent{color:var(--brand);font-weight:800;}

/* ============================================================
   Repères (stats trio) + citation — style référence
   ============================================================ */
.hist-figures{max-width:1000px;margin:80px auto 0;}

.hist-stats{
  display:grid;grid-template-columns:repeat(3,1fr);
}
.hstat{position:relative;text-align:center;padding:6px 28px;}
.hstat + .hstat::before{
  content:"";position:absolute;left:0;top:10px;bottom:10px;width:1px;background:var(--line);
}
.hstat .hs-top{
  display:flex;align-items:center;justify-content:center;gap:16px;
}
.hstat .hs-ic{
  width:54px;height:54px;border-radius:50%;background:#F0F1F3;color:var(--brand);
  display:grid;place-items:center;flex:0 0 auto;
}
.hstat .hs-ic svg{width:26px;height:26px;}
.hstat .hs-num{
  font-size:3rem;font-weight:800;letter-spacing:-.035em;color:var(--ink);line-height:1;
  font-variant-numeric:tabular-nums;
}
.hstat .hs-num .plus{color:var(--brand);}
.hstat .hs-lbl{
  margin-top:18px;font-size:.82rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
  color:var(--ink-soft);line-height:1.4;
}
.hstat .hs-desc{
  margin-top:12px;font-size:.95rem;line-height:1.5;color:var(--muted);max-width:26ch;margin-inline:auto;
}

/* citation — pull-quote centrée, marques rouges haut + bas */
.hist-figures .story-quote{max-width:820px;margin:72px auto 0;text-align:center;}
.hist-figures .story-quote .sq-mark{
  display:block;font-family:Georgia,serif;font-weight:700;color:var(--brand);
  font-size:4.4rem;line-height:.4;
}
.hist-figures .story-quote .sq-open{margin-bottom:.2em;}
.hist-figures .story-quote .sq-close{margin-top:.32em;}
.hist-figures .story-quote blockquote{
  margin:0;font-size:clamp(1.4rem,2.1vw,1.8rem);line-height:1.5;
  font-weight:700;letter-spacing:-.012em;color:var(--ink);text-wrap:balance;
}
.hist-figures .story-quote blockquote .accent{color:var(--brand);font-weight:800;}

/* ============================================================
   (anciens styles ruban + repères centrés — neutralisés)
   ============================================================ */

/* ============================================================
   Responsive
   ============================================================ */
@media (max-width:900px){
  .histoire{padding:72px 0 80px;}
  .timeline{margin-top:56px;}
  .milestone{grid-template-columns:84px 1fr;column-gap:26px;}
  .ms-index{font-size:1.9rem;}
  .ms-body{padding-left:34px;padding-bottom:48px;}
  /* repères : restent sur 3 colonnes, citation resserrée */
  .hist-figures{margin-top:56px;}
  .hstat{padding:4px 14px;}
  .hstat .hs-num{font-size:2.4rem;}
  .hist-figures .story-quote{margin-top:52px;}
}
@media (max-width:560px){
  .milestone{grid-template-columns:1fr;row-gap:14px;}
  .ms-meta{text-align:left;display:flex;align-items:baseline;gap:14px;padding-top:0;}
  .ms-index{font-size:1.5rem;}
  .ms-phase,.ms-year{margin-top:0;align-self:center;}
  .ms-body{border-left:2px solid var(--line);padding-left:26px;}
  .milestone:last-child .ms-body{border-left-color:transparent;}
  .ms-body::before{left:-8.5px;}
  .hist-stats{grid-template-columns:1fr;gap:0;}
  .hstat{padding:18px 14px;}
  .hstat::before{display:none !important;}
  .hstat:nth-child(n+2){border-top:1px solid var(--line);}
}
