/* PetGuard — design tokens. Fixed brand palette, sampled directly from
   web/static/images/logo.png (pixel-sampled, not eyeballed): navy from the
   "Pet" wordmark/collars (#032648–#05385a) and teal from the "Guard"
   wordmark/shield/glow (#088690–#0ea0a0). Not theme-adaptive on purpose:
   this is the product's own identity, not a host page that should borrow a
   viewer's dark/light mode. */

:root {
  --pg-bg: #ffffff;
  --pg-surface: #ffffff;
  --pg-surface-warm: #eef3f6;

  --pg-ink: #16232b;
  --pg-ink-soft: #4c6472;
  --pg-ink-faint: #8ca0a8;

  --pg-primary: #0f4c73;
  --pg-primary-deep: #082e47;
  --pg-primary-tint: #dce7ee;

  --pg-teal: #0c93a0;
  --pg-teal-tint: #dcf1f1;

  --pg-alert: #c1421c;
  --pg-alert-deep: #872c10;
  --pg-alert-tint: #f6ded2;

  --pg-radius-sm: 10px;
  --pg-radius-md: 18px;
  --pg-radius-lg: 28px;
  --pg-radius-pill: 100px;

  --pg-shadow-tight: 0 6px 16px -8px rgba(22, 35, 43, 0.14);
  --pg-shadow-soft: 0 14px 30px -12px rgba(22, 35, 43, 0.24);

  --pg-font-display: "Instrument Serif", Georgia, serif;
  --pg-font-body: "Onest", system-ui, -apple-system, sans-serif;
}

* {
  box-sizing: border-box;
}

html,
body {
  margin: 0;
  padding: 0;
}

body {
  background: var(--pg-bg);
  color: var(--pg-ink);
  font-family: var(--pg-font-body);
  font-size: 15px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}

h1,
h2,
h3 {
  font-family: var(--pg-font-display);
  font-weight: 400;
  margin: 0;
}

a {
  color: var(--pg-teal);
  text-decoration: none;
}

a:hover {
  color: var(--pg-primary-deep);
}

img {
  max-width: 100%;
}

button {
  font-family: var(--pg-font-body);
}
