
    *,*::before,*::after { box-sizing:border-box; margin:0; padding:0; }
    html { scroll-behavior:smooth; }
    body { background:#F5F0E8; color:#0F172A; font-family:'Montserrat',sans-serif; line-height:1.75; -webkit-font-smoothing:antialiased; }
    ::selection { background:#C69B3C; color:#fff; }

    /* NAV */
    #navbar { position:fixed; top:0; left:0; right:0; z-index:100; padding:14px 28px;
      display:flex; align-items:center; justify-content:space-between;
      background:rgba(245,240,232,0.92); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
      box-shadow:0 1px 0 rgba(198,155,60,0.25); }
    #navbar .nav-logo { height:44px; width:auto; object-fit:contain; }
    .nav-link { font-size:11px; font-weight:500; letter-spacing:0.2em; text-transform:uppercase; color:#0F172A; text-decoration:none; transition:color .25s; }
    .nav-link:hover { color:#C69B3C; }
    .lang-switch { display:flex; align-items:center; gap:2px; border:1px solid rgba(198,155,60,0.55); border-radius:30px; overflow:hidden; }
    .lang-switch a { padding:5px 13px; background:none; border:none; cursor:pointer; font-family:'Montserrat',sans-serif; font-size:11px; font-weight:600; letter-spacing:0.08em; color:#0F172A; opacity:.6; transition:.25s; }
    .lang-switch a.active { background:#C69B3C; color:#fff; opacity:1; }

    /* HERO */
    .legal-hero { padding:130px 24px 50px; background:#0F172A; text-align:center; }
    .legal-hero .eyebrow { font-size:10px; font-weight:600; letter-spacing:0.28em; text-transform:uppercase; color:#C69B3C; margin-bottom:16px; }
    .legal-hero h1 { font-family:'Playfair Display',serif; font-weight:600; font-size:clamp(1.8rem,4.5vw,2.8rem); color:#F4EADE; line-height:1.15; }
    .legal-hero .gold-rule { width:52px; height:1px; background:#C69B3C; margin:26px auto 0; }

    /* SOMMAIRE */
    .toc { max-width:720px; margin:-26px auto 0; position:relative; z-index:2; display:flex; flex-wrap:wrap; gap:10px; justify-content:center; padding:0 24px; }
    .toc a { padding:11px 20px; background:#FBF7F0; border:1px solid rgba(198,155,60,0.3); border-radius:30px;
      font-size:11px; font-weight:600; letter-spacing:0.1em; text-transform:uppercase; color:#0F172A; text-decoration:none;
      box-shadow:0 6px 18px rgba(15,23,42,0.06); transition:.25s; }
    .toc a:hover { background:#C69B3C; color:#fff; border-color:#C69B3C; }

    /* CONTENU */
    .legal-wrap { max-width:720px; margin:0 auto; padding:60px 24px 90px; }
    .legal-section { margin-bottom:56px; scroll-margin-top:90px; }
    .legal-section h2 { font-family:'Playfair Display',serif; font-weight:600; font-size:1.7rem; color:#0F172A; margin-bottom:8px; }
    .legal-section .sec-rule { width:40px; height:1px; background:#C69B3C; margin-bottom:24px; }
    .legal-section h3 { font-family:'Playfair Display',serif; font-weight:600; font-size:1.12rem; color:#0F172A; margin:28px 0 10px; }
    .legal-section p, .legal-section li { font-size:14px; color:#3f4756; line-height:1.85; }
    .legal-section p { margin-bottom:14px; }
    .legal-section ul { list-style:none; padding-left:0; margin-bottom:14px; }
    .legal-section ul li { position:relative; padding-left:20px; margin-bottom:8px; }
    .legal-section ul li::before { content:''; position:absolute; left:0; top:11px; width:6px; height:6px; border-radius:50%; background:#C69B3C; }
    .legal-section strong { color:#0F172A; font-weight:600; }
    .todo { background:rgba(198,155,60,0.12); border:1px dashed #C69B3C; border-radius:6px; padding:2px 7px; font-size:13px; color:#9a7320; font-weight:600; }
    .info-card { background:#FBF7F0; border:1px solid rgba(198,155,60,0.25); border-left:3px solid #C69B3C; border-radius:6px; padding:20px 22px; margin:18px 0; }
    .info-card p:last-child { margin-bottom:0; }
    .updated { font-size:11px; color:#8a93a3; letter-spacing:0.05em; margin-top:40px; text-align:center; }
    a.inline-link { color:#9a7320; text-decoration:underline; text-underline-offset:2px; }

    footer a { text-decoration:none; color:inherit; transition:color .25s; }
    footer a:hover { color:#C69B3C; }
  