/* ===== Zephyr Bootcamp (homepage) ===== */
.bootcamp-feature {
  background: linear-gradient(180deg, rgba(0, 60, 200, 0.25), rgba(0, 20, 120, 0.25));
  padding: 3.5rem 5vw;
  color: #fff;
}

.bootcamp-wrap {
  max-width: 1100px;
  margin: 0 auto;
}

.bootcamp-feature .section-title {
  text-align: center;
  margin: 0 0 .5rem 0;            /* keep consistent with other titles */
}

.bootcamp-kicker {
  text-align: center;
  color: #bfefff;
  margin: 0 0 1.5rem 0;
  font-size: 1.05rem;
  letter-spacing: .02em;
}

.bootcamp-grid {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 2rem;
  align-items: start;
}

@media (max-width: 900px) {
  .bootcamp-grid { grid-template-columns: 1fr; }
}

/* left column */
.bootcamp-text p {
  margin: 0 0 .9rem 0;
  color: #e6f4ff;
}
.bootcamp-bullets {
  list-style: none;
  padding: 0;
  margin: .25rem 0 1.2rem 0;
}
.bootcamp-bullets li {
  position: relative;
  padding-left: 1.2rem;
  margin: .45rem 0;
}
.bootcamp-bullets li::before {
  content: "✓";
  position: absolute; left: 0; top: 0;
  color: #23b2ff; font-weight: 700;
}
.bootcamp-cta { display: flex; gap: .8rem; flex-wrap: wrap; }

/* right column: speakers */
.bootcamp-speakers {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .9rem;
}
@media (max-width: 520px) {
  .bootcamp-speakers { grid-template-columns: 1fr 1fr; }
}

.speaker-card {
  margin: 0;
  border: 1px solid rgba(122,213,255,.35);
  border-radius: .5rem;
  background: rgba(255,255,255,.03);
  overflow: hidden;
  text-align: center;
}
.speaker-card img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 5;          /* honors 320x400 ratio, prevents layout shift */
  object-fit: cover;
}
.speaker-card figcaption {
  padding: .55rem .6rem;
  font-weight: 700;
  color: #ffffff;
}
