:root {
  /* Palette 3: Forest Green & Regal Purple */
  --primary-color: #337357;       /* Forest Green */
  --secondary-color: #59057B;     /* Deep Purple */
  --accent-color: #5CB338;        /* Light Green */
  --light-color: #FEFAE0;         /* Cream/Off-white */
  --dark-color: #0F0766;          /* Dark Navy */
  --hover-color: #265540;         /* Darker Green */
  --background-color: #F5F5F5;    /* Light Grey */
  --text-color: #333333;
  --highlight-color: #F39C12;     /* Orange */
  --border-color: #A9B388;
  --divider-color: #A9B388;
  --shadow-color: rgba(51, 115, 87, 0.2);

  --font-heading: 'Oswald', sans-serif;
  --font-text: 'Poppins', sans-serif;
}

body {
  font-family: var(--font-text);
  background-color: var(--background-color);
  color: var(--text-color);
  background-image: radial-gradient(#A9B388 0.5px, transparent 0.5px);
  background-size: 20px 20px;
}

h1, h2, h3 {
  font-family: var(--font-heading);
  text-transform: uppercase;
}

.card-shadow {
  box-shadow: 0 10px 25px -5px var(--shadow-color);
}

.btn-nature {
  background-color: var(--primary-color);
  color: white;
  border-bottom: 4px solid var(--hover-color);
}
.btn-nature:hover {
  transform: translateY(1px);
  border-bottom-width: 2px;
  background-color: var(--hover-color);
}

.text-highlight-marker {
  background-color: var(--highlight-color);
  color: white;
  padding: 0 4px;
  border-radius: 2px;
}

/* Organic blobs for background */
.bg-blob {
  position: absolute;
  z-index: 0;
  fill: var(--accent-color);
  opacity: 0.1;
}