
    /* ══════════════════════════════════════
       WRAPPER — zéro fuite
    ══════════════════════════════════════ */
    #dz-cgv-3x {
      --dz-red: #d00408;
      --dz-red-l: #ff3a40;
      --dz-neon: rgba(208,4,8,.35);
      --dz-text: #fff;
      --dz-text2: rgba(255,255,255,.95);
      --dz-text3: rgba(255,255,255,.85);
      --dz-text4: rgba(255,255,255,.65);
      --dz-bg: #050505;
      --dz-bg2: #0a0a0a;
      --dz-card: #0e0e0e;
      --dz-border: rgba(255,255,255,.08);
      --dz-border-strong: rgba(208,4,8,.32);
      display: block !important;
      width: 100% !important;
      max-width: 100% !important;
      margin: 0 !important;
      padding: 0 !important;
      border: none !important;
      background: none !important;
      box-shadow: none !important;
      font-family: 'Urbanist', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
      -webkit-font-smoothing: antialiased;
      text-rendering: optimizeLegibility;
      color: var(--dz-text);
      line-height: 1.6;
      isolation: isolate;
      scroll-behavior: smooth;
    }
    #dz-cgv-3x .dzcgv-shell,
    #dz-cgv-3x .dzcgv-shell * { box-sizing: border-box; }
    /* Reset via classes — jamais par tag */
    #dz-cgv-3x .dzcgv-a { text-decoration: none; color: inherit; transition: color .2s; }
    #dz-cgv-3x .dzcgv-reset { margin: 0; padding: 0; list-style: none; }
    #dz-cgv-3x .dzcgv-em { font-style: normal; color: var(--dz-red-l); text-shadow: 0 0 30px var(--dz-neon); }
    /* ══════════════════════════════════════
       SHELL
    ══════════════════════════════════════ */
    #dz-cgv-3x .dzcgv-shell {
      position: relative;
      overflow-x: clip; /* clip (et non hidden) : masque le débordement horizontal des halos SANS casser le position:sticky du sommaire */
      margin: 0; padding: 0;
      background:
        radial-gradient(ellipse 60% 40% at 80% 0%, rgba(208,4,8,.10) 0%, transparent 50%),
        linear-gradient(180deg, var(--dz-bg) 0%, #020202 100%);
    }
    /* Neon top */
    #dz-cgv-3x .dzcgv-shell::before {
      content: "";
      position: absolute; top: 0; left: 8%; right: 8%;
      height: 1px;
      background: linear-gradient(90deg, transparent, rgba(208,4,8,.4) 30%, var(--dz-red-l) 50%, rgba(208,4,8,.4) 70%, transparent);
      box-shadow: 0 0 8px var(--dz-neon);
      pointer-events: none;
      z-index: 2;
    }
    #dz-cgv-3x .dzcgv-container {
      position: relative;
      width: 100%; max-width: 1320px;
      margin: 0 auto;
      padding: clamp(60px, 8vw, 96px) clamp(16px, 3vw, 40px) clamp(60px, 6vw, 80px);
      z-index: 1;
    }
    /* Glows ambiants */
    #dz-cgv-3x .dzcgv-glow {
      position: absolute; border-radius: 50%; pointer-events: none;
      background: radial-gradient(circle, rgba(208,4,8,.07) 0%, transparent 70%);
      animation: dzcgvFloat 12s ease-in-out infinite;
      z-index: 0;
    }
    #dz-cgv-3x .dzcgv-glow.g1 { width: 400px; height: 400px; top: 5%; right: -100px; }
    #dz-cgv-3x .dzcgv-glow.g2 { width: 280px; height: 280px; bottom: 20%; left: -80px; animation-delay: -5s; }
    @keyframes dzcgvFloat {
      0%,100% { transform: translate(0,0) scale(1); opacity: .6; }
      50% { transform: translate(20px,-15px) scale(1.08); opacity: .9; }
    }
    /* ══════════════════════════════════════
       HEADER
    ══════════════════════════════════════ */
    #dz-cgv-3x .dzcgv-header { margin: 0 0 48px 0; padding: 0 0 32px 0; border-bottom: 1px solid var(--dz-border); }
    #dz-cgv-3x .dzcgv-kicker {
      display: inline-flex; align-items: center; gap: 10px;
      font-size: 10px; font-weight: 800;
      letter-spacing: .18em; text-transform: uppercase;
      color: var(--dz-red-l); margin: 0 0 18px 0;
      text-shadow: 0 0 8px rgba(208,4,8,.20);
    }
    #dz-cgv-3x .dzcgv-kicker::before {
      content: ""; width: 16px; height: 1px; background: var(--dz-red-l); opacity: .8;
    }
    #dz-cgv-3x .dzcgv-title {
      font-size: clamp(32px, 5.5vw, 56px);
      font-weight: 900; line-height: .94; letter-spacing: -.045em;
      text-transform: uppercase; margin: 0 0 18px 0; color: var(--dz-text);
    }
    #dz-cgv-3x .dzcgv-lead {
      font-size: 15px; line-height: 1.78; color: var(--dz-text2);
      max-width: 760px; margin: 0; font-weight: 500;
    }
    #dz-cgv-3x .dzcgv-meta {
      display: flex; flex-wrap: wrap; gap: 12px; margin: 24px 0 0 0; padding: 0;
    }
    #dz-cgv-3x .dzcgv-meta-item {
      display: inline-flex; align-items: center; gap: 8px;
      padding: 7px 13px; border-radius: 999px;
      background: rgba(255,255,255,.04); border: 1px solid var(--dz-border);
      font-size: 11px; font-weight: 600; color: var(--dz-text3);
      letter-spacing: .08em; text-transform: uppercase;
    }
    #dz-cgv-3x .dzcgv-meta-item::before {
      content: ""; width: 6px; height: 6px; border-radius: 50%;
      background: var(--dz-red-l); box-shadow: 0 0 8px var(--dz-neon);
    }
    /* ══════════════════════════════════════
       PLEDGE
    ══════════════════════════════════════ */
    #dz-cgv-3x .dzcgv-pledge {
      padding: 24px 28px; margin: 0 0 40px 0;
      background: linear-gradient(135deg, rgba(208,4,8,.08) 0%, rgba(208,4,8,0) 60%);
      border: 1px solid var(--dz-border-strong); border-left: 3px solid var(--dz-red);
      border-radius: 12px;
    }
    #dz-cgv-3x .dzcgv-pledge-title {
      font-size: 11px; font-weight: 800; letter-spacing: .18em;
      text-transform: uppercase; color: var(--dz-red-l); margin: 0 0 10px 0;
    }
    #dz-cgv-3x .dzcgv-pledge-text {
      font-size: 14px; line-height: 1.7; color: var(--dz-text2); margin: 0; font-weight: 500;
    }
    #dz-cgv-3x .dzcgv-pledge-text strong { color: var(--dz-text); font-weight: 700; }
    /* ══════════════════════════════════════
       LAYOUT 2 COLONNES
    ══════════════════════════════════════ */
    #dz-cgv-3x .dzcgv-layout {
      display: grid; grid-template-columns: 260px 1fr; gap: 56px; align-items: start;
    }
    /* SOMMAIRE */
    #dz-cgv-3x .dzcgv-toc {
      position: sticky; top: 32px;
      padding: 24px; margin: 0;
      background: var(--dz-bg2); border: 1px solid var(--dz-border);
      border-radius: 12px;
      max-height: calc(100vh - 64px); overflow-y: auto;
    }
    #dz-cgv-3x .dzcgv-toc::-webkit-scrollbar { width: 4px; }
    #dz-cgv-3x .dzcgv-toc::-webkit-scrollbar-thumb { background: var(--dz-red); border-radius: 2px; }
    #dz-cgv-3x .dzcgv-toc-title {
      font-size: 10px; font-weight: 800; letter-spacing: .18em;
      text-transform: uppercase; color: var(--dz-red-l); margin: 0 0 14px 0;
    }
    #dz-cgv-3x .dzcgv-toc-section {
      font-size: 9px; font-weight: 800; letter-spacing: .18em;
      text-transform: uppercase; color: var(--dz-text4);
      padding: 14px 12px 6px 12px; margin: 8px 0 0 0;
      border-top: 1px solid var(--dz-border);
    }
    #dz-cgv-3x .dzcgv-toc-section.first { border-top: 0; margin-top: 0; padding-top: 0; }
    #dz-cgv-3x .dzcgv-toc-list { display: flex; flex-direction: column; gap: 1px; }
    #dz-cgv-3x .dzcgv-toc-list .dzcgv-a {
      display: block; padding: 7px 12px; margin: 0;
      font-size: 12px; font-weight: 600; color: var(--dz-text3);
      border-left: 2px solid transparent; border-radius: 0 6px 6px 0;
      line-height: 1.4;
    }
    #dz-cgv-3x .dzcgv-toc-list .dzcgv-a:hover {
      color: var(--dz-text); border-left-color: var(--dz-red); background: rgba(208,4,8,.06);
    }
    /* PARTS */
    #dz-cgv-3x .dzcgv-part { margin: 0 0 56px 0; }
    #dz-cgv-3x .dzcgv-part:last-child { margin-bottom: 0; }
    #dz-cgv-3x .dzcgv-part-header {
      display: flex; align-items: baseline; flex-wrap: wrap; gap: 18px;
      margin: 0 0 24px 0; padding: 0 0 18px 0;
      border-bottom: 2px solid var(--dz-red);
    }
    #dz-cgv-3x .dzcgv-part-num {
      font-size: 12px; font-weight: 800; letter-spacing: .2em;
      text-transform: uppercase; color: var(--dz-red-l);
    }
    #dz-cgv-3x .dzcgv-part-title {
      font-size: clamp(22px, 3vw, 32px); font-weight: 900;
      line-height: 1; letter-spacing: -.035em;
      text-transform: uppercase; color: var(--dz-text); margin: 0;
    }
    /* ARTICLES */
    #dz-cgv-3x .dzcgv-article {
      background: var(--dz-card); border: 1px solid var(--dz-border);
      border-radius: 12px; padding: 30px;
      margin: 0 0 16px 0;
      scroll-margin-top: 24px;
      transition: border-color .24s;
    }
    #dz-cgv-3x .dzcgv-article:hover { border-color: var(--dz-border-strong); }
    #dz-cgv-3x .dzcgv-h2-num {
      display: inline-block; margin: 0 0 8px 0;
      font-size: 10px; font-weight: 800; letter-spacing: .18em;
      text-transform: uppercase; color: var(--dz-red-l);
    }
    #dz-cgv-3x .dzcgv-h2 {
      font-size: clamp(20px, 2.4vw, 26px); font-weight: 800;
      line-height: 1.1; letter-spacing: -.02em; text-transform: uppercase;
      color: var(--dz-text); margin: 0 0 6px 0;
    }
    #dz-cgv-3x .dzcgv-divider {
      width: 50px; height: 2px; border-radius: 1px;
      background: linear-gradient(90deg, var(--dz-red) 0%, transparent 100%);
      margin: 0 0 20px 0;
    }
    #dz-cgv-3x .dzcgv-h3 {
      font-size: 14px; font-weight: 800; line-height: 1.3;
      letter-spacing: -.01em; text-transform: uppercase;
      color: var(--dz-text); margin: 22px 0 10px 0;
    }
    #dz-cgv-3x .dzcgv-p {
      font-size: 14px; line-height: 1.78;
      color: var(--dz-text2); margin: 0 0 14px 0; font-weight: 500;
    }
    #dz-cgv-3x .dzcgv-p:last-child { margin-bottom: 0; }
    #dz-cgv-3x .dzcgv-p strong { color: var(--dz-text); font-weight: 700; }
    #dz-cgv-3x .dzcgv-p em { font-style: italic; color: var(--dz-text); }
    #dz-cgv-3x .dzcgv-p .dzcgv-a { color: var(--dz-red-l); font-weight: 600; }
    #dz-cgv-3x .dzcgv-p .dzcgv-a:hover { color: var(--dz-red); text-decoration: underline; }
    /* LISTS */
    #dz-cgv-3x .dzcgv-ul { display: flex; flex-direction: column; gap: 6px; margin: 0 0 14px 0; }
    #dz-cgv-3x .dzcgv-ul .dzcgv-li {
      position: relative; padding-left: 22px;
      font-size: 14px; line-height: 1.78; color: var(--dz-text2); font-weight: 500;
    }
    #dz-cgv-3x .dzcgv-ul .dzcgv-li::before {
      content: ""; position: absolute; left: 0; top: 11px;
      width: 8px; height: 1px; background: var(--dz-red);
    }
    #dz-cgv-3x .dzcgv-ul .dzcgv-li strong { color: var(--dz-text); font-weight: 700; }
    #dz-cgv-3x .dzcgv-ul .dzcgv-li .dzcgv-a { color: var(--dz-red-l); font-weight: 600; }
    /* ORDERED LIST */
    #dz-cgv-3x .dzcgv-ol { counter-reset: dzcgvc; display: flex; flex-direction: column; gap: 6px; margin: 0 0 14px 0; }
    #dz-cgv-3x .dzcgv-ol .dzcgv-li {
      counter-increment: dzcgvc;
      position: relative; padding-left: 30px;
      font-size: 14px; line-height: 1.78; color: var(--dz-text2); font-weight: 500;
    }
    #dz-cgv-3x .dzcgv-ol .dzcgv-li::before {
      content: counter(dzcgvc);
      position: absolute; left: 0; top: 0;
      font-size: 11px; font-weight: 800; color: var(--dz-red-l);
    }
    /* INFO LIST (mentions légales) */
    #dz-cgv-3x .dzcgv-info { display: flex; flex-direction: column; margin: 0; }
    #dz-cgv-3x .dzcgv-info-row {
      display: grid; grid-template-columns: 200px 1fr; gap: 16px;
      padding: 14px 0; border-bottom: 1px solid var(--dz-border);
    }
    #dz-cgv-3x .dzcgv-info-row:last-child { border-bottom: 0; }
    #dz-cgv-3x .dzcgv-info-label {
      font-size: 10px; font-weight: 800; letter-spacing: .12em;
      text-transform: uppercase; color: var(--dz-text4); padding-top: 2px;
    }
    #dz-cgv-3x .dzcgv-info-value {
      font-size: 14px; font-weight: 600; color: var(--dz-text);
      word-break: break-word;
    }
    #dz-cgv-3x .dzcgv-info-value .dzcgv-a { color: var(--dz-red-l); }
    /* NOTICE */
    #dz-cgv-3x .dzcgv-notice {
      padding: 18px 22px; margin: 16px 0;
      background: linear-gradient(135deg, rgba(208,4,8,.06) 0%, transparent 100%);
      border: 1px solid var(--dz-border-strong); border-left: 3px solid var(--dz-red);
      border-radius: 10px;
    }
    #dz-cgv-3x .dzcgv-notice-title {
      font-size: 10px; font-weight: 800; letter-spacing: .18em;
      text-transform: uppercase; color: var(--dz-red-l); margin: 0 0 8px 0;
    }
    #dz-cgv-3x .dzcgv-notice-text {
      font-size: 13px; line-height: 1.7; color: var(--dz-text2); margin: 0; font-weight: 500;
    }
    #dz-cgv-3x .dzcgv-notice-text strong { color: var(--dz-text); font-weight: 700; }
    #dz-cgv-3x .dzcgv-notice-text .dzcgv-a { color: var(--dz-red-l); font-weight: 600; }
    /* QUOTE LÉGALE */
    #dz-cgv-3x .dzcgv-quote {
      padding: 18px 22px; margin: 14px 0;
      background: var(--dz-bg2); border: 1px solid var(--dz-border);
      border-radius: 10px;
      font-size: 13px; line-height: 1.7; color: var(--dz-text2);
      font-style: italic; font-weight: 500;
    }
    /* FORM TEMPLATE */
    #dz-cgv-3x .dzcgv-form {
      padding: 24px 26px; margin: 16px 0;
      background: var(--dz-bg2); border: 1px dashed var(--dz-border-strong);
      border-radius: 10px;
      font-family: 'Courier New', monospace;
      font-size: 13px; line-height: 1.85; color: var(--dz-text2);
      white-space: pre-wrap;
    }
    /* RELATED */
    #dz-cgv-3x .dzcgv-related {
      margin: 48px 0 0 0; padding: 32px 0 0 0;
      border-top: 1px solid var(--dz-border);
    }
    #dz-cgv-3x .dzcgv-related-title {
      font-size: 10px; font-weight: 800; letter-spacing: .18em;
      text-transform: uppercase; color: var(--dz-red-l); margin: 0 0 16px 0;
    }
    #dz-cgv-3x .dzcgv-related-grid {
      display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px;
    }
    #dz-cgv-3x .dzcgv-related-link {
      display: flex; align-items: center; gap: 12px;
      padding: 16px 18px; margin: 0;
      background: var(--dz-card); border: 1px solid var(--dz-border);
      border-radius: 10px;
      font-size: 13px; font-weight: 700; color: var(--dz-text);
      text-transform: uppercase; letter-spacing: .04em;
      transition: transform .24s, border-color .24s;
    }
    #dz-cgv-3x .dzcgv-related-link::before {
      content: ""; width: 6px; height: 6px; border-radius: 50%;
      background: var(--dz-red); flex-shrink: 0;
      transition: box-shadow .24s;
    }
    #dz-cgv-3x .dzcgv-related-link:hover {
      border-color: var(--dz-border-strong); transform: translateY(-2px); color: var(--dz-text);
    }
    #dz-cgv-3x .dzcgv-related-link:hover::before { box-shadow: 0 0 12px var(--dz-red-l); }
    /* ══════════════════════════════════════
       RESPONSIVE
    ══════════════════════════════════════ */
    @media (max-width: 1024px) {
      #dz-cgv-3x .dzcgv-layout { grid-template-columns: 1fr; gap: 32px; }
      #dz-cgv-3x .dzcgv-toc { position: static; order: -1; max-height: none; }
    }
    @media (max-width: 600px) {
      #dz-cgv-3x .dzcgv-article { padding: 22px; }
      #dz-cgv-3x .dzcgv-info-row { grid-template-columns: 1fr; gap: 4px; padding: 12px 0; }
      #dz-cgv-3x .dzcgv-form { padding: 18px; font-size: 12px; }
      #dz-cgv-3x .dzcgv-related-grid { grid-template-columns: 1fr; }
    }
    @media (prefers-reduced-motion: reduce) {
      #dz-cgv-3x .dzcgv-glow { animation: none !important; }
    }
  