


.legal-strip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  padding: 22px var(--gutter);
  border-bottom: 1px solid rgba(22, 20, 18, 0.08);
}

.legal-strip__brand {
  text-decoration: none;
  color: var(--ink-dark);
  transition: opacity 0.3s var(--ease);
}

.legal-strip__brand:hover { opacity: 0.62; }


.legal-strip__brand .wordmark,
.legal-strip__brand .wordmark__sans {
  color: var(--ink-dark);
}

.legal-strip__meta {
  font-family: var(--font-meta);
  font-size: 11.5px;
  letter-spacing: 0.08em;
  color: var(--ink-mute);
}


.section--legal {
  padding-top: clamp(56px, 9vh, 104px);
}


.legal__meta {
  margin-top: 26px;
  font-family: var(--font-meta);
  font-size: 11.5px;
  letter-spacing: 0.04em;
  color: var(--ink-mute);
}


.legal__body {
  margin-top: clamp(48px, 7vh, 80px);
  max-width: 68ch;
}

.legal__body h2 {
  margin-top: clamp(40px, 6vh, 64px);
  padding-top: 20px;
  border-top: 1px solid rgba(22, 20, 18, 0.10);
  font-family: var(--font-meta);
  font-size: 12.5px;
  font-weight: 500;
  letter-spacing: 0.06em;
  color: var(--ink-dark);
}

.legal__body h2:first-child {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}

.legal__body h3 {
  margin-top: clamp(26px, 3.5vh, 36px);
  font-family: var(--font-display);
  font-weight: 400;
  font-style: italic;
  font-size: 19px;
  letter-spacing: -0.01em;
  color: var(--ink-dark);
}

.legal__body p,
.legal__body li {
  font-family: var(--font-display);
  font-weight: 300;
  font-size: 17px;
  line-height: 1.62;
  letter-spacing: -0.005em;
  color: var(--ink-dark);
}

.legal__body p { margin-top: 18px; }

.legal__body ul,
.legal__body ol {
  margin-top: 18px;
  padding-left: 22px;
}

.legal__body li { margin-top: 10px; }

.legal__body li::marker {
  font-family: var(--font-meta);
  font-size: 12px;
  color: var(--ink-mute);
}


.legal__body a {
  color: var(--ink-dark);
  text-decoration: none;
  border-bottom: 1px solid rgba(22, 20, 18, 0.28);
  transition: border-color 0.3s var(--ease);
}

.legal__body a:hover { border-color: var(--ink-dark); }


.legal__body address {
  margin-top: 18px;
  font-family: var(--font-meta);
  font-size: 13px;
  font-style: normal;
  line-height: 1.7;
  color: var(--ink-mute);
}


.legal__body ol ol {
  margin-top: 10px;
  list-style-type: lower-alpha;
}

.legal__body ol ol li { margin-top: 8px; }


.legal__body li address { margin-bottom: 14px; }


.legal__table {
  margin-top: 22px;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.legal__table table {
  width: 100%;
  border-collapse: collapse;
  font-family: var(--font-meta);
  font-size: 12.5px;
  line-height: 1.6;
  letter-spacing: 0.01em;
  color: var(--ink-dark);
}

.legal__table th,
.legal__table td {
  padding: 12px 16px 12px 0;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid rgba(22, 20, 18, 0.10);
}

.legal__table thead th {
  border-bottom-color: rgba(22, 20, 18, 0.28);
  font-weight: 500;
  letter-spacing: 0.06em;
  color: var(--ink-mute);
}


.legal__table tbody th {
  min-width: 15ch;
  font-weight: 500;
}

.legal__table td { color: var(--ink-mute); }

.legal__table tbody tr:last-child th,
.legal__table tbody tr:last-child td {
  border-bottom: 0;
}

@media (max-width: 560px) {
  .legal-strip { padding: 18px var(--gutter); }
  .legal__body p,
  .legal__body li { font-size: 16px; }
  .legal__table table { font-size: 12px; }
  .legal__table th,
  .legal__table td { padding: 10px 12px 10px 0; }
}
