:root {
  --primary:        #1B9B4A;
  --secondary:      #766449;
  --accent:         #D4442A;
  --background:     #F5F7F5;
  --surface:        #FFFFFF;
  --text-primary:   #1A1A1A;
  --text-secondary: #5A5040;
  --border:         #C4B9A8;
  --radius:         8px;
  --shadow:         0 4px 16px rgba(0,0,0,0.08);
  --font-heading:   'Oswald', sans-serif;
  --font-body:      'Open Sans', sans-serif;
}
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body { font-family: var(--font-body); background: var(--background); color: var(--text-primary); line-height: 1.6; overflow-x: hidden; }
.container { max-width: 1280px; margin: 0 auto; padding: 0 24px; }
.btn { display: inline-flex; align-items: center; gap: 8px; padding: 10px 20px; border-radius: var(--radius); font-weight: 600; border: none; cursor: pointer; }
.btn-primary { background: var(--primary); color: #fff; }
.btn-secondary { background: transparent; color: var(--primary); border: 2px solid var(--primary); }
.card { background: #fff; border-radius: var(--radius); box-shadow: var(--shadow); padding: 24px; }
.section { padding: 80px 24px; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }
a { color: inherit; text-decoration: none; }
:root {
  --color-primary:        var(--primary);
  --color-primary-dark:   #157a3a;
  --color-secondary:      var(--secondary);
  --color-accent:         var(--accent);
  --color-accent-dark:    #b3361f;
  --color-background:     var(--background);
  --color-surface:        var(--surface);
  --color-text-primary:   var(--text-primary);
  --color-text-secondary: var(--text-secondary);
  --color-border:         var(--border);
  --color-forest:         #1A3A2A;
  --color-charcoal:       #1A1A1A;
  --radius-md:            var(--radius);
  --radius-lg:            16px;
  --shadow-lg:            0 8px 32px rgba(0,0,0,0.12);
}

.navbar .nav-active {
  color: var(--color-primary);
  border-bottom: 2px solid var(--color-primary);
  padding-bottom: 4px;
}
