/* ============================================================
   ESSENCEPICK — Legal shared stylesheet
   Loaded ONLY by privacy.html and terms-of-service.html
   (these pages never load /css/style.css)
   DARK curation-studio theme  ·  ginkgo-gold accent
   ============================================================ */

* { box-sizing: border-box; }

.legal-page {
  margin: 0;
  padding: 0;
  background-color: #131613;
  color: #C6CCC2;
  font-size: 16px;
  line-height: 1.8;
  font-family: Georgia, "Times New Roman", serif;
  overflow-x: hidden;
}

.legal-page h1,
.legal-page h2,
.legal-page h3 {
  font-family: Georgia, "Times New Roman", serif;
  margin: 0;
}

.legal-page a { color: #7C9663; text-decoration: none; }
.legal-page a:hover { color: #F6F3EA; text-decoration: underline; }

/* scope isolation: legal content sections never carry page band backgrounds */
.legal-page .legal-content section {
  background-color: transparent !important;
}

/* ===== water (any decorative absolute overlay) hidden ===== */
.legal-water { visibility: hidden !important; }

/* ---------- plain legal header ---------- */
.legal-mast {
  background-color: #1D2318;
  border-bottom: 1px solid #2C332A;
  position: relative;
  z-index: 1;
}
.legal-mast .legal-inner {
  max-width: 820px;
  margin: 0 auto;
  padding: 30px 24px;
}
.legal-brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #F6F3EA;
  font-weight: bold;
  letter-spacing: 3px;
  font-size: 18px;
  text-transform: uppercase;
}
.legal-brand .leaf {
  width: 16px;
  height: 16px;
  background-color: #D9B95C;
  clip-path: polygon(50% 0%, 90% 22%, 100% 60%, 78% 100%, 60% 68%, 22% 100%, 0% 60%, 10% 22%);
}
.legal-backlink { display: block; margin-top: 12px; font-size: 14px; letter-spacing: 1px; }
.legal-backlink a { color: #D9B95C; }
.legal-backlink a:hover { color: #F6F3EA; }

/* ---------- page title ---------- */
.legal-titlebar {
  background-color: #131613;
  border-bottom: 1px solid #2C332A;
  padding: 26px 0 10px;
}
.legal-titlebar .legal-inner {
  max-width: 820px; margin: 0 auto; padding: 0 24px;
}
.legal-titlebar h1 {
  font-size: 36px;
  color: #EDF0EB;
  font-weight: normal;
  letter-spacing: 1px;
}
.legal-meta { margin-top: 10px; color: #7C9663; font-size: 14px; letter-spacing: 2px; text-transform: lowercase; }

/* ===== TOC ===== */
.legal-toc {
  background-color: #242B20;
  border-top: 1px solid #2C332A;
  border-bottom: 1px solid #2C332A;
}
.legal-toc .legal-inner {
  max-width: 820px; margin: 0 auto; padding: 0 24px;
}
.legal-toc h2 {
  font-size: 16px;
  color: #D9B95C;
  letter-spacing: 3px;
  text-transform: lowercase;
  padding: 22px 0 10px;
  font-weight: normal;
}
.legal-toc ol { margin: 0; padding: 0 0 20px 0; list-style: none; columns: 2; column-gap: 30px; }
.legal-toc li { margin: 0 0 6px 0; break-inside: avoid; }
.legal-toc a { color: #C6CCC2; font-size: 15px; }
.legal-toc a:hover { color: #D9B95C; }

/* ===== content ===== */
.legal-content { padding: 46px 0 30px; }
.legal-content .container {
  max-width: 820px;
  margin: 0 auto;
  padding: 0 24px;
}
.legal-content section { background: transparent; margin: 0 0 34px 0; }
.legal-content section .shead { display: flex; gap: 16px; align-items: baseline; }
.legal-content .snum {
  flex: none;
  color: #D9B95C;
  font-family: "Courier New", monospace;
  font-size: 15px;
  letter-spacing: 1px;
  padding-top: 4px;
}
.section-anchor { scroll-margin-top: 30px; }
.legal-content h2 {
  font-size: 24px;
  color: #D9B95C;
  font-weight: normal;
  letter-spacing: 1px;
  margin: 0 0 16px 0;
}
.legal-content h3 { font-size: 18px; color: #F6F3EA; font-weight: normal; margin: 18px 0 8px; }
.legal-content p { margin: 0 0 15px 0; color: #C6CCC2; }
.legal-content p strong { color: #F6F3EA; }
.legal-content ul, .legal-content ol { margin: 0 0 16px 0; padding-left: 24px; color: #C6CCC2; }
.legal-content li { margin: 0 0 8px 0; }
.legal-content .divider { border: none; border-top: 1px solid #2C332A; margin: 30px 0; }

.legal-box {
  background-color: #1D2318;
  border-left: 3px solid #D9B95C;
  padding: 18px 20px;
  margin: 18px 0;
}
.legal-box p { margin: 0; color: #9FA89B; font-size: 15px; }

/* ===== footer ===== */
.legal-foot {
  background-color: #0D100C;
  border-top: 1px solid #2C332A;
  margin-top: 30px;
  position: relative;
}
.legal-foot .container {
  max-width: 820px;
  margin: 0 auto;
  padding: 26px 24px;
  text-align: center;
  position: relative;
  z-index: 1;
}
.legal-foot p { margin: 6px 0; color: #9FA89B; font-size: 14px; line-height: 1.7; }
.legal-foot a { color: #9FA89B; text-decoration: underline; }
.legal-foot a:hover { color: #D9B95C; }

/* ===== responsive ===== */
@media (max-width: 640px) {
  .legal-toc ol { columns: 1; }
  .legal-content h2 { font-size: 21px; }
  .legal-titlebar h1 { font-size: 28px; }
}
