:root{
  --ek-dark:#111827;
  --ek-muted:#6b7280;
  --ek-light:#f8fafc;
  --ek-accent:#0f766e; /* teal */
  --ek-border:#e5e7eb;
}

body{ color: var(--ek-dark); }
.bg-ek-light{ background: var(--ek-light); }
.text-ek-muted{ color: var(--ek-muted); }
.btn-ek{ background: var(--ek-dark); color:#fff; border:0; }
.btn-ek:hover{ opacity:.92; color:#fff; }
.btn-ek-outline{ border:1px solid var(--ek-dark); color:var(--ek-dark); }
.btn-ek-outline:hover{ background:var(--ek-dark); color:#fff; }

.badge-ek{ background: rgba(15,118,110,.12); color: var(--ek-accent); border: 1px solid rgba(15,118,110,.25); }
.rounded-24{ border-radius: 24px; }
.shadow-soft{ box-shadow: 0 8px 24px rgba(17,24,39,.08); }
.section-pad{ padding: 72px 0; }

.navbar-brand{ letter-spacing:.2px; }
.small-note{ font-size:.9rem; color: var(--ek-muted); }

.footer-link a{ color: rgba(255,255,255,.75); text-decoration:none; }
.footer-link a:hover{ color:#fff; text-decoration:underline; }

.card-title{ letter-spacing:.1px; }

.hero-img{
  background: linear-gradient(135deg, rgba(15,118,110,.10), rgba(17,24,39,.06));
  border: 1px solid var(--ek-border);
}
