html {
  height: 100%;
}

body {
  font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  background-color: #ffffff;
  color: #0e0f10;
  line-height: 1.6;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

a {
  color: #1260f0;
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 600;
  color: #0e0f10;
}

/* ---------- Header ---------- */
header img,
.header-logo,
.logo-standard {
  max-width: 100%;
  height: auto;
}

@media (max-width: 576px) {
  header img,
  .header-logo,
  .logo-standard {
    width: 200px;
  }
}

/* ---------- Cards & components ---------- */
.card {
  border: 1px solid #e6eaf0;
  border-radius: 16px;
  background-color: #f8fafc;
}

.card-title {
  color: #12325c;
}

.alert-primary {
  border-radius: 12px;
  background-color: #eef4ff;
  color: #12325c;
}

footer {
  font-size: 0.95rem;
}

.text-muted {
  color: #5b6166 !important;
}

.bg-success {
  background-color: #1a7f37 !important;
}

@media (max-width: 576px) {
  h1 {
    font-size: 1.5rem;
  }
  .card {
    margin-bottom: 1rem;
  }
}

/* ---------- Temporary home page helpers ---------- */
.hero {
  padding: 56px 0 40px;
  text-align: center;
}

main {
  flex: 1 0 auto;
}

.lead-muted {
  color: #5b6166;
}

.cards {
  max-width: 980px;
  margin: 0 auto;
}

/* Optional: consistent logo sizing */
.header-logo {
  width: 320px;
  max-width: 100%;
  height: auto;
}

.logo-standard {
  width: 300px;
  max-width: 100%;
  height: auto;
}

@media (max-width: 576px) {
  .header-logo {
    width: 200px;
  }
}
