/*
 * legal.css — shared styles for the Apollo Lamps policy pages (privacy, terms,
 * shipping, refunds). Extracted from the four pages' byte-identical inline
 * <style> blocks (refunds' lone 36px mobile-h1 reconciled to 38px). Linked from
 * each page via <link rel="stylesheet" href="/legal.css">; staged to dist/legal.css
 * by deploy.sh alongside nav.js / fonts. Color tokens come from /tokens.css,
 * which each page links alongside this file.
 */
  :root {
    --mono: 'Sometype Mono', ui-monospace, monospace;
    --sans: 'Karla', system-ui, sans-serif;
    --serif: 'Fraunces', serif;
  }
  * { box-sizing: border-box; }
  body { margin: 0; background: var(--paper); color: var(--ink); font-family: var(--sans); font-size: 16px; line-height: 1.6; font-synthesis: none; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
  .wrap { max-width: 720px; margin: 0 auto; padding: 64px 28px 80px; }
  .kicker { font-family: var(--mono); font-size: 10px; letter-spacing: .28em; color: var(--ikb); text-transform: uppercase; display: block; margin-bottom: 14px; }
  h1 { font-family: var(--serif); font-style: italic; font-weight: 350; font-size: 50px; line-height: 1.03; margin: 0 0 12px; letter-spacing: -.015em; text-wrap: balance; }
  @media (max-width: 600px) { h1 { font-size: 38px; } }
  .updated { font-family: var(--mono); font-size: 10px; letter-spacing: .14em; text-transform: uppercase; color: var(--ink-faint); margin: 0 0 26px; }
  .rule { height: 1px; background: var(--line-dark); border: 0; margin: 0 0 34px; }
  .prose { max-width: 68ch; }
  .prose h2 { font-family: var(--serif); font-style: normal; font-weight: 500; font-size: 22px; margin: 38px 0 12px; letter-spacing: -.01em; text-wrap: balance; }
  .prose h2:first-child { margin-top: 0; }
  .prose h3 { font-family: var(--sans); font-weight: 600; font-size: 17px; margin: 22px 0 8px; }
  .prose p, .prose li { color: var(--ink-dim); margin: 0 0 14px; text-wrap: pretty; }
  .prose ul { padding-left: 22px; margin: 0 0 18px; }
  .prose li { margin-bottom: 8px; }
  .prose strong { color: var(--ink); font-weight: 600; }
  .prose em { font-family: var(--serif); font-style: italic; color: var(--ink); }
  .prose a { color: var(--ikb); text-underline-offset: 2px; text-decoration-thickness: 1px; }
  .prose code { font-family: var(--mono); font-size: 12.5px; background: var(--panel); border: 1px solid var(--line); padding: 1px 5px; }
  .note { background: var(--panel); border: 1px solid var(--line); padding: 14px 18px; margin: 18px 0; }
  .note p { margin: 0; font-size: 14px; }
  .foot-actions { margin-top: 44px; padding-top: 24px; border-top: 1px solid var(--line); display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 14px; }
  .back { font-family: var(--mono); font-size: 11px; letter-spacing: .16em; text-transform: uppercase; color: var(--ink); text-decoration: none; }
  .back:hover { color: var(--ikb); }
  .pdf { font-family: var(--mono); font-size: 11px; letter-spacing: .16em; text-transform: uppercase; color: var(--ink-dim); background: var(--panel); border: 1px solid var(--line-dark); padding: 9px 16px; cursor: pointer; display: inline-flex; align-items: center; gap: 8px; }
  .pdf:hover { color: var(--ikb); border-color: var(--ikb); }
  .pdf svg { width: 13px; height: 13px; display: block; }
  @media print {
    #al-nav, #al-footer, .foot-actions { display: none !important; }
    body.al-has-nav { padding-top: 0 !important; }
    body { background: #fff; color: #000; }
    .wrap { max-width: none; padding: 0; }
    h1, .kicker, .updated, .prose p, .prose li, .prose h2, .prose h3, .prose strong { color: #000 !important; }
    .prose a { color: #000 !important; text-decoration: underline; }
    .note { background: #f3f3f3 !important; border: 1px solid #ccc !important; }
    @page { margin: 0.75in; }
  }
