:root{
  --kek:#0056b3; --kek-sotet:#00408a; --kek-melysotet:#0B3D73;
  --fejlec:#1F6FC9; --fejlec-sotet:#1A5EAC;
  --kek-vilagos:#EAF2FB; --kek-halvany:#BBD7F5;
  --turkiz:#00A99D;
  --zold:#12833F; --zold-sotet:#0D6B32;
  --szoveg:#232326; --szoveg-halk:#565A62; --vonal:#E2E8F0;
  --lap:#EDF2F8; --sziget:#FFFFFF;
  --max:1080px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  font-size:18px; font-weight:450; line-height:1.7; color:var(--szoveg);
  background:var(--lap); padding-bottom:78px;
}
.wrap{max-width:var(--max);margin:0 auto;padding:0 14px}
a{color:var(--kek);text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%;height:auto;display:block}

/* ---- fejlec ---- */
.fej{background:var(--fejlec);position:sticky;top:0;z-index:60;
     box-shadow:0 1px 6px rgba(6,43,79,.22)}
.fej .wrap{display:flex;align-items:center;justify-content:space-between;min-height:62px;gap:12px}
.marka{display:flex;align-items:center}
.marka img{width:200px;height:auto;display:block}
.menugomb{background:none;border:0;color:#fff;font-size:28px;line-height:1;cursor:pointer;padding:6px 4px}
@media(min-width:960px){.menugomb{display:none}}
nav ul{list-style:none;display:flex;gap:18px;flex-wrap:wrap}
nav a{color:#fff;font-size:14.5px;padding:6px 0;display:block;letter-spacing:.2px}
nav a:hover,nav a[aria-current="page"]{color:var(--kek-halvany);text-decoration:none}
@media(max-width:959px){
  nav{display:none;position:absolute;top:62px;left:0;right:0;background:#fff;
      padding:8px 14px 14px;max-height:calc(100vh - 62px);overflow-y:auto;
      box-shadow:0 8px 20px rgba(6,43,79,.2)}
  nav.nyit{display:block}
  nav ul{flex-direction:column;gap:8px}
  nav a{color:var(--szoveg);font-size:16.5px;padding:14px 14px;background:var(--kek-vilagos);
        border-left:5px solid var(--kek);border-radius:8px}
  nav a[aria-current="page"]{color:var(--kek-sotet);font-weight:700}
}
body.menu-nyit .hivosav{display:none}

/* ---- morzsa ---- */
.morzsa{font-size:14.5px;color:var(--szoveg-halk);padding:14px 0 0}
.morzsa a{text-decoration:underline;text-underline-offset:.16em;text-decoration-thickness:.075em}

/* ---- szigetek ---- */
main{display:block}
.sziget{
  background:var(--sziget);border-radius:18px;padding:22px 20px;margin:16px 0;
  box-shadow:0 1px 3px rgba(6,43,79,.08);border-top:4px solid var(--kek);
  overflow-wrap:anywhere;
}
.sziget h1{font-size:27px;font-weight:800;line-height:1.28;margin:0 0 12px}
.sziget h2{font-size:22px;font-weight:800;line-height:1.35;margin:26px 0 10px}
.sziget h3{font-size:19px;font-weight:700;line-height:1.4;margin:22px 0 8px}
.sziget h2:first-child,.sziget h3:first-child{margin-top:0}
.sziget p{margin:0 0 14px}
.sziget ul,.sziget ol{margin:0 0 16px;padding-left:22px}
.sziget li{margin:0 0 8px}
.sziget hr{border:0;border-top:1px solid var(--vonal);margin:22px 0}
.sziget blockquote{background:var(--kek-vilagos);border-left:5px solid var(--kek);
  border-radius:0 10px 10px 0;padding:14px 16px;margin:0 0 16px}
.sziget blockquote p:last-child{margin-bottom:0}
.sziget table{width:100%;border-collapse:collapse;font-size:16px;margin:0 0 16px}
.sziget th,.sziget td{border:1px solid var(--vonal);padding:9px 10px;text-align:left;vertical-align:top}
.sziget th{background:var(--kek-vilagos);font-weight:700}
.sziget figure{margin:0 0 16px}
.sziget figure img{border-radius:12px;margin:0 auto}
.sziget figcaption{font-size:15px;color:var(--szoveg-halk);text-align:center;margin-top:6px}
/* prozai linkek alahuzva - akadalymentesites */
.sziget p a,.sziget li a,.sziget td a{
  text-decoration:underline;text-underline-offset:.16em;text-decoration-thickness:.075em;
}

/* galeria */
.wp-block-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));
  gap:12px;list-style:none;padding:0}
.wp-block-gallery figure{margin:0}
.wp-block-gallery img{border-radius:10px}

/* ---- letolto kartya ---- */
.letolt{display:flex;align-items:center;gap:12px;background:var(--kek-vilagos);
  border:1px solid var(--kek-halvany);border-radius:12px;padding:13px 15px;margin:0 0 12px}
.letolt a{font-weight:700;text-decoration:none}
.letolt .meret{font-size:14.5px;color:var(--szoveg-halk)}
.letolt.hianyzik{background:#F5F6F8;border-color:var(--vonal);color:var(--szoveg-halk)}

/* ---- gombok ---- */
.gomb{display:inline-block;background:var(--kek);color:#fff;font-weight:700;font-size:17px;
  padding:16px 22px;border-radius:12px;min-height:56px;text-decoration:none;line-height:1.4}
.gomb:hover{background:var(--kek-sotet);text-decoration:none;color:#fff}
.gomb-zold{background:var(--zold)}
.gomb-zold:hover{background:var(--zold-sotet)}

/* ---- lebego hivosav ---- */
.hivosav{position:fixed;left:14px;right:14px;bottom:14px;z-index:70;background:var(--zold);
  padding:11px 18px;text-align:center;border-radius:14px;box-shadow:0 3px 12px rgba(0,0,0,.16)}
.hivosav a{color:#fff;font-weight:800;text-decoration:none;display:block;
  letter-spacing:.2px;white-space:nowrap;font-size:clamp(16px,4.4vw,19px)}
@media(max-width:400px){.hivosav{padding:13px 10px}}

/* ---- lablec ---- */
.lab{background:var(--kek-melysotet);color:#C9D8E8;margin-top:26px;padding:26px 0 22px;font-size:15.5px}
.lab .wrap{display:grid;gap:18px}
@media(min-width:760px){.lab .wrap{grid-template-columns:1fr 1fr}}
.lab img.logo{width:220px;height:auto;opacity:.95}
.lab a{color:#fff;text-decoration:underline;text-underline-offset:.16em}
.lab .jog{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.16);padding-top:14px;
  font-size:13.5px;color:#A9BED4;line-height:1.6}
.lab .jog a{color:#C9D8E8}

/* ---- mobil finomitas: az orokolt inline stilusok fekentartasa ---- */
.nowrap{white-space:nowrap}
.sziget a[href^="tel:"],main a[href^="tel:"]{display:inline-block;max-width:100%}
@media(max-width:600px){
  .sziget{padding:16px 13px}
  .sziget h1,main h1{font-size:24px !important;line-height:1.3 !important}
  .sziget h2,main h2{font-size:20px !important}
  .sziget h3,main h3{font-size:18px !important}
  /* a tartalomban orokolt "min-width:280px" dobozok ne loghassanak ki */
  /* a flex-kartyak mobilon EGYMAS ALA kerulnek, nem szorulnak oszlopokba */
  main div[style*="flex: 1"]{flex:1 1 100% !important;min-width:100% !important}
  main div[style*="display: flex"]{gap:12px !important}
  main div[style*="padding: 40px"]{padding:24px 14px !important}
  main div[style*="padding: 25px"]{padding:18px 14px !important}
  main a[style*="padding: 15px 30px"]{padding:15px 16px !important;font-size:16px !important}
  main a[href^="tel:"]{font-size:16px !important;padding-left:14px !important;padding-right:14px !important}
  main [style*="max-width: 1100px"]{margin:16px auto !important;padding:0 !important}
  main img[style*="width:461px"],main figure img{width:100% !important;height:auto !important;margin:0 auto}
}
/* semmi ne loghasson ki oldalra */
main img,main table,main pre{max-width:100%}
main{overflow-wrap:break-word}

/* beagyazott video (YouTube) mobilon */
main iframe{width:100%;max-width:100%;height:auto;aspect-ratio:16/9;border:0;display:block}

/* kepek soha ne loghassanak ki a kartyabol */
main figure,main .wp-block-image{max-width:100%}
main figure img,main .wp-block-image img{max-width:100%;height:auto}

/* ---- markacsempek (kereszthivatkozasok) ---- */
.csempek h2{font-size:20px;margin:0 0 6px}
.csempek>p{font-size:16px;color:var(--szoveg-halk);margin:0 0 14px}
.csempe-racs{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:11px}
.csempe{
  display:block;background:var(--sziget);border:1px solid var(--vonal);
  border-top:4px solid var(--csik,var(--kek));border-radius:12px;
  padding:14px 13px;text-decoration:none;color:var(--szoveg);
  transition:box-shadow .15s,transform .15s;min-height:74px;
}
.csempe:hover{text-decoration:none;box-shadow:0 4px 12px rgba(6,43,79,.13);transform:translateY(-1px)}
.cs-nev{display:block;font-weight:800;font-size:17px;color:var(--betu,var(--kek));line-height:1.3}
.cs-alcim{display:block;font-size:14.5px;color:var(--szoveg-halk);margin-top:2px}
@media(max-width:420px){
  .csempe-racs{grid-template-columns:1fr 1fr;gap:9px}
  .csempe{padding:12px 11px;min-height:68px}
  .cs-nev{font-size:16px}
  .cs-alcim{font-size:13.5px}
}
