:root{
  --bg: #FDF6FB;
  --bg-2: #F6EEFC;
  --pink: #FF6FB5;
  --purple: #8B5CF6;
  --purple-soft: #C4A6F0;
  --ink: #3B2A4A;
  --ink-soft: #7A6690;
  --white: #FFFFFF;
  --shadow: 0 8px 24px rgba(139, 92, 246, 0.14);
  --radius: 22px;
}
*{ box-sizing:border-box; }
body{
  margin:0;
  min-height:100vh;
  background:
    radial-gradient(circle at 15% 10%, #FCE4F5 0%, transparent 45%),
    radial-gradient(circle at 90% 15%, #E8DBFB 0%, transparent 40%),
    var(--bg);
  font-family:'Nunito', sans-serif;
  color: var(--ink);
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,.brand{ font-family:'Fredoka', sans-serif; }
.wrap{ max-width:760px; margin:0 auto; padding:40px 24px 80px; }
.brand{
  font-size:1.3rem; font-weight:600; color:var(--purple);
  display:flex; align-items:center; gap:8px; margin-bottom:28px;
  text-decoration:none;
}
.brand .dot{ width:10px;height:10px;border-radius:50%; background:var(--pink); box-shadow:0 0 0 5px #FFD4E8; }
.card{
  background:var(--white);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:32px 34px;
}
h1{ font-size:1.7rem; color:var(--purple); margin:0 0 6px; }
.updated{ color:var(--ink-soft); font-weight:600; font-size:0.85rem; margin-bottom:26px; }
h2{ font-size:1.15rem; color:var(--ink); margin:28px 0 10px; }
p, li{ line-height:1.6; font-size:0.95rem; }
ul{ padding-left:22px; }
a{ color:var(--purple); font-weight:700; }
.back-link{
  display:inline-block; margin-top:32px;
  color:var(--ink-soft); font-weight:700; font-size:0.88rem; text-decoration:underline;
}
footer.legal-footer{
  max-width:760px; margin:0 auto; padding:0 24px 40px;
  display:flex; gap:16px; flex-wrap:wrap;
  font-size:0.82rem; font-weight:700;
}
footer.legal-footer a{ color:var(--ink-soft); text-decoration:underline; }
