/* AD Nyomda – landing oldalak (termekoldalak). Az uj.css-re epul (valtozok, gombok, fejlec, menu, urlap, GYIK, lablec), azt egesziti ki. */

/* ---------- hős ---------- */
.fejlec__gomb { display: inline-flex; min-height: 44px; padding: 0 22px; font-size: 15px; }
.lhos { 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%); }
.lhos::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; }
.lhos__racs { position: relative; display: grid; grid-template-columns: 1.05fr .95fr; gap: 56px; align-items: center; padding-block: 60px 76px; }
.lhos__bal { min-width: 0; }
.lhos h1 { font-family: var(--cim); font-weight: 700; font-size: clamp(30px, 3.8vw, 48px); line-height: 1.08; letter-spacing: -.03em; text-wrap: balance; hyphens: manual; overflow-wrap: normal; word-break: normal; }
.lhos h1 em { font-style: normal; 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; }
.eyebrow { font-size: 13.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--korall-s); margin-bottom: 14px; text-wrap: balance; }
.eyebrow--pill { display: inline-flex; align-items: center; gap: 9px; text-transform: none; letter-spacing: 0; font-size: 14px; color: var(--barna); background: #fff; border: 1px solid var(--vonal); border-radius: 999px; padding: 7px 16px; box-shadow: 0 6px 18px -10px rgb(90 42 32 / .4); }
.eyebrow--pill .pont { width: 8px; height: 8px; border-radius: 50%; background: #2f9e5b; }
.lhos__kozonseg { margin-top: 12px; font-size: 13px; font-weight: 600; letter-spacing: .04em; color: var(--korall-s); text-wrap: balance; }
.lhos__szoveg { margin-top: 20px; font-size: 19px; max-width: 36em; color: #4a3630; text-wrap: pretty; }
.pontok { margin-top: 22px; display: grid; gap: 9px; }
.pontok li { display: flex; align-items: center; gap: 12px; font-weight: 500; font-size: 16.5px; }
.pontok .pipa { width: 24px; height: 24px; border-radius: 50%; background: #3f8f63; color: #fff; display: grid; place-items: center; flex: none; }
.pontok .pipa .ic { width: 14px; height: 14px; stroke-width: 3; }
.jelvenyek { margin-top: 24px; display: flex; flex-wrap: wrap; gap: 10px; }
.jelvenyek li { display: inline-flex; align-items: center; gap: 9px; padding: 5px 16px 5px 5px; background: #fff; border: 1px solid var(--vonal); border-radius: 999px; font-size: 14.5px; font-weight: 500; line-height: 1.25; color: #4a3630; box-shadow: 0 6px 16px -12px rgb(90 42 32 / .6); }
.jelvenyek .ikon { width: 30px; height: 30px; border-radius: 50%; background: var(--korall-v); color: var(--korall-s); display: grid; place-items: center; flex: none; }
.jelvenyek .ikon .ic { width: 16px; height: 16px; }
.lhos__gombok { margin-top: 26px; display: flex; flex-wrap: wrap; gap: 14px; }
.gomb--nagy { min-width: 280px; min-height: 58px; font-size: 17px; padding: 0 34px; }
.minimum { margin-top: 18px; display: inline-block; padding: 8px 16px; background: var(--korall-v); color: var(--barna); font-weight: 600; font-size: 14px; border-radius: 12px; }
.lhos__kep { position: relative; }
.lhos__kep > img { width: 100%; aspect-ratio: 4 / 3.1; object-fit: cover; border-radius: 150px 30px 30px 30px; box-shadow: var(--arnyek-n); background: var(--pezsgo); }
.jelveny { position: absolute; background: #fff; border-radius: 16px; padding: 10px 16px; box-shadow: var(--arnyek); line-height: 1.25; display: grid; }
.jelveny b { font-family: var(--cim); font-size: 21px; color: var(--tinta); }
.jelveny span { font-size: 13px; color: var(--halk); }
.jelveny--fent { right: -14px; top: 22px; }
.jelveny--lent { left: -18px; bottom: 34px; }
.jelveny--lent .csillagok .ic { width: 13px; height: 13px; }
.lhos--hub .tarolo { padding-block: 64px 56px; text-align: center; }
.lhos--hub h1 { max-width: 20ch; margin-inline: auto; }
.lhos--hub .lhos__szoveg { margin-inline: auto; }

/* ---------- sávok ---------- */
.bizalmisav { background: linear-gradient(135deg, var(--barna-m), var(--barna-mm)); color: #fff; }
.bizalmisav ul { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px 16px; padding-block: 16px; font-size: 14.5px; }
.bizalmisav li { display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; }
.bizalmisav .ikon { width: 30px; height: 30px; border-radius: 50%; background: rgb(255 255 255 / .12); color: #ffb9b2; display: grid; place-items: center; flex: none; }
.bizalmisav .ikon .ic { width: 17px; height: 17px; }
.bizalmisav strong { font-size: 17px; }
.bizalmisav--rovid ul { justify-content: center; gap: 10px 44px; }
.elonysor { background: #fff; border-block: 1px solid var(--vonal); }
.elonysor ul { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; padding-block: 22px; }
.elonysor li { display: flex; align-items: center; gap: 12px; font-weight: 600; font-size: 15px; line-height: 1.3; }
.elonysor .ikon, .tenyek .ikon, .lelony .ikon { width: 42px; height: 42px; border-radius: 13px; background: var(--korall-v); color: var(--korall-s); display: grid; place-items: center; flex: none; }

/* ---------- neked való ---------- */
.illik { background: #fff; }
.illik__racs { margin: 44px auto 0; max-width: 980px; display: grid; grid-template-columns: 1fr 1fr; gap: 26px; }
.illik__doboz { position: relative; overflow: hidden; border-radius: 28px; padding: 30px 30px 26px; border: 1px solid var(--vonal); box-shadow: var(--arnyek); }
.illik__doboz::before { content: ""; position: absolute; left: 30px; right: 30px; top: 0; height: 5px; border-radius: 0 0 6px 6px; }
.illik__doboz::after { content: ""; position: absolute; width: 190px; height: 190px; right: -70px; bottom: -90px; border-radius: 50%; pointer-events: none; }
.illik__doboz--jo { background: linear-gradient(180deg, #fff 0%, #eef7f1 100%); border-color: #cfe5d6; }
.illik__doboz--jo::before { background: linear-gradient(90deg, #6bc48f, #2f9e5b); }
.illik__doboz--jo::after { background: radial-gradient(circle, rgb(63 143 99 / .14), transparent 70%); }
.illik__doboz--rossz { background: linear-gradient(180deg, #fff 0%, #fceeea 100%); border-color: #f1cfc9; }
.illik__doboz--rossz::before { background: linear-gradient(90deg, var(--korall), #b3382f); }
.illik__doboz--rossz::after { background: radial-gradient(circle, rgb(216 104 98 / .16), transparent 70%); }
.illik__doboz h3 { position: relative; display: flex; align-items: center; gap: 14px; font-family: var(--cim); font-size: 22px; font-weight: 700; line-height: 1.2; letter-spacing: -.01em; }
.illik__doboz h3 .ikon { width: 44px; height: 44px; border-radius: 14px; display: grid; place-items: center; flex: none; color: #fff; box-shadow: 0 10px 18px -10px rgb(0 0 0 / .5); }
.illik__doboz h3 .ikon .ic { width: 23px; height: 23px; stroke-width: 2.8; }
.illik__doboz--jo h3 .ikon { background: linear-gradient(145deg, #4cb87c, #2f8a58); }
.illik__doboz--rossz h3 .ikon { background: linear-gradient(145deg, #e07a73, #b3382f); }
.illik__doboz ul { position: relative; margin-top: 18px; display: grid; }
.illik__doboz li { display: grid; grid-template-columns: 26px 1fr; gap: 14px; align-items: start; padding: 12px 0; font-size: 16px; line-height: 1.45; border-top: 1px solid rgb(90 42 32 / .09); }
.illik__doboz li:first-child { border-top: 0; padding-top: 4px; }
.illik__doboz li .jel { width: 24px; height: 24px; border-radius: 50%; display: grid; place-items: center; margin-top: 1px; background: #fff; box-shadow: 0 2px 6px -2px rgb(0 0 0 / .3); }
.illik__doboz li .jel .ic { width: 14px; height: 14px; stroke-width: 3; }
.illik__doboz--jo li .jel { color: #2f8a58; }
.illik__doboz--rossz li .jel { color: #b3382f; }

/* ---------- termékkártyák ---------- */
.ltermekek .alcim { color: #5a2a20; }
.tkartyak { margin-top: 48px; display: grid; gap: 24px; grid-template-columns: repeat(5, 1fr); }
.tkartyak--3 { grid-template-columns: repeat(3, 1fr); }
.tkartyak--4 { grid-template-columns: repeat(4, 1fr); }
.tkartya { all: unset; box-sizing: border-box; cursor: pointer; background: #fff; border-radius: var(--sugar); overflow: hidden; box-shadow: var(--arnyek); display: flex; flex-direction: column; transition: transform .3s, box-shadow .3s, outline-color .2s; outline: 3px solid transparent; outline-offset: -3px; text-align: left; }
.tkartya:hover { transform: translateY(-6px); box-shadow: var(--arnyek-n); }
.tkartya:focus-visible { outline-color: var(--korall); }
.tkartya.kiemelt { outline-color: var(--korall); box-shadow: 0 0 0 5px rgb(216 104 98 / .25), var(--arnyek-n); }
.tkartya__kep { display: block; aspect-ratio: 4 / 3; overflow: hidden; background: var(--pezsgo); }
.tkartya__kep img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s; }
.tkartya:hover .tkartya__kep img { transform: scale(1.05); }
.tkartya__tartalom { display: flex; flex-direction: column; gap: 8px; padding: 18px 18px 20px; flex: 1; background: linear-gradient(180deg, #fff 0%, #fdf6f2 100%); }
.tkartya__cimke { align-self: flex-start; background: #f1d3cd; color: var(--barna); font-size: 11.5px; font-weight: 700; padding: 3px 10px; border-radius: 8px; }
.tkartya__nev { font-family: var(--cim); font-weight: 700; font-size: 19px; line-height: 1.25; letter-spacing: -.01em; color: var(--tinta); }
.tkartya__leiras { font-size: 15px; line-height: 1.5; color: #5b4640; flex: 1; }
.tkartya__ar { margin-top: 4px; padding-top: 12px; border-top: 1px dashed #e3cfc8; font-size: 15px; color: var(--tinta); }
.tkartya__ar b { font-family: var(--cim); font-size: 25px; color: var(--barna); font-variant-numeric: tabular-nums; }
.tkartya__ar small { font-size: 14px; color: var(--tinta); }
.tkartya__gomb { margin-top: 6px; display: inline-flex; align-items: center; gap: .45em; color: var(--korall-s); font-weight: 700; font-size: 15px; }
.tkartya:hover .nyil { transform: translateX(4px); }
.arnote { margin-top: 26px; text-align: center; font-size: 14px; color: #6f4a41; }

/* ---------- előnyök ---------- */
.lelonyok { background: linear-gradient(180deg, #fff 0%, var(--krem) 100%); }
.lelonyok__racs { margin-top: 44px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.lelonyok__racs--4 { grid-template-columns: repeat(4, 1fr); }
.lelony { position: relative; overflow: hidden; background: linear-gradient(180deg, #fff 0%, #fdf4f0 100%); border-radius: 26px; padding: 30px 26px 30px; box-shadow: var(--arnyek); border: 1px solid #f0dcd3; transition: transform .3s, box-shadow .3s; }
.lelony::before { content: ""; position: absolute; left: 26px; right: 26px; top: 0; height: 4px; border-radius: 0 0 6px 6px; background: linear-gradient(90deg, var(--korall), var(--barna)); }
.lelony::after { content: ""; position: absolute; width: 150px; height: 150px; right: -60px; bottom: -70px; border-radius: 50%; background: radial-gradient(circle, rgb(216 104 98 / .16), transparent 70%); pointer-events: none; }
.lelony:hover { transform: translateY(-5px); box-shadow: var(--arnyek-n); }
.lelonyok .lelony .ikon { width: 52px; height: 52px; border-radius: 16px; background: linear-gradient(145deg, #e07a73, var(--barna)); color: #fff; box-shadow: 0 10px 20px -10px rgb(130 60 46 / .7); }
.lelonyok .lelony .ikon .ic { width: 26px; height: 26px; }
.lelony h3 { margin-top: 18px; font-family: var(--cim); font-weight: 700; font-size: 20px; line-height: 1.25; }
.lelony p { margin-top: 8px; color: #5b4640; font-size: 15.5px; }
.lelonyok--ikonos { background: #fff; }
.szuro { margin: 30px auto 0; max-width: 780px; display: flex; align-items: center; gap: 16px; padding: 16px 24px 16px 18px; border-radius: 20px; background: linear-gradient(135deg, #fff, var(--korall-v)); border: 1px solid #f1cfc9; border-left: 5px solid var(--korall); color: var(--barna); font-weight: 500; text-align: left; box-shadow: var(--arnyek); }
.szuro .ikon { width: 42px; height: 42px; border-radius: 13px; background: #fff; color: var(--korall-s); display: grid; place-items: center; flex: none; box-shadow: 0 4px 10px -4px rgb(90 42 32 / .35); }

/* ---------- folyamat ---------- */
.folyamat { background: linear-gradient(170deg, #ecd5ce 0%, #d9b5ad 55%, #c9a198 100%); }
.folyamat .szakasz__cim { color: var(--barna-mm); max-width: 26ch; }
.lfolyamat { list-style: none; padding: 0; margin-top: 48px; display: grid; gap: 20px; grid-template-columns: repeat(5, 1fr); counter-reset: x; }
.lfolyamat--4 { grid-template-columns: repeat(4, 1fr); }
.lfolyamat li { position: relative; background: linear-gradient(180deg, #fff 0%, #fdf4f0 100%); border-radius: 24px; padding: 24px 22px 26px; box-shadow: var(--arnyek); border: 1px solid #f0dcd3; transition: transform .3s; }
.lfolyamat li:hover { transform: translateY(-4px); }
.lfolyamat li:not(:last-child)::after { content: ""; position: absolute; right: -17px; top: 34px; width: 28px; height: 28px; border-radius: 50%; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c4524c' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 6l6 6-6 6'/%3E%3C/svg%3E") center / 16px no-repeat; box-shadow: 0 4px 12px -4px rgb(90 42 32 / .5); z-index: 2; }
.lfolyamat .szam { font-family: var(--cim); font-weight: 700; font-size: 38px; line-height: 1; letter-spacing: -.02em; background: linear-gradient(135deg, var(--korall), var(--barna)); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.lfolyamat h3 { margin-top: 12px; font-family: var(--cim); font-weight: 700; font-size: 18.5px; line-height: 1.25; }
.lfolyamat p { margin-top: 8px; font-size: 15px; color: #5b4640; }

/* ---------- referenciák ---------- */
.lreferencia { background: #fff; }
.refrac { margin-top: 44px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.refrac figure { margin: 0; }
.refrac img { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: 24px; box-shadow: var(--arnyek); background: var(--pezsgo); }
.refrac figcaption { margin-top: 12px; font-size: 15px; font-weight: 500; text-align: center; color: #4a3630; text-wrap: balance; }
.felirat { margin: 26px auto 0; text-align: center; font-size: 14px; color: var(--halk); font-style: italic; }
.galeria { margin-top: 44px; display: grid; gap: 14px; grid-template-columns: 2fr 1fr 1fr; grid-template-rows: repeat(2, 1fr); }
.galeria figure { margin: 0; overflow: hidden; border-radius: 22px; box-shadow: var(--arnyek); background: var(--pezsgo); min-height: 0; }
.galeria img { width: 100%; height: 100%; object-fit: cover; }
.galeria__nagy { grid-row: 1 / 3; }

/* ---------- vélemény ---------- */
.lvelemeny { background: linear-gradient(160deg, var(--barna) 0%, var(--barna-m) 60%, var(--barna-mm) 100%); color: var(--pezsgo); overflow: hidden; }
.lvelemeny::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%); }
.nagyidezet { position: relative; margin: 0 auto; max-width: 820px; text-align: center; }
.nagyidezet .csillagok .ic { width: 22px; height: 22px; }
.nagyidezet blockquote { margin: 18px 0 0; font-family: var(--cim); font-weight: 500; font-size: clamp(22px, 2.8vw, 31px); line-height: 1.35; letter-spacing: -.01em; color: #fff; text-wrap: balance; }
.nagyidezet figcaption { margin-top: 22px; font-size: 16.5px; color: var(--pezsgo); }
.nagyidezet figcaption small { display: block; margin-top: 6px; font-size: 13.5px; color: var(--rozsa); }
.lvelemeny--tobb { background: var(--pezsgo); color: var(--tinta); }
.lvelemeny--tobb::before { display: none; }
.lvelemeny__racs { position: relative; margin: 44px auto 0; max-width: 960px; display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.idezet { margin: 0; background: #fff; border-radius: 26px; padding: 28px 30px; box-shadow: var(--arnyek); }
.idezet blockquote { margin: 12px 0 0; font-family: var(--cim); font-weight: 500; font-size: 19px; line-height: 1.45; text-wrap: pretty; }
.idezet figcaption { margin-top: 16px; font-size: 15px; color: var(--halk); }
.idezet figcaption b { color: var(--tinta); }

/* ---------- amit vállalunk ---------- */
.vallalas { background: linear-gradient(160deg, var(--kod) 0%, #ecedeb 100%); }
.vallalas__racs { display: grid; grid-template-columns: 1fr auto; gap: 48px; align-items: center; }
.vallalas h2 { font-family: var(--cim); font-weight: 700; font-size: clamp(28px, 3.4vw, 40px); letter-spacing: -.02em; line-height: 1.12; }
.vallalas__kartyak { margin-top: 28px; display: grid; gap: 16px; grid-template-columns: repeat(3, 1fr); }
.vallalas .gar-k { grid-template-columns: 1fr; gap: 8px; align-content: start; padding: 22px 22px 24px; }
.vallalas .gar-k:hover { transform: translateY(-4px); }
.vallalas .gar-k .ikon { grid-row: auto; }
.vallalas__julia { text-align: center; }
.vallalas__julia img { width: 150px; height: 150px; border-radius: 50%; object-fit: cover; border: 5px solid #fff; box-shadow: var(--arnyek); margin-inline: auto; }
.vallalas__julia p { margin-top: 14px; line-height: 1.4; }
.vallalas__julia span { color: var(--halk); font-size: 14.5px; }

/* ---------- GYIK ---------- */
.lgyik { background: #fff; }
.lgyik .gyik__lista { max-width: 820px; margin: 40px auto 0; }
.lgyik .gyik details { background: var(--krem); box-shadow: none; border: 1px solid var(--vonal); }

/* ---------- ajánlatkérés ---------- */
.lajanlat__fej { position: relative; margin-bottom: 40px; }
.lajanlat__racs { align-items: start; grid-template-columns: .8fr 1.2fr; gap: 48px; }
.lbal__kartya { position: relative; overflow: hidden; background: linear-gradient(180deg, #fff 0%, #fdf4f0 100%); border: 1px solid #f0dcd3; border-radius: 28px; padding: 28px 26px 12px; box-shadow: var(--arnyek-n); }
.lbal__kartya::before { content: ""; position: absolute; left: 26px; right: 26px; top: 0; height: 5px; border-radius: 0 0 6px 6px; background: linear-gradient(90deg, var(--korall), var(--barna)); }
.lbal .lbal__julia { display: flex; align-items: center; gap: 16px; }
.lbal__julia img { width: 72px; height: 72px; border-radius: 50%; object-fit: cover; border: 3px solid var(--pezsgo); }
.lbal__julia b { display: block; font-family: var(--cim); font-size: 19px; }
.lbal__julia span { font-size: 14px; color: var(--halk); }
.lbal__idezet { position: relative; margin: 18px 0 0; padding: 16px 18px 16px 52px; border-radius: 18px; background: #fff; border: 1px solid #f0dcd3; font-family: var(--cim); font-weight: 500; font-size: 18px; line-height: 1.45; color: var(--barna-m); text-wrap: pretty; }
.lbal__idezet::before { content: "\201E"; position: absolute; left: 14px; top: 2px; font-family: Georgia, serif; font-size: 56px; line-height: 1; color: var(--korall); }
.tenyek { margin-top: 12px; padding: 0 2px; }
.tenyek li { display: flex; align-items: center; gap: 14px; padding: 14px 0; font-weight: 600; font-size: 15.5px; border-bottom: 1px solid var(--vonal); }
.tenyek li:last-child { border-bottom: 0; }
.tenyek .ikon { width: 36px; height: 36px; border-radius: 11px; }
.tulaj .jelveny-sor { font-size: 15px; color: var(--halk); }
.lurlap { grid-template-columns: 1fr 1fr; }
.lurlap .lepes { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1fr; gap: 14px 16px; }
.lurlap .lepes[hidden], .figyelem[hidden], [data-hivas][hidden] { display: none; }
.mezo--csoport { border: 0; margin: 0; padding: 0; min-width: 0; }
.mezo--csoport > legend { padding: 0; margin-bottom: 8px; }
.chiplista { display: flex; flex-wrap: wrap; gap: 8px; }
.chip { position: relative; cursor: pointer; }
.chip input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.chip span { display: inline-flex; align-items: center; min-height: 42px; padding: 8px 17px; border-radius: 999px; border: 1.5px solid var(--vonal); background: #fff; font-weight: 600; font-size: 15px; line-height: 1.2; transition: background .2s, border-color .2s, color .2s; }
.chip:hover span { border-color: #dcbfb5; }
.chip input:checked + span { background: var(--barna); border-color: var(--barna); color: #fff; }
.chip input:focus-visible + span { outline: 3px solid var(--korall); outline-offset: 2px; }
.mezo--csoport.hibas .chip span { border-color: #d6453d; }
.mezo--csoport .hiba { margin-top: 6px; }
.figyelem { grid-column: 1 / -1; display: flex; gap: 12px; align-items: flex-start; padding: 12px 16px; border-radius: 14px; background: #fff6df; border: 1px solid #f0dfa6; color: #6b5300; font-size: 14.5px; line-height: 1.45; }
.figyelem .ic { width: 20px; height: 20px; margin-top: 1px; }
.mezo > label small, .mezo > .cimke small { font-weight: 400; color: var(--halk); }
.lepesjelzo { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.lepesjelzo__sav i { display: block; height: 6px; border-radius: 6px; background: #ecdcd5; margin-bottom: 8px; }
.lepesjelzo__sav span { font-size: 13px; font-weight: 700; color: var(--halk); }
.lepesjelzo__sav.is-aktiv i, .lepesjelzo__sav.is-kesz i { background: var(--korall); }
.lepesjelzo__sav.is-aktiv span, .lepesjelzo__sav.is-kesz span { color: var(--tinta); }
.link-gomb { grid-column: 1 / -1; justify-self: center; border: 0; background: none; color: var(--halk); font-weight: 600; font-size: 14.5px; cursor: pointer; padding: 6px 10px; }
.link-gomb:hover { color: var(--korall-s); }
.lajanlat .urlap-kartya h3 { text-align: left; }
.lurlap .mezo input[type="text"], .lurlap .mezo input[type="email"], .lurlap .mezo input[type="tel"] { min-height: 48px; }

/* ---------- összes termék (/termekek/) ---------- */
.hubhos { position: relative; overflow: hidden; background: radial-gradient(800px 360px at 8% 0%, #fff 0%, transparent 60%), linear-gradient(135deg, #fff 0%, var(--krem) 45%, var(--pezsgo) 100%); }
.hubhos::before { content: ""; position: absolute; width: 420px; height: 420px; right: -120px; top: -200px; border-radius: 50%; background: radial-gradient(circle, rgb(216 104 98 / .2), transparent 68%); pointer-events: none; }
.hubhos .tarolo { position: relative; padding-block: 30px 34px; text-align: center; }
.hubhos .eyebrow { margin-bottom: 8px; }
.hubhos h1 { font-family: var(--cim); font-weight: 700; font-size: clamp(28px, 3.4vw, 40px); line-height: 1.1; letter-spacing: -.03em; }
.hubhos h1 em { font-style: normal; background: linear-gradient(100deg, var(--korall) 0%, var(--barna) 100%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.hubhos__szoveg { margin: 10px auto 0; max-width: 46em; color: #4a3630; text-wrap: balance; }
.hubszuro { margin-top: 22px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; text-align: left; }
.hubcsempe { all: unset; box-sizing: border-box; cursor: pointer; display: flex; align-items: center; gap: 12px; padding: 12px 14px; background: #fff; border: 1.5px solid var(--vonal); border-radius: 18px; box-shadow: 0 8px 20px -14px rgb(90 42 32 / .6); transition: transform .2s, box-shadow .2s, border-color .2s, background .2s; }
.hubcsempe:hover { transform: translateY(-3px); border-color: #e3b9b1; box-shadow: var(--arnyek); }
.hubcsempe:focus-visible { outline: 3px solid var(--korall); outline-offset: 2px; }
.hubcsempe .ikon { width: 40px; height: 40px; border-radius: 13px; background: var(--korall-v); color: var(--korall-s); display: grid; place-items: center; flex: none; transition: background .2s, color .2s; }
.hubcsempe .ikon .ic { width: 21px; height: 21px; }
.hubcsempe__szoveg { display: grid; min-width: 0; }
.hubcsempe b { font-family: var(--cim); font-size: 15px; line-height: 1.2; color: var(--tinta); }
.hubcsempe small { font-size: 12.5px; color: var(--halk); }
.hubcsempe.is-aktiv { background: linear-gradient(135deg, var(--korall) 0%, var(--barna) 100%); border-color: transparent; box-shadow: 0 14px 26px -12px rgb(130 60 46 / .8); }
.hubcsempe.is-aktiv b, .hubcsempe.is-aktiv small { color: #fff; }
.hubcsempe.is-aktiv .ikon { background: rgb(255 255 255 / .2); color: #fff; }
.hubkat { padding-block: 52px 56px; }
.hubkat:nth-of-type(odd) { background: linear-gradient(180deg, var(--krem), var(--pezsgo)); }
.hubkat:nth-of-type(even) { background: #fff; }
.hubkat__cim { display: flex; align-items: center; gap: 14px; font-family: var(--cim); font-weight: 700; font-size: clamp(24px, 2.8vw, 32px); letter-spacing: -.02em; line-height: 1.15; }
.hubkat__cim .ikon { width: 46px; height: 46px; border-radius: 15px; background: linear-gradient(145deg, #e07a73, var(--barna)); color: #fff; display: grid; place-items: center; flex: none; box-shadow: 0 10px 20px -10px rgb(130 60 46 / .7); }
.hubkat__cim .ikon .ic { width: 24px; height: 24px; }
.hubkat__leiras { margin-top: 8px; color: var(--halk); }
.hubrac { margin-top: 26px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.hubkartya { display: flex; flex-direction: column; background: #fff; border-radius: var(--sugar); overflow: hidden; box-shadow: var(--arnyek); border: 1px solid var(--vonal); text-decoration: none; transition: transform .3s, box-shadow .3s; }
.hubkartya:hover { transform: translateY(-6px); box-shadow: var(--arnyek-n); }
.hubkartya__kep { position: relative; display: block; aspect-ratio: 3 / 2; overflow: hidden; background: var(--pezsgo); }
.hubkartya__kep img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s; }
.hubkartya:hover .hubkartya__kep img { transform: scale(1.05); }
.hubkartya__cimke { position: absolute; left: 12px; top: 12px; padding: 4px 11px; border-radius: 999px; background: rgb(255 255 255 / .92); color: var(--barna); font-size: 12px; font-weight: 700; box-shadow: 0 4px 10px -4px rgb(0 0 0 / .4); }
.hubkartya__tartalom { display: flex; flex-direction: column; gap: 8px; padding: 20px 22px 22px; flex: 1; background: linear-gradient(180deg, #fff 0%, #fdf6f2 100%); }
.hubkartya__tartalom b { font-family: var(--cim); font-size: 20px; line-height: 1.25; }
.hubkartya__tartalom > span:not(.tkartya__gomb) { font-size: 15px; color: #5b4640; flex: 1; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.hubkartya:hover .nyil { transform: translateX(4px); }
.hubcta { padding-block: 56px 72px; background: #fff; }
.hubcta__doboz { position: relative; overflow: hidden; display: grid; grid-template-columns: auto 1fr auto; gap: 28px; align-items: center; padding: 38px 42px; border-radius: 32px; color: #fff; background: radial-gradient(520px 320px at 100% 0%, rgb(216 104 98 / .45), transparent 70%), linear-gradient(135deg, var(--barna) 0%, var(--barna-mm) 100%); box-shadow: var(--arnyek-n); }
.hubcta__doboz .ikon { width: 68px; height: 68px; border-radius: 22px; background: rgb(255 255 255 / .14); color: #fff; display: grid; place-items: center; }
.hubcta__doboz .ikon .ic { width: 34px; height: 34px; }
.hubcta h2 { font-family: var(--cim); font-weight: 700; font-size: clamp(26px, 3vw, 34px); letter-spacing: -.02em; line-height: 1.15; }
.hubcta p { margin-top: 8px; color: rgb(244 227 220 / .92); max-width: 46em; text-wrap: pretty; }
.hubcta__gombok { display: grid; gap: 12px; justify-items: stretch; }
.hubcta .telpill { justify-self: center; }

/* ---------- tablet ---------- */
@media (max-width: 1100px) {
  .tkartyak, .tkartyak--4 { grid-template-columns: repeat(3, 1fr); }
  .tkartyak--3 { grid-template-columns: repeat(3, 1fr); }
  .lfolyamat { grid-template-columns: repeat(3, 1fr); }
  .lfolyamat--4 { grid-template-columns: repeat(2, 1fr); }
  .lelonyok__racs--4 { grid-template-columns: repeat(2, 1fr); }
  .elonysor ul { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 1020px) {
  .lhos__racs { grid-template-columns: 1fr; gap: 26px; padding-block: 36px 52px; text-align: center; }
  .lhos__bal { display: contents; }
  .lhos__bal > * { margin-inline: auto; }
  .lhos h1 { order: 1; }
  .lhos__kep { order: 2; max-width: 640px; width: 100%; margin-inline: auto; }
  .lhos__kep > img { aspect-ratio: 16 / 11; border-radius: 90px 26px 26px 26px; }
  .jelvenyek { order: 3; margin-top: 0; justify-content: center; }
  .lhos__kozonseg { order: 5; margin-top: 0; }
  .lhos__gombok { order: 4; margin-top: 0; justify-content: center; }
  .lhos__szoveg { order: 5; margin-top: 0; }
  .pontok { order: 6; margin-top: 0; text-align: left; }
  .minimum { order: 7; margin-top: 0; }
  .jelveny--fent { right: 8px; }
  .jelveny--lent { left: 8px; }
  .illik__racs, .lvelemeny__racs { grid-template-columns: 1fr; }
  .lelonyok__racs { grid-template-columns: 1fr; max-width: 560px; margin-inline: auto; }
  .lajanlat__racs, .vallalas__racs { grid-template-columns: 1fr; gap: 36px; }
  .vallalas__kartyak { grid-template-columns: 1fr; }
  .vallalas__julia { order: -1; display: flex; align-items: center; gap: 18px; text-align: left; }
  .vallalas__julia img { width: 84px; height: 84px; margin: 0; }
  .vallalas__julia p { margin: 0; }
  .refrac { grid-template-columns: repeat(2, 1fr); }
  .hubrac { grid-template-columns: repeat(2, 1fr); }
  .hubszuro { grid-template-columns: repeat(3, 1fr); }
  .hubcta__doboz { grid-template-columns: auto 1fr; }
  .hubcta__gombok { grid-column: 1 / -1; grid-template-columns: 1fr auto; align-items: center; }
  .lbal { text-align: left; }
}
/* ---------- mobil ---------- */
@media (max-width: 720px) {
  /* mobil első képernyő: kis felirat, főcím, kép, ikonos jelvények egymás mellett, széles gomb (az alcím alá kerül) */
  .lhos__racs { gap: 10px; padding-block: 8px 34px; }
  .lhos__kozonseg { font-size: 12px; }
  .lhos h1 { font-size: clamp(22px, 6.4vw, 27px); line-height: 1.1; }
  .lhos__szoveg { font-size: 16px; }
  .lhos__gombok { width: 100%; gap: 8px; }
  .lhos__gombok .gomb { width: 100%; min-width: 0; min-height: 52px; }
  .lhos__gombok .gomb--ures { min-height: 44px; font-size: 15px; }
  .lhos__kep > img { aspect-ratio: auto; height: clamp(130px, 22vh, 170px); border-radius: 60px 20px 20px 20px; object-position: 50% 35%; }
  .jelveny { display: none; }
  .jelvenyek { width: 100%; display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; }
  .jelvenyek li { flex-direction: column; text-align: center; gap: 6px; padding: 8px 2px 7px; border-radius: 16px; font-size: 10px; line-height: 1.2; overflow-wrap: break-word; box-shadow: none; }
  .jelvenyek .ikon { width: 32px; height: 32px; }
  .jelvenyek .ikon .ic { width: 17px; height: 17px; }
  .bizalmisav ul { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 12px; padding-block: 14px; font-size: 13.5px; }
  .bizalmisav li { align-items: center; gap: 8px; line-height: 1.25; white-space: normal; }
  .bizalmisav .ikon { width: 28px; height: 28px; }
  .bizalmisav li:last-child:nth-child(odd) { grid-column: 1 / -1; justify-self: center; }
  .hubhos .tarolo { padding-block: 14px 18px; }
  .hubhos .eyebrow { font-size: 10.5px; margin-bottom: 4px; }
  .hubhos__szoveg { display: none; }
  .hubszuro { margin-top: 12px; grid-template-columns: 1fr 1fr; gap: 8px; }
  .hubcsempe { padding: 9px 10px; gap: 9px; border-radius: 16px; }
  .hubcsempe .ikon { width: 34px; height: 34px; border-radius: 11px; }
  .hubcsempe b { font-size: 13px; }
  .hubcsempe small { font-size: 11.5px; }
  .hubcsempe[data-kat="mind"] { grid-column: 1 / -1; }
  .hubkat { padding-block: 34px 38px; }
  .hubkat__cim .ikon { width: 40px; height: 40px; }
  .hubcta { padding-block: 34px 48px; }
  .hubcta__doboz { grid-template-columns: 1fr; text-align: center; justify-items: center; padding: 28px 22px; gap: 16px; border-radius: 26px; }
  .hubcta__gombok { grid-template-columns: 1fr; width: 100%; }
  .lelonyok .lelony .ikon { width: 46px; height: 46px; }
  .lfolyamat li:not(:last-child)::after { display: none; }
  .szuro { flex-direction: column; text-align: center; gap: 10px; border-left-width: 1px; border-top: 5px solid var(--korall); }
  .jelveny { padding: 8px 12px; }
  .jelveny b { font-size: 18px; }
    .elonysor li { flex-direction: column; text-align: center; font-size: 13px; gap: 8px; }
  .tkartyak, .tkartyak--3, .tkartyak--4 { grid-template-columns: 1fr; gap: 18px; margin-top: 32px; }
  .tkartya { flex-direction: row; }
  .tkartya__kep { flex: 0 0 38%; aspect-ratio: auto; min-height: 100%; }
  .tkartya__tartalom { padding: 14px 16px 16px; gap: 6px; }
  .tkartya__nev { font-size: 18px; }
  .tkartya__leiras { font-size: 14.5px; }
  .lfolyamat, .lfolyamat--4 { grid-template-columns: 1fr; gap: 14px; margin-top: 32px; }
  .lfolyamat li { display: grid; grid-template-columns: 56px 1fr; column-gap: 14px; padding: 18px; }
  .lfolyamat .szam { grid-row: span 2; font-size: 32px; }
  .lfolyamat h3 { margin-top: 0; }
  .lfolyamat p { margin-top: 4px; }
  .refrac { gap: 12px; margin-top: 30px; }
  .refrac img { border-radius: 18px; }
  .refrac figcaption { font-size: 13.5px; }
  .galeria { grid-template-columns: 1fr 1fr; grid-template-rows: auto; margin-top: 30px; gap: 10px; }
  .galeria__nagy { grid-column: 1 / -1; grid-row: auto; aspect-ratio: 4 / 3; }
  .galeria__kicsi { aspect-ratio: 1; }
  .lelonyok__racs--4 { grid-template-columns: 1fr; }
  .illik__doboz { padding: 24px 20px 18px; border-radius: 24px; }
  .illik__doboz::before { left: 20px; right: 20px; }
  .illik__doboz h3 { font-size: 19px; }
  .idezet, .lelony { padding: 22px 20px; }
  .hubrac { grid-template-columns: 1fr; }
  .lbal { text-align: center; }
  .lbal__julia { text-align: left; }
  .tulaj { justify-content: center; text-align: left; }
  .lurlap .lepes { grid-template-columns: 1fr 1fr; gap: 8px 10px; }
  .lajanlat .urlap-kartya h3 { text-align: center; }
  .lajanlat .urlap-kartya .al { display: block; text-align: center; font-size: 14px; }
  .chip span { min-height: 38px; padding: 6px 13px; font-size: 14px; }
  .lurlap .mezo input[type="text"], .lurlap .mezo input[type="email"], .lurlap .mezo input[type="tel"] { min-height: 44px; }
  .lurlap .mezo textarea { height: 76px; min-height: 76px; }
  .mezo > label, .mezo > .cimke { font-size: 13px; }
  .lurlap .mezo--teljes { grid-column: 1 / -1; }
}
@media (max-width: 400px) {
  .lurlap .lepes { grid-template-columns: 1fr; }
}

@media (min-width: 721px) { .videok .rac3--ketto { grid-template-columns: repeat(2, 1fr); max-width: 700px; } }

/* ---------- szolgáltatás-oldalak (adnyomda.hu-ról átvett szolgáltatások) ---------- */
.lhos--szolg .lhos__kep > img { aspect-ratio: 4 / 3; }
.szolg { background: #fff; }
.szolg__racs { display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: center; }
.szolg__kep img { width: 100%; height: auto; border-radius: 30px 110px 30px 30px; box-shadow: var(--arnyek-n); background: var(--pezsgo); }
.szolg__szoveg > * + * { margin-top: 16px; }
.szolg__cim { font-family: var(--cim); font-weight: 700; font-size: clamp(26px, 3vw, 36px); line-height: 1.15; letter-spacing: -.02em; text-wrap: balance; }
.szolg__szoveg .szolg__cim::before { content: ""; display: block; width: 54px; height: 5px; border-radius: 5px; margin-bottom: 16px; background: linear-gradient(90deg, var(--korall), var(--barna)); }
.szolg__szoveg p { text-wrap: pretty; color: #4a3630; font-size: 17.5px; }
.szolg__szoveg .gomb { margin-top: 26px; }
.szolg__lista { display: grid; gap: 10px; }
.szolg__lista li { display: grid; grid-template-columns: 26px 1fr; gap: 12px; align-items: start; padding: 12px 16px; border-radius: 16px; background: linear-gradient(180deg, #fff, #fdf4f0); border: 1px solid #f0dcd3; line-height: 1.45; }
.szolg__lista .jel { width: 24px; height: 24px; border-radius: 50%; display: grid; place-items: center; background: linear-gradient(145deg, #4cb87c, #2f8a58); color: #fff; margin-top: 1px; }
.szolg__lista .jel .ic { width: 14px; height: 14px; stroke-width: 3; }
.szolg__nyilas { display: grid; gap: 8px; }
.szolg__nyilas li { display: grid; grid-template-columns: 1fr 24px 1.2fr; gap: 10px; align-items: center; padding: 10px 16px; border-radius: 16px; background: #fff; border: 1px solid #f0dcd3; box-shadow: var(--arnyek); font-size: 15.5px; line-height: 1.35; }
.szolg__nyilas li > span:first-child { font-weight: 700; color: var(--barna); }
.szolg__nyilas .ic { width: 18px; height: 18px; color: var(--korall-s); }
.rokon { background: linear-gradient(180deg, #fff 0%, var(--krem) 100%); }
.hubrac--4 { grid-template-columns: repeat(4, 1fr); gap: 20px; }
.hubrac--4 .hubkartya__tartalom { padding: 16px 18px 18px; }
.hubrac--4 .hubkartya__tartalom b { font-size: 18px; }

/* kapcsolat */
.kapcsolat__hos .tarolo { padding-block: 34px 28px; }
.kapcsolat { background: #fff; padding-block: 36px 72px; }
.kapcsolat__racs { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.kapcsolat__kartya { position: relative; overflow: hidden; display: flex; align-items: center; gap: 16px; padding: 22px 22px; border-radius: 24px; background: linear-gradient(180deg, #fff 0%, #fdf4f0 100%); border: 1px solid #f0dcd3; box-shadow: var(--arnyek); text-decoration: none; color: inherit; transition: transform .3s, box-shadow .3s; }
a.kapcsolat__kartya:hover { transform: translateY(-5px); box-shadow: var(--arnyek-n); }
.kapcsolat__kartya::before { content: ""; position: absolute; left: 22px; right: 22px; top: 0; height: 4px; border-radius: 0 0 6px 6px; background: linear-gradient(90deg, var(--korall), var(--barna)); }
.kapcsolat__kartya .ikon { width: 52px; height: 52px; border-radius: 16px; background: linear-gradient(145deg, #e07a73, var(--barna)); color: #fff; display: grid; place-items: center; flex: none; box-shadow: 0 10px 20px -10px rgb(130 60 46 / .7); }
.kapcsolat__kartya .ikon .ic { width: 26px; height: 26px; }
.kapcsolat__kartya small { display: block; font-size: 13px; color: var(--halk); font-weight: 600; }
.kapcsolat__kartya b { display: block; font-family: var(--cim); font-size: 17px; line-height: 1.3; overflow-wrap: anywhere; }
.kapcsolat__kartya b.halk { color: var(--halk); font-weight: 600; font-size: 15px; }
.kapcsolat__terkep-cim { margin-top: 46px; font-family: var(--cim); font-size: 26px; font-weight: 700; letter-spacing: -.02em; }
.kapcsolat__terkep { position: relative; display: block; margin-top: 16px; border-radius: 28px; overflow: hidden; box-shadow: var(--arnyek-n); border: 1px solid var(--vonal); }
.kapcsolat__terkep img { width: 100%; height: auto; display: block; }
.kapcsolat__terkep-gomb { position: absolute; right: 18px; bottom: 18px; display: inline-flex; align-items: center; gap: 8px; padding: 11px 18px; border-radius: 999px; background: #fff; color: var(--barna); font-weight: 700; font-size: 15px; box-shadow: var(--arnyek); transition: transform .2s; }
.kapcsolat__terkep:hover .kapcsolat__terkep-gomb { transform: translateY(-2px); }

/* jogi oldalak */
.jogi { background: #fff; padding-block: 40px 80px; }
.jogi__szoveg { max-width: 860px; margin-inline: auto; padding: 36px 40px; border-radius: 28px; background: linear-gradient(180deg, #fff, #fdf8f5); border: 1px solid var(--vonal); box-shadow: var(--arnyek); }
.jogi__szoveg h2 { margin-top: 34px; font-family: var(--cim); font-size: 22px; font-weight: 700; letter-spacing: -.01em; color: var(--barna); }
.jogi__szoveg h2:first-child { margin-top: 0; }
.jogi__szoveg p { margin-top: 12px; color: #4a3630; font-size: 16px; line-height: 1.65; overflow-wrap: anywhere; }

/* lábléc: linkoszlopok -> uj.css (minden oldalon ugyanaz) */

@media (max-width: 1020px) {
  .szolg__racs { grid-template-columns: 1fr; gap: 30px; }
  .szolg__kep img { max-width: 560px; margin-inline: auto; border-radius: 26px 90px 26px 26px; }
  .hubrac--4 { grid-template-columns: repeat(2, 1fr); }
  .kapcsolat__racs { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 720px) {
  .kapcsolat__racs { grid-template-columns: 1fr; gap: 12px; }
  .kapcsolat__kartya { padding: 18px 18px; }
  .hubrac--4 { grid-template-columns: 1fr 1fr; gap: 12px; }
  .hubrac--4 .hubkartya__tartalom b { font-size: 15.5px; }
  .hubrac--4 .hubkartya__cimke { display: none; }
  .szolg__nyilas li { grid-template-columns: 1fr; gap: 2px; }
  .szolg__nyilas .ic { display: none; }
  .jogi__szoveg { padding: 22px 18px; border-radius: 22px; }
  .szolg__szoveg .gomb { width: 100%; }
}

/* ---------- bizalmi sáv: lebegő kártya; ikoncsempe + nagy kiemelt szöveg + felirat ---------- */
.bizalmisav { position: relative; z-index: 2; margin-top: -40px; padding-bottom: 6px; background: transparent; color: var(--tinta); }
.bizalmisav ul { position: relative; display: flex; flex-wrap: nowrap; gap: 0; padding: 0; overflow: hidden; border-radius: 30px; border: 1px solid #f0dcd3; background: radial-gradient(420px 160px at 100% 0%, rgb(224 122 115 / .16), transparent 70%), radial-gradient(380px 140px at 0% 100%, rgb(244 227 220 / .9), transparent 70%), linear-gradient(180deg, #fff 0%, #fdf4f0 100%); box-shadow: 0 30px 60px -28px rgb(90 42 32 / .55), 0 2px 0 rgb(255 255 255 / .8) inset; }
.bizalmisav ul::before { content: ""; position: absolute; left: 30px; right: 30px; top: 0; height: 5px; border-radius: 0 0 8px 8px; background: linear-gradient(90deg, var(--korall), var(--barna)); }
.bizalmisav li { position: relative; flex: 1 1 0; min-width: 0; display: flex; align-items: center; gap: 12px; padding: 26px 16px 22px; line-height: 1.2; }
.bizalmisav li + li::before { content: ""; position: absolute; left: 0; top: 24px; bottom: 20px; width: 1px; background: linear-gradient(180deg, transparent, #e8c9c1 25%, #e8c9c1 75%, transparent); }
.bizalmisav .ikon { width: 46px; height: 46px; border-radius: 15px; flex: none; display: grid; place-items: center; color: #fff; background: linear-gradient(145deg, #e8847c 0%, var(--korall-s) 55%, var(--barna) 100%); box-shadow: 0 12px 20px -10px rgb(130 60 46 / .75), inset 0 1px 0 rgb(255 255 255 / .35); transition: transform .25s; }
.bizalmisav li:hover .ikon { transform: translateY(-3px) rotate(-4deg); }
.bizalmisav .ikon .ic { width: 23px; height: 23px; stroke-width: 1.9; }
.biz__szoveg { min-width: 0; display: block; }
.biz__szoveg b { display: flex; align-items: center; flex-wrap: wrap; gap: 2px 7px; font-family: var(--cim); font-weight: 700; font-size: 20px; letter-spacing: -.015em; line-height: 1.1; color: var(--barna); }
.biz__csillag { display: inline-flex; gap: 1px; color: #f5a623; }
.biz__csillag .ic { width: 11px; height: 11px; fill: currentColor; stroke: none; }
.biz__szoveg small { display: block; margin-top: 3px; font-size: 13.5px; line-height: 1.3; color: var(--halk); font-weight: 500; }
.bizalmisav--rovid ul { justify-content: center; }
.bizalmisav--rovid li { flex: 0 1 300px; }
@media (max-width: 1020px) {
  .bizalmisav ul { flex-wrap: wrap; }
  .bizalmisav li { flex: 1 1 33%; }
  .bizalmisav li:nth-child(n+4) { border-top: 1px solid #f0dcd3; }
  .bizalmisav li:nth-child(4)::before { display: none; }
}
@media (max-width: 720px) {
  .bizalmisav { margin-top: -26px; }
  .bizalmisav ul { display: grid; grid-template-columns: 1fr 1fr; border-radius: 24px; }
  .bizalmisav ul::before { left: 20px; right: 20px; }
  .bizalmisav li { padding: 18px 12px 16px; gap: 10px; }
  .bizalmisav li + li::before { display: none; }
  .bizalmisav li:nth-child(n+3) { border-top: 1px solid #f0dcd3; }
  .bizalmisav li:nth-child(even) { border-left: 1px solid #f0dcd3; }
  .bizalmisav li:last-child:nth-child(odd) { grid-column: 1 / -1; justify-content: center; }
  .bizalmisav .ikon { width: 40px; height: 40px; border-radius: 13px; }
  .bizalmisav .ikon .ic { width: 20px; height: 20px; }
  .biz__szoveg b { font-size: 17px; }
  .biz__szoveg small { font-size: 12.5px; }
}
@media (max-width: 360px) { .bizalmisav li { gap: 8px; padding-inline: 9px; } .bizalmisav .ikon { width: 36px; height: 36px; } .biz__szoveg b { font-size: 16px; } }

/* hub: kategória-csempék – cím és alcím is egy sorban (az alcím azt foglalja össze, mi tartozik bele) */
.hubszuro { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.hubcsempe { min-width: 0; padding: 13px 14px; }
.hubcsempe b { font-size: 16px; }
.hubcsempe small { font-size: 13px; line-height: 1.3; margin-top: 2px; }
.hubcsempe:not(.is-aktiv):hover .ikon { background: linear-gradient(145deg, #fbe0db, #f4c7bf); }
@media (max-width: 1100px) { .hubszuro { grid-template-columns: repeat(2, minmax(0, 1fr)); } .hubcsempe[data-kat="mind"] { grid-column: auto; } }
@media (max-width: 600px) {
  .hubszuro { grid-template-columns: 1fr; gap: 8px; }
  .hubcsempe { padding: 9px 12px; gap: 12px; }
  .hubcsempe b { font-size: 15px; }
  .hubcsempe small { font-size: 13px; }
}

/* ajánló doboz: a gomb és a telefonszám ugyanolyan széles */
.hubcta .telpill { justify-self: stretch; justify-content: center; }
.hubcta__gombok > * { width: 100%; box-sizing: border-box; }
@media (max-width: 1020px) { .hubcta__gombok { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 720px) { .hubcta__gombok { grid-template-columns: 1fr; } }

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

/* mobil/tablet hős: ugyanaz a rend, mint a főoldalon – főcím, kép, szöveg, gombok, apró ikonos jelvények (nem dobozok) */
@media (max-width: 1020px) {
  .lhos__szoveg { order: 3; }
  .lhos__kozonseg { order: 4; }
  .lhos__gombok { order: 5; }
  .jelvenyek { order: 6; }
  .pontok { order: 7; }
  .minimum { order: 8; }
}
@media (max-width: 720px) {
  .lhos__racs { gap: 14px; }
  .lhos__szoveg { font-size: 16.5px; line-height: 1.5; }
  .jelvenyek { margin-top: 6px; gap: 4px; }
  .jelvenyek li { background: none; border: 0; box-shadow: none; padding: 4px 0 0; gap: 8px; font-size: 12px; line-height: 1.25; font-weight: 500; color: var(--tinta); }
  .jelvenyek .ikon { width: 46px; height: 46px; border-radius: 16px; background: var(--korall-v); }
  .jelvenyek .ikon .ic { width: 20px; height: 20px; }
}

/* ---------- Kapcsolat oldal (ChatGPT látványterv alapján): kártyák + illusztrált térkép egyforma magasan ---------- */
.kontakt { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 28px; align-items: stretch; }
.kontakt__lista { display: grid; gap: 14px; align-content: stretch; grid-auto-rows: 1fr; }
.kontakt__kartya { position: relative; overflow: hidden; display: flex; align-items: center; gap: 18px; padding: 18px 22px; border-radius: 24px; text-decoration: none; color: var(--tinta); background: linear-gradient(180deg, #fff 0%, #fdf4f0 100%); border: 1px solid #f0dcd3; box-shadow: var(--arnyek); transition: transform .25s, box-shadow .25s; }
a.kontakt__kartya:hover { transform: translateY(-3px); box-shadow: var(--arnyek-n); }
.kontakt__kartya .ikon { width: 58px; height: 58px; border-radius: 50%; flex: none; display: grid; place-items: center; color: #fff; background: linear-gradient(145deg, #e8847c, var(--korall-s) 55%, var(--barna)); box-shadow: 0 14px 22px -10px rgb(130 60 46 / .75), inset 0 1px 0 rgb(255 255 255 / .35); }
.kontakt__kartya .ikon .ic { width: 26px; height: 26px; }
.kontakt__szoveg { min-width: 0; display: block; }
.kontakt__szoveg small { display: block; font-size: 13px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: var(--halk); }
.kontakt__szoveg b { display: block; margin-top: 2px; font-family: var(--cim); font-weight: 700; font-size: 20px; line-height: 1.25; letter-spacing: -.01em; }
.kontakt__szoveg em { display: block; font-style: normal; font-size: 15px; color: var(--halk); }
.kontakt__email { font-size: clamp(14.5px, 1.5vw, 18px) !important; }
.kontakt__terkep { position: relative; overflow: hidden; min-height: 420px; border-radius: 30px; border: 6px solid #fff; box-shadow: var(--arnyek-n); background: var(--pezsgo); }
.kontakt__terkep img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.kontakt__pin { position: absolute; left: 56%; top: 44%; transform: translate(-50%, -100%); display: grid; justify-items: center; gap: 6px; }
.kontakt__pin-ikon { position: relative; width: 60px; height: 60px; border-radius: 50% 50% 50% 8px; transform: rotate(-45deg); display: grid; place-items: center; color: #fff; background: linear-gradient(145deg, #e8847c, var(--korall-s) 60%, var(--barna)); box-shadow: 0 18px 28px -10px rgb(130 60 46 / .8); }
.kontakt__pin-ikon .ic { width: 28px; height: 28px; transform: rotate(45deg); }
.kontakt__pin-cimke { padding: 7px 16px; border-radius: 999px; background: #fff; font-family: var(--cim); font-weight: 700; font-size: 15px; box-shadow: var(--arnyek); }
.kontakt__utvonal { position: absolute; left: 50%; bottom: 22px; transform: translateX(-50%); min-height: 48px; padding: 0 26px; font-size: 16px; white-space: nowrap; }
.kontakt__utvonal:hover { transform: translateX(-50%) translateY(-2px); }
@media (max-width: 1020px) { .kontakt { grid-template-columns: 1fr; } .kontakt__terkep { min-height: 340px; } }
@media (max-width: 520px) {
  .kontakt__kartya { gap: 14px; padding: 14px 16px; border-radius: 20px; }
  .kontakt__kartya .ikon { width: 48px; height: 48px; }
  .kontakt__kartya .ikon .ic { width: 22px; height: 22px; }
  .kontakt__szoveg b { font-size: 17.5px; }
  .kontakt__email { font-size: 14px !important; }
  .kontakt__terkep { min-height: 300px; border-width: 4px; border-radius: 24px; }
  .kontakt__pin-ikon { width: 50px; height: 50px; }
}

/* valódi térkép (OpenStreetMap): a jelölő hegye pontosan a cím helyén áll */
.kontakt__terkep img { filter: saturate(.9) contrast(1.02); }
.kontakt__pin { left: 50%; top: 50%; transform: none; display: block; width: 0; height: 0; }
.kontakt__pin-ikon { position: absolute; left: -30px; top: -72px; }
.kontakt__pin-cimke { position: absolute; left: 0; top: 10px; transform: translateX(-50%); white-space: nowrap; text-align: center; line-height: 1.2; padding: 8px 16px; }
.kontakt__pin-cimke small { display: block; font-family: inherit; font-weight: 500; font-size: 12.5px; color: var(--halk); }
.kontakt__forras { position: absolute; right: 8px; bottom: 6px; padding: 2px 8px; border-radius: 6px; background: rgb(255 255 255 / .8); font-size: 11px; color: #444; }
.kontakt__forras a { color: inherit; }
@media (max-width: 520px) { .kontakt__pin-ikon { left: -25px; top: -60px; } }
.kontakt__pin-cimke { width: max-content; }
.kontakt__pin-cimke small { white-space: nowrap; }

/* badge-ek: legfeljebb 2 sor mindenhol */
@media (max-width: 720px) {
  /* hős-jelvények: 2×2, ikon + szöveg egymás mellett (a szöveg 2 sorban elfér) */
  .jelvenyek { grid-template-columns: 1fr 1fr; gap: 10px 8px; }
  .jelvenyek li { flex-direction: row; text-align: left; align-items: center; gap: 10px; padding: 2px 0; font-size: 13px; line-height: 1.25; }
  .jelvenyek .ikon { width: 40px; height: 40px; border-radius: 14px; flex: none; }
  .jelvenyek .ikon .ic { width: 19px; height: 19px; }
  /* bizalmi sáv: ikon felül, alatta a kiemelt sor + egy felirat-sor (összesen 2 sor); a 3 elemű sáv egy sorban */
  .bizalmisav li { flex-direction: column; text-align: center; gap: 8px; padding: 16px 8px 14px; justify-content: flex-start; }
  .biz__szoveg b { justify-content: center; font-size: 17px; }
  .biz__szoveg small { font-size: 12px; margin-top: 2px; }
  .bizalmisav--rovid ul { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .bizalmisav--rovid li { padding-inline: 4px; border-top: 0 !important; }
  .bizalmisav--rovid li + li { border-left: 1px solid #f0dcd3; }
  .bizalmisav--rovid li:last-child:nth-child(odd) { grid-column: auto; }
  .bizalmisav--rovid .biz__szoveg b { font-size: 15.5px; gap: 0 4px; }
  .bizalmisav--rovid .biz__csillag .ic { width: 9px; height: 9px; }
}
@media (max-width: 360px) { .biz__szoveg small { font-size: 11px; } .bizalmisav li { padding-inline: 4px; } }
@media (max-width: 400px) {
  .jelvenyek li { gap: 8px; font-size: 12px; }
  .jelvenyek .ikon { width: 34px; height: 34px; border-radius: 12px; }
  .jelvenyek .ikon .ic { width: 17px; height: 17px; }
}
@media (min-width: 721px) and (max-width: 1439px) { .bizalmisav li { padding-inline: 14px; gap: 10px; } .biz__szoveg small { font-size: 13px; } .bizalmisav .ikon { width: 42px; height: 42px; } }
@media (min-width: 721px) and (max-width: 1100px) { .bizalmisav .ikon { width: 36px; height: 36px; border-radius: 12px; } .bizalmisav .ikon .ic { width: 18px; height: 18px; } .biz__szoveg small { font-size: 12.5px; } .bizalmisav li { padding-inline: 12px; gap: 8px; } }

/* mobilon nincs bizalmi sáv (Feri, 2026-10-21: a hős-jelvények mellett túl sok, nincs hely) */
@media (max-width: 720px) { .bizalmisav { display: none; } }
.hubkat__szoveg { min-width: 0; }
@media (max-width: 400px) { .hubrac--4 { grid-template-columns: 1fr; } }
.tenyek li > span:not(.ikon), .illik__doboz h3 > span:not(.ikon) { min-width: 0; }
.lajanlat__racs > *, .ajanlat__racs > * { min-width: 0; }
@media (max-width: 400px) { .illik__doboz h3 { font-size: 19px; gap: 10px; } .illik__doboz h3 .ikon { width: 38px; height: 38px; } }
