/* ===========================================================
   INCZÉDY — KÖZÖS STÍLUSFÁJL (style.css)
   - A közös szabályok több oldal selectorával vannak összevonva.
   - Oldal-specifikus szabályok: body.page-<oldal> scope.
   - Ne töröld a body.page-* osztályokat a HTML-ekből!
   =========================================================== */
/* Biztonsági alapértékek: minden oldalon érvényesek, az oldalspecifikus
   body.page-* definíciók felülírhatják őket. Nélkülük pl. a kapcsolat
   oldalon a .btn átlátszó marad sötét szöveggel (olvashatatlan gombok). */

/* ==================== GALÉRIA (gallery.html) ==================== */
body.page-gallery,body.page-kerdoivek{
  --bg:#070a14;
  --bg2:#0b1020;
  --ink:#eef1ff;
  --muted:#8a93b8;
  --line:rgba(140,160,255,.16);
  --green:#35ffa0;
  --blue:#5b6bff;
  --violet:#9d6bff;
  --cyan:#35d5ff;
  --glow-blue:0 0 24px rgba(53,255,160,.45),0 0 60px rgba(53,255,160,.18);
  --font-d:'Unbounded',sans-serif;
  --font-b:'Sora',sans-serif;
  --font-m:'JetBrains Mono',monospace;
}
/* 049: EGYETLEN univerzális reset minden oldalra (2026-09-29).
   Eddig NÉGY külön szabály volt (gallery/index/…, hirek, esemenyek/esemeny, admin)
   ELTÉRŐ kivétel-listával. A `*` reset specificitása (0,1,1) nagyobb a `.btn`-énél
   (0,1,0), így a kivétel nélküli oldalon a gombok paddingje lenullázódott, és a
   felirat kilógott a világos hátterükből. Most egy szabály, és az interaktív
   elemek (a, button, input, select, textarea) mindenütt kivétel. A :where() nulla
   specificitású, így a reset a leggyengébb: egyetlen komponens saját színét vagy
   paddingjét sem tudja felülírni. A box-sizing viszont mindenkire érvényes. */

/* 047: a linkek ne kapjanak automatikus kék/lila UA-színt, ne legyenek aláhúzva —
   de ez a LEGGYENGEBB szabály legyen: a :where() nulla specificitású, így a gombok
   és a link-komponensek (.btn, .qcard__btn, .back, .nav__links a …) a saját
   színüket megkapják. Korábban a `body.page-x a{color:inherit}` (0,1,1) felülírta
   a gombok sötét szövegét → világos betű a világos zölden, alig olvasható.
   KÖTELEZŐ, NEM ELHAGYHATÓ: a 049-es reset az `a`-kat KIZÁRJA a margin/padding
   lenullázásból, de a szín és az aláhúzás UA-szintű, és semmi más nem állítja
   vissza. Kihagyásakor minden hivatkozás lila és aláhúzott lett (kapcsolati
   e-mail, kártyacímek, eseménycímek, sőt az <a class="btn"> gombok felirata is). */

body.page-gallery .nav__links a,body.page-kapcsolat .nav__links a,body.page-kerdoivek .nav__links a,body.page-videok .nav__links a{font-family:var(--font-m);font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;color:#fff;transition:.3s}

body.page-gallery .nav__cta,body.page-kerdoivek .nav__cta{font-family:var(--font-m);font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;border:1px solid var(--line);padding:.6rem 1.2rem;color:var(--muted);transition:.3s}

body.page-gallery .nav__cta:hover,body.page-index .nav__cta:hover,body.page-kerdoivek .nav__cta:hover,body.page-szakmak .nav__cta:hover{border-color:var(--green);color:#fff;box-shadow:var(--glow-blue)}

body.page-gallery .section__title,body.page-kerdoivek .section__title,body.page-szakmak .section__title{
  font-family:var(--font-d);
  font-weight:400;
  font-size:clamp(1.7rem,7vw,4.6rem);
  letter-spacing:.03em;
  background:linear-gradient(90deg,#fff 45%,#7dffc4 95%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
}

body.page-gallery .gallery{columns:4 230px;column-gap:1.1rem;padding-bottom:3rem}

body.page-gallery .gallery__item{break-inside:avoid;margin-bottom:1.1rem;overflow:hidden;position:relative;cursor:zoom-in;border:1px solid var(--line);transition:.3s;background:var(--bg2)}

body.page-gallery .gallery__item img{width:100%;display:block;transition:.4s;filter:brightness(1.12) saturate(1.1)}

body.page-gallery .gallery__item:hover img{transform:scale(1.05);filter:brightness(1.18) saturate(1.25)}

body.page-gallery .gallery__item::after{content:"NAGYÍTÁS";position:absolute;left:.7rem;bottom:.6rem;font-family:var(--font-m);font-size:.55rem;letter-spacing:.25em;color:var(--green);opacity:0;transition:.3s;text-shadow:0 0 10px rgba(53,255,160,.8)}

/* ===== Szakmák (/szakmak) =====
   A kártya-dizájn a .gallery__item mintáját követi (border:1px solid var(--line),
   --green hover-glow, lift), csak a szakmákhoz tartozó elemekkel. */

/* A fejléc felső térközét a közös .section__head szabály adja (9rem): a most
   már tényleg rögzített (fixed) pirula-navbar alatt ez biztosítja a helyet.
   Korábban itt 5rem volt — az még a stílus nélküli navbarhoz volt méretezve,
   és a működő navbar alá csúszott volna a cím. */
body.page-szakmak .prog__lede{max-width:60ch;color:var(--muted);line-height:1.7;margin-top:1rem;white-space:pre-line}
/* A vezető bevezető szöveg a `::after` GRADIENS mögött áll (nem egy sötét
   kártyán), ezért a `--muted` (#8a93b8) kontrasztja lecsökken: a sötét
   `--bg`-n 6.5:1, de a színes gradiensen csak 4.5:1 (a 65. sor erősebb
   gradientjén 1.6:1) → a szöveg a képen elhasal. Ezért itt világosabb
   szín + SÖTÉT szövegaranyék (a .hero__badge mintája) kell, hogy bármelyik
   rétegen olvasható legyen. A kártyaleírások érintetlenek: azok a sötét
   `--bg2`-n ülnek, ott a `--muted` rendben van. */

body.page-szakmak .prog__cta{margin:4rem 0 5rem;padding:2.5rem 2rem;border:1px solid var(--line);border-radius:16px;text-align:center;background:rgba(53,255,160,.04)}

body.page-szakmak .prog__cta h2{margin:0 0 .8rem}

body.page-szakmak .prog__ctaText{color:var(--muted);max-width:52ch;margin:0 auto 1.6rem;line-height:1.7}
/* ugyanaz a leképezés, mint a .prog__lede-nél (a CTA is a gradiensen áll) */

body.page-szakmak .prog__ctaBtns{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}

body.page-szakmak .prog__detailCta{margin-top:1.6rem}

body.page-szakmak .empty{border:1px dashed var(--line);padding:2.4rem;text-align:center;color:var(--muted);font-family:var(--font-m)}
/* az "nincs meg szakma" allapot is a gradienten all (nincs sötet kartya
   mogotte) → ugyanaz a vilagos szin + sotet arnyek, mint a .prog__lede-nel */
body.page-szakmak .prog__lede,body.page-szakmak .prog__ctaText,body.page-szakmak .empty{color:#dbe1f7;text-shadow:0 1px 4px rgba(4,8,16,.92),0 0 16px rgba(4,8,16,.6)}

/* SZAKMAKÁRTYÁK: pontosan 3 kártya soronként asztalon. A 029-es migráció óta
   az 5 éves csoportnak 5 tagja van (3+2 sor), a 3 éveseké 13 (4×3+1 sor) — a
   csoportosítás így a rácson is látszik, nem csak a jelvényen.
   Tableten 2, mobilon 1 kártya (a szűk kijelzőn 3 túl szűk lenne). */
body.page-szakmak .programs{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;padding-bottom:3rem}
@media(max-width:1100px){
body.page-szakmak .programs{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:680px){
body.page-szakmak .programs{grid-template-columns:1fr}
}

body.page-szakmak .prog{border:1px solid var(--line);background:var(--bg2);overflow:hidden;display:flex;flex-direction:column;transition:.3s}

body.page-gallery .gallery__item:hover,body.page-szakmak .prog:hover{border-color:var(--green);box-shadow:0 0 26px rgba(53,255,160,.35);transform:translateY(-3px)}

body.page-szakmak .prog__cover{aspect-ratio:16/9;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;font-size:3.2rem;background:linear-gradient(135deg,#0d1b2a,#132a3a)}

body.page-szakmak .prog__cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.8}

body.page-szakmak .prog__icon{position:relative;z-index:1;filter:drop-shadow(0 6px 18px rgba(0,0,0,.6))}

body.page-szakmak .prog__body{padding:1.2rem 1.15rem 1.35rem;display:flex;flex-direction:column;gap:.6rem;flex:1}

body.page-szakmak .prog__kicker{font-family:var(--font-m);font-size:.55rem;letter-spacing:.25em;color:var(--green);text-shadow:0 0 10px rgba(53,224,172,.5)}

body.page-szakmak .prog__title{font-family:var(--font-d);font-size:1.35rem;font-weight:600;margin:0;line-height:1.2}

/* A képzési idő (3/5 év) kis jelvénye a kártyán — a 027-es migráció adja a
   `years` mezőt; üres szakmánál (nincs adat) nem jelenik meg. */
body.page-szakmak .prog__years{display:inline-block;align-self:flex-start;margin:-.1rem 0 .35rem;padding:.3rem .65rem;border:1px solid var(--line);border-radius:999px;font-family:var(--font-m);font-size:.54rem;letter-spacing:.18em;text-transform:uppercase;color:var(--cyan)}

body.page-szakmak .prog__desc{margin:0;color:var(--muted);line-height:1.65;font-size:.92rem}

body.page-szakmak .prog__more{margin-top:auto;padding-top:.5rem;font-family:var(--font-m);font-size:.6rem;letter-spacing:.18em;color:var(--green);text-transform:uppercase;text-decoration:none;background:none;border:0;cursor:pointer;text-align:left}

/* A kártya alján a „Részletek” link és az admin által bekapcsolt gomb
   egy sorban. A `margin-top:auto` a kártyák aljára szorítja őket, így
   az egy soros és a hosszú leírású kártyák is egy vízszintesen. */
body.page-szakmak .prog__actions{margin-top:auto;padding-top:1rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}

body.page-szakmak .prog__actions .prog__more{margin-top:0;padding-top:0}

body.page-szakmak .prog__ctaBtn{text-decoration:none;white-space:nowrap}

/* A kártya teljes felülete kattintható (a lightbox nyílik), ezért kurzor. */
body.page-szakmak .prog,body.page-szakmak .prog a{cursor:pointer}

/* A részletező panel: a kártyák alatt, teljes szélességben nyílik ki. */
body.page-szakmak .prog__detail{grid-column:1/-1;border:1px solid var(--line);background:var(--bg2);max-height:0;opacity:0;overflow:hidden;transition:max-height .4s ease,opacity .3s ease}

body.page-szakmak .prog__detail .rich{color:#c9d2ee;line-height:1.8;max-width:72ch}

@media(max-width:600px){

}

body.page-gallery .empty{border:1px dashed var(--line);padding:2.4rem;text-align:center;color:var(--muted);font-family:var(--font-m);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;column-span:all}

body.page-gallery .lightbox{position:fixed;inset:0;z-index:200;background:rgba(5,7,15,.94);display:none;align-items:center;justify-content:center;flex-direction:column;gap:1rem;backdrop-filter:blur(8px)}

body.page-gallery .lightbox img{max-width:92vw;max-height:82vh;border:1px solid rgba(140,160,255,.6);border-radius:6px;box-shadow:0 0 60px rgba(157,107,255,.45),0 0 120px rgba(53,255,160,.15)}

body.page-gallery .lightbox__close{font-family:var(--font-m);font-size:.72rem;letter-spacing:.25em;color:var(--muted);border:1px solid var(--line);padding:.55rem 1.3rem;background:none;cursor:pointer;transition:.3s;text-transform:uppercase}

@media(max-width:700px){
body.page-gallery .nav__links{gap:1.1rem}
body.page-gallery .nav__links a{font-size:.66rem}
body.page-gallery .section__head{padding-top:7.5rem}
}

@media(max-width:860px){

}

/* ==================== FŐOLDAL (index.html) ==================== */

html:has(body.page-index){scroll-behavior:smooth}

body.page-index::after{
  content:"";
  position:fixed;
  inset:0;
  z-index:-3;
  pointer-events:none;
  background:radial-gradient(700px 500px at 15% 5%,rgba(95,111,224,.12),transparent 70%), radial-gradient(600px 450px at 85% 22%,rgba(122,111,214,.10),transparent 70%), radial-gradient(800px 550px at 50% 110%,rgba(53,224,172,.10),transparent 70%), radial-gradient(500px 400px at 50% 55%,rgba(84,185,221,.06),transparent 70%);
}

body.page-index ::selection{background:var(--green);color:#04040a}

body.page-index img{display:block;max-width:100%}

body.page-index .mono{font-family:var(--font-m)}

body.page-index .nav::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,var(--green),var(--violet),transparent);opacity:.8}

body.page-index .nav__links a{font-family:var(--font-m);font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;color:#fff;transition:.3s;position:relative}

body.page-index .nav__links a:hover{color:var(--green);text-shadow:0 0 12px rgba(53,224,172,.8)}

/* A „Jelentkezés" CTA kerete MINDEN oldalon ugyanaz (1px-es vonal): korábban
   a hirek/esemenyek/esemeny/survey oldalakon nem volt saját .nav__cta szabály,
   így ott a gomb keret nélkül, 2 px-rel laposabban jelent meg. */
body.page-index .nav__cta,
body.page-hirek .nav__cta,
body.page-esemenyek .nav__cta,
body.page-esemeny .nav__cta,
body.page-kapcsolat .nav__cta,
body.page-survey .nav__cta,
body.page-szakmak .nav__cta,
body.page-videok .nav__cta,body.page-erasmus .nav__cta{font-family:var(--font-m);font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;border:1px solid var(--line);padding:.6rem 1.2rem;transition:.3s;color:var(--muted)}

body.page-index .hero{min-height:94vh;display:flex;flex-direction:column;align-items:center;text-align:center;padding:8.5rem 2rem 5rem;position:relative}

body.page-index .hero__badge{
  font-family:var(--font-m);
  font-size:.7rem;
  letter-spacing:.4em;
  text-transform:uppercase;
  color:#5dffb4;
  border:1px solid rgba(53,255,160,.5);
  padding:.55rem 1.4rem;
  margin-top:3rem;
  margin-bottom:1.9rem;
  text-shadow:0 0 14px rgba(53,255,160,.9);
  box-shadow:0 0 28px rgba(53,255,160,.2) inset, 0 0 20px rgba(53,255,160,.15);
  background:rgba(53,255,160,.06);
  border-radius:40px;
}

body.page-index .hero__title{font-family:var(--font-d);font-size:clamp(2.2rem,6.4vw,5.6rem);line-height:1.15;letter-spacing:.01em;position:relative;margin-top:6rem;margin-bottom:1.7rem;white-space:nowrap}

body.page-index .hero__title span{display:inline-block;background:linear-gradient(180deg,#ffffff 25%,#8ab4ff 75%,#35ffa0 125%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 10px 26px rgba(43,60,255,.25))}

body.page-index .hero__title span:last-child{background:linear-gradient(180deg,#ffffff 30%,#35ffa0 95%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 10px 26px rgba(15,157,104,.3))}

body.page-index .hero__sub{
  margin:0 0 2.6rem;
  font-family:var(--font-m);
  font-size:.72rem;
  letter-spacing:.34em;
  color:#b0c4ff;
  text-transform:uppercase;
  border:1px solid rgba(140,160,255,.3);
  padding:.5rem 1.6rem;
  border-radius:40px;
  background:rgba(140,160,255,.05);
  display:inline-block;
  text-shadow:0 0 10px rgba(140,160,255,.5);
}

body.page-index .btn{display:inline-block;font-family:var(--font-m);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;padding:.95rem 2rem;border:1px solid var(--green);background:var(--green);color:#04040a;transition:.25s;cursor:pointer;box-shadow:0 0 22px rgba(53,224,172,.40)}

body.page-index .btn--ghost:hover{background:var(--ink);color:#04040a;border-color:var(--ink);box-shadow:0 0 22px rgba(53,255,160,.25)}

body.page-index .hero{overflow:hidden;display:flex;flex-direction:column;align-items:center}

body.page-index .hero__cta,body.page-index .hero__badge,body.page-index .hero__title,body.page-index .hero__sub{position:relative;z-index:2}

body.page-index .ticker{border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;background:linear-gradient(90deg,rgba(53,224,172,.10),rgba(139,92,255,.10),rgba(53,224,172,.10));padding:.85rem 0}

body.page-index .ticker__track{display:flex;gap:3rem;width:max-content;animation:tick 26s linear infinite;font-family:var(--font-m);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:#c6cbee;white-space:nowrap}

body.page-index .ticker__track i{font-style:normal;color:var(--green);text-shadow:0 0 10px rgba(53,224,172,.7)}

@keyframes tick{
  to{transform:translateX(-50%)}
}

body.page-index .section{padding:4rem 0;position:relative}

body.page-index .section[id]{scroll-margin-top:110px}

body.page-index .section__head{margin-bottom:2.6rem;display:flex;align-items:baseline;gap:1.4rem;flex-wrap:wrap}

body.page-index .section__label{font-family:var(--font-m);font-size:.66rem;letter-spacing:.3em;color:var(--green);text-transform:uppercase;border:1px solid rgba(53,224,172,.3);padding:.4rem .9rem;text-shadow:0 0 10px rgba(53,224,172,.6)}

body.page-index .section__title{font-family:var(--font-d);font-weight:400;font-size:clamp(2.2rem,6vw,3.8rem);letter-spacing:.03em;margin-top:0;background:linear-gradient(90deg,#fff 45%,#7dffc4 95%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}

body.page-index .bento{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:210px;gap:1.2rem}

body.page-index .bento__card{background:linear-gradient(160deg,var(--bg2),#0e1428);border:1px solid var(--line);display:flex;flex-direction:column;overflow:hidden;transition:.3s;position:relative}

body.page-index .bento__card::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:.3s;background:radial-gradient(400px 200px at 50% 0%,rgba(53,224,172,.14),transparent 70%)}

body.page-index .bento__card--l{grid-column:span 2;grid-row:span 2}

body.page-index .bento__card--m{grid-column:span 2}

body.page-index .bento__card--s{grid-column:span 1}

body.page-index .bento__body{padding:1.2rem 1.3rem;flex:1;display:flex;flex-direction:column}

body.page-index .bento__tag{font-family:var(--font-m);font-size:.58rem;letter-spacing:.25em;color:var(--green);text-transform:uppercase;text-shadow:0 0 8px rgba(53,224,172,.6)}

body.page-index .bento__title{font-family:var(--font-d);font-weight:400;font-size:1.25rem;letter-spacing:.03em;margin:.4rem 0 .3rem}

body.page-index .bento__desc{color:var(--muted);font-size:.85rem;line-height:1.5}

/* „Megnyitás →" affordance: a REGISZTRÁLOK gombhoz igazított zöld pill,
   a kártya aljára nyomva (margin-top:auto a flex oszlop miatt) */
body.page-index .bento__cta{align-self:flex-start;margin-top:auto;padding:.5rem 1.3rem;font-family:var(--font-m);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:#0a0e1a;background:var(--green);border-radius:6px;transition:.25s;box-shadow:0 0 16px rgba(53,224,172,.3)}
body.page-index .bento__cta::after{content:" →"}
body.page-index .bento__card:hover .bento__cta{background:#5dffb4;box-shadow:0 0 22px rgba(53,255,160,.5)}
@media(max-width:900px){
body.page-index .bento{grid-template-columns:repeat(2,1fr)}
body.page-index .bento__card--l , body.page-index .bento__card--m{grid-column:span 2}
body.page-index .bento__card--s{grid-column:span 1}
/* 2 oszlopnál a 2 soros kártya fölöslegesen nyúlt szét, és lyukasztott rácsot
   adna, ezért itt egysorosra méretezzük vissza */
body.page-index .bento__card--l{grid-row:span 1}
}

@media(max-width:560px){
body.page-index .bento{grid-template-columns:1fr}
body.page-index .bento__card{grid-column:span 1!important}
/* 1 oszlopban a sor-méretezés nem ér, sőt üresen megnyúlná a kártyát */
body.page-index .bento__card--l{grid-row:span 1!important}
body.page-index .hero__title{white-space:normal;font-size:clamp(2.6rem,11vw,4rem)}
}

body.page-index .events{list-style:none;margin-top:2.4rem;border-top:1px solid var(--line)}

body.page-index .events__item{display:flex;align-items:baseline;gap:1.6rem;padding:1.15rem .6rem;border-bottom:1px solid var(--line);transition:.25s;position:relative}

body.page-index .events__item:hover{background:linear-gradient(90deg,rgba(53,224,172,.10),transparent 70%);padding-left:1.2rem}

body.page-index .events__date{font-family:var(--font-m);font-size:.7rem;letter-spacing:.15em;color:var(--green);min-width:110px;text-shadow:0 0 10px rgba(53,224,172,.55)}

body.page-index .events__title{font-weight:500;font-size:1.05rem}

body.page-index .events__loc{color:var(--muted);font-size:.8rem;margin-left:auto;font-family:var(--font-m)}

body.page-index .videos{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.2rem}

body.page-index .video,body.page-videok .video{background:linear-gradient(160deg,var(--bg2),#0e1428);border:1px solid var(--line);cursor:pointer;transition:.3s;overflow:hidden;position:relative}

body.page-index .bento__card:hover,body.page-index .video:hover{border-color:rgba(53,224,172,.55);transform:translateY(-4px);box-shadow:0 10px 40px rgba(53,224,172,.22)}

body.page-index .video__thumb,body.page-videok .video__thumb{position:relative;aspect-ratio:16/9;background:#0b1020}

body.page-index .video__thumb img,body.page-videok .video__thumb img{width:100%;height:100%;object-fit:cover}

body.page-index .video__play,body.page-videok .video__play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}

body.page-index .video__play::before{content:"";width:56px;height:56px;border:2px solid rgba(140,160,255,.18);border-radius:50%;background:rgba(140,160,255,.10);transition:.25s;box-shadow:0 0 18px rgba(53,224,172,.45)}

body.page-index .video__play::after,body.page-videok .video__play::after{content:"";position:absolute;border-left:16px solid #fff;border-top:10px solid transparent;border-bottom:10px solid transparent;margin-left:5px}

body.page-index .video:hover .video__play::before{border-color:var(--green);background:rgba(53,224,172,.15);box-shadow:0 0 24px rgba(53,224,172,.6)}

body.page-index .video__body,body.page-videok .video__body{padding:.9rem 1.1rem;display:flex;justify-content:space-between;gap:1rem;align-items:baseline}

body.page-index .video__title,body.page-videok .video__title{font-size:.95rem;font-weight:500}

body.page-index .video__provider,body.page-videok .video__provider{font-family:var(--font-m);font-size:.6rem;letter-spacing:.2em;color:var(--muted)}

body.page-index .cta{margin:6rem 0}

body.page-index .footer{border-top:1px solid var(--line);padding:3.5rem 0 2rem;margin-top:4rem;position:relative}

body.page-index .note{font-family:var(--font-m);font-size:.62rem;letter-spacing:.15em;color:#c9a44a;margin-top:.8rem}
@media(max-width:860px){
body.page-gallery .nav,body.page-kapcsolat .nav,body.page-kerdoivek .nav,body.page-videok .nav,body.page-index .nav{padding:1rem 1.4rem}
body.page-gallery .nav__links,body.page-kapcsolat .nav__links,body.page-kerdoivek .nav__links,body.page-szakmak .nav__links,body.page-videok .nav__links,body.page-index .nav__links{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;gap:0;background:rgba(10,14,26,.97);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);padding:.4rem 0}

body.page-gallery .nav__links a,body.page-kapcsolat .nav__links a,body.page-kerdoivek .nav__links a,body.page-szakmak .nav__links a,body.page-videok .nav__links a,body.page-index .nav__links a{padding:.95rem 2rem;border-top:1px solid rgba(120,140,255,.12);font-size:.85rem}
body.page-gallery .nav__links.open,body.page-kapcsolat .nav__links.open,body.page-kerdoivek .nav__links.open,body.page-videok .nav__links.open,body.page-gallery .nav__burger,body.page-kapcsolat .nav__burger,body.page-kerdoivek .nav__burger,body.page-videok .nav__burger,body.page-index .nav__links.open,body.page-index .nav__burger{display:flex}
}

/* ==================== KAPCSOLAT (kapcsolat.html) ==================== */
body.page-kapcsolat,body.page-videok{--bg:#070a14;--bg2:#0b1020;--ink:#eef1ff;--muted:#8a93b8;--line:rgba(140,160,255,.16);--green:#35ffa0;--violet:#9d6bff;--font-d:'Unbounded',sans-serif;--font-b:'Sora',sans-serif;--font-m:'JetBrains Mono',monospace}

body.page-kapcsolat .section__head,body.page-videok .section__head{margin-bottom:2.6rem;display:flex;align-items:baseline;gap:1.4rem;flex-wrap:wrap;padding-top:8rem}

body.page-kapcsolat .section__title,body.page-videok .section__title{
  font-family:var(--font-d);
  font-weight:400;
  font-size:clamp(2.2rem,6vw,3.8rem);
  letter-spacing:.03em;
  background:linear-gradient(90deg,#fff 45%,#7dffc4 95%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
}

body.page-kapcsolat .section__head{margin-bottom:1rem}

body.page-kapcsolat .lead{color:var(--muted);max-width:560px;line-height:1.7;margin-bottom:2.6rem}

body.page-kapcsolat .cgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.2rem;padding-bottom:2rem}

body.page-kapcsolat .ccard{background:linear-gradient(160deg,var(--bg2),#0e1428);border:1px solid var(--line);padding:1.6rem;transition:.3s}

body.page-kapcsolat .ccard__label{font-family:var(--font-m);font-size:.62rem;letter-spacing:.25em;color:var(--green);text-transform:uppercase;text-shadow:0 0 10px rgba(53,255,160,.6)}

body.page-kapcsolat .ccard__value{display:block;margin-top:.7rem;font-size:1.05rem;font-weight:500;word-break:break-word}

body.page-kapcsolat .csocial{display:flex;gap:1rem;flex-wrap:wrap;margin:1rem 0 2rem}

body.page-kapcsolat .csocial a{font-family:var(--font-m);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;border:1px solid var(--line);padding:.7rem 1.4rem;transition:.3s;color:var(--muted)}

body.page-kapcsolat .nav__cta:hover,body.page-videok .nav__cta:hover,body.page-kapcsolat .csocial a:hover{border-color:var(--green);color:#fff;box-shadow:0 0 24px rgba(53,255,160,.45)}

/* ==================== KÉRDŐÍVEK (kerdoivek.html) ==================== */
body.page-kerdoivek{background:var(--bg);color:var(--ink);font-family:var(--font-b);overflow-x:hidden;min-height:100vh}

body.page-kerdoivek .qlist{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.4rem;padding-bottom:3rem}

body.page-kerdoivek .qcard{position:relative;background:var(--bg2);border:1px solid var(--line);padding:1.8rem 1.8rem 1.6rem;display:flex;flex-direction:column;gap:1rem;transition:.3s;overflow:hidden}

body.page-kerdoivek .qcard::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--green),var(--cyan));opacity:.8}

body.page-kerdoivek .qcard:hover{border-color:var(--green);transform:translateY(-4px);box-shadow:0 0 30px rgba(53,255,160,.25)}

body.page-kerdoivek .qcard__tag{font-family:var(--font-m);font-size:.6rem;letter-spacing:.28em;color:var(--green);text-transform:uppercase}

body.page-kerdoivek .qcard__title{font-family:var(--font-d);font-weight:400;font-size:1.6rem;letter-spacing:.02em;line-height:1.1}

body.page-kerdoivek .qcard__desc{font-size:.92rem;color:var(--muted);line-height:1.55;flex:1}

body.page-kerdoivek .qcard__meta{font-family:var(--font-m);font-size:.62rem;letter-spacing:.18em;color:var(--muted);text-transform:uppercase;display:flex;gap:1.4rem;flex-wrap:wrap}

body.page-index .hero__sub b,body.page-kerdoivek .qcard__meta b{color:var(--green);font-weight:500}

body.page-kerdoivek .qcard__btn{
  align-self:flex-start;
  font-family:var(--font-d);
  font-size:.65rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  padding:.85rem 2rem;
  background:linear-gradient(135deg, var(--green), var(--cyan));
  border:0;
  border-radius:10px;
  color:#070a14;
  transition:.25s;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  gap:.4rem;
}

body.page-kerdoivek .qcard__btn:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(53,255,160,.25)}

body.page-kerdoivek .empty{border:1px dashed var(--line);padding:2.6rem;text-align:center;color:var(--muted);font-family:var(--font-m);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase}

/* ==================== VIDEÓK (videok.html) ==================== */
body.page-videok .video-filters{display:flex;flex-wrap:wrap;gap:.55rem;margin:0 0 0 auto;align-self:center;justify-content:flex-end}
@media(max-width:700px){
body.page-videok .video-filters{margin:.2rem 0 0;align-self:flex-start;justify-content:flex-start}
}

body.page-videok .video-filters button{border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--muted);padding:.55rem .9rem;border-radius:999px;font:600 .62rem var(--font-m);letter-spacing:.12em;cursor:pointer}

body.page-videok .video-filters button:hover,body.page-videok .video-filters button.active{color:var(--green);border-color:var(--green);background:rgba(53,255,160,.1)}

body.page-videok .videos{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.2rem;padding-bottom:2rem}

body.page-kapcsolat .ccard:hover,body.page-videok .video:hover{border-color:rgba(53,255,160,.55);transform:translateY(-4px);box-shadow:0 10px 40px rgba(53,255,160,.22)}

body.page-videok .video__play::before{content:"";width:56px;height:56px;border:2px solid rgba(140,160,255,.18);border-radius:50%;background:rgba(140,160,255,.10);box-shadow:0 0 18px rgba(53,255,160,.45)}

body.page-videok .video:hover .video__play::before{border-color:var(--green);background:rgba(53,255,160,.15)}

/* ==================== KÉRDŐÍV KITÖLTÉS (survey.html) ==================== */
body.page-survey{--bg:#070a14;--bg2:#0b1020;--ink:#eef1ff;--muted:#8a93b8;--line:rgba(140,160,255,.16);--green:#35ffa0;--red:#ff5a6a;--font-d:'Unbounded',sans-serif;--font-b:'Sora',sans-serif;--font-m:'JetBrains Mono',monospace}

body.page-survey{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-b);min-height:100vh;-webkit-font-smoothing:antialiased}

body.page-survey .wrap{max-width:680px;margin:0 auto;padding:3rem 1.5rem 5rem}

body.page-survey .brand{font-family:var(--font-d);font-size:1.3rem;letter-spacing:.05em;display:inline-block;margin-bottom:3rem}

body.page-survey .brand b{color:var(--green);font-weight:400}

body.page-survey .card{background:var(--bg2);border:1px solid var(--line);padding:2.6rem 2.4rem}

body.page-survey .label{font-family:var(--font-m);font-size:.62rem;letter-spacing:.3em;color:var(--green);text-transform:uppercase}

body.page-survey h1{font-family:var(--font-d);font-weight:400;font-size:clamp(1.9rem,6vw,2.8rem);letter-spacing:.03em;margin:.5rem 0 .8rem}

body.page-survey .desc{color:var(--muted);line-height:1.6;margin-bottom:2.2rem}

body.page-survey .field{margin-bottom:1.6rem}

body.page-survey .field__q{display:block;font-weight:500;margin-bottom:.6rem}

body.page-survey .field__q small{display:block;font-family:var(--font-m);font-size:.6rem;letter-spacing:.2em;color:var(--muted);margin-top:.25rem;text-transform:uppercase}

/* 049: MINDEN beviteli mező egységesen.
   Eddig csak `input[type=text]`-et stílusoztunk, így az új tel / email /
   date mezők (és a régi telefonszám/e-mail, amik most ezekre váltottak)
   VILÁGOS, böngésző-alapmegjelenésű dobozok maradtak a sötét lapon. */
body.page-survey input[type=text],
body.page-survey input[type=tel],
body.page-survey input[type=email],
body.page-survey input[type=date],
body.page-survey input[type=number],
body.page-survey input[type=search],
body.page-survey input[type=url],
body.page-survey input[type=password],
body.page-survey textarea{width:100%;background:var(--bg);border:1px solid var(--line);color:var(--ink);font-family:var(--font-b);font-size:.95rem;padding:.7rem .9rem;outline:none;min-height:calc(.95rem + 1.4rem + 2px)}

body.page-survey textarea{min-height:90px;resize:vertical}

/* A dátumválasztó és a fájlinput nálunk is sötét legyen: enélkül a
   böngésző natív naptár-ikonja fehér dobozon, alig olvashatóan jönne be. */
body.page-survey{color-scheme:dark}

/* A naptár-ikon színe (webkit) — `color-scheme: dark` után is
   explicit megadjuk, mert a Firefox/Safari másként értelmezi. */
body.page-survey input[type=date]::-webkit-calendar-picker-indicator{filter:invert(.8);cursor:pointer;opacity:.7}

/* A fájlválasztó gombja — az egyetlen fényes elem, ha nem formázzuk. */
body.page-survey input[type=file]{
  width:100%;background:transparent;border:1px dashed var(--line);color:var(--muted);
  font-family:var(--font-b);font-size:.9rem;padding:.75rem .9rem;outline:none;cursor:pointer;
  transition:border-color .2s,color .2s
}
body.page-survey input[type=file]::file-selector-button{
  background:transparent;border:1px solid var(--line);color:var(--ink);
  font-family:var(--font-m);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;
  padding:.5rem .9rem;margin-right:.9rem;cursor:pointer;transition:.2s
}

body.page-survey input[type=file]::file-selector-button:hover{border-color:var(--green);color:var(--green)}

/* ---- 049: TELEFONOS KIEGÉSZÍTÉS ----
   1) Az iOS AKKOR nagyít rá az oldalra, amikor egy mezőre lépünk, ha annak
      a betűmérete 16 px alatt van. A .95rem (15,2 px) épp ezért minden
      fókuszált mezőnél felugratja a lapot — a rögzített navbar és a görgetési
      pozíció is elcsúszik tőle. 16 px-re emeljük, akkor nincs zoom.
   2) A mezők magassága ~40 px, ami a 44 px-es ajánlott tap target alatt van;
      mobilon megemeljük, hogy kényelmesen el lehet találni. */
@media (max-width:700px){
/* Csak a SZÖVEGES beviteli mezők emelkednek. Az `:not()` SAJÁT specificitást
   ad hozzá, ezért a kizárás a fő szelektorban történik — így a checkbox/
   rádió, a rejtett honeypot és a fájlválasztó egyáltalán nem kap 46 px-et.
   (Külön „kioltó" szabály itt nem működne: az `:not()` miatt ez lenne a
   legerősebb, és felülírná őket.) */
body.page-survey input:not([type=checkbox]):not([type=radio]):not([type=file]):not(.hp-field),
body.page-survey select,
body.page-survey textarea{
  font-size:16px;
  min-height:46px;
}
/* a fájlválasztó maradjon kisebb, csak az iOS-zoom miatt 16 px a szöveg */
body.page-survey input[type=file]{font-size:15px;min-height:0}
}

/* align-items:flex-start → több soros opciónál a rádió a szöveg első sorához igazodik,
   nem a középvonalhoz (a vessző nem marad lógva a sor elején). */
body.page-survey .choice{display:flex;align-items:flex-start;gap:.6rem;padding:.55rem 0;cursor:pointer;color:var(--muted);transition:color .2s}

body.page-survey .choice:hover,body.page-survey .choice:has(input:checked){color:var(--ink)}

body.page-survey .choice input{margin:0;flex:none;accent-color:var(--green)}

body.page-survey select{width:100%;padding:.8rem 1rem;border-radius:12px;border:1px solid var(--line);background:rgba(7,10,20,.6);color:var(--ink);font-family:inherit;font-size:.95rem;cursor:pointer}

body.page-survey .field__hint{display:block;opacity:.6;font-size:.75rem;margin-top:.35rem}

/* 047: a kötelező nyomtatmányok blokkja AZ ŰRLAP ELEJÉN. Keret és zöld
   kiemelés, hogy a jelentkező az első görgetésnél lássa: előbb ezt kell letölteni,
   kitölteni és aláírni, és csak UTÁNA szabad a formot beküldeni. */
body.page-survey .docs-req{
  margin:0 0 2.2rem;padding:1.3rem 1.4rem 1.4rem;
  border:1px solid var(--green);border-radius:16px;
  background:rgba(168,206,30,.07);
}

body.page-survey .docs-req__h{
  margin:0 0 .5rem;font-family:var(--font-m);font-size:.78rem;
  letter-spacing:.14em;text-transform:uppercase;color:var(--green);
}

body.page-survey .docs-req__lead{margin:0 0 1rem;font-size:.85rem;opacity:.8}

body.page-survey .docs-req__list{list-style:none;margin:0;padding:0;display:grid;gap:.7rem}

body.page-survey .docs-req__list li{
  display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;
}

/* a letöltő gomb: új ablakban nyílik, hogy a PDF megnyitása ne navigálja el az űrlapot */
body.page-survey .dl-doc{
  display:inline-flex;align-items:center;gap:.4rem;
  padding:.5rem .85rem;border:1px solid var(--green);border-radius:10px;
  background:rgba(168,206,30,.12);color:var(--green);
  font-family:var(--font-m);font-size:.68rem;letter-spacing:.08em;
  text-transform:uppercase;text-decoration:none;transition:background .2s,color .2s;
}

body.page-survey .dl-doc:hover{background:var(--green);color:#0a0a10}

body.page-survey .docs-req__list li>span{font-size:.82rem;opacity:.75;line-height:1.45}

body.page-survey .rating{display:flex;gap:.6rem}

body.page-survey .rating label{width:44px;height:44px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-family:var(--font-m);cursor:pointer;transition:.2s;color:var(--muted)}

body.page-survey .rating input:checked+label{background:var(--green);border-color:var(--green);color:#0a0a10}

body.page-survey input[type=file]:hover,body.page-survey .rating label:hover{border-color:var(--green);color:var(--ink)}

body.page-survey .btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.55rem;
  font-family:var(--font-m);
  font-size:.72rem;
  letter-spacing:.2em;
  text-transform:uppercase;
  padding:.9rem 1.8rem;
  border:1px solid var(--green);
  border-radius:999px;
  background:var(--green);
  color:#07110d;
  cursor:pointer;
  text-decoration:none;
  line-height:1;
  box-shadow:0 0 22px rgba(53,224,172,.35);
  transition:.25s;
}

body.page-survey .btn:hover{background:#fff;border-color:#fff;color:#05070c;transform:translateY(-2px);box-shadow:0 0 28px rgba(255,255,255,.28)}

body.page-survey .msg{margin-top:1.4rem;font-family:var(--font-m);font-size:.72rem;letter-spacing:.1em}

body.page-survey .msg--err{color:var(--red)}

body.page-survey .backrow{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:2rem}

body.page-survey .back{
  font-family:var(--font-m);
  font-size:.66rem;
  letter-spacing:.2em;
  color:var(--green);
  text-transform:uppercase;
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  padding:.55rem 1rem;
  border:1px solid rgba(53,255,160,.45);
  border-radius:999px;
  background:rgba(53,255,160,.06);
  text-decoration:none;
  transition:.2s;
}

body.page-survey .back:hover{color:#07110d;background:var(--green);border-color:var(--green);box-shadow:0 0 16px rgba(53,255,160,.4)}

/* a menü „kicsúszik" a csoport-ikonból */
@keyframes hi-nav-open{
  from{opacity:0;transform:translateX(-8px) scale(.985)}
  to{opacity:1;transform:none}
}

/* ===========================================================
   JAVÍTÁSOK (2026-09-11) — képernyőképnek megfelelő kinézet
   =========================================================== */
/* ===== HERO HÁTTÉR: csillagok + rácsvonalak ===== */
body.page-index .hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:radial-gradient(2px 2px at 12% 20%, rgba(255,255,255,.9), transparent 60%), radial-gradient(1.5px 1.5px at 25% 35%, rgba(190,210,255,.7), transparent 60%), radial-gradient(2px 2px at 34% 15%, rgba(53,224,172,.8), transparent 60%), radial-gradient(1.5px 1.5px at 48% 28%, rgba(255,255,255,.55), transparent 60%), radial-gradient(2.2px 2.2px at 58% 10%, rgba(200,215,255,.85), transparent 60%), radial-gradient(1.5px 1.5px at 66% 32%, rgba(255,255,255,.6), transparent 60%), radial-gradient(2px 2px at 76% 18%, rgba(53,224,172,.7), transparent 60%), radial-gradient(1.6px 1.6px at 86% 30%, rgba(190,210,255,.75), transparent 60%), radial-gradient(2px 2px at 92% 12%, rgba(255,255,255,.8), transparent 60%), radial-gradient(1.5px 1.5px at 18% 48%, rgba(255,255,255,.45), transparent 60%), radial-gradient(1.8px 1.8px at 82% 52%, rgba(200,215,255,.5), transparent 60%), radial-gradient(60% 42% at 50% 40%, rgba(53,224,172,.14), transparent 72%);
}

body.page-index .hero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:repeating-linear-gradient(180deg, rgba(140,160,255,.10) 0 1px, transparent 1px 46px);
  -webkit-mask-image:linear-gradient(180deg, transparent 28%, #000 55%);
  mask-image:linear-gradient(180deg, transparent 28%, #000 55%);
}

/* ===== KEREKÍTETT, KÖZÉPEN LEBEGŐ NAV ===== */
body.page-index .nav{top:1.1rem;left:50%;right:auto;transform:translateX(-50%);width:min(1150px,94vw);border:1px solid var(--line);border-radius:60px;padding:.7rem 1.2rem .7rem 1.8rem}

/* a lebegő pirulás navbarra nem illik az alul csüngő gradient csík (lásd: eseményoldali javítás) */

body.page-index .nav__logo{display:flex;align-items:center}

body.page-index .nav__logo::before{content:"";width:10px;height:10px;border-radius:50%;background:var(--green);box-shadow:0 0 14px rgba(53,224,172,.9);margin-right:.7rem}

body.page-index .nav__links{border:1px solid var(--line);border-radius:999px;padding:.5rem 1.4rem;gap:1.6rem;background:rgba(255,255,255,.5)}

/* mobil menü a pirulához igazítva */
@media(max-width:900px){
  body.page-index .nav__links{top:calc(100% + 10px);border:1px solid var(--line);border-radius:22px;background:rgba(10,14,26,.97)}
}

/* ============ HÍREK — 3D panelek kattinthatóvá + külön híroldal ============ */
/* 3D gyűrű: kattintható panelek */
/* forgás szünetel hoverre, hogy lehessen kattintani */
/* ============ HÍROLDAL (hirek.html) ============ */
body.page-hirek #hirek-main{padding-top:7rem;padding-bottom:4rem;min-height:70vh}

body.page-hirek .news-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:1.5rem}

body.page-hirek .news-card{position:relative;display:block;text-decoration:none;color:inherit;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:linear-gradient(160deg,#0d1226 0%,#111832 100%);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}

body.page-hirek .news-card:hover{transform:translateY(-5px);border-color:rgba(53,255,160,.5);box-shadow:0 18px 50px rgba(0,0,0,.5),0 0 28px rgba(53,255,160,.12)}

body.page-hirek .news-card__media{height:180px;background-size:contain;background-repeat:no-repeat;background-position:center;background-color:#080c18;border-bottom:1px solid var(--line);position:relative}

body.page-hirek .news-card__media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(13,18,38,.7) 100%);opacity:0;transition:opacity .3s}

body.page-gallery .gallery__item:hover::after,body.page-index .bento__card:hover::before,body.page-survey input[type=date]::-webkit-calendar-picker-indicator:hover,body.page-hirek .news-card:hover .news-card__media::after{opacity:1}

body.page-hirek .news-card__body{padding:1.2rem 1.3rem 1.4rem}

body.page-hirek .news-card__tag{font-family:var(--font-m);font-size:.6rem;letter-spacing:.25em;color:var(--green);text-shadow:0 0 10px rgba(53,255,160,.6);text-transform:uppercase}

body.page-hirek .news-card__title{margin:.5rem 0 .4rem;font-size:1.15rem;font-weight:700;line-height:1.3;color:var(--ink)}

body.page-hirek .news-card__desc{margin:0 0 .8rem;color:var(--muted);font-size:.88rem;line-height:1.55}

body.page-hirek .news-card__foot{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:.6rem;border-top:1px solid rgba(140,160,255,.08)}

body.page-hirek .news-card__date{font-family:var(--font-m);font-size:.65rem;letter-spacing:.15em;color:var(--muted);text-transform:uppercase}

body.page-hirek .news-card__more{font-family:var(--font-m);font-size:.66rem;letter-spacing:.15em;text-transform:uppercase;color:var(--green);transition:.2s}

/* ---- cikk nézet (?cikk=<slug>) ---- */
body.page-hirek .article{max-width:760px;margin:0 auto}

body.page-hirek .article__back{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  padding:.48rem .78rem;
  border:1px solid rgba(53, 224, 172, .55);
  border-radius:999px;
  background:rgba(53, 224, 172, .08);
  color:var(--green);
  font-family:var(--font-m);
  font-size:.94rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  line-height:1;
  transition:.25s;
  text-decoration:none;
}

body.page-szakmak .prog__more:hover,body.page-hirek .news-card:hover .news-card__more,body.page-hirek .article__back:hover{text-shadow:0 0 12px rgba(53,224,172,.8)}

body.page-hirek .article__title{font-family:var(--font-d);font-weight:400;font-size:clamp(1.9rem,5vw,3rem);line-height:1.1;letter-spacing:.02em;margin:0 0 .6rem}

body.page-hirek .article__meta{font-family:var(--font-m);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:1.6rem}

body.page-hirek .article__hero{border:1px solid var(--line);border-radius:10px;overflow:hidden;margin-bottom:1.6rem}

body.page-hirek .article__hero img{display:block;width:100%;max-height:560px;object-fit:contain;background:#080c18}

body.page-hirek .article__lead{font-size:1.15rem;line-height:1.6;color:#cfd4ff;margin:0 0 1.4rem}

body.page-hirek .article__body{font-size:1rem;line-height:1.75;color:#d8dcf5}

body.page-hirek .article__body p{margin:0 0 1.1rem}

body.page-hirek .article__body h2,body.page-hirek .article__body h3{font-family:var(--font-d);font-weight:400;letter-spacing:.03em;margin:1.8rem 0 .8rem}

body.page-hirek .article__body img{max-width:100%;border-radius:8px;margin:1rem 0}

body.page-hirek .article__body ul,body.page-hirek .article__body ol{margin:0 0 1.1rem 1.4rem}

body.page-hirek #hirek-main .section__head{margin-bottom:2rem}

body.page-hirek #hirek-main .section__title{font-family:var(--font-d);font-weight:400;font-size:clamp(2.2rem,6vw,3.8rem);letter-spacing:.03em;background:linear-gradient(90deg,#fff 45%,#7dffc4 95%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}

/* ============ HÍROLDAL — alap stílusok (CSS változók, reset, háttér) ============ */
:root,body.page-index,body.page-hirek{
  --bg:#070a14;
  --bg2:#0b1020;
  --ink:#eef1ff;
  --muted:#8a93b8;
  --line:rgba(140,160,255,.16);
  --green:#35ffa0;
  --blue:#5b6bff;
  --violet:#9d6bff;
  --cyan:#35d5ff;
  --glow-blue:0 0 24px rgba(53,224,172,.45),0 0 60px rgba(53,224,172,.18);
  --font-d:'Unbounded',sans-serif;
  --font-b:'Sora',sans-serif;
  --font-m:'JetBrains Mono',monospace;
}

/* 049: EGYETLEN univerzális reset minden oldalra (2026-09-29).
   Eddig NÉGY külön szabály volt (gallery/index/…, hirek, esemenyek/esemeny, admin)
   ELTÉRŐ kivétel-listával. A `*` reset specificitása (0,1,1) nagyobb a `.btn`-énél
   (0,1,0), így a kivétel nélküli oldalon a gombok paddingje lenullázódott, és a
   felirat kilógott a világos hátterükből. Most egy szabály, és az interaktív
   elemek (a, button, input, select, textarea) mindenütt kivétel. A :where() nulla
   specificitású, így a reset a leggyengébb: egyetlen komponens saját színét vagy
   paddingjét sem tudja felülírni. A box-sizing viszont mindenkire érvényes. */

/* 047: a linkek ne kapjanak automatikus kék/lila UA-színt, ne legyenek aláhúzva —
   de ez a LEGGYENGEBB szabály legyen: a :where() nulla specificitású, így a gombok
   és a link-komponensek (.btn, .qcard__btn, .back, .nav__links a …) a saját
   színüket megkapják. Korábban a `body.page-x a{color:inherit}` (0,1,1) felülírta
   a gombok sötét szövegét → világos betű a világos zölden, alig olvasható.
   KÖTELEZŐ, NEM ELHAGYHATÓ: a 049-es reset az `a`-kat KIZÁRJA a margin/padding
   lenullázásból, de a szín és az aláhúzás UA-szintű, és semmi más nem állítja
   vissza. Kihagyásakor minden hivatkozás lila és aláhúzott lett (kapcsolati
   e-mail, kártyacímek, eseménycímek, sőt az <a class="btn"> gombok felirata is). */

body.page-index,body.page-hirek{background:var(--bg);color:var(--ink);font-family:var(--font-b);overflow-x:hidden;-webkit-font-smoothing:antialiased;position:relative}

body.page-hirek::after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(60% 45% at 50% -5%,rgba(95,111,224,.22),transparent 60%), radial-gradient(45% 35% at 88% 22%,rgba(53,224,172,.10),transparent 60%), linear-gradient(180deg,var(--bg) 0%,var(--bg2) 100%)}

body.page-index .nav__logo,body.page-hirek .nav__logo{font-family:var(--font-d);font-size:1.75rem;letter-spacing:.05em;text-shadow:0 0 18px rgba(53,224,172,.55)}

body.page-hirek .nav__links a{color:var(--ink);text-decoration:none;font-size:.85rem;letter-spacing:.08em;opacity:.85;transition:.2s}

body.page-hirek .nav__links a:hover,body.page-hirek .nav__links a.active{color:var(--green);opacity:1;text-shadow:0 0 12px rgba(53,224,172,.7)}

/* ===========================================================
   KÖZÖS JAVÍTÁS — egységes navbar + gombok aloldalakon
   =========================================================== */
/* Egységes, lebegő navbar minden publikus oldalon */
body.page-index .nav,body.page-hirek .nav,body.page-gallery .nav,body.page-kapcsolat .nav,body.page-kerdoivek .nav,body.page-szakmak .nav,body.page-videok .nav,body.page-erasmus .nav{
  position:fixed;
  top:1.1rem;
  left:50%;
  right:auto;
  transform:translateX(-50%);
  width:min(1150px, 94vw);
  z-index:1000;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1.5rem;
  padding:.7rem 1.2rem .7rem 1.8rem;
  border:1px solid var(--line);
  border-radius:60px;
  background:rgba(7,10,20,.82);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  box-shadow:0 14px 35px rgba(0, 0, 0, .45);
}

body.page-index .nav__logo,
body.page-hirek .nav__logo,
body.page-gallery .nav__logo,
body.page-kapcsolat .nav__logo,
body.page-kerdoivek .nav__logo,
body.page-szakmak .nav__logo,
body.page-videok .nav__logo,body.page-erasmus .nav__logo{display:flex;align-items:center;color:inherit;text-decoration:none;font-family:var(--font-d);font-size:1.55rem;letter-spacing:.05em;white-space:nowrap}

body.page-index .nav__logo::before,
body.page-hirek .nav__logo::before,
body.page-gallery .nav__logo::before,
body.page-kapcsolat .nav__logo::before,
body.page-kerdoivek .nav__logo::before,
body.page-szakmak .nav__logo::before,
body.page-videok .nav__logo::before,body.page-erasmus .nav__logo::before{content:"";width:10px;height:10px;flex:0 0 auto;margin-right:.7rem;border-radius:50%;background:var(--green);box-shadow:0 0 14px rgba(53, 224, 172, .9)}

body.page-index .nav__links,
body.page-hirek .nav__links,
body.page-gallery .nav__links,
body.page-kapcsolat .nav__links,
body.page-kerdoivek .nav__links,
body.page-szakmak .nav__links,
body.page-videok .nav__links,body.page-erasmus .nav__links{display:flex;align-items:center;gap:1.35rem;padding:.5rem 1.3rem;border:1px solid var(--line);border-radius:999px;background:rgba(11,16,32,.6)}

body.page-index .nav__links a,
body.page-hirek .nav__links a,
body.page-gallery .nav__links a,
body.page-kapcsolat .nav__links a,
body.page-kerdoivek .nav__links a,
body.page-szakmak .nav__links a,
body.page-videok .nav__links a,body.page-erasmus .nav__links a{color:#fff;text-decoration:none;font-family:var(--font-m);font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;transition:color .25s, text-shadow .25s}

body.page-index .nav__links a:hover,
body.page-index .nav__links a.active,
body.page-hirek .nav__links a:hover,
body.page-hirek .nav__links a.active,
body.page-gallery .nav__links a:hover,
body.page-gallery .nav__links a.active,
body.page-kapcsolat .nav__links a:hover,
body.page-kapcsolat .nav__links a.active,
body.page-kerdoivek .nav__links a:hover,
body.page-kerdoivek .nav__links a.active,
body.page-szakmak .nav__links a:hover,
body.page-szakmak .nav__links a.active,
body.page-videok .nav__links a:hover,
body.page-videok .nav__links a.active,body.page-erasmus .nav__links a.active{color:var(--green);text-shadow:0 0 12px rgba(53, 224, 172, .75)}

/* Burgermobilmenü */

/* A hírek kártyájának „Elolvasom” része legyen tényleges gombszerű */
body.page-hirek .news-card__more{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  padding:.48rem .78rem;
  border:1px solid rgba(53, 224, 172, .55);
  border-radius:999px;
  background:rgba(53, 224, 172, .08);
  color:var(--green);
  font-family:var(--font-m);
  font-size:.64rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  line-height:1;
  transition:.25s;
}

body.page-hirek .news-card__more::after{content:"";width:.58rem;height:.58rem;border-top:2px solid currentColor;border-right:2px solid currentColor;transform:rotate(45deg)}

body.page-hirek .news-card:hover .news-card__more{background:var(--green);border-color:var(--green);color:#07110d;box-shadow:0 0 18px rgba(53, 224, 172, .45)}

/* Közös alapgomb az aloldalakon is */
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.55rem;
  padding:.9rem 1.8rem;
  border:1px solid var(--green);
  border-radius:999px;
  background:var(--green);
  color:#07110d;
  font-family:var(--font-m);
  font-size:.72rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  text-decoration:none;
  line-height:1;
  cursor:pointer;
  box-shadow:0 0 22px rgba(53, 224, 172, .35);
  transition:.25s;
}

.btn:hover{background:#fff;border-color:#fff;color:#05070c;transform:translateY(-2px);box-shadow:0 0 28px rgba(255, 255, 255, .28)}

body.page-index .btn--ghost,.btn--ghost{background:transparent;color:var(--ink);border-color:var(--line);box-shadow:none}

.btn--ghost:hover{background:var(--ink);color:#060810;border-color:var(--ink)}

/* Mobil navbar */
@media (max-width: 900px){
  body.page-index .nav,body.page-hirek .nav,body.page-gallery .nav,body.page-kapcsolat .nav,body.page-kerdoivek .nav,body.page-szakmak .nav,body.page-videok .nav,body.page-erasmus .nav{width:calc(100vw - 2rem);padding:.65rem .85rem .65rem 1.2rem}
  body.page-index .nav__links,
  body.page-hirek .nav__links,
  body.page-gallery .nav__links,
  body.page-kapcsolat .nav__links,
  body.page-kerdoivek .nav__links,
  body.page-szakmak .nav__links,
  body.page-videok .nav__links,body.page-erasmus .nav__links{position:absolute;top:calc(100% + 10px);left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;padding:.4rem 0;border-radius:22px;background:rgba(10,14,26,.97)}
  
  body.page-index .nav__links a,body.page-hirek .nav__links a,body.page-gallery .nav__links a,body.page-kapcsolat .nav__links a,body.page-kerdoivek .nav__links a,body.page-szakmak .nav__links a,body.page-videok .nav__links a,body.page-erasmus .nav__links a{padding:.95rem 1.4rem;font-size:.8rem}
  body.page-index .nav__links.open,body.page-hirek .nav__links.open,body.page-gallery .nav__links.open,body.page-kapcsolat .nav__links.open,body.page-kerdoivek .nav__links.open,body.page-szakmak .nav__links.open,body.page-videok .nav__links.open,body.page-erasmus .nav__links.open,body.page-index .nav__burger,body.page-hirek .nav__burger,body.page-gallery .nav__burger,body.page-kapcsolat .nav__burger,body.page-kerdoivek .nav__burger,body.page-szakmak .nav__burger,body.page-videok .nav__burger,body.page-erasmus .nav__burger{display:flex}
}

/* ===========================================================
   LIGHTBOX JAVÍTÁS — navbar elrejtése nagyított kép mellett
   =========================================================== */
body.page-gallery .nav{transition:opacity .22s ease, transform .22s ease, visibility .22s ease}

body.page-gallery.lightbox-open .nav{opacity:0;visibility:hidden;pointer-events:none;transform:translateX(-50%) translateY(-.75rem)}

body.page-gallery .lightbox{z-index:3000}

/* ===========================================================
   GLOBÁLIS GOMBRENDSZER — minden oldalon működik (v16)
   =========================================================== */
/* Szövegközi link — egységes a dizájnnal */
.link-inline{color:var(--green);text-decoration:underline;text-underline-offset:3px;transition:.2s}

.link-inline:hover{color:#fff;text-shadow:0 0 14px rgba(53,255,160,.5)}

body.page-index .btn:hover,.btn:hover{background:#fff;border-color:#fff;color:#04040a;box-shadow:0 0 28px rgba(53,255,160,.35);transform:translateY(-2px)}

.btn--ghost{background:transparent;color:inherit;border-color:var(--line);box-shadow:none}

.btn--ghost:hover{background:var(--ink);color:#04040a;border-color:var(--ink);box-shadow:0 0 22px rgba(53,255,160,.25);transform:translateY(-2px)}

.btn--danger{background:transparent;border:1px solid rgba(255,86,86,.55);color:#ff7676;box-shadow:none}

.btn--danger:hover{background:#ff5656;border-color:#ff5656;color:#0d0505;box-shadow:0 0 20px rgba(255,86,86,.35);transform:translateY(-2px)}

.btn--sm{padding:.5rem .95rem;font-size:.62rem}

.btn-block{width:100%}

/* ===========================================================
   HÍROLDAL — dizájn frissítés (v16)
   =========================================================== */
body.page-hirek #hirek-main{padding-top:8.5rem;padding-bottom:4.5rem}

body.page-hirek #hirek-main .section__head{margin-bottom:2.8rem}

body.page-hirek .section__kicker{display:inline-block;font-family:var(--font-m);font-size:.66rem;letter-spacing:.32em;text-transform:uppercase;color:var(--green);text-shadow:0 0 12px rgba(53,224,172,.55);margin-bottom:.7rem}

body.page-hirek .section__sub{margin-top:1rem;max-width:600px;color:var(--muted);font-size:.95rem;line-height:1.65}

body.page-hirek #hirek-main .section__head::after{content:"";display:block;width:100%;height:1px;margin-top:1.9rem;background:linear-gradient(90deg,rgba(53,224,172,.55),rgba(122,111,214,.35),transparent)}

/* ---- kiemelt (első) hír: két hasábos nagy kártya ---- */
body.page-hirek .news-card--featured{grid-column:1 / -1;display:grid;grid-template-columns:1.15fr 1fr;min-height:260px}

body.page-hirek .news-card--featured .news-card__media{height:100%;min-height:260px;border-bottom:none;border-right:1px solid var(--line)}

body.page-hirek .news-card--featured .news-card__body{padding:1.8rem 1.7rem;display:flex;flex-direction:column;justify-content:center}

body.page-hirek .news-card--featured .news-card__body:only-child{grid-column:1 / -1}

body.page-hirek .news-card--featured .news-card__tag{font-size:.66rem}

body.page-hirek .news-card--featured .news-card__title{font-size:1.55rem;line-height:1.25;margin:.55rem 0 .5rem}

body.page-hirek .news-card--featured .news-card__desc{font-size:.95rem}
@media(max-width:760px){
body.page-hirek .news-card--featured{grid-template-columns:1fr}
body.page-hirek .news-card--featured .news-card__media{border-right:none;border-bottom:1px solid var(--line);min-height:200px}
body.page-hirek .news-card--featured .news-card__title{font-size:1.25rem}
}

/* ---- kártya finomítás: kép-árnyalat, pill címke ---- */

body.page-hirek .news-card__media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,15,41,.05) 30%,rgba(12,15,41,.5));transition:.3s}

body.page-hirek .news-card:hover .news-card__media::after{background:linear-gradient(180deg,rgba(12,15,41,0) 20%,rgba(12,15,41,.25))}

body.page-hirek .news-card__tag{display:inline-block;padding:.3rem .65rem;border:1px solid rgba(53,224,172,.4);border-radius:99px;background:rgba(53,224,172,.08);width:fit-content}

/* ---- kérdőív csapdamező (botoknak, embernek nem látható) ---- */
body.page-survey .hp-field{position:absolute;left:-9999px;top:-9999px;width:1px;height:1px;opacity:0;pointer-events:none}

/* === JAVÍTÁS: gombos megjelenés a főoldal hírcikkeihez === */
/* fallback panel szövege is gombszerű */
/* ============ CIKKTÖRZS TÁBLÁZATOK (beillesztett HTML-hez) ============ */
body.page-hirek .article__body table{width:100%;border-collapse:collapse;margin:0 0 1.1rem;background:rgba(255,255,255,.04);border:1px solid rgba(170,180,230,.25);border-radius:6px;overflow:hidden}

body.page-hirek .article__body th,body.page-hirek .article__body td{padding:.5rem .7rem;border-bottom:1px solid rgba(170,180,230,.15);font-size:.9rem;text-align:left;vertical-align:top}

body.page-hirek .article__body th{font-family:var(--font-m);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--green)}

body.page-hirek .article__body tr:last-child td{border-bottom:0}

body.page-hirek .article__body img{border-radius:6px}

/* ============ ALOLDAL-FINOMÍTÁSOK (sötét téma): halvány háttérfény, admin login-kártya, hero ============ */
body.page-gallery::after,
body.page-hirek::after,
body.page-kapcsolat::after,
body.page-kerdoivek::after,
body.page-szakmak::after,
body.page-videok::after{background:radial-gradient(700px 500px at 15% 5%,rgba(77,93,255,.08),transparent 70%), radial-gradient(600px 450px at 85% 22%,rgba(157,107,255,.10),transparent 70%), radial-gradient(800px 550px at 50% 110%,rgba(53,224,172,.10),transparent 70%)}

/* ---- 3D elemek a világos témában ---- */
body.page-index .hero__badge{color:#0f9d68;border-color:rgba(15,157,104,.45);text-shadow:none}

body.page-index .ticker__track i{color:#0f9d68;text-shadow:none}

/* ============ SÖTÉT TÉMA — ÚJ: three.js hero, aurora, 3D hírek ============ */
#hero3d{position:absolute;inset:0;width:100%;height:100%;z-index:0;display:block}

.aurora{position:fixed;inset:0;z-index:-3;overflow:hidden;pointer-events:none}

.aurora i{position:absolute;width:55vw;height:55vw;border-radius:50%;filter:blur(90px);opacity:.32}

.aurora i:nth-child(1){background:#35ffa0;top:-15%;left:-10%;animation:aur1 18s ease-in-out infinite alternate}

.aurora i:nth-child(2){background:#9d6bff;top:20%;right:-15%;animation:aur2 22s ease-in-out infinite alternate}

.aurora i:nth-child(3){background:#5b6bff;bottom:-20%;left:25%;animation:aur3 26s ease-in-out infinite alternate}

@keyframes aur1{
  to{transform:translate(12vw,10vh) scale(1.2)}
}

@keyframes aur2{
  to{transform:translate(-10vw,14vh) scale(.85)}
}

@keyframes aur3{
  to{transform:translate(8vw,-12vh) scale(1.15)}
}
@media(prefers-reduced-motion: reduce){
.aurora i{animation:none}
}

.news3d{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.4rem;perspective:900px}

.news3d__card{display:block;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:linear-gradient(160deg,#0d1226 0%,#111832 100%);transition:transform .18s ease,box-shadow .3s,border-color .3s;will-change:transform;transform-style:preserve-3d}

.news3d__card:hover{border-color:rgba(53,255,160,.5);box-shadow:0 20px 60px rgba(0,0,0,.5),0 0 30px rgba(53,255,160,.12)}

.news3d__media{height:160px;background-size:cover;background-position:center;background-image:linear-gradient(135deg,#5b6bff44,#9d6bff33);position:relative}

.news3d__media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(13,18,38,.85) 100%)}

.news3d__body{padding:1.1rem 1.2rem 1.3rem}

.news3d__title{font-family:var(--font-b);font-weight:600;font-size:1.05rem;color:var(--ink);margin-top:.45rem;line-height:1.35}

.news3d__date{font-family:var(--font-m);font-size:.65rem;letter-spacing:.18em;color:var(--green);text-transform:uppercase}

.news3d__open{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  margin-top:1rem;
  padding:.7rem 1.6rem;
  font-family:var(--font-m);
  font-size:.72rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--green);
  border:1px solid var(--green);
  border-radius:999px;
  transition:.25s;
  background:rgba(53,255,160,.06);
}

.news3d__card:hover .news3d__open{background:var(--green);color:#07110d;box-shadow:0 0 22px rgba(53,255,160,.4);text-shadow:none;transform:translateY(-1px)}

/* ==================== ESEMÉNYEK (esemenyek.html) ==================== */
body.page-esemenyek,body.page-esemeny{--bg:#070a14;--bg2:#0b1020;--ink:#eef1ff;--muted:#8a93b8;--line:rgba(140,160,255,.16);--green:#35ffa0;--blue:#5b6bff;--violet:#9d6bff;--cyan:#35d5ff;--font-d:'Unbounded',sans-serif;--font-b:'Sora',sans-serif;--font-m:'JetBrains Mono',monospace}

/* 049: EGYETLEN univerzális reset minden oldalra (2026-09-29).
   Eddig NÉGY külön szabály volt (gallery/index/…, hirek, esemenyek/esemeny, admin)
   ELTÉRŐ kivétel-listával. A `*` reset specificitása (0,1,1) nagyobb a `.btn`-énél
   (0,1,0), így a kivétel nélküli oldalon a gombok paddingje lenullázódott, és a
   felirat kilógott a világos hátterükből. Most egy szabály, és az interaktív
   elemek (a, button, input, select, textarea) mindenütt kivétel. A :where() nulla
   specificitású, így a reset a leggyengébb: egyetlen komponens saját színét vagy
   paddingjét sem tudja felülírni. A box-sizing viszont mindenkire érvényes. */
body:where(.page-gallery,.page-index,.page-kapcsolat,.page-kerdoivek,.page-szakmak,.page-videok,.page-survey,.page-hirek,.page-esemenyek,.page-esemeny,.page-erasmus,.page-admin) :where(*),body.page-survey,body.page-survey *,body.page-survey *::before,body.page-survey *::after{box-sizing:border-box}
body:where(.page-gallery,.page-index,.page-kapcsolat,.page-kerdoivek,.page-szakmak,.page-videok,.page-survey,.page-hirek,.page-esemenyek,.page-esemeny,.page-erasmus,.page-admin) :where(*):not(:where(a,button,input,select,textarea)){margin:0;padding:0}
/* 047: a linkek ne kapjanak automatikus kék/lila UA-színt, ne legyenek aláhúzva —
   de ez a LEGGYENGEBB szabály legyen: a :where() nulla specificitású, így a gombok
   és a link-komponensek (.btn, .qcard__btn, .back, .nav__links a …) a saját
   színüket megkapják. Korábban a `body.page-x a{color:inherit}` (0,1,1) felülírta
   a gombok sötét szövegét → világos betű a világos zölden, alig olvasható.
   KÖTELEZŐ, NEM ELHAGYHATÓ: a 049-es reset az `a`-kat KIZÁRJA a margin/padding
   lenullázásból, de a szín és az aláhúzás UA-szintű, és semmi más nem állítja
   vissza. Kihagyásakor minden hivatkozás lila és aláhúzott lett (kapcsolati
   e-mail, kártyacímek, eseménycímek, sőt az <a class="btn"> gombok felirata is). */
body:where(.page-gallery,.page-index,.page-kapcsolat,.page-kerdoivek,.page-szakmak,.page-videok,.page-survey,.page-hirek,.page-esemenyek,.page-esemeny,.page-erasmus,.page-admin) :where(a){color:inherit;text-decoration:none}

body.page-gallery,body.page-kapcsolat,body.page-szakmak,body.page-videok,body.page-esemenyek,body.page-esemeny{background:var(--bg);color:var(--ink);font-family:var(--font-b);overflow-x:hidden}

body.page-gallery::after,body.page-hirek::after,body.page-kapcsolat::after,body.page-kerdoivek::after,body.page-szakmak::after,body.page-videok::after,body.page-esemenyek::after,body.page-esemeny::after{
  content:"";
  position:fixed;
  inset:0;
  z-index:-3;
  pointer-events:none;
  background:radial-gradient(700px 500px at 15% 5%,rgba(77,93,255,.20),transparent 70%), radial-gradient(600px 450px at 85% 22%,rgba(157,107,255,.42),transparent 70%), radial-gradient(800px 550px at 50% 110%,rgba(53,255,160,.30),transparent 70%);
}

body.page-gallery .container,body.page-index .container,body.page-kapcsolat .container,body.page-kerdoivek .container,body.page-szakmak .container,body.page-videok .container,body.page-hirek .container,body.page-esemenyek .container,body.page-esemeny .container{width:100%;max-width:1200px;margin:0 auto;padding:0 2rem}

body.page-gallery .nav,body.page-index .nav,body.page-kapcsolat .nav,body.page-kerdoivek .nav,body.page-szakmak .nav,body.page-videok .nav,body.page-erasmus .nav,body.page-esemenyek .nav,body.page-esemeny .nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:1.3rem 2.4rem;background:rgba(7,10,20,.62);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}

body.page-gallery .nav::after,body.page-kapcsolat .nav::after,body.page-kerdoivek .nav::after,body.page-videok .nav::after,body.page-esemenyek .nav::after,body.page-esemeny .nav::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,var(--green),var(--violet),transparent)}

body.page-gallery .nav__logo,body.page-kapcsolat .nav__logo,body.page-kerdoivek .nav__logo,body.page-szakmak .nav__logo,body.page-videok .nav__logo,body.page-esemenyek .nav__logo,body.page-esemeny .nav__logo{font-family:var(--font-d);font-size:1.75rem;letter-spacing:.05em;text-shadow:0 0 18px rgba(53,255,160,.55)}

body.page-gallery .nav__links,body.page-index .nav__links,body.page-kapcsolat .nav__links,body.page-kerdoivek .nav__links,body.page-videok .nav__links,body.page-hirek .nav__links,body.page-esemenyek .nav__links,body.page-esemeny .nav__links{display:flex;gap:2.2rem}

body.page-esemenyek .nav__links a,body.page-esemeny .nav__links a{font-family:var(--font-m);font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);transition:.3s}

body.page-gallery .nav__links a:hover,body.page-gallery .nav__links a.active,body.page-kapcsolat .nav__links a:hover,body.page-kapcsolat .nav__links a.active,body.page-kerdoivek .nav__links a:hover,body.page-kerdoivek .nav__links a.active,body.page-videok .nav__links a:hover,body.page-videok .nav__links a.active,body.page-erasmus .nav__links a.active,body.page-esemenyek .nav__links a:hover,body.page-esemenyek .nav__links a.active,body.page-esemeny .nav__links a:hover,body.page-esemeny .nav__links a.active{color:var(--green);text-shadow:0 0 12px rgba(53,255,160,.8)}

body.page-gallery .section__head,body.page-kerdoivek .section__head,body.page-szakmak .section__head,body.page-esemenyek .section__head{display:flex;align-items:baseline;gap:1.4rem;flex-wrap:wrap;padding-top:9rem;margin-bottom:2.6rem}

body.page-gallery .section__label,body.page-kerdoivek .section__label,body.page-esemenyek .section__label{font-family:var(--font-m);font-size:.66rem;letter-spacing:.3em;color:var(--green);text-transform:uppercase;border:1px solid rgba(53,255,160,.3);padding:.4rem .9rem;text-shadow:0 0 10px rgba(53,255,160,.6)}

body.page-esemenyek .section__title{font-family:var(--font-d);font-weight:400;font-size:clamp(1.7rem,7vw,4.6rem);letter-spacing:.03em;background:linear-gradient(90deg,#fff 45%,#7dffc4 95%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}

body.page-esemenyek .events-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.6rem;padding-bottom:3rem}

body.page-esemenyek .ev-card{display:flex;flex-direction:column;background:var(--bg2);border:1px solid var(--line);border-radius:10px;overflow:hidden;transition:.3s}

body.page-esemenyek .ev-card:hover{border-color:var(--green);transform:translateY(-4px);box-shadow:0 12px 40px rgba(53,255,160,.18)}

body.page-esemenyek .ev-card__media{height:180px;background-size:cover;background-position:center;filter:brightness(1.05) saturate(1.1)}

body.page-esemenyek .ev-card__media--empty{background:linear-gradient(135deg,rgba(91,107,255,.15),rgba(157,107,255,.15))}

body.page-esemenyek .ev-card__body{padding:1.3rem 1.4rem}

body.page-esemenyek .ev-card__title{font-family:var(--font-d);font-weight:400;font-size:1.15rem;letter-spacing:.02em;margin-bottom:.5rem}

body.page-esemenyek .ev-card__date{font-family:var(--font-m);font-size:.72rem;letter-spacing:.15em;color:var(--green);margin-bottom:.3rem}

body.page-esemenyek .ev-card__loc{font-size:.85rem;color:var(--muted);margin-bottom:.3rem}

body.page-esemenyek .ev-card__desc{font-size:.85rem;color:var(--muted);line-height:1.5;margin-top:.5rem}

body.page-esemenyek .ev-card__regbtn{display:inline-block;margin-top:.9rem;padding:.5rem 1.3rem;font-family:var(--font-m);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:#0a0e1a;background:var(--green);border-radius:6px;cursor:pointer;transition:.25s}

/* lezárult esemény jelvény a kártyán + lezárás-doboz az eseményoldalon */
body.page-esemenyek .ev-card__closed{display:inline-block;margin-top:.9rem;padding:.5rem 1.3rem;font-family:var(--font-m);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);border-radius:6px}

body.page-esemeny .ev-closed{border:1px dashed var(--line);border-radius:12px;padding:1.8rem 2rem;margin-top:2.2rem;color:var(--muted);font-size:.95rem;line-height:1.6}

body.page-esemeny .ev-closed .ev-reg__title{color:var(--muted)}

body.page-esemenyek .ev-card:hover .ev-card__regbtn{background:#5dffb4;box-shadow:0 0 18px rgba(53,255,160,.4)}

body.page-index .empty,body.page-videok .empty,body.page-survey .empty,body.page-esemenyek .empty,body.page-esemeny .empty{border:1px dashed var(--line);padding:2.4rem;text-align:center;color:var(--muted);font-family:var(--font-m);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase}

body.page-gallery .footer,body.page-kerdoivek .footer,body.page-hirek .footer,body.page-videok .footer,body.page-kapcsolat .footer,body.page-esemenyek .footer,body.page-esemeny .footer{border-top:1px solid var(--line);padding:2.8rem 0 2rem;margin-top:3rem;font-family:var(--font-m);font-size:.62rem;letter-spacing:.15em;color:var(--muted);text-align:center;position:relative}

body.page-gallery .footer::before,body.page-kerdoivek .footer::before,body.page-hirek .footer::before,body.page-videok .footer::before,body.page-kapcsolat .footer::before,body.page-index .footer::before,body.page-esemenyek .footer::before,body.page-esemeny .footer::before{content:"";position:absolute;top:-1px;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--green),var(--cyan),transparent)}

body.page-gallery .nav__burger,body.page-index .nav__burger,body.page-kapcsolat .nav__burger,body.page-kerdoivek .nav__burger,body.page-szakmak .nav__burger,body.page-videok .nav__burger,body.page-erasmus .nav__burger,body.page-esemenyek .nav__burger,body.page-esemeny .nav__burger{display:none;background:none;border:1px solid var(--line);width:42px;height:38px;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:0;transition:border-color .3s}

body.page-gallery .nav__burger:hover,body.page-index .nav__burger:hover,body.page-kapcsolat .nav__burger:hover,body.page-kerdoivek .nav__burger:hover,body.page-szakmak .nav__burger:hover,body.page-videok .nav__burger:hover,body.page-erasmus .nav__burger:hover,body.page-survey input:focus,body.page-survey select:focus,body.page-survey textarea:focus,body.page-esemenyek .nav__burger:hover,body.page-esemeny .nav__burger:hover{border-color:var(--green)}

body.page-gallery .nav__burger span,body.page-index .nav__burger span,body.page-kapcsolat .nav__burger span,body.page-kerdoivek .nav__burger span,body.page-szakmak .nav__burger span,body.page-videok .nav__burger span,body.page-erasmus .nav__burger span,body.page-esemenyek .nav__burger span,body.page-esemeny .nav__burger span{display:block;width:20px;height:2px;background:var(--green);transition:.3s}

@media(max-width:1100px){
body.page-esemenyek .nav , body.page-esemeny .nav{padding:1rem 1.4rem}
body.page-esemenyek .nav__links , body.page-esemeny .nav__links{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;gap:0;background:rgba(10,14,26,.97);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);padding:.4rem 0}

body.page-esemenyek .nav__links a , body.page-esemeny .nav__links a{padding:.95rem 2rem;border-top:1px solid rgba(120,140,255,.12);font-size:.85rem}
body.page-esemenyek .nav__links.open,body.page-esemeny .nav__links.open,body.page-esemenyek .nav__burger,body.page-esemeny .nav__burger{display:flex}
body.page-esemenyek .section__head{padding-top:7.5rem}
}

/* ==================== ESEMÉNY RÉSZLET (esemeny.html) ==================== */
body.page-esemeny #event-page{padding-top:9rem;padding-bottom:3rem}

body.page-esemeny .ev-hero-img{width:100%;max-height:400px;object-fit:cover;background-size:cover;background-position:center;border-radius:10px;margin-bottom:2rem;min-height:200px;border:1px solid var(--line)}

body.page-esemeny .ev-title{font-family:var(--font-d);font-weight:400;font-size:clamp(2rem,5vw,3.2rem);letter-spacing:.03em;background:linear-gradient(90deg,#fff 45%,#7dffc4 95%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:1rem}

body.page-esemeny .ev-meta{display:flex;flex-wrap:wrap;gap:1.2rem;margin-bottom:1.5rem}

body.page-esemeny .ev-meta__item{font-family:var(--font-m);font-size:.78rem;letter-spacing:.1em;color:var(--muted)}

body.page-esemeny .ev-desc{line-height:1.8;color:var(--ink);margin-top:1.5rem;font-size:.95rem}

body.page-esemeny .ev-info{background:rgba(53,255,160,.06);border-left:4px solid var(--green);padding:1rem 1.2rem;margin-top:1.5rem;border-radius:4px;font-size:.9rem}

body.page-esemeny .ev-reg{margin-top:2.5rem;border:1px solid var(--line);border-radius:10px;padding:2rem;background:var(--bg2)}

body.page-esemeny .ev-reg__title{font-family:var(--font-d);font-weight:400;font-size:1.5rem;margin-bottom:1.5rem;color:var(--green)}

body.page-esemeny .ev-field{display:flex;flex-direction:column;gap:.4rem}

body.page-esemeny .ev-field label{font-family:var(--font-m);font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}

body.page-esemeny .ev-field input{padding:.8rem 1rem;border:1px solid var(--line);border-radius:6px;background:rgba(7,10,20,.6);color:var(--ink);font-family:var(--font-b);font-size:.9rem;transition:.3s}

body.page-esemeny .ev-field input:focus{outline:none;border-color:var(--green);box-shadow:0 0 12px rgba(53,255,160,.15)}

body.page-esemeny .ev-reg .btn{
  display:inline-block;
  font-family:var(--font-m);
  font-size:.72rem;
  letter-spacing:.2em;
  text-transform:uppercase;
  padding:.95rem 2rem;
  border:1px solid var(--green);
  background:var(--green);
  color:#04040a;
  transition:.25s;
  cursor:pointer;
  box-shadow:0 0 22px rgba(53,255,160,.40);
  margin-top:.5rem;
  align-self:flex-start;
}

body.page-esemeny .ev-reg .btn:hover{background:#fff;border-color:#fff;color:#04040a;transform:translateY(-2px)}

body.page-esemeny .ev-reg .btn:disabled{opacity:.6;cursor:not-allowed}

body.page-esemeny .ev-success{text-align:center;padding:3rem 2rem;border:1px solid rgba(53,255,160,.25);border-radius:10px;margin-top:2.5rem;background:rgba(53,255,160,.04)}

body.page-esemeny .ev-success__icon{font-size:3rem;color:var(--green);margin-bottom:1rem}

body.page-esemeny .ev-success h2{font-family:var(--font-d);font-weight:400;font-size:1.6rem;margin-bottom:.8rem}

body.page-esemeny .ev-success__note{color:var(--muted);font-size:.85rem}
@media(max-width:600px){
body.page-esemeny .ev-meta{flex-direction:column;gap:.6rem}
body.page-esemeny #event-page{padding-top:7.5rem}
}

/* ==================== MOBIL EDGE-FIX ==================== */
@media(max-width:600px){
  
  body.page-index .hero{padding:7rem 1rem 3rem}
  body.page-index .nav,body.page-hirek .nav,body.page-gallery .nav,body.page-kapcsolat .nav,body.page-kerdoivek .nav,body.page-szakmak .nav,body.page-videok .nav,body.page-erasmus .nav{width:calc(100vw - 1rem);padding:.55rem .7rem .55rem 1rem}
  body.page-index .section{padding:2.5rem 0}
  body.page-index .section__head{margin-bottom:1.6rem}
  body.page-gallery .container,body.page-index .container,body.page-kapcsolat .container,body.page-kerdoivek .container,body.page-videok .container,body.page-szakmak .container,body.page-hirek .container,body.page-esemenyek .container,body.page-esemeny .container{padding:0 1rem}
}

/* ================= ERASMUS+ OLDAL ================= */
body.page-erasmus .container{max-width:800px;margin:0 auto;padding:0 2rem;position:relative;z-index:1}
/* A navigáció NEM itt van stílusolva: a `shared.js` (navPages lista) adja neki
   ugyanazt a lebegő, középre igazított pirulát, mint minden más oldalnak — a
   korábbi, itt maradt `body.page-erasmus .nav*` szabályok (sticky navigáció,
   apró betűk) ezért TÖRÖLVE lettek, mert felülírták a közös stílust. */

body.page-erasmus .ev-reg{margin:2rem 0 3rem;background:rgba(255,255,255,.03);border:1px solid var(--line);border-radius:16px;padding:2rem}

body.page-erasmus .ev-reg__title{font-family:var(--font-d);font-weight:400;font-size:1.1rem;letter-spacing:.1em;margin-bottom:1.5rem;text-align:center;color:var(--green)}

body.page-esemeny .ev-reg__form,body.page-erasmus .ev-reg__form{display:flex;flex-direction:column;gap:1rem}

body.page-erasmus .ev-field{display:flex;flex-direction:column;gap:.3rem}

body.page-erasmus .ev-field label{font-family:var(--font-m);font-size:.58rem;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}

body.page-erasmus .ev-field input{background:rgba(255,255,255,.04);border:1px solid var(--line);border-radius:8px;padding:.7rem 1rem;color:var(--ink);font-family:var(--font-b);font-size:.85rem;transition:.2s}

body.page-erasmus .ev-field input:focus{outline:none;border-color:var(--green);background:rgba(53,255,160,.04)}

body.page-erasmus .ev-reg .btn{margin-top:.5rem;width:100%;justify-content:center;background:linear-gradient(135deg, var(--green), var(--cyan));color:#070a14;font-family:var(--font-d);font-size:.72rem;letter-spacing:.12em;padding:.9rem 2rem;border:0;border-radius:10px;cursor:pointer;transition:.2s}

body.page-erasmus .ev-reg .btn:hover{transform:translateY(-1px);box-shadow:0 8px 30px rgba(53,255,160,.2)}

body.page-erasmus .ev-reg .btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}

body.page-erasmus .ev-success{text-align:center;padding:3rem 0}

body.page-erasmus .ev-success__icon{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg, var(--green), var(--cyan));color:#070a14;font-size:1.8rem;display:flex;align-items:center;justify-content:center;margin:0 auto 1.2rem}

body.page-erasmus .ev-success h2{font-family:var(--font-d);font-weight:400;font-size:1.4rem;margin-bottom:1rem}

body.page-erasmus .ev-success__note{font-size:.75rem;color:var(--muted)}

body.page-erasmus .empty{text-align:center;padding:3rem;color:var(--muted);font-size:.85rem}
@media(max-width:768px){
/* A navigációt a shared.js kezeli (nyíló menü + burger a saját töréspontján) —
   a régi, itt maradt .nav__links/.nav__burger szabályok TÖRÖLVE lettek, mert
   felülírták a közös menüt. */
body.page-erasmus .container{padding:0 1rem}
body.page-erasmus .ev-reg{padding:1.2rem}
}

/* ============================================================
   NAVBAR - 8 menupont kozepre igazitva, olvashato merettel
   (a .nav.nav dupla osztaly szandekos: erosebb, mint a body.page-x szabalyok)
   ============================================================ */
@media (min-width: 1101px){
  html body .nav.nav{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.8rem;padding:1.05rem 1.6rem}
  html body .nav .nav__logo{justify-self:start;font-size:clamp(1.2rem, 1.5vw, 1.55rem)}
  html body .nav .nav__links{justify-self:center;display:flex;align-items:center;flex-wrap:nowrap;gap:clamp(.2rem, .6vw, .8rem)}
  html body .nav .nav__links a{font-size:clamp(.68rem, .8vw, .8rem);letter-spacing:.08em;padding:.5rem clamp(.42rem, .7vw, .85rem);white-space:nowrap}
  html body .nav .nav__burger{justify-self:end}
}
@media(min-width: 1101px) and (max-width: 1180px){
html body .nav.nav{padding:1rem 1.1rem;gap:.4rem}
html body .nav .nav__links{gap:.25rem}
html body .nav .nav__links a{font-size:.68rem;letter-spacing:.05em;padding:.45rem .5rem}
}

/* ============================================================
   ESEMENY - jelentkezesi urlap CTA doboz
   ============================================================ */
body.page-esemeny .ev-formlink{margin-top:2rem;padding:2rem;border-radius:12px;background:linear-gradient(180deg, rgba(28,34,68,.9), rgba(17,21,40,.9));border:1px solid rgba(53,255,160,.3);box-shadow:0 18px 44px rgba(53,255,160,.07)}

body.page-esemeny .ev-formlink p{color:#c9d2f5;line-height:1.7;margin:1rem 0 1.4rem}

/* a hosszú feliratú „JELENTKEZÉSI ŰRLAP” gomb: nagyobb betű, kevesebb
   betűtávolság → olvashatóbb (a 11,5 px-es felirat a hosszú szöveggel
   csak nagyon szétszórtan olvasható volt) */
body.page-esemeny .ev-formlink .btn{font-size:.82rem;letter-spacing:.1em;padding:1rem 1.9rem}

/* ==================== SURVEY — belépőjegy (QR + vonalkód a beküldés után) ==================== */
body.page-survey .ticket{margin:1.2rem 0 1.6rem;padding:1.4rem 1.2rem;border:1px solid rgba(53,224,172,.35);border-radius:16px;background:rgba(53,224,172,.06);text-align:center}

body.page-survey .ticket .btn{margin-top:.8rem}

/* ==================== SURVEY — smiley-s pontozás (1–5) ==================== */
body.page-survey .rating label{flex-direction:column;gap:2px;height:auto;min-height:52px;padding:.35rem 0}

body.page-survey .rating label small{font-size:.85rem;line-height:1;font-family:var(--font-b)}

/* ===========================================================
   HÍR ↔ ESEMÉNY ÖSSZEKAPCSOLÁS (v17)
   =========================================================== */
body.page-hirek .news-card__event{display:block;margin:0 0 .8rem;font-family:var(--font-m);font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:#8fd8ff}

body.page-hirek .article__event{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1rem;border:1px solid rgba(53,224,172,.35);border-radius:10px;background:rgba(53,224,172,.06);padding:.9rem 1.1rem;margin:0 0 1.6rem}

body.page-hirek .article__event__link{color:var(--ink);text-decoration:none;border-bottom:1px solid rgba(53,224,172,.5);transition:.2s}

body.page-esemeny .ev-news{margin-top:1.5rem;display:flex;flex-wrap:wrap;align-items:center;gap:.7rem;border:1px solid rgba(53,255,160,.3);border-radius:10px;background:rgba(53,255,160,.05);padding:1rem 1.2rem}

body.page-hirek .article__event__label,body.page-esemeny .ev-news__label{font-family:var(--font-m);font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--green)}

/* ============================================================
   2026-09-22 JAVÍTÁSOK — eseményoldal: teljes hero kép + hírkártya;
   főoldal + eseménykártyák: kapcsolódó hír hover-buborék
   ============================================================ */
/* --- esemény hero: a poszter teljes egészében látszik (nincs levágás) --- */
body.page-esemeny .ev-hero-img{max-height:none;min-height:0;background:#080c18;overflow:hidden}

body.page-esemeny .ev-hero-img img{display:block;width:100%;max-height:480px;object-fit:contain}

/* --- kapcsolódó hír kártya az eseményoldalon --- */
body.page-esemeny .ev-news{display:block;margin-top:1.8rem;padding:1.2rem 1.3rem;border-radius:12px}

body.page-esemeny .ev-news__label{display:block;margin-bottom:.9rem}

body.page-esemeny .ev-news__list{display:flex;flex-direction:column;gap:.6rem}

body.page-esemeny .ev-news__card{display:flex;align-items:center;gap:1rem;background:rgba(11,16,32,.65);border:1px solid var(--line);border-radius:10px;padding:.6rem .9rem .6rem .6rem;transition:.25s}

body.page-esemeny .ev-news__card:hover{border-color:var(--green);transform:translateX(4px);box-shadow:0 8px 24px rgba(53,255,160,.12)}

body.page-esemeny .ev-news__thumb{flex:0 0 74px;height:52px;border-radius:6px;background-size:cover;background-position:center;background-color:#0d1330}

body.page-esemeny .ev-news__thumb--empty{display:flex;align-items:center;justify-content:center;font-size:1.3rem;background:linear-gradient(135deg,rgba(91,107,255,.18),rgba(157,107,255,.18))}

body.page-esemeny .ev-news__t{font-size:.95rem;font-weight:500;color:var(--ink);transition:.2s}

body.page-esemeny .ev-news__arrow{margin-left:auto;color:var(--green);font-size:1.1rem}

/* --- főoldal: közelgő esemény hover-buborék a kapcsolódó hírrel --- */
body.page-index .events__main{display:contents}

body.page-index .events__newsdot{font-size:.8rem;margin-left:.4rem}

body.page-index .ev-pop{
  position:absolute;
  left:1rem;
  right:1rem;
  top:calc(100% - 2px);
  z-index:70;
  background:rgba(10,14,30,.97);
  border:1px solid rgba(53,255,160,.35);
  border-radius:12px;
  padding:1rem 1.2rem;
  box-shadow:0 20px 50px rgba(0,0,0,.55);
  opacity:0;
  visibility:hidden;
  transform:translateY(-6px);
  transition:.22s;
}

body.page-index .events__item:hover .ev-pop,body.page-index .events__item:focus-within .ev-pop{opacity:1;visibility:visible;transform:translateY(0)}

body.page-index .ev-pop__link{display:block;padding:.4rem 0;font-size:.92rem;color:var(--ink);border-bottom:1px dashed rgba(140,160,255,.14);transition:.2s}

body.page-index .ev-pop__link:last-of-type{border-bottom:none}

/* --- eseménykártyák: hover-re felúszó sáv a kapcsolódó hírrel --- */
body.page-hirek .news-card__media,body.page-esemenyek .ev-card{position:relative}

body.page-esemenyek .ev-card__newsflag{display:inline-block;margin-top:.8rem;font-family:var(--font-m);font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:var(--cyan);border:1px solid rgba(53,213,255,.35);padding:.3rem .7rem;border-radius:999px}

body.page-esemenyek .ev-card__news{display:block;position:absolute;left:0;right:0;bottom:0;z-index:5;background:rgba(8,12,24,.94);backdrop-filter:blur(6px);border-top:1px solid rgba(53,255,160,.35);padding:1rem 1.3rem 1.2rem;transform:translateY(101%);transition:transform .3s}

body.page-esemenyek .ev-card:hover .ev-card__news,body.page-esemenyek .ev-card:focus-within .ev-card__news{transform:translateY(0)}

body.page-index .ev-pop__label,body.page-esemenyek .ev-card__news-label{display:block;font-family:var(--font-m);font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--green);margin-bottom:.5rem}

body.page-esemenyek .ev-card__news-link{display:block;padding:.35rem 0;font-size:.9rem;color:var(--ink);cursor:pointer;transition:.2s}

body.page-index .ev-pop__link:hover,body.page-esemenyek .ev-card__news-link:hover{color:var(--green);padding-left:.4rem}

/* ===========================================================
   JAVÍTÁS v18 — eseményoldalak navbar-ja + kapcsolat szöveg
   =========================================================== */
/* 1) AZ ESEMÉNYOLDALAK NAVBARJA
   Az esemenyek.html / esemeny.html eddig széles sávos navbart kapott
   (left:0; right:0). A shared.js viszont futásidőben beszúr egy
   ".nav { transform:translateX(-50%); width:min(1160px,...) }" szabályt,
   ami alacsonyabb specificitású ugyan, DE a transform/width tulajdonságokat
   a régi oldal-specifikus szabály nem írta felül -> a navbar fél szélességgel
   balra kicsúszott a képernyőről (logó + első menüpontok nem látszottak).
   Itt minden tulajdonságot megadunk, hogy a lebegő pirula minden oldalon
   ugyanaz legyen. */
body.page-esemenyek .nav,body.page-esemeny .nav{
  position:fixed;
  top:1.1rem;
  left:50%;
  right:auto;
  transform:translateX(-50%);
  width:min(1150px, 94vw);
  z-index:1000;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1.5rem;
  padding:.7rem 1.2rem .7rem 1.8rem;
  border:1px solid var(--line);
  border-radius:60px;
  background:rgba(7,10,20,.82);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  box-shadow:0 14px 35px rgba(0,0,0,.45);
}

/* a régi, teljes szélességű sáv aláhúzó csíkja nem illik a pirulához */

body.page-esemenyek .nav__logo,body.page-esemeny .nav__logo{display:flex;align-items:center;color:inherit;text-decoration:none;font-family:var(--font-d);font-size:1.55rem;letter-spacing:.05em;white-space:nowrap;text-shadow:0 0 18px rgba(53,255,160,.55)}

body.page-esemenyek .nav__links,body.page-esemeny .nav__links{display:flex;align-items:center;gap:1.1rem;padding:.5rem 1.3rem;border:1px solid var(--line);border-radius:999px;background:rgba(11,16,32,.6)}

body.page-esemenyek .nav__links a,body.page-esemeny .nav__links a{color:#fff;text-decoration:none;font-family:var(--font-m);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;transition:color .25s, text-shadow .25s}

/* (Az eseményoldalak saját, ≤1100px-es navbar-blokkjai TÖRÖLVE: a „9 menüpont"
   blokk (lent, @media(max-width:1100px)) már a page-esemenyek/page-esemeny oldalakat
   is tartalmazza, így ott is ugyanaz a mobil menü fut, mint a többi oldalon.) */
/* 2) KAPCSOLAT OLDAL — a bevezető szöveg (contact_text) olvashatósága.
   Eddig halvány szürke (var(--muted)) volt, a sortörések pedig elvesztek,
   ezért egybefolyt, nehezen olvasható szövegtömb lett belőle. */
body.page-kapcsolat .lead{color:#d9ddff;max-width:760px;font-size:1.02rem;line-height:1.85;white-space:pre-line;margin-bottom:2.6rem}

/* 3) KAPCSOLAT OLDAL — közösségi linkek: jól látható pirulák */
body.page-kapcsolat .csocial a{color:#eafff5;border-color:rgba(53,255,160,.35);background:rgba(53,255,160,.07)}

body.page-kapcsolat .csocial a:hover{background:var(--green);border-color:var(--green);color:#07110d;box-shadow:0 0 24px rgba(53,255,160,.45)}

/* 4) KAPCSOLAT OLDAL — LEVELEZŐ ŰRLAP (a 044-es migráció űrlapja).
   Az űrlap a .ccard-ok mintájára épül (sötét kártya, zöld címke), de nagyobb
   és kétlépéses. A zöld gomb szándékosan ugyanaz a `--green` + sötét szöveg,
   mint a REGISZTRÁLOK és a bento-CTA gombok. */
body.page-kapcsolat .cwrite{margin-top:2.4rem;background:linear-gradient(160deg,var(--bg2),#0e1428);border:1px solid var(--line);padding:2.4rem 2.2rem}
body.page-kapcsolat .cwrite__head{margin-bottom:1.8rem}
body.page-kapcsolat .cwrite__label{font-family:var(--font-m);font-size:.62rem;letter-spacing:.25em;color:var(--green);text-transform:uppercase;text-shadow:0 0 10px rgba(53,224,172,.6)}
body.page-kapcsolat .cwrite__title{font-family:var(--font-d);font-weight:400;font-size:clamp(1.5rem,4vw,2.1rem);letter-spacing:.03em;margin:.5rem 0 .6rem}
body.page-kapcsolat .cwrite__hint{color:#c3cbf0;font-size:.9rem;line-height:1.75;max-width:62ch}
body.page-kapcsolat .cform{display:grid;gap:1.2rem}
/* a rejtett csapdamező: a botok megtalálják, az emberek nem látják (a füst-teszt is ezt ellenőrzi) */
body.page-kapcsolat .cform__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
body.page-kapcsolat .cform__row{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
body.page-kapcsolat .cfield{display:grid;gap:.45rem;min-width:0}
body.page-kapcsolat .cfield label{font-family:var(--font-m);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:#c8cff5}
/* a kötelezőt jelölő csillag nem csak színnel (a színtévesztők számára) */
body.page-szakmak .prog__link,body.page-szakmak button.prog__more:hover,body.page-kapcsolat a.ccard__value:hover,body.page-survey .msg--ok,body.page-hirek .article__body a,body.page-esemeny .ev-info strong,body.page-hirek .article__event__link:hover,body.page-esemeny .ev-news__card:hover .ev-news__t,body.page-kapcsolat .cfield__req{color:var(--green)}
body.page-kapcsolat .cfield__note{color:var(--muted);font-size:.72rem;line-height:1.5}
body.page-kapcsolat .cfield input,
body.page-kapcsolat .cfield textarea{width:100%;background:rgba(6,10,20,.75);border:1px solid var(--line);color:var(--ink);padding:.85rem 1rem;font-family:var(--font-b);font-size:.95rem;transition:.2s;resize:vertical}
body.page-kapcsolat .cfield input::placeholder,
body.page-kapcsolat .cfield textarea::placeholder{color:#6b74a0}
body.page-kapcsolat .cfield input:focus,
body.page-kapcsolat .cfield textarea:focus{outline:none;border-color:var(--green);box-shadow:0 0 0 2px rgba(53,255,160,.22)}
/* hibás mező: piros keret + bal oldali sáv, hogy ne csak a szín különböztesse meg */
body.page-kapcsolat .cfield input.is-error,
body.page-kapcsolat .cfield textarea.is-error{border-color:#ff6b6b;box-shadow:inset 3px 0 0 #ff6b6b}
body.page-kapcsolat .cform__actions{display:flex;align-items:center;gap:1.2rem;flex-wrap:wrap;margin-top:.4rem}
body.page-kapcsolat .cform__note{color:var(--muted);font-size:.74rem;line-height:1.55;max-width:44ch}
body.page-kapcsolat .cform__btn{font-family:var(--font-m);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:#0a0e1a;background:var(--green);border:1px solid var(--green);padding:.85rem 1.8rem;cursor:pointer;transition:.25s;font-weight:500;white-space:nowrap}
body.page-kapcsolat .cform__btn:hover{background:#5dffb4;box-shadow:0 0 26px rgba(53,255,160,.45)}
body.page-kapcsolat .cform__btn:focus-visible{outline:2px solid #fff;outline-offset:3px}
body.page-kapcsolat .cform__btn:disabled{opacity:.55;cursor:progress;box-shadow:none}
body.page-kapcsolat .cform__btn--ghost{background:transparent;color:#e8eeff;border-color:rgba(238,241,255,.35)}
body.page-kapcsolat .cform__btn--ghost:hover{background:rgba(238,241,255,.08);color:#fff;box-shadow:none;border-color:rgba(238,241,255,.6)}
body.page-kapcsolat .cform__status{font-size:.85rem;line-height:1.6;padding:.85rem 1.1rem;border-left:3px solid var(--line);background:rgba(140,160,255,.07)}
body.page-kapcsolat .cform__status--ok{border-left-color:var(--green);color:#d8fff0;background:rgba(53,255,160,.1)}
body.page-kapcsolat .cform__status--error{border-left-color:#ff6b6b;color:#ffdcdc;background:rgba(255,107,107,.1)}

/* --- a 2. lépés: az ellenőrző kód ablaka (overlay) --- */
body.page-kapcsolat .cverify{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:rgba(3,6,14,.82);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
body.page-survey .rating input,body.page-index .nav::after,body.page-gallery .nav::after,body.page-kapcsolat .nav::after,body.page-kerdoivek .nav::after,body.page-videok .nav::after,body.page-esemenyek .nav::after,body.page-esemeny .nav::after,body.page-kapcsolat .cverify[hidden]{display:none}
/* amíg nyitva, a háttér ne görgessen */

body.page-kapcsolat .cverify__box{width:100%;max-width:440px;background:linear-gradient(160deg,#0d1226,#0a0f1e);border:1px solid rgba(53,255,160,.3);padding:2rem 1.8rem;box-shadow:0 24px 70px rgba(0,0,0,.6)}
body.page-kapcsolat .cverify__title{font-family:var(--font-d);font-weight:400;font-size:1.35rem;letter-spacing:.03em;margin-bottom:.7rem}
body.page-kapcsolat .cverify__text{color:#c3cbf0;font-size:.88rem;line-height:1.7;margin-bottom:1.4rem}
body.page-kapcsolat .cverify__text strong{color:#eafff5}
/* a kódmező: nagy, monospace, betűkönnyen olvasható szóközökkel */
body.page-kapcsolat .cverify__code{font-family:var(--font-m);font-size:1.7rem;letter-spacing:.5em;text-align:center;padding:.9rem .5rem}
body.page-kapcsolat .cverify__code::placeholder{color:#39406a}
body.page-kapcsolat .cverify__actions{display:flex;gap:.9rem;justify-content:flex-end;flex-wrap:wrap;margin-top:1.4rem}

@media(max-width:640px){
body.page-kapcsolat .cwrite{padding:1.8rem 1.2rem}
body.page-kapcsolat .cform__row{grid-template-columns:1fr}

body.page-kapcsolat .cverify__actions{flex-direction:column-reverse}
body.page-kapcsolat .cform__btn,body.page-kapcsolat .cverify__actions .cform__btn{width:100%}
}

/* ==================== SURVEY — ÉRTÉKELÉS MÓD (sötét téma, emodzsi-skála) ==================== */
/* a teljes oldal sötét marad, mint a többi oldal (kártya, mezők, gomb, vissza-linkek
   az alap page-survey stílust öröklik) — csak az emodzsi-skála kap saját elrendezést */
/* --- pontozás: 5 emodzsi-kártya címkével --- */
body.page-survey.survey--rate .rating--emoji{display:grid;grid-template-columns:repeat(5, 1fr);gap:.6rem}

body.page-survey.survey--rate .rating--emoji label{width:auto;height:auto;min-height:84px;padding:.8rem .3rem .6rem;flex-direction:column;gap:.35rem;border-radius:14px;background:rgba(53,255,160,.03)}

body.page-survey.survey--rate .rating--emoji label .emoji{font-size:1.7rem;line-height:1}

body.page-survey.survey--rate .rating--emoji label small{font-size:.68rem;letter-spacing:0;text-transform:none;color:var(--muted);text-align:center;line-height:1.25}

body.page-survey.survey--rate .rating--emoji label:hover{border-color:var(--green);transform:translateY(-2px)}

body.page-survey.survey--rate .rating--emoji input:checked+label{background:rgba(53,255,160,.12);border-color:var(--green);box-shadow:0 0 0 3px rgba(53,255,160,.14);color:var(--ink)}

body.page-survey.survey--rate .rating--emoji input:checked+label small{color:var(--green);font-weight:600}
@media(max-width:520px){
body.page-survey.survey--rate .card{padding:1.6rem 1.1rem}
body.page-survey.survey--rate .rating--emoji{gap:.4rem}
body.page-survey.survey--rate .rating--emoji label .emoji{font-size:1.35rem}
body.page-survey.survey--rate .rating--emoji label small{font-size:.6rem}
}

/* ==================== NAVBAR NAGYÍTÁS + KÉRDŐÍV OLDAL NAVBAR (v20) ==================== */
/* nagyobb, jobban olvasható lebegő navbar minden publikus oldalon.
   IDE TARTOZIK az eseményoldal (page-esemenyek/page-esemeny) is: a „JAVÍTÁS v18"
   blokk még az eredeti, keskeny (1150px) méretet adta meg neki, ezért ott más
   volt a pirula szélessége/magassága, mint a többi oldalon. */
body.page-index .nav,body.page-hirek .nav,body.page-esemenyek .nav,body.page-esemeny .nav,body.page-gallery .nav,body.page-kapcsolat .nav,body.page-kerdoivek .nav,body.page-szakmak .nav,body.page-videok .nav,body.page-erasmus .nav{width:min(1320px, 96vw);padding:.85rem 1.4rem .85rem 2rem}

body.page-index .nav__links,
body.page-hirek .nav__links,
body.page-esemenyek .nav__links,
body.page-esemeny .nav__links,
body.page-gallery .nav__links,
body.page-kapcsolat .nav__links,
body.page-kerdoivek .nav__links,
body.page-szakmak .nav__links,
body.page-videok .nav__links,body.page-erasmus .nav__links{gap:1.55rem;padding:.65rem 1.6rem}

body.page-index .nav__links a,
body.page-hirek .nav__links a,
body.page-esemenyek .nav__links a,
body.page-esemeny .nav__links a,
body.page-gallery .nav__links a,
body.page-kapcsolat .nav__links a,
body.page-kerdoivek .nav__links a,
body.page-szakmak .nav__links a,
body.page-videok .nav__links a,body.page-erasmus .nav__links a{font-size:.9rem;letter-spacing:.12em}

/* --- survey oldal: ugyanaz a lebegő pirula-navbar (sötét alap) --- */
body.page-survey .nav{
  position:fixed;
  top:1.1rem;
  left:50%;
  right:auto;
  transform:translateX(-50%);
  width:min(1320px, 96vw);
  z-index:1000;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1.5rem;
  padding:.85rem 1.4rem .85rem 2rem;
  border:1px solid var(--line);
  border-radius:60px;
  background:rgba(7,10,20,.82);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  box-shadow:0 14px 35px rgba(0,0,0,.45);
}

body.page-survey .nav__logo{display:flex;align-items:center;color:var(--ink);text-decoration:none;font-family:var(--font-d);font-size:1.55rem;letter-spacing:.05em;white-space:nowrap}

body.page-esemenyek .nav__logo::before,body.page-esemeny .nav__logo::before,body.page-survey .nav__logo::before{content:"";width:10px;height:10px;flex:0 0 auto;margin-right:.7rem;border-radius:50%;background:var(--green);box-shadow:0 0 14px rgba(53,224,172,.9)}

body.page-survey .nav__links{display:flex;align-items:center;gap:1.55rem;padding:.65rem 1.6rem;border:1px solid var(--line);border-radius:999px;background:rgba(11,16,32,.6)}

body.page-survey .nav__links a{color:#fff;text-decoration:none;font-family:var(--font-m);font-size:.9rem;letter-spacing:.12em;text-transform:uppercase;transition:color .25s, text-shadow .25s}

body.page-esemenyek .nav__links a:hover,body.page-esemenyek .nav__links a.active,body.page-esemeny .nav__links a:hover,body.page-esemeny .nav__links a.active,body.page-survey .nav__links a:hover,body.page-survey .nav__links a.active{color:var(--green);text-shadow:0 0 12px rgba(53,224,172,.75)}

body.page-index .nav__burger,body.page-hirek .nav__burger,body.page-gallery .nav__burger,body.page-kapcsolat .nav__burger,body.page-kerdoivek .nav__burger,body.page-szakmak .nav__burger,body.page-videok .nav__burger,body.page-erasmus .nav__burger,body.page-survey .nav__burger{display:none;width:42px;height:38px;flex:0 0 auto;align-items:center;justify-content:center;flex-direction:column;gap:5px;padding:0;border:1px solid var(--line);border-radius:999px;background:transparent;cursor:pointer}

body.page-index .nav__burger span,body.page-hirek .nav__burger span,body.page-gallery .nav__burger span,body.page-kapcsolat .nav__burger span,body.page-kerdoivek .nav__burger span,body.page-szakmak .nav__burger span,body.page-videok .nav__burger span,body.page-erasmus .nav__burger span,body.page-survey .nav__burger span{display:block;width:18px;height:2px;background:var(--green);transition:.25s}

body.page-gallery .nav__burger.on span:nth-child(1),body.page-index .nav__burger.on span:nth-child(1),body.page-kapcsolat .nav__burger.on span:nth-child(1),body.page-kerdoivek .nav__burger.on span:nth-child(1),body.page-szakmak .nav__burger.on span:nth-child(1),body.page-videok .nav__burger.on span:nth-child(1),body.page-erasmus .nav__burger.on span:nth-child(1),body.page-esemenyek .nav__burger.on span:nth-child(1),body.page-esemeny .nav__burger.on span:nth-child(1),body.page-survey .nav__burger.on span:nth-child(1){transform:translateY(7px) rotate(45deg)}

body.page-gallery .nav__burger.on span:nth-child(2),body.page-index .nav__burger.on span:nth-child(2),body.page-kapcsolat .nav__burger.on span:nth-child(2),body.page-kerdoivek .nav__burger.on span:nth-child(2),body.page-szakmak .nav__burger.on span:nth-child(2),body.page-videok .nav__burger.on span:nth-child(2),body.page-erasmus .nav__burger.on span:nth-child(2),body.page-esemenyek .nav__burger.on span:nth-child(2),body.page-esemeny .nav__burger.on span:nth-child(2),body.page-survey .nav__burger.on span:nth-child(2){opacity:0}

body.page-gallery .nav__burger.on span:nth-child(3),body.page-index .nav__burger.on span:nth-child(3),body.page-kapcsolat .nav__burger.on span:nth-child(3),body.page-kerdoivek .nav__burger.on span:nth-child(3),body.page-szakmak .nav__burger.on span:nth-child(3),body.page-videok .nav__burger.on span:nth-child(3),body.page-erasmus .nav__burger.on span:nth-child(3),body.page-esemenyek .nav__burger.on span:nth-child(3),body.page-esemeny .nav__burger.on span:nth-child(3),body.page-survey .nav__burger.on span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* a fix navbar ne takarja a kérdőív tetejét */
body.page-survey .wrap{padding-top:7.5rem}

/* 9 menüpont ~1100px alatt már nem fér ki: burger menü */
@media (max-width:1100px){
  body.page-index .nav,body.page-hirek .nav,body.page-esemenyek .nav,body.page-esemeny .nav,body.page-gallery .nav,body.page-kapcsolat .nav,body.page-kerdoivek .nav,body.page-szakmak .nav,body.page-videok .nav,body.page-survey .nav,body.page-erasmus .nav{width:calc(100vw - 2rem);padding:.65rem .85rem .65rem 1.2rem}
  body.page-index .nav__links,
  body.page-hirek .nav__links,
  body.page-esemenyek .nav__links,
  body.page-esemeny .nav__links,
  body.page-gallery .nav__links,
  body.page-kapcsolat .nav__links,
  body.page-kerdoivek .nav__links,
  body.page-szakmak .nav__links,
  body.page-videok .nav__links,
  body.page-survey .nav__links,body.page-erasmus .nav__links{position:absolute;top:calc(100% + 10px);left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;padding:.4rem 0;border-radius:22px;background:rgba(10,14,26,.97)}
  
  body.page-index .nav__links a,
  body.page-hirek .nav__links a,
  body.page-esemenyek .nav__links a,
  body.page-esemeny .nav__links a,
  body.page-gallery .nav__links a,
  body.page-kapcsolat .nav__links a,
  body.page-kerdoivek .nav__links a,
  body.page-szakmak .nav__links a,
  body.page-videok .nav__links a,
  body.page-survey .nav__links a,body.page-erasmus .nav__links a{padding:.95rem 1.4rem;font-size:.85rem}
  
}

/* MOBIL RÁCS-FIX: 360px alatt a minmax(320px,1fr) kártyarácsok ne csorduljanak ki */
@media (max-width:360px){
  body.page-kerdoivek .qlist,body.page-esemenyek .events-grid,body.page-videok .videos{grid-template-columns:1fr}
}

/* ============================================================
   SZAKMÁK LIGHTBOX — a képtár mintájára: sötét háttér, és 3 kártya
   egymás mellett (előző · aktuális · következő), az aktuális nagy.
   ============================================================ */
body.page-gallery.lightbox-open,body.page-kapcsolat.cverify-open,body.page-szakmak.modal-open{overflow:hidden}

body.page-szakmak .sz-modal{position:fixed;inset:0;z-index:220;display:none;align-items:center;justify-content:center;padding:2rem 1rem}

body.page-szakmak .sz-modal__bg{position:absolute;inset:0;background:rgba(5,7,15,.94);backdrop-filter:blur(8px)}

body.page-szakmak .sz-modal__panel{
  position:relative;
  z-index:1;
  width:min(1120px,100%);
  max-height:92vh;
  overflow:auto;
  display:flex;
  flex-direction:column;
  gap:1.4rem;
  padding:2.2rem 2rem;
  border:1px solid rgba(140,160,255,.35);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(12,16,30,.96),rgba(7,10,20,.98));
  box-shadow:0 0 70px rgba(53,255,160,.12),0 30px 80px rgba(0,0,0,.6);
}

body.page-szakmak .sz-modal__close{align-self:flex-end;font-family:var(--font-m);font-size:.68rem;letter-spacing:.24em;color:var(--muted);border:1px solid var(--line);background:none;padding:.5rem 1.2rem;cursor:pointer;transition:.3s;text-transform:uppercase}

body.page-gallery .lightbox__close:hover,body.page-szakmak .sz-modal__close:hover{color:#04040a;background:var(--green);border-color:var(--green)}

/* A 3 kártya: fix 3 oszlop asztalon, középen az aktuális nagyobb. */
body.page-szakmak .sz-modal__track{display:grid;grid-template-columns:1fr 1.3fr 1fr;gap:1.2rem;align-items:stretch}

body.page-szakmak .sz-mcard{position:relative;min-width:0}

body.page-szakmak .sz-mcard .prog{height:100%}

body.page-szakmak .sz-mcard--side{cursor:pointer;opacity:.62;transition:opacity .25s ease,transform .25s ease}

body.page-szakmak .sz-mcard--side:hover{opacity:1;transform:translateY(-3px)}

body.page-szakmak .sz-mcard--side .prog{filter:saturate(.7)}

body.page-szakmak .sz-mcard--side:hover .prog{filter:none}

body.page-szakmak .sz-mcard--main .prog{border-color:rgba(53,255,160,.5)}

body.page-szakmak .sz-mcard__hint{display:block;font-family:var(--font-m);font-size:.6rem;letter-spacing:.2em;color:var(--muted);text-align:center;margin-bottom:.5rem;padding:.3rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}

body.page-szakmak .sz-mcard--next .sz-mcard__hint{border-top:none;border-bottom:1px solid var(--line)}

body.page-szakmak .sz-modal__body{border:1px solid var(--line);border-radius:12px;padding:1.8rem 1.9rem;background:rgba(53,255,160,.03)}

body.page-szakmak .prog__detail h3,body.page-szakmak .sz-mbody__title{font-family:var(--font-d);font-size:1.5rem;font-weight:600;margin:0 0 1rem}

body.page-szakmak .sz-mbody__none{color:var(--muted);font-family:var(--font-m);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;margin:0}

body.page-szakmak .sz-modal__body .rich{color:#c9d2ee;line-height:1.8;max-width:80ch}

body.page-szakmak .prog__detail .rich b,body.page-szakmak .sz-modal__body .rich b{color:#fff}

body.page-szakmak .prog__detail .rich ul,body.page-szakmak .sz-modal__body .rich ul{margin:.5rem 0 1.1rem;padding-left:1.2rem}

body.page-szakmak .prog__detail .rich li,body.page-szakmak .sz-modal__body .rich li{margin:.35rem 0}

body.page-szakmak .sz-modal__body .prog__detailCta{margin-top:1.6rem;display:flex;gap:1rem;flex-wrap:wrap}

body.page-szakmak .sz-modal__body .prog__detailCta a{text-decoration:none}

/* Tablet: 2 kártya (aktuális + következő), mobilon csak az aktuális. */
@media(max-width:900px){
  body.page-szakmak .sz-modal__panel{padding:1.5rem 1.1rem}
  body.page-szakmak .sz-modal__track{grid-template-columns:1fr 1fr}
  body.page-szakmak .sz-mcard--prev{display:none}
}
@media(max-width:600px){
body.page-szakmak .sz-modal__track{grid-template-columns:1fr}
body.page-szakmak .sz-mcard--next{display:none}
body.page-szakmak .prog__title,body.page-szakmak .sz-mbody__title{font-size:1.2rem}
}

/* ===========================================================
   ISKOLAI LOGÓ + A SZAKMA-POPUP (v42)
   -----------------------------------------------------------
   A navigációban a korábbi zöld pont helyére az ISKOLAI LOGÓ
   került (fehér korongon, hogy a sötét háttéren is olvasható
   legyen). A korong a ::before, ezért minden oldalon ugyanaz.
   A szakma-részletek POPUPJA alatt NEM látszik a navbar: a modal
   a nav fölé kerül (z-index), megnyitáskor a nav el is tűnik —
   a navbar csak a szakmák főoldalon kell, a popupban nem.
   =========================================================== */
body.page-index .nav__logo::before,
body.page-hirek .nav__logo::before,
body.page-gallery .nav__logo::before,
body.page-kapcsolat .nav__logo::before,
body.page-kerdoivek .nav__logo::before,
body.page-szakmak .nav__logo::before,
body.page-videok .nav__logo::before,
body.page-esemenyek .nav__logo::before,
body.page-esemeny .nav__logo::before,
body.page-survey .nav__logo::before,body.page-erasmus .nav__logo::before{content:"";width:38px;height:38px;flex:0 0 auto;margin-right:.65rem;border-radius:50%;background:#fff url(/images/logo-inczedy-mark.svg) center / 100% no-repeat;box-shadow:0 0 0 1px rgba(255, 255, 255, .7), 0 0 16px rgba(53, 255, 160, .35)}
@media(max-width: 700px){
body.page-index .nav__logo::before , body.page-hirek .nav__logo::before , body.page-gallery .nav__logo::before , body.page-kapcsolat .nav__logo::before , body.page-kerdoivek .nav__logo::before , body.page-szakmak .nav__logo::before , body.page-videok .nav__logo::before , body.page-esemenyek .nav__logo::before , body.page-esemeny .nav__logo::before , body.page-survey .nav__logo::before,body.page-erasmus .nav__logo::before{width:30px;height:30px;margin-right:.5rem}
}

/* A szakma-popup alatt a navbar eltűnik (nem lóg be a modal fölé) */
body.page-szakmak .nav{transition:opacity .18s ease, visibility .18s}

body.page-szakmak.modal-open .nav{opacity:0;visibility:hidden;pointer-events:none}

/* A modal a navbar (z-index:1000) FÖLÉ kerül, hogy semmi ne lógjon be */
body.page-szakmak .sz-modal{z-index:2000}

/* Billentyűzettel navigálóknak látható fókuszjelzés a popupban */

/* ============================================================
   ÉRDEKLŐDÉS ŰRLAP (modal) — a szakmák oldal CTA-ja ma már
   „ÉRDEKLŐDÉS”: nagyobb, olvashatóbb gombok + modal-űr-
   lap névvel, e-maillel, telefonnal (mindhárom KÖTELEZŐ),
   amit a szerver az interest_requests táblába ment és e-mailben
   jelez a címzettnek. Lásd: src/routes/misc.js → /api/public/interest
   ============================================================ */
/* Nagyobb, olvashatóbb feliratú CTA-gombok a sárgában (a .btn alap a
   nav CTA-jával azonos volt — itt szándékosan hangsúlyosabb). */
body.page-szakmak .prog__ctaBtns .btn{font-size:1.02rem;padding:1.05rem 2.3rem;letter-spacing:.05em;text-transform:uppercase;font-weight:600;cursor:pointer}

/* Az „Érdeklődés”-gomb, amit a szakma-popup alján kapunk (button, nem a) */
body.page-szakmak .prog__ctaInterest{font-size:.8rem;text-transform:uppercase;cursor:pointer}

body.page-szakmak .sz-imodal{position:fixed;inset:0;z-index:2100;display:none;align-items:center;justify-content:center;padding:2rem 1rem}

body.page-gallery .lightbox.open,body.page-szakmak .sz-modal.open,body.page-szakmak .sz-imodal.open{display:flex}

body.page-szakmak .sz-imodal__bg{position:absolute;inset:0;background:rgba(5, 7, 15, .93);backdrop-filter:blur(8px)}

body.page-szakmak .sz-imodal__panel{
  position:relative;
  z-index:1;
  width:min(560px, 100%);
  max-height:92vh;
  overflow:auto;
  display:flex;
  flex-direction:column;
  gap:.2rem;
  padding:2.2rem 2rem;
  border:1px solid rgba(140, 160, 255, .35);
  border-radius:18px;
  background:linear-gradient(160deg, rgba(16, 22, 42, .97), rgba(8, 11, 24, .98));
  box-shadow:0 0 70px rgba(53, 255, 160, .12), 0 30px 80px rgba(0, 0, 0, .6);
}

body.page-szakmak .sz-imodal .sz-modal__close{flex:none;margin-bottom:.6rem}

body.page-szakmak .sz-imodal__title{margin:0 0 .5rem;font-size:1.35rem;color:var(--ink)}

body.page-szakmak .sz-imodal__lede{margin:0 0 1.2rem;color:var(--muted);font-size:.92rem;line-height:1.6}

/* ---------- mezők ---------- */
body.page-szakmak .sz-ifield{display:block;margin:0 0 1rem}

body.page-szakmak .sz-ifield>span{display:block;font-family:var(--font-m);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:.4rem}

body.page-szakmak .sz-ifield input,body.page-szakmak .sz-ifield select,body.page-szakmak .sz-ifield textarea{
  width:100%;
  box-sizing:border-box;
  padding:.85rem 1rem;
  border-radius:10px;
  border:1px solid var(--line);
  background:rgba(255, 255, 255, .045);
  color:var(--ink);
  font:inherit;
  font-size:.98rem;
  transition:border-color .2s, box-shadow .2s;
}

/* a select legördülője a böngésző saját (világos) hátterű — az opciók sötét szöveggel kánoniak */
body.page-szakmak .sz-ifield select option{color:#101423}

body.page-szakmak .sz-ifield input:focus,body.page-szakmak .sz-ifield select:focus,body.page-szakmak .sz-ifield textarea:focus{outline:none;border-color:var(--green);box-shadow:0 0 0 3px rgba(53, 255, 160, .15)}

body.page-szakmak .sz-ifield.invalid input{border-color:#ff6b6b;box-shadow:0 0 0 3px rgba(255, 107, 107, .12)}

body.page-szakmak .sz-ierr{display:block;min-height:1.1em;margin:.35rem 0 0;font-style:normal;font-size:.8rem;color:#ff8a8a}

body.page-szakmak .sz-imsg{min-height:1.3em;margin:.2rem 0 .8rem;font-size:.85rem;color:#ff8a8a;text-align:center}

/* csapdamező (honeypot): botok kitöltik, ember nem látja és nem tab-ol rá */
body.page-szakmak .sz-ihp{position:absolute !important;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none}

/* ---------- Köszönjük! panel ---------- */
body.page-szakmak .sz-iok{text-align:center;padding:1rem 0 .4rem}

body.page-szakmak .sz-iok__icon{width:64px;height:64px;margin:0 auto 1.1rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;color:#07110d;background:var(--green);box-shadow:0 0 30px rgba(53, 255, 160, .45)}

body.page-szakmak .sz-iok .btn{margin-top:1.2rem}

body.page-szakmak .sz-modal :focus-visible,body.page-szakmak .sz-imodal :focus-visible{outline:2px solid var(--green);outline-offset:3px}
@media(max-width: 640px){
body.page-szakmak .prog__ctaBtns .btn{width:100%;font-size:.96rem;padding:.95rem 1.4rem}
body.page-szakmak .sz-imodal__panel{padding:1.7rem 1.15rem}
}

/* ============================================================
   NÉZET-VÁLTÓ a szakmák oldalon: „Iskolai szakmák" ⇄ „Képzéseink"
   (felnőttképzés). Egy oldal, két programlista — a szakmák oldal
   tetején, a kártyák fölött. A sötét téma stílusrendszeréhez igazodik.
   ============================================================ */
body.page-szakmak .sz-switch{display:flex;gap:.3rem;flex-wrap:wrap;margin:0 0 1.9rem;padding:.3rem;width:max-content;max-width:100%;border:1px solid var(--line);border-radius:999px;background:rgba(11,16,32,.62)}

body.page-szakmak .sz-switch__btn{appearance:none;cursor:pointer;padding:.55rem 1.35rem;border-radius:999px;border:1px solid transparent;background:transparent;color:var(--muted);font-family:var(--font-m);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;transition:.25s}

body.page-szakmak .sz-switch__btn:hover{color:var(--ink);border-color:var(--line)}
/* a nezketvalto INAKTIV allapota is a gradienten all (transparent hatter),
   ezert a --muted itt is 4.5:1-re csokken — vilagos szin + sotet arnyek. */
body.page-szakmak .sz-switch__btn{color:#c3cbe6;text-shadow:0 1px 4px rgba(4,8,16,.9)}
/* az AKTIV gomb zöld gradienten sötét betűt kap, ott az árnyék csak rontana */
body.page-index .hero__title,body.page-index .section__title,body.page-szakmak .sz-switch__btn.is-on{text-shadow:none}

body.page-szakmak .sz-switch__btn.is-on{color:#06131a;background:linear-gradient(90deg,var(--green),#35d5ff);border-color:transparent;box-shadow:0 6px 22px rgba(53,255,160,.28)}

body.page-survey select:focus,body.page-szakmak .sz-switch__btn:focus-visible{outline:2px solid var(--green);outline-offset:2px}
@media(max-width:560px){
body.page-szakmak .sz-switch{width:100%}
/* a mobilos atirakban a szint NEM valtozik (a gradiens ott is a hatter),
   ezert a szin+arnyek reszt itt is ismetelni kell, kulonben a media query
   utani szabaly felulirna a szint — a szabály nem kulonbozott, csak a
   meret, igy a szin is bent marad. */
body.page-szakmak .sz-switch__btn{flex:1;text-align:center;padding:.5rem .7rem;font-size:.64rem;letter-spacing:.1em;color:#c3cbe6;text-shadow:0 1px 4px rgba(4,8,16,.9)}
}

/* 046: a `a{color:inherit}` link-reset (0,1,1) erősebb volt a `.btn` (0,1,0)
   szabályánál, ezért az <a class="btn"> gombok sötét szövege világos lett, és a
   világos zöld háttéren alig volt olvasható (főleg az eseményoldali
   „JELENTKEZÉSI ŰRLAP MEGNYITÁSA” gombon). A fenti két reset ezért :not(.btn)-nel
   zárja ki a gombokat — a többi hivatkozás viszont változatlanul örökli a
   színt, és a gombvariánsok (.btn--ghost, .btn--danger) is a saját színüket
   kapják. */
/* =============================================================================
   A ADMIN PANEL STÍLUSAI INNEN ÁTKERÜLTEK: public/admin.css (2026-09-29).
   Az admin.html a style.css UTÁN tölti be az admin.css-t.
   ============================================================================= */

/* ============================================================================
   054 — MOBIL REND A KEZDŐLAPON (ÉS A NYILVÁNOS OLDALON)
   Az „KÖZELGŐ ESEMÉNYEK" sora flexben volt: dátum (min-width:110px) + cím +
   hely. 372 px szélességen ezek együtt NEM fértek be, ezért az egész oldal
   vízszintesen görgethető volt (a cím balról levágva, jobbra üres tér).
   Mobilon: a dátum saját sorra kerül, a hely a cím alá, a szövegek nem
   szorulnak össze, a címek kisebbek. Az `overflow-x:clip` csak 700 px alatt
   véd: ha egy későbbi elem mégis kicsúszna, ne lehessen azzal görgetni.
   ============================================================================ */
@media(max-width:700px){
html,body{overflow-x:clip}
body :where(p,td,th,li,code,label,figcaption){overflow-wrap:anywhere}
body.page-index .events__item{flex-direction:column;align-items:flex-start;gap:.1rem;padding:1rem .2rem}
body.page-index .events__item:hover{padding-left:.2rem}
body.page-index .events__date{min-width:0;font-size:.66rem;letter-spacing:.1em}
body.page-index .events__title{font-size:1rem;line-height:1.35;min-width:0}
body.page-index .events__loc{margin-left:0;font-size:.72rem;line-height:1.5;min-width:0}
body.page-index .events__newsdot{margin-left:.15rem}
body.page-index .hero__title{font-size:clamp(1.8rem,8.4vw,2.8rem);white-space:normal;margin-top:3rem;margin-bottom:1.2rem}
body.page-index .section__title{font-size:clamp(1.5rem,7vw,2.4rem)}
body.page-index .hero__sub{font-size:.68rem;letter-spacing:.14em;padding:.55rem 1rem}
body.page-index .hero__cta{gap:.6rem}
body.page-index .hero__cta .btn{width:100%;max-width:22rem;justify-content:center}
body.page-index .events{margin-top:1.6rem}
}
@media(max-width:420px){
body.page-index .hero__badge{font-size:.72rem;letter-spacing:.1em;padding:.55rem 1rem}
body.page-index .hero__title{font-size:1.9rem}
}

/* ============================================================
   NAV — 8 menüpont (a 8. az „Erasmus+") a lebegő pirulában
   ------------------------------------------------------------
/* ============================================================
   ERASMUS+ OLDAL — SÖTÉT TÉMA + a navigáció a KÖZÖS stílushoz
   ------------------------------------------------------------
   A `body.page-erasmus` oldalnak eddig NEM volt sötét alapja és nem
   volt benne a `shared.js` navPages listájában sem. Ezért:
     - a törzsszöveg fehér volt egy világos (aurora-) háttéren → olvashatatlan,
     - a navigáció a régi, erasmus-specifikus „sticky" szabályokat kapta
       a lebegő pirula helyett (és két „Jelentkezés" gombot mutatott).
   Itt a sötét téma-változók és a `background` (mint a többi oldalon),
   a pirulát pedig a `shared.js` adja (a navPages lista javítva).
   ============================================================ */
body.page-erasmus{
  --bg:#070a14; --bg2:#0b1020; --ink:#eef1ff; --muted:#8a93b8;
  --line:rgba(140,160,255,.16); --green:#35ffa0; --blue:#5b6bff; --violet:#9d6bff; --cyan:#35d5ff;
  --font-d:'Unbounded',sans-serif; --font-b:'Sora',sans-serif; --font-m:'JetBrains Mono',monospace;
  background:var(--bg); color:var(--ink); font-family:var(--font-b);
  overflow-x:hidden; -webkit-font-smoothing:antialiased; position:relative;
}
body.page-erasmus::after{
  content:""; position:fixed; inset:0; z-index:-3; pointer-events:none;
  background:radial-gradient(700px 500px at 15% 5%,rgba(95,111,224,.12),transparent 70%),
             radial-gradient(600px 450px at 85% 22%,rgba(122,111,214,.10),transparent 70%),
             radial-gradient(800px 550px at 50% 110%,rgba(53,224,172,.10),transparent 70%);
}
/* A navigációhoz NINCS erasmus-specifikus szabály: az oldal ugyanazokba a
   közös, többoldalas szabálylistákba van beírva, mint a többi publikus oldal
   (position:fixed, szélesség, link-méretek, mobil menü), a pirulát pedig a
   `shared.js` adja. Így az /erasmus kezelése pontosan ugyanaz, mint a
   /hirek vagy a /szakmák oldalé — nincs külön kivétel, ami elcsúszhat. */

/* ============================================================
   NAV — 8 menüpont (a 8. az „Erasmus+") a lebegő pirulában
   ------------------------------------------------------------
   A menübeli CTA (`.nav__cta--menu`) kezelését NEM itt, hanem a
   `shared.js` végzi helyesen: desktopon (≥1101 px) elrejti, mobilon
   (≤1100 px) megjeleníti, és a fejlécbeli CTA-t mobilon elrejti.
   Ez NAGYON fontos: ha ez a lista (navPages) hiányzik egy oldalról,
   a fejléc két „JELENTKEZÉS" gombot mutat (a /szakmak és az
   /erasmus pont ezért került bele).
   Az alábbi csak a 8. menüpont miatti szélesség-kezelés.
   ============================================================ */
@media (min-width: 901px) and (max-width: 1300px){
  html body .nav.nav{gap:.4rem;padding:.75rem .9rem .75rem 1.1rem}
  html body .nav .nav__logo{font-size:clamp(1rem,1.35vw,1.3rem)}
  html body .nav .nav__links{gap:.3rem;padding:.4rem .5rem}
  html body .nav .nav__links a{font-size:clamp(.6rem,.95vw,.72rem);letter-spacing:.04em;padding:.45rem .35rem}
  html body .nav .nav__cta{font-size:.64rem;letter-spacing:.1em;padding:.5rem .75rem}
}
@media (min-width: 901px){
  html body .nav.nav{max-width:96vw}
  html body .nav .nav__links{min-width:0}
}
/* A shared.js ≤1100 px-től lenyíló menüt ad, a style.css viszont csak
   ≤900 px-ig mutatja a hamburgert → 901–1100 px között a menü nyithatatlan
   volt. Itt a burger megjelenik, így a 8 menüpont ezen a sávon is elérhető. */
@media (min-width: 901px) and (max-width: 1100px){
  html body .nav .nav__burger{display:flex}
}

/* ==================== MOBIL NAV JAVÍTÁS ====================
   1) HAMBURGER MINDIG MEGJELENIK ≤1100 px-en.
      Korábban a `body.page-igazolas` egyetlen `.nav__burger` szabályban sem
      szerepelt, így ott a fő szelektor `display:none`-ja maradt érvényben —
      mobilon nem volt menü. Itt egy magasabb specificitású (0,2,2) szabály
      felülírja az összes `display:none`-t, és utolsó a forrásban.
   2) A LENYÍLÓ MENÜNEK VAN MAGASSÁGKORLÁTJA.
      8 menüpont + a „Jelentkezés" gomb ~446 px magas. A nav tetejéről
      (~78 px) indul, így ~527 px-ig érne — kis telefonon és fekvő
      állapotban a látható magasság kisebb, így az utolsó pontokhoz nem
      lehetett leérni. A `max-height` + `overflow-y:auto` megoldja.
      A `dvh` a mobil böngésző sávját is figyelembe veszi; a `vh` a
      régebbi böngészők visszaesése. */
@media (max-width:1100px){
  body.page-index .nav__links.open,body.page-hirek .nav__links.open,body.page-esemenyek .nav__links.open,body.page-esemeny .nav__links.open,body.page-gallery .nav__links.open,body.page-kapcsolat .nav__links.open,body.page-kerdoivek .nav__links.open,body.page-szakmak .nav__links.open,body.page-videok .nav__links.open,body.page-survey .nav__links.open,body.page-erasmus .nav__links.open,body.page-index .nav__burger,body.page-hirek .nav__burger,body.page-esemenyek .nav__burger,body.page-esemeny .nav__burger,body.page-gallery .nav__burger,body.page-kapcsolat .nav__burger,body.page-kerdoivek .nav__burger,body.page-szakmak .nav__burger,body.page-videok .nav__burger,body.page-survey .nav__burger,body.page-erasmus .nav__burger,html body .nav .nav__burger{display:flex}
  html body .nav .nav__links{
    max-height:calc(100vh - 6rem);
    max-height:calc(100dvh - 6rem);
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior:contain;
  }
}

