/* Legal pages — same tokens as main.css, static and light */

:root {
  --ink: #0a0a08;
  --cream: #f4efe4;
  --cream-dim: rgba(244, 239, 228, 0.6);
  --emerald: #0bdc84;
  --display: 'Big Shoulders Display', sans-serif;
  --body: 'Instrument Sans', sans-serif;
  --mono: 'IBM Plex Mono', monospace;
}

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

body {
  background: var(--ink);
  color: var(--cream);
  font-family: var(--body);
  -webkit-font-smoothing: antialiased;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

.mono { font-family: var(--mono); font-size: 0.72rem; letter-spacing: 0.18em; text-transform: uppercase; }

a { color: var(--emerald); text-decoration: none; }
a:hover { text-decoration: underline; }

.head {
  display: flex; justify-content: space-between; align-items: center;
  padding: 1.6rem 2.2rem;
}
.head a { color: var(--cream-dim); }
.head a:hover { color: var(--emerald); text-decoration: none; }

main {
  flex: 1;
  width: min(72ch, calc(100vw - 3rem));
  margin: 0 auto;
  padding: 3rem 0 6rem;
}

h1 {
  font-family: var(--display);
  font-weight: 800;
  font-size: clamp(2.6rem, 7vw, 4.5rem);
  text-transform: uppercase;
  line-height: 0.95;
  margin-bottom: 2.5rem;
}
h1 .accent { color: var(--emerald); }

h2 {
  font-family: var(--display);
  font-weight: 800;
  font-size: 1.4rem;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  margin: 2.2rem 0 0.7rem;
}

p, li { color: var(--cream-dim); font-size: 0.95rem; line-height: 1.65; }
p + p { margin-top: 0.7rem; }
ul { padding-left: 1.2rem; margin-top: 0.5rem; }

.placeholder { color: var(--emerald); }

/* Footer mirrors the main page's (main.css .foot) so every page ends alike */
.foot {
  display: grid; grid-template-columns: 1fr auto 1fr; align-items: center;
  padding: 2rem 2.2rem;
  border-top: 1px solid rgba(244, 239, 228, 0.1);
}
.foot > :first-child { justify-self: start; }
.foot__legal { justify-self: end; display: flex; gap: 1.6rem; }
.foot a { color: var(--cream-dim); }
.foot a:hover { color: var(--emerald); text-decoration: none; }
.foot__c { color: rgba(244, 239, 228, 0.3); }

@media (max-width: 700px) {
  .foot { grid-template-columns: 1fr; justify-items: center; gap: 1.2rem; padding: 2rem 1.4rem; }
  .foot > :first-child, .foot__legal { justify-self: center; }
  .foot__c { order: 3; }
}
