/* Shared by the store-facing documents. No scripts, external fonts or remote assets. */
:root {
  color-scheme: light dark;
  --night: #0d1626;
  --paper: #f2e8d5;
  --ink: #272b32;
  --muted: #5c5c58;
  --brass: #c9a15a;
  --link: #70501d;
  --line: #cbbb9a;
  --panel: #e9dec8;
  --serif: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;
  font: 17px/1.75 var(--serif);
  background: var(--paper);
  color: var(--ink);
}
* { box-sizing: border-box; }
body { margin: 0; }
a { color: var(--link); text-underline-offset: 4px; text-decoration-thickness: 1px; overflow-wrap: anywhere; }
a:hover { text-decoration-thickness: 2px; }
a:focus-visible { outline: 2px solid currentColor; outline-offset: 5px; border-radius: 2px; }
.skip { position: absolute; top: -100px; left: 16px; padding: 8px 16px; background: var(--paper); z-index: 1; }
.skip:focus { top: 12px; }
header {
  background: radial-gradient(ellipse at 85% 0%, #203f4b 0%, transparent 65%), var(--night);
  color: #f2e8d5;
  border-bottom: 3px solid var(--brass);
}
header nav { max-width: 1040px; margin: auto; padding: 22px 32px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
header a { color: #e8cf94; }
header nav > a:last-child { font-size: 14px; }
.wordmark { font-size: 26px; letter-spacing: -.035em; text-decoration: none; }
.masthead { max-width: 800px; margin: auto; padding: 45px 32px 54px; }
.eyebrow { font: 600 11px/1.5 system-ui, sans-serif; text-transform: uppercase; letter-spacing: .18em; }
header .eyebrow { color: #e8cf94; }
h1 { font-size: clamp(40px, 7vw, 58px); font-weight: 400; letter-spacing: -.035em; line-height: 1.12; margin: 18px 0; }
.lead { max-width: 34em; font-size: 19px; line-height: 1.55; margin: 0; color: #d4cfbf; }
main { max-width: 800px; margin: auto; padding: 34px 32px 24px; }
p { margin: 0 0 20px; }
main > p:first-child { font-size: 14px; line-height: 1.8; color: var(--muted); padding-bottom: 24px; border-bottom: 1px solid var(--line); }
h2 { font-size: 28px; font-weight: 400; line-height: 1.25; letter-spacing: -.02em; margin: 42px 0 18px; scroll-margin-top: 24px; }
h3 { font-size: 20px; line-height: 1.4; font-weight: 600; margin: 28px 0 8px; }
ul { padding-left: 22px; margin: 0 0 26px; }
li { padding-left: 4px; margin-bottom: 12px; }
li::marker { color: var(--link); }
.table-wrap { margin: 24px 0; }
table { width: 100%; border-collapse: collapse; font-size: 15px; line-height: 1.6; table-layout: fixed; }
th:first-child { width: 59%; }
th, td { text-align: left; vertical-align: top; padding: 14px 12px; border-bottom: 1px solid var(--line); overflow-wrap: anywhere; }
th { font: 600 11px/1.5 system-ui, sans-serif; text-transform: uppercase; letter-spacing: .12em; color: var(--muted); }
th:first-child, td:first-child { padding-left: 0; }
th:last-child, td:last-child { padding-right: 0; }
.callout { background: var(--panel); border: 1px solid var(--line); border-top: 3px solid var(--brass); padding: 28px; margin: 0 0 36px; }
.callout .eyebrow { margin-bottom: 12px; color: var(--link); }
.callout h2 { margin-top: 0; }
.callout p:last-child { margin-bottom: 0; }
.closing { margin-top: 36px; padding-top: 26px; border-top: 1px solid var(--line); }
footer { max-width: 736px; margin: 30px auto 0; padding: 24px 0 44px; border-top: 1px solid var(--line); font-size: 13px; color: var(--muted); }
footer nav { display: flex; gap: 24px; flex-wrap: wrap; margin-bottom: 24px; }
footer p { margin: 0; }
footer [aria-current] { text-decoration: none; color: var(--ink); }
@media (prefers-color-scheme: dark) {
  :root { --paper: #101b2b; --ink: #e6dec9; --muted: #b9b3a6; --link: #e8cf94; --line: #48505a; --panel: #182638; }
}
@media (max-width: 520px) {
  :root { font-size: 16px; }
  header nav { padding: 18px 22px; }
  .wordmark { font-size: 24px; }
  header nav > a:last-child { font-size: 12px; }
  .masthead { padding: 32px 22px 38px; }
  .lead { font-size: 18px; }
  main { padding: 28px 22px 16px; }
  h2 { font-size: 26px; }
  .callout { padding: 22px; }
  table { font-size: 14px; }
  th, td { padding: 12px 8px; }
  footer { margin: 24px 22px 0; }
}
@media print {
  :root { --paper: white; --ink: black; --muted: #333; --link: #333; --panel: white; }
  header { background: white; color: black; }
  header a, header .eyebrow, .lead { color: #333; }
  header nav, footer nav { display: none; }
  .masthead { padding-top: 0; padding-bottom: 20px; }
}
