/* ═══════════════════════════════════════════════════════════════════════
   lanmen.hu — stíluslap

   ARCULAT: az alábbi néhány változót írd át, és az egész oldal
   átszíneződik. Máshol nincs beégetett szín.

   A paletta a régi lanmen.hu-ból jön (Business Pro téma):
   márkacián #04C9ED, sötét #141E28, papír #F6F7F8.
   A változónevek az alap-CMS-ből maradtak (--teal = a márkaszín).
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Saját szerverről kiszolgált betűk (Google Fonts helyett) ──────────
   Hind 400/600 + Montserrat 600, latin és latin-ext (ő/ű!) részhalmaz.
   Nincs külső kérés, nincs CSP-kivétel, nincs GDPR-kérdés.              */
@font-face{font-family:"Hind";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/hind-400-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:"Hind";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/hind-400-latin.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Hind";font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/hind-600-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:"Hind";font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/hind-600-latin.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/montserrat-600-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/montserrat-600-latin.woff2) format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}


:root{
  /* ── Paletta ────────────────────────────────────────────────────────
     A MÁRKASZÍNEKET A LOGÓ ADJA. Pontosan három szín van benne:
         #04C8ED cián · #CA090D piros · #000000 fekete
     Ezekre épül minden. A cél letisztult, világos felület: nagy fehér
     és halvány pasztell felületek, EGY erős kiemelőszín kis adagokban.

     Kontraszt: az élénk cián fehér szöveggel csak 2:1 — ezért az csak
     DEKORÁCIÓ (ikon, vonal, sötét háttéren felirat). Ahol fehér szöveg
     kerül rá (gomb, link), ott a mélyebb --link (4,8:1) megy.            */
  --cian:       #04c8ed;   /* MÁRKA — ikon, vonal, hangsúly              */
  --piros:      #ca090d;   /* MÁRKA — apró, pontos kiemelés              */
  --teal:       var(--cian);          /* régi név, hogy ne törjön semmi  */
  --teal-dark:  #0a7080;   /* hover                                      */
  --teal-soft:  #eaf7fb;   /* pasztell cián — kártya, kiemelő sáv        */
  --teal-mist:  #f5fbfd;   /* még halványabb — váltakozó sáv háttere     */
  --piros-soft: #fdeff0;   /* pasztell piros — ritka, figyelemfelhívó    */
  --ink:        #16212c;   /* lágyított fekete — fejléc, lábléc, címsor  */
  --ink-2:      #22303d;
  --orange:     #e8780a;
  --green:      #93c131;
  --link:       #0a7d94;   /* olvasható cián — link, gomb (4,8:1)        */

  --paper:      #ffffff;
  --paper-2:    #f5fbfd;   /* a világos sávok háttere (pasztell cián)    */
  --text:       #3c4752;   /* törzsszöveg — lágyabb, mint a címsor       */
  --muted:      #6e7a86;
  --line:       #e4eaee;
  --line-soft:  #f0f4f7;
  --foot:       #16212c;
  --teal-light: #2bd4f0;

  /* ── Árnyékok — halványak, hogy ne nehezítsék el a felületet ──────── */
  --arny:    0 .6rem 1.4rem -.9rem rgba(22,33,44,.16);
  --arny-be: 0 1.4rem 2rem -1.2rem rgba(22,33,44,.22);

  /* ── Tipográfia — a régi oldal betűi: Montserrat 600 + Hind 400 ───── */
  --serif: "Hind", "Segoe UI", system-ui, -apple-system, sans-serif;
  --sans:  "Hind", "Segoe UI", system-ui, -apple-system, sans-serif;
  --head:  "Montserrat", "Segoe UI", system-ui, -apple-system, sans-serif;
  --mono:  "JetBrains Mono", "Consolas", ui-monospace, monospace;

  /* ── Ritmus ───────────────────────────────────────────────────────── */
  --wrap: 1240px;
  --gap: 1.5rem;
  --radius: 6px;         /* enyhe lekerekítés — lágyabb, mai felület     */
}

/* A címsorok és a gombok Montserrattal, ahogy a régi oldalon. */
h1,h2,h3,h4,h5,h6,
.btn,.button,.gomb,
.nav a,.menu a{
  font-family:var(--head);
  font-weight:600;
}

*,*::before,*::after{box-sizing:border-box}

html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{animation-duration:.01ms!important;transition-duration:.01ms!important}
}

body{
  margin:0;
  font-family:var(--sans);
  font-size:17px;
  line-height:1.65;
  color:var(--text);
  background:var(--paper);
  -webkit-font-smoothing:antialiased;
}

.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:1.25rem}
.narrow{max-width:760px}
.pad{padding-block:3rem}

img{max-width:100%;height:auto;display:block}

a{color:var(--link);text-decoration-thickness:1px;text-underline-offset:2px}
a:hover{color:var(--ink)}

:focus-visible{outline:3px solid var(--teal);outline-offset:2px}

.visually-hidden{
  position:absolute;width:1px;height:1px;margin:-1px;padding:0;
  overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;
}

.skip{
  position:absolute;left:-9999px;top:0;z-index:100;
  background:var(--ink);color:#fff;padding:.7rem 1.1rem;
}
.skip:focus{left:0;color:#fff}

/* ══ Fejléc — sötét, ahogy a régi lanmen.hu-n ════════════════════════ */
/* A fejlec rogzitett; a foolalon atlatszo a hero-video folott, es
   gorgetesre (head--gorgetve, main.js) valik tomorre — mint a regi oldal
   .site-header.fixed.shrink viselkedese. A --head-h erteket a main.js
   frissiti a tenyleges magassagbol. */
:root{--head-h:66px}
body{padding-top:var(--head-h)}
body.is-home{padding-top:0}
.head{
  position:fixed;top:0;left:0;right:0;z-index:60;
  background:var(--ink);
  transition:background-color .75s cubic-bezier(0,1,.5,1),box-shadow .3s ease;
}
body.is-home .head{background:linear-gradient(180deg,rgba(20,30,40,.55),rgba(20,30,40,0))}
body.is-home .head.head--gorgetve{background:var(--ink)}
.head--gorgetve{box-shadow:0 4px 18px rgba(0,0,0,.28)}
.head:has(.nav.is-open){max-height:100dvh;overflow-y:auto;background:var(--ink)}
.head__in{
  display:flex;align-items:center;gap:2rem;
  padding-block:.7rem;
}
.head__fb{
  order:4;display:inline-flex;align-items:center;margin-left:.5rem;
  color:#fff;opacity:.85;transition:opacity .2s,color .2s;
}
.head__fb:hover,.head__fb:focus-visible{opacity:1;color:var(--teal)}

.brand{display:flex;align-items:center;text-decoration:none;flex:0 0 auto}
.brand__logo{
  display:block;width:auto;height:38px;
  /* a logó 239×51 px-en jelenik meg — cseréld a sajátodra az assets/img alatt */
  max-width:100%;
}

.burger{
  display:none;align-items:center;gap:.5rem;margin-left:auto;
  background:none;border:1px solid var(--line);border-radius:var(--radius);
  padding:.5rem .8rem;font:inherit;font-size:.9rem;color:var(--ink);cursor:pointer;
}
.burger__bars{position:relative;width:18px;height:2px;background:var(--ink);display:block}
.burger__bars::before,.burger__bars::after{
  content:"";position:absolute;left:0;width:18px;height:2px;background:var(--ink);
}
.burger__bars::before{top:-6px}
.burger__bars::after{top:6px}

/* ══ Főmenü — verzálos, teal aláhúzással ═════════════════════════════ */
.nav{flex:1}
.nav__list{display:flex;align-items:center;list-style:none;margin:0;padding:0;gap:1.1rem}
.nav__item{position:relative;display:flex;align-items:center}
.nav__item>a{
  /* 5px 8px — a regi oldal .menu-item a span belso margoja: a keret
     szorosan a szoveg korul fut */
  display:block;padding:5px 8px;position:relative;
  color:#fff;text-decoration:none;
  font-size:.82rem;font-weight:600;letter-spacing:.045em;text-transform:uppercase;
  white-space:nowrap;transition:color .25s;
}
.nav__item>a:hover{color:#fff}
.nav__item.is-active>a{color:var(--teal)}

/* ── „Körbetekeredő” keret hoverre — a régi lanmen.hu menüjéből ──────
   Két pszeudo-elem, mindkettő 0×0-ról indul. A ::before a bal felső
   sarokból jobbra, majd lefelé nő (felső + jobb él); a ::after a jobb
   alsó sarokból balra, majd felfelé (alsó + bal él). Négy lépés,
   0,25 s-onként — a keret látszólag körberajzolódik.                   */
.nav__item>a::before,
.nav__item>a::after{
  content:"";position:absolute;width:0;height:0;
  border:1px solid transparent;box-sizing:inherit;pointer-events:none;
}
.nav__item>a::before{top:0;left:0}
.nav__item>a::after{bottom:0;right:0}
.nav__item>a:hover::before,.nav__item>a:hover::after,
.nav__item>a:focus-visible::before,.nav__item>a:focus-visible::after{
  width:100%;height:100%;
}
.nav__item>a:hover::before,.nav__item>a:focus-visible::before{
  border-top-color:#fff;border-right-color:#fff;
  transition:width .25s ease-out,height .25s ease-out .25s;
}
.nav__item>a:hover::after,.nav__item>a:focus-visible::after{
  border-bottom-color:#fff;border-left-color:#fff;
  transition:border-color 0s ease-out .5s,width .25s ease-out .5s,height .25s ease-out .75s;
}
@media (prefers-reduced-motion:reduce){
  .nav__item>a::before,.nav__item>a::after{transition:none}
}

.nav__caret{
  display:inline-block;margin-left:.3rem;font-size:.7em;vertical-align:middle;
  transition:transform .15s;
}
.nav__item.has-sub:hover .nav__caret{transform:rotate(180deg)}
.nav__toggle{display:none}

.sub{
  position:absolute;top:100%;left:0;z-index:40;min-width:305px;
  list-style:none;margin:0;padding:0;
  background:var(--paper);
  border:1px solid var(--line);
  box-shadow:0 12px 30px rgba(4,54,76,.14);
  opacity:0;visibility:hidden;
  /* fentről kihajtó legördülés (clip-path nélkül, hogy a 3. szint ne vágódjon le) */
  transform:translateY(-8px) scaleY(.82);transform-origin:top center;
  transition:opacity .18s ease,transform .26s cubic-bezier(.25,.8,.35,1),visibility .26s;
}
.nav__item.has-sub:hover>.sub,
.nav__item.has-sub:focus-within>.sub{opacity:1;visibility:visible;transform:none}

.sub__item{position:relative;border-bottom:1px solid var(--line-soft)}
.sub__item:last-child{border-bottom:0}

.sub__item>a{
  display:block;padding:.85rem 2.2rem .85rem 1.4rem;
  font-size:.93rem;color:var(--ink);text-decoration:none;
  position:relative;
}
.sub__item>a:hover{background:var(--teal-soft);color:var(--teal)}

/* aktív almenüpont: teal szöveg és egy kis háromszög elé */
.sub__item.is-active>a{color:var(--teal)}
.sub__item.is-active>a::before{
  content:"\25B8";position:absolute;left:.65rem;color:var(--teal);
}

/* almenüs elem: jobbra mutató nyíl */
.sub__item.has-sub>.sub__toggle{
  position:absolute;top:0;right:0;height:100%;
  display:grid;place-items:center;width:2.2rem;
  background:none;border:0;padding:0;pointer-events:none;
  font-size:1.15rem;line-height:1;color:var(--ink);
}
.sub__item.has-sub:hover>.sub__toggle{color:var(--teal)}

/* harmadik szint — jobbra nyílik ki, balról hajt elő */
.sub--deep{
  top:-1px;left:100%;min-width:270px;border-left:2px solid var(--teal);
  transform:translateX(-10px) scaleX(.9);transform-origin:left top;
}
.sub__item.has-sub:hover>.sub--deep,
.sub__item.has-sub:focus-within>.sub--deep{opacity:1;visibility:visible;transform:none}

/* ══ Kereső a menüsorban ═════════════════════════════════════════════ */
.search{position:relative;margin-left:auto;display:flex;align-items:center}
.search__btn{
  background:none;border:0;padding:.5rem;cursor:pointer;color:var(--ink);
  display:grid;place-items:center;
}
.search__btn:hover{color:var(--teal)}
.search__panel{
  position:absolute;top:calc(100% + .4rem);right:0;z-index:45;
  background:var(--paper);border:1px solid var(--line);border-top:3px solid var(--teal);
  box-shadow:0 10px 26px rgba(4,54,76,.16);padding:.8rem;display:none;
}
.search__panel.is-open{display:block}
.search__panel input{
  width:270px;padding:.55rem .7rem;font:inherit;font-size:.92rem;
  border:1px solid var(--line);border-radius:var(--radius);
}

/* ══ Tartalmi terület háttere ═══════════════════════════════════════ */
main{background:var(--paper-2)}
main>.hero{background:var(--ink)}

/* ══ Morzsamenü ══════════════════════════════════════════════════════ */

/* ══ Címsorok, szöveg ════════════════════════════════════════════════ */
h1,h2,h3,h4{font-family:var(--serif);color:var(--ink);line-height:1.22;letter-spacing:-.012em}
h1{font-size:clamp(1.9rem,1.3rem + 2vw,2.7rem);margin:0 0 1rem}
h2{font-size:clamp(1.35rem,1.1rem + 1vw,1.75rem);margin:2.6rem 0 .8rem}
h3{font-size:1.15rem;margin:1.9rem 0 .5rem}

.eyebrow{
  font-family:var(--mono);font-size:.75rem;font-weight:600;
  letter-spacing:.14em;text-transform:uppercase;color:var(--orange);
  margin:0 0 .5rem;
}

.lead{font-size:1.13rem;color:var(--muted);line-height:1.6;margin-bottom:2rem}

.prose p{margin:0 0 1.1rem}
.prose ul,.prose ol{margin:0 0 1.2rem;padding-left:1.4rem}
.prose li{margin-bottom:.4rem}
.prose blockquote{
  margin:1.6rem 0;padding:.2rem 0 .2rem 1.3rem;
  border-left:3px solid var(--teal);
  font-family:var(--serif);font-size:1.1rem;font-style:italic;color:var(--ink);
}
.prose blockquote cite{
  display:block;margin-top:.6rem;font:600 .85rem/1.4 var(--sans);
  font-style:normal;color:var(--muted);
}
.prose hr{border:0;border-top:1px solid var(--line);margin:2.5rem 0}

/* ══ Hero ════════════════════════════════════════════════════════════ */
.hero{
  background:var(--ink);
  color:#e8eef4;
  padding-block:clamp(3rem,2rem + 5vw,5.5rem);
  position:relative;overflow:hidden;
}
/* Aláhúzott vonalzós motívum — a főkönyvi lapok után szabadon */
.hero::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:repeating-linear-gradient(
    to bottom,transparent 0 31px,rgba(255,255,255,.05) 31px 32px);
}
.hero__in{position:relative;z-index:1;max-width:820px}
.hero h1{color:#fff;margin-bottom:1rem}
.hero .eyebrow{color:#6fd0e0}
.hero p{font-size:1.14rem;color:#c4d2e0;margin:0 0 1.6rem;max-width:62ch}

.btns{display:flex;gap:.75rem;flex-wrap:wrap;margin:0}
.btn{
  display:inline-block;padding:.72rem 1.4rem;border-radius:var(--radius);
  background:var(--teal);color:#fff;font-weight:700;font-size:.95rem;
  text-decoration:none;border:2px solid var(--teal);cursor:pointer;
}
.btn:hover{background:var(--teal-dark);border-color:var(--teal-dark);color:#fff}
.btn--ghost{background:transparent;color:inherit;border-color:currentColor}
.btn--ghost:hover{background:rgba(255,255,255,.1);color:inherit;border-color:currentColor}
.hero .btn--ghost{color:#e8eef4}
main .btn--ghost{color:var(--ink)}
main .btn--ghost:hover{background:var(--paper-2);color:var(--ink)}

/* ══ Kártyák ═════════════════════════════════════════════════════════ */
.grid{display:grid;gap:var(--gap);margin:0;padding:0;list-style:none}
.grid--3{grid-template-columns:repeat(auto-fit,minmax(255px,1fr))}
.grid--2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}

.card{
  background:var(--paper);border:1px solid var(--line);
  border-top:3px solid var(--teal);border-radius:var(--radius);
  padding:1.4rem 1.5rem;
}
.card h2,.card h3{margin:0 0 .5rem;font-size:1.08rem}
.card h2 a,.card h3 a{color:var(--ink);text-decoration:none}
.card h2 a:hover,.card h3 a:hover{color:var(--link);text-decoration:underline}
.card p{margin:0 0 .8rem;font-size:.95rem;color:var(--muted)}
.card p:last-child{margin-bottom:0}
.card a.more{font-size:.9rem;font-weight:600;text-decoration:none}
.card a.more::after{content:" →"}
.card a.more:hover{text-decoration:underline}

.band{background:var(--paper-2);border-block:1px solid var(--line-soft)}

/* ══ Tagozatkód-táblák — a szakma vizuális nyelve ════════════════════ */
.tagozat{
  display:grid;grid-template-columns:auto 1fr;gap:0 1.6rem;
  border-top:1px solid var(--line);padding:1.5rem 0;align-items:start;
}
.tagozat__kod{
  font-family:var(--mono);font-size:1.75rem;font-weight:700;
  color:var(--orange);font-variant-numeric:tabular-nums;line-height:1.1;
}
.tagozat__kod small{display:block;font-size:.62rem;letter-spacing:.14em;
  color:var(--muted);text-transform:uppercase;font-weight:600;margin-top:.2rem}
.tagozat h3{margin:0 0 .5rem;font-size:1.1rem}
.tagozat dl{display:grid;grid-template-columns:auto 1fr;gap:.3rem 1rem;margin:.6rem 0 0;font-size:.93rem}
.tagozat dt{color:var(--muted);font-weight:600}
.tagozat dd{margin:0}

/* ══ Adattábla ═══════════════════════════════════════════════════════ */
.table-wrap{overflow-x:auto;margin:1.4rem 0}
table{border-collapse:collapse;width:100%;font-size:.94rem}
th,td{border:1px solid var(--line);padding:.55rem .75rem;text-align:left;vertical-align:top}
th{background:var(--paper-2);font-weight:600;color:var(--ink)}
td.num{font-family:var(--mono);font-variant-numeric:tabular-nums;text-align:right}

/* ══ Dokumentumlista ═════════════════════════════════════════════════ */
.docs{list-style:none;margin:1.2rem 0;padding:0;border-top:1px solid var(--line)}
.docs li{border-bottom:1px solid var(--line)}
.docs a{
  display:flex;align-items:center;gap:.8rem;padding:.8rem .3rem;
  text-decoration:none;color:var(--text);
}
.docs a:hover{background:var(--teal-soft)}
.docs .ext{
  flex:0 0 auto;font-family:var(--mono);font-size:.68rem;font-weight:700;
  letter-spacing:.05em;padding:.18rem .42rem;border-radius:2px;
  background:var(--teal);color:#fff;
}

/* ══ Megjegyzésdoboz ═════════════════════════════════════════════════ */
.note{
  background:var(--teal-soft);border-left:3px solid var(--teal);
  padding:1rem 1.2rem;margin:1.5rem 0;border-radius:0 var(--radius) var(--radius) 0;
  font-size:.95rem;
}
.note p{margin:0 0 .6rem}
.note p:last-child{margin:0}
.note code{font-family:var(--mono);font-size:.86em;background:rgba(0,0,0,.06);padding:.1em .35em;border-radius:2px}

/* ══ Kontakt / űrlap ═════════════════════════════════════════════════ */
.contact-grid{display:grid;gap:2.5rem;grid-template-columns:1fr}
@media (min-width:900px){.contact-grid{grid-template-columns:1fr 1.1fr}}

.field{margin-bottom:1.1rem}
.field label{display:block;font-weight:600;font-size:.92rem;margin-bottom:.32rem;color:var(--ink)}
.field .req{color:#b3261e}
.field input,.field textarea,.field select{
  width:100%;padding:.65rem .8rem;font:inherit;font-size:.96rem;
  border:1px solid var(--line);border-radius:var(--radius);
  background:var(--paper);color:var(--text);
}
.field input:focus,.field textarea:focus{border-color:var(--link);outline-offset:1px}
.field textarea{min-height:150px;resize:vertical}
.field .hint{font-size:.83rem;color:var(--muted);margin-top:.25rem}

.check{display:flex;gap:.6rem;align-items:flex-start;font-size:.9rem;margin-bottom:1.2rem}
.check input{width:auto;margin-top:.25rem;flex:0 0 auto}

/* honeypot — képernyőolvasóknak is rejtve */
.hp{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden}

.msg{padding:.9rem 1.1rem;border-radius:var(--radius);margin-bottom:1.5rem;font-size:.95rem}
.msg--ok{background:#e7f4ec;border-left:3px solid #2e7d4f;color:#1c4a2f}
.msg--err{background:#fdeceb;border-left:3px solid #b3261e;color:#7a1a15}
.msg ul{margin:.5rem 0 0;padding-left:1.2rem}

.errs{list-style:none;padding:0;margin:0}

/* ══ Térkép ══════════════════════════════════════════════════════════ */
.map-box{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
#terkep{height:380px;width:100%;background:var(--paper-2)}
.map-ph{
  height:380px;display:grid;place-items:center;text-align:center;gap:.8rem;
  padding:1.5rem;background:var(--paper-2);
}
.map-ph p{margin:0;font-size:.9rem;color:var(--muted);max-width:44ch}

.contact-facts{list-style:none;margin:1.5rem 0 0;padding:0}
.contact-facts li{
  display:grid;grid-template-columns:120px 1fr;gap:1rem;
  padding:.6rem 0;border-bottom:1px solid var(--line-soft);font-size:.95rem;
}
.contact-facts .k{color:var(--muted);font-weight:600;font-size:.88rem}

/* ══ Lábléc ══════════════════════════════════════════════════════════ */
.foot{background:var(--foot);color:#c3c6cf;margin-top:3rem;font-size:.8rem}
.foot__top{
  display:flex;gap:2.5rem;padding-block:2.4rem 2rem;
  justify-content:space-between;align-items:flex-start;flex-wrap:wrap;
}
.foot__col--brand{min-width:250px}
.foot__name{
  font-family:var(--sans);font-size:.82rem;font-weight:700;color:#fff;
  margin:0 0 .6rem;line-height:1.3;letter-spacing:.03em;text-transform:uppercase;
}
.foot__meta{margin:0 0 .6rem;line-height:1.5;font-size:.8rem}
.foot__note{color:#7fa0ad;font-size:.74rem}
.foot__h{
  font-family:var(--mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;
  color:#4fc3d6;margin:0 0 .7rem;font-weight:600;
}
.foot ul{list-style:none;margin:0;padding:0}
.foot li{margin-bottom:.3rem}
.foot a{color:#c3c6cf;text-decoration:none;font-size:.79rem}
.foot a:hover{color:#fff;text-decoration:underline}
.foot__bottom{
  display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;
  padding-block:.85rem;border-top:1px solid #363a47;font-size:.75rem;color:#7fa0ad;
}
.foot__bottom p{margin:0}

/* ══ Mobil ═══════════════════════════════════════════════════════════ */
@media (max-width:1150px){
  .nav__item>a{padding:.55rem .6rem;font-size:.76rem;letter-spacing:.03em}
  .head__in{gap:1.2rem}
}

@media (max-width:980px){
  .utility__in{font-size:.8rem;gap:.9rem;min-height:auto;padding-block:.7rem}
  .utility__badges{margin-left:0;width:100%;order:5;justify-content:flex-start}
  .utility__links{margin-left:0}

  .head__in{flex-wrap:wrap;gap:1rem}
  .burger{display:inline-flex}

  .nav{display:none;flex-basis:100%;order:3;border-top:1px solid var(--line)}
  .nav.is-open{display:block}
  .nav__list{display:block}
  .nav__item{display:block;border-bottom:1px solid var(--line-soft);position:static}
  .nav__item>a{
    padding:.9rem .25rem;border-bottom:none;border-left:3px solid transparent;
    font-size:.85rem;
  }
  .nav__item.is-active>a{border-left-color:var(--teal);border-bottom:none}
  .nav__caret{display:none}

  .nav__item.has-sub{display:grid;grid-template-columns:1fr auto;align-items:center}
  .nav__toggle{
    display:block;background:none;border:0;padding:.9rem 1rem;
    font-size:1rem;color:var(--ink);cursor:pointer;
  }
  .nav__toggle[aria-expanded="true"]{transform:rotate(180deg)}

  .sub{
    grid-column:1/-1;position:static;opacity:1;visibility:visible;transform:none;
    transition:none;
    box-shadow:none;border:0;border-top:1px solid var(--line-soft);
    display:none;background:var(--paper-2);padding:0;min-width:0;
  }
  .nav__item.has-sub.is-open>.sub{display:block}
  .nav__item.has-sub:hover>.sub{display:none}
  .nav__item.has-sub.is-open:hover>.sub{display:block}

  .sub__item{border-bottom:1px solid var(--line-soft)}
  .sub__item>a{padding:.7rem .25rem .7rem 1.4rem}
  .sub__item.is-active>a::before{left:.5rem}

  /* harmadik szint mobilon: lenyíló, nem oldalra */
  .sub__item.has-sub{display:grid;grid-template-columns:1fr auto;align-items:center}
  .sub__item.has-sub>.sub__toggle{
    position:static;height:auto;width:auto;padding:.7rem 1rem;
    pointer-events:auto;cursor:pointer;transform:rotate(90deg);
  }
  .sub__item.has-sub>.sub__toggle[aria-expanded="true"]{transform:rotate(-90deg)}
  .sub--deep{
    grid-column:1/-1;display:none;border-left:0;
    border-top:1px solid var(--line-soft);background:#eff4f6;
  }
  .sub__item.has-sub.is-open>.sub--deep{display:block}
  .sub__item.has-sub:hover>.sub--deep{display:none}
  .sub__item.has-sub.is-open:hover>.sub--deep{display:block}
  .sub--deep .sub__item>a{padding-left:2.4rem}

  .search{margin-left:0;order:2}
  .search__panel{right:auto;left:0}
  .search__panel input{width:min(70vw,270px)}

  .foot__col--brand{grid-column:span 1}
  .tagozat{grid-template-columns:1fr;gap:.8rem}
  .contact-facts li{grid-template-columns:1fr;gap:.15rem}
  .brand__logo{height:38px}
}

/* ══ Nyomtatás ═══════════════════════════════════════════════════════ */
@media print{
  .utility,.nav,.burger,.foot__top,.crumb,.map-box{display:none}
  body{font-size:12pt}
  .hero{background:none;color:#000;padding-block:1rem}
  .hero h1{color:#000}
  a{text-decoration:none;color:#000}
}

/* ══ Keresési találat kiemelése ══════════════════════════════════════ */
mark{background:#fff3bf;color:inherit;padding:.05em .15em;border-radius:2px}

/* ══════════════════════════════════════════════════════════════════════
   Főoldali kétoszlopos elrendezés — az eredeti oldal szerkezete szerint
   ══════════════════════════════════════════════════════════════════════ */
.layout{
  display:grid;gap:2rem;align-items:start;
  padding-block:2.5rem;
}
@media (min-width:1000px){
  .layout{grid-template-columns:minmax(0,1fr) 360px}
}
.layout__main{min-width:0}

/* ══ Szekciócím — teal függőleges csík + verzál ══════════════════════ */
.sec-title{
  display:flex;align-items:center;gap:.7rem;
  font-family:var(--sans);font-size:.95rem;font-weight:700;
  letter-spacing:.06em;text-transform:uppercase;color:var(--ink);
  margin:2.8rem 0 1.2rem;
}
.sec-title::before{
  content:"";flex:0 0 auto;width:4px;height:1.15em;background:var(--teal);
}
.layout__main>.sec-title:first-child{margin-top:0}

/* ══ Slider ═════════════════════════════════════════════════════════ */
.slider{margin-bottom:1rem}
.slider__track{position:relative;background:var(--paper);border:1px solid var(--line)}
.slide{display:none}
.slide.is-active{display:block}
.slide img{width:100%;height:auto}
.slide__ph{
  display:grid;place-items:center;min-height:300px;text-align:center;
  background:var(--paper-2);color:var(--muted);text-decoration:none;
  font-size:.92rem;padding:2rem;
}
.slide__ph small{color:var(--muted);opacity:.75;font-family:var(--mono);font-size:.75rem}
.slide__cap{
  margin:0;padding:.9rem 1.1rem;font-size:.95rem;
  border-top:1px solid var(--line);background:var(--paper);
}
.slide__cap a{color:var(--ink);text-decoration:none;font-weight:600}
.slide__cap a:hover{color:var(--teal);text-decoration:underline}

.slider__dots{display:flex;justify-content:center;gap:.55rem;padding:1rem 0}
.slider__dots button{
  width:11px;height:11px;padding:0;border-radius:50%;cursor:pointer;
  border:2px solid var(--teal);background:transparent;
}
.slider__dots button[aria-selected="true"]{background:var(--teal)}

/* ══ Friss híreink doboz ════════════════════════════════════════════ */
.newsbox{border:1px solid var(--line);background:var(--paper)}
.newsbox__head{
  margin:0;padding:1.15rem 1.3rem;
  background:var(--teal);color:#fff;
  font-family:var(--sans);font-size:.95rem;font-weight:700;
  letter-spacing:.06em;text-transform:uppercase;
}
.newsbox__list{list-style:none;margin:0;padding:0}
.newsbox__list li{padding:1.1rem 1.3rem;border-bottom:1px solid var(--line-soft)}
.newsbox__list li:last-child{border-bottom:0}

.newsbox__date{
  display:flex;align-items:center;gap:.45rem;
  margin:0 0 .4rem;font-size:.83rem;color:var(--teal);
}
.newsbox__date svg{flex:0 0 auto;opacity:.85}

.newsbox__title{
  margin:0;font-family:var(--sans);font-size:.9rem;font-weight:600;
  line-height:1.45;letter-spacing:.02em;text-transform:uppercase;
}
.newsbox__title a{color:var(--ink);text-decoration:none}
.newsbox__title a:hover{color:var(--teal);text-decoration:underline}

.newsbox__empty{margin:0;padding:1.3rem;color:var(--muted);font-size:.92rem}
.newsbox__more{
  margin:0;padding:1rem 1.3rem;border-top:1px solid var(--line);
  background:var(--paper-2);font-size:.88rem;font-weight:600;
}
.newsbox__more a{text-decoration:none}
.newsbox__more a:hover{text-decoration:underline}

/* ══ Hírlista (archívum) ════════════════════════════════════════════ */
.newslist{list-style:none;margin:2rem 0;padding:0}
.newslist__item{padding:1.6rem 0;border-bottom:1px solid var(--line)}
.newslist__title{
  margin:.1rem 0 .5rem;font-family:var(--serif);font-size:1.25rem;line-height:1.3;
}
.newslist__title a{color:var(--ink);text-decoration:none}
.newslist__title a:hover{color:var(--teal)}
.newslist__lead{margin:0 0 .6rem;color:var(--muted);font-size:.94rem}

.pager{
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
  flex-wrap:wrap;margin:2rem 0;font-size:.92rem;
}
.pager a{font-weight:600;text-decoration:none}
.pager a:hover{text-decoration:underline}
.pager__now{color:var(--muted)}

/* ══════════════════════════════════════════════════════════════════════
   CTA sáv + a három alsó panel — az eredeti főoldal alsó blokkja
   ══════════════════════════════════════════════════════════════════════ */
.cta-band{
  display:flex;align-items:center;justify-content:space-between;
  gap:1.5rem;flex-wrap:wrap;
  background:var(--teal-light);color:#fff;
  padding:2rem 2.4rem;margin-bottom:2.5rem;
}
.cta-band__title{
  margin:0;color:#fff;
  font-family:var(--sans);font-size:1.32rem;font-weight:600;
  letter-spacing:.03em;text-transform:uppercase;line-height:1.25;
}
.cta-band__btn{
  flex:0 0 auto;
  display:inline-block;padding:.9rem 2.2rem;
  background:#fff;color:var(--teal);text-decoration:none;
  font-size:.92rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;
}
.cta-band__btn:hover{background:var(--paper-2);color:var(--teal-dark)}

/* ══ Panelek ═════════════════════════════════════════════════════════ */
.panels{
  display:grid;gap:1.6rem;padding-bottom:3.5rem;
  grid-template-columns:repeat(auto-fit,minmax(290px,1fr));
  align-items:stretch;
}
.panel{
  display:flex;flex-direction:column;
  background:var(--paper);border:1px solid var(--line);padding:1.8rem 1.9rem;
}
/* az utolsó elem (a „tovább" link) a panel aljára kerül */
.panel>*:last-child{margin-top:auto;margin-bottom:0;padding-top:1rem}

.panel__head{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.panel__title{
  display:flex;align-items:center;gap:.7rem;margin:0 0 1.3rem;
  font-family:var(--sans);font-size:.92rem;font-weight:600;
  letter-spacing:.05em;text-transform:uppercase;color:var(--ink);
}
.panel__title::before{content:"";flex:0 0 auto;width:4px;height:1.1em;background:var(--teal)}
.panel__head .panel__title{margin-bottom:0}
.panel__head+*{margin-top:1.3rem}

.panel__nav{display:flex;gap:.2rem}
.panel__nav button{
  background:none;border:0;cursor:pointer;color:var(--ink);
  font-size:1.35rem;line-height:1;padding:.15rem .45rem;
}
.panel__nav button:hover{color:var(--teal)}

.panel__lead{
  margin:0 0 1rem;font-family:var(--sans);
  font-size:1.05rem;font-weight:400;line-height:1.4;
  letter-spacing:.02em;text-transform:uppercase;color:var(--ink);
}
.panel__text{margin:0 0 1.4rem;font-size:.93rem;color:var(--muted);line-height:1.65}

.btn--sm{padding:.6rem 1.15rem;font-size:.88rem;font-weight:600}

.panel__more{
  display:inline-block;font-size:.85rem;font-weight:700;
  letter-spacing:.05em;text-transform:uppercase;text-decoration:none;
}
.panel__more:hover{text-decoration:underline}

.panel__events{list-style:none;margin:0 0 1.3rem;padding:0}
.panel__events li{padding:.7rem 0;border-bottom:1px solid var(--line-soft)}
.panel__events li:last-child{border-bottom:0}
.panel__evtitle{margin:0;font-family:var(--sans);font-size:.92rem;font-weight:600;line-height:1.4}
.panel__evtitle a{color:var(--ink);text-decoration:none}
.panel__evtitle a:hover{color:var(--teal);text-decoration:underline}

/* ══ Kis hírléptető a panelben ═══════════════════════════════════════ */
.mini__item{display:none}
.mini__item.is-active{display:block}
.mini__item img{width:100%;height:auto;margin-bottom:1rem;border:1px solid var(--line-soft)}
.mini__ph{
  display:grid;place-items:center;height:130px;margin-bottom:1rem;
  background:var(--paper-2);color:var(--muted);font-size:.82rem;
  text-decoration:none;border:1px solid var(--line-soft);
}
.mini__title{margin:.1rem 0 .9rem;font-family:var(--serif);font-size:1.08rem;line-height:1.35}
.mini__title a{color:var(--ink);text-decoration:none}
.mini__title a:hover{color:var(--teal)}

@media (max-width:640px){
  .cta-band{padding:1.5rem 1.4rem}
  .cta-band__title{font-size:1.1rem}
  .cta-band__btn{width:100%;text-align:center}
  .panel{padding:1.4rem 1.3rem}
}

/* ══ Aláírás (köszöntő, levélszerű oldalak) ══════════════════════════ */
.signature{
  margin-top:2.2rem;padding-left:1rem;
  border-left:3px solid var(--teal);line-height:1.5;
}
.signature strong{color:var(--ink);font-size:1.02rem}
.signature span{color:var(--muted);font-size:.9rem}

/* ═══ Teljes szélességű hero-banner (az eredeti oldal mintájára) ═══════ */
.fobanner{position:relative;margin-bottom:0}
.fobanner__track{border:0;background:var(--ink)}
.fobanner__slide{
  min-height:480px;
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
  position:relative;
}
/* nincs színes overlay — a képek tisztán töltik ki a bannert;
   a szöveg olvashatóságát erős szövegárnyék adja */
.fobanner__inner{
  position:relative;z-index:1;
  min-height:480px;
  display:flex;flex-direction:column;justify-content:center;align-items:flex-start;
  padding-block:3rem;
}
.fobanner__eyebrow{
  color:#fff;letter-spacing:.18em;text-transform:uppercase;
  font-size:.8rem;font-weight:600;margin:0 0 .4rem;opacity:.95;
  text-shadow:0 1px 6px rgba(0,0,0,.55);
}
.fobanner__title{
  color:#fff;font-family:var(--sans);text-transform:uppercase;
  font-size:clamp(1.8rem,4.5vw,3.2rem);font-weight:700;line-height:1.12;
  margin:0 0 .6rem;max-width:14em;
  text-shadow:0 2px 6px rgba(0,0,0,.55),0 4px 22px rgba(0,0,0,.45);
}
.fobanner__lead{color:#fff;font-size:1.05rem;margin:0 0 1.4rem;text-shadow:0 1px 6px rgba(0,0,0,.6)}
.fobanner__btn{padding:.8rem 1.8rem;font-size:.95rem}
.fobanner__dots{
  position:absolute;left:0;right:0;bottom:.6rem;z-index:2;padding:0;
}
.fobanner__dots button{background:rgba(255,255,255,.55)}
.fobanner__dots button[aria-selected="true"]{background:var(--teal)}
@media (max-width:640px){
  .fobanner__slide,.fobanner__inner{min-height:340px}
}


/* ═══ Lekerekítések + hírblokk a hero-n (az eredeti oldal stílusa) ═════ */
.newsbox{border-radius:var(--radius);overflow:hidden}
.panel,.cta-band,.tagozat,.msg,.pager,.kereso-panel{border-radius:var(--radius)}
.prose img,.docs li{border-radius:var(--radius)}

/* A "Friss híreink" doboz felcsúszik a banner aljára, mint az eredetin */
@media (min-width:1000px){
  .fobanner + .layout--fooldal .layout__side .newsbox{
    margin-top:-210px;
    position:relative;z-index:5;
    box-shadow:0 12px 34px rgba(0,0,0,.22);
  }
}

/* Kártya-kép (a kereső-kártyákon, ha van megadva) */
.card__img{
  width:100%;height:150px;object-fit:cover;display:block;
  border-radius:var(--radius);margin:0 0 .9rem;
}

/* ═══ Munkatársaink rács ══════════════════════════════════════════════════ */
.munkatars-grid{
  display:grid;gap:1.2rem;margin-bottom:2.5rem;
  grid-template-columns:repeat(auto-fill,minmax(210px,1fr));
}
.munkatars{
  background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);
  border-top:3px solid var(--teal);padding:1rem;text-align:center;
}
.munkatars__kep{
  width:132px;height:165px;object-fit:cover;object-position:top;
  border-radius:var(--radius);margin:0 auto .8rem;display:block;
}
.munkatars__kep--nincs{
  display:flex;align-items:center;justify-content:center;
  background:var(--teal-soft);color:var(--teal);font-weight:700;font-size:1.6rem;
}
.munkatars__nev{margin:0 0 .25rem;font-size:1rem;color:var(--ink)}
.munkatars__poz{margin:0 0 .5rem;font-size:.85rem;color:var(--muted)}
.munkatars__mail{margin:0;font-size:.8rem;overflow-wrap:anywhere}
.munkatars__mail a{color:var(--link);text-decoration:none}
.munkatars__mail a:hover{text-decoration:underline}

/* ═══ Banner: finom áttűnés a slide-ok közt ═══════════════════════════ */
.fobanner .slide{
  display:block;position:absolute;inset:0;
  opacity:0;transition:opacity .9s ease;pointer-events:none;
}
.fobanner .slide.is-active{
  position:relative;opacity:1;pointer-events:auto;
}
@media (prefers-reduced-motion: reduce){
  .fobanner .slide{transition:none}
}

/* ═══ Hír-képgaléria ══════════════════════════════════════════════════ */
.hir-galeria{
  display:grid;gap:.8rem;margin:1.8rem 0;
  grid-template-columns:repeat(auto-fill,minmax(220px,1fr));
}
.hir-galeria img{
  width:100%;aspect-ratio:16/9;object-fit:cover;display:block;
  border-radius:var(--radius);border:1px solid var(--line);
  transition:transform .2s ease;
}
.hir-galeria a:hover img{transform:scale(1.03)}

/* ═══ Fontos dátumok — kis dobozok ════════════════════════════════════ */
.datum-lista{display:flex;flex-direction:column;gap:.8rem;margin-top:1.5rem}
.datum-doboz{
  background:var(--paper);border:1px solid var(--line);border-left:4px solid var(--teal);
  border-radius:var(--radius);padding:.85rem 1.1rem;
}
.datum-doboz__datum{display:block;font-size:.82rem;color:var(--muted);font-weight:600;margin-bottom:.25rem}
.datum-doboz__szoveg{margin:0;font-weight:600;color:var(--ink)}
.datum-doboz__reszlet{margin-top:.4rem;font-size:.93rem}
.datum-doboz__reszlet p{margin:.3rem 0}

/* ═══ Álláshirdetések ═════════════════════════════════════════════════ */
.allas-lista{display:flex;flex-direction:column;gap:1.2rem;margin:1.8rem 0}
.allas-cikk{
  background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);
  border-top:3px solid var(--orange);padding:1.3rem 1.5rem;
}
.allas-cikk h2{margin:0 0 .2rem;font-size:1.15rem}
.allas-cikk__datum{margin:0 0 .7rem;font-size:.82rem;color:var(--muted);font-weight:600}

/* ═══ Esemény-naptár ══════════════════════════════════════════════════ */
.naptar{margin-top:1.6rem;background:var(--paper);border:1px solid var(--line);
  border-radius:var(--radius);overflow:hidden}
.naptar__fej{display:flex;align-items:center;justify-content:space-between;
  background:var(--ink);color:#fff;padding:.6rem 1rem}
.naptar__cim{margin:0;font-size:1.05rem;color:#fff;text-transform:capitalize}
.naptar__lepteto{color:#bfe3ea;text-decoration:none;font-size:1.2rem;
  padding:.15rem .7rem;border-radius:var(--radius)}
.naptar__lepteto:hover{background:rgba(255,255,255,.15);color:#fff}
.naptar__racs{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;
  background:var(--line)}
.naptar__hetnap{background:var(--paper-2);text-align:center;font-size:.72rem;
  font-weight:700;color:var(--muted);text-transform:uppercase;padding:.45rem 0;
  letter-spacing:.06em}
.naptar__cella{background:var(--paper);min-height:74px;padding:.3rem .35rem;
  display:flex;flex-direction:column;gap:.2rem}
.naptar__cella--ures{background:var(--paper-2)}
.naptar__cella--ma{outline:2px solid var(--orange);outline-offset:-2px}
.naptar__cella--esemeny{background:var(--teal-soft)}
.naptar__szam{font-size:.78rem;font-weight:600;color:var(--muted)}
.naptar__cella--ma .naptar__szam{color:var(--orange)}
.naptar__elem{display:block;background:var(--teal);color:#fff;text-decoration:none;
  font-size:.7rem;line-height:1.25;padding:.2rem .35rem;border-radius:4px;
  overflow:hidden;text-overflow:ellipsis;display:-webkit-box;
  -webkit-line-clamp:2;-webkit-box-orient:vertical}
.naptar__elem:hover{background:var(--teal-dark);color:#fff}
@media (max-width:640px){
  .naptar__cella{min-height:52px;padding:.2rem}
  .naptar__elem{font-size:0;padding:0;width:9px;height:9px;border-radius:50%;
    -webkit-line-clamp:unset;flex:0 0 auto}
}

/* ═══ „Írj nekünk!" felhívás a Felvételizőknek oldalak alján ══════════ */
/* A tartalom szelessegeben, es paddinggel — hogy a main vilagosszurke
   hattere a doboz alatt is tovabbfusson (margin eseten kifolyna). */


/* ═══ Süti-sáv (GDPR) ═════════════════════════════════════════════════ */
.suti-sav{
  position:fixed;left:0;right:0;bottom:0;z-index:900;
  background:var(--ink);color:#dbe6ec;
  box-shadow:0 -6px 24px rgba(0,0,0,.3);
  padding:1rem 0;
}
.suti-sav__in{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}
.suti-sav__szoveg{flex:1 1 420px;font-size:.85rem;line-height:1.55}
.suti-sav__szoveg p{margin:0}
.suti-sav__szoveg a{color:#6fd0e0;text-decoration:underline}
.suti-sav__gombok{display:flex;gap:.7rem;flex-wrap:wrap}
.suti-sav__szukseges{color:#dbe6ec;border-color:#dbe6ec}
@media (max-width:640px){
  .suti-sav__in{gap:.8rem}
  .suti-sav__gombok{width:100%}
  .suti-sav__gombok .btn{flex:1;text-align:center}
}


/* ═══ Kártya-animációk (hover) ════════════════════════════════════════
   Csak kattintható dobozon: a linket tartalmazó .card-okon van kiemelés,
   a pusztán informatív dobozokon (munkatárs, dátum, állás, panel) nincs. */
.card:has(a) {
  transition: transform .22s ease, box-shadow .22s ease;
}
.card:has(a):hover {
  transform: translateY(-5px);
  box-shadow: 0 14px 30px rgba(4, 54, 76, .14);
}
@media (prefers-reduced-motion: reduce) {
  .card:has(a) { transition: none; }
  .card:has(a):hover { transform: none; }
}


/* ═══ Mozgalmasabb oldal — finom animációk ════════════════════════════ */

/* görgetésre megjelenés (a JS kapcsolja; JS nélkül minden látszik) */
.rejtett-elem{opacity:0;transform:translateY(16px);
  transition:opacity .55s ease, transform .55s ease}
.lathato-elem{opacity:1;transform:translateY(0)}

/* hero: a szöveg minden slide-váltásnál beúszik, lépcsőzetesen */
@keyframes hero-beuszas{
  from{opacity:0;transform:translateY(18px)}
  to{opacity:1;transform:translateY(0)}
}
.fobanner__slide.is-active .fobanner__eyebrow{animation:hero-beuszas .5s ease both}
.fobanner__slide.is-active .fobanner__title{animation:hero-beuszas .6s ease .12s both}
.fobanner__slide.is-active .fobanner__lead{animation:hero-beuszas .6s ease .24s both}
.fobanner__slide.is-active .fobanner__btn{animation:hero-beuszas .6s ease .36s both}

/* gombok: apró emelkedés */
.btn{transition:background .18s ease, border-color .18s ease,
     transform .18s ease, box-shadow .18s ease}
.btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(4,54,76,.22)}

/* (a főmenü régi „csúszó aláhúzás” effektje innen kikerült — a lanmen.hu
   körbetekeredő keretét a fenti .nav__item>a::before/::after adja) */

/* fejléc-árnyék görgetve */

/* hírdoboz-elemek: becsúszás hoverre — csak ha van bennük link */
.newsbox__list li:has(a){transition:transform .18s ease}
.newsbox__list li:has(a):hover{transform:translateX(4px)}
.docs li:has(a){transition:transform .18s ease}
.docs li:has(a):hover{transform:translateX(4px)}

/* naptár-chipek: kis élénkülés */
.naptar__elem{transition:transform .15s ease, background .15s ease}
.naptar__elem:hover{transform:scale(1.05)}

@media (prefers-reduced-motion: reduce){
  .rejtett-elem{opacity:1;transform:none;transition:none}
  .fobanner__slide.is-active .fobanner__eyebrow,
  .fobanner__slide.is-active .fobanner__title,
  .fobanner__slide.is-active .fobanner__lead,
  .fobanner__slide.is-active .fobanner__btn{animation:none}
  .btn, .head, .newsbox__list li, .docs li, .naptar__elem{transition:none}
  .sub{transition:none;transform:none}
  .btn:hover, .newsbox__list li:hover, .docs li:hover,
  .naptar__elem:hover{transform:none}
}

/* ═══ 404 oldal ═══════════════════════════════════════════════════════ */
.hiba404{text-align:center}
.hiba404__emoji{
  font-size:6.5rem;line-height:1;margin:1.2rem 0 .4rem;
  display:inline-block;animation:szipogas 3.2s ease-in-out infinite;
}
@keyframes szipogas{
  0%,100%{transform:rotate(-7deg) translateY(0)}
  25%{transform:rotate(0deg) translateY(-6px)}
  50%{transform:rotate(7deg) translateY(0)}
  75%{transform:rotate(0deg) translateY(-6px)}
}
@media (prefers-reduced-motion: reduce){
  .hiba404__emoji{animation:none}
}

/* ═══════════════════════════════════════════════════════════════════════
   FŐOLDAL (fp-*) — a régi lanmen.hu öt sávja
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Gomb — a régi oldal lapos, cián gombja ──────────────────────────── */
.fp-btn{
  display:inline-block;
  background:var(--teal);color:#fff;
  font-family:var(--head);font-weight:600;font-size:.95rem;
  padding:16px 32px;border-radius:var(--radius);
  text-decoration:none;border:2px solid var(--teal);
  transition:background .15s ease,border-color .15s ease;
}
.fp-btn:hover,.fp-btn:focus-visible{
  background:var(--teal-dark);border-color:var(--teal-dark);color:#fff;
}
.fp-btn--sm{padding:10px 22px;font-size:.88rem}
.fp-btn--light{
  background:#fff;color:var(--ink);border-color:#fff;
}
.fp-btn--light:hover,.fp-btn--light:focus-visible{
  background:var(--teal);border-color:var(--teal);color:#fff;
}

/* ── Szekciócím — nagybetűs, alatta rövid cián vonal ─────────────────── */
.fp-sec__title{
  font-size:1.5rem;text-transform:uppercase;letter-spacing:.02em;
  color:var(--ink);text-align:center;margin:0;
}
.fp-sec__rule{
  width:60px;height:3px;border:0;background:var(--teal);
  margin:1rem auto 1.2rem;
}
.fp-sec__lead{
  text-align:center;color:var(--muted);font-size:1.15rem;
  max-width:46rem;margin:0 auto 2.8rem;
}

/* ── 1. Hero ─────────────────────────────────────────────────────────── */
.fp-hero{
  position:relative;background:var(--ink);color:#fff;
  min-height:clamp(30rem,70vh,42rem);
  display:flex;align-items:center;overflow:hidden;
}
.fp-hero__video{
  position:absolute;inset:0;width:100%;height:100%;
  object-fit:cover;z-index:0;
}
.fp-hero__veil{
  position:absolute;inset:0;z-index:1;
  background:linear-gradient(180deg,rgba(20,30,40,.82),rgba(20,30,40,.88));
}
.fp-hero__in{position:relative;z-index:2;text-align:center;padding-block:4rem}
.fp-hero__title{
  font-size:clamp(2.1rem,5.2vw,3.4rem);line-height:1.15;
  color:#fff;margin:0 0 1.2rem;
}
.fp-hero__lead{
  max-width:52rem;margin:0 auto 2rem;
  color:rgba(255,255,255,.88);font-size:1.02rem;line-height:1.7;
}

/* A háttérvideó dekoráció — mozgásérzékenység esetén nem játszik. */
@media (prefers-reduced-motion:reduce){
  .fp-hero__video{display:none}
}

/* ── 2. Ahogyan dolgozunk ────────────────────────────────────────────── */
.fp-steps{background:var(--paper);padding-block:3.5rem}
.fp-steps__grid{
  display:grid;gap:2rem;
  grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));
  text-align:center;
}
.fp-steps__icon{color:var(--teal);margin:0 auto .9rem;display:block}
.fp-steps__title{
  font-size:1rem;text-transform:uppercase;letter-spacing:.04em;
  color:var(--ink);margin:0 0 .5rem;
}
.fp-steps__text{color:var(--muted);font-size:.95rem;margin:0}

/* ── 3. Szolgáltatás-kártyák ─────────────────────────────────────────── */
.fp-services{background:var(--paper-2);padding-block:3.5rem}
.fp-cards{
  display:grid;gap:1.75rem;
  grid-template-columns:repeat(auto-fill,minmax(19rem,1fr));
}
.fp-card{
  background:var(--paper);display:flex;flex-direction:column;
  border:1px solid var(--line-soft);
}
.fp-card__imglink{display:block}
.fp-card__img{width:100%;aspect-ratio:620/380;object-fit:cover}
.fp-card__body{padding:1.4rem;display:flex;flex-direction:column;flex:1}
.fp-card__title{
  font-size:1rem;text-transform:uppercase;line-height:1.35;
  margin:0 0 .7rem;
}
.fp-card__title a{color:var(--ink);text-decoration:none}
.fp-card__title a:hover,.fp-card__title a:focus-visible{color:var(--link)}
.fp-card__text{color:var(--muted);font-size:.95rem;margin:0 0 1.2rem;flex:1}
.fp-card .fp-btn{align-self:flex-start}

.fp-services__more,.fp-refs__more{text-align:center;margin:2.5rem 0 0}
.fp-services__more a,.fp-refs__more a{
  font-family:var(--head);font-weight:600;color:var(--link);text-decoration:none;
}
.fp-services__more a:hover,.fp-refs__more a:hover{text-decoration:underline}

/* ── 4. Sötét szlogen-sáv ────────────────────────────────────────────── */
.fp-claim{background:var(--ink);color:#fff;padding-block:4rem}
.fp-claim__in{text-align:center;max-width:44rem}
.fp-claim__text{
  font-family:var(--head);font-weight:600;
  font-size:clamp(1.2rem,2.6vw,1.65rem);line-height:1.45;
  margin:0 0 1rem;color:#fff;
}
.fp-claim__sign{color:var(--teal);font-size:1.05rem;margin:0}

/* ── 5. Referenciák ──────────────────────────────────────────────────── */
.fp-refs{background:var(--paper);padding-block:3.5rem}
/* A régi oldal receptje (.front-page-5 .listing-item): logócsempe halvány
   sötét fátyollal; hoverre −0,5 rem emelés, árnyék, a fátyol 0,82-re
   sűrűsödik és a fehér, nagybetűs Montserrat felirat úszik be középre.
   4 oszlop, 2,5641% oszlopköz, 0,75 s cubic-bezier(0,1,.5,1).            */
.fp-logos{
  list-style:none;margin:0;padding:0;
  display:grid;gap:2rem 2.5641%;grid-template-columns:repeat(4,1fr);
}
.fp-logos__item{
  position:relative;display:block;overflow:hidden;
  transform:translateY(0);box-shadow:0 0 2rem -1rem rgba(20,30,40,0);
  transition:transform .75s cubic-bezier(0,1,.5,1),box-shadow .75s cubic-bezier(0,1,.5,1);
}
.fp-logos__item img{display:block;width:100%;height:auto}
.fp-logos__item::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:rgba(20,30,40,.82);opacity:.1;
  transition:opacity .75s cubic-bezier(0,1,.5,1);
}
.fp-logos__title{
  position:absolute;inset:0;z-index:1;
  display:grid;place-items:center;padding:0 .6rem;text-align:center;
  font-family:var(--head);font-weight:600;font-size:1.15rem;line-height:1.25;
  text-transform:uppercase;color:#fff;opacity:0;
  transition:opacity .75s cubic-bezier(0,1,.5,1);
}
.fp-logos__item:hover,.fp-logos__item:focus-visible{
  transform:translateY(-.5rem);box-shadow:0 2rem 1.5rem -1rem rgba(20,30,40,.3);
}
.fp-logos__item:hover::before,.fp-logos__item:focus-visible::before,
.fp-logos__item:hover .fp-logos__title,.fp-logos__item:focus-visible .fp-logos__title{opacity:1}
@media (max-width:900px){.fp-logos{grid-template-columns:repeat(3,1fr)}}
@media (max-width:560px){.fp-logos{grid-template-columns:repeat(2,1fr);gap:1rem 4%}}

/* ── CTA sáv ─────────────────────────────────────────────────────────── */
/* (a cián CTA-sáv helyett a „Dolgozzunk együtt!” a lábléc tetején: .foot-cta) */

@media (max-width:640px){
  .fp-hero__in{padding-block:3rem}
  .fp-steps,.fp-services,.fp-refs{padding-block:2.5rem}
}

/* A sötét fejléchez: világos burger-gomb. */
.burger{color:#fff;border-color:rgba(255,255,255,.35)}
.burger__bars,
.burger__bars::before,
.burger__bars::after{background:#fff}

/* ═══ Referenciák oldal ═══════════════════════════════════════════════ */
.refs{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(22rem,1fr))}
.ref{
  display:grid;grid-template-columns:7.5rem 1fr;gap:1.1rem;
  border:1px solid var(--line-soft);background:var(--paper);padding:1.1rem;
}
.ref__logo img{width:100%;height:auto;border:1px solid var(--line-soft)}
.ref__nev{font-size:1rem;margin:0 0 .5rem;color:var(--ink)}
.ref__be{font-size:.9rem;color:var(--muted);margin:0 0 .6rem}
.ref__munkak{margin:0;padding-left:1.1rem;font-size:.88rem;color:var(--muted)}
.ref__munkak li{margin-bottom:.15rem}
.ref__link{margin:.7rem 0 0;font-size:.85rem}
.ref__link a{text-decoration:none;font-weight:600}
.ref__link a:hover{text-decoration:underline}

@media (max-width:520px){
  .ref{grid-template-columns:1fr}
  .ref__logo{max-width:11rem}
}

/* ═══ Referencia-szűrő (kategóriák) ═══════════════════════════════════ */
.katszuro{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 2rem}
.katszuro__gomb{
  display:inline-flex;align-items:center;gap:.45rem;
  padding:.5rem .95rem;
  font-family:var(--head);font-weight:600;font-size:.82rem;
  text-transform:uppercase;letter-spacing:.03em;
  color:var(--ink);text-decoration:none;
  border:1px solid var(--line);border-radius:var(--radius);
  background:var(--paper);
}
.katszuro__gomb:hover{border-color:var(--teal);color:var(--link)}
.katszuro__gomb.is-active{
  background:var(--ink);border-color:var(--ink);color:#fff;
}
.katszuro__db{
  font-size:.75rem;font-weight:600;opacity:.65;
}
.katszuro__gomb.is-active .katszuro__db{opacity:.8}

.ref__kat{margin:.8rem 0 0;display:flex;flex-wrap:wrap;gap:.35rem}
.ref__cimke{
  font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;
  padding:.2rem .5rem;border-radius:2px;
  background:var(--teal-soft);color:var(--link);text-decoration:none;
}
.ref__cimke:hover{background:var(--teal);color:#fff}

/* ═══ Lábléc-navigáció — a régi oldal „NAVIGÁCIÓ” oszlopa ═══════════ */
.foot__col--nav{min-width:200px}
.foot__desc{margin:.4rem 0 1rem;max-width:36ch;line-height:1.55;color:#a4a8ac}
.foot__list{list-style:none;margin:0;padding:0}
.foot__list li{margin:0 0 .4rem}
.foot__list a{color:#c3c6cf;text-decoration:none}
.foot__list a:hover,.foot__list a:focus-visible{color:#fff;text-decoration:underline}
.foot__list a[aria-current]{color:var(--teal)}

/* ═══ Főoldal: „Kinek, mit, miért” sáv (a régi audit 14. pontja) ═════ */
.fp-kinek{background:var(--paper);padding-block:3.5rem}
.fp-kinek__grid{
  display:grid;gap:2rem;
  grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));
  max-width:64rem;margin-inline:auto;
}
.fp-kinek__item h3{
  font-size:1rem;text-transform:uppercase;letter-spacing:.04em;
  color:var(--ink);margin:0 0 .5rem;
}
.fp-kinek__item p{margin:0;color:var(--muted);font-size:.97rem}
/* ═══════════════════════════════════════════════════════════════════════
   MOZGÁS — kis effektek (mind kikapcsol prefers-reduced-motion esetén)
   ═══════════════════════════════════════════════════════════════════════ */
@keyframes be-uszik{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

/* hero belépő: cím → bevezető → gomb, lépcsőzetesen */
.fp-hero__title,.fp-hero__lead,.fp-hero .fp-btn,
.szolg-hero h1,.szolg-hero__lead,.szolg-hero__tenyek,.szolg-hero__cta{
  animation:be-uszik .8s cubic-bezier(.2,.7,.2,1) both;
}
.fp-hero__lead,.szolg-hero__lead{animation-delay:.18s}
.fp-hero .fp-btn,.szolg-hero__tenyek{animation-delay:.34s}
.szolg-hero__cta{animation-delay:.48s}

/* görgetésre megjelenő elemek (main.js: .rejtett-elem → .lathato-elem) */
.rejtett-elem{opacity:0;transform:translateY(22px);
  transition:opacity .75s cubic-bezier(0,1,.5,1),transform .75s cubic-bezier(0,1,.5,1)}
.lathato-elem{opacity:1;transform:none}

/* kártyák: emelés + a kép lassú nagyítása */
.fp-card{overflow:hidden;
  transition:transform .75s cubic-bezier(0,1,.5,1),box-shadow .75s cubic-bezier(0,1,.5,1)}
.fp-card:hover{transform:translateY(-.5rem);box-shadow:0 2rem 1.5rem -1rem rgba(20,30,40,.3)}
.fp-card__img{transition:transform 1s cubic-bezier(0,1,.5,1)}
.fp-card:hover .fp-card__img{transform:scale(1.06)}

/* lépés-ikonok: pici ugrás hoverre */
.fp-steps__icon{transition:transform .5s cubic-bezier(0,1,.5,1)}
.fp-steps__item:hover .fp-steps__icon{transform:translateY(-5px) scale(1.1)}

/* gombok: átfutó fény */
.fp-btn{position:relative;overflow:hidden}
.fp-btn::after{
  content:"";position:absolute;top:0;left:-80%;width:50%;height:100%;
  background:linear-gradient(115deg,transparent,rgba(255,255,255,.4),transparent);
  transform:skewX(-20deg);pointer-events:none;
}
.fp-btn:hover::after{animation:feny .7s ease}
@keyframes feny{to{left:130%}}
.fp-btn--ghost{background:transparent;border-color:rgba(255,255,255,.5);color:#fff}
.fp-btn--ghost:hover,.fp-btn--ghost:focus-visible{background:rgba(255,255,255,.12);border-color:#fff;color:#fff}

/* számláló-sáv a főoldalon */
.fp-szamok{background:var(--ink);color:#fff;padding-block:2.4rem}
.fp-szamok__grid{
  display:grid;gap:1.5rem;text-align:center;
  grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));
}
.fp-szamok__n{
  font-family:var(--head);font-weight:600;font-size:2.4rem;line-height:1;
  color:var(--teal);font-variant-numeric:tabular-nums;
}
.fp-szamok__l{
  margin:.4rem 0 0;font-size:.82rem;text-transform:uppercase;
  letter-spacing:.06em;color:rgba(255,255,255,.75);
}

@media (prefers-reduced-motion:reduce){
  .fp-hero__title,.fp-hero__lead,.fp-hero .fp-btn,
  .szolg-hero h1,.szolg-hero__lead,.szolg-hero__tenyek,.szolg-hero__cta{animation:none}
  .rejtett-elem{opacity:1;transform:none;transition:none}
  .fp-card,.fp-card__img,.fp-steps__icon,.fp-logos__item{transition:none}
  .fp-btn:hover::after{animation:none}
}

/* ═══════════════════════════════════════════════════════════════════════
   SZOLGÁLTATÁS-OLDALAK — közös hero + tagolás
   ═══════════════════════════════════════════════════════════════════════ */
.szolg-hero{
  position:relative;background:var(--ink);color:#fff;overflow:hidden;isolation:isolate;
}
.szolg-hero__kep{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;
  transform:scale(1.08);animation:lassu-kozelites 14s ease-out forwards;
}
@keyframes lassu-kozelites{to{transform:scale(1)}}
.szolg-hero::before{
  content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(100deg,rgba(20,30,40,.95) 0%,rgba(20,30,40,.85) 55%,rgba(20,30,40,.6) 100%);
}
.szolg-hero__in{padding-block:4.2rem 3.4rem;max-width:56rem}
.szolg-hero .eyebrow{color:var(--teal);margin:0 0 .3rem}
.szolg-hero h1{
  color:#fff;font-size:clamp(1.9rem,4.2vw,2.8rem);line-height:1.15;margin:0 0 .9rem;
}
.szolg-hero__lead{font-size:1.1rem;line-height:1.65;color:rgba(255,255,255,.88);margin:0 0 1.5rem;max-width:44rem}
.szolg-hero__tenyek{list-style:none;margin:0 0 1.8rem;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}
.szolg-hero__tenyek li{
  border:1px solid rgba(255,255,255,.35);border-radius:999px;
  padding:.35rem .95rem;font-size:.82rem;
  font-family:var(--head);font-weight:600;background:rgba(255,255,255,.06);
}
.szolg-hero__cta{display:flex;gap:.75rem;flex-wrap:wrap;margin:0}
@media (prefers-reduced-motion:reduce){.szolg-hero__kep{animation:none;transform:none}}

/* tagolás a szövegben */
.szolg h2{
  position:relative;padding-left:1rem;margin-top:2.6rem;font-size:1.45rem;line-height:1.25;
}
.szolg h2::before{
  content:"";position:absolute;left:0;top:.28em;bottom:.28em;width:4px;
  background:var(--teal);border-radius:2px;
}
.szolg h3{margin-top:1.8rem;font-size:1.1rem}
.szolg hr{border:0;height:1px;margin:2.8rem 0;
  background:linear-gradient(90deg,var(--teal),var(--line-soft) 60%,transparent)}

/* felsorolás pipával */
.szolg ul:not(.lepesek):not(.adatpar):not(.contact-facts){list-style:none;padding-left:0}
.szolg ul:not(.lepesek):not(.adatpar):not(.contact-facts)>li{position:relative;padding-left:1.8rem;margin-bottom:.55rem}
.szolg ul:not(.lepesek):not(.adatpar):not(.contact-facts)>li::before{
  content:"";position:absolute;left:0;top:.35em;width:1.1rem;height:1.1rem;border-radius:50%;
  background:var(--teal-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230396b3' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E") center/62% no-repeat;
}

/* számozott lépések (NIS2 folyamat, ISO érvek) */
.lepesek{list-style:none;counter-reset:lepes;padding:0;margin:1.2rem 0 1.8rem;display:grid;gap:.8rem}
.lepesek>li{
  counter-increment:lepes;position:relative;
  padding:1rem 1.2rem 1rem 4.1rem;
  background:var(--paper);border:1px solid var(--line-soft);border-left:3px solid var(--teal);
  transition:transform .5s cubic-bezier(0,1,.5,1),box-shadow .5s cubic-bezier(0,1,.5,1);
}
.lepesek>li:hover{transform:translateX(4px);box-shadow:0 .8rem 1.2rem -1rem rgba(20,30,40,.35)}
.lepesek>li::before{
  content:counter(lepes);position:absolute;left:1.1rem;top:.95rem;
  width:2rem;height:2rem;border-radius:50%;
  background:var(--ink);color:var(--teal);
  font-family:var(--head);font-weight:600;font-size:.95rem;
  display:grid;place-items:center;
}

/* táblázatok */
.szolg .table-wrap{margin:1.2rem 0 1.8rem;border:1px solid var(--line-soft);border-radius:var(--radius);overflow:auto}
.szolg table{width:100%;border-collapse:collapse;font-size:.93rem}
.szolg th{
  background:var(--ink);color:#fff;text-align:left;padding:.8rem .9rem;
  font-family:var(--head);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;
}
.szolg td{padding:.7rem .9rem;border-top:1px solid var(--line-soft);vertical-align:top}
.szolg tbody tr:nth-child(even) td{background:var(--paper-2)}
.szolg tbody tr:hover td{background:var(--teal-soft)}
/* ═══ Lábléc-logó — jobb alsó sarok ═══════════════════════════════════ */
.foot__col--logo{
  margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;
  text-align:right;gap:.35rem;padding-top:.2rem;
}
.foot__logo{display:block;width:170px;transition:transform .5s cubic-bezier(0,1,.5,1),filter .3s}
.foot__logo img{width:100%;height:auto;display:block}
.foot__logo:hover,.foot__logo:focus-visible{transform:translateY(-3px);filter:drop-shadow(0 6px 14px rgba(4,201,237,.25))}
.foot__tag{
  margin:.4rem 0 0;font-family:var(--head);font-weight:600;font-size:.72rem;
  letter-spacing:.14em;text-transform:uppercase;color:#fff;
}
.foot__tag::before{
  content:"";display:block;width:2.2rem;height:2px;margin:0 0 .55rem auto;background:var(--teal);
}
.foot__since{margin:0;font-size:.78rem;color:#a4a8ac}
@media (max-width:720px){
  .foot__col--logo{margin-left:0;align-items:flex-start;text-align:left}
  .foot__tag::before{margin-left:0}
}

/* ═══ Szlogen-sáv a lábléc fölött — a régi .front-page-4 receptje ═══════
   Teljes szélességű háttérkép, rgba(20,30,40,.82) fátyol, 10 rem belső
   margó, középre zárt fehér szöveg (max 64 rem). A kép lassan közelít.  */
.fp-claim{
  position:relative;overflow:hidden;isolation:isolate;
  padding-block:clamp(5rem,12vw,10rem);text-align:center;
}
.fp-claim__kep{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;
  z-index:-2;transform:scale(1.06);animation:lassu-kozelites 18s ease-out forwards;
}
.fp-claim::before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(20,30,40,.82)}
.fp-claim__in{max-width:64rem}
.fp-claim__text{font-size:clamp(1.35rem,3vw,2rem)}
.fp-claim__sign{font-size:1.15rem;font-family:var(--head);font-weight:600}
@media (prefers-reduced-motion:reduce){.fp-claim__kep{animation:none;transform:none}}


/* ═══ „Dolgozzunk együtt!” a lábléc tetején — a régi .before-footer ═════
   Minden oldalon: teljes szélességű háttérkép (felso1.jpg), 0,82-es sötét
   fátyol, 80 px belső margó; balra a cím + egy sor, jobbra a cián gomb. */
.foot-cta{position:relative;overflow:hidden;isolation:isolate;padding-block:5rem}
.foot-cta__kep{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;
  z-index:-2;transform:scale(1.05);animation:lassu-kozelites 16s ease-out forwards;
}
.foot-cta::before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(20,30,40,.82)}
.foot-cta__in{display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap}
.foot-cta__title{
  font-size:clamp(1.5rem,3vw,1.9rem);text-transform:uppercase;color:#fff;margin:0 0 .4rem;
}
.foot-cta__text{margin:0;font-size:1.05rem;color:var(--paper-2)}
@media (prefers-reduced-motion:reduce){.foot-cta__kep{animation:none;transform:none}}

/* kulcsszó-sor a főoldal alján (a régi oldal utolsó sora a lábléc fölött) */
.fp-kulcs{padding-block:2.4rem 3rem}
.fp-kulcs p{margin:0;color:#556677;font-size:1.05rem;line-height:1.6}

/* Microsoft Partner jelvény a láblécben */
.foot__badge{display:block;width:150px;margin-top:1rem}
.foot__badge img{width:100%;height:auto;display:block;border-radius:3px}
/* ═══ Lábléc: elérhetőségek kis ikonokkal ═════════════════════════════ */
.foot__kontakt{list-style:none;margin:.2rem 0 .8rem;padding:0;display:grid;gap:.45rem}
.foot__kontakt li{display:flex;align-items:flex-start;gap:.55rem;line-height:1.45}
.foot__kontakt svg{flex:0 0 auto;margin-top:.15rem;color:var(--teal)}
.foot__kontakt a{color:#c3c6cf;text-decoration:none}
.foot__kontakt a:hover,.foot__kontakt a:focus-visible{color:#fff;text-decoration:underline}

/* ═══ Rólunk: „Kik vagyunk?” csapat-kártyák ═══════════════════════════ */
.csapat{background:var(--paper-2);padding-block:3.5rem}
.csapat__szekcio{
  font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);
  margin:2.2rem 0 1rem;padding-left:.9rem;position:relative;
}
.csapat__szekcio::before{content:"";position:absolute;left:0;top:.15em;bottom:.15em;width:3px;background:var(--teal)}
.csapat__grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(26rem,1fr))}
@media (max-width:560px){.csapat__grid{grid-template-columns:1fr}.tag{flex-direction:column;align-items:flex-start}.tag__kep{width:7rem;height:7rem}}
.tag{
  background:var(--paper);border:1px solid var(--line-soft);display:flex;gap:1rem;padding:1rem;
  transition:transform .6s cubic-bezier(0,1,.5,1),box-shadow .6s cubic-bezier(0,1,.5,1);
}
.tag:hover{transform:translateY(-.35rem);box-shadow:0 1.6rem 1.4rem -1.2rem rgba(20,30,40,.3)}
.tag__kep{
  flex:0 0 6.5rem;width:6.5rem;height:6.5rem;object-fit:cover;border-radius:50%;
  filter:grayscale(.12);transition:filter .5s,transform .5s cubic-bezier(0,1,.5,1);
}
.tag:hover .tag__kep{transform:scale(1.04)}
.tag:hover .tag__kep{filter:none}
.tag__kep--nincs{
  display:grid;place-items:center;background:var(--ink);color:var(--teal);
  font-family:var(--head);font-weight:600;font-size:1.6rem;
}
.tag__body{min-width:0;flex:1}
.tag__nev{margin:0 0 .15rem;font-size:1.02rem;color:var(--ink)}
.tag__poz{margin:0 0 .55rem;font-size:.82rem;text-transform:uppercase;letter-spacing:.05em;color:var(--link);font-family:var(--head);font-weight:600}
.tag__szoveg{margin:0 0 .5rem;font-size:.9rem;color:var(--muted);line-height:1.5}
.tag__mail{margin:.4rem 0 0;font-size:.85rem;overflow-wrap:anywhere}
.tag__mail a{color:var(--link);text-decoration:none}
.tag__mail a:hover{text-decoration:underline}
@media (prefers-reduced-motion:reduce){.tag,.tag__kep{transition:none}}

/* ═══════════════════════════════════════════════════════════════════════
   TELJES SZÉLESSÉGŰ SÁVOK — a régi lanmen.hu aloldalainak tagolása
   (váltakozó fehér/szürke háttér, parallaxos képes szekciócím, cián sáv)
   ═══════════════════════════════════════════════════════════════════════ */
.sav{padding-block:3.5rem}
.sav--vilagos{background:var(--paper)}
.sav--szurke{background:#f7f7f7}
.sav--sotet{background:var(--ink);color:#fff}
.sav--sotet h2,.sav--sotet h3{color:#fff}
.sav--sotet p,.sav--sotet li{color:rgba(255,255,255,.85)}
.sav--sotet a{color:var(--teal)}

/* cián kiemelő sáv — sötét szöveggel, mint az eredetin */
.sav--cian{background:var(--teal);color:var(--ink)}
.sav--cian h2,.sav--cian h3,.sav--cian strong{color:var(--ink)}
.sav--cian h2::before{background:var(--ink)}
.sav--cian p,.sav--cian li{color:#083845}
.sav--cian a{color:var(--ink);text-decoration-thickness:2px}
.sav--cian ul:not(.lepesek):not(.adatpar):not(.contact-facts)>li::before{
  background:rgba(255,255,255,.55) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23141e28' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E") center/62% no-repeat;
}
/* az első címsor a sáv tetején ne lökje szét a ritmust */
.sav .szolg>h2:first-child{margin-top:0}

/* ── Parallaxos képes szekciócím ─────────────────────────────────────── */
.sav--kep{
  position:relative;isolation:isolate;overflow:hidden;
  padding-block:clamp(4rem,9vw,7rem);text-align:center;color:#fff;
  background:var(--sav-kep) center/cover no-repeat fixed;
}
.sav--kep::before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(20,30,40,.78)}
.sav-fejlec{max-width:56rem}
.sav-fejlec__cim{
  color:#fff;margin:0;line-height:1.15;
  font-size:clamp(1.8rem,4.5vw,3.2rem);
}
.sav-fejlec__cim::after{
  content:"";display:block;width:64px;height:3px;background:var(--teal);
  margin:1.1rem auto 0;
}
.sav-fejlec__alcim{
  margin:1.1rem auto 0;max-width:44rem;
  font-size:1.1rem;line-height:1.6;color:rgba(255,255,255,.88);
}
/* iOS-en a fixed háttér ugrál; ott inkább görgessen együtt az oldallal */
@media (hover:none){.sav--kep{background-attachment:scroll}}
@media (prefers-reduced-motion:reduce){.sav--kep{background-attachment:scroll}}

/* ── Ikonos kártyarács (a régi „infobox” sor) ────────────────────────── */
.infoboxok{
  display:grid;gap:1.5rem;margin:0 0 .5rem;
  grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));
}
.infobox{
  background:var(--paper);border:1px solid var(--line-soft);
  border-top:3px solid var(--teal);
  padding:1.6rem 1.4rem;text-align:center;
  display:flex;flex-direction:column;
  transition:transform .6s cubic-bezier(0,1,.5,1),box-shadow .6s cubic-bezier(0,1,.5,1);
}
.infobox:hover{transform:translateY(-.45rem);box-shadow:0 1.8rem 1.6rem -1.2rem rgba(20,30,40,.3)}
.infobox .ikon{
  color:var(--teal);margin:0 auto .9rem;display:block;
  transition:transform .5s cubic-bezier(0,1,.5,1);
}
.infobox:hover .ikon{transform:translateY(-4px) scale(1.12)}
.infobox__cim{
  margin:0 0 .6rem;font-size:.98rem;line-height:1.3;
  text-transform:uppercase;letter-spacing:.03em;color:var(--ink);
}
.infobox__szoveg{margin:0;font-size:.92rem;color:var(--muted);line-height:1.55;flex:1}
.infobox__tovabb{
  margin-top:.9rem;font-family:var(--head);font-weight:600;font-size:.85rem;
  color:var(--link);text-decoration:none;
}
.infobox__tovabb::after{content:" →"}
.infobox__tovabb:hover{text-decoration:underline}

/* cián kártyák — a rendszergazda-oldal négyese az eredetin ilyen */
.infoboxok--cian .infobox{
  background:var(--teal);border-color:var(--teal);border-top-color:var(--ink);
}
.infoboxok--cian .ikon{color:var(--ink)}
.infoboxok--cian .infobox__cim{color:var(--ink)}
.infoboxok--cian .infobox__szoveg{color:#083845}

/* szürke sávban a kártya fehér marad, hogy elváljon */
.sav--szurke .infobox{background:var(--paper)}

@media (prefers-reduced-motion:reduce){
  .infobox,.infobox .ikon{transition:none}
}

/* ═══════════════════════════════════════════════════════════════════════
   VISSZAFOGOTTABB HANGOLÁS — pasztell felületek, halk árnyékok
   A márkaszínek (logó: cián, piros, fekete) megmaradnak, csak kisebb
   adagokban: az élénk cián ikonokon és vonalakon él, a nagy felületek
   fehérek vagy halvány cián ködűek.
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Gombok: tömör, mély cián — olvasható és nyugodt ────────────────── */
.fp-btn,.btn{
  background:var(--link);border-color:var(--link);border-radius:var(--radius);
  box-shadow:none;
}
.fp-btn:hover,.fp-btn:focus-visible,.btn:hover,.btn:focus-visible{
  background:var(--teal-dark);border-color:var(--teal-dark);
  transform:translateY(-2px);box-shadow:var(--arny);
}
/* a gomb átfutó fénye halkabb */
.fp-btn::after{background:linear-gradient(115deg,transparent,rgba(255,255,255,.28),transparent)}
.fp-btn--light{background:#fff;border-color:#fff;color:var(--ink)}
.fp-btn--light:hover,.fp-btn--light:focus-visible{background:var(--teal-soft);border-color:var(--teal-soft);color:var(--ink)}
.fp-btn--ghost{background:transparent;border-color:rgba(255,255,255,.45)}

/* ── Sávok ───────────────────────────────────────────────────────────── */
.sav--szurke{background:var(--teal-mist)}

/* a „cián” sáv már nem teli neon, hanem pasztell felület cián vezérvonallal */
.sav--cian{
  background:var(--teal-soft);color:var(--text);
  border-top:2px solid var(--cian);border-bottom:2px solid var(--cian);
}
.sav--cian h2,.sav--cian h3,.sav--cian strong{color:var(--ink)}
.sav--cian h2::before{background:var(--cian)}
.sav--cian p,.sav--cian li{color:var(--text)}
.sav--cian a{color:var(--link);text-decoration-thickness:1px}
.sav--cian ul:not(.lepesek):not(.adatpar):not(.contact-facts)>li::before{
  background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230a7d94' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E") center/62% no-repeat;
}

/* parallax fejléc: lágyabb fátyol, a cím alatt cián→piros vonal (logó) */
.sav--kep::before{background:linear-gradient(180deg,rgba(22,33,44,.80),rgba(22,33,44,.70))}
.sav-fejlec__cim::after{
  background:linear-gradient(90deg,var(--cian),var(--piros));
  width:72px;height:3px;border-radius:2px;
}
.fp-sec__rule{
  background:linear-gradient(90deg,var(--cian),var(--piros));
  height:3px;border-radius:2px;width:72px;
}

/* ── Kártyák: halk keret, pasztell felület, halk árnyék ─────────────── */
.infobox{
  border:1px solid var(--line-soft);border-top:1px solid var(--line-soft);
  border-radius:var(--radius);box-shadow:none;
  position:relative;overflow:hidden;
}
/* vékony cián vezérvonal a kártya tetején, hoverre széthúzódik */
.infobox::before{
  content:"";position:absolute;top:0;left:0;height:2px;width:34px;
  background:var(--cian);transition:width .5s cubic-bezier(0,1,.5,1);
}
.infobox:hover{transform:translateY(-.35rem);box-shadow:var(--arny-be)}
.infobox:hover::before{width:100%}
.infobox .ikon{color:var(--cian)}

/* a cián kártyasor is pasztell lett — a cián a keretben és az ikonban él */
.infoboxok--cian .infobox{
  background:var(--teal-soft);border-color:#d4edf5;
}
.infoboxok--cian .ikon{color:var(--link)}
.infoboxok--cian .infobox__cim{color:var(--ink)}
.infoboxok--cian .infobox__szoveg{color:var(--text)}
.sav--szurke .infobox,.sav--vilagos .infoboxok--cian .infobox{background:var(--teal-soft)}
.sav--vilagos .infobox{background:var(--paper)}

/* ── Főoldali elemek lágyítása ───────────────────────────────────────── */
.fp-card{border-radius:var(--radius);border-color:var(--line-soft);box-shadow:none}
.fp-card:hover{box-shadow:var(--arny-be)}
.fp-steps__icon{color:var(--cian)}
.fp-logos__item{border-radius:var(--radius)}
.fp-logos__item:hover,.fp-logos__item:focus-visible{box-shadow:var(--arny-be)}
.fp-szamok{background:var(--ink)}
.fp-szamok__n{color:var(--cian)}
.fp-hero__veil{background:linear-gradient(180deg,rgba(22,33,44,.78),rgba(22,33,44,.86))}
.fp-claim::before{background:rgba(22,33,44,.80)}
.foot-cta::before{background:rgba(22,33,44,.80)}
.fp-kulcs p{color:var(--muted)}

/* ── Szolgáltatás-oldalak: lágyabb tagolók ──────────────────────────── */
.szolg h2::before{background:var(--cian);border-radius:2px}
.szolg hr{background:linear-gradient(90deg,var(--cian),var(--line-soft) 55%,transparent)}
.szolg ul:not(.lepesek):not(.adatpar):not(.contact-facts)>li::before{
  background:var(--teal-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230a7d94' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E") center/62% no-repeat;
}
.lepesek>li{
  border:1px solid var(--line-soft);border-left:3px solid var(--cian);
  border-radius:var(--radius);background:var(--paper);
}
.lepesek>li:hover{box-shadow:var(--arny)}
.lepesek>li::before{background:var(--teal-soft);color:var(--link)}
.sav--szurke .lepesek>li{background:var(--paper)}

/* táblázatok: lágyabb fejléc, halvány csíkozás */
.szolg .table-wrap{border-color:var(--line-soft);border-radius:var(--radius)}
.szolg th{background:var(--ink)}
.szolg td{border-top-color:var(--line-soft)}
.szolg tbody tr:nth-child(even) td{background:var(--teal-mist)}
.szolg tbody tr:hover td{background:var(--teal-soft)}

/* hero-chipek a szolgáltatás-oldalakon */
.szolg-hero__tenyek li{border-color:rgba(255,255,255,.28);background:rgba(255,255,255,.08)}
.szolg-hero::before{background:linear-gradient(100deg,rgba(22,33,44,.94) 0%,rgba(22,33,44,.84) 55%,rgba(22,33,44,.62) 100%)}
.szolg-hero .eyebrow{color:var(--cian)}

/* ── Csapat- és referencia-kártyák ──────────────────────────────────── */
.tag{border-radius:var(--radius);border-color:var(--line-soft)}
.tag:hover{box-shadow:var(--arny-be)}
.tag__poz{color:var(--link)}
.ref{border-radius:var(--radius);border-color:var(--line-soft)}
.ref:hover{box-shadow:var(--arny)}
.ref__cimke{background:var(--teal-soft);color:var(--link);border-radius:3px}
.ref__cimke:hover{background:var(--link);color:#fff}
.katszuro__gomb{border-radius:var(--radius);border-color:var(--line)}
.katszuro__gomb.is-active{background:var(--ink);border-color:var(--ink)}
.csapat{background:var(--teal-mist)}
.csapat__szekcio::before{background:var(--cian);border-radius:2px}

/* ── Alap szövegszínek ───────────────────────────────────────────────── */
h1,h2,h3,h4{color:var(--ink)}
.lead{color:var(--muted)}
.eyebrow{color:var(--link)}

/* ═══════════════════════════════════════════════════════════════════════
   TAGOLÁS — több ritmus, kevesebb egyhangúság
   A három világos sáv korábban túl közel volt egymáshoz (fehér 255,
   „szürke” 245-251-253, cián 234-247-251), ezért egy felületnek látszott.
   Most a szürke VALÓDI semleges szürke — más színezetű, mint a cián —,
   így három jól megkülönböztethető tónus váltakozik.
   ═══════════════════════════════════════════════════════════════════════ */
:root{
  --koed:   #f5fbfd;   /* halvány cián köd  — a márkaszín felé húz  */
  --szurke: #eff2f5;   /* semleges szürke   — hűvös, elüt a ciántól */
}

.sav--koed{background:var(--koed)}
.sav--szurke{background:var(--szurke)}
.sav--cian{background:#e3f2f8}

/* sötét sáv: erős állítás, ritkán — a hosszú oldalak közepén megtöri a ritmust */
.sav--sotet{background:var(--ink);color:rgba(255,255,255,.88)}
.sav--sotet h2,.sav--sotet h3,.sav--sotet strong{color:#fff}
.sav--sotet h2::before{background:var(--cian)}
.sav--sotet a{color:var(--cian)}
.sav--sotet ul:not(.lepesek):not(.adatpar):not(.contact-facts)>li::before{
  background:rgba(255,255,255,.14) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2304c8ed' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E") center/62% no-repeat;
}

/* ── Változó ritmus: nem minden sáv egyforma magas ──────────────────── */
.sav--szoros{padding-block:2.2rem}
.sav--tag{padding-block:5.5rem}

/* Ha két azonos tónusú sáv ér össze, hajszálvonal választja el őket. */
.sav + .sav{border-top:1px solid transparent}
.sav--vilagos + .sav--vilagos,
.sav--koed + .sav--koed,
.sav--szurke + .sav--szurke{border-top-color:var(--line-soft)}

/* ── Kiemelt doboz a szövegfolyamban ────────────────────────────────── */
.kiemelt{
  display:flex;gap:1rem;align-items:flex-start;
  background:var(--paper);border:1px solid var(--line-soft);
  border-left:3px solid var(--cian);border-radius:var(--radius);
  padding:1.1rem 1.3rem;margin:1.6rem 0;box-shadow:var(--arny);
}
.szurke .kiemelt,.sav--vilagos .kiemelt{background:var(--koed);box-shadow:none}
.kiemelt__ikon{flex:0 0 auto;color:var(--link);margin-top:.15rem}
.kiemelt p{margin:0 0 .4rem;font-size:.95rem}
.kiemelt p:last-child{margin-bottom:0}
.kiemelt strong{color:var(--ink)}
/* piros változat — figyelmeztetés, határidő (a logó harmadik színe) */
.kiemelt--fontos{border-left-color:var(--piros);background:var(--piros-soft)}
.kiemelt--fontos .kiemelt__ikon{color:var(--piros)}

/* ── Kiemelt mondat (pull quote) — megtöri a bekezdésfalat ──────────── */
.idezet{
  margin:2.4rem 0;padding:0 0 0 1.4rem;
  border-left:3px solid var(--cian);
  font-family:var(--head);font-weight:600;
  font-size:clamp(1.1rem,2.2vw,1.35rem);line-height:1.45;color:var(--ink);
}
.idezet span{display:block;margin-top:.5rem;font-family:var(--sans);
  font-weight:400;font-size:.92rem;color:var(--muted)}

/* ── Két oszlop: szöveg + kísérő lista/adat ─────────────────────────── */
.ketoszlop{display:grid;gap:2.4rem;grid-template-columns:1.25fr .75fr;align-items:start}
.ketoszlop__mellek{
  background:var(--paper);border:1px solid var(--line-soft);
  border-radius:var(--radius);padding:1.3rem 1.4rem;box-shadow:var(--arny);
}
.sav--vilagos .ketoszlop__mellek{background:var(--koed);box-shadow:none}
.ketoszlop__mellek h3{margin:0 0 .8rem;font-size:.85rem;text-transform:uppercase;
  letter-spacing:.06em;color:var(--muted)}
.ketoszlop__mellek ul{margin:0;padding-left:0;list-style:none}
.ketoszlop__mellek li{padding:.5rem 0;border-bottom:1px solid var(--line-soft);font-size:.92rem}
.ketoszlop__mellek li:last-child{border-bottom:0}
@media (max-width:820px){.ketoszlop{grid-template-columns:1fr;gap:1.4rem}}

/* ── Adatpárok (cégadatok, jogalap-táblák) ──────────────────────────── */
.adatpar{list-style:none;margin:1.2rem 0;padding:0;
  border:1px solid var(--line-soft);border-radius:var(--radius);overflow:hidden}
.adatpar li{display:grid;grid-template-columns:13rem 1fr;gap:1rem;
  padding:.75rem 1.1rem;border-bottom:1px solid var(--line-soft);font-size:.93rem}
.adatpar li:last-child{border-bottom:0}
.adatpar li:nth-child(odd){background:var(--koed)}
.adatpar .k{color:var(--muted);font-weight:600;font-size:.85rem}
@media (max-width:620px){.adatpar li{grid-template-columns:1fr;gap:.15rem}}

/* ═══ Kérdés–válasz blokk (GYIK) ══════════════════════════════════════ */
.gyik{margin:1.4rem 0 1.8rem;border:1px solid var(--line-soft);
  border-radius:var(--radius);overflow:hidden;background:var(--paper)}
.gyik__elem{border-bottom:1px solid var(--line-soft)}
.gyik__elem:last-child{border-bottom:0}
.gyik__kerdes{
  cursor:pointer;list-style:none;padding:1rem 3rem 1rem 1.2rem;position:relative;
  font-family:var(--head);font-weight:600;font-size:1rem;color:var(--ink);
  transition:background .2s,color .2s;
}
.gyik__kerdes::-webkit-details-marker{display:none}
.gyik__kerdes::after{
  content:"";position:absolute;right:1.2rem;top:1.35rem;
  width:.6rem;height:.6rem;border-right:2px solid var(--link);
  border-bottom:2px solid var(--link);transform:rotate(45deg);
  transition:transform .3s cubic-bezier(0,1,.5,1);
}
.gyik__elem[open] .gyik__kerdes{background:var(--teal-soft);color:var(--link)}
.gyik__elem[open] .gyik__kerdes::after{transform:rotate(-135deg);top:1.55rem}
.gyik__kerdes:hover{background:var(--koed)}
.gyik__valasz{padding:.2rem 1.4rem 1.2rem;font-size:.95rem;line-height:1.65}
.gyik__valasz p{margin:0 0 .8rem}
.gyik__valasz p:last-child{margin-bottom:0}
.gyik__valasz ul{margin:.6rem 0 .8rem}
.sav--szurke .gyik,.sav--koed .gyik{background:var(--paper)}
@media (prefers-reduced-motion:reduce){.gyik__kerdes::after{transition:none}}

/* ── Infobox-rács: a darabszám dönti el az oszlopszámot ────────────────
   Az auto-fit rács a szélességből számol, ezért hat kártyából 4+2-t,
   a szűk szövegoszlopban háromból 2+1-et csinált. A sor inkább legyen
   mindig szimmetrikus — még akkor is, ha a kártya keskenyebb lesz. */
.infoboxok--n2{grid-template-columns:repeat(2,1fr)}
.infoboxok--n3{grid-template-columns:repeat(3,1fr)}
.infoboxok--n4{grid-template-columns:repeat(4,1fr)}
.infoboxok--n5{grid-template-columns:repeat(5,1fr)}
.infoboxok--n6{grid-template-columns:repeat(3,1fr)}
.infoboxok--n7,
.infoboxok--n8{grid-template-columns:repeat(4,1fr)}

/* A szűk (760 px-es) szövegoszlopban négynél több már olvashatatlan. */
.narrow .infoboxok--n4,
.narrow .infoboxok--n5,
.narrow .infoboxok--n7,
.narrow .infoboxok--n8{grid-template-columns:repeat(2,1fr)}

@media (max-width:62rem){
  .infoboxok--n4,.infoboxok--n5,.infoboxok--n6,
  .infoboxok--n7,.infoboxok--n8,
  .narrow .infoboxok--n4,.narrow .infoboxok--n5,
  .narrow .infoboxok--n7,.narrow .infoboxok--n8{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:44rem){
  .infoboxok--n2,.infoboxok--n3,.infoboxok--n4,.infoboxok--n5,
  .infoboxok--n6,.infoboxok--n7,.infoboxok--n8,
  .narrow .infoboxok--n4,.narrow .infoboxok--n5,
  .narrow .infoboxok--n7,.narrow .infoboxok--n8{grid-template-columns:1fr}
}

/* ═══════════════════════════════════════════════════════════════════════
   KÁRTYÁK LÁTHATÓSÁGA
   A pasztell hangolás után a fehér sávon ülő fehér kártyák szinte
   eltűntek: a keretük (--line-soft, #f0f4f7) alig 2% eltérés a
   háttértől, árnyékuk pedig nem volt. Marad a levegős hangulat, de a
   kártya legyen kártya — saját kerete és egy halk vetett árnyéka.

   FIGYELEM: --line-soft marad a BELSŐ hajszálvonalakon (táblázatsor,
   listaelválasztó, menüpont), azokat nem akarjuk sötétíteni. Az itteni
   --line-kartya kizárólag a kártyák külső kontúrja.
   ═══════════════════════════════════════════════════════════════════════ */
:root{
  --line-kartya:      #d8e3ea;   /* kártyakontúr világos háttéren        */
  --line-kartya-be:   #bcd6e2;   /* ugyanaz hoverre                      */
  --line-kartya-cian: #c3e2ee;   /* a pasztell cián kártyák kontúrja     */
}

.infobox,
.fp-card,
.ref,
.tag,
.adatpar,
.gyik,
.szolg .table-wrap{
  border-color:var(--line-kartya);
  box-shadow:var(--arny);
}
.infobox{border-top-color:var(--line-kartya)}

/* A cián vezérvonal legyen észrevehető: vastagabb és hosszabb. */
.infobox::before{height:3px;width:46px}

.infobox:hover,
.fp-card:hover,
.ref:hover,
.tag:hover{border-color:var(--line-kartya-be);box-shadow:var(--arny-be)}

/* A kártyaszöveg eddig --muted volt (4,4:1) — a törzsszínnel (7,9:1)
   ugyanolyan halk marad, de kis méretben is olvasható. */
.infobox__szoveg{color:var(--text)}

/* A pasztell cián kártyák saját, hozzájuk illő kontúrt kapnak. */
.infoboxok--cian .infobox,
.sav--vilagos .infoboxok--cian .infobox{
  border-color:var(--line-kartya-cian);border-top-color:var(--line-kartya-cian);
}
.infoboxok--cian .infobox:hover{border-color:#9fd2e5}

/* Szürke sávban a kártya világosabb a háttérnél — ott elég a halk keret. */
.sav--szurke .infobox{border-color:#dfe6ec;border-top-color:#dfe6ec}

/* ── Érettségmérő beajánló sáv (NIS2 / ISO 27001 oldalak) ───────────── */
.erettseg-sav__in{
  display:grid;grid-template-columns:1fr auto;gap:2.5rem;align-items:center;
}
.erettseg-sav__szoveg .eyebrow{color:var(--cian)}
.erettseg-sav__szoveg h2{color:#fff;margin:.2rem 0 .7rem}
.erettseg-sav__szoveg p{color:rgba(255,255,255,.82);margin:0;max-width:44rem}
.erettseg-sav__tenyek{
  list-style:none;margin:1.3rem 0 0;padding:0;
  display:flex;flex-wrap:wrap;gap:.6rem 1.6rem;
}
.erettseg-sav__tenyek li{
  display:flex;align-items:center;gap:.5rem;
  font-size:.88rem;color:rgba(255,255,255,.72);
}
.erettseg-sav__ikon{width:18px;height:18px;color:var(--cian);flex:none}
.erettseg-sav__gomb{margin:0;text-align:center}
.erettseg-sav__gomb .btn{white-space:nowrap}
.erettseg-sav__alatta{
  display:block;margin-top:.7rem;font-size:.8rem;color:rgba(255,255,255,.55);
}
@media (max-width:52rem){
  .erettseg-sav__in{grid-template-columns:1fr;gap:1.6rem}
  .erettseg-sav__gomb{text-align:left}
}

/* ═══════════════════════════════════════════════════════════════════════
   GOMBOK A SZÍNES SÁVOKBAN — olvashatóság
   Két hiba gyűlt itt össze:
   1. A pasztell hangolás `.fp-btn,.btn{background:var(--link)}` szabálya a
      `.btn--ghost{background:transparent}` UTÁN jön, azonos fajsúllyal —
      ezért a „ghost" gombok mindenhol tömör hátteret kaptak.
   2. A sávok linkszíne (`.sav--cian a`, `.sav--sotet a`) két osztály-
      fajsúlyú, a `.btn` csak egy — így a gomb FELIRATA is felvette a sáv
      linkszínét. A cián sávban ez pont a gomb háttérszíne lett:
      1:1 kontraszt, vagyis olvashatatlan gomb.
   A sáv-linkszín ezért mostantól nem vonatkozik a gombokra, a gombok
   pedig sávtípusonként kapnak kimondott szín- és háttérpárt.
   ═══════════════════════════════════════════════════════════════════════ */

/* A „ghost" gomb újra átlátszó — a tömör háttér csak a rendes gombé. */
.btn--ghost,
.btn--ghost:hover,
.btn--ghost:focus-visible{background:transparent}

/* A sávok linkszíne a szövegre vonatkozik, nem a gombokra. */
.sav--cian a:not(.btn),
.sav--sotet a:not(.btn){text-decoration-thickness:1px}

/* Cián (halványkék) sáv */
.sav--cian .btn{background:var(--link);border-color:var(--link);color:#fff}
.sav--cian .btn:hover,
.sav--cian .btn:focus-visible{background:var(--teal-dark);border-color:var(--teal-dark);color:#fff}
.sav--cian .btn--ghost{background:transparent;color:var(--ink);border-color:var(--link)}
.sav--cian .btn--ghost:hover,
.sav--cian .btn--ghost:focus-visible{background:#fff;color:var(--ink);border-color:var(--link)}

/* Sötét sáv */
.sav--sotet .btn{background:var(--link);border-color:var(--link);color:#fff}
.sav--sotet .btn:hover,
.sav--sotet .btn:focus-visible{background:var(--cian);border-color:var(--cian);color:var(--ink)}
.sav--sotet .btn--ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.5)}
.sav--sotet .btn--ghost:hover,
.sav--sotet .btn--ghost:focus-visible{background:rgba(255,255,255,.12);color:#fff;border-color:#fff}

/* ── Cégadatok kártya (/rolunk) ──────────────────────────────────────
   A sima .contact-facts lista a szürke sávon szétesett: nagy sorköz,
   szélső vonal nélkül. Itt kártyába tesszük, összehúzott sorokkal és
   halk zebra-csíkkal, hogy a szem végig tudjon futni rajta.
   A .contact-facts osztály azért marad rajta, mert a .szolg lista-
   szabálya abból tudja, hogy ide nem kell pipa-felsorolásjel. */
.cegadatok{
  margin:1.4rem 0 0;padding:0;list-style:none;max-width:38rem;
  background:var(--paper);border:1px solid var(--line-kartya);
  border-radius:var(--radius);box-shadow:var(--arny);overflow:hidden;
}
.cegadatok li{
  display:grid;grid-template-columns:11.5rem 1fr;gap:1rem;align-items:baseline;
  padding:.5rem 1.1rem;font-size:.93rem;line-height:1.45;
  border-bottom:1px solid var(--line-soft);
}
.cegadatok li:last-child{border-bottom:0}
.cegadatok li:nth-child(odd){background:#fafcfd}
.cegadatok .k{color:var(--muted);font-weight:600;font-size:.85rem}
@media (max-width:40rem){
  .cegadatok li{grid-template-columns:1fr;gap:.1rem;padding:.55rem .9rem}
}

/* ── „Üzenek!" gomb a lábléc fölötti sávban ──────────────────────────
   A pasztell hangolás óta ez is a halk --link színt kapta, ami a sötét,
   fátyolos háttéren szinte eltűnt. Itt a márka élénk ciánja a helyes
   választás: sötét felirattal 9:1 fölötti kontraszt, és tényleg látszik. */
.foot-cta .fp-btn{
  background:var(--cian);border-color:var(--cian);color:var(--ink);
  font-size:1rem;padding:17px 38px;
}
.foot-cta .fp-btn:hover,
.foot-cta .fp-btn:focus-visible{
  background:#fff;border-color:#fff;color:var(--ink);
}

/* ═══════════════════════════════════════════════════════════════════════
   LÁBLÉC — kompaktabb
   Túl magas volt: a két navigációs oszlop sorköze nagyvonalú, a jelvény
   a bal oszlopot nyújtotta, a logó alatti szlogen pedig már a bal oszlop
   szövegében is ott van. A „Dolgozzunk együtt!" sáv is arányosan alacsonyabb.
   ═══════════════════════════════════════════════════════════════════════ */

/* Navigációs oszlopok: szorosabb sorok. */
.foot__list li{margin:0}
.foot__list a{display:block;padding:.13rem 0;line-height:1.35}
.foot__h{margin:0 0 .45rem}

/* A felső blokk és a bal oszlop is szorosabb. */
.foot__top{padding-block:1.9rem 1.5rem;gap:2rem}
.foot__desc{margin:.35rem 0 .8rem;line-height:1.5}
.foot__kontakt{margin:.2rem 0 .6rem;gap:.3rem}
.foot__kontakt li{line-height:1.4}
.foot__meta{margin:0 0 .45rem}
.foot{margin-top:2.4rem}

/* Jobb alsó sarok: logó, évszám, alatta a Microsoft-jelvény. */
.foot__col--logo{gap:.3rem}
.foot__col--logo .foot__badge{width:132px;margin-top:.8rem;align-self:flex-end}
@media (max-width:720px){
  .foot__col--logo .foot__badge{align-self:flex-start}
}

/* A lábléc fölötti CTA-sáv alacsonyabb. */
.foot-cta{padding-block:3.2rem}

/* A logó alatt már nincs se szlogen, se évszám — a jelvény közvetlenül
   a logóhoz igazodik. (.foot__tag / .foot__since a markupból kikerült.) */
.foot__col--logo .foot__badge{margin-top:1rem}

/* ── Lábléc-navigáció: egy lista, két egyenlő magasságú hasábban ──────
   Két külön oszlop volt két fejléccel; együtt „Navigáció”, és a böngésző
   osztja el a linkeket. A column-count fentről lefelé tölt, majd ugrik a
   második hasábra — a két hasáb magassága így magától kiegyenlítődik.  */
.foot__list--ket{
  column-count:2;column-gap:2.2rem;
}
.foot__list--ket li{break-inside:avoid;-webkit-column-break-inside:avoid}
.foot__col--nav{min-width:22rem;flex:1 1 22rem}
@media (max-width:720px){
  .foot__col--nav{min-width:0;flex:1 1 100%}
  .foot__list--ket{column-gap:1.4rem}
}

/* ── Térkép: ne csússzon a fejléc alá görgetéskor ─────────────────────
   A Leaflet saját rétegszámai magasak (a nagyító- és jelmagyarázat-sáv
   z-index:1000, a buborék 700), a fix fejléc viszont 60-on ül — így a
   térkép fölécsúszott. A megoldás nem a számok licitálása, hanem hogy a
   doboz SAJÁT rétegkörnyezetet nyit: a position+z-index páros ezt teszi,
   és ettől a benne lévő 1000-es elemek is a dobozon belül maradnak,
   vagyis a fejléc alatt. */
.map-box{position:relative;z-index:0}

/* ── A cián sáv keret nélkül, és a lábléc hozzáér ─────────────────────
   Két dolog rakódott egymásra a sáv alján: a .sav--cian 2 px-es cián
   kerete, alatta pedig a lábléc felső margója, ami a fehér oldalháttért
   villantotta ki. Így a színes sáv és a sötét „Dolgozzunk együtt!” közé
   egy kék vonal + egy fehér csík ékelődött — véletlennek látszott.
   A sáv saját háttérszíne épp elég elválasztás, a lábléc pedig
   közvetlenül a tartalomhoz csatlakozik. */
.sav--cian{border-top:0;border-bottom:0}
.foot{margin-top:0}
