/* Shared legal stylesheet — privacy.html & terms-of-service.html */
body {
  margin: 0;
  font-size: 16px;
  font-family: Georgia, "Times New Roman", serif;
  line-height: 1.75;
  background: #F4F4F2;
  color: #2A2722;
}

/* header */
.legal-header {
  box-sizing: border-box;
  background: #1A1220;
  padding: 22px 0;
  width: 100%;
}

.h-inner {
  margin: 0 auto;
  padding: 0 24px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  max-width: 900px;
}

.hbrand {
  color: #EFE9F2;
  text-decoration: none;
  font-weight: 800;
  letter-spacing: 1px;
  font-size: 18px;
}

.hbrand span {
  color: #4FC79A;
}

.hlink {
  color: #4FC79A;
  text-decoration: none;
}

.hlink:hover {
  color: #7CE0BB;
}

/* legal page layout wrapper */
.legal-page {
  width: 100%;
}

/* scope isolation: only sections inside legal-content get transparent style */
.legal-page .legal-content {
  max-width: 900px;
  margin: 0 auto;
  padding: 0 24px;
}

.legal-page .legal-content section {
  background: transparent !important;
  max-width: 900px;
  margin: 0 auto;
  padding: 26px 24px;
}

.legal-title {
  font-size: 40px;
  margin: 48px 0 6px;
  color: #1A1220;
}

.legal-date {
  margin: 0 0 8px;
  color: #6b6259;
}

.intro,
.legal-docbody > p,
.legal-content p {
  color: #2A2722;
}

.legal-content h2 {
  font-size: 26px;
  margin: 34px 0 8px;
  color: #1A3A2E;
  padding-bottom: 6px;
  border-bottom: 1px solid #D4CEC2;
}

.legal-content h3 {
  font-size: 20px;
  margin: 20px 0 6px;
  color: #33412F;
}

.legal-content ul,
.legal-content ol {
  padding-left: 24px;
  margin: 10px 0;
}

.legal-content li {
  margin: 6px 0;
}

a {
  color: #176B53;
}

/* table of contents */
.toc-wrap {
  max-width: 900px;
  margin: 30px auto;
  padding: 22px 44px;
  background: #EDEAE2;
}

.toc-heading {
  font-size: 18px;
  margin: 0 0 10px;
  letter-spacing: 1px;
  color: #1A1220;
  text-transform: uppercase;
}

.toc-list {
  columns: 2;
  column-gap: 40px;
  padding: 0;
  margin: 0;
  list-style: none;
}

.toc-list li {
  margin: 0 0 8px;
}

.toc-list a {
  text-decoration: none;
  color: #33412F;
  border-bottom: 1px solid #B9B093;
}

.toc-list a:hover {
  color: #176B53;
}

.legal-inset {
  max-width: 900px;
  margin: 26px auto;
  padding: 16px 32px;
  background: #EDEAE2;
}

.legal-inset p {
  margin: 6px 0;
}

/* footer */
.legal-footer {
  box-sizing: border-box;
  background: #1A1220;
  margin-top: 60px;
  padding: 26px 0;
  width: 100%;
}

.legal-footer-inner {
  display: flex;
  flex-wrap: wrap;
  gap: 14px 26px;
  justify-content: space-between;
  align-items: center;
  max-width: 900px;
  margin: 0 auto;
  padding: 0 24px;
}

.legal-footer-inner p {
  margin: 4px 0;
  color: #D9CFE0;
}

.legal-footer-inner a {
  color: #4FC79A;
  text-decoration: none;
}

@media (max-width: 640px) {
  body .toc-wrap .toc-list {
    columns: 1;
  }
}
