/* demo01 Prozon Test Harness — authoritative site-level design contract */
/* DIAGNOSTIC PALETTE: intentionally loud. Each site-level color role is visually distinct. */
:root {
  /* Site shell */
  --color-logo: #7a00cc;
  --color-header-footer-bg: #111111;
  --color-header-footer-text: #00ffff;
  --color-page-bg: #fff4a3;
  --color-nav-text: #ff69b4;
  --color-nav-hover: #00ff66;

  /* Prozon surfaces */
  --color-prozon-bg: #c9f7ff;
  --color-card-bg: #ffd1e8;
  --color-card-border: #ff0000;

  /* Semantic text */
  --color-eyebrow: #ff6600;
  --color-title: #7a00cc;
  --color-subtitle: #0057ff;
  --color-text: #171717;
  --color-link: #008f39;
  --color-link-hover: #ff1493;
  --color-accent: #ff8c00;
  --color-focus: #00b7ff;

  /* Inputs */
  --color-input-bg: #e8ff9e;
  --color-input-text: #4b0082;
  --color-input-border: #00a000;

  /* Regular buttons */
  --color-button-bg: #8cff66;
  --color-button-text: #102000;
  --color-button-border: #006400;

  /* CTA buttons */
  --color-cta-bg: #ffe600;
  --color-cta-text: #3b0066;
  --color-cta-border: #ff00aa;
  --color-cta-hover-bg: #ff00aa;
  --color-cta-hover-text: #ffffff;

  /* Three-font site system */
  --font-business-name: Georgia, 'Times New Roman', serif;
  --font-nav: Arial, Helvetica, sans-serif;
  --font-title: Georgia, 'Times New Roman', serif;
  --font-subtitle: Arial, Helvetica, sans-serif;
  --font-eyebrow: Arial, Helvetica, sans-serif;
  --font-body: 'Trebuchet MS', Arial, sans-serif;
  --font-text-small: 'Trebuchet MS', Arial, sans-serif;
  --font-button: Arial, Helvetica, sans-serif;
  --font-cta: Arial, Helvetica, sans-serif;

  /* Site typography sizes */
  --size-business-name: 2rem;
  --size-nav: 1rem;
  --size-title: clamp(1.8rem, 3vw, 2.7rem);
  --size-subtitle: 1.2rem;
  --size-eyebrow: .82rem;
  --size-body: 1rem;
  --size-text-small: .875rem;
  --size-button: .95rem;
  --size-cta-small: 1rem;

  /* Site character */
  --spacing: 1rem;
  --section-gap: 2.25rem;
  --radius-card: 14px;
  --radius-button: 8px;
  --radius-cta-small: 999px;
  --shadow-card: 0 8px 24px rgba(23, 50, 77, .12);
  --animation-duration: 220ms;

  /* Legitimate Prozon-specific behavior variables currently consumed */
  --prozon-calendar-month-step: 1;
  --prozon-calendar-fade-speed: 180ms;
  --prozon-content-editor-image-width: 260px;
  --prozon-content-overlay-opacity: .72;
}

html, body { margin: 0; min-height: 100%; background: var(--color-page-bg); color: var(--color-text); font-family: var(--font-body); font-size: var(--size-body); }
*, *::before, *::after { box-sizing: border-box; }
a { color: var(--color-link); }
a:hover { color: var(--color-link-hover); }
button, input, textarea, select { font: inherit; }
