.legal-page {
  width: var(--page);
  margin: 0 auto;
  padding: 154px 0 84px;
  color: var(--ink);
}

.legal-page__hero {
  max-width: 980px;
  margin: 0 auto 52px;
  text-align: center;
}

.legal-page__hero h1 {
  margin: 0;
  font-family: "Mona Sans Variable", "Mona Sans", sans-serif;
  font-size: clamp(42px, 5vw, 64px);
  font-weight: 700;
  line-height: 1.02;
  letter-spacing: -.045em;
  text-wrap: balance;
}

.legal-page__intro {
  max-width: 720px;
  margin: 20px auto 0;
  color: var(--muted);
  font-family: "Inter Variable", Inter, sans-serif;
  font-size: 18px;
  line-height: 1.55;
}

.legal-page__layout {
  display: grid;
  grid-template-columns: minmax(0, 800px) minmax(220px, 270px);
  gap: 68px;
  align-items: start;
  justify-content: center;
}

.legal-page__layout--single { grid-template-columns: minmax(0, 800px); }

.legal-page__article {
  min-width: 0;
  font-family: "Inter Variable", Inter, sans-serif;
}

.legal-markdown {
  font-size: 17px;
  line-height: 1.68;
}

.legal-markdown h2,
.legal-markdown h3 {
  scroll-margin-top: 100px;
  color: var(--ink);
  font-family: "Mona Sans Variable", "Mona Sans", sans-serif;
  text-align: left;
}

.legal-markdown h2 {
  margin: 48px 0 16px;
  font-size: 30px;
  line-height: 1.12;
  letter-spacing: -.025em;
}

.legal-markdown h3 {
  margin: 34px 0 12px;
  font-size: 21px;
  line-height: 1.2;
  letter-spacing: -.015em;
}

.legal-markdown p { margin: 0 0 20px; }

.legal-markdown a,
.pqr-form a {
  color: var(--cobalt);
  font-weight: 650;
  text-underline-offset: 3px;
}

/* Public legal identity/contact lines use ordinary document prose. */
.legal-markdown .legal-contact a {
  color: inherit;
  font-weight: inherit;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.legal-markdown strong { font-weight: 700; }
/* Contact details and references are prose, not code chips. */
.legal-markdown code { padding: 0; border-radius: 0; background: transparent; color: inherit; font-family: "Inter Variable", Inter, sans-serif; font-size: inherit; font-weight: inherit; line-height: inherit; overflow-wrap: anywhere; }

.legal-markdown ul,
.legal-markdown ol {
  margin: 16px 0 22px;
  padding-inline-start: 1.35em;
  font-family: "Inter Variable", Inter, sans-serif;
  font-size: inherit;
  line-height: inherit;
}

.legal-markdown ul { list-style: disc outside; }
.legal-markdown ol { list-style: decimal outside; padding-inline-start: 1.5em; }

.legal-markdown li {
  display: list-item;
  margin: 6px 0;
  padding-inline-start: .15em;
}

.legal-markdown li::marker { color: var(--cobalt); }
.legal-markdown ol li::marker { font-weight: 700; }

.legal-markdown li > ul,
.legal-markdown li > ol {
  margin: 8px 0 10px;
  padding-inline-start: 1.25em;
}

.legal-markdown blockquote {
  margin: 26px 0;
  padding: 17px 22px;
  border-left: 3px solid var(--cobalt);
  background: var(--ice);
  color: var(--ink);
}

.legal-markdown hr { margin: 42px 0; border: 0; border-top: 1px solid var(--line); }

.legal-page__aside { position: sticky; top: 104px; }
.legal-page__toc { display: flex; flex-direction: column; gap: 10px; border-left: 2px solid var(--cobalt); padding: 2px 0 4px 18px; }
.legal-page__toc p { margin: 0 0 6px; color: var(--ink); font-family: "Mona Sans Variable", "Mona Sans", sans-serif; font-size: 13px; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.legal-page__toc a { color: var(--muted); font-size: 14px; line-height: 1.35; text-decoration: none; }
.legal-page__toc a:hover { color: var(--cobalt); }
.legal-page__toc-mobile { display: none; }

.pqr-form-section {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
  gap: 68px;
  align-items: start;
  max-width: 1060px;
  margin: 0 auto;
}

.pqr-form-copy h2,
.pqr-form legend {
  margin: 0 0 16px;
  color: var(--ink);
  font-family: "Mona Sans Variable", "Mona Sans", sans-serif;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.12;
  letter-spacing: -.025em;
}

.pqr-form-copy p { margin: 0 0 18px; color: var(--muted); font-family: "Inter Variable", Inter, sans-serif; font-size: 16px; line-height: 1.55; }
.pqr-form-note { padding-top: 18px; border-top: 1px solid var(--line); font-size: 14px !important; }
.pqr-form { min-width: 0; padding: 28px; border: 1px solid var(--line); border-radius: 16px; background: var(--white); }
.pqr-form fieldset { margin: 0 0 28px; padding: 0 0 24px; border: 0; border-bottom: 1px solid var(--line); }
.pqr-form fieldset:last-of-type { margin-bottom: 20px; }
.pqr-form legend { font-size: 21px; }
.pqr-form label { display: block; margin: 14px 0 7px; color: var(--ink); font-family: "Mona Sans Variable", "Mona Sans", sans-serif; font-size: 14px; font-weight: 650; line-height: 1.35; }
.pqr-form label span { color: var(--muted); font-family: "Inter Variable", Inter, sans-serif; font-size: 13px; font-weight: 450; }
.pqr-form input,
.pqr-form select,
.pqr-form textarea { width: 100%; border: 1px solid rgba(11,29,51,.20); border-radius: 9px; padding: 11px 12px; background: var(--paper); color: var(--ink); font-family: "Inter Variable", Inter, sans-serif; font-size: 16px; line-height: 1.4; }
.pqr-form textarea { resize: vertical; }
.pqr-form input:focus,
.pqr-form select:focus,
.pqr-form textarea:focus { border-color: var(--cobalt); outline: 3px solid rgba(36,99,212,.16); }
.pqr-help { margin: 9px 0 0; color: var(--muted); font-family: "Inter Variable", Inter, sans-serif; font-size: 13px; line-height: 1.45; }
.pqr-privacy { margin: 0 0 18px; color: var(--muted); font-family: "Inter Variable", Inter, sans-serif; font-size: 13px; line-height: 1.45; }
.pqr-submit { border: 0; cursor: pointer; }
.pqr-integration-status { margin: 18px 0 0; padding: 13px 15px; border-left: 3px solid var(--cobalt); background: var(--ice); color: var(--ink); font-family: "Inter Variable", Inter, sans-serif; font-size: 14px; line-height: 1.45; }
.pqr-integration-status[hidden] { display: none; }

.pqr-context { position: sticky; top: 104px; min-width: 0; }
.pqr-context-main { min-height: 170px; }
.pqr-context h2 { margin: 0 0 16px; color: var(--ink); font-family: "Mona Sans Variable", "Mona Sans", sans-serif; font-size: 28px; font-weight: 700; line-height: 1.12; letter-spacing: -.025em; }
.pqr-context p { margin: 0 0 18px; color: var(--muted); font-family: "Inter Variable", Inter, sans-serif; font-size: 16px; line-height: 1.55; }
.pqr-context-links { display: grid; gap: 12px; padding-top: 20px; border-top: 1px solid var(--line); }
.pqr-context-links > p { margin: 0; font-size: 15px; line-height: 1.48; }
.pqr-context-action { width: fit-content; color: var(--cobalt); font-family: "Mona Sans Variable", "Mona Sans", sans-serif; font-size: 15px; font-weight: 700; line-height: 1.3; text-decoration: none; }
.pqr-context-action:hover { text-decoration: underline; text-underline-offset: 4px; }
.pqr-context-action span { display: inline-block; margin-left: 4px; transition: transform 180ms var(--ease); }
.pqr-context-action:hover span { transform: translateX(3px); }
.pqr-context-optional { margin-top: 24px; padding-top: 18px; border-top: 1px solid var(--line); }
.pqr-context-optional[hidden] { display: none; }
.pqr-context-optional p { margin-bottom: 10px; font-size: 15px; line-height: 1.48; }

.pqr-type-list { display: grid; gap: 8px; }
.pqr-type-row { display: flex !important; align-items: center; gap: 12px; margin: 0 !important; padding: 13px 14px; border: 1px solid var(--line); border-radius: 9px; background: var(--paper); color: var(--ink) !important; cursor: pointer; font-family: "Inter Variable", Inter, sans-serif !important; font-size: 15px !important; font-weight: 500 !important; line-height: 1.35 !important; transition: border-color 160ms ease, background 160ms ease, box-shadow 160ms ease; }
.pqr-type-row:hover { border-color: rgba(36,99,212,.45); }
.pqr-type-row.is-selected { border-color: var(--cobalt); background: rgba(36,99,212,.07); box-shadow: 0 0 0 2px rgba(36,99,212,.10); }
.pqr-type-row input[type="radio"] { flex: 0 0 auto; width: 18px; height: 18px; margin: 0; accent-color: var(--cobalt); }
.contact-honeypot { position: absolute !important; width: 1px !important; height: 1px !important; margin: -1px !important; padding: 0 !important; overflow: hidden !important; clip: rect(0 0 0 0) !important; white-space: nowrap !important; border: 0 !important; }

@media (max-width: 1080px) {
  .legal-page { padding-top: 130px; }
  .legal-page__layout { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .legal-page__aside { position: static; order: -1; }
  .legal-page__toc { display: none; }
  .legal-page__toc-mobile { display: block; border: 1px solid var(--line); border-radius: 10px; }
  .legal-page__toc-mobile summary { padding: 13px 15px; cursor: pointer; color: var(--ink); font-family: "Mona Sans Variable", "Mona Sans", sans-serif; font-size: 14px; font-weight: 700; }
  .legal-page__toc-mobile nav { display: grid; gap: 8px; padding: 0 15px 15px; }
  .legal-page__toc-mobile a { color: var(--muted); font-size: 14px; line-height: 1.35; }
}

@media (max-width: 760px) {
  .legal-page { width: calc(100vw - 28px); padding: 104px 0 56px; }
  .legal-page__hero { margin-bottom: 34px; }
  .legal-page__hero h1 { font-size: clamp(36px, 10vw, 48px); }
  .legal-page__intro { margin-top: 16px; font-size: 16px; }
  .legal-markdown { font-size: 16px; line-height: 1.62; }
  .legal-markdown h2 { margin-top: 38px; font-size: 27px; }
  .legal-markdown h3 { margin-top: 28px; font-size: 20px; }
  .pqr-form-section { display: block; }
  .pqr-form-copy { margin-bottom: 28px; }
  .pqr-form { padding: 20px; }
  .pqr-form-copy h2 { font-size: 26px; }
  .pqr-context { position: static; }
  .pqr-context-main { min-height: 0; }
}
