:root {
  --brand-dark: #111c55;
  --brand-violet: #4f46e5;
  --brand-teal: #40ddb6;
  --brand-light: #f5f5f5;
  --text-muted: #6c757d;
}

body {
  font-family: "Segoe UI", Arial, sans-serif;
  color: #1f2937;
}

.top-bar {
  background: var(--brand-dark);
  color: #ffffff;
}

.hero-overlay {
  background: rgba(17, 28, 85, 0.72);
}

.section-kicker {
  color: var(--brand-teal);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 0.78rem;
}

.btn-teal {
  background: var(--brand-teal);
  color: #111111;
  font-weight: 700;
  border: none;
}

.btn-teal:hover {
  background: #2dc9a3;
  color: #111111;
}

.btn-violet {
  background: var(--brand-violet);
  color: #ffffff;
  font-weight: 700;
  border: none;
}

.btn-violet:hover {
  background: #4338ca;
  color: #ffffff;
}

.bg-soft {
  background: var(--brand-light);
}

.feature-card {
  border: 1px solid #e5e7eb;
  border-radius: 0.75rem;
  background: #ffffff;
  height: 100%;
}

.service-card {
  border: 1px solid #e5e7eb;
  border-radius: 0.75rem;
  background: #ffffff;
  height: 100%;
}

.contact-block {
  background: #ffffff;
  border-radius: 0.75rem;
}

.footer-wrap {
  background: var(--brand-violet);
  color: #ffffff;
}

.logo-grid img {
  width: 100%;
  max-width: 150px;
  height: 70px;
  object-fit: contain;
  filter: grayscale(100%);
  opacity: 0.8;
}

.logo-grid img:hover {
  filter: grayscale(0%);
  opacity: 1;
}

.text-muted-custom {
  color: var(--text-muted);
}
