* { box-sizing: border-box; }
body { margin: 0; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif; color: #1d2330; background: #fff; }
.haut { display: flex; align-items: center; justify-content: space-between; padding: 18px 32px; max-width: 1100px; margin: 0 auto; }
.marque { display: flex; align-items: center; gap: 10px; font-weight: 800; font-size: 22px; color: #10152b; text-decoration: none; }
.marque .logo { width: 32px; height: 32px; display: block; }
.bouton { display: inline-block; background: #c2410c; color: #fff; text-decoration: none; font-weight: 600; padding: 12px 20px; border-radius: 10px; }
.bouton.clair { background: #fff4ed; color: #9a3412; padding: 9px 16px; }
.accroche { max-width: 1100px; margin: 0 auto; padding: 70px 32px 50px; }
.accroche h1 { font-size: 48px; line-height: 1.08; letter-spacing: -.03em; margin: 14px 0 20px; }
.beta { display: inline-block; background: #fff3e0; color: #8a4b00; font-weight: 600; font-size: 13px; padding: 5px 12px; border-radius: 20px; margin: 0; }
.sous { font-size: 19px; color: #5b6270; max-width: 640px; line-height: 1.5; margin-bottom: 28px; }
.grille { max-width: 1100px; margin: 0 auto; padding: 20px 32px 60px; display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 22px; }
.grille div { background: #f5f7fb; border-radius: 14px; padding: 22px; }
.grille h2 { font-size: 18px; margin: 0 0 8px; }
.grille p { color: #5b6270; line-height: 1.5; margin: 0; }
footer { text-align: center; color: #8a909c; font-size: 13px; padding: 30px; border-top: 1px solid #eceef2; }
footer a { color: #5b6270; }
.legal { max-width: 820px; margin: 0 auto; padding: 30px 32px 60px; line-height: 1.6; }
.legal h1 { font-size: 30px; } .legal h2 { font-size: 19px; margin-top: 28px; }
.legal .brouillon { background: #fff3e0; padding: 10px 14px; border-radius: 8px; color: #8a4b00; }
@media (max-width: 700px) { .accroche h1 { font-size: 34px; } }
