/* -----------------------------------
   Typography
----------------------------------- */
h1,
h2,
h3,
h4 {
  font-weight: 600;
}

h1 {
  font-size: 2rem;
}
h2 {
  font-size: 1.75rem;
}
h3 {
  font-size: 1.5rem;
}
h4 {
  font-size: 1.25rem;
  font-weight: 500;
}

/* -----------------------------------
   Buttons (Shared Styles)
----------------------------------- */
.button-blue,
.button-yellow,
a.button-blue,
a.button-yellow {
  display: inline-block;
  color: #fff;
  padding: 12px 25px;
  text-decoration: none;
  border-radius: 5px;
  font-weight: 500;
  transition: background-color 0.3s;
}

/* Individual button colors */
.button-blue,
a.button-blue {
  background-color: #094e7c;
}

.button-blue:hover,
a.button-blue:hover {
  background-color: #0056b3;
}

.button-yellow,
a.button-yellow {
  background-color: #d8bc1b;
}

.button-yellow:hover,
a.button-yellow:hover {
  background-color: #c6a700;
}

/* -----------------------------------
   Page Structure
----------------------------------- */
.page-container {
  max-width: 1140px;
  margin: 0 auto;
  padding: 0 20px;
}

.section {
  padding: 10px 30px;
}

.section-alt {
  background-color: #f8f9fa;
}

.section-title {
  text-align: center;
  margin-bottom: 40px;
  font-size: 2.5rem;
  font-weight: 600;
}

.section-subtitle {
  text-align: center;
  margin-top: -30px;
  margin-bottom: 40px;
  font-size: 1.2rem;
  color: #6c757d;
}
