body {
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  line-height: 1.6;
  hyphens: auto;
  overflow-wrap: break-word;
  word-break: break-word;
  margin: 0;
  padding: 0;
}

.flow-text p,
.flow-text li,
.flow-text .card-text {
  text-align: justify;
  text-justify: inter-word;
  hyphens: auto;
  overflow-wrap: break-word;
}

.navbar-brand {
  font-weight: 700;
}

.navbar-nav .nav-link {
  padding-left: 1rem;
  padding-right: 1rem;
}

header {
  min-height: 100vh;
}

header h1,
header p,
header a {
  text-align: center;
}

section h2 {
  font-weight: 700;
  margin-bottom: 1.5rem;
  text-align: left;
}

.card {
  border: none;
  border-radius: 0.75rem;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
}

.card-title {
  font-weight: 600;
  margin-bottom: 0.75rem;
}

.card-text {
  font-size: 0.95rem;
}

form .form-control,
form .form-select {
  border-radius: 0.5rem;
}

form button[type="submit"] {
  padding: 0.75rem 1.5rem;
  font-weight: 600;
  border-radius: 0.5rem;
}

@media (max-width: 768px) {
  header h1 {
    font-size: 2.25rem;
  }

  header p.lead {
    font-size: 1.1rem;
  }

  .navbar-nav .nav-link {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
}
