/* Business Checking Accounts Page
   Standardized to match the Personal Checking typography and spacing pattern:
   - 1280px content width
   - 20px desktop / 15px mobile side padding
   - Playfair Display for major headings
   - Arial/Helvetica for body copy
   - 2rem layout gap and consistent section rhythm
*/

.business-checking-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 2rem;
  margin: 2rem auto;
  max-width: 1280px;
  padding: 0 20px; /* match Personal Checking container breathing room */
  box-sizing: border-box;
}

.business-text {
  flex: 1 1 50%;
  min-width: 300px;
}

.business-text h1 {
  font-family: 'Playfair Display', Georgia, "Times New Roman", serif;
  font-size: 3.5rem;
  font-weight: 700;
  line-height: 1.1;
  color: #002d62;
  margin-bottom: 0.5rem;
}

.business-text h2,
.business-table h2 {
  font-family: 'Playfair Display', Georgia, "Times New Roman", serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.2;
  color: #002d62;
  margin-top: 2rem;
  margin-bottom: 0.5rem;
}

.business-text p,
.business-text li {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 1rem;
  line-height: 1.5;
  color: #222;
}

.business-text p {
  margin: 0.5rem 0 1rem 0;
}

.business-text ul {
  margin-left: 1.2rem;
  list-style: disc;
}

.business-table {
  flex: 1 1 40%;
  min-width: 280px;
}

/* Table styling kept functionally the same, but aligned to the Personal Checking typography */
.account-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed; /* ensures colgroup widths respected */
  font-family: Arial, Helvetica, sans-serif;
  font-size: 0.95rem;
  line-height: 1.4;
}

.account-table th {
  border: 1px solid #ccc;
  padding: 0.6rem;
  background-color: #002d62;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1rem;
  font-weight: 700;
  text-align: center;
  vertical-align: middle;
}

.account-table td {
  border: 1px solid #ccc;
  padding: 0.5rem;
  text-align: left;
  vertical-align: top;
  white-space: normal; /* allows text to wrap within the same cell */
  word-break: keep-all; /* prevent breaking words like "membership" */
}

/* Center numeric columns only */
.account-table td:nth-child(2),
.account-table td:nth-child(3),
.account-table td:nth-child(4) {
  text-align: center;
}

/* Column sizing */
.account-table colgroup col.account-col {
  width: 44%;
}

.account-table colgroup col.min-col {
  width: 18%;
}

.account-table tr:nth-child(even) {
  background-color: #f5f5f5;
}

.account-table small {
  color: #555;
  font-size: 0.8rem;
}

/* Footnotes */
.footnotes {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 0.85rem;
  font-style: italic;
  margin-top: 1.5rem;
  line-height: 1.4;
  grid-column: 1 / -1;
}

/* Responsive */
@media (max-width: 900px) {
  .business-checking-container {
    flex-direction: column;
    padding: 0 15px; /* tighter edge spacing on phones/tablets */
  }

  .business-text,
  .business-table {
    flex: 1 1 100%;
  }

  .business-text h1 {
    font-size: 2.6rem; /* preserve hierarchy without overwhelming mobile */
  }
}
