/* ── HERO ── */
.hero{
  background:var(--cream);
  border-bottom:1.5px solid var(--border);
  padding:5rem 3rem 4rem;
  position:relative;overflow:hidden;
}
.hero::before{
  content:'';position:absolute;inset:0;
  background-image:radial-gradient(circle,rgba(22,22,22,.06) 1px,transparent 1px);
  background-size:24px 24px;
  pointer-events:none;
}
.hero-inner{max-width:var(--max-w);margin:0 auto;position:relative}
.hero-label{
  display:inline-flex;align-items:center;gap:.6rem;
  font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--ink-mid);margin-bottom:1.2rem;
}
.hero-label::before{content:'';width:20px;height:1.5px;background:var(--ink-mid)}
.hero h1{
  font-size:clamp(2.6rem,5vw,4.2rem);
  font-weight:700;letter-spacing:-.05em;line-height:1.05;
  margin-bottom:1.5rem;
}
.hero-intro{
  font-size:1.1rem;color:var(--ink-mid);line-height:1.8;
  max-width:64ch;
}

/* ── POINTS (cream-grid wrapper) ── */
.points-wrap{
  background:var(--cream-grid);
  border:1.5px solid var(--border);
  border-radius:var(--r-grid);
  padding:1.5rem;
  margin-top:2.5rem;
  position:relative;
}
.points-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}
.point-item{
  background:#fff;
  border:1.5px solid var(--border);
  border-radius:0;
  padding:1.4rem 1.6rem;
  display:flex;align-items:flex-start;gap:1rem;
}
.point-check{
  flex-shrink:0;width:26px;height:26px;border-radius:50%;
  background:var(--ink);color:#fff;
  display:flex;align-items:center;justify-content:center;
  font-size:.8rem;font-weight:700;
}
.point-text{font-size:.9rem;color:var(--ink-mid);line-height:1.65}

/* ── SECTION WRAPPER ── */
.section{padding:5rem 3rem}
.section-inner{max-width:var(--max-w);margin:0 auto}

/* ── SPLIT SCREEN ── */
.split-section{background:#fff}
.split-grid{
  display:grid;grid-template-columns:1fr 1fr;
  border:1.5px solid var(--border);
  border-radius:var(--r-grid);
  overflow:hidden;
  margin-top:3rem;
}
.split-col{padding:3rem 2.75rem}
.split-col--dons{background:var(--mint-bg)}
.split-col--entreprise{background:var(--periwinkle-bg);border-left:1.5px solid var(--border)}
.split-num{
  display:flex;align-items:center;gap:.6rem;
  font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  color:var(--ink-mid);margin-bottom:1.2rem;
}
.split-num span{
  display:flex;align-items:center;justify-content:center;
  width:24px;height:24px;border-radius:50%;
  background:var(--ink);color:#fff;font-size:.75rem;
}
.split-title{
  font-family:var(--display);font-size:1.6rem;font-weight:700;
  letter-spacing:-.03em;margin-bottom:1.1rem;color:var(--ink);
}
.split-text{font-size:.92rem;color:var(--ink-mid);line-height:1.75;margin-bottom:1.3rem}

/* ── HERO-CARD STYLE (encarts dons) ── */
.don-card,.don-stat{
  background-color:rgba(255,255,255,.82);
  background-image:radial-gradient(circle,rgba(22,22,22,.12) 1px,transparent 1px);
  background-size:18px 18px;
  border:1.5px solid rgba(22,22,22,.28);
  border-radius:16px;
  box-shadow:3px 4px 0 rgba(0,0,0,.14);
  transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .25s,border-color .2s;
  margin-bottom:1.3rem;
}
.don-card:hover,.don-stat:hover{
  transform:translateX(5px) translateY(-2px);
  box-shadow:5px 7px 0 rgba(0,0,0,.2);
  border-color:var(--ink);
}
.don-card{padding:1.3rem 1.6rem}
.don-card-label{font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:.4rem}
.don-card-iban{font-family:var(--display);font-size:1.3rem;font-weight:700;letter-spacing:.02em;color:var(--ink);margin-bottom:.5rem}
.don-card-comm{font-size:.88rem;color:var(--ink-mid)}
.don-card-comm strong{color:var(--ink)}

.don-stat{padding:1.2rem 1.6rem;display:flex;align-items:center;gap:1.2rem}
.don-stat-num{font-family:var(--display);font-size:2.2rem;font-weight:700;color:var(--ink);letter-spacing:-.03em;line-height:1;flex-shrink:0}
.don-stat-text{font-size:.85rem;color:var(--ink-mid);line-height:1.6}
.don-stat-text strong{color:var(--ink)}

/* ══════════════════════════════════════════
   RESPONSIVE — 768px
══════════════════════════════════════════ */
@media(max-width:768px){
  .hero{padding:3rem 1.25rem 2.5rem}
  .hero h1{font-size:clamp(2rem,9vw,2.8rem)}
  .hero-intro{font-size:.98rem}

  .points-grid{grid-template-columns:1fr}
  .point-item{padding:1.2rem 1.4rem}

  .section{padding:3rem 1.25rem}

  .split-grid{grid-template-columns:1fr}
  .split-col--entreprise{border-left:none;border-top:1.5px solid var(--border)}
  .split-col{padding:2.25rem 1.5rem}

  .don-stat{flex-direction:column;align-items:flex-start;gap:.6rem}
}
