@import url('https://fonts.googleapis.com/css2?family=Nunito+Sans:ital,opsz,wght@0,6..12,300;0,6..12,400;0,6..12,600;0,6..12,700;1,6..12,400&display=swap');

:root {
  --brand: #6DC043;
  --brand-dark: #4A9A2A;
  --text-dark: #295B20;
  --forest: #1A3D13;
  --pale: #EDF7E6;
  --bg-scene: #F7F9F5;
  --mid-green: #4A9A2A;
  --light-green: #90CF67;
  --pale-green: #D2EDBC;
  --text-body: #4A5445;
  --text-muted: #A8B4A0;
  --border: #E8EDE3;
  --white: #FFFFFF;
  --gold: #B89B28;
  --shadow-card: 0 2px 12px rgba(26, 61, 19, 0.06);

  --font-display: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  --font-body: 'Nunito Sans', 'Source Sans 3', -apple-system, sans-serif;
}

*, *::before, *::after {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: var(--font-body) !important;
  color: var(--forest);
  background: var(--white);
  overflow-x: hidden;
}

/* Override Flatsome body font */
body,
p,
li,
span,
a,
input,
textarea,
button,
select {
  font-family: var(--font-body) !important;
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-display) !important;
}

.esgreen-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 32px;
}

.section-tag {
  font-size: 11px;
  letter-spacing: 3px;
  font-weight: 700;
  color: var(--brand);
  text-transform: uppercase;
  margin-bottom: 16px;
  display: block;
}

.section-title {
  font-family: var(--font-display) !important;
  font-weight: 700;
  font-size: clamp(28px, 3.5vw, 42px);
  line-height: 1.2;
  color: var(--forest);
  margin-bottom: 16px;
}

.section-desc {
  font-size: 15px;
  color: var(--text-body);
  line-height: 1.8;
}
