/*
Játékszín — új design system (navy / cream / gold / crimson).
Forrás: info/tokens/*.css + info/Jatekszin Homepage.dc.html.
Minden szelektor .jx- prefixű, hogy a még nem migrált (Tailwind-alapú) sablonokat ne érintse.
*/

/* ---------------------------------------------------------------------- */
/* Tokens (info/tokens/*)                                                  */
/* ---------------------------------------------------------------------- */
:root{
  --jx-navy-900:#0B1628;
  --jx-navy-800:#101E36;
  --jx-navy-700:#14213D;
  --jx-navy-600:#1E2F50;

  --jx-gold-500:#C5A84A;
  --jx-gold-300:#E8D5A3;
  --jx-gold-700:#8A7326;

  --jx-crimson-600:#8E1B2B;
  --jx-crimson-500:#A82334;

  --jx-cream-100:#FCFAF6;
  --jx-cream-200:#F7F3EC;
  --jx-cream-300:#EDE8DF;
  --jx-white:#FFFFFF;

  --jx-ink-900:#1C1A18;
  --jx-ink-500:#7A7570;

  --jx-tint-ember:#180A06;
  --jx-tint-amber:#1C1205;
  --jx-tint-teal:#061518;
  --jx-tint-plum:#160A14;
  --jx-tint-indigo:#0A1020;
  --jx-tint-moss:#0D1507;
  --jx-tint-violet:#160C1E;
  --jx-tint-slate:#101E36;

  --jx-surface-page:var(--jx-navy-900);
  --jx-surface-dark-alt:var(--jx-navy-700);
  --jx-surface-light:var(--jx-cream-200);
  --jx-surface-card:var(--jx-white);
  --jx-surface-card-quiet:var(--jx-cream-100);

  --jx-text-on-dark:var(--jx-white);
  --jx-text-on-dark-muted:rgba(255,255,255,.48);
  --jx-text-on-dark-quiet:rgba(255,255,255,.32);
  --jx-text-on-light:var(--jx-ink-900);
  --jx-text-on-light-muted:var(--jx-ink-500);
  --jx-text-heading-light:var(--jx-navy-900);

  --jx-accent:var(--jx-gold-500);
  --jx-accent-soft:var(--jx-gold-300);
  --jx-accent-on-light:var(--jx-gold-700);
  --jx-action:var(--jx-crimson-600);
  --jx-action-hover:var(--jx-crimson-500);
  --jx-action-text:var(--jx-white);

  --jx-gold-a10:rgba(197,168,74,.10);
  --jx-gold-a16:rgba(197,168,74,.16);
  --jx-gold-a22:rgba(197,168,74,.22);
  --jx-gold-a30:rgba(197,168,74,.30);
  --jx-gold-a45:rgba(197,168,74,.45);
  --jx-white-a07:rgba(255,255,255,.07);
  --jx-white-a16:rgba(255,255,255,.16);
  --jx-white-a22:rgba(255,255,255,.22);
  --jx-crimson-a24:rgba(142,27,43,.24);

  --jx-font-display:'Cormorant Garamond',Georgia,'Times New Roman',serif;
  --jx-font-ui:'DM Sans',system-ui,-apple-system,sans-serif;

  --jx-size-hero:90px;
  --jx-size-display-2:74px;
  --jx-size-display-3:54px;
  --jx-size-display-4:38px;
  --jx-size-display-5:34px;
  --jx-size-display-7:23px;

  --jx-weight-display-light:300;
  --jx-weight-display-mid:500;
  --jx-weight-ui-light:300;
  --jx-weight-ui:400;
  --jx-weight-ui-mid:500;

  --jx-leading-display:1.06;
  --jx-leading-quote:1.52;
  --jx-leading-body:1.8;

  --jx-track-display:-0.01em;
  --jx-track-eyebrow:0.24em;
  --jx-track-kicker:0.22em;
  --jx-track-nav:0.16em;
  --jx-track-label:0.14em;
  --jx-track-button:0.13em;
  --jx-track-logo:0.14em;

  --jx-space-1:4px; --jx-space-2:8px; --jx-space-3:12px; --jx-space-4:16px;
  --jx-space-5:22px; --jx-space-6:26px; --jx-space-7:32px; --jx-space-8:40px;
  --jx-space-9:52px; --jx-space-10:60px; --jx-space-11:74px; --jx-space-12:88px;
  --jx-space-13:104px; --jx-space-14:120px;

  --jx-section-y-light:104px;
  --jx-section-y-dark:120px;
  --jx-section-y-tablet:72px;
  --jx-section-y-mobile:60px;

  --jx-container:1500px;
  --jx-gutter:88px;
  --jx-gutter-tablet:40px;
  --jx-gutter-mobile:24px;
  --jx-pad-inline:max(var(--jx-gutter),calc((100% - var(--jx-container)) / 2));

  --jx-line-gold:1px solid var(--jx-gold-a22);
  --jx-line-gold-faint:1px solid var(--jx-gold-a10);
  --jx-line-cream:1px solid var(--jx-cream-300);
  --jx-line-white-faint:1px solid var(--jx-white-a07);
  --jx-rule-gold:linear-gradient(90deg,transparent,rgba(197,168,74,.38),transparent);

  --jx-shadow-card-hover:0 28px 72px rgba(11,22,40,.13);
  --jx-shadow-poster:0 32px 80px rgba(0,0,0,.5);

  --jx-blur-bar:blur(16px);
  --jx-blur-overlay:blur(20px);
  --jx-bar-bg:rgba(11,22,40,.97);
  --jx-overlay-bg:rgba(11,22,40,.98);

  --jx-texture-curtain:repeating-linear-gradient(90deg,transparent 0,transparent 22px,rgba(197,168,74,.016) 22px,rgba(197,168,74,.016) 23px);
  --jx-texture-hatch:repeating-linear-gradient(135deg,rgba(255,255,255,.03) 0,rgba(255,255,255,.03) 1px,transparent 1px,transparent 18px);
  --jx-glow-spotlight:radial-gradient(ellipse 60% 80% at 22% 0%,rgba(197,168,74,.10) 0%,transparent 62%);
  --jx-scrim-hero:linear-gradient(to top,rgba(11,22,40,.94) 0%,rgba(11,22,40,.62) 40%,rgba(11,22,40,.42) 100%);

  --jx-ease:ease;
  --jx-dur-fast:.25s;
  --jx-dur:.3s;
  --jx-dur-lift:.35s;
  --jx-dur-bar:.4s;
  --jx-dur-overlay:.38s;
  --jx-dur-reveal:.75s;
  --jx-reveal-offset:26px;
  --jx-reveal-stagger:.13s;
}

/* ---------------------------------------------------------------------- */
/* Utilities                                                               */
/* ---------------------------------------------------------------------- */
.jx-gold-rule{ height:1px; background:var(--jx-rule-gold); border:0; }

.jx-reveal{ opacity:0; transform:translateY(var(--jx-reveal-offset)); transition:opacity var(--jx-dur-reveal) var(--jx-ease), transform var(--jx-dur-reveal) var(--jx-ease); }
.jx-reveal.is-in{ opacity:1; transform:none; }
.jx-reveal-d1{ transition-delay:.13s; }
.jx-reveal-d2{ transition-delay:.26s; }
.jx-reveal-d3{ transition-delay:.39s; }

.jx-btn{
  display:inline-flex; align-items:center; gap:10px;
  font-family:var(--jx-font-ui); font-weight:500; letter-spacing:var(--jx-track-button);
  text-transform:uppercase; text-decoration:none; border-radius:0; cursor:pointer;
  transition:background var(--jx-dur) var(--jx-ease), border-color var(--jx-dur) var(--jx-ease), color var(--jx-dur) var(--jx-ease), transform .2s var(--jx-ease);
}
.jx-btn-solid{
  padding:17px 40px; background:var(--jx-action); color:var(--jx-action-text); border:1px solid var(--jx-action);
  font-size:11.5px;
}
.jx-btn-solid:hover{ background:var(--jx-action-hover); border-color:var(--jx-action-hover); transform:translateY(-2px); }
.jx-btn-solid.jx-btn-sm{ padding:11px 28px; font-size:11px; }
.jx-btn-ghost{
  padding:17px 36px; border:1px solid var(--jx-white-a22); color:rgba(255,255,255,.7);
  background:none; font-size:11.5px; font-weight:400;
}
.jx-btn-ghost:hover{ border-color:rgba(255,255,255,.6); color:#fff; }

.jx-kicker{
  display:flex; align-items:center; gap:14px;
  font-family:var(--jx-font-ui); font-size:11px; font-weight:400;
  letter-spacing:var(--jx-track-kicker); text-transform:uppercase; color:var(--jx-accent);
}
.jx-kicker.jx-kicker-on-light{ color:var(--jx-accent-on-light); }

/* ---------------------------------------------------------------------- */
/* Nav                                                                     */
/* ---------------------------------------------------------------------- */
.jx-nav{
  position:fixed; top:0; left:0; right:0; z-index:200;
  padding-block:28px; padding-inline:var(--jx-pad-inline);
  display:flex; align-items:center; justify-content:space-between;
  gap:32px; background:transparent; border-bottom:1px solid transparent;
  transition:padding var(--jx-dur-bar) var(--jx-ease), background var(--jx-dur-bar) var(--jx-ease), border-color var(--jx-dur-bar) var(--jx-ease);
}
.jx-nav.is-scrolled{
  background:var(--jx-bar-bg); backdrop-filter:var(--jx-blur-bar);
  padding-block:18px; border-bottom-color:var(--jx-gold-a16);
}
.jx-nav-logo{
  font-family:var(--jx-font-display); font-size:21px; font-weight:600;
  letter-spacing:var(--jx-track-logo); text-transform:uppercase; color:#fff; text-decoration:none;
  flex-shrink:0;
}
.jx-nav-links{ display:flex; align-items:center; gap:36px; flex:1; justify-content:center; }
.jx-nav-link{
  display:inline-block; position:relative; padding-bottom:4px; margin:0;
  font-family:var(--jx-font-ui); font-size:11px; line-height:15px; vertical-align:baseline;
  font-weight:400; letter-spacing:var(--jx-track-nav); text-transform:uppercase;
  color:rgba(255,255,255,.6); text-decoration:none; transition:color var(--jx-dur-fast) var(--jx-ease);
  background:none; border:none; cursor:pointer;
  -webkit-appearance:none; -moz-appearance:none; appearance:none;
}
.jx-nav-link::after{
  content:''; position:absolute; bottom:0; left:0; width:0; height:1px; background:var(--jx-accent);
  transition:width var(--jx-dur) var(--jx-ease);
}
.jx-nav-link:hover{ color:#fff; }
.jx-nav-link:hover::after{ width:100%; }
.jx-nav-link.is-active{ color:#fff; }
.jx-nav-link.is-active::after{ width:100%; }

.jx-nav-dropdown-toggle{ position:relative; padding-right:16px; }
.jx-nav-caret-icon{
  /* a szöveg optikai közepéhez igazítva, nem a teljes (padding-bottom:4px-et is
     tartalmazó) doboz közepéhez — ezért -2px extra korrekció a naiv 50% felett */
  position:absolute; right:0; top:50%; transform:translateY(calc(-50% - 2px));
  pointer-events:none; color:currentColor;
}

.jx-nav-dropdown{ position:relative; display:flex; align-items:center; }
.jx-nav-dropdown-panel{
  margin:0; padding:0; position:absolute; left:0; top:100%;
  min-width:220px; background:var(--jx-navy-800); border:var(--jx-line-gold-faint);
  box-shadow:0 24px 48px rgba(0,0,0,.35); display:flex; flex-direction:column;
  opacity:0; pointer-events:none; transform:translateY(4px);
  transition:opacity var(--jx-dur) var(--jx-ease), transform var(--jx-dur) var(--jx-ease);
}
.jx-nav-dropdown:hover .jx-nav-dropdown-panel,
.jx-nav-dropdown:focus-within .jx-nav-dropdown-panel{ opacity:1; pointer-events:auto; transform:none; }
.jx-nav-dropdown-link{
  display:block; padding:10px 20px; font-family:var(--jx-font-ui); font-size:12px;
  letter-spacing:.04em; color:rgba(255,255,255,.68); text-decoration:none;
  border-bottom:1px solid var(--jx-white-a07);
  transition:color var(--jx-dur-fast) var(--jx-ease), background var(--jx-dur-fast) var(--jx-ease);
}
.jx-nav-dropdown-link:last-child{ border-bottom:0; }
.jx-nav-dropdown-link:hover{ color:#fff; background:var(--jx-gold-a10); }

.jx-nav-cta{
  padding:11px 28px; background:var(--jx-action); border:1px solid var(--jx-action); color:#fff;
  font-family:var(--jx-font-ui); font-size:11px; font-weight:500; letter-spacing:var(--jx-track-button);
  text-transform:uppercase; text-decoration:none; flex-shrink:0;
  transition:background var(--jx-dur) var(--jx-ease), border-color var(--jx-dur) var(--jx-ease);
}
.jx-nav-cta:hover{ background:var(--jx-action-hover); border-color:var(--jx-action-hover); }

.jx-burger{
  display:none; flex-direction:column; justify-content:center; align-items:flex-end; gap:6px;
  width:44px; height:44px; background:none; border:none; cursor:pointer; padding:0; flex-shrink:0;
}
.jx-burger span{
  display:block; height:1px; background:#fff; transform:translateZ(0); will-change:transform, opacity;
  transition:transform var(--jx-dur-lift) var(--jx-ease), opacity var(--jx-dur-fast) var(--jx-ease);
}
.jx-burger span:nth-child(1){ width:26px; }
.jx-burger span:nth-child(2){ width:18px; }
.jx-burger span:nth-child(3){ width:26px; }
.jx-burger.is-open span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
.jx-burger.is-open span:nth-child(2){ opacity:0; }
.jx-burger.is-open span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); width:26px; }

/* ---------------------------------------------------------------------- */
/* Mobile drawer                                                           */
/* ---------------------------------------------------------------------- */
.jx-drawer{
  position:fixed; inset:0; z-index:190; background:var(--jx-overlay-bg); backdrop-filter:var(--jx-blur-overlay);
  display:flex; flex-direction:column; justify-content:flex-start;
  padding:96px 28px 40px; overflow-y:auto;
  opacity:0; pointer-events:none; transition:opacity var(--jx-dur-overlay) var(--jx-ease);
}
.jx-drawer.is-open{ opacity:1; pointer-events:auto; }
.jx-drawer-links{ display:flex; flex-direction:column; gap:2px; border-top:var(--jx-line-gold); }
.jx-drawer-link{
  display:block; width:100%; text-align:left;
  font-family:var(--jx-font-display); font-size:23px; font-weight:300; color:#fff;
  padding:13px 0; border-bottom:var(--jx-line-gold); text-decoration:none;
  background:none; border-left:none; border-right:none; border-top:none; cursor:pointer;
  transition:color var(--jx-dur-fast) var(--jx-ease), padding-left var(--jx-dur) var(--jx-ease);
}
.jx-drawer-link:hover{ color:var(--jx-accent-soft); padding-left:8px; }
.jx-drawer-dropdown-toggle{ display:flex; align-items:center; justify-content:space-between; gap:10px; }
.jx-drawer-caret-icon{ flex-shrink:0; transition:transform var(--jx-dur) var(--jx-ease); }
.jx-drawer-dropdown.is-open .jx-drawer-caret-icon{ transform:rotate(180deg); }
.jx-drawer-dropdown .jx-drawer-link{ border-bottom:none; }
.jx-drawer-dropdown.is-open .jx-drawer-dropdown-toggle{ border-bottom:var(--jx-line-gold); }
.jx-drawer-sub{
  padding-left:14px; display:flex; flex-direction:column; gap:2px;
  max-height:0; overflow:hidden; border-bottom:var(--jx-line-gold);
  transition:max-height var(--jx-dur-bar) var(--jx-ease);
}
.jx-drawer-dropdown.is-open .jx-drawer-sub{ max-height:400px; }
.jx-drawer-sub-link{
  font-family:var(--jx-font-ui); font-size:13px; letter-spacing:.04em; color:rgba(255,255,255,.56);
  text-decoration:none; padding:8px 0; display:block;
}
.jx-drawer-sub-link:hover{ color:#fff; }
.jx-drawer-cta{ margin-top:28px; display:flex; }
.jx-drawer-cta .jx-btn{ flex:1; justify-content:center; }

/* Scroll-to-top (existing site feature) */
.jx-scroll-top{
  position:fixed; right:18px; bottom:18px; z-index:150; width:44px; height:44px;
  display:flex; align-items:center; justify-content:center; background:var(--jx-navy-800);
  border:var(--jx-line-gold-faint); color:var(--jx-accent); cursor:pointer;
  opacity:0; pointer-events:none; transition:opacity var(--jx-dur) var(--jx-ease), border-color var(--jx-dur) var(--jx-ease);
}
.jx-scroll-top.is-visible{ opacity:1; pointer-events:auto; }
.jx-scroll-top:hover{ border-color:var(--jx-gold-a45); }
.jx-scroll-top svg{ width:18px; height:18px; }

@media(max-width:1024px){
  .jx-nav-links, .jx-nav-cta{ display:none; }
  .jx-burger{ display:flex; }
  .jx-nav, .jx-nav.is-scrolled{ padding-inline:var(--jx-gutter-tablet); }
}

/* ---------------------------------------------------------------------- */
/* Hero                                                                    */
/* ---------------------------------------------------------------------- */
.jx-hero{ position:relative; min-height:100vh; display:flex; align-items:flex-end; overflow:hidden; background:var(--jx-navy-900); }
.jx-hero-bg{ position:absolute; inset:0; background-size:cover; background-position:center; }
.jx-hero-bg::after{ content:''; position:absolute; inset:0; background-image:var(--jx-scrim-hero); }
.jx-hero-texture{ position:absolute; inset:0; background-image:var(--jx-texture-curtain); pointer-events:none; }
.jx-hero-glow{
  position:absolute; top:-15%; left:50%; transform:translateX(-50%); width:900px; height:950px;
  background:var(--jx-glow-spotlight); pointer-events:none;
}
.jx-hero-content{ position:relative; z-index:2; padding-inline:var(--jx-pad-inline); padding-bottom:108px; width:100%; }
.jx-hero-eyebrow{
  display:flex; align-items:center; gap:14px; margin-bottom:30px;
  font-family:var(--jx-font-ui); font-size:11px; font-weight:400; letter-spacing:var(--jx-track-eyebrow);
  text-transform:uppercase; color:var(--jx-accent);
}
.jx-hero-eyebrow::before{ content:''; display:inline-block; width:36px; height:1px; background:var(--jx-accent); flex-shrink:0; }
.jx-hero-title{
  max-width:860px; margin:0 0 30px; font-family:var(--jx-font-display); font-size:var(--jx-size-hero);
  font-weight:var(--jx-weight-display-light); line-height:var(--jx-leading-display); color:#fff; letter-spacing:var(--jx-track-display);
}
.jx-hero-title em{ font-style:italic; color:var(--jx-gold-300); display:block; }
.jx-hero-sub{ max-width:500px; margin:0 0 52px; font-family:var(--jx-font-ui); font-size:17px; font-weight:300; line-height:1.72; color:rgba(255,255,255,.48); }
.jx-hero-btns{ display:flex; gap:16px; flex-wrap:wrap; }
.jx-hero-deco{ position:absolute; bottom:108px; right:80px; display:flex; flex-direction:column; align-items:center; gap:10px; }
.jx-hero-deco-label{ font-family:var(--jx-font-ui); font-size:10px; letter-spacing:var(--jx-track-eyebrow); text-transform:uppercase; color:rgba(255,255,255,.28); writing-mode:vertical-rl; transform:rotate(180deg); }
.jx-hero-deco-bar{ width:1px; height:60px; background:linear-gradient(to bottom, var(--jx-gold-a45), transparent); animation:jx-scroll-pulse 2.4s ease-in-out infinite; }
@keyframes jx-scroll-pulse{ 0%,100%{ transform:scaleY(1); opacity:.7; } 50%{ transform:scaleY(.35); opacity:.2; } }

@media(max-width:1180px){ .jx-hero-deco{ bottom:88px; right:40px; } }
@media(max-width:1024px){
  .jx-hero-title{ font-size:60px; }
  .jx-hero-content{ padding-inline:var(--jx-gutter-tablet); padding-bottom:88px; }
}
@media(max-width:600px){
  .jx-hero-title{ font-size:42px; }
  .jx-hero-content{ padding-inline:var(--jx-gutter-mobile); padding-bottom:72px; }
  .jx-hero-deco{ display:none; }
}

/* ---------------------------------------------------------------------- */
/* Section head                                                            */
/* ---------------------------------------------------------------------- */
.jx-section-head{
  margin-bottom:52px;
  display:flex; align-items:flex-end; justify-content:space-between; gap:24px; flex-wrap:wrap;
}
.jx-section-head .jx-kicker{ margin-bottom:12px; }
.jx-section-title{ margin:0; font-family:var(--jx-font-display); font-size:var(--jx-size-display-3); font-weight:400; line-height:var(--jx-leading-display); }
.jx-section-title.jx-on-light{ color:var(--jx-text-heading-light); }
.jx-section-title.jx-on-dark{ color:#fff; }
.jx-section-title em{ font-style:italic; color:var(--jx-accent); }
.jx-section-more{
  display:inline-flex; align-items:center; font-family:var(--jx-font-ui); font-size:11px;
  letter-spacing:var(--jx-track-nav); text-transform:uppercase; text-decoration:none; white-space:nowrap;
  padding:13px 28px; border:1px solid transparent;
  transition:opacity var(--jx-dur-fast) var(--jx-ease), border-color var(--jx-dur) var(--jx-ease), color var(--jx-dur) var(--jx-ease);
}
.jx-section-more.jx-on-light{ color:var(--jx-navy-900); opacity:.62; border-color:rgba(11,22,40,.2); }
.jx-section-more.jx-on-light:hover{ opacity:1; border-color:rgba(11,22,40,.45); }
.jx-section-more.jx-on-dark{ color:rgba(255,255,255,.7); opacity:1; border-color:var(--jx-white-a22); }
.jx-section-more.jx-on-dark:hover{ color:#fff; border-color:rgba(255,255,255,.6); }

.jx-section-tools{ display:flex; align-items:center; gap:22px; flex-wrap:wrap; }
.jx-car-nav{ display:flex; gap:10px; }
.jx-car-btn{
  width:46px; height:46px; border:1px solid var(--jx-gold-a30); background:none; color:var(--jx-gold-300);
  font-family:var(--jx-font-ui); font-size:15px; cursor:pointer;
  transition:background var(--jx-dur-fast) var(--jx-ease), border-color var(--jx-dur-fast) var(--jx-ease), color var(--jx-dur-fast) var(--jx-ease);
}
.jx-car-btn:hover{ background:var(--jx-gold-a16); border-color:var(--jx-accent); color:#fff; }

@media(max-width:600px){
  .jx-section-head{ flex-direction:column; align-items:flex-start; gap:18px; }
  .jx-section-title{ font-size:38px; }
}

/* ---------------------------------------------------------------------- */
/* Most műsoron — helykitöltő (a valós naptár később kerül ide)            */
/* ---------------------------------------------------------------------- */
.jx-musor-placeholder-section{ background:var(--jx-surface-light); padding:var(--jx-section-y-light) var(--jx-pad-inline); }

@media(max-width:1024px){ .jx-musor-placeholder-section{ padding:var(--jx-section-y-tablet) var(--jx-gutter-tablet); } }
@media(max-width:600px){ .jx-musor-placeholder-section{ padding:var(--jx-section-y-mobile) var(--jx-gutter-mobile); } }

/* ---------------------------------------------------------------------- */
/* Kiemelt előadásaink — carousel (natív scroll-snap, húzható + gombos)    */
/* ---------------------------------------------------------------------- */
.jx-highlights-section{ background:var(--jx-navy-700); padding:var(--jx-section-y-dark) var(--jx-pad-inline); border-top:var(--jx-line-gold-faint); }
.jx-car-row{
  display:flex; gap:28px; overflow-x:auto; scroll-behavior:smooth; scrollbar-width:none;
  scroll-snap-type:x mandatory; scroll-padding-inline:10px; padding:10px 10px 4px; margin:-10px -10px 0; cursor:grab;
}
.jx-car-row:active{ cursor:grabbing; }
.jx-car-row::-webkit-scrollbar{ display:none; }
.jx-hcard{
  flex:none; width:calc((100% - 56px) / 3); min-width:296px; scroll-snap-align:start;
  background:rgba(255,255,255,.025); border:1px solid var(--jx-gold-a16); display:flex; flex-direction:column;
  text-decoration:none; color:inherit; transition:border-color var(--jx-dur) var(--jx-ease);
}
.jx-hcard:hover{ border-color:var(--jx-gold-a45); }
.jx-hcard-media{ aspect-ratio:4/3; position:relative; overflow:hidden; background-size:cover; background-position:center; }
.jx-hcard-media-placeholder{
  width:100%; height:100%; display:flex; align-items:center; justify-content:center;
  background-image:var(--jx-texture-hatch);
}
.jx-hcard-caption{ font-family:var(--jx-font-ui); font-size:9.5px; letter-spacing:.2em; text-transform:uppercase; color:rgba(197,168,74,.4); text-align:center; padding:0 22px; }
.jx-hcard-body{ padding:28px 30px 32px; display:flex; flex-direction:column; flex:1; gap:12px; }
.jx-hcard-title{ font-family:var(--jx-font-display); font-size:31px; font-weight:400; color:#fff; line-height:1.16; margin:0; }
.jx-hcard-meta{ font-family:var(--jx-font-ui); font-size:12px; letter-spacing:.06em; color:rgba(232,213,163,.6); }
.jx-hcard-links{ margin-top:auto; padding-top:20px; display:flex; align-items:center; }
.jx-hcard-cta{
  font-family:var(--jx-font-ui); font-size:10.5px; font-weight:500; letter-spacing:.13em; text-transform:uppercase;
  padding:13px 24px; background:var(--jx-action); color:#fff; cursor:pointer;
  transition:background var(--jx-dur) var(--jx-ease);
}
.jx-hcard-cta:hover{ background:var(--jx-action-hover); }

@media(max-width:1024px){ .jx-highlights-section{ padding:var(--jx-section-y-tablet) var(--jx-gutter-tablet); } }
@media(max-width:600px){
  .jx-highlights-section{ padding:var(--jx-section-y-mobile) var(--jx-gutter-mobile); }
  .jx-hcard{ width:82%; min-width:0; }
  .jx-hcard-title{ font-size:27px; }
}

/* ---------------------------------------------------------------------- */
/* Hírek — news cards                                                      */
/* ---------------------------------------------------------------------- */
.jx-news-section{ background:var(--jx-surface-light); padding:var(--jx-section-y-light) var(--jx-pad-inline); }
.jx-news-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:28px; }
.jx-news-card{
  display:flex; flex-direction:column; background:var(--jx-surface-card); border:var(--jx-line-cream);
  text-decoration:none; transition:border-color var(--jx-dur) var(--jx-ease);
}
.jx-news-card:hover{ border-color:var(--jx-gold-a45); }
.jx-news-thumb{ aspect-ratio:3/2; background:var(--jx-cream-300); overflow:hidden; }
.jx-news-thumb img{ width:100%; height:100%; object-fit:cover; display:block; }
.jx-news-body{ padding:28px 30px 32px; display:flex; flex-direction:column; flex:1; gap:12px; }
.jx-news-date{ font-family:var(--jx-font-ui); font-size:12px; letter-spacing:.06em; color:var(--jx-ink-500); }
.jx-news-title{
  font-family:var(--jx-font-display); font-size:31px; font-weight:400; color:var(--jx-text-heading-light);
  line-height:1.16; margin:0;
}
.jx-news-excerpt{ font-family:var(--jx-font-ui); font-size:14px; line-height:1.76; color:var(--jx-ink-500); font-weight:300; margin:0; }
.jx-news-links{ margin-top:auto; padding-top:20px; display:flex; align-items:center; }
.jx-news-alt{
  font-family:var(--jx-font-ui); font-size:10.5px; font-weight:500; letter-spacing:.14em; text-transform:uppercase;
  color:var(--jx-accent-on-light); display:inline-flex; align-items:center; border:1px solid rgba(138,115,38,.34);
  padding:9px 16px; text-decoration:none; transition:border-color var(--jx-dur) var(--jx-ease), background var(--jx-dur) var(--jx-ease);
}
.jx-news-card:hover .jx-news-alt{ border-color:var(--jx-accent-on-light); background:var(--jx-gold-a10); }

@media(max-width:1024px){ .jx-news-section{ padding:var(--jx-section-y-tablet) var(--jx-gutter-tablet); } .jx-news-grid{ grid-template-columns:1fr; gap:32px; } .jx-news-thumb{ aspect-ratio:auto; height:180px; } }
@media(max-width:600px){ .jx-news-section{ padding:var(--jx-section-y-mobile) var(--jx-gutter-mobile); } .jx-news-title{ font-size:27px; } }

/* A Hírek lista rácsán (nem a főoldali "Aktuális híreink" csíkon) a fenti fix
   180px magasság telefonon túl laposnak hatott — itt arányosan magasabbra állítjuk. */
@media(max-width:1024px){ .jx-plist-section .jx-news-thumb{ aspect-ratio:4/3; height:auto; } }

/* ---------------------------------------------------------------------- */
/* Nézőink mondták — testimonials                                          */
/* ---------------------------------------------------------------------- */
.jx-testimonials-section{ background:var(--jx-navy-900); padding:var(--jx-section-y-dark) var(--jx-pad-inline); border-top:var(--jx-line-gold-faint); }
.jx-testimonials-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:28px; }
.jx-testimonial-card{
  border:1px solid var(--jx-gold-a16); background:linear-gradient(180deg, rgba(197,168,74,.055), rgba(197,168,74,0));
  padding:40px 34px 34px; display:flex; flex-direction:column; gap:22px;
  transition:border-color var(--jx-dur) var(--jx-ease);
}
.jx-testimonial-card:hover{ border-color:var(--jx-gold-a45); }
.jx-testimonial-mark{ font-family:var(--jx-font-display); font-size:60px; line-height:.52; height:22px; color:var(--jx-accent); opacity:.55; }
.jx-testimonial-text{ margin:0; font-family:var(--jx-font-display); font-size:23px; font-style:italic; font-weight:300; color:#fff; line-height:1.55; }
.jx-testimonial-stars{ margin-top:auto; padding-top:12px; text-align:center; color:var(--jx-accent); font-size:26px; letter-spacing:.16em; }

@media(max-width:1024px){ .jx-testimonials-section{ padding:var(--jx-section-y-tablet) var(--jx-gutter-tablet); } .jx-testimonials-grid{ grid-template-columns:1fr; } }
@media(max-width:600px){ .jx-testimonials-section{ padding:var(--jx-section-y-mobile) var(--jx-gutter-mobile); } .jx-testimonial-text{ font-size:20px; } .jx-testimonial-stars{ font-size:22px; } }

/* ---------------------------------------------------------------------- */
/* Amire büszkék vagyunk — stats (krém alapon)                             */
/* ---------------------------------------------------------------------- */
.jx-stats-section{ background:var(--jx-surface-light); padding:var(--jx-section-y-light) var(--jx-pad-inline); }
.jx-stats-grid{ display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(11,22,40,.16); }
.jx-stat{ padding:36px 30px 8px 0; }
.jx-stat + .jx-stat{ border-left:1px solid rgba(11,22,40,.09); padding-left:30px; }
.jx-stat-num{ font-family:var(--jx-font-display); font-size:66px; font-weight:300; color:var(--jx-text-heading-light); line-height:1; }
.jx-stat-label{ margin-top:10px; font-family:var(--jx-font-ui); font-size:13.5px; color:var(--jx-ink-500); line-height:1.5; }
.jx-stats-body{
  font-family:var(--jx-font-ui); font-size:15px; line-height:1.9; color:var(--jx-ink-500); font-weight:300;
  max-width:700px; margin:48px 0 0;
}

@media(max-width:1024px){
  .jx-stats-section{ padding:var(--jx-section-y-tablet) var(--jx-gutter-tablet); }
  .jx-stats-grid{ grid-template-columns:1fr 1fr; }
  .jx-stat{ padding:30px 24px 22px 0; }
  .jx-stat + .jx-stat{ border-left:1px solid rgba(11,22,40,.09); padding-left:24px; }
  .jx-stat:nth-child(2n+1){ border-left:none; padding-left:0; }
  .jx-stat:nth-child(n+3){ border-top:1px solid rgba(11,22,40,.09); }
}
@media(max-width:600px){
  .jx-stats-section{ padding:var(--jx-section-y-mobile) var(--jx-gutter-mobile); }
  .jx-stats-grid{ grid-template-columns:1fr; }
  .jx-stat, .jx-stat + .jx-stat{ border-left:none; padding-left:0; padding-right:0; }
  .jx-stat:nth-child(n+2){ border-top:1px solid rgba(11,22,40,.09); }
  .jx-stat-num{ font-size:50px; }
}

/* ---------------------------------------------------------------------- */
/* Partnereink és támogatóink — statikus rács (navy alapon, fehér logók)   */
/* ---------------------------------------------------------------------- */
.jx-partners-section{ background:var(--jx-navy-700); padding:88px var(--jx-pad-inline); border-top:var(--jx-line-gold-faint); }
.jx-partners-grid{ display:grid; grid-template-columns:repeat(6,1fr); gap:24px; }
.jx-partner-item{
  min-width:0; aspect-ratio:3/2; display:flex; align-items:center; justify-content:center;
  padding:12px; overflow:hidden; transition:background var(--jx-dur-fast) var(--jx-ease);
}
.jx-partner-item img{
  display:block; max-width:100%; max-height:60%; width:auto; height:auto; object-fit:contain;
  opacity:.6; transition:opacity var(--jx-dur-fast) var(--jx-ease);
}
.jx-partner-item:hover{ background:var(--jx-gold-a10); }
.jx-partner-item:hover img{ opacity:1; }

@media(max-width:1180px){ .jx-partners-grid{ grid-template-columns:repeat(4,1fr); } }
@media(max-width:1024px){ .jx-partners-grid{ grid-template-columns:repeat(3,1fr); gap:16px; } }
@media(max-width:600px){
  .jx-partners-section{ padding:40px var(--jx-gutter-mobile); }
  .jx-partners-grid{ grid-template-columns:repeat(4,1fr); gap:6px; }
  .jx-partner-item{ padding:2px; aspect-ratio:1/1; }
  .jx-partner-item img{ max-height:42%; }
}

/* ---------------------------------------------------------------------- */
/* Generikus helykitöltő szekció (krém alapon)                             */
/* ---------------------------------------------------------------------- */
.jx-placeholder-section{ background:var(--jx-surface-light); padding:var(--jx-section-y-light) var(--jx-pad-inline); }
.jx-placeholder-box{
  border:1px dashed var(--jx-cream-300); background:var(--jx-cream-100);
  padding:96px 40px; display:flex; align-items:center; justify-content:center; text-align:center;
}
.jx-placeholder-box span{
  font-family:var(--jx-font-ui); font-size:11px; letter-spacing:.18em; text-transform:uppercase; color:var(--jx-ink-500);
}

@media(max-width:1024px){ .jx-placeholder-section{ padding:var(--jx-section-y-tablet) var(--jx-gutter-tablet); } }
@media(max-width:600px){ .jx-placeholder-section{ padding:var(--jx-section-y-mobile) var(--jx-gutter-mobile); } .jx-placeholder-box{ padding:64px 24px; } }

/* ---------------------------------------------------------------------- */
/* Előadás oldal (single-eloadasok) — hero                                 */
/* Forrás: info/A Da Vinci-kod.dc.html. A #musor szekció belseje (naptár)  */
/* külön komponens (layout/musor.php), ide csak a keretét adjuk.           */
/* ---------------------------------------------------------------------- */
.jx-phero{ position:relative; padding:340px var(--jx-pad-inline) 100px; overflow:hidden; background:var(--jx-navy-900); }
.jx-phero-bg{ position:absolute; inset:0; background-size:cover; background-position:center; }
.jx-phero-bg::after{
  content:''; position:absolute; inset:0;
  background-image:linear-gradient(to right,rgba(11,22,40,.88) 0%,rgba(11,22,40,.6) 45%,rgba(11,22,40,.2) 100%),
                   linear-gradient(to bottom,rgba(11,22,40,.5) 0%,rgba(11,22,40,.12) 40%,rgba(11,22,40,.88) 100%);
}
.jx-phero-texture{ position:absolute; inset:0; background-image:var(--jx-texture-curtain); pointer-events:none; }
.jx-phero-inner{ position:relative; z-index:2; }
.jx-phero-inner::before{
  content:''; position:absolute; z-index:-1; pointer-events:none;
  inset:-40px -60px -20px -80px;
  background:linear-gradient(115deg, rgba(11,22,40,.62) 0%, rgba(11,22,40,.42) 32%, rgba(11,22,40,.16) 58%, transparent 78%);
  filter:blur(46px);
}
.jx-ph1{ font-family:var(--jx-font-display); font-size:var(--jx-size-display-2); font-weight:300; line-height:var(--jx-leading-display); color:#fff; letter-spacing:var(--jx-track-display); max-width:900px; margin:0 0 26px; }
.jx-pquickmeta{
  display:inline-flex; flex-wrap:wrap; gap:0; margin-bottom:34px;
  border-top:var(--jx-line-gold); border-bottom:var(--jx-line-gold);
}
.jx-pqm{ padding:18px 32px 18px 0; margin-right:32px; border-right:var(--jx-line-white-faint); padding-right:32px; }
.jx-pqm:last-child{ border-right:none; margin-right:0; padding-right:0; }
.jx-pqm-lbl{ font-family:var(--jx-font-ui); font-size:9.5px; letter-spacing:.2em; text-transform:uppercase; color:rgba(255,255,255,.3); margin-bottom:7px; }
.jx-pqm-val{ font-family:var(--jx-font-display); font-size:22px; font-weight:400; color:#fff; }
.jx-plead{ font-family:var(--jx-font-ui); font-size:16.5px; line-height:1.85; color:rgba(255,255,255,.62); font-weight:300; margin:0 0 34px; max-width:660px; }
.jx-phero-btns{ display:flex; gap:16px; flex-wrap:wrap; }

@media(max-width:1024px){
  .jx-phero{ padding:270px var(--jx-gutter-tablet) 76px; }
  .jx-ph1{ font-size:52px; }
}
@media(max-width:600px){
  .jx-phero{ padding:220px var(--jx-gutter-mobile) 56px; }
  .jx-ph1{ font-size:38px; }
  .jx-pqm{ padding-right:22px; margin-right:22px; }
  .jx-pqm-val{ font-size:18px; }
}

/* ---------------------------------------------------------------------- */
/* Előadás oldal — sticky tab-sáv (színlap / szereplők / trailer / …)      */
/* A pozíció és a horgony-eltolás a nav tényleges magasságából számolódik, */
/* ld. jatekszin-design-system.js updateStickyOffsets().                  */
/* ---------------------------------------------------------------------- */
.jx-tabs{
  position:sticky; top:var(--jx-nav-h,84px); z-index:150;
  background:var(--jx-bar-bg); backdrop-filter:var(--jx-blur-bar);
  border-top:var(--jx-line-gold-faint); border-bottom:var(--jx-line-gold-faint);
  padding-inline:var(--jx-pad-inline);
  display:flex; gap:6px; overflow-x:auto; scrollbar-width:none;
}
.jx-tabs::-webkit-scrollbar{ display:none; }
.jx-tab{
  flex:none; font-family:var(--jx-font-ui); font-size:11px; letter-spacing:var(--jx-track-nav);
  text-transform:uppercase; color:rgba(255,255,255,.42); text-decoration:none;
  padding:22px 26px; border-bottom:2px solid transparent;
  transition:color var(--jx-dur-fast) var(--jx-ease), border-color var(--jx-dur-fast) var(--jx-ease);
}
.jx-tab:hover{ color:#fff; }
.jx-tab.is-active{ color:var(--jx-accent); border-bottom-color:var(--jx-accent); }

#szinlap,#szereplok,#trailer,#musor,#galeria{ scroll-margin-top:var(--jx-anchor-offset,140px); }

@media(max-width:1024px){ .jx-tabs{ padding-inline:var(--jx-gutter-tablet); } }
@media(max-width:600px){ .jx-tabs{ padding-inline:var(--jx-gutter-mobile); } .jx-tab{ padding:18px 18px; } }

/* ---------------------------------------------------------------------- */
/* Színlap — szerepkör/név hitelesítő lista                                */
/* ---------------------------------------------------------------------- */
.jx-szinlap-section{ background:var(--jx-surface-light); padding:var(--jx-section-y-light) var(--jx-pad-inline); }
.jx-credits{ display:grid; grid-template-columns:repeat(2,1fr); gap:0 72px; }
.jx-cred{ display:flex; justify-content:space-between; align-items:baseline; gap:20px; padding:17px 0; border-bottom:var(--jx-line-cream); }
.jx-cred-role{ font-family:var(--jx-font-ui); font-size:12px; letter-spacing:var(--jx-track-button); text-transform:uppercase; color:var(--jx-text-on-light-muted); flex-shrink:0; }
.jx-cred-name{ font-family:var(--jx-font-display); font-size:21px; font-weight:500; color:var(--jx-text-heading-light); text-align:right; }
.jx-cred.jx-cred-hi{ border-bottom-color:var(--jx-crimson-a24); }
.jx-cred.jx-cred-hi .jx-cred-name{ color:var(--jx-action); font-size:24px; }

@media(max-width:1024px){ .jx-szinlap-section{ padding:var(--jx-section-y-tablet) var(--jx-gutter-tablet); } .jx-credits{ grid-template-columns:1fr; gap:0; } }
@media(max-width:600px){ .jx-szinlap-section{ padding:var(--jx-section-y-mobile) var(--jx-gutter-mobile); } }

/* ---------------------------------------------------------------------- */
/* Szereplők — szereposztás rács                                           */
/* ---------------------------------------------------------------------- */
.jx-szereplok-section{ background:var(--jx-navy-900); padding:var(--jx-section-y-dark) var(--jx-pad-inline); }
.jx-cast{ display:grid; grid-template-columns:repeat(4,1fr); gap:32px; }
.jx-cmem{ cursor:pointer; text-decoration:none; display:block; }
.jx-cmem-img{ aspect-ratio:3/4; background-color:var(--jx-navy-800); background-size:cover; background-position:center; margin-bottom:18px; overflow:hidden; }
.jx-cmem-img-inner{ width:100%; height:100%; transition:transform .5s var(--jx-ease); background-size:cover; background-position:center; }
.jx-cmem:hover .jx-cmem-img-inner{ transform:scale(1.04); }
.jx-cmem-role{ font-family:var(--jx-font-ui); font-size:11px; letter-spacing:var(--jx-track-label); text-transform:uppercase; color:var(--jx-accent); margin-bottom:8px; line-height:1.6; }
.jx-cmem-name{ font-family:var(--jx-font-display); font-size:24px; font-weight:500; color:#fff; line-height:1.2; transition:color var(--jx-dur-fast) var(--jx-ease); }
.jx-cmem:hover .jx-cmem-name{ color:var(--jx-gold-300); }

@media(max-width:1180px){ .jx-cast{ grid-template-columns:repeat(3,1fr); } }
@media(max-width:1024px){ .jx-szereplok-section{ padding:var(--jx-section-y-tablet) var(--jx-gutter-tablet); } .jx-cast{ grid-template-columns:repeat(2,1fr); } }
@media(max-width:600px){ .jx-szereplok-section{ padding:var(--jx-section-y-mobile) var(--jx-gutter-mobile); } .jx-cast{ grid-template-columns:1fr; } }

/* ---------------------------------------------------------------------- */
/* Trailer                                                                  */
/* ---------------------------------------------------------------------- */
.jx-trailer-section{ background:var(--jx-navy-700); padding:var(--jx-section-y-dark) var(--jx-pad-inline); }
.jx-trailer-frame{ position:relative; aspect-ratio:16/9; background:var(--jx-tint-indigo); overflow:hidden; border:var(--jx-line-gold-faint); }
.jx-trailer-frame video{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.jx-play-btn{
  position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); z-index:2;
  width:82px; height:82px; border-radius:50%; border:1px solid var(--jx-gold-a45);
  background:rgba(11,22,40,.4); display:flex; align-items:center; justify-content:center;
  transition:background var(--jx-dur) var(--jx-ease), transform var(--jx-dur) var(--jx-ease); cursor:pointer;
}
.jx-play-btn:hover{ background:var(--jx-gold-a16); transform:translate(-50%,-50%) scale(1.06); }
.jx-play-tri{ width:0; height:0; border-left:20px solid var(--jx-accent); border-top:12px solid transparent; border-bottom:12px solid transparent; margin-left:6px; }
.jx-trailer-lbl{ position:absolute; left:20px; bottom:16px; z-index:2; font-family:var(--jx-font-ui); font-size:10px; letter-spacing:.2em; text-transform:uppercase; color:rgba(255,255,255,.55); }

@media(max-width:1024px){ .jx-trailer-section{ padding:var(--jx-section-y-tablet) var(--jx-gutter-tablet); } }
@media(max-width:600px){ .jx-trailer-section{ padding:var(--jx-section-y-mobile) var(--jx-gutter-mobile); } .jx-play-btn{ width:64px; height:64px; } }

/* ---------------------------------------------------------------------- */
/* Az adott előadás műsora — csak keret a layout/musor.php köré            */
/* ---------------------------------------------------------------------- */
.jx-musor-embed-section{ background:var(--jx-surface-light); padding:var(--jx-section-y-light) var(--jx-pad-inline) 40px; }

@media(max-width:1024px){ .jx-musor-embed-section{ padding:var(--jx-section-y-tablet) var(--jx-gutter-tablet) 40px; } }
@media(max-width:600px){ .jx-musor-embed-section{ padding:var(--jx-section-y-mobile) var(--jx-gutter-mobile) 32px; } }

/* ---------------------------------------------------------------------- */
/* Galéria — előadásfotók rácsa (lightbox: functions.php-beli meglévő JS)  */
/* ---------------------------------------------------------------------- */
.jx-galeria-section{ background:var(--jx-navy-900); padding:var(--jx-section-y-dark) var(--jx-pad-inline); }
/* Masonry oszlopokkal: minden kép a saját eredeti képarányát tartja meg, nincs kényszerített vágás. */
.jx-gal{ column-count:4; column-gap:14px; }
.jx-gcell{ position:relative; overflow:hidden; background-color:var(--jx-navy-800); cursor:pointer; break-inside:avoid; margin-bottom:14px; }
.jx-gcell-inner{ display:block; width:100%; height:auto; transition:transform .55s var(--jx-ease); }
.jx-gcell:hover .jx-gcell-inner{ transform:scale(1.06); }

@media(max-width:1180px){ .jx-gal{ column-count:3; } }
@media(max-width:1024px){ .jx-galeria-section{ padding:var(--jx-section-y-tablet) var(--jx-gutter-tablet); } .jx-gal{ column-count:2; } }
@media(max-width:600px){ .jx-galeria-section{ padding:var(--jx-section-y-mobile) var(--jx-gutter-mobile); } .jx-gal{ column-count:1; } }

/* ---------------------------------------------------------------------- */
/* Footer                                                                   */
/* ---------------------------------------------------------------------- */
.jx-footer{ background:var(--jx-surface-page); border-top:1px solid var(--jx-gold-a10); padding:72px var(--jx-pad-inline) 48px; }
.jx-footer-grid{ display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:60px; padding-bottom:52px; border-bottom:var(--jx-line-white-faint); }
.jx-footer-name{ font-family:var(--jx-font-display); font-size:24px; font-weight:600; letter-spacing:.13em; text-transform:uppercase; color:#fff; margin:0 0 14px; }
.jx-footer-health{ display:block; font-family:var(--jx-font-ui); font-size:13px; font-weight:300; line-height:1.6; color:rgba(255,255,255,.36); text-decoration:none; max-width:260px; margin-bottom:20px; }
.jx-footer-health:hover{ color:rgba(255,255,255,.6); }
.jx-footer-social-row{ display:flex; align-items:center; gap:16px; flex-wrap:wrap; }
.jx-footer-social-row a{ color:rgba(255,255,255,.5); transition:color var(--jx-dur-fast) var(--jx-ease); }
.jx-footer-social-row a:hover{ color:var(--jx-accent); }
.jx-footer-social-row svg{ width:22px; height:22px; }
.jx-footer-col-title{ font-family:var(--jx-font-ui); font-size:11px; letter-spacing:.2em; text-transform:uppercase; color:var(--jx-accent); margin-bottom:20px; }
.jx-footer-links{ display:flex; flex-direction:column; gap:11px; }
.jx-footer-link{ font-family:var(--jx-font-ui); font-size:14px; color:rgba(255,255,255,.48); text-decoration:none; transition:color var(--jx-dur-fast) var(--jx-ease); }
.jx-footer-link:hover{ color:#fff; }
span.jx-footer-link{ display:block; }
.jx-footer-bottom{ display:flex; justify-content:center; align-items:center; padding-top:36px; text-align:center; }
.jx-footer-copy{ font-family:var(--jx-font-ui); font-size:12px; color:rgba(255,255,255,.32); }

@media(max-width:1024px){
  .jx-footer{ padding:56px var(--jx-gutter-tablet) 36px; }
  .jx-footer-grid{ grid-template-columns:1fr 1fr; gap:40px; }
}
@media(max-width:600px){
  .jx-footer{ padding:48px var(--jx-gutter-mobile) 32px; }
  .jx-footer-grid{ grid-template-columns:1fr; gap:32px; }
}

/* ---------------------------------------------------------------------- */
/* Előadások — repertoár lista (archive-eloadasok)                         */
/* Forrás: info/Eloadasok.html                                             */
/* ---------------------------------------------------------------------- */
.jx-lhero{ position:relative; padding:210px var(--jx-pad-inline) 64px; overflow:hidden; background:var(--jx-navy-900); }
.jx-lhero-bg{ position:absolute; inset:0; background-image:var(--jx-glow-spotlight), linear-gradient(to bottom, var(--jx-navy-800) 0%, var(--jx-navy-900) 100%); }
.jx-lhero-texture{ position:absolute; inset:0; background-image:var(--jx-texture-curtain); pointer-events:none; }
.jx-lhero-in{ position:relative; z-index:2; display:flex; align-items:flex-end; justify-content:space-between; gap:48px; flex-wrap:wrap; }
.jx-lhero-title{ margin:0; font-family:var(--jx-font-display); font-size:74px; font-weight:300; line-height:var(--jx-leading-display); color:#fff; letter-spacing:var(--jx-track-display); }
.jx-lhero-sub{ margin:18px 0 0; font-family:var(--jx-font-ui); font-size:16px; line-height:1.8; color:rgba(255,255,255,.5); font-weight:300; max-width:430px; }

@media(max-width:1024px){ .jx-lhero{ padding:168px var(--jx-gutter-tablet) 52px; } .jx-lhero-title{ font-size:52px; } }
@media(max-width:600px){ .jx-lhero{ padding:140px var(--jx-gutter-mobile) 40px; } .jx-lhero-title{ font-size:38px; } }

/* Sticky szűrősáv — a nav aktuális magasságához igazodik (--jx-nav-h, ld. jatekszin-design-system.js) */
.jx-ctrl{
  position:sticky; top:var(--jx-nav-h,84px); z-index:150;
  background:var(--jx-bar-bg); backdrop-filter:var(--jx-blur-bar);
  border-top:var(--jx-line-gold-faint); border-bottom:var(--jx-line-gold-faint);
  padding:16px var(--jx-pad-inline);
  display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap;
}
.jx-ctrl-left{ display:flex; align-items:center; gap:18px; flex:1; min-width:280px; }
.jx-search{ position:relative; display:flex; align-items:center; flex:1; max-width:320px; border:1px solid rgba(255,255,255,.16); transition:border-color var(--jx-dur) var(--jx-ease); }
.jx-search:focus-within{ border-color:var(--jx-gold-a45); }
.jx-search input{ flex:1; min-width:0; background:none; border:none; outline:none; font-family:var(--jx-font-ui); font-size:12.5px; font-weight:300; letter-spacing:.04em; color:#fff; padding:12px 14px; -webkit-appearance:none; appearance:none; }
.jx-search input::placeholder{ color:rgba(255,255,255,.34); letter-spacing:.09em; text-transform:uppercase; font-size:10.5px; }
/* A böngésző natív törlés-ikonja input[type=search]-ön a sajátunkkal (.jx-search-clear) duplikálódna. */
.jx-search input::-webkit-search-cancel-button,
.jx-search input::-webkit-search-decoration{ -webkit-appearance:none; appearance:none; display:none; }
.jx-search-clear{ background:none; border:none; color:rgba(255,255,255,.4); font-size:15px; line-height:1; cursor:pointer; padding:0 12px; font-family:var(--jx-font-ui); transition:color var(--jx-dur-fast) var(--jx-ease); }
.jx-search-clear:hover{ color:#fff; }
.jx-search-clear[hidden]{ display:none; }
.jx-result-count{ font-family:var(--jx-font-ui); font-size:10.5px; letter-spacing:.16em; text-transform:uppercase; color:rgba(255,255,255,.34); white-space:nowrap; }
.jx-ctrl-right{ display:flex; align-items:center; gap:26px; flex-wrap:wrap; }
.jx-filters{ display:flex; gap:7px; flex-wrap:wrap; }
.jx-fchip{ font-family:var(--jx-font-ui); font-size:10px; letter-spacing:.14em; text-transform:uppercase; padding:9px 16px; border:1px solid rgba(255,255,255,.16); color:rgba(255,255,255,.5); background:none; cursor:pointer; transition:background var(--jx-dur) var(--jx-ease), border-color var(--jx-dur) var(--jx-ease), color var(--jx-dur) var(--jx-ease); }
.jx-fchip:hover{ color:#fff; border-color:rgba(255,255,255,.4); }
.jx-fchip.is-on{ background:var(--jx-accent); border-color:var(--jx-accent); color:var(--jx-navy-900); font-weight:500; }

@media(max-width:1024px){ .jx-ctrl{ padding:14px var(--jx-gutter-tablet); } }
@media(max-width:600px){
  /* Mobilon a szűrősáv a lapos hamburger-navval együtt már túl sok helyet venne
     el fixen a képernyő tetején — itt inkább a tartalommal együtt görgethető. */
  .jx-ctrl{ position:static; padding:14px var(--jx-gutter-mobile); gap:12px; flex-direction:column; align-items:stretch; }
  .jx-ctrl-left{ min-width:0; gap:12px; }
  .jx-search{ max-width:none; }
  .jx-ctrl-right{ gap:12px; width:100%; }
  .jx-filters{ display:grid; grid-template-columns:repeat(3,1fr); gap:6px; width:100%; }
  .jx-fchip{ padding:10px 6px; font-size:9.5px; text-align:center; letter-spacing:.09em; }
}

/* Előadás-rács */
.jx-plist-section{ background:var(--jx-surface-light); padding:76px var(--jx-pad-inline) 100px; }
.jx-pgrid{ display:grid; grid-template-columns:repeat(4,1fr); gap:28px; }
.jx-pcard{ background:var(--jx-surface-card); border:var(--jx-line-cream); display:flex; flex-direction:column; transition:box-shadow var(--jx-dur-lift) var(--jx-ease), border-color var(--jx-dur) var(--jx-ease); }
.jx-pcard:hover{ box-shadow:var(--jx-shadow-card-hover); border-color:var(--jx-gold-a45); }
.jx-pcard[hidden]{ display:none; }
.jx-pcard-img{ display:block; aspect-ratio:16/11; position:relative; overflow:hidden; background-color:var(--jx-navy-900); background-image:linear-gradient(to bottom, var(--jx-navy-800), var(--jx-navy-900)); background-size:cover; background-position:center; }
.jx-pcard-img-placeholder{ position:absolute; inset:0; background-image:var(--jx-texture-hatch); display:flex; flex-direction:column; align-items:center; justify-content:center; gap:20px; }
.jx-pcard-img .jx-ph-mark{ width:52px; height:52px; border:1px solid var(--jx-gold-a45); transform:rotate(45deg); }
.jx-pcard-img-lbl{ font-family:var(--jx-font-ui); font-size:9px; letter-spacing:.2em; text-transform:uppercase; color:rgba(255,255,255,.3); text-align:center; padding:0 18px; line-height:1.7; }
.jx-pcard-body{ padding:22px 24px 26px; display:flex; flex-direction:column; flex:1; gap:9px; }
.jx-pcard-author{ font-family:var(--jx-font-ui); font-size:10px; letter-spacing:.16em; text-transform:uppercase; color:var(--jx-accent-on-light); }
.jx-pcard-title{ display:block; font-family:var(--jx-font-display); font-size:25px; font-weight:500; color:var(--jx-text-heading-light); line-height:1.16; text-decoration:none; transition:color var(--jx-dur-fast) var(--jx-ease); }
.jx-pcard-title:hover{ color:var(--jx-action); }
.jx-pcard-teaser{ margin:0; font-family:var(--jx-font-ui); font-size:13.5px; line-height:1.72; color:var(--jx-text-on-light-muted); font-weight:300; }
.jx-pcard-foot{ margin-top:auto; padding-top:18px; display:flex; align-items:center; justify-content:space-between; gap:14px; }
.jx-pcard-link{ font-family:var(--jx-font-ui); font-size:10.5px; font-weight:500; letter-spacing:.14em; text-transform:uppercase; color:var(--jx-accent-on-light); display:inline-flex; align-items:center; border:1px solid rgba(138,115,38,.34); padding:9px 16px; text-decoration:none; transition:border-color var(--jx-dur) var(--jx-ease), background var(--jx-dur) var(--jx-ease); }
.jx-pcard:hover .jx-pcard-link{ border-color:var(--jx-accent-on-light); background:var(--jx-gold-a10); }
.jx-pcard-buy{ font-family:var(--jx-font-ui); font-size:10px; font-weight:500; letter-spacing:.13em; text-transform:uppercase; color:#fff; background:var(--jx-action); padding:9px 16px; text-decoration:none; transition:background var(--jx-dur) var(--jx-ease); }
.jx-pcard-buy:hover{ background:var(--jx-action-hover); }

.jx-empty-note{ padding:78px 0; text-align:center; font-family:var(--jx-font-display); font-size:26px; font-weight:300; color:var(--jx-text-on-light-muted); font-style:italic; }
.jx-empty-note[hidden]{ display:none; }
.jx-empty-note button{ margin-top:20px; display:block; margin-inline:auto; font-family:var(--jx-font-ui); font-style:normal; font-size:10.5px; letter-spacing:.14em; text-transform:uppercase; background:none; border:1px solid var(--jx-cream-300); color:var(--jx-navy-900); padding:12px 24px; cursor:pointer; transition:border-color var(--jx-dur) var(--jx-ease); }
.jx-empty-note button:hover{ border-color:var(--jx-accent-on-light); }

@media(max-width:1180px){ .jx-pgrid{ grid-template-columns:repeat(3,1fr); } }
@media(max-width:1024px){ .jx-plist-section{ padding:60px var(--jx-gutter-tablet) 80px; } .jx-pgrid{ grid-template-columns:repeat(2,1fr); gap:20px; } }
@media(max-width:600px){ .jx-plist-section{ padding:48px var(--jx-gutter-mobile) 64px; } .jx-pgrid{ grid-template-columns:1fr; gap:22px; } }

/* Repertoár infósáv */
.jx-info-section{ background:var(--jx-navy-900); padding:88px var(--jx-pad-inline); }
.jx-info-band{ display:grid; grid-template-columns:repeat(3,1fr); gap:56px; }
.jx-info-title{ font-family:var(--jx-font-display); font-size:25px; font-weight:500; color:#fff; margin:0 0 12px; }
.jx-info-body{ margin:0; font-family:var(--jx-font-ui); font-size:14px; line-height:1.8; color:rgba(255,255,255,.45); font-weight:300; }
.jx-info-body a{ color:var(--jx-accent); text-decoration:none; transition:color var(--jx-dur-fast) var(--jx-ease); }
.jx-info-body a:hover{ color:var(--jx-gold-300); }

@media(max-width:1024px){ .jx-info-section{ padding:72px var(--jx-gutter-tablet); } .jx-info-band{ grid-template-columns:1fr; gap:36px; } }
@media(max-width:600px){ .jx-info-section{ padding:48px var(--jx-gutter-mobile); } }

/* ---------------------------------------------------------------------- */
/* Hírek — híratchívum lista (index.php, is_home)                          */
/* Forrás: info/Hirek.dc.html                                              */
/* ---------------------------------------------------------------------- */
.jx-lead{ display:grid; grid-template-columns:1fr 1fr; gap:0; background:var(--jx-surface-card); border:var(--jx-line-cream); margin-bottom:56px; text-decoration:none; color:inherit; transition:box-shadow var(--jx-dur-lift) var(--jx-ease), border-color var(--jx-dur) var(--jx-ease); }
.jx-lead:hover{ box-shadow:var(--jx-shadow-card-hover); border-color:var(--jx-gold-a45); }
.jx-lead-img{ position:relative; overflow:hidden; background-color:var(--jx-navy-900); min-height:400px; }
.jx-lead-img img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; }
.jx-lead-badge{ position:absolute; top:14px; left:14px; z-index:2; font-family:var(--jx-font-ui); font-size:9px; letter-spacing:.16em; text-transform:uppercase; padding:5px 11px; background:var(--jx-accent); color:var(--jx-navy-900); font-weight:500; }
.jx-lead-body{ padding:52px 54px; display:flex; flex-direction:column; justify-content:center; gap:16px; }
.jx-lead-meta{ font-family:var(--jx-font-ui); font-size:10.5px; letter-spacing:.16em; text-transform:uppercase; color:var(--jx-accent-on-light); }
.jx-lead-title{ display:block; font-family:var(--jx-font-display); font-size:44px; font-weight:400; color:var(--jx-text-heading-light); line-height:1.08; letter-spacing:-.01em; text-decoration:none; transition:color var(--jx-dur-fast) var(--jx-ease); }
.jx-lead:hover .jx-lead-title{ color:var(--jx-action); }
.jx-lead-teaser{ margin:0; font-family:var(--jx-font-ui); font-size:15px; line-height:1.8; color:var(--jx-text-on-light-muted); font-weight:300; max-width:440px; }
.jx-lead-link{ margin-top:8px; font-family:var(--jx-font-ui); font-size:10.5px; font-weight:500; letter-spacing:.14em; text-transform:uppercase; color:var(--jx-accent-on-light); display:inline-flex; align-items:center; gap:9px; border:1px solid rgba(138,115,38,.34); padding:13px 22px; align-self:flex-start; transition:border-color var(--jx-dur) var(--jx-ease), background var(--jx-dur) var(--jx-ease), gap var(--jx-dur) var(--jx-ease); }
.jx-lead:hover .jx-lead-link{ border-color:var(--jx-accent-on-light); background:var(--jx-gold-a10); gap:16px; }

@media(max-width:1024px){ .jx-lead{ grid-template-columns:1fr; } .jx-lead-img{ min-height:280px; } .jx-lead-body{ padding:36px 32px 40px; } .jx-lead-title{ font-size:34px; } }
@media(max-width:600px){ .jx-lead-title{ font-size:29px; } .jx-lead-body{ padding:30px 24px 34px; } }

/* Lapozó — a valós WP the_posts_pagination() kimenetét címkézi át (.page-numbers/.current/.dots),
   a .jx-pager wrapperbe zárva, hogy a még nem migrált oldalak (pl. archive-tarsulat.php,
   archive-karrier.php) meglévő css/pagination.css-alapú megjelenését ne érintse. */
.jx-pager{ margin-top:66px; }
.jx-pager .screen-reader-text{ position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.jx-pager .nav-links{ display:flex; align-items:center; justify-content:center; gap:8px; flex-wrap:wrap; list-style:none; }
.jx-pager .page-numbers{ font-family:var(--jx-font-ui); font-size:11px; letter-spacing:.14em; text-transform:uppercase; background:none; border:1px solid var(--jx-cream-300); color:var(--jx-text-on-light-muted); padding:12px 17px; min-width:44px; text-align:center; text-decoration:none; display:inline-flex; align-items:center; justify-content:center; border-radius:0; transition:border-color var(--jx-dur) var(--jx-ease), color var(--jx-dur) var(--jx-ease), background var(--jx-dur) var(--jx-ease); }
.jx-pager a.page-numbers:hover{ color:var(--jx-text-heading-light); border-color:var(--jx-accent-on-light); }
.jx-pager .page-numbers.current{ background:var(--jx-navy-900); border-color:var(--jx-navy-900); color:#fff; font-weight:500; }
.jx-pager .page-numbers.dots{ border-color:transparent; cursor:default; }

@media(max-width:600px){ .jx-pager{ margin-top:48px; } }

/* Hírlevél */
.jx-nl-section{ background:var(--jx-navy-900); padding:88px var(--jx-pad-inline); }
.jx-nl{ display:grid; grid-template-columns:1.1fr 1fr; gap:56px; align-items:end; }
.jx-nl-body{ margin:0; font-family:var(--jx-font-ui); font-size:15px; line-height:1.8; color:rgba(255,255,255,.45); font-weight:300; max-width:440px; }
.jx-nl-form{ display:flex; gap:0; border:1px solid rgba(255,255,255,.16); transition:border-color var(--jx-dur) var(--jx-ease); }
.jx-nl-form:focus-within{ border-color:var(--jx-gold-a45); }
.jx-nl-form input{ flex:1; min-width:0; background:none; border:none; outline:none; font-family:var(--jx-font-ui); font-size:13px; font-weight:300; color:#fff; padding:16px 18px; }
.jx-nl-form input::placeholder{ color:rgba(255,255,255,.34); letter-spacing:.09em; text-transform:uppercase; font-size:10.5px; }
.jx-nl-form button{ font-family:var(--jx-font-ui); font-size:11px; font-weight:500; letter-spacing:.13em; text-transform:uppercase; background:var(--jx-action); border:none; color:#fff; padding:16px 30px; cursor:pointer; transition:background var(--jx-dur) var(--jx-ease); }
.jx-nl-form button:hover{ background:var(--jx-action-hover); }

@media(max-width:1024px){ .jx-nl-section{ padding:72px var(--jx-gutter-tablet); } .jx-nl{ grid-template-columns:1fr; gap:28px; align-items:stretch; } }
@media(max-width:600px){ .jx-nl-section{ padding:60px var(--jx-gutter-mobile); } .jx-nl-form{ flex-direction:column; } }

/* ---------------------------------------------------------------------- */
/* Műsor — hónapnaptár + listanézet (layout/musor.php)                     */
/* Forrás: info/Musor.dc.html. Ugyanez a partial fut a Műsor oldalon        */
/* (teljes, sticky vezérlővel) és az előadás-oldalba ágyazva is             */
/* (.jx-mctrl-embedded módosítóval: nem sticky, mindig lista nézet).        */
/* ---------------------------------------------------------------------- */
.jx-mctrl{
  position:sticky; top:var(--jx-nav-h,84px); z-index:150;
  background:var(--jx-bar-bg); backdrop-filter:var(--jx-blur-bar);
  border-top:var(--jx-line-gold-faint); border-bottom:var(--jx-line-gold-faint);
  padding:16px var(--jx-pad-inline);
  display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap;
}
.jx-mctrl.jx-mctrl-embedded{ position:static; padding:0 0 28px; background:none; backdrop-filter:none; border:none; }
.jx-month-nav{ display:flex; align-items:center; gap:8px; }
.jx-mbtn{ width:42px; height:42px; border:1px solid var(--jx-gold-a30); background:none; color:var(--jx-accent); font-family:var(--jx-font-ui); font-size:15px; cursor:pointer; display:flex; align-items:center; justify-content:center; transition:background var(--jx-dur) var(--jx-ease), border-color var(--jx-dur) var(--jx-ease), opacity var(--jx-dur) var(--jx-ease); }
.jx-mbtn:hover{ background:var(--jx-gold-a16); border-color:var(--jx-accent); }
.jx-mbtn:disabled{ opacity:.22; cursor:default; }
.jx-mbtn:disabled:hover{ background:none; border-color:var(--jx-gold-a30); }
.jx-month-label{ font-family:var(--jx-font-display); font-size:29px; font-weight:400; color:#fff; min-width:212px; text-align:center; letter-spacing:.01em; }
.jx-mctrl-embedded .jx-month-label{ color:var(--jx-text-heading-light); }
.jx-mctrl-embedded .jx-mbtn{ color:var(--jx-accent-on-light); border-color:rgba(138,115,38,.34); }
.jx-mctrl-embedded .jx-mbtn:hover{ background:var(--jx-gold-a10); border-color:var(--jx-accent-on-light); }
.jx-viewtog{ display:flex; border:1px solid rgba(255,255,255,.16); }
.jx-vbtn{ font-family:var(--jx-font-ui); font-size:10px; letter-spacing:.14em; text-transform:uppercase; padding:10px 18px; background:none; border:none; color:rgba(255,255,255,.5); cursor:pointer; transition:all .28s var(--jx-ease); }
.jx-vbtn:hover{ color:#fff; }
.jx-vbtn.is-on{ background:var(--jx-gold-a16); color:var(--jx-accent); }

@media(max-width:1024px){ .jx-mctrl{ padding:14px var(--jx-gutter-tablet); } .jx-viewtog{ display:none; } }
@media(max-width:600px){
  .jx-mctrl{ padding:14px var(--jx-gutter-mobile); gap:12px; flex-direction:column; align-items:stretch; }
  .jx-month-nav{ width:100%; justify-content:space-between; gap:12px; }
  .jx-month-label{ font-size:25px; min-width:0; flex:1; }
}

/* Naptár-rács */
.jx-cal-head{ display:grid; grid-template-columns:repeat(7,1fr); gap:10px; margin-bottom:12px; }
.jx-cal-hcell{ font-family:var(--jx-font-ui); font-size:10px; letter-spacing:.18em; text-transform:uppercase; color:var(--jx-text-on-light-muted); padding-bottom:12px; border-bottom:var(--jx-line-cream); }
.jx-cal-grid{ display:grid; grid-template-columns:repeat(7,1fr); gap:10px; }
.jx-cell{ min-height:132px; background:var(--jx-surface-card); border:var(--jx-line-cream); padding:12px 11px; display:flex; flex-direction:column; gap:8px; transition:box-shadow var(--jx-dur) var(--jx-ease), border-color var(--jx-dur) var(--jx-ease); }
.jx-cell:hover{ box-shadow:0 14px 40px rgba(11,22,40,.09); }
.jx-cell.is-empty{ background:transparent; border-color:transparent; min-height:0; pointer-events:none; }
.jx-cell.is-empty:hover{ box-shadow:none; }
.jx-cell.is-weekend{ background:var(--jx-cream-100); }
.jx-cell-num{ font-family:var(--jx-font-display); font-size:22px; font-weight:500; color:var(--jx-text-heading-light); line-height:1; display:flex; align-items:baseline; gap:7px; }
.jx-cell-dow{ font-family:var(--jx-font-ui); font-size:9px; letter-spacing:.14em; text-transform:uppercase; color:var(--jx-text-on-light-muted); }
.jx-cell.is-today .jx-cell-num{ color:var(--jx-action); }
.jx-cell.is-today{ border-color:var(--jx-crimson-a24); }
.jx-cell.is-past{ opacity:.55; }
.jx-cell.is-past:hover{ box-shadow:none; }
.jx-ev{ display:block; border-left:2px solid var(--jx-accent); padding:5px 0 5px 8px; text-decoration:none; transition:border-color var(--jx-dur-fast) var(--jx-ease), background var(--jx-dur-fast) var(--jx-ease); }
.jx-ev:hover{ border-left-color:var(--jx-action); background:rgba(142,27,43,.045); }
.jx-ev.jx-ev-static{ cursor:default; }
.jx-ev.jx-ev-static:hover{ border-left-color:var(--jx-accent); background:none; }
.jx-ev-time{ font-family:var(--jx-font-ui); font-size:10px; letter-spacing:.09em; color:var(--jx-text-on-light-muted); margin-bottom:2px; }
.jx-ev-title{ font-family:var(--jx-font-display); font-size:15px; font-weight:500; color:var(--jx-text-heading-light); line-height:1.24; }
.jx-ev-tag{ font-family:var(--jx-font-ui); font-size:9px; letter-spacing:.1em; text-transform:uppercase; color:var(--jx-text-on-light-muted); margin-top:2px; }
.jx-ev-tag-alert{ font-family:var(--jx-font-ui); font-size:9px; font-weight:500; letter-spacing:.1em; text-transform:uppercase; color:var(--jx-action); margin-top:2px; }
.jx-ev-tag-gold{ font-family:var(--jx-font-ui); font-size:9px; font-weight:500; letter-spacing:.1em; text-transform:uppercase; color:var(--jx-accent-on-light); margin-top:2px; }

@media(max-width:1180px){ .jx-cell{ min-height:118px; } .jx-ev-title{ font-size:14px; } }

/* Lista nézet */
.jx-mlist{ display:grid; grid-template-columns:1fr; gap:0; }
.jx-mrow{ display:grid; grid-template-columns:auto 1fr auto; gap:26px; align-items:center; padding:22px 20px; margin-inline:-20px; border-bottom:var(--jx-line-cream); transition:background var(--jx-dur) var(--jx-ease), border-color var(--jx-dur) var(--jx-ease); }
.jx-mrow:hover{ background:rgba(255,255,255,.62); border-bottom-color:var(--jx-crimson-a24); }
.jx-mrow-date{ display:flex; align-items:baseline; gap:11px; min-width:210px; }
.jx-mrow-day{ font-family:var(--jx-font-display); font-size:38px; font-weight:300; color:var(--jx-text-heading-light); line-height:1; transition:color var(--jx-dur) var(--jx-ease); }
.jx-mrow:hover .jx-mrow-day{ color:var(--jx-action); }
.jx-mrow-dow{ font-family:var(--jx-font-ui); font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--jx-text-on-light-muted); }
.jx-mrow-title{ font-family:var(--jx-font-display); font-size:27px; font-weight:500; color:var(--jx-text-heading-light); line-height:1.2; }
.jx-mrow .jx-ev-tag, .jx-mrow .jx-ev-tag-alert, .jx-mrow .jx-ev-tag-gold{ font-size:11px; margin-top:5px; }
.jx-mrow-buy{ font-family:var(--jx-font-ui); font-size:10.5px; font-weight:500; letter-spacing:.14em; text-transform:uppercase; color:#fff; background:var(--jx-action); padding:11px 22px; text-decoration:none; white-space:nowrap; transition:background var(--jx-dur) var(--jx-ease); }
.jx-mrow-buy:hover{ background:var(--jx-action-hover); }

@media(max-width:600px){
  .jx-mrow{ grid-template-columns:1fr; gap:8px; padding:20px; align-items:start; }
  .jx-mrow-date{ min-width:0; flex-wrap:wrap; gap:3px 10px; }
  .jx-mrow-day{ font-size:32px; }
  .jx-mrow-title{ font-size:23px; }
  .jx-mrow-buy{ justify-self:end; margin-top:4px; }
}

/* Letölthető dokumentumok */
.jx-dl-section{ background:var(--jx-navy-900); padding:88px var(--jx-pad-inline); }
.jx-dl-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:14px; }
.jx-dl{ display:flex; align-items:center; justify-content:space-between; gap:22px; padding:26px 28px; border:1px solid var(--jx-gold-a22); background:rgba(255,255,255,.014); text-decoration:none; transition:background var(--jx-dur) var(--jx-ease), border-color var(--jx-dur) var(--jx-ease); }
.jx-dl:hover{ background:var(--jx-gold-a10); border-color:var(--jx-gold-a45); }
.jx-dl-title{ font-family:var(--jx-font-display); font-size:22px; font-weight:400; color:#fff; line-height:1.28; margin-bottom:6px; }
.jx-dl-meta{ font-family:var(--jx-font-ui); font-size:10.5px; letter-spacing:.16em; text-transform:uppercase; color:rgba(255,255,255,.32); }
.jx-dl-arrow{ font-size:19px; color:var(--jx-accent); transition:transform var(--jx-dur) var(--jx-ease); flex-shrink:0; }
.jx-dl:hover .jx-dl-arrow{ transform:translateY(3px); }

@media(max-width:1024px){ .jx-dl-section{ padding:72px var(--jx-gutter-tablet); } .jx-dl-grid{ grid-template-columns:1fr; } }
@media(max-width:600px){ .jx-dl-section{ padding:60px var(--jx-gutter-mobile); } }
