/* "Groups Offered" cards (highsec) — Stage J token pass. Structure kept;
   colors routed through the brand tokens. */
.groups {
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100vh;
}
.groups-container {
  border-radius: var(--sj-r-card);
  background: var(--sj-veil), url('/media/static/highsec1.jpg') center / cover;
  width: 90%;
  max-width: 1200px;
  padding: clamp(28px, 4vw, 50px);
  margin: 0 auto 20px;
  text-align: center;
  box-shadow: var(--sj-shadow-2);
}
.groups-container .header {
  font-family: var(--sj-font-head);
  font-size: clamp(1.8em, 3.4vw, 3em);
  font-weight: 400;
  margin-bottom: 8px;
  color: #fff;
}
.groups-container .header::after {
  content: ""; display: block;
  width: 44px; height: 4px; border-radius: 2px;
  background: var(--sj-gold); margin: 14px auto 20px;
}
.groups-container .card {
  background: rgba(255, 255, 255, .06);
  border: 1px solid rgba(255, 255, 255, .18);
  border-radius: 12px;
  margin: 10px 0;
  padding: 20px;
  display: flex;
  align-items: center;
  transition: background var(--sj-t-fast) ease, transform var(--sj-t-fast) ease;
}
.groups-container .card:hover { background: rgba(255, 255, 255, .12); transform: translateY(-3px); }
.groups-container .card .card-icon {
  background-color: var(--sj-gold);
  border-radius: 50%;
  color: var(--sj-navy-dark);
  font-size: 1.4em;
  width: 50px;
  height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-right: 20px;
  flex: 0 0 auto;
}
.groups-container .card .card-content {
  margin-top: 10px;
  font-size: 19px;
  text-align: center;
  color: #fff;
}
.groups-container .card .card-content span {
  font-family: var(--sj-font-head);
  color: var(--sj-gold);
}
.groups-container .card .card-content p {
  font-family: var(--sj-font-body);
}
@media (max-width: 600px) {
  .groups-container .card { flex-direction: column; text-align: center; }
  .groups-container .card .card-icon { margin: 0 0 10px; }
}
