
:root {
  /* ===== BRAND PALETTE: swap this entire block per product (see system/06-branding/) ===== */
  --primary: #3D5A80;        /* main brand color: CTA buttons, key headlines */
  --primary-dark: #2C4360;   /* hover states, darker accents */
  --primary-light: #E1E9F2;  /* light tint backgrounds, highlight boxes */
  --accent: #E8A33D;         /* secondary highlight (badges, underlines) */
  --success: #1E7A45;        /* guarantees, checkmarks, positive elements (WCAG-AA safe for white button text) */
  --urgent: #C44536;         /* scarcity, warnings, countdown timers */
  --dark: #1B2733;           /* dark sections, footer */
  --bg-page: #FFFFFF;        /* page background */
  --bg-section: #F3F6F9;     /* alternating section background */
  --text-main: #1F2933;      /* body text */
  --text-muted: #5F6B76;     /* secondary text */
  --white: #FFFFFF;
  --font-display: 'Libre Baskerville', Georgia, serif;  /* headlines + CTAs */
  --font-body: system-ui, -apple-system, 'Segoe UI', sans-serif;  /* body text */
}
* { box-sizing: border-box; }
body { margin: 0; font-family: var(--font-body); color: var(--text-main); background: var(--bg-page); line-height: 1.65; }
.legal-top { background: var(--primary); color: var(--white); }
.legal-top .inner { max-width: 820px; margin: 0 auto; padding: 22px 22px; display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.legal-top .brand { font-family: var(--font-display); font-weight: 800; font-size: 19px; letter-spacing: .01em; }
.legal-top a { color: var(--white); text-decoration: none; font-weight: 600; font-size: 14px; opacity: .92; }
.wrap { max-width: 820px; margin: 0 auto; padding: 34px 22px 64px; }
h1 { font-family: var(--font-display); font-size: clamp(26px, 4vw, 34px); margin: 8px 0 4px; color: var(--text-main); }
.eff { color: var(--text-muted); font-size: 14px; margin: 0 0 26px; }
h2 { font-family: var(--font-display); font-size: 19px; margin: 30px 0 8px; color: var(--primary-dark); }
p, li { font-size: 15.5px; color: var(--text-main); }
a { color: var(--primary-dark); }
ul { padding-left: 20px; }
.intro { background: var(--bg-section); border-left: 4px solid var(--primary); border-radius: 0 8px 8px 0; padding: 14px 18px; }
.legal-foot { border-top: 1px solid #e6e6e6; margin-top: 40px; padding-top: 22px; font-size: 14px; color: var(--text-muted); display: flex; gap: 18px; flex-wrap: wrap; }
.legal-foot a { font-weight: 600; }
.dpm-root{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);}
