.legal-page { background: #f9f7ef; color: #171714; min-height: 60vh; padding: 52px 24px 88px; }
.legal-wrap { max-width: 1000px; margin: 0 auto; }
.legal-breadcrumb { font-size: .88rem; margin-bottom: 28px; }
.legal-page a { color: inherit; text-decoration-color: #e5bc22; text-underline-offset: 3px; }
.legal-page a:hover { color: #755c00; }
.legal-eyebrow { display: inline-block; border: 1px solid #171714; background: #fff7ca; padding: 7px 10px; font: 700 .74rem/1.2 monospace; letter-spacing: .05em; text-transform: uppercase; }
.legal-page h1 { max-width: 970px; margin: 14px 0 18px; font-size: clamp(2rem, 5vw, 3.6rem); line-height: 1.08; }
.legal-page h2 { font-size: clamp(1.25rem, 2.5vw, 1.65rem); margin: 0 0 12px; }
.legal-page p, .legal-page li, .legal-page dd, .legal-page td { line-height: 1.65; }
.legal-page > .legal-wrap > p:not(.legal-eyebrow) { max-width: 900px; color: #4c4b45; font-size: 1.06rem; }
.legal-index { display: grid; gap: 12px; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 32px; }
.legal-index a { display: block; padding: 24px; background: #fff; border: 1px solid #dad6c9; text-decoration: none; }
.legal-index a:hover { border-color: #171714; background: #fff8d7; }
.legal-index small { display: block; margin-bottom: 12px; font: 700 .75rem monospace; }
.legal-index h2 { margin-bottom: 8px; }
.legal-index p { margin: 0; color: #555; }
.legal-published-content { margin-top: 32px; }
.legal-section { background: #fff; border: 1px solid #dad6c9; padding: 26px 30px; margin: 0 0 12px; }
.legal-section p, .legal-section ul, .legal-section ol { margin: 0 0 12px; }
.legal-section li { margin-bottom: 8px; }
.legal-details { display: grid; grid-template-columns: minmax(130px, 1fr) minmax(0, 3fr); margin: 0; }
.legal-details dt, .legal-details dd { margin: 0; padding: 10px 0; border-bottom: 1px solid #e5e1d7; overflow-wrap: anywhere; }
.legal-details dt { font-weight: 700; padding-right: 12px; }
.legal-table-scroll { overflow-x: auto; }
.legal-table-scroll table { border-collapse: collapse; width: 100%; min-width: 680px; }
.legal-table-scroll th, .legal-table-scroll td { border: 1px solid #dedbd1; padding: 10px; text-align: left; vertical-align: top; }
.legal-table-scroll th { background: #f8edb8; }
.legal-related { display: flex; flex-wrap: wrap; gap: 12px 18px; margin-top: 32px; }
.legal-status { max-width: 1000px; margin: auto; }
@media (max-width: 680px) {
  .legal-page { padding: 28px 16px 64px; }
  .legal-index { grid-template-columns: 1fr; }
  .legal-section { padding: 20px 16px; }
  .legal-details { grid-template-columns: 1fr; }
  .legal-details dt { border-bottom: 0; padding-bottom: 0; }
  .legal-details dd { padding-top: 0; }
}
