/* bight.keeldragger.com: the shared look. Fraunces (headings) and Noto Sans (text), both SIL Open Font License, served
   from this site (fonts/, with their licences). Light and dark follow the system. No inline styles anywhere: the CSP
   allows style-src 'self' only. */
@font-face { font-family: 'Fraunces'; src: url('/fonts/Fraunces-SemiBold.woff2') format('woff2'); font-weight: 600; font-display: swap; }
@font-face { font-family: 'Noto Sans'; src: url('/fonts/NotoSans-Regular.woff2') format('woff2'); font-weight: 400; font-display: swap; }

:root {
  color-scheme: light dark;
  --bg: #f5f1e8;
  --surface: #fffdf8;
  --surface-2: #ece6d8;
  --text: #13222c;
  --muted: #55636c;
  --line: #d6cdbb;
  --accent: #0b5a78;
  --accent-text: #ffffff;
  --sea-1: #9cc3cf;
  --sea-2: #5f9db1;
  --sea-3: #2f6f86;
  --ok: #1d6b3a;
  --ok-bg: #dcefe2;
  --bad: #9b2a1f;
  --bad-bg: #f6dfdb;
  --warn-bg: #f7ecd0;
  --focus: #c15a00;
  --radius: 10px;
  --font-head: 'Fraunces', Georgia, 'Times New Roman', serif;
  --font-body: 'Noto Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;
}
@media (prefers-color-scheme: dark) {
  :root {
    --bg: #0b161d;
    --surface: #12212b;
    --surface-2: #1a2c38;
    --text: #e6edf0;
    --muted: #9db0ba;
    --line: #2a3f4c;
    --accent: #6cc0dc;
    --accent-text: #06202b;
    --sea-1: #18394a;
    --sea-2: #1f4d63;
    --sea-3: #2c6a84;
    --ok: #8fd6a6;
    --ok-bg: #173826;
    --bad: #f0a197;
    --bad-bg: #3d1d19;
    --warn-bg: #3a3017;
    --focus: #ffb169;
  }
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  background: var(--bg);
  color: var(--text);
  font: 400 1rem/1.6 var(--font-body);
}
h1, h2, h3 { font-family: var(--font-head); font-weight: 600; line-height: 1.15; margin: 0 0 0.5em; }
a { color: var(--accent); text-underline-offset: 0.15em; }
:focus-visible { outline: 3px solid var(--focus); outline-offset: 2px; border-radius: 4px; }
[hidden] { display: none !important; }
.visually-hidden { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* --- The holding page --------------------------------------------------------------------------------------------- */
.holding { min-height: 100vh; min-height: 100dvh; display: flex; flex-direction: column; }
.holding main { flex: 1; display: flex; align-items: center; padding: 3rem 1rem 1rem; }
.holding .card { width: 100%; max-width: 38rem; margin: 0 auto; }
.eyebrow { font-size: 0.8rem; letter-spacing: 0.14em; text-transform: uppercase; color: var(--muted); margin: 0 0 1rem; }
.holding h1 { font-size: clamp(2.2rem, 8vw, 3.6rem); letter-spacing: -0.01em; }
.holding h1 .sub { display: block; color: var(--accent); }
.soon {
  display: inline-block; margin: 0.25rem 0 1.5rem; padding: 0.2rem 0.75rem; border: 1px solid var(--line);
  border-radius: 999px; font-size: 0.9rem; color: var(--muted); background: var(--surface);
}
.lede { font-size: 1.15rem; margin: 0 0 1rem; }
.holding p { max-width: 34rem; }
.sea { display: block; width: 100%; height: 120px; margin-bottom: -1px; }
.sea .s1 { fill: var(--sea-1); }
.sea .s2 { fill: var(--sea-2); }
.sea .s3 { fill: var(--sea-3); }
.site-foot { background: var(--sea-3); color: #eef6f8; padding: 1rem; font-size: 0.85rem; }
.site-foot .inner { max-width: 38rem; margin: 0 auto; display: flex; flex-wrap: wrap; gap: 0.25rem 1.25rem; }
.site-foot a { color: #ffffff; }

/* --- Documents (privacy/feedback.html) ---------------------------------------------------------------------------- */
.doc main { align-items: flex-start; padding-top: 2.5rem; }
.doc .policy { max-width: 44rem; }
.doc .eyebrow a { color: inherit; text-decoration: none; }
.doc h1 { font-size: clamp(1.6rem, 5vw, 2.3rem); }
.doc h2 { font-size: 1.4rem; margin-top: 1.75rem; }
.doc h3 { font-size: 1.1rem; margin: 1.5rem 0 0.5rem; }
.doc ul { padding-left: 1.2rem; }
.doc li { margin: 0.35rem 0; }
.doc p, .doc li { max-width: 42rem; overflow-wrap: anywhere; }
.note-line { color: var(--muted); border-left: 3px solid var(--line); padding-left: 0.75rem; }
.doc .site-foot { margin-top: 2rem; }
