.site-footer {
  width: min(100%, 810px);
  margin: 24px auto 0;
  padding-top: 12px;
  border-top: 1px solid #ccdfd4;
}

.site-footer nav {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 16px;
}

.site-footer a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  color: #125843;
  font-size: .9rem;
}

.site-footer a[aria-current="page"] {
  font-weight: 700;
}

.age-card .site-footer {
  margin-top: 16px;
}

.info-card {
  box-sizing: border-box;
  max-width: 810px;
  margin: 20px auto 0;
  padding: clamp(18px, 5vw, 38px);
  border: 1px solid #ccdfd4;
  border-radius: 18px;
  background: #fff;
  overflow-wrap: anywhere;
}

.info-card h1 {
  margin: 0 0 16px;
}

.info-card h2 {
  margin-bottom: 6px;
  font-size: 1.15rem;
}

.info-card h2 + p {
  margin-top: 0;
}

.info-card details,
.info-card article + article {
  border-top: 1px solid #d8e6de;
  padding-top: 12px;
}

.info-card details {
  margin-top: 12px;
}

.info-card summary {
  cursor: pointer;
  font-weight: 700;
}
