:root {
  /* Core neutrals */
  --c-black: #1F2933;
  --c-grey-darker: #374151;
  --c-grey-dark: #4B5563;
  --c-grey: #6B7280;
  --c-grey-light: #D1D5DB;
  --c-grey-lighter: #E5E7EB;
  --c-grey-lightest: #F9FAFB;
  --c-white: #ffffff;

  /* Softer farmland greens */
  --c-farmland-green: #5F7F6A;        /* muted sage green */
  --c-farmland-green-dark: #4A6556;   /* softened dark green */
  --c-farmland-green-light: #EEF4F0;  /* very light sage */

  /* Brand roles */
  --c-primary: var(--c-white);
  --c-action: var(--c-farmland-green);
  --c-background: var(--c-white);
  --c-pale-background: var(--c-farmland-green-light);

  --c-positive: #4FA57A;
  --c-negative: #DC2626;

  --c-text-dark: var(--c-black);
  --c-text: var(--c-grey-dark);
  --c-text-light: var(--c-white);

  /* Page */
  --page-background-color: var(--c-background);

  /* Buttons */
  --primary-button-background-color: var(--c-action);
  --primary-button-color: var(--c-white);
  --button-border-radius: 4px;
  --c-icon: var(--c-action);

  /* Links */
  --link: var(--c-farmland-green);
  --link-hover: var(--c-farmland-green-dark);
  --link-active: var(--c-farmland-green-dark);

  /* Info bar */
  --info-bar-background-color: var(--c-farmland-green-dark);
  --info-bar-announce-background-color: var(--c-farmland-green);
  --info-bar-announce-text-color: var(--c-white);
  --info-bar-text-color: var(--c-white);
  --info-bar-link-color: var(--c-white);

  /* Navigation */
  --nav-background-color: var(--c-white);
  --nav-text-color: var(--c-black);
  --nav-button-background-color: var(--c-action);
  --nav-button-border-color: var(--c-action);
  --nav-button-text-color: var(--c-white);
  --nav-link-color: var(--c-black);
  --nav-shadow-color: rgba(0, 0, 0, 0.05);

  /* Hero */
  --hero-background-color: var(--c-white);
  --hero-title-color: var(--c-black);
  --hero-text-color: var(--c-grey-dark);
  --hero-button-background-color: var(--c-action);
  --hero-button-border-color: var(--c-action);
  --hero-button-text-color: var(--c-white);
  --hero-secondary-button-text-color: var(--c-farmland-green);
  --hero-secondary-button-border-color: var(--c-farmland-green);

  /* Hero selling points */
  --hero-benefits-background-color: var(--c-farmland-green);
  --hero-benefits-text-color: var(--c-white);
  --hero-benefits-icon-color: var(--c-white);

  /* Callout */
  --callout-background-color: var(--c-farmland-green-dark);
  --callout-text-color: var(--c-white);

  /* Feature sections */
  --feature-section-button-background-color: var(--c-action);
  --feature-section-button-border-color: var(--c-action);
  --feature-section-button-text-color: var(--c-white);

  /* How it works */
  --how-it-works-background-color: var(--c-farmland-green-light);
  --how-it-works-title-color: var(--c-black);
  --how-it-works-number-color: var(--c-farmland-green);
  --how-it-works-subtitle-color: var(--c-farmland-green);
  --how-it-works-text-color: var(--c-grey-dark);

  /* Reviews */
  --review-section-star-icons: var(--c-farmland-green);
  --reviews-section-button-background: var(--c-white);
  --reviews-section-button-border: var(--c-grey-lighter);
  --reviews-section-button-text: var(--c-farmland-green);

  /* Footer banner */
  --footer-banner-background-color: var(--c-farmland-green);
  --footer-banner-title-color: var(--c-white);
  --footer-banner-text-color: var(--c-white);
  --footer-banner-button-background-color: var(--c-white);
  --footer-banner-button-text-color: var(--c-farmland-green);

  /* Footer */
  --footer-background-color: var(--c-farmland-green-dark);
  --footer-text-color: var(--c-grey-light);
  --footer-link-color: var(--c-white);

  --border-color: rgba(0, 0, 0, 0.08);
}
