:root {
  color: #272524;
  background: #fff;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
body { margin: 0; }

.legal-header {
  position: sticky;
  z-index: 10;
  top: 0;
  display: flex;
  min-height: 60px;
  align-items: center;
  gap: 18px;
  padding: 0 24px;
  border-bottom: 1px solid #e5e2df;
  background: rgb(255 255 255 / 94%);
  backdrop-filter: blur(10px);
}

.legal-header a { color: #272524; font-size: 14px; text-decoration: none; }
.legal-header strong { font-size: 15px; }
.legal-main { width: min(800px, calc(100% - 32px)); margin: 42px auto 80px; }
.draft-badge { display: inline-flex; margin-bottom: 22px; border-radius: 999px; background: #f1efed; color: #6f6964; padding: 5px 10px; font-size: 12px; font-weight: 700; }
.legal-document { font-size: 16px; line-height: 1.8; }
.legal-document h1 { margin: 0 0 32px; font-size: 30px; line-height: 1.35; }
.legal-document h2 { margin: 44px 0 12px; font-size: 20px; }
.legal-document h3 { margin: 32px 0 10px; font-size: 18px; }
.legal-document p { margin: 0 0 18px; }
.legal-document ul,
.legal-document ol { margin: 0 0 22px; padding-left: 1.5em; }
.legal-document li + li { margin-top: 6px; }
.legal-document table { width: 100%; margin: 20px 0 28px; border-collapse: collapse; font-size: 14px; line-height: 1.6; }
.legal-document th,
.legal-document td { padding: 10px 12px; border: 1px solid #dedad6; text-align: left; vertical-align: top; }
.legal-document th { background: #f7f6f5; font-weight: 650; }
.legal-document a { color: #3b5e91; }
.legal-contact-row {
  display: grid;
  grid-template-columns: minmax(170px, 230px) minmax(0, 1fr);
  gap: 12px 20px;
  align-items: start;
  margin-bottom: 12px;
}
.legal-contact-label { font-weight: 650; }
.legal-contact-value { min-width: 0; }
.protected-legal-text {
  display: inline-block;
  vertical-align: -0.38em;
}
.legal-error { padding: 20px; border: 1px solid #e1b6b0; border-radius: 8px; color: #8f2e24; }

@media (max-width: 640px) {
  .legal-header { padding: 0 16px; }
  .legal-main { margin-top: 28px; }
  .legal-document h1 { font-size: 25px; }
  .legal-document table { display: block; overflow-x: auto; }
  .legal-contact-row { grid-template-columns: 1fr; gap: 3px; margin-bottom: 16px; }
}
.legal-section-divider { margin: 46px 0; border: 0; border-top: 1px solid #ddd7d1; }

.legal-document{font-size:14px}.legal-document h1{font-size:25px}.legal-document h2{font-size:18px}.legal-document h3{font-size:16px}.legal-document{overflow-wrap:anywhere}
