/* ⚠️ Pas de :root, pas de body, pas de container ici.
   Tout ça vient de global.css */

/* HERO À PROPOS */
.page-hero{
  background:var(--brand-blue);
  color:#fff;
  padding:60px 0;
  position:relative;
  overflow:hidden;
}
.page-hero__inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}
.page-hero h1{
  margin:0;
  font-size:34px;        /* ✅ un peu plus grand */
  font-weight:900;
}
.page-hero__icon{
  width:180px;
  height:120px;
  border-radius:var(--radius);
  background:rgba(255,255,255,.06);
  display:grid;
  place-items:center;
  outline:3px solid rgba(255,255,255,.12);
}

/* MAIN ABOUT */
.about{ padding:52px 0 22px; }
.about__grid{
  display:grid;
  grid-template-columns: 1.05fr .95fr;
  gap:36px;
  align-items:start;
}

/* LEFT */
.statcard{
  border-radius:var(--radius);
  overflow:hidden;
  position:relative;
  box-shadow: var(--shadow);
}
.statcard__img{
  width:100%;
  height:190px;         /* ✅ proche du rendu maquette */
  object-fit:cover;
}
.statcard__overlay{
  position:absolute;
  left:18px;
  top:18px;
  color:#fff;
}
.statcard__big{
  font-size:46px;       /* ✅ plus grand */
  font-weight:950;
  line-height:1;
}
.statcard__small{
  margin-top:6px;
  font-size:13px;       /* ✅ plus lisible */
  opacity:.92;
}

.block{ margin-top:30px; }
.block__title{
  margin:0 0 12px;
  font-size:22px;       /* ✅ harmonisé */
  font-weight:900;
}
.block__text{
  margin:0;
  font-size:15px;       /* ✅ harmonisé */
  color:var(--muted);
  line-height:1.75;
  max-width:460px;
}

/* Valeurs */
.values{ margin-top:14px; display:flex; flex-direction:column; gap:16px; }
.value{ display:flex; gap:12px; align-items:flex-start; }
.value__ico{
  width:38px; height:38px;
  border-radius:12px;   /* ✅ comme l’accueil */
  display:grid; place-items:center;
  font-size:16px;
}
.value__ico--green{ background:rgba(139,197,63,.18); color:#2d6a1b; }
.value__ico--blue{ background:rgba(11,99,198,.14); color:var(--brand-blue-2); }
.value__name{ font-size:15px; font-weight:900; margin-bottom:4px; }
.value__desc{ font-size:14px; color:var(--muted); line-height:1.55; }

/* RIGHT */
.kicker{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:10px;
}
.kicker__bar{
  width:3px;
  height:16px;
  background:var(--brand-green);
  border-radius:99px;
}
.kicker__text{
  font-size:15px;
  font-weight:800;
  color:var(--brand-blue);
}

.who__title{
  margin:0 0 12px;
  font-size:28px;        /* ✅ plus grand */
  font-weight:950;
}
.who__text{
  margin:0 0 18px;
  font-size:15px;        /* ✅ plus lisible */
  color:var(--muted);
  line-height:1.85;
  max-width:520px;
}

.photo-card{
  border-radius:var(--radius);
  overflow:hidden;
  box-shadow: var(--shadow);
  background:#e5e7eb;
}
.photo-card__img{
  width:100%;
  height:470px;
  object-fit:cover;
}

/* TESTIMONIALS (vert -> bleu comme maquette) */
.testi{
  position:relative;
  padding:46px 0 60px;
  overflow:hidden;
}
.testi__bg{
  position:absolute; inset:0;
  background: linear-gradient(180deg, rgba(139,197,63,.95) 0%, rgba(11,99,198,.95) 100%);
}
.testi__inner{ position:relative; }

.kicker--on .kicker__text{ color:#eaf2ff; }
.kicker__bar--on{ background:#eaf2ff; }

.testi__head h2{
  margin:8px 0 24px;
  color:#fff;
  font-size:30px;        /* ✅ plus grand */
  font-weight:950;
  text-align:center;
}

.testi__cards{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:20px;
}
.tcard{
  background:rgba(255,255,255,.92);
  border-radius:var(--radius);
  padding:20px 18px;
  box-shadow: var(--shadow);
  text-align:center;
}
.tcard__name{ font-size:13px; font-weight:950; margin-bottom:10px; }
.tcard__text{ margin:0 0 14px; font-size:12.5px; color:#475569; line-height:1.75; }
.tcard__stars{ color:var(--brand-green); display:flex; justify-content:center; gap:5px; }

/* EXPERTISE */
.expertise{ padding:52px 0 60px; }
.center-kicker{ justify-content:center; }
.expertise__title{
  text-align:center;
  margin:10px 0 28px;
  font-size:30px;        /* ✅ plus grand */
  font-weight:950;
}
.expertise__grid{
  display:grid;
  grid-template-columns: repeat(4, 1fr);
  gap:16px;
}
.ecard{
  background:#fff;
  border:1px solid var(--line);
  border-radius:14px;    /* ✅ proche maquette */
  padding:18px 14px;
  text-align:center;
}
.ecard--active{ box-shadow: var(--shadow); }
.ecard__ico{
  width:44px; height:44px;
  border-radius:14px;
  display:grid; place-items:center;
  margin:0 auto 10px;
}
.ecard__ico--green{ background:rgba(139,197,63,.18); color:#2d6a1b; }
.ecard__ico--blue{ background:rgba(11,99,198,.14); color:var(--brand-blue-2); }
.ecard h3{ margin:0 0 8px; font-size:15px; font-weight:950; line-height:1.15; }
.ecard p{ margin:0; font-size:14px; color:var(--muted); line-height:1.65; }
.expertise__btn{ display:flex; justify-content:center; margin-top:18px; }

/* TRUST BAR */
.trustbar{ background:var(--brand-blue); color:#fff; padding:22px 0; }
.trustbar__inner{ display:flex; align-items:center; justify-content:space-between; gap:16px; }
.trustbar__label{ font-size:13px; font-weight:800; }
.trustbar__logos{ display:flex; align-items:center; gap:26px; opacity:.9; flex-wrap:wrap; justify-content:flex-end; }
.logo-item{ font-size:13px; font-weight:800; display:flex; align-items:center; gap:8px; }

/* CTA DISCUSSION */
.cta{ position:relative; min-height:240px; overflow:hidden; }
.cta__img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.cta__overlay{
  position:absolute; inset:0;
  background: linear-gradient(180deg, rgba(11,99,198,.82) 0%, rgba(11,99,198,.35) 100%);
}
.cta__content{
  position:relative;
  min-height:240px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  gap:14px;
  color:#fff;
}
.cta__content h2{ margin:0; font-size:34px; font-weight:950; }

/* RESPONSIVE */
@media (max-width: 980px){
  .about__grid{ grid-template-columns:1fr; }
  .expertise__grid{ grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px){
  .page-hero__inner{ flex-direction:column; align-items:flex-start; }
  .page-hero__icon{ align-self:flex-end; }
  .testi__cards{ grid-template-columns:1fr; }
  .trustbar__inner{ flex-direction:column; align-items:flex-start; }
  .trustbar__logos{ justify-content:flex-start; }
  .expertise__grid{ grid-template-columns:1fr; }
}
.footer__brand p {
    margin: 0 0 14px;
    color: #64748b;
    font-size: 15px;
}
.footer__col a {
    display: block;
    color: #64748b;
    font-size: 15px;
    padding: 6px 0;
}
.contactline {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #64748b;
    font-size: 15px;
    padding: 6px 0;
}
