/* ===========================================================
   PMN 2026 redesign - fooldal + fejlec + lablec
   Forras: assets/styles/redesign.scss (kezzel forditva)
   =========================================================== */

@font-face {
  font-family: 'Kocha Clean';
  src: url('../fonts/subset-KochaClean.woff2') format('woff2'),
       url('../fonts/subset-KochaClean.woff') format('woff'),
       url('../fonts/subset-KochaClean.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

.pmn-container {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 20px;
}

/* ============ FEJLEC ============ */
.pmn-topbar {
  position: absolute;
  top: 35px;
  left: 0;
  right: 0;
  z-index: 100;
}
.pmn-topbar__bar { background: #e93d51; }
.pmn-topbar__inner {
  display: flex;
  align-items: center;
  height: 50px;
  position: relative;
}
.pmn-topbar__logo {
  position: absolute;
  left: 0;
  top: -35px;
  width: 100px;
  z-index: 5;
  display: block;
}
.pmn-topbar__logo img { display: block; width: 100%; height: auto; }
.pmn-topbar__toggle {
  display: none;
  background: none;
  border: 0;
  color: #fff;
  font-size: 28px;
  padding: 6px 10px;
  margin-left: auto;
}
.pmn-topbar__nav { margin-left: 145px; }
.pmn-topbar__menu {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  gap: 35px;
}
.pmn-topbar__menu li { margin: 0; }
.pmn-topbar__menu a {
  font-family: 'Oswald', sans-serif;
  font-weight: 400;
  font-size: 22px;
  line-height: 50px;
  text-transform: uppercase;
  color: #ececed;
  text-decoration: none;
}
.pmn-topbar__menu a:hover,
.pmn-topbar__menu a:focus { color: #fff; text-decoration: none; }
.pmn-topbar__menu .current-menu-item > a,
.pmn-topbar__menu .current_page_item > a { color: #fff; }
.pmn-topbar__right {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 24px;
}
.pmn-topbar__social {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  gap: 21px;
}
.pmn-topbar__social a { color: #ececed; font-size: 20px; line-height: 50px; }
.pmn-topbar__social a:hover { color: #fff; }
.pmn-topbar__langs {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
}
.pmn-topbar__lang a {
  display: block;
  width: 47px;
  height: 50px;
  line-height: 50px;
  text-align: center;
  font-family: 'Oswald', sans-serif;
  font-weight: 300;
  font-size: 22px;
  text-transform: uppercase;
  color: #fff;
  background: #e13347;
  text-decoration: none;
}
.pmn-topbar__lang a:hover { background: #d62a3e; }
.pmn-topbar__lang.is-current a { background: #0a2a3b; font-weight: 500; }

/* ============ HERO + VISSZASZAMLALO ============ */
.pmn-hero {
  width: 100%;
  aspect-ratio: 16 / 9;
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
  background-color: #f3ecd7;
}
.pmn-countdown {
  position: relative;
  z-index: 10;
  margin: -5.7vw auto 0;
  width: -moz-fit-content;
  width: fit-content;
  max-width: calc(100% - 40px);
  background: #e93d51;
  padding: 7px 30px;
  display: flex;
  gap: 23px;
  align-items: center;
}
.pmn-countdown__box {
  width: 197px;
  height: 197px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
}
.pmn-countdown__num {
  font-family: 'Kocha Clean', 'Oswald', sans-serif;
  font-size: 94px;
  line-height: 1.1;
  color: #fff;
}
.pmn-countdown__label {
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 21px;
  color: #fff;
}

/* ============ SZEKCIOK + CIMEK ============ */
.pmn-section--navy {
  background: #092939 url('https://partiuminapok.ro/wp-content/uploads/2026/07/pmn-pattern-navy.png') repeat-y center top;
  background-size: 100% auto;
  padding: 120px 0 110px;
  margin-top: -115px;
}
.pmn-section--white {
  background: #fff;
  padding: 125px 0 130px;
}
.pmn-section--red {
  background: #e93d51 url('https://partiuminapok.ro/wp-content/uploads/2026/07/pmn-pattern-red.png') repeat-y center top;
  background-size: 100% auto;
  padding: 85px 0 110px;
}
.pmn-section--navy .pmn-container { padding-top: 115px; }

.pmn-heading {
  display: inline-block;
  padding: 10px 30px;
  margin: 0 0 57px;
  font-family: 'Oswald', sans-serif;
  font-weight: 500;
  font-size: 48px;
  line-height: 1.1;
  text-transform: uppercase;
}
.pmn-heading--red { background: #e93d51; color: #fff; }
.pmn-heading--white,
.pmn-heading--white-red { background: #fff; color: #e93d51; }
.pmn-heading--navy { background: #0a2a3b; color: #fff; }

/* ============ PMN PROGRAMOK ============ */
.pmn-programs {
  display: flex;
  gap: 24px;
  margin-bottom: 100px;
}
.pmn-program-card {
  display: block;
  flex: 1 1 0;
  min-width: 0;
  transition: transform 0.2s ease;
}
.pmn-program-card img { display: block; width: 100%; height: auto; }
.pmn-program-card:hover { transform: translateY(-6px); }

/* ============ FELLEPOK ============ */
.pmn-artists {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 19px 21px;
}
.pmn-artist-card { position: relative; display: block; }
.pmn-artist-card__img {
  display: block;
  width: 100%;
  aspect-ratio: 293 / 346;
  background-position: center;
  background-size: cover;
  background-color: #0a2a3b;
}
.pmn-artist-card__label {
  position: absolute;
  left: 0;
  bottom: 33px;
  display: inline-flex;
  align-items: center;
  min-height: 58px;
  padding: 8px 19px 8px 27px;
  background: #e93d51;
  font-family: 'Oswald', sans-serif;
  font-weight: 600;
  font-size: 23px;
  line-height: 1.05;
  text-transform: uppercase;
  color: #fff;
  max-width: 90%;
}
.pmn-artist-card:hover .pmn-artist-card__label { background: #e42a3f; }

/* ============ GOMB ============ */
.pmn-btn-row { text-align: center; margin-top: 76px; }
.pmn-btn {
  display: inline-block;
  padding: 23px 36px;
  background: #e4a500;
  font-family: 'Oswald', sans-serif;
  font-weight: 600;
  font-size: 35px;
  line-height: 0.95;
  text-transform: uppercase;
  color: #fff;
  text-decoration: none;
  transition: background 0.2s ease;
}
.pmn-btn:hover,
.pmn-btn:focus { background: #c58f00; color: #fff; text-decoration: none; }

/* ============ TAMOGATOK ============ */
.pmn-sponsor-tier { margin-bottom: 48px; }
.pmn-sponsor-tier:last-child { margin-bottom: 0; }
.pmn-sponsor-tier__title {
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 24px;
  color: #0a2a3b;
  margin: 0 0 22px;
  padding-bottom: 22px;
  border-bottom: 2px solid #e93d51;
}
.pmn-sponsor-tier__logos {
  display: flex;
  flex-wrap: wrap;
  gap: 43px;
  align-items: center;
  margin-top: 27px;
}
.pmn-sponsor-tier__text {
  font-family: 'Montserrat', sans-serif;
  font-size: 15px;
  line-height: 1.57;
  color: #000;
  margin: 19px 0 0;
}
.pmn-sponsor-logo {
  display: flex;
  align-items: center;
  justify-content: center;
}
.pmn-sponsor-logo img {
  display: block;
  max-width: 170px;
  max-height: 85px;
  width: auto;
  height: auto;
}

/* ============ MEDIATAR ============ */
.pmn-media-video {
  position: relative;
  display: block;
  margin-bottom: 42px;
}
.pmn-media-video img { display: block; width: 100%; height: auto; }
.pmn-media-video__play {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 97px;
  height: 97px;
  transition: transform 0.2s ease;
}
.pmn-media-video__play img { width: 100%; height: 100%; }
.pmn-media-video:hover .pmn-media-video__play { transform: translate(-50%, -50%) scale(1.08); }
.pmn-media-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
}
.pmn-media-grid__item {
  display: block;
  aspect-ratio: 296 / 280;
  background-position: center;
  background-size: cover;
  background-color: #0a2a3b;
}
.pmn-media-grid__item--wide { grid-column: span 2; }
.pmn-media-grid__item:hover { opacity: 0.9; }
.pmn-section--red .pmn-btn-row { margin-top: 43px; }

/* ============ LABLEC ============ */
.pmn-footer { background: #0a2a3b; padding: 60px 0; }
.pmn-footer__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  flex-wrap: wrap;
}
.pmn-footer__copy {
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 16px;
  line-height: 1.57;
  color: #fff;
}
.pmn-footer__copy p { margin: 0; color: #fff; }
.pmn-footer__social { display: flex; align-items: center; gap: 26px; }
.pmn-footer__social a { color: #ececed; font-size: 24px; line-height: 1; }
.pmn-footer__social a:hover { color: #fff; }

/* ============ RESZPONZIV ============ */
@media (max-width: 1280px) {
  .pmn-topbar__menu a { font-size: 18px; }
  .pmn-topbar__nav { margin-left: 120px; }
  .pmn-countdown__box { width: 140px; height: 140px; }
  .pmn-countdown__num { font-size: 64px; }
  .pmn-countdown__label { font-size: 15px; }
  .pmn-heading { font-size: 38px; }
  .pmn-btn { font-size: 28px; }
}

@media (max-width: 991px) {
  .pmn-artists { grid-template-columns: repeat(2, 1fr); }
  .pmn-programs { flex-wrap: wrap; }
  .pmn-programs .pmn-program-card { flex: 1 1 40%; }
  .pmn-artist-card__label { font-size: 19px; min-height: 48px; bottom: 24px; }
  .pmn-section--navy { padding: 80px 0; }
  .pmn-section--white { padding: 80px 0; }
}

@media (max-width: 767px) {
  .pmn-topbar { position: relative; top: 0; }
  .pmn-topbar__inner { flex-wrap: wrap; height: auto; min-height: 50px; }
  .pmn-topbar__logo { position: static; width: 60px; padding: 4px 0; }
  .pmn-topbar__toggle { display: block; }
  .pmn-topbar__nav { display: none; width: 100%; margin-left: 0; }
  .pmn-topbar.is-open .pmn-topbar__nav { display: block; }
  .pmn-topbar__menu { flex-direction: column; gap: 0; }
  .pmn-topbar__menu a { line-height: 44px; font-size: 20px; }
  .pmn-topbar__right { margin-left: 0; width: 100%; justify-content: space-between; padding: 6px 0; }
  .pmn-hero { aspect-ratio: 4 / 3; }
  .pmn-countdown { margin-top: -40px; padding: 10px 16px; gap: 10px; }
  .pmn-countdown__box { width: 72px; height: 90px; gap: 4px; }
  .pmn-countdown__num { font-size: 36px; }
  .pmn-countdown__label { font-size: 9px; }
  .pmn-section--navy { margin-top: -60px; padding: 60px 0; }
  .pmn-section--navy .pmn-container { padding-top: 70px; }
  .pmn-heading { font-size: 28px; padding: 8px 18px; margin-bottom: 32px; }
  .pmn-programs { flex-direction: column; gap: 16px; margin-bottom: 60px; }
  .pmn-programs .pmn-program-card { flex: 1 1 100%; max-width: 340px; margin: 0 auto; }
  .pmn-artists { grid-template-columns: repeat(2, 1fr); gap: 12px; }
  .pmn-artist-card__label { font-size: 14px; min-height: 36px; bottom: 16px; padding: 6px 12px; }
  .pmn-btn-row { margin-top: 40px; }
  .pmn-btn { font-size: 22px; padding: 16px 24px; }
  .pmn-section--white { padding: 60px 0; }
  .pmn-sponsor-tier__logos { gap: 24px; }
  .pmn-sponsor-logo img { max-width: 120px; max-height: 60px; }
  .pmn-section--red { padding: 60px 0 70px; }
  .pmn-media-grid { grid-template-columns: repeat(2, 1fr); gap: 10px; }
  .pmn-media-video__play { width: 60px; height: 60px; }
  .pmn-footer { padding: 40px 0; }
  .pmn-footer__inner { flex-direction: column; text-align: center; }
}

/* ============ ALOLDALI FEJLEC ============ */
.pmn-topbar--page { position: relative; top: 0; }
.pmn-topbar__logo--page { top: 0; width: 88px; }

/* ============ ROLUNK ============ */
.pmn-about__hero {
  background-color: #ece9d8;
  background-image: url('../images/hero-rolunk.png');
  background-position: center top;
  background-size: cover;
  background-repeat: no-repeat;
  padding: 110px 0 90px;
}
.pmn-about__intro {
  max-width: 1070px;
  margin: 0 auto;
  background: #fff;
  padding: 70px 90px;
}
.pmn-about__intro h1,
.pmn-about__intro h2 {
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  font-size: 34px;
  line-height: 1.3;
  color: #0a2a3b;
  margin: 0 0 28px;
}
.pmn-about__intro p {
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  line-height: 1.7;
  color: #333;
  margin: 0 0 18px;
}
.pmn-about-row { padding: 90px 0; background: #fff; }
.pmn-about-row:nth-child(even) { background: #ebebeb; }
.pmn-about-row__inner {
  max-width: 860px;
  margin: 0 auto;
  padding: 0 20px;
}
.pmn-about-row__badge {
  display: block;
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 13px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #e93d51;
  margin-bottom: 6px;
}
.pmn-about-row__year {
  font-family: 'Kocha Clean', 'Oswald', sans-serif;
  font-size: 46px;
  line-height: 1.1;
  color: #0a2a3b;
  margin: 0 0 22px;
}
.pmn-about-row__text {
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  line-height: 1.7;
  color: #333;
  margin-bottom: 30px;
}
.pmn-about-row__text p { margin: 0 0 14px; }
.pmn-about-row__img { display: block; width: 100%; height: auto; }

@media (max-width: 767px) {
  .pmn-about__hero { padding: 40px 0; }
  .pmn-about__intro { padding: 30px 22px; }
  .pmn-about__intro h1,
  .pmn-about__intro h2 { font-size: 24px; }
  .pmn-about-row { padding: 50px 0; }
  .pmn-about-row__year { font-size: 36px; }
}

/* ============ KAPCSOLAT ============ */
.pmn-contact { padding: 70px 0 90px; background: #fff; }
.pmn-contact__banner { max-width: 874px; margin: 0 auto 90px; }
.pmn-contact__banner img { display: block; width: 100%; height: auto; max-height: 256px; object-fit: cover; }
.pmn-contact__cols {
  max-width: 870px;
  margin: 0 auto;
  display: flex;
  gap: 117px;
  align-items: flex-start;
}
.pmn-contact__info { flex: 0 0 346px; }
.pmn-contact__logo { display: block; width: 100%; max-width: 346px; height: auto; margin-bottom: 55px; }
.pmn-contact__data {
  list-style: none;
  margin: 0;
  padding: 0;
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 16px;
  line-height: 1.57;
  color: #000;
}
.pmn-contact__data li { margin: 0 0 10px; }
.pmn-contact__data a { color: #000; text-decoration: none; }
.pmn-contact__data a:hover { color: #e93d51; }
.pmn-contact__form { flex: 1 1 auto; padding-top: 32px; }
.pmn-contact__content {
  max-width: 870px;
  margin: 60px auto 0;
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  line-height: 1.7;
  color: #333;
}

/* CF7 mezok */
.pmn-contact__form .wpcf7 p { margin: 0 0 15px; }
.pmn-contact__form input[type="text"],
.pmn-contact__form input[type="email"],
.pmn-contact__form textarea {
  width: 100%;
  background: #f3f3f3;
  border: 0;
  border-radius: 0;
  padding: 10px 21px;
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 15px;
  line-height: 1.57;
  color: #333;
  box-shadow: none;
  outline: none;
}
.pmn-contact__form input[type="text"]::placeholder,
.pmn-contact__form input[type="email"]::placeholder,
.pmn-contact__form textarea::placeholder { color: #939393; opacity: 1; }
.pmn-contact__form textarea { height: 165px; padding: 18px 21px; resize: vertical; }
.pmn-contact__form input:focus,
.pmn-contact__form textarea:focus { background: #ececec; }
.pmn-contact__form .wpcf7-submit {
  display: inline-block;
  float: right;
  background: #e93d51;
  color: #fff;
  border: 0;
  border-radius: 0;
  padding: 14px 22px 13px;
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 20px;
  line-height: 0.95;
  text-transform: uppercase;
  cursor: pointer;
  transition: background 0.2s ease;
  width: auto;
}
.pmn-contact__form .wpcf7-submit:hover { background: #d62a3e; }
.pmn-contact__form .wpcf7-spinner { float: right; }
.pmn-contact__form .wpcf7-not-valid-tip {
  font-family: 'Montserrat', sans-serif;
  font-size: 12px;
  color: #e93d51;
  margin-top: 4px;
}
.pmn-contact__form .wpcf7 form .wpcf7-response-output {
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  margin: 20px 0 0;
  padding: 12px 16px;
  border: 2px solid #e4a500;
  clear: both;
}

@media (max-width: 991px) {
  .pmn-contact__cols { gap: 50px; }
  .pmn-contact__info { flex: 0 0 280px; }
}
@media (max-width: 767px) {
  .pmn-contact { padding: 30px 0 50px; }
  .pmn-contact__banner { margin-bottom: 40px; }
  .pmn-contact__cols { flex-direction: column; gap: 40px; }
  .pmn-contact__info { flex: 1 1 auto; }
  .pmn-contact__logo { max-width: 280px; margin-bottom: 30px; }
  .pmn-contact__form { padding-top: 0; width: 100%; }
}

/* ============ HIREK LISTA ============ */
.pmn-news-page {
  background: #092939 url('https://partiuminapok.ro/wp-content/uploads/2026/07/pmn-pattern-navy.png') repeat-y center top;
  background-size: 100% auto;
  padding: 95px 0 100px;
}
.pmn-news-card {
  position: relative;
  max-width: 860px;
  margin: 31px auto 0;
  background: #fff;
  padding: 84px 100px 60px;
}
.pmn-news-card .pmn-heading--black {
  position: absolute;
  top: -31px;
  left: 0;
  background: #000;
  color: #fff;
  margin: 0;
}
.pmn-news-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 55px 30px;
}
.pmn-news-item { display: block; text-decoration: none; }
.pmn-news-item__img {
  display: block;
  width: 100%;
  aspect-ratio: 315 / 185;
  background-position: center;
  background-size: cover;
  background-color: #ececed;
}
.pmn-news-item__title {
  display: block;
  padding-top: 16px;
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 20px;
  line-height: 1.35;
  color: #0a2a3b;
}
.pmn-news-item:hover .pmn-news-item__title { color: #e93d51; }

/* WP-PageNavi */
.pmn-pagination { text-align: center; margin-top: 60px; }
.pmn-pagination .wp-pagenavi {
  display: inline-flex;
  gap: 5px;
  border: 0;
}
.pmn-pagination .wp-pagenavi a,
.pmn-pagination .wp-pagenavi span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 33px;
  height: 32px;
  padding: 0 6px;
  background: #fec95d;
  border: 0;
  margin: 0;
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 20px;
  line-height: 1;
  color: #fff;
  text-decoration: none;
}
.pmn-pagination .wp-pagenavi a:hover { background: #f2b83a; }
.pmn-pagination .wp-pagenavi span.current { background: #f26a3a; }

@media (max-width: 991px) {
  .pmn-news-card { padding: 60px 40px 50px; }
}
@media (max-width: 767px) {
  .pmn-news-page { padding: 60px 0; }
  .pmn-news-card { padding: 50px 20px 40px; }
  .pmn-news-grid { grid-template-columns: 1fr; gap: 35px; }
}

/* ============ PROGRAM OLDAL (Timetable / wcs-*) ============ */
.pmn-heading--sm { font-size: 35px; padding: 10px 20px; margin-bottom: 40px; }
.pmn-program { background: #fff; padding: 30px 0 80px; }

/* Szurok doboz */
.pmn-program .wcs-filters__container {
  background: #fbfbfb;
  border: 1px solid #e7e7e7;
  padding: 22px 24px;
  margin-bottom: 55px;
}
.pmn-program .wcs-filters { display: flex; flex-direction: column; gap: 20px; }
.pmn-program .wcs-filters__filter-column {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  width: 100%;
}
.pmn-program .wcs-filters__title {
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 12px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #b5b5b5;
  margin-right: 14px;
}
.pmn-program .wcs-filters__filter-wrapper {
  margin: 0;
  cursor: pointer;
  position: relative;
  font-weight: normal;
}
.pmn-program .wcs-filters__filter-wrapper input.wcs-filter {
  position: absolute;
  opacity: 0;
  width: 1px;
  height: 1px;
}
.pmn-program .wcs-filters__filter-wrapper .label-c {
  display: inline-block;
  background: #fff;
  border: 1px solid #dcdcdc;
  padding: 6px 12px;
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 12px;
  line-height: 1.3;
  color: #0a2a3b;
  transition: all 0.15s ease;
}
.pmn-program .wcs-filters__filter-wrapper .label-c:hover { border-color: #e93d51; color: #e93d51; }
.pmn-program .wcs-filters__filter-wrapper input.wcs-filter:checked ~ .label-c,
.pmn-program .wcs-filters__filter-wrapper input.wcs-filter:checked + .label-c {
  background: #e93d51;
  border-color: #e93d51;
  color: #fff;
}
.pmn-program .wcs-filter-toggler-container { display: none; }

/* Nap tabok */
.pmn-program .wcs-timetable__tabs-nav {
  display: flex;
  justify-content: space-between;
  list-style: none;
  margin: 0;
  padding: 16px 10px;
  border-top: 2px solid #e93d51;
  border-bottom: 1px solid #dcdcdc;
}
.pmn-program .wcs-timetable__tabs-nav-item { margin: 0; }
.pmn-program .wcs-timetable__tabs-nav-item a {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 20px;
  line-height: 1.2;
  color: #0a2a3b;
  text-decoration: none;
  background: none;
  border: 0;
  padding: 0 10px;
}
.pmn-program .wcs-timetable__tabs-nav-item a small,
.pmn-program .wcs-timetable__tabs-nav-item a span { font-size: 13px; font-weight: 600; }
.pmn-program .wcs-timetable__tabs-nav-item.active a,
.pmn-program .wcs-timetable__tabs-nav-item a.active,
.pmn-program .wcs-timetable__tabs-nav-item a:hover { color: #e93d51; }

/* Napok + esemenysorok */
.pmn-program .wcs-timetable__tabs-data { list-style: none; margin: 0; padding: 0; }
.pmn-program .wcs-day > .wcs-class__time {
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  font-size: 19px;
  color: #0a2a3b;
  margin: 34px 0 24px;
}
.pmn-program .wcs-class {
  border: 0;
  padding: 8px 0 18px;
  background: none;
}
.pmn-program .wcs-class time {
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  font-size: 14px;
  color: #0a2a3b;
  white-space: nowrap;
}
.pmn-program .wcs-class .ev-title { margin: 0 0 8px; }
.pmn-program .wcs-class .ev-title a {
  display: inline-block;
  background: #0a2a3b;
  color: #fff;
  padding: 4px 12px;
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 15px;
  line-height: 1.4;
  text-decoration: none;
  transition: background 0.15s ease;
}
.pmn-program .wcs-class .ev-title a:hover { background: #e93d51; }
.pmn-program .wcs-class .cat,
.pmn-program .wcs-class .col-md-10 span {
  font-family: 'Montserrat', sans-serif;
  font-weight: 400;
  font-size: 12.5px;
  color: #333;
}
.pmn-program .wcs-class .col-md-10 span i { color: #0a2a3b; margin-right: 5px; }
.pmn-program .wcs-class a.pm { color: #0a2a3b; }
.pmn-program .wcs-class a.pm:hover { color: #e93d51; }

@media (max-width: 767px) {
  .pmn-heading--sm { font-size: 26px; margin-bottom: 24px; }
  .pmn-program .wcs-timetable__tabs-nav { flex-wrap: wrap; gap: 8px; justify-content: flex-start; }
  .pmn-program .wcs-timetable__tabs-nav-item a { font-size: 16px; padding: 0 6px; }
  .pmn-program .wcs-filters__container { padding: 14px; margin-bottom: 30px; }
}

/* ============ PROGRAMKARTYAK (elo szoveggel) ============ */
.pmn-program-card {
  position: relative;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  background-size: cover;
  background-position: center;
  container-type: inline-size;
  text-decoration: none;
}
.pmn-program-card--koncertek { background-image: url('../images/koncertek.png'); }
.pmn-program-card--gyerek-programok { background-image: url('../images/gyerek-programok.png'); }
.pmn-program-card--kultura { background-image: url('../images/kultura.png'); }
.pmn-program-card--sport { background-image: url('../images/sport.png'); }
.pmn-program-card__title {
  position: absolute;
  top: 34%;
  left: 7%;
  right: 7%;
  text-align: center;
  font-family: 'Kocha Clean', 'Oswald', sans-serif;
  font-size: 12.4cqw;
  line-height: 0.93;
  color: #fff;
}
.pmn-program-card--kultura .pmn-program-card__title,
.pmn-program-card--sport .pmn-program-card__title { top: 44%; }
.pmn-program-card__desc {
  position: absolute;
  top: 59%;
  left: 14%;
  right: 14%;
  text-align: center;
  font-family: 'Montserrat', sans-serif;
  font-weight: 400;
  font-size: 4.4cqw;
  line-height: 1.36;
  color: #fff;
}
.pmn-program-card__arrow {
  position: absolute;
  right: 7.3%;
  bottom: 5.6%;
  width: 11.7cqw;
  height: 11.7cqw;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.15s ease;
}
.pmn-program-card__arrow i { color: #0a2a3b; font-size: 6.5cqw; }
.pmn-program-card:hover .pmn-program-card__arrow { background: #e4a500; }
.pmn-program-card:hover .pmn-program-card__arrow i { color: #fff; }
/* regi img-alapu kartya szabaly feluldefinialasa mar nem szukseges, az <img> kikerult */

@supports not (width: 1cqw) {
  .pmn-program-card__title { font-size: 36px; }
  .pmn-program-card__desc { font-size: 13px; }
  .pmn-program-card__arrow { width: 35px; height: 35px; }
  .pmn-program-card__arrow i { font-size: 19px; }
}

/* ============ MOBIL FINOMHANGOLAS (Figma mobil nezetek alapjan) ============ */
@media (max-width: 767px) {
  /* Fejlec: logo mobilon is a sav ala log, hamburger jobbra */
  .pmn-topbar__inner { flex-wrap: wrap; min-height: 40px; height: auto; }
  .pmn-topbar__logo,
  .pmn-topbar__logo--page {
    position: absolute;
    top: 0;
    left: 0;
    width: 105px;
    padding: 0;
    z-index: 5;
  }
  .pmn-topbar__toggle { display: block; margin-left: auto; }

  /* Social + nyelvvalto csak a lenyitott menuben */
  .pmn-topbar__right { display: none; }
  .pmn-topbar.is-open .pmn-topbar__right {
    display: flex;
    margin-left: 0;
    width: 100%;
    justify-content: space-between;
    padding: 10px 0 14px;
  }
  .pmn-topbar.is-open .pmn-topbar__nav {
    display: block;
    width: 100%;
    margin-left: 0;
    padding-top: 130px; /* a logo alatt kezdodjenek a menupontok */
  }
  .pmn-topbar__lang a { height: 40px; line-height: 40px; font-size: 18px; }

  /* Kapcsolat: banner teljes szelessegu, a sav alatt */
  .pmn-contact { padding-top: 0; }
  .pmn-contact__banner { margin: 0 -20px 40px; max-width: none; }
  .pmn-contact__banner img { max-height: 225px; }

  /* Hirek: feher kartya teljes szelessegu */
  .pmn-news-page { padding: 60px 0 70px; }
  .pmn-news-card { margin: 31px -20px 0; padding: 40px 30px; }

  /* Program: napvalaszto 3 oszlopos racs */
  .pmn-program .wcs-timetable__tabs-nav {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px 10px;
    justify-items: center;
    padding: 20px 0;
    border-top: 0;
    border-bottom: 1px solid #dcdcdc;
  }
  .pmn-program .wcs-timetable__tabs-nav-item a { font-size: 28px; }
  .pmn-program .wcs-day > .wcs-class__time { font-size: 24px; }
}

/* ============ ELES ELLENORZES UTANI JAVITASOK (v1.1) ============ */

/* 1. Mediatar racs: fix oszlopok, a szeles elem ne feszitse szet a gridet */
.pmn-media-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.pmn-media-grid__item--wide { aspect-ratio: auto; }
@media (max-width: 767px) {
  .pmn-media-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* 2. Rolunk: regi theme padding orokles semlegesitese */
.pmn-about__intro h1,
.pmn-about__intro h2,
.pmn-about__intro h3,
.pmn-about__intro p,
.pmn-about-row__text p,
.pmn-about-row__text h1,
.pmn-about-row__text h2 {
  padding: 0 !important;
}

/* 3. Program oldal: regi hatterek + plugin oszlop-elrendezes feluldefinialasa */
.page-wrapper.pmn-program { background: #fff !important; }
.pmn-program .wcs-timetable,
.pmn-program .wcs-timetable__tabs,
.pmn-program .wcs-timetable__tabs-data,
.pmn-program .wcs-day,
.pmn-program .wcs-class,
.pmn-program .wcs-timetable__parent {
  background: transparent !important;
}
.pmn-program .wcs-timetable > h2 { display: none; } /* sajat cimet hasznaljuk */
.pmn-program .wcs-timetable__container { display: block !important; }
.pmn-program .wcs-filters__container,
.pmn-program .wcs-filters {
  width: 100% !important;
  max-width: none !important;
  float: none !important;
  position: static !important;
}
.pmn-program .wcs-timetable {
  width: 100% !important;
  float: none !important;
  margin-left: 0 !important;
  padding: 0 !important;
}
.pmn-program .wcs-day > .wcs-class__time { color: #0a2a3b !important; }
.pmn-program .wcs-class time { color: #0a2a3b !important; }

/* 4. Program cim: ne a fuggo logo moge keruljon */
.pmn-program .pmn-heading--sm { margin-left: 150px; }
@media (max-width: 767px) {
  .pmn-program .pmn-heading--sm { margin-left: 0; margin-top: 130px; }
}

/* ============ PROGRAM OLDAL v1.2 (elesben tesztelt javitasok) ============ */
.pmn-program .wp-list-table { background: transparent !important; }
.pmn-program .wcs-timetable__tabs-nav-item,
.pmn-program .wcs-timetable__tabs-nav-item a {
  background: transparent !important;
  border: 0 !important;
}
.pmn-program .pmn-heading--sm { margin-left: 190px; }
.pmn-program .wcs-class .ev-title a { background: #0a2a3b !important; color: #fff !important; }
.pmn-program .wcs-class .ev-title a:hover { background: #e93d51 !important; }
.pmn-program .wcs-timetable__tabs-nav { border-top: 2px solid #e93d51 !important; }
@media (max-width: 767px) {
  .pmn-program .pmn-heading--sm { margin-left: 0; }
}

/* ============ PROGRAM OLDAL v1.3: keskenyebb tartalom ============ */
.pmn-program .container {
  max-width: 980px !important;
  width: auto !important;
}
.pmn-program .pmn-heading--sm { margin-left: 70px; }
@media (max-width: 767px) {
  .pmn-program .pmn-heading--sm { margin-left: 0; }
}

/* ============ HIREK PAGINATION v1.4 ============ */
.pmn-pagination .wp-pagenavi span.pages,
.pmn-pagination .wp-pagenavi a.first,
.pmn-pagination .wp-pagenavi a.last {
  display: none !important;
}
.pmn-pagination .wp-pagenavi a,
.pmn-pagination .wp-pagenavi span {
  white-space: nowrap;
}

/* ============ FOKUSZ-KERET v1.5 ============ */
/* Kattintaskor ne legyen keret a linkeken/gombokon, */
/* de billentyuzetes navigacional (Tab) maradjon lathato jelzes. */
a:focus,
button:focus {
  outline: none !important;
}
a:focus-visible,
button:focus-visible {
  outline: 2px solid #e4a500 !important;
  outline-offset: 2px;
}

/* ============ FOOTER v1.6: regi float:left semlegesitese ============ */
.pmn-footer {
  float: none !important;
  width: 100% !important;
  clear: both;
}
