/**
 * Merrick legal and policy pages.
 *
 * The visitor-facing copy remains editable in WordPress. This file supplies
 * a calm, readable shell that can accommodate the final approved legal text.
 */

.merrick-page-legal {
  --merrick-legal-shell: 940px;
  color: var(--merrick-color-charcoal);
}

.merrick-page-legal #be-content {
  overflow: hidden;
  background: var(--merrick-color-white);
}

.merrick-page-legal #be-content > .exp-wrap {
  box-sizing: border-box;
  width: 100%;
  max-width: none;
  padding: 0 !important;
}

.merrick-legal-page-shell {
  box-sizing: border-box;
  width: min(calc(100% - 48px), var(--merrick-legal-shell));
  margin-inline: auto;
}

.merrick-legal-page-heading {
  width: auto;
  margin: 0;
  padding: 76px 0 58px;
  background:
    radial-gradient(circle at 92% 10%, rgba(92, 75, 158, 0.12), transparent 28%),
    var(--merrick-color-lavender);
}

.merrick-legal-page-eyebrow {
  margin: 0 0 14px;
  color: var(--merrick-color-purple);
  font-family: Montserrat, Arial, sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.3;
  text-transform: uppercase;
}

.merrick-legal-page-heading h1 {
  max-width: 820px;
  margin: 0;
  color: var(--merrick-color-charcoal);
  font-family: Montserrat, Arial, sans-serif;
  font-size: clamp(42px, 5.2vw, 64px);
  font-weight: 750;
  letter-spacing: -0.035em;
  line-height: 1.04;
}

.merrick-legal-page-summary {
  max-width: 720px;
  margin: 22px 0 0;
  color: var(--merrick-color-charcoal);
  font-size: 19px;
  line-height: 1.65;
}

.merrick-legal-page-content { padding: 58px 0 92px; }

.merrick-legal-placeholder {
  margin-bottom: 34px;
  padding: 22px 24px;
  border: 1px solid rgba(240, 81, 66, 0.34);
  border-left: 5px solid #f05142;
  border-radius: 12px;
  background: #fff6f3;
}

.merrick-legal-placeholder strong {
  display: block;
  color: var(--merrick-color-charcoal);
  font-family: Montserrat, Arial, sans-serif;
  font-size: 16px;
  font-weight: 750;
  line-height: 1.35;
}

.merrick-legal-placeholder p {
  margin: 7px 0 0;
  color: var(--merrick-color-charcoal);
  font-size: 15px;
  line-height: 1.55;
}

.merrick-legal-meta {
  margin: 0 0 34px;
  color: var(--merrick-color-text-muted);
  font-size: 14px;
  line-height: 1.5;
}

.merrick-legal-layout {
  display: grid;
  grid-template-columns: 230px minmax(0, 1fr);
  gap: 54px;
  align-items: start;
}

.merrick-legal-toc {
  position: sticky;
  top: 30px;
  padding: 22px;
  border: 1px solid rgba(92, 75, 158, 0.2);
  border-radius: 14px;
  background: var(--merrick-color-lavender);
}

.merrick-legal-toc > p {
  margin: 0 0 13px;
  color: var(--merrick-color-purple);
  font-family: Montserrat, Arial, sans-serif;
  font-size: 13px;
  font-weight: 750;
  letter-spacing: 0.05em;
  line-height: 1.35;
  text-transform: uppercase;
}

.merrick-legal-toc ul {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.merrick-legal-toc a {
  color: var(--merrick-color-charcoal) !important;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  text-decoration: none;
}

.merrick-legal-toc a:hover,
.merrick-legal-toc a:focus-visible { color: var(--merrick-color-purple) !important; }

.merrick-legal-toc a:focus-visible {
  outline: 3px solid rgba(92, 75, 158, 0.25);
  outline-offset: 4px;
}

.merrick-legal-sections { min-width: 0; }

.merrick-legal-section {
  padding: 0 0 30px;
  scroll-margin-top: 36px;
}

.merrick-legal-section + .merrick-legal-section {
  padding-top: 30px;
  border-top: 1px solid rgba(92, 75, 158, 0.18);
}

.merrick-legal-section h2 {
  margin: 0 0 13px;
  color: var(--merrick-color-charcoal);
  font-family: Montserrat, Arial, sans-serif;
  font-size: 27px;
  font-weight: 750;
  letter-spacing: -0.015em;
  line-height: 1.25;
}

.merrick-legal-section h3 {
  margin: 24px 0 10px;
  color: var(--merrick-color-charcoal);
  font-family: Montserrat, Arial, sans-serif;
  font-size: 19px;
  font-weight: 700;
  line-height: 1.35;
}

.merrick-legal-section p,
.merrick-legal-section li {
  color: var(--merrick-color-charcoal);
  font-size: 16px;
  line-height: 1.72;
}

.merrick-legal-section p { margin: 0 0 1.1em; }
.merrick-legal-section p:last-child { margin-bottom: 0; }
.merrick-legal-section ul { margin: 0 0 1.2em; padding-left: 1.3em; }
.merrick-legal-section li + li { margin-top: 7px; }
.merrick-legal-section a { color: var(--merrick-color-purple) !important; text-underline-offset: 3px; }

@media (max-width: 800px) {
  .merrick-legal-layout { grid-template-columns: 1fr; gap: 34px; }
  .merrick-legal-toc { position: static; }
  .merrick-legal-toc ul { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 24px; }
}

@media (max-width: 767px) {
  .page-id-6121 .merrick-legal-toc { display: none; }
  .merrick-legal-page-shell { width: min(calc(100% - 32px), var(--merrick-legal-shell)); }
  .merrick-legal-page-heading { padding: 52px 0 42px; }
  .merrick-legal-page-heading h1 { font-size: clamp(38px, 12vw, 50px); }
  .merrick-legal-page-summary { margin-top: 17px; font-size: 17px; line-height: 1.6; }
  .merrick-legal-page-content { padding: 42px 0 66px; }
  .merrick-legal-placeholder { margin-bottom: 28px; padding: 20px; }
  .merrick-legal-meta { margin-bottom: 28px; }
  .merrick-legal-section { padding-bottom: 25px; }
  .merrick-legal-section + .merrick-legal-section { padding-top: 25px; }
  .merrick-legal-section h2 { font-size: 24px; }
}

@media (max-width: 480px) {
  .merrick-legal-toc ul { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  .merrick-legal-section { scroll-behavior: auto; }
}

/* Terms introduction follows the same reading column as the numbered sections. */
.page-id-6121 .merrick-legal-page-effective-date {
  margin: 20px 0 0;
  color: var(--merrick-color-charcoal);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
}

.page-id-6121 .merrick-legal-intro {
  margin: 0 0 34px;
  color: var(--merrick-color-charcoal);
  font-size: 16px;
  line-height: 1.72;
}

@media (max-width: 767px) {
  .page-id-6121 .merrick-legal-page-content .tatsu-row-wrap.tatsu-wrap {
    width: 100%;
    max-width: none;
    margin-inline: 0;
  }
}

.page-id-6121 .merrick-legal-section { scroll-margin-top: 140px; }

/* The Tatsu overflow container makes the sticky inset offset the column at rest. */
.page-id-6121 .merrick-legal-toc { top: 0; }
