/*
 * LGK Program Card — style.css
 * Layout: text trên (trái), 3 ảnh hàng ngang bên dưới
 */

.lgk-programs {
  padding: var(--lgk-space-7) 0;
}

/* ── Programs list: stacked cards ───────────────────────────────────────── */
.lgk-programs__list {
  display: flex;
  flex-direction: column;
  gap: var(--lgk-space-20);
  margin-top: var(--lgk-space-10);
}

/* ── Card: text trên (nửa chiều rộng), photos dưới full width ───────────── */
.lgk-pc {
  display: flex;
  flex-direction: column;
  gap: var(--lgk-space-6);
}

/* ── Text col: chiếm 50% ─────────────────────────────────────────────────── */
.lgk-pc__text-col {
  width: 40%;
  align-self: flex-start;
}

/* text-right: text canh phải */
.lgk-pc--reverse .lgk-pc__text-col {
  align-self: flex-end;
  text-align: left;
}

.lgk-pc__name {
  font-family: var(--lgk-font);
  font-weight: var(--lgk-weight-extra);
  font-size: var(--lgk-size-xl);
  color: var(--lgk-blue-900);
  line-height: 1.3;
  margin: 0 0 var(--lgk-space-3);
}

.lgk-pc__age {
  font-weight: var(--lgk-weight-bold);
  font-size: 0.85em;
  color: var(--lgk-blue-900);
  display: inline;
  margin-left: var(--lgk-space-2);
}

.lgk-pc__desc {
  font-family: var(--lgk-font);
  font-size: var(--lgk-size-md);
  font-weight: var(--lgk-weight-semi);
  color: #233CB2;
  line-height: var(--lgk-leading-loose);
  margin: 0;
}

/* ── Photos row: 3 cột đều nhau ─────────────────────────────────────────── */
.lgk-pc__photos {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: 1fr;
  gap: var(--lgk-space-4);
  min-width: 0;
}

.lgk-pc__photo-item {
  border-radius: var(--lgk-radius-md);
  overflow: hidden;
  background: var(--lgk-blue-100);
  aspect-ratio: 4 / 3;
}

.lgk-pc__photo-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
}

.lgk-pc__photo-item:hover img {
  transform: scale(1.04);
}

.lgk-pc__photo-placeholder {
  width: 100%;
  height: 100%;
  background: var(--lgk-blue-100);
}

/* ── Responsive ──────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
  .lgk-pc__text-col {
    width: 100%;
  }

  /* Photos: horizontal scroll slide 1.5 */
  .lgk-pc__photos {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    gap: var(--lgk-space-3);
    padding-bottom: var(--lgk-space-3);
    -ms-overflow-style: none;
    scrollbar-width: none;
  }

  .lgk-pc__photos::-webkit-scrollbar {
    display: none;
  }

  .lgk-pc__photo-item {
    flex: 0 0 75%;
    scroll-snap-align: start;
    aspect-ratio: 4 / 3;
  }
}
