/* PDF Search — "ranked light" theme for every page of the site (loaded after /assets/site.css).
   The icon's vermilion and graphite, and the yellow of the app's own search highlights. */
:root {
  --ps-ink: #16171b; --ps-graphite: #202127; --ps-carbon: #2c2d34;
  --ps-vermilion: #e23e2c; --ps-ember: #9a1d10; --ps-coral: #ff815d; --ps-marker: #ffd640;
  --ps-paper: #fbf9f6; --ps-paper-2: #f3efe9; --ps-sheet: #ffffff;
  --bg: var(--ps-paper); --bg-soft: var(--ps-paper-2); --bg-card: var(--ps-sheet);
  --text: var(--ps-ink); --text-2: #4c4d55; --text-3: #8a8b93;
  --line: rgba(22,23,27,.09); --nav-bg: rgba(251,249,246,.78);
  --accent: var(--ps-vermilion); --accent-2: var(--ps-ember);
  --shadow-sm: 0 1px 1px rgba(22,23,27,.05), 0 8px 22px -10px rgba(22,23,27,.22);
  --shadow-lg: 0 2px 3px rgba(22,23,27,.05), 0 40px 80px -28px rgba(22,23,27,.40);
  color-scheme: light;
}
body { background: var(--ps-paper); }
.display, .h1, .h2 { letter-spacing: -0.03em; }
.display { font-weight: 800; }
.eyebrow { letter-spacing: .16em; text-transform: uppercase; font-size: 12.5px; font-weight: 800; color: var(--ps-vermilion); }
.grad-text { background: linear-gradient(100deg, var(--ps-coral), var(--ps-vermilion) 50%, var(--ps-ember)); -webkit-background-clip: text; background-clip: text; color: transparent; }
mark, .hl { background: linear-gradient(104deg, transparent 0 2%, color-mix(in srgb, var(--ps-marker) 88%, transparent) 3% 96%, transparent 97%);
  color: inherit; padding: 0 .12em; border-radius: .18em; -webkit-box-decoration-break: clone; box-decoration-break: clone; }
.nav { border-bottom: 1px solid var(--line); }
.brand span { font-weight: 800; letter-spacing: -.01em; }
.nav-cta { background: linear-gradient(100deg, var(--ps-vermilion), var(--ps-ember)); color: #fff !important; box-shadow: 0 8px 20px -8px rgba(226,62,44,.7); }
.btn-primary { background: linear-gradient(100deg, var(--ps-vermilion), var(--ps-ember)); color: #fff; box-shadow: 0 10px 24px -10px rgba(226,62,44,.8); }
.soft { background: var(--ps-paper-2); }
.card, .faq details, .contact-form { background: var(--ps-sheet); border-color: var(--line); }
.page-head .h1 { font-size: clamp(38px, 5.4vw, 64px); }
.page-head .h1::after { content: ""; display: block; width: 72px; height: 10px; margin-top: 14px; border-radius: 3px; transform: rotate(-1.5deg);
  background: color-mix(in srgb, var(--ps-marker) 90%, transparent); }
.prose a { text-decoration: underline; text-decoration-color: color-mix(in srgb, var(--ps-vermilion) 35%, transparent); text-underline-offset: 3px; }
.prose .callout { background: var(--ps-sheet); border: 1px solid var(--line); border-left: 4px solid var(--ps-vermilion); border-radius: 12px; padding: 14px 18px; }
.prose img { border-radius: 14px; box-shadow: var(--shadow-sm); }
.toc a.active { color: var(--ps-vermilion); }
.footer { background: var(--ps-paper-2); }
::selection { background: color-mix(in srgb, var(--ps-marker) 75%, transparent); }
