/* Shared styling for the legal pages (privacy.html, terms.html).
   Tokens mirror index.html so the documents feel part of the site. */

:root {
  --navy:  #1a2035;
  --navy2: #141829;
  --gold:  #c9a84c;
  --gold3: #a8883a;
  --cream: #faf8f3;
  --cream2:#f3efe6;
  --tx:    #1a2035;
  --tx2:   #4a5568;
  --tx3:   #8a95a3;
  --white: #ffffff;
  --line:  rgba(26,32,53,.12);
  --warn:  #b45309;
  --warnbg:#fef3c7;
}

* { margin:0; padding:0; box-sizing:border-box; }
html { font-size:16px; scroll-behavior:smooth; }
body {
  background:var(--cream);
  color:var(--tx);
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
}

/* ── Header ─────────────────────────────────────────────── */
.lg-top {
  position:sticky; top:0; z-index:20;
  background:rgba(250,248,243,.92);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);
}
.lg-top-in {
  max-width:820px; margin:0 auto; padding:14px 24px;
  display:flex; align-items:center; justify-content:space-between; gap:16px;
}
.lg-brand { display:flex; align-items:baseline; gap:8px; text-decoration:none; color:var(--tx); }
.lg-brand b {
  font-family:'Playfair Display',Georgia,serif; font-weight:700;
  font-size:1.15rem; letter-spacing:-.01em;
}
.lg-brand span {
  font-family:'Space Mono',ui-monospace,monospace;
  font-size:.6rem; color:var(--gold3); letter-spacing:.08em;
}
.lg-actions { display:flex; align-items:center; gap:10px; }
.lg-btn {
  background:none; border:1px solid var(--line); color:var(--tx2);
  font-family:'Inter',sans-serif; font-size:.72rem; letter-spacing:.04em;
  padding:6px 13px; border-radius:4px; cursor:pointer; transition:all .2s;
  text-decoration:none; white-space:nowrap;
}
.lg-btn:hover, .lg-btn:focus-visible { border-color:var(--gold); color:var(--tx); }

/* ── Document ───────────────────────────────────────────── */
.lg-wrap { max-width:820px; margin:0 auto; padding:52px 24px 96px; }

.lg-kicker {
  font-family:'Space Mono',ui-monospace,monospace;
  font-size:.65rem; letter-spacing:.16em; text-transform:uppercase;
  color:var(--gold3); margin-bottom:14px;
}
h1 {
  font-family:'Playfair Display',Georgia,serif;
  font-weight:700; font-size:clamp(1.9rem,5vw,2.7rem);
  line-height:1.15; letter-spacing:-.02em; margin-bottom:16px; text-wrap:balance;
}
.lg-meta {
  font-family:'Space Mono',ui-monospace,monospace;
  font-size:.7rem; color:var(--tx3); letter-spacing:.03em;
  padding-bottom:26px; margin-bottom:34px; border-bottom:1px solid var(--line);
}
.lg-lede { font-size:1.02rem; color:var(--tx2); margin-bottom:34px; }

h2 {
  font-family:'Playfair Display',Georgia,serif;
  font-weight:700; font-size:1.32rem; letter-spacing:-.01em;
  margin:42px 0 14px; padding-top:6px; text-wrap:balance;
}
h2:first-of-type { margin-top:0; }
h3 {
  font-size:.95rem; font-weight:600; color:var(--tx);
  margin:24px 0 8px;
}
p  { color:var(--tx2); margin-bottom:14px; }
ul, ol { color:var(--tx2); margin:0 0 16px 22px; }
li { margin-bottom:7px; }
strong { color:var(--tx); font-weight:600; }
a { color:var(--gold3); text-decoration:underline; text-underline-offset:2px; }
a:hover, a:focus-visible { color:var(--navy); }
code {
  font-family:'Space Mono',ui-monospace,monospace; font-size:.82em;
  background:var(--cream2); padding:1px 5px; border-radius:3px;
}

/* Prominent risk / disclaimer block */
.lg-callout {
  background:var(--warnbg); border-left:3px solid var(--warn);
  padding:18px 20px; border-radius:0 6px 6px 0; margin:26px 0;
}
.lg-callout p { color:#7c2d12; margin-bottom:10px; }
.lg-callout p:last-child { margin-bottom:0; }
.lg-callout strong { color:#7c2d12; }

/* Sub-processor / data table */
.lg-table-wrap { overflow-x:auto; margin:0 0 20px; }
table { border-collapse:collapse; width:100%; min-width:520px; font-size:.86rem; }
th, td { text-align:left; padding:10px 12px; border-bottom:1px solid var(--line); vertical-align:top; }
th {
  font-family:'Space Mono',ui-monospace,monospace;
  font-size:.62rem; letter-spacing:.1em; text-transform:uppercase;
  color:var(--tx3); font-weight:400;
}
td { color:var(--tx2); }

/* ── Footer ─────────────────────────────────────────────── */
.lg-foot {
  border-top:1px solid var(--line); margin-top:56px; padding-top:26px;
  display:flex; flex-wrap:wrap; gap:8px 20px; align-items:center;
  font-size:.8rem; color:var(--tx3);
}
.lg-foot a { color:var(--tx2); text-decoration:none; }
.lg-foot a:hover, .lg-foot a:focus-visible { color:var(--gold3); text-decoration:underline; }

/* ── Language switching ─────────────────────────────────── */
[data-lang] { display:none; }
[data-lang].on { display:block; }
[data-inline] { display:none; }
[data-inline].on { display:inline; }

@media (max-width:600px) {
  .lg-wrap { padding:38px 20px 72px; }
  .lg-top-in { padding:12px 20px; }
}

@media print {
  .lg-top, .lg-actions { display:none; }
  body { background:#fff; }
  .lg-wrap { max-width:none; padding:0; }
}
