/* AD Nyomda – új, saját főoldal (reszponzív, Wix-mentes). Színek az eredeti oldalról:
   korall #d86862, mély barna #823c2e, krém-rózsaszín #f4e3dc, porrózsa #c19e97, ködkék #e0e5e6. */
:root {
  --korall: #d86862; --korall-s: #c4524c; --korall-v: #fbe9e6;
  --barna: #823c2e; --barna-m: #5a2a20; --barna-mm: #3f1d16;
  --pezsgo: #f4e3dc; --rozsa: #c19e97; --kod: #e0e5e6; --krem: #fcf8f5;
  --tinta: #2b1a15; --halk: #6f5a54; --vonal: #ead9d2;
  --sugar: 24px; --sugar-k: 14px;
  --arnyek: 0 1px 2px rgb(90 42 32 / .06), 0 14px 34px -10px rgb(90 42 32 / .22);
  --arnyek-n: 0 2px 4px rgb(90 42 32 / .08), 0 28px 60px -18px rgb(90 42 32 / .35);
  --szoveg: Madefor, "Segoe UI", system-ui, -apple-system, Roboto, Arial, sans-serif;
  --cim: Roboto, "Segoe UI", system-ui, -apple-system, Arial, sans-serif;
  --fej: 72px;
}
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: calc(var(--fej) + 12px); -webkit-text-size-adjust: 100%; }
body { margin: 0; font-family: var(--szoveg); font-size: 17px; line-height: 1.6; color: var(--tinta); background: var(--krem); -webkit-font-smoothing: antialiased; overflow-x: hidden; }
body.zarolt { overflow: hidden; }
img, svg, video { display: block; max-width: 100%; }
img { height: auto; }
a { color: inherit; }
h1, h2, h3, p, ul, ol { margin: 0; }
ul { padding: 0; list-style: none; }
button, input, select, textarea { font: inherit; color: inherit; }
:focus-visible { outline: 3px solid var(--korall); outline-offset: 3px; border-radius: 6px; }
.ic { width: 1.25em; height: 1.25em; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; flex: none; }
.ic.tomor { fill: currentColor; stroke: none; }
.csak-olvaso { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.ugras { position: absolute; left: 12px; top: -60px; z-index: 200; background: var(--tinta); color: #fff; padding: 10px 16px; border-radius: 10px; text-decoration: none; }
.ugras:focus { top: 12px; }

.tarolo { width: 100%; max-width: 1180px; margin-inline: auto; padding-inline: 24px; }
.szakasz { padding-block: 96px; position: relative; }
.szakasz__cim::before { content: ""; display: block; width: 54px; height: 5px; border-radius: 5px; margin: 0 auto 18px; background: linear-gradient(90deg, var(--korall), var(--barna)); }
.szakasz__cim { font-family: var(--cim); font-weight: 700; font-size: clamp(28px, 3.6vw, 42px); line-height: 1.15; letter-spacing: -.02em; text-align: center; text-wrap: balance; max-width: 22ch; margin-inline: auto; }
.szakasz__cim--szeles { max-width: 30ch; }
.alcim { text-align: center; color: var(--halk); max-width: 60ch; margin: 16px auto 0; text-wrap: balance; }

/* gombok */
.gomb { display: inline-flex; align-items: center; justify-content: center; gap: .6em; min-height: 52px; padding: 0 28px; border: 0; border-radius: 999px; background: linear-gradient(135deg, #e07a73 0%, var(--korall) 55%, #cf5b55 100%); color: #fff; font-weight: 600; font-size: 16px; text-decoration: none; cursor: pointer; box-shadow: 0 10px 24px -10px rgb(216 104 98 / .9); transition: transform .2s, box-shadow .2s, background .2s; text-align: center; white-space: nowrap; }
.gomb:hover { background: linear-gradient(135deg, #d9645d 0%, var(--korall-s) 100%); transform: translateY(-2px); box-shadow: 0 16px 28px -12px rgb(216 104 98 / .9); }
.gomb:active { transform: translateY(0); }
.gomb--ures { background: #fff; color: var(--korall-s); box-shadow: inset 0 0 0 1.5px var(--korall); }
.gomb--ures:hover { background: var(--korall-v); box-shadow: inset 0 0 0 1.5px var(--korall); }
.gomb--feher { background: #fff; color: var(--barna); box-shadow: 0 12px 26px -12px rgb(0 0 0 / .5); }
.gomb--feher:hover { background: var(--pezsgo); }
.gomb--teljes { width: 100%; }
.gomb--kicsi { min-height: 44px; padding: 0 22px; font-size: 15px; }
.nyil { transition: transform .2s; }
.gomb:hover .nyil, .link-nyil:hover .nyil { transform: translateX(4px); }
.link-nyil { display: inline-flex; align-items: center; gap: .4em; color: var(--korall-s); font-weight: 600; text-decoration: none; }
.link-nyil:hover { text-decoration: underline; text-underline-offset: 4px; }

/* fejléc */
.fejlec { position: sticky; top: 0; z-index: 50; height: var(--fej); background: rgb(255 255 255 / .86); -webkit-backdrop-filter: saturate(1.4) blur(14px); backdrop-filter: saturate(1.4) blur(14px); border-bottom: 1px solid rgb(234 217 210 / .7); }
.fejlec__be { height: 100%; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.logo { display: block; flex: none; }
.logo img { height: 52px; width: auto; }
.fejlec__tel { display: flex; align-items: center; gap: .6em; font-size: 16px; color: var(--halk); }
.telpill { display: inline-flex; align-items: center; gap: 9px; padding: 5px 16px 5px 5px; border-radius: 999px; background: #fff; border: 1px solid var(--vonal); color: var(--tinta); font-weight: 700; text-decoration: none; box-shadow: 0 6px 16px -10px rgb(90 42 32 / .5); transition: border-color .2s, box-shadow .2s, transform .2s; }
.telpill:hover { border-color: var(--korall); box-shadow: 0 10px 22px -10px rgb(216 104 98 / .7); transform: translateY(-1px); }
.telpill__ikon { width: 32px; height: 32px; border-radius: 50%; display: grid; place-items: center; background: linear-gradient(145deg, #e07a73, var(--korall-s)); color: #fff; position: relative; }
.telpill__ikon::after { content: ""; position: absolute; inset: 0; border-radius: 50%; border: 2px solid var(--korall); opacity: 0; animation: gyuru 2.8s ease-out infinite; }
.telpill__ikon .ic { width: 16px; height: 16px; }
@keyframes gyuru { 0% { transform: scale(1); opacity: .55; } 70%, 100% { transform: scale(1.7); opacity: 0; } }
.fejlec__jobb { display: flex; align-items: center; gap: 12px; }
.fejlec__gomb { display: none; min-height: 42px; padding: 0 18px; font-size: 15px; }
.menugomb { width: 48px; height: 48px; border: 0; border-radius: 50%; background: transparent; cursor: pointer; display: grid; place-items: center; transition: background .2s; }
.menugomb:hover { background: var(--pezsgo); }
.menugomb__vonal { display: block; width: 24px; height: 2px; background: var(--tinta); border-radius: 2px; position: relative; }
.menugomb__vonal::before, .menugomb__vonal::after { content: ""; position: absolute; left: 0; width: 24px; height: 2px; background: var(--tinta); border-radius: 2px; }
.menugomb__vonal::before { top: -7px; }
.menugomb__vonal::after { top: 7px; }

/* menü */
.menu { position: fixed; inset: 0; z-index: 100; visibility: hidden; pointer-events: none; }
.menu.nyitva { visibility: visible; pointer-events: auto; }
.menu__fed { position: absolute; inset: 0; background: rgb(43 26 21 / .55); -webkit-backdrop-filter: blur(3px); backdrop-filter: blur(3px); opacity: 0; transition: opacity .3s; }
.menu.nyitva .menu__fed { opacity: 1; }
.menu__panel { position: absolute; top: 0; right: 0; bottom: 0; width: min(420px, 100%); background: linear-gradient(165deg, var(--barna) 0%, var(--barna-m) 100%); color: #fff; padding: 22px 32px 32px; display: flex; flex-direction: column; transform: translateX(100%); transition: transform .38s cubic-bezier(.2, .8, .2, 1); box-shadow: -30px 0 60px -20px rgb(0 0 0 / .5); overflow-y: auto; }
.menu.nyitva .menu__panel { transform: none; }
.menu__fej { display: flex; justify-content: flex-end; height: 52px; }
.menu__zar { width: 48px; height: 48px; border: 0; border-radius: 50%; background: rgb(255 255 255 / .1); color: #fff; cursor: pointer; display: grid; place-items: center; transition: background .2s; }
.menu__zar:hover { background: rgb(255 255 255 / .2); }
.menu__lista { margin-top: 28px; display: grid; gap: 4px; }
.menu__lista a { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 4px; font-size: 22px; font-weight: 500; text-decoration: none; border-bottom: 1px solid rgb(255 255 255 / .14); color: rgb(255 255 255 / .86); transition: color .2s, padding .2s; }
.menu__lista a:hover { color: #fff; padding-left: 12px; }
.menu__lista a[aria-current="page"] { color: #fff; }
.menu__lista a[aria-current="page"]::after { content: ""; width: 9px; height: 9px; border-radius: 50%; background: var(--korall); box-shadow: 0 0 0 4px rgb(216 104 98 / .3); }
.menu__als { margin-top: auto; padding-top: 32px; display: grid; gap: 18px; }
.menu__tel { display: flex; align-items: center; gap: .6em; color: rgb(255 255 255 / .86); text-decoration: none; font-size: 18px; }
.menu__tel strong { color: #fff; }

/* menü: termékkategóriák */
.menu__kat { padding-top: 14px; }
.menu__cimke { display: block; padding: 6px 4px 2px; font-size: 12.5px; letter-spacing: .12em; text-transform: uppercase; font-weight: 700; color: var(--rozsa); }
.menu__al { display: grid; }
.menu__lista .menu__al a { font-size: 17.5px; padding: 11px 4px 11px 14px; font-weight: 400; border-bottom: 1px solid rgb(255 255 255 / .1); }
.menu__lista .menu__al a:hover { padding-left: 22px; }
@media (min-width: 721px) {
  .menu__kat { padding-top: 10px; }
  .menu__al { gap: 2px; }
  .menu__lista .menu__al a { background: transparent; border-radius: 12px; padding: 10px 14px; font-size: 17.5px; border-bottom: 0; }
  .menu__lista .menu__al a:hover { background: rgb(255 255 255 / .1); padding-left: 18px; transform: none; }
  .menu__lista .menu__al a[aria-current="page"] { background: rgb(255 255 255 / .14); }
}

/* hős */
.hos { position: relative; overflow: hidden; background: radial-gradient(900px 500px at 8% 10%, #fff 0%, transparent 60%), linear-gradient(135deg, #fff 0%, var(--krem) 45%, var(--pezsgo) 100%); }
.hos::before { content: ""; position: absolute; width: 520px; height: 520px; right: -140px; top: -160px; border-radius: 50%; background: radial-gradient(circle, rgb(216 104 98 / .22), transparent 68%); pointer-events: none; }
.hos__racs { display: grid; grid-template-columns: 1.02fr .98fr; gap: 56px; align-items: stretch; padding-block: 64px 80px; position: relative; }
.hos__bal { align-self: center; }
.hos h1 { font-family: var(--cim); font-weight: 700; font-size: clamp(36px, 4.6vw, 58px); line-height: 1.07; letter-spacing: -.03em; text-wrap: balance; }
.hos h1 em { display: block; font-style: normal; color: var(--korall-s); background: linear-gradient(100deg, var(--korall) 0%, var(--barna) 100%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; -webkit-box-decoration-break: clone; box-decoration-break: clone; }
.hos__szoveg { margin-top: 24px; font-size: 19px; max-width: 34em; color: #4a3630; text-wrap: pretty; }
.hos__gombok { margin-top: 32px; display: flex; flex-wrap: wrap; gap: 14px; }
.elonyok { margin-top: 36px; display: grid; grid-template-columns: 1fr 1fr; gap: 14px 24px; }
.elonyok li { display: flex; align-items: center; gap: 12px; font-size: 15.5px; font-weight: 500; }
.elonyok .ikon { width: 40px; height: 40px; border-radius: 12px; background: var(--korall-v); color: var(--korall-s); display: grid; place-items: center; flex: none; }
.hos__kep { position: relative; min-height: 360px; }
.hos__kep img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 30%; border-radius: 150px 30px 30px 30px; box-shadow: var(--arnyek-n); }
.csillagok { display: inline-flex; gap: 2px; color: #f5b301; vertical-align: middle; }
.csillagok .ic { width: 16px; height: 16px; }

/* bizalmi sáv */
.bizalom { position: relative; z-index: 2; margin-top: -34px; padding-bottom: 0; }
.bizalom__kartya { background: #fff; border-radius: 28px; padding: 26px 30px 30px; box-shadow: var(--arnyek-n); border: 1px solid var(--vonal); }
.bizalom__fent { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 24px; }
.bizalom__fent .g { display: flex; align-items: center; gap: 14px; font-size: 17px; }
.g__kor { display: block; flex: none; line-height: 0; }
.g__kor img { width: 30px; height: auto; }
.g__szoveg { line-height: 1.4; white-space: nowrap; }
.bizalom__fent .link-nyil { padding: 9px 18px; border-radius: 999px; background: var(--korall-v); font-size: 15px; transition: background .2s; }
.bizalom__fent .link-nyil:hover { background: #f8d6d2; text-decoration: none; }
.logok { margin-top: 24px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 18px 28px; }
.logok li { display: block; }
.logok img { height: 38px; width: auto; opacity: .62; filter: grayscale(1); transition: opacity .25s, filter .25s; }
.logok img:hover { opacity: 1; filter: none; }

.bevezeto { background: #fff; margin-top: -34px; padding-top: 130px; }
.bevezeto__racs { margin-top: 48px; display: grid; grid-template-columns: .9fr 1.1fr; gap: 64px; align-items: stretch; max-width: 1000px; margin-inline: auto; }
.arckep { position: relative; min-height: 320px; }
.arckep img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 25%; border-radius: 30px 130px 30px 30px; box-shadow: var(--arnyek); }
.bevezeto__szoveg { font-size: 19px; display: grid; gap: 20px; text-wrap: pretty; align-content: center; }
.bevezeto__szoveg q { font-style: italic; quotes: "„" "”"; }
.alairas { font-style: italic; color: var(--halk); font-size: 17px; }

/* termékek */
.termekek { background: linear-gradient(170deg, #ecd5ce 0%, #d9b5ad 48%, #c9a198 100%); }
.termekek .szakasz__cim { color: var(--barna-mm); }
.rac3 { margin-top: 56px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; }
.kartya { background: #fff; border-radius: var(--sugar); overflow: hidden; box-shadow: var(--arnyek); display: flex; flex-direction: column; transition: transform .3s, box-shadow .3s; }
.kartya:hover { transform: translateY(-6px); box-shadow: var(--arnyek-n); }
.kartya__kep { aspect-ratio: 300 / 204; overflow: hidden; background: var(--pezsgo); }
.kartya__kep img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s; }
.kartya:hover .kartya__kep img { transform: scale(1.05); }
.kartya__tartalom { padding: 26px 26px 28px; display: flex; flex-direction: column; flex: 1; text-align: center; }
.kartya h3 { font-family: var(--cim); font-weight: 700; font-size: 24px; letter-spacing: -.01em; }
.kartya__kiemel { margin-top: 6px; color: var(--korall-s); font-weight: 600; font-size: 15.5px; }
.kartya__leiras { margin-top: 6px; color: #5b4640; font-size: 15.5px; line-height: 1.55; }
.arak { margin: auto 0 22px; padding-top: 18px; display: grid; gap: 9px; }
.arak li { display: flex; align-items: baseline; justify-content: center; gap: 8px; padding: 11px 14px; border-radius: 999px; background: linear-gradient(180deg, #fbefe9, #f6e4dc); font-size: 15px; }
.arak li span { color: var(--halk); white-space: nowrap; }
.arak li span::after { content: " –"; }
.arak li b { font-size: 16px; font-variant-numeric: tabular-nums; }
.arak li b small { font-weight: 500; font-size: 12.5px; color: var(--halk); }
.kartya .gomb { margin-top: auto; min-height: 46px; font-size: 15px; }
/* vélemények (Trustindex) */
.velemenyek { background: linear-gradient(160deg, var(--barna) 0%, var(--barna-m) 60%, var(--barna-mm) 100%); color: var(--pezsgo); overflow: hidden; }
.velemenyek::before { content: ""; position: absolute; width: 640px; height: 640px; left: -220px; bottom: -340px; border-radius: 50%; background: radial-gradient(circle, rgb(216 104 98 / .28), transparent 68%); }
.velemenyek .szakasz__cim { color: var(--pezsgo); max-width: 26ch; }
.velemeny-doboz { position: relative; padding-block: 14px; margin-top: 44px; border-radius: 26px; overflow: hidden; background: #fff; box-shadow: 0 30px 70px -24px rgb(0 0 0 / .6); }
.velemeny-doboz iframe { display: block; width: 100%; height: 372px; border: 0; background: #fff; overflow: hidden; }

/* ajánlatkérés + űrlap */
.ajanlat { background: linear-gradient(135deg, var(--kod) 0%, #efe6e2 55%, var(--pezsgo) 100%); overflow: hidden; }
.ajanlat::before { content: ""; position: absolute; width: 560px; height: 560px; right: -200px; top: -240px; border-radius: 50%; background: radial-gradient(circle, rgb(216 104 98 / .2), transparent 68%); }
.ajanlat__racs { position: relative; display: grid; grid-template-columns: .85fr 1.15fr; gap: 64px; align-items: center; }
.ajanlat__bal h2 { font-family: var(--cim); font-weight: 700; font-size: clamp(30px, 3.8vw, 44px); line-height: 1.1; letter-spacing: -.02em; }
.ajanlat__bal p { margin-top: 18px; font-size: 18px; text-wrap: pretty; }
.hivas { margin-top: 22px; display: flex; align-items: center; gap: 14px; padding: 14px 18px; background: #fff; border-radius: 18px; box-shadow: var(--arnyek); width: fit-content; max-width: 100%; }
.hivas .ikon { width: 46px; height: 46px; border-radius: 50%; background: linear-gradient(145deg, #e07a73, var(--korall-s)); color: #fff; display: grid; place-items: center; flex: none; position: relative; box-shadow: 0 8px 18px -8px rgb(216 104 98 / .9); }
.hivas .ikon::after { content: ""; position: absolute; inset: 0; border-radius: 50%; border: 2px solid var(--korall); opacity: 0; animation: gyuru 2.8s ease-out infinite; }
.hivas small { display: block; font-size: 13px; color: var(--halk); line-height: 1.2; }
.hivas a { font-weight: 700; font-size: 20px; text-decoration: none; line-height: 1.3; }
.tulaj { margin-top: 30px; display: flex; align-items: center; gap: 20px; }
.tulaj img.portre { width: 120px; height: 120px; border-radius: 50%; object-fit: cover; border: 4px solid #fff; box-shadow: var(--arnyek); flex: none; }
.tulaj__szoveg { display: grid; justify-items: start; gap: 2px; }
.tulaj .alairas-kep { width: 124px; margin: 0 0 -2px -4px; }
.tulaj b { font-weight: 600; font-size: 17px; line-height: 1.3; }
.tulaj .jelveny { display: inline-flex; align-items: center; gap: 7px; font-weight: 500; font-size: 15px; color: var(--halk); line-height: 1.3; }
.tulaj .jelveny .ic { width: 18px; height: 18px; color: #2f9e5b; stroke-width: 3; }

.urlap-kartya { position: relative; background: #fff; border-radius: 30px; padding: 34px 36px 36px; box-shadow: var(--arnyek-n); }
.urlap-kartya::before { content: ""; position: absolute; left: 36px; right: 36px; top: 0; height: 5px; border-radius: 0 0 6px 6px; background: linear-gradient(90deg, var(--korall), var(--barna)); }
.urlap-kartya h3 { font-family: var(--cim); font-weight: 700; font-size: 27px; letter-spacing: -.015em; line-height: 1.2; }
.urlap-kartya .al { margin-top: 4px; color: var(--halk); font-size: 15px; }
.urlap { margin-top: 20px; display: grid; grid-template-columns: 1fr 1fr; gap: 14px 16px; }
.mezo { display: grid; gap: 6px; min-width: 0; align-content: start; }
.mezo--teljes { grid-column: 1 / -1; }
.mezo > label, .mezo > .cimke { font-size: 13.5px; font-weight: 600; color: #4a3630; }
.mezo > label i { color: var(--korall-s); font-style: normal; }
.mezo input[type="text"], .mezo input[type="email"], .mezo input[type="tel"], .mezo select, .mezo textarea { width: 100%; min-height: 48px; padding: 11px 14px; border: 1.5px solid var(--vonal); border-radius: 13px; background: var(--krem); transition: border-color .2s, box-shadow .2s, background .2s; font-size: 16px; }
.mezo textarea { min-height: 84px; resize: vertical; line-height: 1.45; }
.mezo select { appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23823c2e' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 14px center; padding-right: 40px; }
.mezo input:hover, .mezo select:hover, .mezo textarea:hover { border-color: #dcbfb5; }
.mezo input:focus, .mezo select:focus, .mezo textarea:focus { outline: none; background: #fff; border-color: var(--korall); box-shadow: 0 0 0 4px rgb(216 104 98 / .18); }
.mezo .hiba { display: none; font-size: 13px; color: #b3261e; font-weight: 500; }
.mezo.hibas input, .mezo.hibas select, .mezo.hibas textarea { border-color: #d6453d; background: #fff7f6; }
.mezo.hibas .hiba { display: block; }
.feltoltes { display: flex; align-items: center; gap: 14px; padding: 12px 14px; border: 1.5px dashed #d9b5ad; border-radius: 13px; background: var(--krem); cursor: pointer; transition: border-color .2s, background .2s; }
.feltoltes:hover, .feltoltes.huzas { border-color: var(--korall); background: var(--korall-v); }
.feltoltes input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.feltoltes:focus-within { box-shadow: 0 0 0 4px rgb(216 104 98 / .18); border-color: var(--korall); }
.feltoltes .ikon { width: 38px; height: 38px; border-radius: 11px; background: #fff; color: var(--korall-s); display: grid; place-items: center; flex: none; box-shadow: 0 2px 6px rgb(90 42 32 / .12); }
.feltoltes span { font-size: 14.5px; color: var(--halk); line-height: 1.35; }
.feltoltes span b { color: var(--tinta); font-weight: 600; }
.fajlok { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }
.fajlok:empty { display: none; }
.fajlok li { display: inline-flex; align-items: center; gap: 8px; padding: 5px 6px 5px 12px; background: var(--pezsgo); border-radius: 999px; font-size: 13.5px; max-width: 100%; }
.fajlok li span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 220px; }
.fajlok button { border: 0; background: rgb(130 60 46 / .14); color: var(--barna); width: 22px; height: 22px; border-radius: 50%; cursor: pointer; display: grid; place-items: center; padding: 0; }
.fajlok button:hover { background: rgb(130 60 46 / .28); }
.csapda { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.urlap__als { grid-column: 1 / -1; display: grid; gap: 10px; margin-top: 4px; }
.urlap__als .gomb { min-height: 56px; font-size: 17px; }
.urlap__als small { text-align: center; color: var(--halk); font-size: 13px; }
.urlap__uzenet { grid-column: 1 / -1; display: none; padding: 12px 16px; border-radius: 13px; background: #fdeceb; color: #8c1d18; font-size: 14.5px; }
.urlap__uzenet.latszik { display: block; }
.urlap__uzenet a { color: inherit; font-weight: 700; }
.gomb[disabled] { opacity: .75; cursor: progress; transform: none; }
.gomb .pergo { display: none; width: 18px; height: 18px; border: 2.5px solid rgb(255 255 255 / .4); border-top-color: #fff; border-radius: 50%; animation: forog .7s linear infinite; }
.kuldes .gomb .pergo { display: inline-block; }
@keyframes forog { to { transform: rotate(360deg); } }
.siker { display: none; text-align: center; padding: 28px 8px 20px; }
.kesz .siker { display: block; animation: fel .5s both; }
.urlap-kartya.kesz .urlap, .urlap-kartya.kesz > h3, .urlap-kartya.kesz > .al { display: none; }
.siker .nagy { width: 76px; height: 76px; margin: 0 auto 18px; border-radius: 50%; background: linear-gradient(145deg, #3fb877, #2f9e5b); color: #fff; display: grid; place-items: center; box-shadow: 0 14px 30px -10px rgb(47 158 91 / .8); }
.siker .nagy .ic { width: 38px; height: 38px; stroke-width: 3; }
.siker h3 { font-size: 28px; }
.siker p { margin-top: 10px; color: #5b4640; }
.siker .ujra { margin-top: 20px; }

/* videók */
.videok { background: linear-gradient(180deg, var(--pezsgo) 0%, #fbf0eb 100%); }
.videok .szakasz__cim { max-width: 28ch; }
.videok .rac3 { max-width: 1020px; margin-inline: auto; }
.velemeny-k { background: #fff; border-radius: 28px; padding: 18px 18px 26px; box-shadow: var(--arnyek); text-align: center; display: flex; flex-direction: column; }
.lejatszo { position: relative; border-radius: 20px; overflow: hidden; aspect-ratio: 9 / 16; background: #1d120e; }
.lejatszo > img, .lejatszo > video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.lejatszo__gomb { position: absolute; inset: 0; display: grid; place-items: center; border: 0; padding: 0; cursor: pointer; background: linear-gradient(180deg, rgb(0 0 0 / .32), rgb(0 0 0 / .05) 30%, rgb(0 0 0 / .05) 60%, rgb(0 0 0 / .42)); transition: background .3s; }
.lejatszo__gomb span { width: 68px; height: 68px; border-radius: 50%; background: rgb(255 255 255 / .94); color: var(--korall-s); display: grid; place-items: center; box-shadow: 0 10px 30px rgb(0 0 0 / .4); transition: transform .25s; }
.lejatszo__gomb span .ic { width: 28px; height: 28px; margin-left: 4px; }
.lejatszo__gomb:hover span { transform: scale(1.1); }
.velemeny-k .nev { margin-top: 18px; color: var(--halk); font-size: 18px; }
.velemeny-k .ceg { font-family: var(--cim); font-weight: 700; font-size: 22px; line-height: 1.25; }
.velemeny-k blockquote { margin: 12px 0 0; flex: 1; font-style: italic; color: #4a3630; font-size: 16px; line-height: 1.5; text-wrap: pretty; }
.velemeny-k .csillagok { margin: 16px auto 0; }
.velemeny-k .gomb { margin: 18px auto 0; align-self: stretch; }

/* garanciák */
.garancia { background: linear-gradient(160deg, var(--kod) 0%, #ecedeb 100%); }
.garancia__racs { display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: stretch; }
.garancia__bal h2 { font-family: var(--cim); font-weight: 700; font-size: clamp(30px, 3.6vw, 42px); line-height: 1.12; letter-spacing: -.02em; text-wrap: balance; }
.garancia__bal p { margin-top: 18px; text-wrap: pretty; }
.garancia__bal .buszke { margin-top: 24px; padding: 18px 22px; background: rgb(255 255 255 / .6); border-left: 4px solid var(--korall); border-radius: 6px 18px 18px 6px; }
.garancia__jobb { display: grid; gap: 18px; grid-template-rows: repeat(3, 1fr); }
.gar-k { display: grid; grid-template-columns: auto 1fr; gap: 6px 18px; align-items: center; align-content: center; background: #fff; border-radius: 22px; padding: 22px 26px; box-shadow: var(--arnyek); transition: transform .25s; }
.gar-k:hover { transform: translateX(6px); }
.gar-k .ikon { grid-row: span 2; align-self: center; width: 52px; height: 52px; border-radius: 16px; background: linear-gradient(145deg, var(--korall-v), var(--pezsgo)); color: var(--korall-s); display: grid; place-items: center; }
.gar-k .ikon .ic { width: 26px; height: 26px; }
.gar-k h3 { font-family: var(--cim); font-weight: 700; font-size: 19px; line-height: 1.3; align-self: end; }
.gar-k p { color: #5b4640; font-size: 15.5px; }
.cta-sav { margin-top: 56px; text-align: center; }

/* rólunk + GYIK + 2. űrlap */
.rolunk { background: linear-gradient(165deg, var(--barna) 0%, var(--barna-m) 100%); color: #fff; overflow: hidden; }
.rolunk::before { content: ""; position: absolute; width: 620px; height: 620px; right: -240px; top: -200px; border-radius: 50%; background: radial-gradient(circle, rgb(216 104 98 / .3), transparent 68%); }
.rolunk__kartya { position: relative; background: #fff; color: var(--tinta); border-radius: 32px; padding: 40px; box-shadow: var(--arnyek-n); display: grid; grid-template-columns: .9fr 1.1fr; gap: 48px; align-items: center; }
.rolunk__kartya img { width: 100%; border-radius: 22px; aspect-ratio: 455 / 478; object-fit: cover; }
.rolunk__kartya h2 { font-family: var(--cim); font-weight: 700; font-size: clamp(28px, 3.2vw, 38px); line-height: 1.12; letter-spacing: -.02em; text-wrap: balance; }
.rolunk__kartya .szoveg { margin-top: 20px; display: grid; gap: 14px; text-wrap: pretty; }
.rolunk__kartya .szoveg b { color: var(--barna); }
.gyik-racs { position: relative; margin-top: 72px; display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: start; }
.gyik h2 { text-align: center; font-family: var(--cim); font-weight: 700; font-size: clamp(28px, 3.2vw, 38px); line-height: 1.12; letter-spacing: -.02em; }
.gyik__lista { margin-top: 26px; display: grid; gap: 12px; }
.gyik details { background: rgb(255 255 255 / .96); color: var(--tinta); border-radius: 18px; box-shadow: 0 10px 26px -14px rgb(0 0 0 / .5); overflow: hidden; }
.gyik summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 18px 22px; font-weight: 700; font-size: 17px; line-height: 1.35; }
.gyik summary::-webkit-details-marker { display: none; }
.gyik summary .ic { width: 22px; height: 22px; color: var(--korall-s); transition: transform .3s; }
.gyik details[open] summary .ic { transform: rotate(180deg); }
.gyik details p { padding: 0 22px 20px; color: #5b4640; font-size: 16px; }
.rolunk .urlap-kartya { color: var(--tinta); }

/* lábléc */
.laborlec { background: linear-gradient(165deg, var(--barna-m) 0%, var(--barna-mm) 100%); color: var(--pezsgo); padding-block: 52px 36px; position: relative; overflow: hidden; }
.laborlec::before { content: ""; position: absolute; width: 480px; height: 480px; left: -160px; top: -260px; border-radius: 50%; background: radial-gradient(circle, rgb(216 104 98 / .25), transparent 68%); }
.laborlec__racs { position: relative; display: grid; grid-template-columns: 1.2fr 1fr 1fr; gap: 40px; align-items: start; }
.laborlec img { height: 54px; width: auto; filter: brightness(0) invert(1); opacity: .92; }
.laborlec h4 { margin: 0 0 10px; font-size: 13px; letter-spacing: .1em; text-transform: uppercase; color: var(--rozsa); font-weight: 700; }
.laborlec p { font-size: 16px; }
.laborlec a { text-decoration: none; font-weight: 600; color: #fff; }
.laborlec a:hover { color: var(--korall); }
.laborlec__als { position: relative; margin-top: 36px; padding-top: 22px; border-top: 1px solid rgb(255 255 255 / .16); color: rgb(244 227 220 / .7); font-size: 14.5px; text-align: center; }

/* megjelenési animáció (csak ha van JS; mozgáscsökkentésnél nincs) */
.js .mj { opacity: 0; transform: translateY(26px); transition: opacity .7s ease, transform .7s cubic-bezier(.2, .8, .2, 1); transition-delay: var(--k, 0s); }
.js .mj.lat { opacity: 1; transform: none; }
@keyframes fel { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
  .js .mj { opacity: 1; transform: none; }
}

/* tablet */
@media (max-width: 1020px) {
  .szakasz { padding-block: 72px; }
  .hos__racs { grid-template-columns: 1fr; gap: 28px; padding-block: 40px 56px; text-align: center; }
  .hos__bal { display: contents; }
  .hos h1 { order: 1; margin-inline: auto; }
  .hos__kep { order: 2; min-height: 0; aspect-ratio: 16 / 11; max-width: 640px; margin-inline: auto; width: 100%; }
  .hos__kep img { border-radius: 90px 26px 26px 26px; }
  .hos__szoveg { order: 3; margin: 0 auto; }
  .hos__gombok { order: 4; margin-top: 0; justify-content: center; }
  .elonyok { order: 5; margin-top: 4px; grid-template-columns: repeat(4, 1fr); gap: 10px; }
  .elonyok li { flex-direction: column; text-align: center; font-size: 13.5px; gap: 8px; }
  .rac3 { grid-template-columns: repeat(2, 1fr); }
  .ajanlat__racs, .garancia__racs, .gyik-racs { grid-template-columns: 1fr; gap: 44px; }
  .garancia__jobb { grid-template-rows: none; }
  .rolunk__kartya { grid-template-columns: 1fr; padding: 28px; gap: 28px; }
  .rolunk__kartya img { max-width: 460px; margin-inline: auto; }
  .bevezeto__racs { grid-template-columns: 1fr; gap: 32px; text-align: center; }
  .arckep { min-height: 0; aspect-ratio: 4 / 3; max-width: 520px; width: 100%; margin-inline: auto; }
  .arckep img { border-radius: 26px 90px 26px 26px; }
  .laborlec__racs { grid-template-columns: 1fr 1fr; }
  .videok .rac3 { grid-template-columns: repeat(3, 1fr); gap: 16px; }
  .velemeny-k { padding: 12px 12px 20px; border-radius: 22px; }
  .velemeny-k .ceg { font-size: 19px; }
  .velemeny-k .nev { font-size: 16px; }
  .logok { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px 14px; justify-items: center; align-items: center; }
  .logok img { height: auto; max-height: 34px; max-width: 100%; }
  .bizalom__fent { justify-content: center; text-align: center; }
}

/* mobil */
@media (max-width: 720px) {
  :root { --fej: 64px; }
  body { font-size: 16.5px; }
  .tarolo { padding-inline: 18px; }
  .szakasz { padding-block: 56px; }
  .logo img { height: 44px; }
  .fejlec__tel { display: none; }
  .fejlec__gomb { display: inline-flex; }
  /* a főcím, a kép, az alcím és a gombok együtt elférnek egy telefonképernyőn (664 px - fejléc) */
  .hos__racs { padding-block: 14px 44px; gap: 12px; }
  .hos h1 { font-size: clamp(22px, 6.5vw, 30px); line-height: 1.12; text-wrap: balance; }
  .hos h1 em { display: inline; }
  .hos__szoveg { font-size: 15.5px; line-height: 1.45; }
  .hos__gombok { width: 100%; gap: 8px; }
  .hos__gombok .gomb { width: 100%; min-height: 46px; font-size: 15.5px; padding: 0 16px; }
  .hos__kep { aspect-ratio: auto; height: clamp(150px, 26vh, 190px); }
  .hos__kep img { border-radius: 60px 20px 20px 20px; object-position: 50% 28%; }
  .elonyok { gap: 6px; }
  .elonyok li { font-size: 11px; line-height: 1.25; gap: 7px; }
  .elonyok .ikon { width: 38px; height: 38px; border-radius: 12px; }
  .bevezeto__szoveg { text-align: center; }
  .alairas { text-align: center; }
  .ajanlat__bal { text-align: center; }
  .hivas { margin-inline: auto; text-align: left; }
  .tulaj { justify-content: center; text-align: left; margin-top: 24px; }
  .garancia__bal, .rolunk__kartya > div:last-child { text-align: center; }
  .garancia__bal .buszke { text-align: left; }
  .bizalom { margin-top: -24px; }
  .bizalom__kartya { padding: 20px 14px 18px; border-radius: 24px; }
  .bizalom__fent { flex-direction: column; gap: 12px; }
  .bizalom__fent .g { font-size: 15px; gap: 9px; justify-content: center; }
  .g__kor img { width: 26px; }
  .csillagok .ic { width: 15px; height: 15px; }
  .logok { margin-top: 18px; }
  .bevezeto { margin-top: -24px; padding-top: 100px; }
  .rac3 { grid-template-columns: 1fr; gap: 22px; margin-top: 36px; }
  .velemeny-doboz { border-radius: 20px; margin-top: 32px; }
  /* az űrlap egy telefonképernyőn elfér */
  .urlap-kartya { padding: 20px 14px 16px; border-radius: 24px; }
  .urlap-kartya::before { left: 24px; right: 24px; }
  .urlap-kartya h3 { font-size: 20px; text-align: center; }
  .urlap-kartya .al { display: none; }
  .urlap { grid-template-columns: 1fr 1fr; gap: 8px 10px; margin-top: 12px; }
  .mezo { gap: 3px; }
  .mezo > label, .mezo > .cimke { font-size: 12px; }
  .mezo input[type="text"], .mezo input[type="email"], .mezo input[type="tel"], .mezo select, .mezo textarea { min-height: 42px; padding: 8px 10px; border-radius: 11px; font-size: 16px; }
  .mezo textarea { height: 52px; min-height: 52px; }
  .feltoltes { padding: 8px 10px; gap: 10px; }
  .feltoltes .ikon { width: 32px; height: 32px; border-radius: 9px; }
  .feltoltes span { font-size: 12.5px; }
  .urlap__als { margin-top: 0; }
  .urlap__als .gomb { min-height: 48px; font-size: 16px; }
  .mezo .hiba { font-size: 11.5px; }
  .tulaj { gap: 16px; }
  .tulaj img.portre { width: 92px; height: 92px; }
  .hivas { padding: 12px 14px; }
  .hivas a { font-size: 18px; }
  .videok .rac3 { grid-template-columns: 1fr; max-width: 340px; gap: 22px; }
  .velemeny-k { padding: 16px 16px 24px; }
  .velemeny-k .ceg { font-size: 22px; }
  .velemeny-k .nev { font-size: 18px; }
  .gar-k { padding: 18px; gap: 4px 14px; }
  .gar-k:hover { transform: none; }
  .garancia__bal .buszke { padding: 16px; }
  .rolunk__kartya { padding: 18px; border-radius: 26px; }
  .gyik-racs { margin-top: 48px; gap: 36px; }
  .gyik summary { padding: 16px 18px; font-size: 16px; }
  .gyik details p { padding: 0 18px 18px; }
  .laborlec__racs { grid-template-columns: 1fr; gap: 26px; }
  .menu__panel { padding: 16px 24px 28px; }
  .menu__lista a { font-size: 21px; }
  .cta-sav .gomb { width: 100%; }
}
@media (max-width: 560px) { .velemeny-doboz iframe { height: 452px; } }
@media (max-width: 380px) {
  .bizalom__fent .g { font-size: 14px; gap: 7px; }
  .elonyok li { font-size: 10.5px; }
  .fejlec__gomb { padding: 0 14px; font-size: 14px; }
  .gomb { font-size: 15px; padding-inline: 14px; }
}

/* kiegészítő dizájn: görbe szakaszátmenetek */
.gorbe-fent { position: absolute; left: 0; right: 0; top: -1px; height: 42px; pointer-events: none; z-index: 1; }
.gorbe-fent svg { display: block; width: 100%; height: 100%; }
.pontos { background-image: radial-gradient(rgb(130 60 46 / .09) 1.2px, transparent 1.4px); background-size: 22px 22px; }

/* menü: kis plusz dizájn asztali nézetben (mobilon marad az eddigi) */
.menu__lista .mi { display: none; }
@media (min-width: 721px) {
  .menu__panel { background: radial-gradient(420px 320px at 100% 100%, rgb(216 104 98 / .35), transparent 70%), linear-gradient(165deg, var(--barna) 0%, var(--barna-m) 100%); }
  .menu__lista { gap: 8px; }
  .menu__lista a { border: 0; border-radius: 16px; padding: 14px 16px; background: rgb(255 255 255 / .06); font-size: 20px; justify-content: flex-start; gap: 14px; transition: background .2s, transform .2s; }
  .menu__lista a:hover { background: rgb(255 255 255 / .14); padding-left: 16px; transform: translateX(4px); }
  .menu__lista a span { flex: 1; }
  .menu__lista .mi { display: block; width: 40px; height: 40px; padding: 9px; border-radius: 12px; background: rgb(255 255 255 / .1); color: #fff; }
  .menu__lista a[aria-current="page"] { background: rgb(255 255 255 / .16); }
}

/* menü: kompakt méretek, hogy az egész menü kis laptopon és kis telefonon is elférjen (a magasság szerint skálázva) */
.menu__panel { overflow-y: auto; overscroll-behavior: contain; padding: 14px 28px 20px; }
.menu__fej { height: 44px; flex: none; }
.menu__zar { width: 40px; height: 40px; }
.menu__lista { margin-top: 8px; gap: 4px; }
.menu__lista > li > a { padding: 11px 14px; font-size: 19px; }
.menu__lista .mi { width: 34px; height: 34px; padding: 8px; }
.menu__kat { padding-top: 8px; }
.menu__cimke { padding: 4px 4px 2px; font-size: 11.5px; }
.menu__lista .menu__al a { padding: 7px 14px; font-size: 16px; line-height: 1.25; }
.menu__als { padding-top: 14px; gap: 10px; }
.menu__tel { font-size: 16px; }
.menu__als .gomb { min-height: 46px; }
@media (max-height: 940px) {
  .menu__lista > li > a { padding: 8px 12px; font-size: 17px; }
  .menu__lista .mi { width: 30px; height: 30px; padding: 7px; }
  .menu__kat { padding-top: 6px; }
  .menu__lista .menu__al a { padding: 4px 12px; font-size: 15px; }
  .menu__als { padding-top: 10px; gap: 8px; }
  .menu__als .gomb { min-height: 42px; }
}
@media (max-height: 760px) {
  .menu__panel { padding: 8px 18px 12px; }
  .menu__fej { height: 36px; }
  .menu__zar { width: 34px; height: 34px; }
  .menu__lista { margin-top: 4px; gap: 2px; }
  .menu__lista > li > a { padding: 5px 10px; font-size: 15.5px; border-radius: 12px; }
  .menu__lista .mi { width: 26px; height: 26px; padding: 6px; border-radius: 9px; }
  .menu__kat { padding-top: 3px; }
  .menu__cimke { font-size: 10.5px; padding: 2px 4px 0; }
  .menu__lista .menu__al a { padding: 2px 10px; font-size: 14px; }
  .menu__als { padding-top: 8px; gap: 6px; }
  .menu__tel { font-size: 14.5px; }
  .menu__als .gomb { min-height: 38px; font-size: 14.5px; }
}
@media (max-height: 640px) {
  .menu__panel { padding: 6px 14px 8px; }
  .menu__fej { height: 32px; }
  .menu__zar { width: 30px; height: 30px; }
  .menu__lista > li > a { padding: 3px 10px; font-size: 14.5px; }
  .menu__lista .mi { width: 22px; height: 22px; padding: 5px; }
  .menu__cimke { font-size: 10px; }
  .menu__lista .menu__al a { padding: 1px 10px; font-size: 13px; }
  .menu__als { padding-top: 6px; gap: 4px; }
  .menu__tel { font-size: 13.5px; }
  .menu__als .gomb { min-height: 34px; font-size: 14px; }
}

/* fejléc: főnavigáció + nagymenü (asztalon); minden oldalon ugyanaz a fejléc (a generátor írja: tools/landing/epit.mjs) */
.fejlec__gomb { display: inline-flex; }
.fonav { display: none; }
.mega { display: none; }
@media (min-width: 1180px) {
  .menugomb { display: none; }
  .fejlec__be { gap: 18px; justify-content: flex-start; }
  .fonav { display: block; flex: 1; min-width: 0; }
  .fonav ul { display: flex; justify-content: center; gap: 4px; }
  .fonav__link { display: inline-flex; align-items: center; gap: 6px; padding: 9px 16px; border-radius: 999px; font-weight: 600; font-size: 16px; color: var(--tinta); text-decoration: none; transition: background .2s, color .2s; white-space: nowrap; }
  .fonav__link:hover, .fonav__mega[aria-expanded="true"] { background: var(--pezsgo); color: var(--barna); }
  .fonav__link[aria-current="page"], .fonav__mega[data-aktiv] { color: var(--korall-s); }
  .fonav__link .ic { width: 16px; height: 16px; transition: transform .25s; }
  .fonav__mega[aria-expanded="true"] .ic { transform: rotate(180deg); }
  .mega:not([hidden]) { display: block; animation: fel .22s both; }
  .mega { position: absolute; left: 0; right: 0; top: 100%; background: #fff; border-top: 1px solid var(--vonal); border-radius: 0 0 28px 28px; box-shadow: 0 34px 60px -22px rgb(43 26 21 / .4); padding: 26px 0 20px; max-height: calc(100vh - var(--fej)); overflow-y: auto; }
  .mega__racs { display: grid; grid-template-columns: repeat(var(--oszlop, 4), minmax(0, 1fr)); gap: 26px; }
  .mega__racs[style*="--oszlop:2"] { max-width: 820px; }
  .mega__cim { position: relative; min-height: 50px; margin-bottom: 4px; padding-bottom: 12px; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--korall-s); font-weight: 700; }
  .mega__cim::after { content: ""; position: absolute; left: 0; bottom: 0; width: 38px; height: 4px; border-radius: 4px; background: linear-gradient(90deg, var(--korall), var(--barna)); }
  .mega__oszlop ul { display: grid; gap: 2px; }
  .mega__elem { display: grid; grid-template-columns: 72px 1fr; gap: 12px; align-items: center; padding: 7px; border-radius: 14px; text-decoration: none; transition: background .2s; }
  .mega__elem:hover { background: var(--krem); }
  .mega__elem[aria-current="page"] { background: var(--korall-v); }
  .mega__elem img { width: 72px; height: 56px; object-fit: cover; border-radius: 10px; background: var(--pezsgo); transition: transform .3s; }
  .mega__elem:hover img { transform: scale(1.04); }
  .mega__elem b { display: block; font-family: var(--cim); font-size: 15px; line-height: 1.2; color: var(--tinta); }
  .mega__elem small { display: block; max-height: 2.7em; overflow: hidden; margin-top: 3px; font-size: 12.5px; line-height: 1.35; color: var(--halk); }
  .mega__als { margin-top: 14px; padding-top: 16px; border-top: 1px solid var(--vonal); display: flex; align-items: center; gap: 18px; }
  .mega__kerdes { margin-left: auto; color: var(--halk); font-size: 15px; }
}
@media (min-width: 1180px) and (max-width: 1339px) {
  .fejlec__tel > span { display: none; }
  .fonav__link { padding: 9px 11px; font-size: 15px; }
  .fejlec__be { gap: 12px; }
}
@media (max-height: 600px) {
  .menu__fej { height: 28px; }
  .menu__zar { width: 26px; height: 26px; }
  .menu__lista > li > a { padding: 2px 10px; font-size: 14px; }
  .menu__lista .mi { width: 20px; height: 20px; padding: 4px; }
  .menu__kat { padding-top: 2px; }
  .menu__cimke { font-size: 9.5px; padding: 1px 4px 0; }
  .menu__lista .menu__al a { padding: 0 10px; font-size: 12.5px; line-height: 1.3; }
  .menu__als { padding-top: 4px; gap: 3px; }
  .menu__tel { font-size: 13px; }
  .menu__als .gomb { min-height: 32px; font-size: 13.5px; }
}

/* nagymenü: sűrűbb elemek 5 oszlopnál; külső linkek jelölése; oldalpanel: kategória-harmonikák */
@media (min-width: 1180px) {
  .mega__racs[style*="--oszlop:5"] .mega__elem { grid-template-columns: 56px 1fr; gap: 10px; }
  .mega__racs[style*="--oszlop:5"] .mega__elem img { width: 56px; height: 44px; }
  .fonav__link .ic { flex: none; }
  .fonav__link[target] .ic { width: 13px; height: 13px; opacity: .6; }
  .fonav ul { gap: 2px; }
}
.menu__lista .menu__kat { padding-top: 0; }
.menu__kat details { border-radius: 14px; }
.menu__kat summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 11px 14px; border-radius: 14px; background: rgb(255 255 255 / .06); font-weight: 600; font-size: 17px; color: rgb(255 255 255 / .92); }
.menu__kat summary::-webkit-details-marker { display: none; }
.menu__kat summary:hover { background: rgb(255 255 255 / .12); }
.menu__kat summary .ic { width: 18px; height: 18px; transition: transform .25s; opacity: .8; }
.menu__kat details[open] summary .ic { transform: rotate(180deg); }
.menu__kat details[open] summary { background: rgb(255 255 255 / .14); border-radius: 14px 14px 0 0; }
.menu__kat details[open] .menu__al { padding: 4px 4px 6px 10px; background: rgb(0 0 0 / .12); border-radius: 0 0 14px 14px; }
.menu__lista > li > a .ic:not(.mi) { width: 15px; height: 15px; opacity: .7; margin-left: auto; }
@media (max-height: 940px) { .menu__kat summary { padding: 8px 12px; font-size: 16px; } }
@media (max-height: 760px) { .menu__kat summary { padding: 5px 10px; font-size: 15px; border-radius: 12px; } .menu__kat summary .ic { width: 15px; height: 15px; } }
@media (max-height: 640px) { .menu__kat summary { padding: 3px 10px; font-size: 14px; } }
@media (max-height: 600px) { .menu__kat summary { padding: 2px 10px; font-size: 13.5px; } }

@media (min-width: 1180px) {
  .mega__racs[style*="--oszlop:5"] .mega__elem { padding: 5px 6px; }
  .mega__racs[style*="--oszlop:5"] .mega__cim { min-height: 46px; margin-bottom: 0; }
  .mega { padding: 20px 0 16px; }
  .mega__als { margin-top: 10px; padding-top: 12px; }
}

/* fejléc: a főnavigáció sosem lóghat bele a logóba vagy a telefonszámba (széles fejléc, kompakt elemek, a címke csak a hamburgeres nézetben) */
@media (min-width: 1180px) {
  .fejlec .fejlec__be { max-width: 1400px; gap: 12px; }
  .fejlec__tel > span { display: none; }
  .fonav { min-width: 0; }
  .fonav ul { flex-wrap: nowrap; justify-content: center; }
  .fonav__link { padding: 9px 12px; font-size: 15px; }
  .telpill { white-space: nowrap; }
  .fejlec__gomb { white-space: nowrap; }
}
@media (min-width: 1480px) {
  .fejlec .fejlec__be { gap: 18px; }
  .fonav__link { padding: 9px 15px; font-size: 16px; }
}

/* ======== oldalpanel (tablet/mobil) – letisztult, kissé szellősebb, kis dizájnnal; az egész szerkezet egy képernyőn marad ======== */
.menu .menu__panel { padding: 18px 22px 22px; background: radial-gradient(420px 300px at 100% 0%, rgb(216 104 98 / .38), transparent 70%), radial-gradient(380px 320px at 0% 100%, rgb(216 104 98 / .22), transparent 70%), linear-gradient(165deg, var(--barna) 0%, var(--barna-mm) 100%); }
.menu .menu__fej { display: flex; align-items: center; justify-content: space-between; height: 48px; }
.menu .menu__logo { display: block; line-height: 0; }
.menu .menu__logo img { height: 38px; width: auto; filter: brightness(0) invert(1); opacity: .95; }
.menu .menu__lista { margin-top: 14px; gap: 7px; }
.menu .menu__lista > li > a, .menu .menu__kat summary { display: flex; align-items: center; gap: 12px; padding: 10px 14px; border-radius: 16px; background: rgb(255 255 255 / .07); border: 1px solid rgb(255 255 255 / .09); font-size: 16.5px; font-weight: 600; color: #fff; text-decoration: none; justify-content: flex-start; transition: background .2s, transform .2s; }
.menu .menu__lista > li > a:hover, .menu .menu__kat summary:hover { background: rgb(255 255 255 / .15); padding-left: 14px; transform: translateX(3px); }
.menu .menu__lista > li > a[aria-current="page"] { background: rgb(255 255 255 / .18); }
.menu .menu__lista > li > a[aria-current="page"]::after { display: none; }
.menu .menu__lista .mi { display: grid; flex: none; width: 30px; height: 30px; padding: 7px; border-radius: 10px; background: linear-gradient(145deg, #e48a83, var(--korall-s)); color: #fff; box-shadow: 0 6px 12px -6px rgb(0 0 0 / .5); }
.menu .menu__lista span { flex: 1; }
.menu .menu__lista .chev, .menu .menu__lista .kulso { flex: none; width: 17px; height: 17px; opacity: .7; margin-left: auto; transition: transform .25s; }
.menu .menu__kat details[open] summary { background: rgb(255 255 255 / .16); border-radius: 16px 16px 0 0; }
.menu .menu__kat details[open] .chev { transform: rotate(180deg); }
.menu .menu__kat details[open] .menu__al { margin-top: 0; padding: 6px 8px 8px 14px; background: rgb(0 0 0 / .16); border-radius: 0 0 16px 16px; display: grid; gap: 2px; }
.menu .menu__lista .menu__al a { display: block; padding: 10px 12px; border: 0; border-radius: 10px; background: transparent; font-size: 15.5px; font-weight: 500; line-height: 1.3; color: rgb(255 255 255 / .92); }
.menu .menu__lista .menu__al a:hover { background: rgb(255 255 255 / .1); padding-left: 16px; transform: none; }
.menu .menu__lista .menu__al a[aria-current="page"] { background: rgb(255 255 255 / .16); color: #fff; }
.menu .menu__als { margin-top: auto; padding-top: 16px; display: grid; gap: 12px; justify-items: center; text-align: center; }
.menu .menu__tel { display: flex; align-items: center; justify-content: center; gap: .6em; font-size: 16.5px; }
.menu .menu__als .gomb { width: 100%; }
@media (max-height: 900px) {
  .menu .menu__panel { padding: 14px 20px 18px; }
  .menu .menu__fej { height: 42px; }
  .menu .menu__logo img { height: 32px; }
  .menu .menu__lista { margin-top: 10px; gap: 6px; }
  .menu .menu__lista > li > a, .menu .menu__kat summary { padding: 8px 12px; font-size: 15.5px; gap: 11px; }
  .menu .menu__lista .mi { width: 27px; height: 27px; padding: 6px; }
  .menu .menu__lista .menu__al a { padding: 8px 12px; font-size: 15px; }
  .menu .menu__als { padding-top: 12px; gap: 10px; }
}
@media (max-height: 740px) {
  .menu .menu__panel { padding: 8px 16px 12px; }
  .menu .menu__fej { height: 34px; }
  .menu .menu__logo img { height: 26px; }
  .menu .menu__lista { margin-top: 4px; gap: 4px; }
  .menu .menu__lista > li > a, .menu .menu__kat summary { padding: 5px 10px; font-size: 14.5px; border-radius: 12px; }
  .menu .menu__lista .mi { width: 22px; height: 22px; padding: 4px; border-radius: 8px; }
  .menu .menu__lista .menu__al a { padding: 6px 12px; font-size: 14.5px; }
  .menu .menu__als { padding-top: 8px; gap: 8px; }
  .menu .menu__tel { font-size: 15px; }
  .menu .menu__als .gomb { min-height: 40px; font-size: 15px; }
}
@media (max-height: 620px) {
  .menu .menu__panel { padding: 8px 16px 10px; }
  .menu .menu__fej { height: 30px; }
  .menu .menu__logo img { height: 24px; }
  .menu .menu__zar { width: 28px; height: 28px; }
  .menu .menu__lista { margin-top: 4px; gap: 4px; }
  .menu .menu__lista > li > a, .menu .menu__kat summary { padding: 3px 10px; font-size: 14.5px; gap: 10px; }
  .menu .menu__lista .mi { width: 22px; height: 22px; padding: 4px; }
  .menu .menu__lista .chev, .menu .menu__lista .kulso { width: 15px; height: 15px; }
  .menu .menu__lista .menu__al a { padding: 5px 12px; }
  .menu .menu__als { padding-top: 6px; gap: 6px; }
  .menu .menu__tel { font-size: 14px; }
  .menu .menu__als .gomb { min-height: 36px; font-size: 14px; }
}

/* nagymenü v3: nagyobb képek, a szöveg levágva (nem pontozva): annyi fér ki, amennyi kifér */
@media (min-width: 1180px) {
  .mega__elem { grid-template-columns: 96px 1fr; gap: 14px; padding: 6px 8px 6px 6px; }
  .mega__elem img { width: 96px; height: 72px; border-radius: 12px; }
  .mega__racs[style*="--oszlop:5"] .mega__elem { grid-template-columns: 84px 1fr; gap: 11px; padding: 5px 6px 5px 5px; }
  .mega__racs[style*="--oszlop:5"] .mega__elem img { width: 84px; height: 64px; }
  .mega__csoport + .mega__csoport { margin-top: 16px; }
  .mega__csoport .mega__cim { min-height: 0; margin-bottom: 14px; }
  .mega__kartyak { display: grid; grid-template-columns: repeat(var(--oszlop, 4), minmax(0, 1fr)); gap: 16px; }
  .mega__kartya { display: block; height: 100%; overflow: hidden; border: 1px solid var(--vonal); border-radius: 18px; background: #fff; text-decoration: none; transition: transform .25s, box-shadow .25s, border-color .25s; }
  .mega__kartya:hover { transform: translateY(-3px); border-color: var(--korall); box-shadow: 0 18px 34px -18px rgb(43 26 21 / .45); }
  .mega__kartya img { display: block; width: 100%; aspect-ratio: 4 / 3; max-height: 150px; object-fit: cover; background: var(--pezsgo); transition: transform .4s; }
  .mega__kartya:hover img { transform: scale(1.04); }
  .mega__kartya { position: relative; }
  .mega__kartya img { position: relative; }
  .mega__kartya b { display: block; padding: 11px 14px 0; font-family: var(--cim); font-size: 15.5px; line-height: 1.2; color: var(--tinta); }
  .mega__kartya small { display: block; max-height: 2.7em; overflow: hidden; padding: 4px 14px 13px; font-size: 12.5px; line-height: 1.35; color: var(--halk); box-sizing: content-box; }
  .mega__kartya[aria-current="page"] { border-color: var(--korall); background: var(--korall-v); }
}

/* sortörés-szabály: ne maradjon árva szó/pár karakter az utolsó sorban (a szövegek kiegyenlítve, a címek szépen tördelve) */
p, li, small, figcaption, blockquote, summary, dd, label { text-wrap: pretty; }
h1, h2, h3, h4, .gomb { text-wrap: balance; }

/* lábléc: linkoszlopok (minden oldalon ugyanaz) */
.laborlec__racs--bo { grid-template-columns: 1.25fr repeat(4, minmax(0, 1fr)); gap: 34px; }
.laborlec__ceg p { margin-top: 8px; }
.laborlec__ceg img { margin-bottom: 6px; }
.laborlec__nyitva { color: rgb(244 227 220 / .8); font-size: 14.5px; }
.laborlec ul { display: grid; gap: 7px; }
.laborlec li a { font-weight: 500; font-size: 14.5px; color: rgb(244 227 220 / .9); }
.laborlec li a:hover { color: #fff; }
@media (max-width: 1020px) { .laborlec__racs.laborlec__racs--bo { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px 24px; } .laborlec__racs--bo > .laborlec__ceg { grid-column: 1 / -1; } }

/* lábléc mobilon: két egyenlő oszlop, semmi sem lóg ki, a cégblokk teljes szélességű */
@media (max-width: 720px) {
  .laborlec__racs.laborlec__racs--bo { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px 18px; }
  .laborlec__racs--bo > * { min-width: 0; }
  .laborlec__racs--bo > .laborlec__ceg { grid-column: 1 / -1; display: grid; grid-template-columns: auto 1fr; gap: 2px 20px; align-items: center; padding-bottom: 22px; border-bottom: 1px solid rgb(255 255 255 / .14); }
  .laborlec__ceg img { grid-row: 1 / span 4; margin: 0; height: 60px; }
  .laborlec__ceg p { margin: 0; font-size: 15px; }
  .laborlec h4 { font-size: 12px; letter-spacing: .06em; line-height: 1.35; overflow-wrap: break-word; margin-bottom: 12px; }
  .laborlec li a { display: inline-block; line-height: 1.35; overflow-wrap: break-word; }
  .laborlec ul { gap: 9px; }
}
@media (max-width: 420px) {
  .laborlec__racs.laborlec__racs--bo { gap: 24px 14px; }
  .laborlec__racs--bo > .laborlec__ceg { grid-template-columns: 1fr; text-align: left; }
  .laborlec__ceg img { grid-row: auto; margin-bottom: 8px; }
}

/* a pipa a „Szolnok kedvenc nyomdája” sorban egy sorban a szöveggel */
.tulaj .jelveny-sor { display: inline-flex; align-items: center; gap: 7px; font-weight: 500; font-size: 15px; color: var(--halk); line-height: 1.3; }
.tulaj .jelveny-sor .ic { width: 18px; height: 18px; flex: none; color: #2f9e5b; stroke-width: 3; }

/* két hasábos sorok: a két hasáb mindig egyforma magas (a gombbal együtt), a kép kitölti a szöveg magasságát */
@media (min-width: 1021px) {
  .tsor, .szolg__racs, .lhos__racs { align-items: stretch; }
  .tsor__kep, .szolg__kep, .lhos__kep { display: flex; }
  .tsor__kep img, .szolg__kep img, .lhos__kep > img { flex: 1 1 auto; width: 100%; height: auto; min-width: 0; object-fit: cover; aspect-ratio: 4 / 3; }
  .lhos__kep > img { aspect-ratio: 4 / 3.1; }
  .tsor__szoveg, .szolg__szoveg { display: flex; flex-direction: column; justify-content: center; }
  .lhos__racs > div:first-child { align-self: center; }
  .rolunk__kartya { align-items: stretch; }
  .rolunk__kartya > img, .rolunk__kartya > div:first-child > img { height: 100%; }
  .rolunk__kartya > div:last-child { align-self: center; }
}

/* az ajánlatkérő űrlap melletti bizalmi blokk */
.abiz { margin-top: 26px; display: grid; gap: 16px; padding: 22px 22px 20px; position: relative; overflow: hidden; border-radius: 26px; background: linear-gradient(180deg, #fff 0%, #fdf4f0 100%); border: 1px solid #f0dcd3; box-shadow: var(--arnyek); }
.abiz::before { content: ""; position: absolute; left: 24px; right: 24px; top: 0; height: 4px; border-radius: 0 0 6px 6px; background: linear-gradient(90deg, var(--korall), var(--barna)); }
.abiz__ertek { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.abiz__ertek b { font-family: var(--cim); font-size: 40px; line-height: 1; letter-spacing: -.03em; color: var(--barna); }
.abiz__csillag { display: inline-flex; gap: 2px; color: #f5a623; }
.abiz__csillag .ic { width: 18px; height: 18px; fill: currentColor; stroke: none; }
.abiz__ertek-sz { display: grid; font-weight: 700; font-size: 15px; line-height: 1.25; }
.abiz__ertek-sz small { font-weight: 500; font-size: 13px; color: var(--halk); }
.abiz__tenyek { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 14px; }
.abiz__tenyek li { display: flex; align-items: center; gap: 10px; font-weight: 600; font-size: 14.5px; line-height: 1.3; }
.abiz__tenyek .ikon { width: 34px; height: 34px; border-radius: 50%; flex: none; display: grid; place-items: center; background: linear-gradient(145deg, #fbe9e6, #f4d3cd); color: var(--korall-s); }
.abiz__tenyek .ikon .ic { width: 17px; height: 17px; }
.abiz__idezet { margin: 0; padding: 14px 16px 14px 48px; position: relative; border-radius: 16px; background: #fff; border: 1px solid #f0dcd3; }
.abiz__idezet::before { content: "\201E"; position: absolute; left: 13px; top: 0; font-family: Georgia, serif; font-size: 52px; line-height: 1.1; color: var(--korall); }
.abiz__idezet blockquote { margin: 0; font-family: var(--cim); font-weight: 500; font-size: 16.5px; line-height: 1.4; color: var(--barna-m); }
.abiz__idezet figcaption { margin-top: 4px; font-size: 13px; color: var(--halk); }
.abiz__logosor { display: grid; gap: 10px; }
.abiz__logosor small { font-size: 12px; letter-spacing: .08em; text-transform: uppercase; font-weight: 700; color: var(--halk); }
.abiz__logok { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px 14px; align-items: center; justify-items: center; }
.abiz__logok img { display: block; width: auto; max-width: 100%; height: 30px; object-fit: contain; filter: grayscale(1); opacity: .75; }
.abiz--kartyaban { margin: 14px 0 0; padding: 14px 0 12px; border: 0; border-top: 1px solid var(--vonal); border-radius: 0; box-shadow: none; background: none; }
.abiz--kartyaban::before { display: none; }
@media (max-width: 1020px) { .abiz { margin-top: 22px; } }
@media (max-width: 420px) { .abiz__tenyek { grid-template-columns: 1fr; } .abiz { padding: 20px 16px 16px; } }


/* főoldali termékblokk: szűrő-chipek + kártyák */
.termekek__alcim { margin: 12px auto 0; max-width: 40em; text-align: center; color: #5b4640; font-size: 18px; text-wrap: balance; }
.tszuro { margin: 30px auto 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; }
.tchip { all: unset; box-sizing: border-box; cursor: pointer; display: inline-flex; align-items: center; gap: 9px; padding: 9px 12px 9px 18px; border-radius: 999px; background: #fff; border: 1.5px solid var(--vonal); font-weight: 600; font-size: 15.5px; line-height: 1.2; color: var(--tinta); box-shadow: 0 8px 18px -14px rgb(90 42 32 / .7); transition: transform .2s, box-shadow .2s, border-color .2s, background .2s; }
.tchip small { min-width: 26px; padding: 2px 8px; border-radius: 999px; text-align: center; font-size: 12.5px; font-weight: 700; background: var(--korall-v); color: var(--korall-s); transition: background .2s, color .2s; }
.tchip:hover { transform: translateY(-2px); border-color: #e3b9b1; box-shadow: var(--arnyek); }
.tchip:focus-visible { outline: 3px solid var(--korall); outline-offset: 2px; }
.tchip.is-aktiv { background: linear-gradient(135deg, var(--korall) 0%, var(--barna) 100%); border-color: transparent; color: #fff; box-shadow: 0 14px 24px -12px rgb(130 60 46 / .8); }
.tchip.is-aktiv small { background: rgb(255 255 255 / .22); color: #fff; }
.tracs { margin-top: 34px; }
.tkartya { animation: fel .4s both; }
.tkartya[hidden] { display: none; }
.tkartya .kartya__kep { position: relative; display: block; }
.tkartya__cimke { position: absolute; left: 14px; top: 14px; padding: 5px 12px; border-radius: 999px; background: rgb(255 255 255 / .94); color: var(--barna); font-size: 12.5px; font-weight: 700; box-shadow: 0 6px 14px -8px rgb(0 0 0 / .5); }
.tkartya h3 a { color: inherit; text-decoration: none; }
.tkartya h3 a:hover { color: var(--korall-s); }
.tkartya .kartya__leiras { text-wrap: pretty; }
.tkartya .arak { margin-bottom: 18px; }
.tkartya__gombok { margin-top: auto; padding-top: 18px; display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 8px 20px; }
.tkartya .kartya__leiras + .tkartya__gombok { margin-top: auto; }
.tkartya .tkartya__gombok .gomb { margin-top: 0; }
.tkartya__link { display: inline-flex; align-items: center; gap: 6px; font-weight: 700; font-size: 15px; color: var(--korall-s); text-decoration: none; }
.tkartya__link .nyil { width: 16px; height: 16px; transition: transform .2s; }
.tkartya__link:hover .nyil { transform: translateX(4px); }
.tobb { margin-top: 36px; display: flex; justify-content: center; }
.tobb[hidden] { display: none; }
@media (max-width: 720px) {
  /* Feri (2026-10-22): a szűrő-csempék egyszerre látszanak (nincs oldalirányú görgetés), több sorban, középre */
  .tszuro { display: grid; grid-template-columns: 1fr 1fr; overflow: visible; margin-inline: 0; padding: 4px 0 6px; gap: 8px; }
  .tchip { justify-content: center; text-align: center; min-width: 0; padding: 9px 10px; font-size: 14px; line-height: 1.2; }
  .termekek__alcim { font-size: 16.5px; }
  .tracs { margin-top: 22px; }
}

/* mobilmenü: pici ikon az almenü-elemek előtt (ChatGPT-vel generált, egységes vonalas ikonok) */
.menu .menu__lista .menu__al a { display: flex; align-items: center; gap: 12px; }
.menu .menu__lista .mik { flex: 0 0 30px; width: 30px; height: 30px; border-radius: 9px; background: #4a221b center / 150% no-repeat; box-shadow: inset 0 0 0 1px rgb(255 255 255 / .08); }
@media (max-height: 760px) { .menu .menu__lista .mik { flex-basis: 26px; width: 26px; height: 26px; border-radius: 8px; } }
@media (max-height: 640px) { .menu .menu__lista .mik { flex-basis: 22px; width: 22px; height: 22px; border-radius: 7px; } .menu .menu__lista .menu__al a { gap: 9px; } }

/* űrlap: a gomb alatti biztosíték-sor; asztalon a két hasáb egyforma magas, a „Rövid leírás” mező kitölti a különbséget */
.urlap__biztos { grid-column: 1 / -1; display: flex; flex-wrap: wrap; justify-content: center; gap: 6px 18px; font-size: 13.5px; font-weight: 600; color: var(--halk); }
.urlap__biztos li { display: inline-flex; align-items: center; gap: 6px; }
.urlap__biztos .ic { width: 16px; height: 16px; flex: none; color: #2f9e5b; stroke-width: 3; }
@media (min-width: 1021px) {
  .ajanlat__racs { align-items: stretch; }
  .ajanlat__racs > div:last-child { display: flex; flex-direction: column; }
  .ajanlat__racs .urlap-kartya { flex: 1; display: flex; flex-direction: column; }
  .ajanlat__racs .urlap-kartya .urlap { flex: 1; grid-template-rows: auto auto auto minmax(0, 1fr) auto; }
  .ajanlat__racs .urlap .mezo:has(textarea) { grid-template-rows: auto minmax(0, 1fr); }
  .ajanlat__racs .urlap .mezo textarea { height: 100%; min-height: 84px; resize: none; }
  .ajanlat__bal { align-self: stretch; display: flex; flex-direction: column; justify-content: center; }
}

/* az űrlap melletti oszlop tömörebb, hogy a két hasáb magassága közel legyen */
@media (min-width: 1021px) {
  .ajanlat__bal .tulaj { margin-top: 20px; }
  .ajanlat__bal .tulaj img.portre { width: 96px; height: 96px; }
  .ajanlat__bal .abiz { margin-top: 20px; gap: 14px; padding: 20px 20px 16px; }
  .abiz__ertek b { font-size: 34px; }
  .abiz__logok { grid-template-columns: repeat(6, 1fr); gap: 8px; }
  .abiz__logok img { height: 22px; }
  .abiz__idezet { padding: 12px 14px 12px 44px; }
  .abiz__idezet blockquote { font-size: 15.5px; }
}
@media (min-width: 1021px) { .tsor__szoveg .gomb, .szolg__szoveg .gomb { align-self: flex-start; } }

/* a legkeskenyebb asztali fejléc (1180–1259 px): még tömörebb főmenü, hogy ne érjen a logóhoz vagy a telefonszámhoz */
@media (min-width: 1180px) and (max-width: 1259px) {
  .fonav__link { padding: 8px 7px; font-size: 14.5px; gap: 4px; }
  .fonav ul { gap: 0; }
  .fejlec .fejlec__be { gap: 8px; }
  .fejlec__tel { padding-inline: 12px; font-size: 15px; }
}

/* termékkártyák: a leírás mindenhol ugyanannyi sor (3 sornyi hely), a gombok egy vonalban */
.tkartya .kartya__leiras { min-height: calc(3 * 1.55em); }
.tkartya .kartya__kiemel + .kartya__leiras { min-height: 0; }

/* ügyfél-logók: soha nem lóghatnak ki a kártyából */
.abiz__logok { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.abiz__logok li { min-width: 0; width: 100%; display: flex; justify-content: center; }
.abiz__logok img { width: 100%; max-width: 110px; height: 28px; object-fit: contain; }
@media (min-width: 1021px) { .abiz__logok { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 6px; } .abiz__logok img { height: 22px; max-width: 100%; } }

/* a gomb alatti biztosíték-sor mindig egy vonalban */
.urlap__biztos { flex-wrap: nowrap; gap: 4px 16px; font-size: 13px; }
.urlap__biztos li { white-space: normal; }
@media (max-width: 420px) { .urlap__biztos { gap: 4px 9px; font-size: 11.5px; } .urlap__biztos .ic { width: 13px; height: 13px; } .urlap__biztos li { gap: 4px; } }
@media (max-width: 340px) { .urlap__biztos { font-size: 10.5px; gap: 4px 6px; } }
.chip, .chiplista label { text-wrap: balance; }

/* nagymenü: a címek és a leírások egységesek – a leírás pontosan legfeljebb 2 sor, a levágás nem látszik át a kártya alsó szegélyén */
@media (min-width: 1180px) {
  .mega__kartya b { font-size: 15px; letter-spacing: -.01em; }
  .mega__kartya small { padding: 0; margin: 4px 14px 14px; max-height: 2.7em; box-sizing: border-box; }
  .mega__elem small { max-height: 2.7em; overflow: hidden; }
}
@media (min-width: 1180px) and (max-width: 1239px) {
  .fonav__link { padding: 8px 5px; font-size: 14px; }
  .fejlec .fejlec__be { gap: 6px; }
  .fejlec__tel .telpill { padding-inline: 8px 10px; font-size: 14.5px; gap: 6px; }
  .fejlec__be .gomb { padding-inline: 16px; font-size: 14.5px; }
}

/* lábléc mobilon: a címsor soha nem szakad szó közepén */
@media (max-width: 720px) {
  .laborlec h4 { overflow-wrap: normal; word-break: normal; hyphens: none; letter-spacing: .03em; font-size: 11.5px; }
  .laborlec__racs--bo { column-gap: 12px; }
}
@media (max-width: 360px) { .laborlec h4 { font-size: 10.5px; letter-spacing: .02em; } }

/* magyar elválasztási szabály: szót nem választunk el (se automatikusan, se „törés a szó közepén”) – inkább új sorba kerül az egész szó */
html { hyphens: manual; -webkit-hyphens: manual; overflow-wrap: normal; word-break: normal; }
h1, h2, h3, h4 { hyphens: manual; -webkit-hyphens: manual; overflow-wrap: normal; word-break: normal; }
@media (max-width: 340px) { .bizalom__fent .g { font-size: 12.5px; gap: 5px; } }

/* Feri (2026-10-22): a fejléc Ajánlatkérés-gombja a logó és a menügomb között középen (mobil/tablet) */
@media (max-width: 1179px) { .fejlec__jobb { flex: 1; } .fejlec__gomb { margin-inline: auto; } }

@media (max-width: 479px) { .tchip small { display: none; } .tchip { min-height: 52px; padding-inline: 8px; font-size: 14px; } }
.tchip { text-wrap: balance; }
