
/* ===== Brand Tokens ===== */
:root{
  --brand-primary: #BFD043;         /* light green */
  --brand-primary-text: #0b2a1e;    /* dark text for contrast */
  --brand-dark: #1A5036;            /* dark green */
  --brand-dark-contrast: #ffffff;   /* text on dark background */
  --bg-subtle: #f7f9f4;             /* very light panel */
  --border-subtle: #e7eddc;         /* subtle border */
}

/* ===== Global ===== */
body { background-color:#fff; color:#1a1a1a; }

/* ===== Navbar ===== */
.navbar.brand-dark { background-color: var(--brand-dark) !important; }
.navbar.brand-dark .navbar-brand, .navbar.brand-dark .nav-link { color: var(--brand-dark-contrast) !important; opacity:.95; }
.navbar.brand-dark .nav-link:hover, .navbar.brand-dark .navbar-brand:hover { opacity:1; }

/* ===== Buttons (accessible contrast) ===== */
.btn, .btn-sm { border-radius:.5rem; }
.btn-sm { border-radius:.45rem; }

.btn-brand,
.btn-primary{
  --bs-btn-color: var(--brand-primary-text);
  --bs-btn-bg: var(--brand-primary);
  --bs-btn-border-color: var(--brand-primary);
  --bs-btn-hover-color: var(--brand-primary-text);
  --bs-btn-hover-bg: #aaca36;
  --bs-btn-hover-border-color: #a3c232;
  --bs-btn-active-bg: #9fbe30;
  --bs-btn-active-border-color: #99b72c;
  --bs-btn-focus-shadow-rgb: 191,208,67;
}

.btn-outline-brand,
.btn-outline-primary{
  --bs-btn-color: var(--brand-dark);
  --bs-btn-border-color: var(--brand-dark);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--brand-dark);
  --bs-btn-hover-border-color: var(--brand-dark);
  --bs-btn-active-bg: #16422b;
  --bs-btn-active-border-color: #16422b;
}

/* ===== Cards / Panels ===== */
.card{ border-radius:.75rem; border:1px solid #e9ecef; }
.card-contact{ border-left:4px solid var(--brand-primary); background:#fff; }
.section-subtle{ background:var(--bg-subtle); border:1px solid var(--border-subtle); border-radius:.75rem; }

/* ===== Badges (hashtags) ===== */
.badge-hash{ background:#eef6d0; color:var(--brand-dark); border:1px solid #e2eec1; font-weight:500; margin-right:.375rem; margin-bottom:.375rem; display:inline-block; padding:.4rem .55rem; border-radius:999px; text-decoration:none; }
a.badge-hash:hover{ background:#e6f0bc; text-decoration:none; }

/* ===== Forms ===== */
.form-control, .form-select { border-radius:.5rem; }
.form-control:focus, .form-select:focus { box-shadow:0 0 0 .2rem rgba(191,208,67,.25); border-color:#c6d76a; }

/* ===== Tables ===== */
.table thead th { background:var(--bg-subtle); border-bottom:2px solid var(--border-subtle); }

/* ===== Alerts ===== */
.alert{ border-radius:.75rem; }

/* ===== Links ===== */
a{ color:#0b5ed7; }
a:hover{ color:#0a58ca; }

/* ===== Responsive ===== */
@media (max-width:575.98px){ .navbar .nav-link{ padding-left:.5rem; } }
