/* ==========================================================================
   REZALOGY — legal.css
   Loaded ONLY by privacy-policy.html and cookie-policy.html.

   The rest of the site uses .chrome display headings for editorial impact —
   wrong register for a document someone is reading to find out what happens
   to their data. This is deliberately plainer: text headings, numbered
   sections, a dash-marker list. Same tokens as everywhere else, no new
   colours, no new type scale.
   ========================================================================== */

.legal { max-width: var(--measure); color: var(--text-dim); }

.legal__updated {
  font-family: var(--font-mono);
  font-size: var(--step--1);
  color: var(--text-muted);
  margin-bottom: var(--s-6);
}

.legal h2 {
  font-family: var(--font-text);
  font-weight: 500;
  font-size: var(--step-2);
  color: var(--text);
  letter-spacing: 0;
  margin-top: var(--s-8);
  padding-top: var(--s-6);
  border-top: 1px solid var(--hairline);
}

.legal h2:first-of-type { margin-top: 0; padding-top: 0; border-top: 0; }

.legal h2 .legal__num {
  font-family: var(--font-mono);
  font-size: var(--step--1);
  color: var(--red);
  letter-spacing: 0.05em;
  margin-right: var(--s-3);
}

.legal h3 {
  font-family: var(--font-text);
  font-weight: 500;
  font-size: var(--step-0);
  color: var(--text);
  margin-top: var(--s-6);
  margin-bottom: var(--s-2);
}

.legal p { margin-top: var(--s-4); }
.legal h2 + p, .legal h3 + p { margin-top: var(--s-3); }

.legal strong { color: var(--text); font-weight: 500; }

.legal ul { margin-top: var(--s-3); }
.legal li {
  position: relative;
  padding-left: var(--s-4);
  margin-top: var(--s-2);
}
.legal li::before {
  content: "—";
  position: absolute;
  left: 0;
  color: var(--red);
}

.legal a.link { color: var(--text); }

/* Simple two-column data table: who / why. No borders in the chrome sense —
   a single hairline keeps it quiet on a legal page. */
.legal table {
  width: 100%;
  border-collapse: collapse;
  margin-top: var(--s-4);
  font-size: var(--step--1);
}
.legal th, .legal td {
  text-align: left;
  padding: var(--s-3) var(--s-3) var(--s-3) 0;
  border-bottom: 1px solid var(--hairline);
  vertical-align: top;
}
.legal th {
  font-weight: 500;
  color: var(--text);
  text-transform: uppercase;
  letter-spacing: var(--tracking-label);
  font-size: 0.72rem;
  color: var(--text-muted);
}

@media (max-width: 640px) {
  .legal table, .legal thead, .legal tbody, .legal th, .legal td, .legal tr { display: block; }
  .legal thead { display: none; }
  .legal tr { border-bottom: 1px solid var(--hairline); padding-bottom: var(--s-3); margin-top: var(--s-4); }
  .legal td { border-bottom: 0; padding: 0.25rem 0; }
  .legal td::before {
    content: attr(data-label);
    display: block;
    font-family: var(--font-mono);
    font-size: 0.68rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--text-muted);
    margin-bottom: 0.2rem;
  }
}
