/* Dedicated document pages, using the existing type and amber / graphite palette. */
.page-legal { display: flex; flex-direction: column; min-height: 100vh; }
.page-legal .site-header, .page-legal .site-footer { flex-shrink: 0; }
.page-legal .legal-page { flex: 1; padding: 65px 0 90px; }
.page-legal .legal-page > .wrap { max-width: 930px; }
.legal-heading { margin-bottom: 52px; }
.legal-heading .s-label { margin-bottom: 24px; }
.legal-heading h1 { font-size: clamp(39px, 5.4vw, 68px); line-height: 1.06; font-weight: 440; letter-spacing: -.06em; max-width: 920px; overflow-wrap: break-word; }
.legal-document { max-width: 850px; }
.legal-document .legal-lead { max-width: 740px; color: var(--muted); font-size: 15px; line-height: 1.9; margin-bottom: 48px; }
.legal-section { display: grid; grid-template-columns: 46px minmax(0, 1fr); gap: 24px; padding: 31px 0 35px; border-top: 1px solid var(--line); scroll-margin-top: 120px; }
.legal-section-number { color: var(--c); font: 400 10px/1.8 var(--mono); padding-top: 5px; }
.legal-section h2 { font-size: 26px; font-weight: 450; line-height: 1.25; letter-spacing: -.04em; margin: 0 0 18px; }
.legal-section p { color: var(--muted); font-size: 13px; line-height: 1.95; }
.legal-section p + p { margin-top: 16px; }
.document-edition { color: var(--dim); font: 400 10px/1.7 var(--mono); margin: 24px 0 0; }
.document-outline { border: 1px solid var(--line2); border-radius: 19px; padding: 17px 21px; margin: 0 0 35px; background: rgba(255,255,255,.018); }
.document-outline summary { display: flex; justify-content: space-between; align-items: center; gap: 20px; list-style: none; font-size: 12px; color: var(--text); }
.document-outline summary::-webkit-details-marker { display: none; }
.document-outline summary::after { content: '+'; color: var(--c); font-size: 20px; font-weight: 300; transition: rotate .25s; }
.document-outline[open] summary::after { rotate: 45deg; }
.document-outline-links { display: grid; grid-template-columns: 1fr 1fr; align-items: start; gap: 12px 24px; padding: 23px 0 5px; }
.document-outline-links a { color: var(--muted); font-size: 11px; line-height: 1.7; transition: color .2s; }
.document-outline-links a:hover { color: var(--c); }
.legal-section a { color: var(--text); text-decoration: underline; text-decoration-color: rgba(245,171,45,.4); text-underline-offset: 4px; transition: color .2s; }
.legal-section a:hover { color: var(--c); }
.document-pending { max-width: 660px; padding: 32px 35px; border: 1px solid var(--line2); border-radius: 25px; background: var(--glass); box-shadow: var(--glass-shadow); }
.document-status { display: inline-flex; align-items: center; gap: 9px; color: var(--c); font: 400 10px/1.7 var(--font); margin-bottom: 18px; }
.document-status::before { content: ""; width: 4px; height: 4px; background: currentColor; border-radius: 50%; }
.document-pending p { color: var(--muted); font-size: 13px; line-height: 1.9; max-width: 530px; }
@media (max-width: 700px) {
  .page-legal .legal-page { padding: 45px 0 60px; }
  .legal-heading { margin-bottom: 36px; }
  .legal-heading .s-label { margin-bottom: 20px; }
  .legal-heading h1 { font-size: clamp(31px, 8.2vw, 46px); letter-spacing: -.055em; }
  .legal-document .legal-lead { font-size: 12px; line-height: 1.95; margin-bottom: 30px; }
  .legal-section { grid-template-columns: 25px minmax(0, 1fr); gap: 14px; padding: 25px 0 30px; }
  .legal-section-number { font-size: 8px; padding-top: 4px; }
  .legal-section h2 { font-size: 23px; margin-bottom: 15px; }
  .legal-section p { font-size: 12px; line-height: 1.9; }
  .document-pending { padding: 25px; border-radius: 22px; }
  .document-pending p { font-size: 12px; }
  .document-status { font-size: 9px; }
  .document-edition { margin-top: 20px; font-size: 9px; }
  .document-outline { padding: 15px 18px; border-radius: 16px; margin-bottom: 28px; }
  .document-outline-links { grid-template-columns: 1fr; gap: 12px; padding-top: 20px; }
}
