/* ==========================================================
   Ashford & Vale Estates — Design Tokens
   Charcoal-green + brass premium real-estate theme (final)
   Enqueue this BEFORE style.css / components.css
   ========================================================== */

:root {
  /* Color — brand */
  --color-primary: #1F3B33;
  --color-primary-hover: #16281F;
  --color-accent: #B08D57;
  --color-accent-hover: #8F7143;

  /* Color — surfaces */
  --color-bg: #F7F4EE;
  --color-surface: #FFFFFF;
  --color-surface-alt: #F0EBE2;
  --color-border: #E1DACD;

  /* Color — text */
  --color-text-primary: #1A1D1B;
  --color-text-secondary: #5B6058;
  --color-text-inverse: #F7F4EE;

  /* Legacy mappings compatibility */
  --color-bg-main: var(--color-bg);
  --color-bg-surface: var(--color-surface);
  --color-bg-alt: var(--color-surface-alt);
  --color-text-main: var(--color-text-primary);
  --color-text-muted: var(--color-text-secondary);
  --font-serif: var(--font-display);
  --font-sans: var(--font-body);

  /* Color — semantic / status */
  --color-success: #4C7A5E;
  --color-warning: #C79A3C;      /* Under Offer */
  --color-error: #A24A3B;        /* Sold */
  --color-info: #3E6E8E;         /* To Let */
  --color-status-forsale: #3E7457; /* For Sale */

  --color-focus: #B08D57;
  --color-overlay: rgba(26, 29, 27, 0.55);
  --color-disabled: #C9C4B8;

  /* Typography */
  --font-display: 'Fraunces', 'Playfair Display', Georgia, serif;   /* headings, price */
  --font-body: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;    /* body, UI, labels */

  /* Spacing (base unit 4px) */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 48px;
  --space-8: 64px;
  --space-9: 96px;

  /* Layout */
  --container-max: 1280px;
  --container-padding: 24px;
  --grid-gap: 24px;
  --header-height: 76px;

  /* Breakpoints (reference only — use in media queries manually) */
  --bp-sm: 480px;
  --bp-md: 768px;
  --bp-lg: 1024px;
  --bp-xl: 1280px;

  /* Radius */
  --radius-sm: 6px;   /* inputs, chips */
  --radius-md: 12px;  /* cards */
  --radius-lg: 20px;  /* hero panels, modals */
  --border-width: 1px;

  /* Shadow */
  --shadow-card: 0 1px 3px rgba(26, 29, 27, 0.06), 0 1px 2px rgba(26, 29, 27, 0.04);
  --shadow-card-hover: 0 8px 24px rgba(26, 29, 27, 0.10);
  --shadow-modal: 0 20px 48px rgba(26, 29, 27, 0.24);

  /* Motion */
  --duration-fast: 120ms;
  --duration-base: 220ms;
  --duration-slow: 400ms;
  --ease-standard: cubic-bezier(0.4, 0, 0.2, 1);
  --ease-emphasized: cubic-bezier(0.2, 0, 0, 1);
}

/* Dark mode (future-proofing — not required for the current brief) */
[data-theme="dark"] {
  --color-bg: #14201B;
  --color-surface: #1B2A23;
  --color-surface-alt: #20302A;
  --color-border: #2E4038;
  --color-text-primary: #F2EEE4;
  --color-text-secondary: #B7BEB6;
  --color-accent: #C9A468;
}

/* Respect reduced-motion preference */
@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0.001ms !important;
    transition-duration: 0.001ms !important;
  }
}

/* ==========================================================
   Status pill helper classes — use with template-parts/property/card.php
   ========================================================== */
.status-pill { border-radius: 20px; padding: 4px 10px; font-size: 12px; font-weight: 500; display: inline-block; }
.status-pill--forsale { background: rgba(62, 116, 87, 0.12); color: var(--color-status-forsale); }
.status-pill--underoffer { background: rgba(199, 154, 60, 0.12); color: var(--color-warning); }
.status-pill--sold { background: rgba(162, 74, 59, 0.12); color: var(--color-error); }
.status-pill--tolet { background: rgba(62, 110, 142, 0.12); color: var(--color-info); }
