:root{
  --sarga:#F5C400; --sarga-melyt:#B08400; --sarga-halvany:#FFF9E3;
  --zold:#12833F; --zold-sotet:#0D6B32;
  --szoveg:#1F1F1D; --szoveg-halk:#54544E; --vonal:#E4E1D6;
  --lap:#F2F1EC; --sziget:#FFFFFF;
  --max:1060px;
}
*{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; line-height:1.72; color:var(--szoveg); background:var(--lap);
  font-weight:450; padding-bottom:88px;
}
.wrap{max-width:var(--max);margin:0 auto;padding:0 13px}
a{color:#8A6A00;text-decoration:none;font-weight:600}
a:hover{text-decoration:underline}
img{max-width:100%;height:auto;display:block}

/* ---- fejlec: VILAGOS ---- */
.fej{background:#33332C;position:sticky;top:0;z-index:50;border-bottom:4px solid var(--sarga);
     box-shadow:0 1px 8px rgba(31,31,29,.14)}
.fej .wrap{display:flex;align-items:center;justify-content:space-between;min-height:66px;gap:12px}
.logo{color:#fff;font-size:22px;font-weight:800;letter-spacing:-.3px}
.logo:hover{text-decoration:none;color:#fff}
.logo span{color:var(--sarga);font-weight:700}
.menugomb{background:var(--sarga);border:0;color:#1F1F1D;font-size:24px;line-height:1;
  cursor:pointer;padding:9px 13px;border-radius:10px;font-weight:700}
@media(min-width:900px){.menugomb{display:none}}
nav ul{list-style:none;display:flex;gap:22px}
nav a{color:#fff;font-size:16px;font-weight:600;padding:6px 0;display:block}
nav a:hover,nav a[aria-current="page"]{color:var(--sarga);text-decoration:none}

/* ---- mobil menu: VILAGOS CSEMPEK ---- */
@media(max-width:899px){
  nav{display:none;position:absolute;top:66px;left:0;right:0;background:#fff;
      padding:12px 13px 16px;box-shadow:0 8px 20px rgba(31,31,29,.16);border-bottom:1px solid var(--vonal)}
  nav.nyit{display:block}
  nav ul{flex-direction:column;gap:9px}
  nav a{
    background:#FAF9F5;border:1px solid var(--vonal);border-left:5px solid var(--sarga);
    border-radius:11px;padding:16px 16px;font-size:18px;font-weight:700;
    min-height:56px;display:flex;align-items:center;color:var(--szoveg);
  }
  nav a[aria-current="page"]{background:var(--sarga-halvany);border-color:var(--sarga);color:var(--szoveg)}
}

/* ---- szigetek ---- */
.sziget{
  background:var(--sziget); border-radius:18px; padding:24px 19px;
  margin:15px 0; box-shadow:0 1px 4px rgba(31,31,29,.07);
  border-top:4px solid var(--sarga);
}
@media(min-width:700px){.sziget{padding:32px 34px;margin:20px 0}}
.sziget:first-child{margin-top:16px}
.sziget.hero{background:var(--sarga-halvany);border:1px solid #EFE2B0;border-top:4px solid var(--sarga)}
.sziget.hero h1{font-size:28px;line-height:1.22;font-weight:800;letter-spacing:-.5px}
.sziget.hero .alcim{color:#4A4A44;font-size:17.5px;margin-top:10px;font-weight:700}
.sziget.hero p{margin-top:13px;max-width:60ch}
@media(min-width:700px){.sziget.hero h1{font-size:36px}}
.sziget.kiemelt{background:#26261F}
.sziget.kiemelt h2{color:#fff}
.sziget.kiemelt p{color:#D6D3C6}
.sziget.kiemelt a{color:#fff}
.sziget.kiemelt .tel{font-size:32px;font-weight:800;color:#fff;display:block;margin:9px 0 5px;letter-spacing:-.5px}
.sziget.kiemelt .tel:hover{text-decoration:none;color:var(--sarga)}

h2{font-size:23px;margin:0 0 14px;line-height:1.28;font-weight:800;letter-spacing:-.3px}
h3{font-size:19px;color:#3A3A34;margin:0 0 8px;font-weight:700}
p{margin-bottom:14px;max-width:66ch}
p:last-child{margin-bottom:0}
.sziget ul,.sziget ol{margin:0 0 15px 22px}
.sziget li{margin-bottom:10px}
.sziget ul:last-child,.sziget ol:last-child{margin-bottom:0}
strong,b{font-weight:700}

.jelveny{display:inline-block;background:var(--sarga);color:#1F1F1D;font-size:13px;
  font-weight:800;padding:5px 13px;border-radius:6px;letter-spacing:.5px;margin-bottom:12px}

/* ---- gombok: NAGYOBB ---- */
.gombsor{display:flex;flex-wrap:wrap;gap:11px;margin-top:22px}
.gomb{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  background:var(--zold);color:#fff;font-size:19px;font-weight:700;
  padding:18px 28px;border-radius:13px;min-height:62px;
  box-shadow:0 3px 8px rgba(18,131,63,.26);
}
.gomb:hover{background:var(--zold-sotet);text-decoration:none;color:#fff}
.gomb.masodlagos{background:#fff;color:var(--szoveg);border:2px solid var(--sarga);box-shadow:none}
.gomb.masodlagos:hover{background:var(--sarga-halvany);color:var(--szoveg)}
@media(max-width:560px){.gomb{width:100%}}

/* ---- csempek ---- */
.racs{display:grid;gap:14px;grid-template-columns:1fr;margin:20px 0 0}
@media(min-width:720px){.racs{grid-template-columns:repeat(3,1fr)}}
.kartya{border:1px solid var(--vonal);border-left:5px solid var(--sarga);
  border-radius:13px;padding:20px;background:#FAF9F5}
.kartya h3{margin-bottom:6px;font-size:18px}
.kartya p{font-size:16px;color:var(--szoveg-halk);margin-bottom:0}

/* ---- letoltok ---- */
.letoltok{display:grid;gap:13px;grid-template-columns:1fr;margin:20px 0 0}
@media(min-width:720px){.letoltok{grid-template-columns:repeat(2,1fr)}}
.letolt{
  display:flex;align-items:center;gap:15px;border:1px solid var(--vonal);
  border-left:5px solid var(--sarga);border-radius:13px;padding:18px;
  background:#FAF9F5;color:inherit;min-height:82px;font-weight:450;
}
.letolt:hover{background:var(--sarga-halvany);text-decoration:none}
.letolt .ikon{flex:0 0 52px;height:52px;border-radius:12px;background:var(--sarga);
  color:#1F1F1D;display:flex;align-items:center;justify-content:center;
  font-size:13px;font-weight:800;letter-spacing:.5px}
.letolt .nev{font-weight:700;font-size:17px;line-height:1.35;display:block;color:var(--szoveg)}
.letolt .meta{font-size:14.5px;color:var(--szoveg-halk);margin-top:4px;display:block;font-weight:450}

/* ---- tablazat ---- */
.tablabur{overflow-x:auto;margin:18px 0 0;border-radius:13px;border:1px solid var(--vonal)}
table{border-collapse:collapse;width:100%;font-size:17px;min-width:320px;background:#fff}
th,td{border-bottom:1px solid var(--vonal);padding:14px 15px;text-align:left;vertical-align:top}
tr:last-child th,tr:last-child td{border-bottom:0}
thead th{background:var(--sarga-halvany);font-weight:700}
tbody th{background:#FAF9F5;font-weight:700;width:40%}

figure{margin:20px 0 0;border-radius:14px;overflow:hidden}

/* ---- telepuleslista ---- */
.telepulesek{columns:2;column-gap:20px;font-size:16px;line-height:1.95;
  color:var(--szoveg-halk);margin-top:14px;font-weight:450}
@media(min-width:700px){.telepulesek{columns:4}}
.telepulesek span{display:block;break-inside:avoid}

/* ---- lebego hivogomb ---- */
body.menu-nyit .hivo{display:none}
.hivo{
  position:fixed;left:0;right:0;bottom:0;z-index:60;
  background:var(--zold);color:#fff;text-align:center;
  font-size:21px;font-weight:800;padding:20px 12px;
  box-shadow:0 -3px 18px rgba(31,31,29,.24);letter-spacing:.2px;
}
.hivo:hover{background:var(--zold-sotet);color:#fff;text-decoration:none}
@media(min-width:900px){
  .hivo{left:auto;right:24px;bottom:24px;border-radius:48px;padding:17px 34px;font-size:19px;
        box-shadow:0 8px 26px rgba(31,31,29,.28)}
  body{padding-bottom:0}
}

/* ---- lablec ---- */
footer{background:#26261F;color:#C6C3B6;padding:32px 0 36px;font-size:16px;margin-top:18px}
footer a{color:#fff}
footer .cim{color:#fff;font-weight:700;margin-bottom:8px;font-size:18px}
footer .sor{margin-bottom:6px}
footer .aprobetu{margin-top:18px;font-size:14.5px;color:#93907F;
  border-top:1px solid rgba(255,255,255,.16);padding-top:15px;font-weight:450}
.morzsa{font-size:15px;color:var(--szoveg-halk);margin:16px 0 0;padding:0 6px;font-weight:500}
.morzsa a{color:var(--szoveg-halk);font-weight:500}

/* nyitott mobil menu: a hatter ne gorduljon */
@media(max-width:899px){
  body.menu-nyit{overflow:hidden;position:fixed;width:100%}
  nav.nyit{max-height:calc(100vh - 70px);overflow-y:auto;-webkit-overflow-scrolling:touch}
}

/* ---- kepek ---- */
.kepek{display:grid;gap:14px;grid-template-columns:1fr;margin:20px 0}
@media(min-width:600px){.kepek{grid-template-columns:repeat(2,1fr)}}
.kep{border:1px solid var(--vonal);border-radius:13px;overflow:hidden;background:#fff;margin:0}
.kep img{width:100%;height:auto}
.kep .alairas{padding:12px 15px;font-size:15.5px;color:var(--szoveg-halk);
  border-top:1px solid var(--vonal);background:#FAF9F5;font-weight:500}
.egykep{border:1px solid var(--vonal);border-radius:13px;overflow:hidden;
  background:#fff;margin:20px 0;max-width:520px}
.egykep img{width:100%;height:auto}
