:root {
  --purple:#6f39a7;
  --purple-dark:#4b237d;
  --pink:#ec4f8d;
  --cream:#fffaf1;
  --ink:#342946;
  --muted:#6e6678;
  --white:#fff;
  --shadow:0 18px 55px rgba(82,48,112,.13);
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body {
  margin:0;
  color:var(--ink);
  background:linear-gradient(180deg,#fff,var(--cream));
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  line-height:1.7;
}
a { color:var(--purple); }
.legal-header {
  position:sticky;
  top:0;
  z-index:10;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  padding:16px 6vw;
  background:rgba(255,255,255,.94);
  border-bottom:1px solid rgba(111,57,167,.1);
  backdrop-filter:blur(12px);
}
.legal-header a:first-child {
  color:var(--purple);
  font-weight:900;
  text-decoration:none;
}
.legal-header nav { display:flex; gap:16px; flex-wrap:wrap; }
.legal-main {
  width:min(920px,calc(100% - 32px));
  margin:54px auto;
  padding:clamp(26px,5vw,56px);
  border-radius:30px;
  background:var(--white);
  box-shadow:var(--shadow);
}
.legal-main h1,.legal-main h2 {
  color:var(--purple-dark);
  line-height:1.2;
}
.legal-main h1 { margin-top:0; font-size:clamp(2.2rem,5vw,3.6rem); }
.legal-main h2 { margin-top:36px; }
.legal-main p,.legal-main li { color:var(--muted); }
.legal-main strong { color:var(--ink); }
.legal-note {
  padding:16px 18px;
  border-left:4px solid var(--pink);
  border-radius:10px;
  background:#fff1f6;
}
.legal-footer {
  padding:28px 6vw;
  color:#f6ecff;
  background:#2f174e;
  text-align:center;
}
.legal-footer a { color:#fff; }
@media (max-width:680px) {
  .legal-header { align-items:flex-start; flex-direction:column; }
  .legal-header nav { font-size:.9rem; }
}
