/* Typography for the club's legal documents.
   Loaded by the standalone pages in /legal/ and injected by legal-modal.js,
   so a document reads identically whether it is opened on its own page or
   inside the footer modal. */

.legal-doc {
  color: #23293a;
  font-size: .95rem;
  line-height: 1.7;
}
.legal-doc .doc-head {
  border-bottom: 3px solid #c9a227;
  padding-bottom: 20px;
  margin-bottom: 28px;
}
.legal-doc .doc-head h1 {
  color: #142a52; font-size: clamp(1.35rem, 3vw, 1.9rem); font-weight: 800;
  letter-spacing: .02em; line-height: 1.2; margin-bottom: 10px;
}
.legal-doc .doc-head .doc-sub { color: #5c6474; font-size: .9rem; font-style: italic; }
.legal-doc .doc-head .doc-regs {
  margin-top: 14px; color: #5c6474; font-size: .78rem; font-weight: 700;
  letter-spacing: .08em; text-transform: uppercase;
}

.legal-doc h2 {
  color: #142a52; font-size: .95rem; font-weight: 800;
  letter-spacing: .1em; text-transform: uppercase;
  margin: 34px 0 12px; padding-top: 4px;
}
.legal-doc h2:first-of-type { margin-top: 0; }
.legal-doc h3 {
  color: #142a52; font-size: .88rem; font-weight: 800;
  letter-spacing: .06em; margin: 22px 0 8px;
}
.legal-doc p { margin-bottom: 12px; }
.legal-doc a { color: #142a52; font-weight: 700; border-bottom: 1px solid #c9a227; }
.legal-doc a:hover { color: #c9a227; }

/* Numbered clauses. The Act-style "9.1.2" numbering is written into the
   markup rather than generated, so a clause can be quoted and found. */
.legal-doc ol.clauses { list-style: none; margin: 0 0 12px; padding: 0; }
.legal-doc ol.clauses > li {
  position: relative; padding-left: 46px; margin-bottom: 12px;
}
.legal-doc ol.clauses > li > .n {
  position: absolute; left: 0; top: 0; width: 40px;
  color: #5c6474; font-weight: 700; font-variant-numeric: tabular-nums;
}
.legal-doc ol.clauses ol.clauses { margin-top: 10px; }
.legal-doc ul.bullets { margin: 0 0 12px 22px; }
.legal-doc ul.bullets li { margin-bottom: 7px; }

/* Wide tables must scroll inside their own box, never the page. */
.legal-doc .table-wrap { overflow-x: auto; margin: 0 0 16px; -webkit-overflow-scrolling: touch; }
.legal-doc table { border-collapse: collapse; width: 100%; min-width: 460px; font-size: .88rem; }
.legal-doc th, .legal-doc td {
  border: 1px solid #e2e6ee; padding: 10px 13px; text-align: left; vertical-align: top;
}
.legal-doc th {
  background: #f7f8fa; color: #142a52; font-weight: 800;
  width: 34%; white-space: normal;
}

.legal-doc .doc-foot {
  margin-top: 34px; padding-top: 18px; border-top: 1px solid #e2e6ee;
  color: #5c6474; font-size: .78rem; font-style: italic;
}
