:root {
  --bg: #0a0a0a;
  --text: #f5f2ec;
  --muted: #9b9489;
  --gold: #e8c77e;
  --line: rgba(232, 199, 126, 0.18);
  --maxw: 720px;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  min-height: 100vh;
  background: var(--bg);
  color: var(--text);
  font-family: Jost, system-ui, sans-serif;
  font-size: 1rem;
  line-height: 1.65;
}

a {
  color: var(--gold);
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

.legal-header {
  max-width: var(--maxw);
  margin: 0 auto;
  padding: 2.5rem 1.5rem 1rem;
  border-bottom: 1px solid var(--line);
}

.legal-header__back {
  display: inline-block;
  margin-bottom: 1.5rem;
  font-size: 0.85rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.legal-header h1 {
  margin: 0 0 0.35rem;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(2rem, 1.2rem + 3vw, 2.8rem);
  font-weight: 500;
}

.legal-header p {
  margin: 0;
  color: var(--muted);
  font-size: 0.92rem;
}

.legal-main {
  max-width: var(--maxw);
  margin: 0 auto;
  padding: 2rem 1.5rem 4rem;
}

.legal-main h2 {
  margin: 2rem 0 0.75rem;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 1.45rem;
  font-weight: 500;
  color: var(--gold);
}

.legal-main h2:first-child {
  margin-top: 0;
}

.legal-main p,
.legal-main li {
  color: rgba(245, 242, 236, 0.88);
}

.legal-main ul {
  padding-left: 1.2rem;
}

.legal-main .note {
  margin-top: 2rem;
  padding: 1rem 1.1rem;
  border: 1px solid var(--line);
  border-radius: 4px;
  font-size: 0.9rem;
  color: var(--muted);
}

.legal-footer {
  max-width: var(--maxw);
  margin: 0 auto;
  padding: 0 1.5rem 3rem;
  font-size: 0.78rem;
  color: var(--muted);
}
