:root {
  --page: #f5f3e7;   /* parchment */
  --ink:  #0b1d14;   /* deep evergreen text */
  --brand:     #166534; /* forest */
  --brand-700: #14532d; /* deeper forest */
  --brand-800: #0b4228; /* darkest accent */
  --muted:  #e7efe9; /* sage wash */
  --border: #d7e3db; /* soft stone */
}

/* Global surface & text */
body { background: var(--page); color: var(--ink); }

/* Map existing utilities */
.bg-slate-50   { background-color: var(--page) !important; }
.bg-slate-100  { background-color: var(--muted) !important; }
.bg-white      { background-color: #fbfaf5 !important; }   /* warm paper */
.text-slate-900{ color: var(--ink) !important; }

/* Borders */
.border-slate-200 { border-color: var(--border) !important; }
.border-indigo-200{ border-color: #bcd7c5 !important; }    /* sage border accent */

/* Brand accents */
.bg-indigo-600              { background-color: var(--brand) !important; }
.hover\:bg-indigo-700:hover { background-color: var(--brand-700) !important; }
.text-indigo-700            { color: var(--brand-800) !important; }
.hover\:text-indigo-600:hover { color: var(--brand) !important; }
.border-indigo-600          { border-color: var(--brand) !important; }

/* Hero gradient */
.from-indigo-50 {
  --tw-gradient-from: #e7efe9 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(231 239 233 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.to-white {
  --tw-gradient-to: #fbfaf5 var(--tw-gradient-to-position);
}

/* Carousel/card shadows */
.shadow, .shadow-md, .shadow-lg {
  box-shadow: 0 8px 20px rgb(16 37 27 / 6%) !important;
}
