:root {
  color-scheme: dark;
  --ppd-bg: #09524f;
  --ppd-panel: #074542;
  --ppd-deep: #063b38;
  --ppd-text: #fff;
  --ppd-muted: #c7dfdc;
  --ppd-line: #528580;
  --ppd-mono: ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;
  --ppd-gap: clamp(4rem, 8vw, 8rem);
}
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 2rem; }
body { margin: 0; background: var(--ppd-bg); color: var(--ppd-text); font: 400 1rem/1.6 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
body, main, section, aside, nav, div { min-width: 0; }
::selection { color: var(--ppd-deep); background: #e3efed; }
button, input, a { -webkit-tap-highlight-color: #c7dfdc55; }
a { color: inherit; text-underline-offset: .25em; text-decoration-thickness: 1px; }
a:hover { text-decoration-thickness: 2px; }
a:focus-visible { outline: 3px solid #fff; outline-offset: 4px; border-radius: 2px; }
img { max-width: 100%; }
h1, h2, h3, p, figure { margin: 0; }
h1, h2, h3 { text-align: left; }
h1 { font-size: 2.25rem; font-weight: 700; letter-spacing: -.03em; line-height: 1.08; }
h2 { font-size: 1.5rem; font-weight: 700; letter-spacing: -.02em; line-height: 1.2; }
h3 { font-size: 1.125rem; font-weight: 600; line-height: 1.4; }
p { max-width: 72ch; }
p + p { margin-top: 1rem; }
[hidden] { display: none !important; }
.ppd-container { width: min(100%, 1280px); padding-inline: 1.5rem; margin-inline: auto; }
.ppd-eyebrow { font-family: var(--ppd-mono); font-size: 1rem; font-weight: 500; line-height: 1.5; color: var(--ppd-muted); }
.ppd-stamp { font-family: var(--ppd-mono); font-size: 1rem; color: var(--ppd-muted); }
.ppd-link { display: inline-flex; align-items: center; justify-content: space-between; gap: 1.5rem; min-height: 48px; padding: .75rem 1rem; border: 1px solid var(--ppd-line); border-radius: 8px; margin-top: 1.5rem; font-size: 1rem; font-weight: 500; text-decoration: none; }
.ppd-link--primary { color: var(--ppd-bg); background: #fff; border-color: #fff; }
.ppd-link:hover { background: var(--ppd-deep); color: #fff; border-color: #fff; }
.ppd-link span { font-family: var(--ppd-mono); }
.ppd-skip { position: absolute; left: 1.5rem; top: -8rem; z-index: 10; background: white; color: var(--ppd-deep); padding: 1rem; min-height: 48px; }
.ppd-skip:focus { top: 1rem; }
.ppd-progress { position: fixed; top: 0; left: 0; z-index: 20; display: block; width: 100%; height: 3px; border: 0; appearance: none; background: transparent; color: #c7dfdc; pointer-events: none; }
.ppd-progress::-webkit-progress-bar { background: transparent; }
.ppd-progress::-webkit-progress-value { background: #c7dfdc; }
.ppd-progress::-moz-progress-bar { background: #c7dfdc; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
@media print {
  :root { --ppd-bg: #fff; --ppd-panel: #fff; --ppd-deep: #fff; --ppd-text: #111; --ppd-muted: #333; --ppd-line: #777; }
  html { color-scheme: light; }
  body { color: #111; background: white; }
  .ppd-container { width: 100%; padding: 0; }
  .ppd-progress, .ppd-skip, .ppd-masthead, .ppd-rail, .ppd-atmosphere, .ppd-next, .ppd-footer__nav, .ppd-hero__cue, .ppd-hero .ppd-link { display: none !important; }
  a { color: #111; }
  h1, h2, h3 { break-after: avoid; }
  p { orphans: 3; widows: 3; }
}
