/* Base defaults shared across pages */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Outfit:wght@700;800&display=swap');
:root{
  --color-primary: #0066CC;
  --color-primary-dark: #003D7A;
  --color-gray-50: #F9FAFB;
  --color-gray-100: #F3F4F6;
  --color-gray-200: #E5E7EB;
  --color-gray-400: #9CA3AF;
  --color-gray-600: #4B5563;
  --color-gray-900: #111827;
  --font-display: 'Outfit', sans-serif;
  --font-body: 'Inter', sans-serif;
  --header-height: 80px; /* pages can override if needed */
}

/* sensible reset */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

html, body, #root { height: 100%; }

body {
  font-family: var(--font-body);
  color: var(--color-gray-900);
  background: #ffffff;
  padding-top: var(--header-height);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

img { max-width: 100%; height: auto; display: block; }

a { color: inherit; }

/* default container helper */
.container { max-width: 1200px; margin: 0 auto; padding: 0 2rem; }

/* anchor scrolling offset to avoid header overlap */
html { scroll-padding-top: calc(var(--header-height) + 8px); }
