@layer pages {
  /* ---------- financement ---------- */
  .sim { display: grid; gap: var(--space-5); padding: clamp(1.25rem, 4vw, 2.25rem); border-radius: 1.5rem; background: var(--c-craie); border: 1px solid var(--c-trait); }
  .sim__form { display: grid; gap: var(--space-4); }
  .sim__out { display: grid; gap: var(--space-4); background: #fff; border-radius: 1.25rem; padding: var(--space-5); border: 1px solid var(--c-trait); }
  @media (min-width: 64em) { .sim { grid-template-columns: 22rem 1fr; column-gap: var(--space-7); align-items: start; } }
  .sim__big { display: grid; gap: .2rem; }
  .sim__big b { font-family: var(--font-slab); font-size: clamp(2rem, 1.5rem + 2vw, 3rem); line-height: 1; color: var(--c-roi-profond); }
  .tl { position: relative; height: 4.5rem; margin: 1.5rem .75rem .5rem; border-bottom: 2px solid var(--c-encre-2); }
  .tl i { position: absolute; bottom: -2px; width: 0; border-left: 2px solid var(--c-roi); height: 1.6rem; left: var(--x); }
  .tl i::after { content: attr(data-l); position: absolute; bottom: 1.7rem; left: 0; translate: -50% 0; font-style: normal; font-size: .7rem; font-weight: 600; white-space: nowrap; background: var(--c-ciel); padding: .1rem .4rem; border-radius: .4rem; color: var(--c-roi-profond); }
  .tl i.start { border-color: var(--c-corail); height: 2.8rem; }
  .tl i.start::after { background: var(--c-corail); color: var(--c-encre); bottom: 2.9rem; }
  .sol-grid { display: grid; gap: var(--space-4); grid-template-columns: repeat(auto-fit, minmax(min(100%, 17rem), 1fr)); }
  .sol { padding: var(--space-5); border: 1px solid var(--c-trait); border-radius: var(--radius-card); background: #fff; display: grid; gap: .6rem; align-content: start; }
  .sol .icon { width: 2rem; height: 2rem; color: var(--c-roi); }
  .sol h3 { font-size: 1.15rem; font-family: var(--font-text); }
  .sol p { font-size: .95rem; color: var(--c-encre-2); }
  .sol .big { font-family: var(--font-slab); font-weight: 700; font-size: 1.8rem; color: var(--c-corail-texte); }
  .incl { display: grid; gap: var(--space-5); }
  @media (min-width: 48em) { .incl { grid-template-columns: 1fr 1fr; } }
  .incl > div { padding: var(--space-5); border-radius: var(--radius-card); background: var(--c-craie); }
  .incl h3 { margin-bottom: var(--space-3); }
  .incl ul { list-style: none; padding: 0; display: grid; gap: .5rem; }
  .incl .no li::before { content: "–"; margin-right: .6rem; color: var(--c-gris); font-weight: 700; }
  .incl .yes li::before { content: "✓"; margin-right: .6rem; color: var(--c-vert-texte); font-weight: 700; }
  .phone-pic { border-radius: var(--radius-card); background: var(--c-roi); color: #fff; padding: var(--space-6); display: grid; place-items: center; }
  .phone-pic svg { width: 100%; max-width: 13rem; }

}
