/* ── Legal pages: /privacy /terms /policies ── */
.legal-header {
  background: var(--charcoal, #2B2B2B);
  color: #fff;
  padding: 5rem 0 3rem;
  margin-top: 0;
}
.legal-header__title {
  font-size: clamp(2rem, 5vw, 3rem);
  font-family: 'Cormorant Garamond', 'Playfair Display', Georgia, serif;
  color: var(--gold, #C2A14D);
  margin: 0 0 .5rem;
}
.legal-header__meta {
  font-size: .85rem;
  color: rgba(255,255,255,.5);
  margin: 0;
}

/* Draft banner — only shown on /policies */
.draft-banner {
  background: #fef3c7;
  border: 1px solid #f59e0b;
  border-radius: 6px;
  padding: .75rem 1rem;
  font-size: .85rem;
  color: #92400e;
  margin-bottom: 1.5rem;
}

.legal-body {
  max-width: 800px;
  line-height: 1.7;
  color: var(--charcoal, #2B2B2B);
}
.legal-body h2 {
  font-size: 1.35rem;
  font-family: 'Cormorant Garamond', 'Playfair Display', Georgia, serif;
  color: var(--charcoal, #2B2B2B);
  margin: 2.5rem 0 .75rem;
  padding-bottom: .35rem;
  border-bottom: 1px solid rgba(194,161,77,.25);
}
.legal-body h3 {
  font-size: 1rem;
  font-weight: 600;
  margin: 1.5rem 0 .5rem;
}
.legal-body p { margin: 0 0 1rem; }
.legal-body ul, .legal-body ol {
  margin: 0 0 1rem 1.5rem;
}
.legal-body li { margin-bottom: .4rem; }
.legal-body a { color: var(--gold, #C2A14D); }
.legal-body a:hover { text-decoration: underline; }
.legal-body address {
  font-style: normal;
  background: var(--cream, #F7F3EA);
  border-radius: 8px;
  padding: 1rem 1.25rem;
  margin-top: .5rem;
  line-height: 1.9;
}
.legal-body code {
  background: rgba(0,0,0,.05);
  padding: .1em .35em;
  border-radius: 3px;
  font-size: .85em;
}

/* Policy table (cancellation schedule) */
.policy-table {
  width: 100%;
  border-collapse: collapse;
  margin: 1rem 0 1.5rem;
  font-size: .9rem;
}
.policy-table th {
  background: var(--charcoal, #2B2B2B);
  color: #fff;
  text-align: left;
  padding: .6rem .9rem;
}
.policy-table td {
  padding: .55rem .9rem;
  border-bottom: 1px solid rgba(0,0,0,.08);
}
.policy-table tr:last-child td { border-bottom: none; }
.policy-table tr:nth-child(even) td { background: rgba(0,0,0,.03); }

/* Trust strip CSS (appended here since legal has its own pageCSS) */
