/* ============================================================
   Meilleur Credit Perso — CSS partagé toutes pages
   ============================================================ */
*{box-sizing:border-box;margin:0;padding:0}
:root{
  --blue:#1a4fd6;--blue-dk:#1340b0;--blue-lt:#eef3ff;
  --teal:#0ea5a0;--teal-lt:#e6faf9;
  --g50:#f8fafc;--g100:#f1f5f9;--g200:#e2e8f0;--g400:#94a3b8;--g600:#475569;--g800:#1e293b;--g900:#0f172a;
  --shadow-sm:0 1px 3px rgba(0,0,0,.08);
  --shadow-md:0 4px 16px rgba(0,0,0,.08);
  --shadow-lg:0 10px 40px rgba(0,0,0,.1);
  --shadow-blue:0 8px 30px rgba(26,79,214,.2);
  --r:12px;--r-lg:18px;
}
html{scroll-behavior:smooth}
body{font-family:'DM Sans',sans-serif;font-size:16px;color:var(--g800);background:#fff;line-height:1.6;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,button,label{font-family:'Sora',sans-serif}
.container{max-width:1140px;margin:0 auto;padding:0 24px}
a{text-decoration:none;color:inherit}

/* ── NAV ── */
.nav{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.95);backdrop-filter:blur(12px);border-bottom:1px solid var(--g200)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:68px}
.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none}
.logo-icon{width:38px;height:38px;background:#0f172a;border-radius:9px;display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0;gap:4px;padding:8px}
.logo-bar{width:18px;height:3px;background:#1a4fd6;border-radius:2px;display:block}
.logo-wordmark{display:flex;flex-direction:column;line-height:1}
.logo-name{font-family:'Sora',sans-serif;font-size:17px;font-weight:800;color:#0f172a;letter-spacing:-.3px}
.logo-name span{color:#1a4fd6}
.logo-tagline{font-family:'Sora',sans-serif;font-size:9px;font-weight:600;color:#94a3b8;letter-spacing:1.5px;text-transform:uppercase;margin-top:2px}
.nav-links{display:flex;gap:24px;list-style:none}
.nav-links a{font-size:14px;font-weight:500;color:var(--g600);transition:color .15s}
.nav-links a:hover,.nav-links a.active{color:var(--blue)}
.nav-cta{background:var(--blue);color:#fff;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;transition:all .15s;box-shadow:var(--shadow-blue);white-space:nowrap;text-decoration:none}
.nav-cta:hover{background:var(--blue-dk);transform:translateY(-1px)}
.burger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:6px;background:none;border:none}
.burger span{display:block;width:22px;height:2px;background:var(--g800);border-radius:2px;transition:all .25s}
.burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger.open span:nth-child(2){opacity:0}
.burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobile-menu{display:none;position:absolute;top:68px;left:0;right:0;background:#fff;border-bottom:1px solid var(--g200);padding:1rem 24px;flex-direction:column;gap:4px;z-index:99}
.mobile-menu.open{display:flex}
.mobile-menu a{font-size:15px;font-weight:500;color:var(--g800);padding:10px 0;border-bottom:1px solid var(--g100);text-decoration:none}
.mobile-menu a:last-child{border:none}
.mobile-menu .mobile-cta{background:var(--blue);color:#fff;padding:12px 20px;border-radius:8px;text-align:center;margin-top:8px;font-weight:600}
@media(max-width:900px){
  .nav-links,.nav-cta{display:none}
  .burger{display:flex}
}

/* ── FOOTER ── */
.footer{background:var(--g900);color:#fff;padding:56px 0 28px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:44px}
.footer-brand{font-size:17px;font-weight:800;margin-bottom:12px;display:flex;align-items:center;gap:10px}
.footer-brand-icon{width:36px;height:36px;background:#fff;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0;gap:3px;padding:7px}
.footer-brand-bar{width:16px;height:2.5px;background:#1a4fd6;border-radius:2px;display:block}
.footer-brand-name{display:flex;flex-direction:column;line-height:1}
.footer-brand-text{font-size:15px;font-weight:800;color:#fff;letter-spacing:-.2px}
.footer-brand-text span{color:#1a4fd6}
.footer-brand-sub{font-size:9px;font-weight:600;color:#475569;letter-spacing:1.5px;text-transform:uppercase;margin-top:2px}
.footer-desc{font-size:14px;color:#94a3b8;line-height:1.7;max-width:250px;font-family:'DM Sans',sans-serif}
.footer-col-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#475569;margin-bottom:14px}
.footer-links{list-style:none;display:flex;flex-direction:column;gap:10px}
.footer-links a{font-size:13px;color:#64748b;transition:color .15s}
.footer-links a:hover{color:#fff}
.footer-bottom{border-top:1px solid #1e293b;padding-top:20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}
.footer-copy{font-size:12px;color:#475569}
.footer-legal-note{font-size:12px;color:#334155;max-width:500px}
@media(max-width:1024px){.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;text-align:center}}

/* ── BREADCRUMB ── */
.breadcrumb{display:flex;gap:8px;font-size:13px;color:#94a3b8;margin-bottom:16px;flex-wrap:wrap}
.breadcrumb a{color:var(--blue);text-decoration:none}
.breadcrumb span{color:#cbd5e1}
