:root {
  --ingenii-blue: #1a3a5c;
  --ingenii-accent: #2e7fc1;
}

body {
  font-family: 'Inter', sans-serif;
  color: #212529;
}

/* Navbar */
.bg-ingenii { background-color: var(--ingenii-blue) !important; }

.navbar-dark .navbar-nav .nav-link {
  color: rgba(255,255,255,.85);
  font-size: .9rem;
  font-weight: 500;
  padding: .5rem 1rem;
  transition: color .2s;
}
.navbar-dark .navbar-nav .nav-link:hover { color: #fff; }

/* Hero */
.hero-section {
  min-height: 520px;
  background: linear-gradient(135deg, #f8fafc 0%, #e8f4fd 100%);
  border-bottom: 1px solid #dee2e6;
}

/* Accent color */
.text-accent { color: var(--ingenii-accent) !important; }
.border-accent { border-color: var(--ingenii-accent) !important; }
.bg-accent { background-color: var(--ingenii-accent) !important; }

/* Buttons */
.btn-ingenii {
  background-color: var(--ingenii-blue);
  color: #fff;
  border: none;
}
.btn-ingenii:hover {
  background-color: var(--ingenii-accent);
  color: #fff;
}

/* Cards */
.hover-card {
  transition: transform .2s, box-shadow .2s;
}
.hover-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 24px rgba(0,0,0,.1) !important;
}

/* Letter spacing utility */
.letter-spacing { letter-spacing: .08em; }

/* Publication border accent */
.border-accent { border-color: var(--ingenii-accent) !important; }

/* Responsive hero */
@media (max-width: 768px) {
  .hero-section { min-height: auto; }
}
