/* Heyloo — legal & policy pages (Terms, Privacy, Refund, Delivery, Contact).
   Plain-English, readable prose on the product's playful brand. Loads AFTER
   site.css and reuses its brand tokens, topbar, footer and buttons.
   Mobile-first. */

.legal-wrap {
  max-width: 760px;
  margin: 0 auto;
  padding: 8px 20px 30px;
}

.legal-back {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 6px 0 18px;
  font-size: 0.86rem;
  font-weight: 800;
  color: var(--violet-deep);
  text-decoration: none;
}
.legal-back:hover { text-decoration: underline; }

.legal-head { margin-bottom: 24px; }
.legal-eyebrow {
  display: inline-block;
  background: rgba(124, 58, 237, 0.12);
  color: var(--violet-deep);
  padding: 6px 15px;
  border-radius: 999px;
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}
.legal-head h1 {
  margin: 16px 0 8px;
  font-family: var(--font-display);
  font-weight: 600;
  font-size: clamp(1.9rem, 7vw, 2.6rem);
  line-height: 1.08;
  letter-spacing: -0.01em;
}
.legal-meta { margin: 0; font-size: 0.85rem; color: var(--ink-soft); }

.legal {
  font-size: 1rem;
  color: #2c2850;
  line-height: 1.7;
}
.legal-lead {
  font-size: 1.08rem;
  color: var(--ink-soft);
  margin: 0 0 22px;
}
.legal h2 {
  margin: 34px 0 10px;
  font-family: var(--font-display);
  font-weight: 560;
  font-size: 1.3rem;
  letter-spacing: -0.005em;
  color: var(--ink);
}
.legal h3 {
  margin: 22px 0 6px;
  font-size: 1.02rem;
  font-weight: 800;
  color: var(--ink);
}
.legal p { margin: 0 0 14px; }
.legal ul, .legal ol { margin: 0 0 16px; padding-left: 22px; }
.legal li { margin: 0 0 8px; }
.legal a { color: var(--violet-deep); font-weight: 700; }
.legal strong { font-weight: 800; color: var(--ink); }

/* key-facts / contact card */
.legal-card {
  background: var(--paper-2);
  border: 2px solid var(--violet-soft);
  border-radius: 20px;
  padding: 20px 22px;
  margin: 0 0 22px;
  box-shadow: 0 12px 30px -22px rgba(124, 58, 237, 0.4);
}
.legal-card h2 { margin-top: 0; }
.legal-card p:last-child { margin-bottom: 0; }

.legal-dl { margin: 0; }
.legal-dl dt {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: var(--ink-soft);
  margin-top: 14px;
}
.legal-dl dt:first-child { margin-top: 0; }
.legal-dl dd { margin: 3px 0 0; font-size: 1.02rem; color: var(--ink); }
.legal-dl dd a { color: var(--violet-deep); font-weight: 700; }

/* a highlighted callout (e.g. "all sales are final") */
.legal-note {
  border-left: 4px solid var(--violet);
  background: var(--violet-soft);
  border-radius: 0 14px 14px 0;
  padding: 14px 18px;
  margin: 0 0 20px;
  color: var(--ink);
}
.legal-note p:last-child { margin-bottom: 0; }

/* obvious placeholder the owner MUST replace before going live */
.todo {
  background: #fff3c4;
  color: #7a5b00;
  border: 1px dashed #d9a800;
  border-radius: 6px;
  padding: 0 6px;
  font-weight: 700;
  font-style: normal;
  white-space: nowrap;
}

.legal-footer-note {
  margin-top: 40px;
  padding-top: 20px;
  border-top: 1px solid var(--violet-soft);
  font-size: 0.85rem;
  color: var(--ink-soft);
}

/* footer legal links row (added to the site footer) */
.legal-links { font-weight: 700; }
.legal-links a { margin: 0 2px; }
.legal-copyright { color: var(--ink-soft); opacity: 0.85; }
