/* ── shared base for the legal pages ─────────────────────────
   Lifted verbatim from the storefront's inline stylesheet.
   These pages linked /styles.css, which is the DASHBOARD's stylesheet and
   defines none of these tokens, so --ivory, --lamp, --hair and the rest
   resolved to nothing: the footer fell back to raw browser defaults, blue
   underlined links and all. */
*, *::before, *::after { box-sizing: border-box; }

:root {
  color-scheme: light;

  /* Exactly the dashboard's light tokens, so the storefront and the product
     are one surface. Warm paper rather than white: a neutral #fff ground
     under a warm amber reads as two unrelated palettes. */
  --ink:      #FFFFFF;   /* page ground */
  --ink-2:    #FAF8F5;   /* raised band */
  --panel:    #FFFFFF;   /* cards, console */
  --hair:     #E7E2DA;
  --hair-2:   #D2CBBF;

  --ivory:    #1A1714;   /* primary text */
  --ivory-2:  #443E36;
  --dim:      #6A6157;
  /* Solved against the darkest ground it lands on (the page background),
     not the lightest panel, or the small mono captions fall under AA. */
  --faint:    #776D61;

  /* The lamp, darkened so it carries text on paper. The bright amber is
     kept only for large graphic fills where contrast is not a reading
     concern. */
  --lamp:      #A05702;
  --lamp-lift: #8C4E06;
  --lamp-bright: #E0851F;
  --lamp-soft: rgba(160, 87, 2, 0.09);
  --lamp-line: rgba(160, 87, 2, 0.34);
  --on-lamp:   #FFFFFF;

  --jade:      #137D6C;
  --jade-soft: rgba(22, 128, 111, 0.10);
  --rust:      #A8392A;

  --paper:      #FFFFFF;
  --paper-2:    #FDFBF7;
  --paper-ink:  #1A1714;
  --paper-dim:  #6A6157;
  --paper-rule: #EDE7DC;
  --paper-red:  #A6402F;

  --display: ui-serif, "New York", "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;
  --sans: ui-sans-serif, -apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", Arial, sans-serif;
  --mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, monospace;

  --t-xs: 12px; --t-sm: 13.5px; --t-base: 16.5px; --t-lg: 19px; --t-xl: 23px;
  --page: 1200px;
  --r: 4px;
}

html { -webkit-text-size-adjust: 100%; overflow-x: clip; }

body {
  margin: 0;
  background: var(--ink);
  color: var(--ivory);
  font-family: var(--sans);
  font-size: var(--t-base);
  line-height: 1.62;
  -webkit-font-smoothing: antialiased;
  overflow-x: clip;
}

h1, h2, h3 { font-family: var(--display); font-weight: 500; text-wrap: balance; margin: 0; letter-spacing: -0.014em; }
p { margin: 0; }
a { color: inherit; }
:focus-visible { outline: 2px solid var(--lamp); outline-offset: 3px; border-radius: 2px; }

.wrap { width: 100%; max-width: var(--page); margin: 0 auto; padding: 0 28px; }
.prose { max-width: 58ch; }

footer { border-top: 1px solid var(--hair); padding: 34px 0 46px; }
footer .wrap { display: flex; gap: 20px; align-items: center; flex-wrap: wrap; }
footer p { font-family: var(--mono); font-size: var(--t-xs); color: var(--faint); letter-spacing: .05em; }
footer .foot-left { display: grid; gap: 4px; }
footer .foot-copy { letter-spacing: .03em; opacity: .8; }
footer nav { margin-left: auto; display: flex; gap: 20px; flex-wrap: wrap; }
footer nav a { font-size: var(--t-sm); color: var(--dim); text-decoration: none; }
footer nav a:hover { color: var(--ivory); }

