/* Page de présentation : réutilise les variables de style.css. */
body.landing { background:#fff; }
.lp-wrap { max-width:1100px; margin:0 auto; padding:0 1.2rem; }
.lp-nav { position:sticky; top:0; background:rgba(255,255,255,.95); backdrop-filter:blur(6px); border-bottom:1px solid var(--line); z-index:5; }
.lp-nav .lp-wrap { display:flex; align-items:center; gap:1.2rem; padding:.7rem 1.2rem; flex-wrap:wrap; }
.lp-nav .brand { font-weight:700; font-size:1.1rem; text-decoration:none; color:var(--ink); }
.lp-nav nav a { text-decoration:none; color:var(--muted); margin-right:1rem; }
.lp-nav nav a:hover { color:var(--ink); }
.lp-nav .spacer { flex:1; }
body.landing main { max-width:none; margin:0; padding:0; }
.lp-hero { padding:4rem 0 3rem; background:linear-gradient(180deg,#f3f7fb 0%,#fff 100%); }
.lp-cols { display:grid; grid-template-columns:1.1fr 1fr; gap:3rem; align-items:center; }
.lp-kicker { text-transform:uppercase; letter-spacing:.06em; font-size:.8rem; color:var(--accent); font-weight:600; margin:0 0 .6rem; }
.lp-hero h1 { font-size:2.6rem; line-height:1.15; margin:0 0 1rem; }
.lp-hero h1 em { font-style:normal; color:var(--accent); }
.lp-lead { font-size:1.1rem; color:var(--muted); margin:0 0 1.4rem; max-width:34rem; }
.lp-cta { display:flex; gap:.7rem; flex-wrap:wrap; margin:0 0 .8rem; }
.lp-big { padding:.7rem 1.3rem; font-size:1rem; }
.lp-note { font-size:.85rem; color:var(--muted); margin:0; }
.lp-mock { background:var(--card); border:1px solid var(--line); border-radius:12px; box-shadow:0 20px 40px -24px rgba(29,31,35,.35); overflow:hidden; font-size:.85rem; }
.lp-mock-bar { background:var(--bg); border-bottom:1px solid var(--line); padding:.5rem .8rem; color:var(--muted); display:flex; align-items:center; gap:.35rem; }
.lp-mock-bar span { width:.6rem; height:.6rem; border-radius:50%; background:var(--line); display:inline-block; }
.lp-mock-bar span:last-of-type { margin-right:.5rem; }
.lp-mock-tiles { display:grid; grid-template-columns:repeat(3,1fr); gap:.6rem; padding:.8rem; }
.lp-mock-tiles div { border:1px solid var(--line); border-radius:8px; padding:.5rem .7rem; }
.lp-mock-tiles small { display:block; color:var(--muted); font-size:.75rem; }
.lp-mock-tiles b { font-size:1.05rem; font-variant-numeric:tabular-nums; }
.lp-mock-table { margin:0 .8rem .8rem; width:calc(100% - 1.6rem); }
.lp-mock-table td { padding:.4rem .4rem; border-bottom:1px solid var(--line); white-space:nowrap; }
.lp-mock-table td:nth-child(2) { white-space:normal; width:100%; }
.lp-section { padding:3.5rem 0; }
.lp-section h2 { font-size:1.8rem; margin:0 0 1.6rem; text-align:center; }
.lp-section h3 { font-size:1.05rem; margin:0 0 .4rem; }
.lp-section p { color:var(--muted); margin:0; }
.lp-alt { background:var(--bg); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.lp-three { display:grid; grid-template-columns:repeat(3,1fr); gap:2rem; }
.lp-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.2rem; }
.lp-feature { background:var(--card); border:1px solid var(--line); border-radius:10px; padding:1.2rem 1.3rem; }
.lp-steps { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(3,1fr); gap:2rem; counter-reset:step; }
.lp-steps li { display:flex; gap:1rem; align-items:flex-start; }
.lp-steps li > span { flex:0 0 2.2rem; height:2.2rem; border-radius:50%; background:var(--accent); color:#fff; font-weight:700; display:flex; align-items:center; justify-content:center; }
.lp-narrow { max-width:720px; }
.lp-price { background:var(--card); border:2px solid var(--accent); border-radius:12px; padding:1.6rem 1.8rem; text-align:center; }
.lp-price-amount { font-size:2.2rem; font-weight:700; color:var(--ink) !important; margin:0 0 .6rem !important; }
.lp-price-amount small { display:block; font-size:.95rem; font-weight:400; color:var(--muted); }
.lp-price ul { list-style:none; padding:0; margin:0 0 1.2rem; }
.lp-price li { padding:.35rem 0; border-bottom:1px solid var(--line); }
.lp-price li:last-child { border-bottom:none; }
#faq details { border-bottom:1px solid var(--line); padding:.8rem 0; }
#faq summary { font-weight:600; color:var(--ink); }
#faq details p { margin-top:.5rem; }
.lp-final { text-align:center; background:linear-gradient(180deg,#fff 0%,#f3f7fb 100%); }
.lp-final h2 { margin-bottom:1.2rem; }
@media (max-width:860px) {
  .lp-cols, .lp-three, .lp-grid, .lp-steps { grid-template-columns:1fr; }
  .lp-hero { padding:2.5rem 0 2rem; }
  .lp-hero h1 { font-size:2rem; }
  .lp-nav nav { display:none; }
}
