/* V16 első ütem — jóváhagyástól független layout- és működési javítások */

/* A hero-alany feje lejjebb kerül, így nem ütközik a középső közönségválasztóval. */
.hero-photo img { object-position: center top; }

/* Nyugodt, manuálisan lapozható portrésáv. */
.teacher-roster {
  display: flex;
  overflow-x: auto;
  overflow-y: hidden;
  gap: 12px;
  padding-bottom: 12px;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  scrollbar-width: none;
}
.teacher-roster::-webkit-scrollbar { display: none; }
.teacher-card,
.teacher-card:nth-child(1),
.teacher-card:nth-child(4),
.teacher-card:nth-child(6),
.teacher-card:nth-child(9),
.teacher-more {
  flex: 0 0 calc((100% - 48px) / 5);
  min-width: 0;
  scroll-snap-align: start;
}
.teacher-roster-controls {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 18px;
}
.teacher-roster-controls p { margin: 0; color: #777975; font-size: .82rem; }
.teacher-roster-controls div { display: flex; gap: 8px; }
.teacher-roster-controls button {
  width: 44px;
  height: 44px;
  border: 1px solid rgba(20,21,18,.16);
  border-radius: 50%;
  color: #171815;
  background: rgba(255,255,255,.7);
  font: inherit;
  cursor: pointer;
  transition: background .2s, transform .2s;
}
.teacher-roster-controls button:hover { background: #fff; transform: translateY(-1px); }
.teacher-roster-controls button:focus-visible { outline: 2px solid #171815; outline-offset: 3px; }

/* Eredeti ÉIM-fejprofil a számozás helyén. */
.challenge-mark {
  width: 30px;
  height: 30px;
  object-fit: contain;
  opacity: .62;
  filter: grayscale(1) brightness(1.8);
}
.challenge-card h3 { margin-top: 34px; }
.challenge-cta {
  width: max-content;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #f3f3ef;
  text-decoration: none;
  border-bottom: 1px solid rgba(255,255,255,.42);
  padding: 4px 0 7px;
  font-size: .95rem;
  font-weight: 500;
}
.challenge-cta:hover { border-bottom-color: #fff; }

/* A marketingtámogatás finom, nem harsány hangsúlya. */
.difference-row:nth-of-type(2) { border-color: rgba(255,255,255,.28); }
.difference-row:nth-of-type(2) .difference-index { background: rgba(255,255,255,.22); }
.difference-row:nth-of-type(2) .editorial-visual > img { content: normal; }

/* A jóváhagyott képek szekciónkénti fókuszpontjai. */
.difference-row:nth-of-type(1) .editorial-visual > img { object-position: 50% 48%; }
.difference-row:nth-of-type(2) .editorial-visual > img { object-position: 48% 50%; }
.difference-row:nth-of-type(3) .editorial-visual > img { object-position: 50% 48%; }
.video-cover img { object-position: center 54%; }
.feature-editorial-card:nth-child(1) figure img { object-position: 50% 38%; }
.feature-editorial-card:nth-child(2) figure img { object-position: 52% 44%; }
.feature-editorial-card:nth-child(3) figure img { object-position: 50% 50%; }

/* Zárókép és footer külön, normál dokumentumfolyamban. */
.closing-panel { overflow: visible; }
.closing-art {
  width: 100%;
  min-height: 0;
  max-height: none;
  aspect-ratio: 16 / 5;
  margin: 0;
  position: relative;
}
.closing-art img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 52%; }
.site-footer { position: relative; margin: 0; }

@media (max-width: 1024px) {
  .teacher-card,
  .teacher-card:nth-child(1),
  .teacher-card:nth-child(4),
  .teacher-card:nth-child(6),
  .teacher-card:nth-child(9),
  .teacher-more { flex-basis: calc((100% - 24px) / 3); }
}

@media (max-width: 700px) {
  .hero-photo img { object-position: 53% top; }
  .teacher-roster { display: flex; width: calc(100% + 16px); padding-right: 16px; }
  .teacher-card,
  .teacher-card:nth-child(1),
  .teacher-card:nth-child(4),
  .teacher-card:nth-child(6),
  .teacher-card:nth-child(9),
  .teacher-more { flex: 0 0 72%; }
  .teacher-roster-controls p { max-width: 18ch; }
  .challenge-cta { width: 100%; justify-content: space-between; }
  .closing-art { aspect-ratio: 4 / 3; min-height: 0; max-height: none; }
  .closing-art img { object-position: 61% center; }
}
