/* ============================================================
   Floko Acronyme v1.0 — acronyme.css
   Charte Floko v2 — tout configurable via variables CSS
============================================================ */

.fka-section {
  --fka-blue:       #3E73D6;
  --fka-blue-soft:  #6397E7;
  --fka-blue-deep:  #2E5AB0;
  --fka-navy:       #1C3A6B;
  --fka-sky:        #EEF4FB;
  --fka-sky2:       #DEE9F6;
  --fka-line:       #E4EAF3;
  --fka-ink:        #2B3444;
  --fka-grey:       #69738C;

  /* Configurables */
  --fka-section-bg:   #ffffff;
  --fka-eyebrow-color:#3E73D6;
  --fka-titre-color:  #1C3A6B;
  --fka-intro-color:  #69738C;

  --fka-row-bg:        #EEF4FB;
  --fka-row-border:    transparent;
  --fka-row-radius:    14px;
  --fka-row-padding:   24px 32px;
  --fka-row-gap:       20px;
  --fka-row-shadow:    0 4px 18px rgba(28,58,107,.06);

  --fka-big-color:     #3E73D6;
  --fka-big-size:      72px;
  --fka-big-weight:    900;
  --fka-big-min-width: 70px;

  --fka-icn-bg:        #ffffff;
  --fka-icn-border:    #DEE9F6;
  --fka-icn-color:     #1C3A6B;
  --fka-icn-size:      48px;
  --fka-icn-radius:    50%;

  --fka-item-titre-color: #1C3A6B;
  --fka-item-texte-color: #69738C;

  padding: 96px 0;
  background: var(--fka-section-bg);
  font-family: 'Plus Jakarta Sans','Segoe UI',Arial,sans-serif;
}

.fka-container {
  max-width: 860px;
  margin: 0 auto;
  padding: 0 28px;
}

/* ── En-tête ── */
.fka-header { text-align: center; margin-bottom: 56px; }

.fka-eyebrow {
  color: var(--fka-eyebrow-color);
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
  margin-bottom: 12px;
}
.fka-titre {
  font-size: 38px;
  font-weight: 800;
  color: var(--fka-titre-color);
  letter-spacing: -.02em;
  line-height: 1.18;
  margin: 0 0 16px;
}
.fka-intro {
  max-width: 680px;
  margin: 0 auto;
  color: var(--fka-intro-color);
  font-size: 17px;
  line-height: 1.75;
}

/* ── Liste ── */
.fka-list {
  display: flex;
  flex-direction: column;
  gap: var(--fka-row-gap);
}

/* ── Ligne ── */
.fka-row {
  display: flex;
  align-items: center;
  gap: 28px;
  background: var(--fka-row-bg);
  border: 1px solid var(--fka-row-border);
  border-radius: var(--fka-row-radius);
  padding: var(--fka-row-padding);
  box-shadow: var(--fka-row-shadow);
  transition: transform .25s, box-shadow .25s;
}
.fka-row:hover {
  transform: translateX(4px);
  box-shadow: 0 8px 28px rgba(28,58,107,.10);
}

/* Grande lettre décorative */
.fka-big {
  font-size: var(--fka-big-size);
  font-weight: var(--fka-big-weight);
  color: var(--fka-big-color);
  line-height: 1;
  min-width: var(--fka-big-min-width);
  text-align: center;
  flex-shrink: 0;
  font-style: italic;
  letter-spacing: -.02em;
  user-select: none;
}

/* Icône */
.fka-icn {
  display: inline-flex;
  width: var(--fka-icn-size);
  height: var(--fka-icn-size);
  min-width: var(--fka-icn-size);
  border-radius: var(--fka-icn-radius);
  background: var(--fka-icn-bg);
  border: 1.5px solid var(--fka-icn-border);
  color: var(--fka-icn-color);
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  box-shadow: 0 4px 14px rgba(28,58,107,.07);
}
.fka-icn svg {
  width: calc(var(--fka-icn-size) * 0.5);
  height: calc(var(--fka-icn-size) * 0.5);
  display: block;
}

/* Corps texte */
.fka-body { flex: 1; min-width: 0; }

.fka-item-titre {
  font-size: 17px;
  font-weight: 700;
  color: var(--fka-item-titre-color);
  margin: 0 0 6px;
  line-height: 1.3;
}
.fka-item-texte {
  font-size: 15px;
  color: var(--fka-item-texte-color);
  line-height: 1.65;
  margin: 0;
}

/* ── Animation ── */
.fka-row {
  opacity: 0;
  transform: translateY(18px);
  transition: opacity .55s ease, transform .55s ease, box-shadow .25s;
}
.fka-row.fka-in {
  opacity: 1;
  transform: translateY(0);
}
.fka-row.fka-in:hover { transform: translateX(4px); }

@media (prefers-reduced-motion: reduce) {
  .fka-row { opacity: 1; transform: none; }
}

/* ── Responsive ── */
@media (max-width: 640px) {
  .fka-section  { padding: 64px 0; }
  .fka-titre    { font-size: 28px; }
  .fka-big      { font-size: 52px; min-width: 48px; }
  .fka-row      { gap: 18px; padding: 18px 20px; }
  .fka-item-titre { font-size: 15.5px; }
  .fka-item-texte { font-size: 14px; }
}
