/* =============================================================================
   ERDI BAU — CLEAN REBUILD · KOMPONENSEK
   Saját komponens-CSS az eb-core.css design systemre építve. eb-* névtér.
   ============================================================================= */
@layer components {

/* ============================================================
   HEADER — lebegő „pill" navigáció
   ============================================================ */
.eb-header {
  position: fixed; inset: 0 0 auto 0; z-index: var(--eb-z-header);
  padding: 14px var(--eb-gutter) 0;
  transition: padding var(--eb-ease);
}
.eb-header__bar {
  max-width: var(--eb-container-wide); margin-inline: auto;
  display: flex; align-items: center; gap: clamp(.5rem, 1.5vw, 1.5rem);
  padding: 9px 12px 9px 20px;
  background: rgba(255, 255, 255, .9);
  -webkit-backdrop-filter: blur(16px) saturate(180%);
  backdrop-filter: blur(16px) saturate(180%);
  border: 1px solid rgba(255, 255, 255, .8);
  border-radius: var(--eb-r-lg);
  box-shadow: var(--eb-sh-nav);
  transition: padding var(--eb-ease), box-shadow var(--eb-ease);
}
.eb-header.is-scrolled { padding-top: 8px; }
.eb-header.is-scrolled .eb-header__bar { padding-block: 6px; box-shadow: 0 14px 40px rgba(23,34,56,.16); }
.eb-header__logo { display: inline-flex; align-items: center; flex: 0 0 auto; color: var(--eb-primary); }
.eb-header__logo svg { height: 38px; width: auto; transition: transform var(--eb-ease); }
.eb-header__logo:hover svg { transform: translateY(-2px); }

/* Desktop nav */
.eb-nav { flex: 1 1 auto; min-width: 0; }
.eb-nav__list { display: flex; align-items: center; justify-content: center; gap: 2px; flex-wrap: nowrap; }
.eb-nav__item { position: relative; }
.eb-nav__link {
  position: relative; display: inline-flex; align-items: center; gap: 4px;
  padding: 9px 11px; font-family: var(--eb-font-head); font-weight: 600; font-size: 13.5px;
  color: var(--eb-ink); white-space: nowrap; border-radius: var(--eb-r-sm);
  transition: color var(--eb-ease);
}
.eb-nav__link svg { width: 15px; height: 15px; fill: currentColor; opacity: .6; }
.eb-nav__link:hover, .eb-nav__item.is-current > .eb-nav__link { color: var(--eb-primary); }
.eb-nav__link::after {
  content: ""; position: absolute; left: 11px; right: 11px; bottom: 4px; height: 2px; border-radius: 2px;
  background: linear-gradient(90deg, var(--eb-primary), var(--eb-primary-600));
  transform: scaleX(0); transform-origin: center; opacity: 0; transition: transform var(--eb-ease), opacity var(--eb-ease);
}
.eb-nav__link:hover::after, .eb-nav__item.is-current > .eb-nav__link::after { transform: scaleX(1); opacity: .95; }
.eb-nav__item--cta > .eb-nav__link::after { content: none; }

/* Dropdown */
.eb-nav__panel {
  position: absolute; top: calc(100% + 12px); left: 50%; transform: translateX(-50%) translateY(8px);
  min-width: 250px; padding: 8px; margin: 0;
  background: #fff; border: 1px solid var(--eb-line); border-radius: var(--eb-r); box-shadow: var(--eb-sh-lg);
  opacity: 0; visibility: hidden; transition: opacity .18s ease, transform .2s ease, visibility 0s linear .18s; z-index: 5;
}
.eb-nav__panel::before { content: ""; position: absolute; top: -14px; left: 0; right: 0; height: 16px; }
.eb-nav__item:hover > .eb-nav__panel, .eb-nav__item:focus-within > .eb-nav__panel {
  opacity: 1; visibility: visible; transform: translateX(-50%) translateY(0); transition: opacity .18s ease, transform .2s ease, visibility 0s;
}
.eb-nav__panel a {
  display: flex; align-items: center; min-height: 42px; padding: 8px 12px; border-radius: var(--eb-r-sm);
  font-size: 14px; font-weight: 600; color: var(--eb-ink); white-space: nowrap; transition: background var(--eb-ease), color var(--eb-ease);
}
.eb-nav__panel a:hover { background: var(--eb-primary-050); color: var(--eb-primary); }

/* CTA nav gomb */
.eb-nav__item--cta { margin-left: 6px; }
.eb-nav__item--cta > .eb-nav__link {
  color: #fff; background: var(--eb-primary); padding: 10px 18px; border-radius: var(--eb-pill);
  font-weight: 700; font-size: 13.5px; box-shadow: 0 4px 12px var(--eb-primary-tint);
  transition: transform .2s var(--eb-ease), background var(--eb-ease), box-shadow var(--eb-ease);
}
.eb-nav__item--cta > .eb-nav__link:hover { background: var(--eb-navy); color: #fff; transform: translateY(-2px); box-shadow: 0 10px 22px rgba(42,113,160,.28); }

/* Desktop: a közös pill-header ~15%-kal nagyobb, olvashatóbb — logó, betűméret,
   CTA és a sáv magassága arányosan. A +15% csak 1200px felett aktív, ahol a 9
   menüpont biztosan elfér (1200px alatt a jelenlegi kompakt méret, 1100px alatt
   drawer). A vízszintes padding/gap tömör, hogy 1280px-nél se csússzon ki. */
@media (min-width: 1240px) {
  .eb-header { padding: 16px 14px 0; }
  .eb-header__bar { padding: 10px 12px 10px 18px; gap: clamp(.4rem, .8vw, .9rem); }
  .eb-header__logo svg { height: 43px; }
  .eb-nav__list { gap: 0; }
  .eb-nav__link { padding: 10px 9px; font-size: 15px; }
  .eb-nav__link svg { width: 17px; height: 17px; }
  .eb-nav__link::after { left: 9px; right: 9px; bottom: 5px; }
  .eb-nav__item--cta > .eb-nav__link { padding: 11px 17px; font-size: 15px; }
  /* a magasabb header alá igazított tájékoztató-sáv távolság */
  .eb-topnotice { padding-top: 100px; }
  .eb-home .eb-topnotice { padding-top: 96px; }
}

/* Hamburger (mobil) */
.eb-burger {
  display: none; flex: 0 0 auto; width: 44px; height: 44px; margin-left: auto;
  border: 1px solid var(--eb-line); border-radius: var(--eb-r-sm); background: #fff;
  align-items: center; justify-content: center; transition: background var(--eb-ease);
}
.eb-burger:hover { background: var(--eb-primary-050); }
.eb-burger span, .eb-burger span::before, .eb-burger span::after {
  content: ""; display: block; width: 20px; height: 2px; border-radius: 2px; background: var(--eb-primary);
  transition: transform var(--eb-ease), top var(--eb-ease), background var(--eb-ease); position: relative;
}
.eb-burger span::before { position: absolute; top: -6px; }
.eb-burger span::after  { position: absolute; top: 6px; }
body.eb-menu-open .eb-burger span { background: transparent; }
body.eb-menu-open .eb-burger span::before { top: 0; transform: rotate(45deg); }
body.eb-menu-open .eb-burger span::after  { top: 0; transform: rotate(-45deg); }

/* Mobil drawer */
.eb-drawer { position: fixed; inset: 0; z-index: var(--eb-z-drawer); visibility: hidden; opacity: 0; transition: opacity var(--eb-ease), visibility var(--eb-ease); }
.eb-drawer.is-open { visibility: visible; opacity: 1; }
.eb-drawer__scrim { position: absolute; inset: 0; background: rgba(17,17,61,.5); -webkit-backdrop-filter: blur(3px); backdrop-filter: blur(3px); }
.eb-drawer__panel {
  position: absolute; inset: 0 0 0 auto; width: min(86vw, 360px); height: 100%; overflow-y: auto;
  background: #fff; box-shadow: -20px 0 60px rgba(17,17,61,.25); padding: 84px 20px 32px;
  transform: translateX(100%); transition: transform var(--eb-ease-slow);
}
.eb-drawer.is-open .eb-drawer__panel { transform: translateX(0); }
.eb-drawer__panel a { display: block; padding: 12px 14px; border-radius: var(--eb-r-sm); font-family: var(--eb-font-head); font-weight: 600; font-size: 16px; color: var(--eb-ink); }
.eb-drawer__panel a:hover { background: var(--eb-primary-050); color: var(--eb-primary); }
.eb-drawer__panel a.is-sub { padding-left: 28px; font-size: 14.5px; font-weight: 500; color: var(--eb-body); }
.eb-drawer__panel a.eb-drawer-cta { margin-top: 12px; text-align: center; color: #fff; background: var(--eb-primary); }
.eb-drawer__panel a.eb-drawer-cta:hover { background: var(--eb-navy); color: #fff; }

/* Fő tartalom offset a fix header alá */
.eb-main { padding-top: 0; }

/* ============================================================
   HERO — split (szöveg + kép), a fix header alá igazítva
   ============================================================ */
.eb-hero { position: relative; background: linear-gradient(180deg, var(--eb-primary-050), var(--eb-canvas)); overflow: hidden; }
.eb-hero__inner { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(1.5rem, 4vw, 4rem); align-items: center; padding-block: clamp(6rem, 5rem + 6vw, 9rem) var(--eb-section); }
.eb-hero__eyebrow { display: inline-flex; align-items: center; gap: 8px; font-family: var(--eb-font-head); font-weight: 700; font-size: var(--eb-fs-xs); letter-spacing: .1em; text-transform: uppercase; color: var(--eb-primary); background: #fff; border: 1px solid var(--eb-line); padding: 6px 14px; border-radius: var(--eb-pill); box-shadow: var(--eb-sh-sm); }
.eb-hero h1 { margin-top: var(--eb-sp-4); }
.eb-hero__lead { margin-top: var(--eb-sp-4); font-size: var(--eb-fs-lead); color: var(--eb-body); max-width: 46ch; }
.eb-hero__list { margin-top: var(--eb-sp-5); display: grid; gap: var(--eb-sp-3); }
.eb-hero__list li { display: flex; align-items: center; gap: 12px; font-weight: 600; color: var(--eb-ink); }
.eb-hero__list svg { flex: 0 0 auto; width: 22px; height: 22px; fill: var(--eb-primary); }
.eb-hero__actions { margin-top: var(--eb-sp-6); display: flex; gap: var(--eb-sp-3); flex-wrap: wrap; }
.eb-hero__media { position: relative; border-radius: var(--eb-r-xl); overflow: hidden; box-shadow: var(--eb-sh-lg); aspect-ratio: 4 / 3; }
.eb-hero__media img { width: 100%; height: 100%; object-fit: cover; }

/* ============================================================
   BIZALMI SOR (hero alatt)
   ============================================================ */
.eb-trustbar { background: #fff; border-block: 1px solid var(--eb-line); }
.eb-trustbar__list { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--eb-sp-5); padding-block: var(--eb-sp-5); }
.eb-trustbar__list li { display: flex; align-items: center; gap: 12px; }
.eb-trustbar__list .eb-ic { flex: 0 0 auto; display: grid; place-items: center; width: 52px; height: 52px; border-radius: var(--eb-r); background: var(--eb-primary-050); }
.eb-trustbar__list .eb-ic svg { width: 26px; height: 26px; fill: var(--eb-primary); }
.eb-trustbar__list b { display: block; font-family: var(--eb-font-head); font-size: 1.05rem; color: var(--eb-navy); line-height: 1.1; }
.eb-trustbar__list span { font-size: var(--eb-fs-sm); color: var(--eb-muted); }

/* ============================================================
   IKON-KÁRTYA RÁCS (miért minket / termékek)
   ============================================================ */
.eb-icard { padding: var(--eb-sp-6) var(--eb-sp-5); text-align: center; }
.eb-icard__ic { display: inline-grid; place-items: center; width: 64px; height: 64px; border-radius: var(--eb-r); background: var(--eb-primary-050); margin-bottom: var(--eb-sp-4); transition: background var(--eb-ease); }
.eb-icard__ic svg { width: 32px; height: 32px; fill: var(--eb-primary); transition: fill var(--eb-ease); }
.eb-icard--hover:hover .eb-icard__ic { background: var(--eb-primary); }
.eb-icard--hover:hover .eb-icard__ic svg { fill: #fff; }
.eb-icard h3 { font-size: var(--eb-fs-h4); margin-bottom: var(--eb-sp-2); }
.eb-icard p { font-size: var(--eb-fs-sm); color: var(--eb-body); }

/* Termékkártya (kép + cím) */
.eb-prodcard { overflow: hidden; display: block; }
.eb-prodcard__media { aspect-ratio: 3 / 2; overflow: hidden; background: var(--eb-primary-050); }
.eb-prodcard__media img { width: 100%; height: 100%; object-fit: cover; transition: transform var(--eb-ease-slow); }
.eb-prodcard--hover:hover .eb-prodcard__media img { transform: scale(1.05); }
.eb-prodcard__body { padding: var(--eb-sp-4) var(--eb-sp-5); display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.eb-prodcard__body h3 { font-size: var(--eb-fs-h4); transition: color var(--eb-ease); }
.eb-prodcard--hover:hover .eb-prodcard__body h3 { color: var(--eb-primary); }
.eb-prodcard__body svg { width: 18px; height: 18px; fill: var(--eb-primary); flex: 0 0 auto; transition: transform var(--eb-ease); }
.eb-prodcard--hover:hover .eb-prodcard__body svg { transform: translateX(4px); }

/* ============================================================
   FOLYAMAT — timeline
   ============================================================ */
.eb-process { display: grid; grid-template-columns: repeat(6, 1fr); gap: var(--eb-sp-4); position: relative; }
.eb-process::before { content: ""; position: absolute; top: 31px; left: 9%; right: 9%; height: 3px; background: var(--eb-primary-100); }
.eb-process li { position: relative; z-index: 1; text-align: center; }
.eb-process .eb-num { display: inline-grid; place-items: center; width: 64px; height: 64px; border-radius: var(--eb-pill); background: #fff; border: 3px solid var(--eb-primary); color: var(--eb-primary); font-family: var(--eb-font-head); font-weight: 800; font-size: 1.4rem; margin-bottom: var(--eb-sp-3); transition: var(--eb-ease); }
.eb-process li:hover .eb-num { background: var(--eb-primary); color: #fff; transform: translateY(-4px); }
.eb-process h3 { font-size: var(--eb-fs-sm); color: var(--eb-ink); }

/* ============================================================
   REFERENCIA-KÁRTYA
   ============================================================ */
.eb-refcard { overflow: hidden; display: block; }
.eb-refcard__media { aspect-ratio: 3 / 2; overflow: hidden; background: var(--eb-primary-050); }
.eb-refcard__media img { width: 100%; height: 100%; object-fit: cover; transition: transform var(--eb-ease-slow); }
.eb-refcard--hover:hover .eb-refcard__media img { transform: scale(1.04); }
.eb-refcard__cap { display: flex; align-items: center; gap: 8px; padding: var(--eb-sp-3) var(--eb-sp-4); font-family: var(--eb-font-head); font-weight: 600; font-size: 14px; color: var(--eb-ink); transition: color var(--eb-ease); }
.eb-refcard--hover:hover .eb-refcard__cap { color: var(--eb-primary); }
.eb-refcard__cap svg { width: 16px; height: 16px; fill: var(--eb-primary); transition: transform var(--eb-ease); }
.eb-refcard--hover:hover .eb-refcard__cap svg { transform: translateX(4px); }

/* ============================================================
   FAQ — natív details/summary
   ============================================================ */
.eb-faqs { display: grid; grid-template-columns: 1fr 1fr; gap: var(--eb-sp-3) var(--eb-sp-5); align-items: start; }
.eb-faq { background: #fff; border: 1px solid var(--eb-line); border-radius: var(--eb-r); }
.eb-faq > summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: var(--eb-sp-4) var(--eb-sp-5); font-family: var(--eb-font-head); font-weight: 700; color: var(--eb-navy); }
.eb-faq > summary::-webkit-details-marker { display: none; }
.eb-faq > summary:hover { color: var(--eb-primary); }
.eb-faq > summary svg { flex: 0 0 auto; width: 20px; height: 20px; fill: var(--eb-primary); transition: transform var(--eb-ease); }
.eb-faq[open] > summary svg { transform: rotate(45deg); }
.eb-faq > div { padding: 0 var(--eb-sp-5) var(--eb-sp-4); font-size: var(--eb-fs-sm); color: var(--eb-body); }

/* ============================================================
   NAGY CTA
   ============================================================ */
.eb-cta { text-align: center; color: #fff; background: linear-gradient(135deg, var(--eb-primary), var(--eb-navy)); border-radius: var(--eb-r-xl); padding: clamp(2.5rem, 2rem + 3vw, 4.5rem) var(--eb-gutter); }
.eb-cta h2 { color: #fff; }
.eb-cta p { margin: var(--eb-sp-3) auto var(--eb-sp-6); color: rgba(255,255,255,.85); max-width: 52ch; }
.eb-cta__actions { display: flex; gap: var(--eb-sp-3); justify-content: center; flex-wrap: wrap; }

/* ============================================================
   FOOTER
   ============================================================ */
.eb-footer { position: relative; background: linear-gradient(180deg, #1f2d47, var(--eb-ink)); color: rgba(255,255,255,.8); }
.eb-footer::before { content: ""; position: absolute; inset: 0 0 auto 0; height: 1px; background: linear-gradient(90deg, transparent, rgba(42,113,160,.8), transparent); }
.eb-footer a { transition: color var(--eb-ease); }
.eb-footer a:hover { color: var(--eb-primary); }
.eb-footer__top { display: grid; grid-template-columns: 1.4fr 1fr 1.2fr; gap: var(--eb-sp-6); padding-block: var(--eb-sp-8) var(--eb-sp-6); }
.eb-footer__logo { color: #fff; display: inline-block; margin-bottom: var(--eb-sp-4); }
.eb-footer__logo svg { height: 44px; width: auto; }
.eb-footer__about p { font-size: var(--eb-fs-sm); color: rgba(255,255,255,.7); max-width: 42ch; }
.eb-footer h4 { color: #fff; font-size: 1rem; margin-bottom: var(--eb-sp-4); }
.eb-footer__nav a { display: block; padding: 6px 0; font-size: var(--eb-fs-sm); }
.eb-footer__contact li { display: flex; align-items: flex-start; gap: 10px; padding: 6px 0; font-size: var(--eb-fs-sm); }
.eb-footer__contact svg { flex: 0 0 auto; width: 18px; height: 18px; fill: #6ea9cf; margin-top: 2px; }
.eb-footer__contact b { display: block; color: #fff; font-family: var(--eb-font-head); font-size: .9rem; }
.eb-footer__bottom { display: flex; align-items: center; justify-content: space-between; gap: var(--eb-sp-4); flex-wrap: wrap; padding-block: var(--eb-sp-5); border-top: 1px solid rgba(255,255,255,.12); font-size: var(--eb-fs-xs); }
.eb-footer__legal { display: flex; gap: var(--eb-sp-4); flex-wrap: wrap; }

/* Mobil sticky sáv */
.eb-mobilebar { display: none; position: fixed; inset: auto 0 0 0; z-index: var(--eb-z-top); box-shadow: 0 -6px 24px rgba(23,34,56,.16); }
.eb-mobilebar a { flex: 1 1 50%; display: flex; align-items: center; justify-content: center; gap: 8px; padding: 14px 8px; font-family: var(--eb-font-head); font-weight: 700; font-size: 14px; text-transform: uppercase; letter-spacing: .02em; }
.eb-mobilebar a svg { width: 18px; height: 18px; fill: currentColor; }
.eb-mobilebar__call { background: #fff; color: var(--eb-navy); border-top: 1px solid var(--eb-line); }
.eb-mobilebar__call svg { fill: var(--eb-primary); }
.eb-mobilebar__quote { background: var(--eb-primary); color: #fff; }

}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@layer responsive {
  @media (max-width: 1100px) {
    .eb-nav { display: none; }
    .eb-burger { display: inline-flex; }
    .eb-hero__inner { grid-template-columns: 1fr; }
    .eb-hero__media { order: -1; max-width: 560px; }
  }
  @media (max-width: 1024px) {
    .eb-trustbar__list { grid-template-columns: repeat(2, 1fr); }
    .eb-process { grid-template-columns: repeat(3, 1fr); gap: var(--eb-sp-5) var(--eb-sp-4); }
    .eb-process::before { display: none; }
    .eb-footer__top { grid-template-columns: 1fr 1fr; }
  }
  @media (max-width: 768px) {
    .eb-faqs { grid-template-columns: 1fr; }
    .eb-process { grid-template-columns: 1fr; text-align: left; max-width: 420px; margin-inline: auto; }
    .eb-process li { display: flex; align-items: center; gap: var(--eb-sp-4); }
    .eb-process .eb-num { margin-bottom: 0; }
    .eb-footer__top { grid-template-columns: 1fr; }
    .eb-mobilebar { display: flex; }
    body { padding-bottom: 56px; }
  }
  @media (max-width: 600px) {
    .eb-trustbar__list { grid-template-columns: 1fr; }
  }
}

/* =============================================================================
   TARTALMI OLDALAK — page-hero, breadcrumb, prose, táblák, PDF-letöltő, űrlap
   ============================================================================= */
@layer components {

/* Oldal-hero (belső oldalak fejléce) */
.eb-pagehero { background: linear-gradient(180deg, var(--eb-primary-050), var(--eb-canvas)); padding-block: clamp(6rem, 5rem + 5vw, 8rem) var(--eb-section); }
.eb-pagehero h1 { margin-top: var(--eb-sp-3); }
.eb-pagehero__lead { margin-top: var(--eb-sp-3); font-size: var(--eb-fs-lead); color: var(--eb-body); max-width: 62ch; }

/* Breadcrumb */
.eb-crumbs { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; font-size: var(--eb-fs-sm); color: var(--eb-muted); }
.eb-crumbs a { color: var(--eb-muted); }
.eb-crumbs a:hover { color: var(--eb-primary); }
.eb-crumbs li { display: inline-flex; align-items: center; gap: 6px; }
.eb-crumbs li + li::before { content: "›"; color: var(--eb-muted); }
.eb-crumbs [aria-current] { color: var(--eb-ink); font-weight: 600; }

/* Prose (migrált szöveges tartalom) */
.eb-prose { max-width: 74ch; margin-inline: auto; color: var(--eb-body); }
.eb-prose.eb-prose--wide { max-width: none; }
.eb-prose > * + * { margin-top: var(--eb-sp-4); }
.eb-prose h2 { margin-top: var(--eb-sp-7); font-size: var(--eb-fs-h3); }
.eb-prose h3 { margin-top: var(--eb-sp-6); font-size: var(--eb-fs-h4); }
.eb-prose h4 { margin-top: var(--eb-sp-5); }
.eb-prose ul, .eb-prose ol { padding-left: 1.3em; }
.eb-prose li { margin-top: var(--eb-sp-2); }
.eb-prose ul li { list-style: none; position: relative; }
.eb-prose ul li::before { content: ""; position: absolute; left: -1.1em; top: .62em; width: 7px; height: 7px; border-radius: 50%; background: var(--eb-primary); }
.eb-prose a { color: var(--eb-primary); text-decoration: underline; text-underline-offset: .15em; }
.eb-prose a:hover { color: var(--eb-primary-700); }
.eb-prose img { border-radius: var(--eb-r); margin-block: var(--eb-sp-5); }
.eb-prose figure { margin: var(--eb-sp-5) 0; }
.eb-prose figcaption { font-size: var(--eb-fs-sm); color: var(--eb-muted); text-align: center; margin-top: var(--eb-sp-2); }

/* Ártáblák */
.eb-pricegroup { margin-top: var(--eb-sp-6); }
.eb-pricegroup > h3 { font-size: var(--eb-fs-h3); }
.eb-table-wrap { overflow-x: auto; margin-top: var(--eb-sp-4); border: 1px solid var(--eb-line); border-radius: var(--eb-r); }
.eb-table { width: 100%; border-collapse: collapse; font-size: var(--eb-fs-sm); background: #fff; }
.eb-table caption { text-align: left; font-family: var(--eb-font-head); font-weight: 700; color: var(--eb-navy); padding: var(--eb-sp-3) var(--eb-sp-4); }
.eb-table th, .eb-table td { padding: 10px 14px; text-align: left; border-bottom: 1px solid var(--eb-line); }
.eb-table thead th { background: var(--eb-primary-050); color: var(--eb-navy); font-weight: 700; white-space: nowrap; }
.eb-table tbody tr:last-child td { border-bottom: 0; }
.eb-table tbody tr:hover { background: var(--eb-primary-050); }

/* PDF letöltő kártyák */
.eb-downloads { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); gap: var(--eb-sp-4); }
.eb-download { display: flex; align-items: center; gap: var(--eb-sp-4); padding: var(--eb-sp-4); background: #fff; }
.eb-download__ic { flex: 0 0 auto; display: grid; place-items: center; width: 48px; height: 48px; border-radius: var(--eb-r-sm); background: var(--eb-primary-050); }
.eb-download__ic svg { width: 26px; height: 26px; fill: var(--eb-primary); }
.eb-download b { display: block; font-family: var(--eb-font-head); color: var(--eb-navy); font-size: .95rem; }
.eb-download span { font-size: var(--eb-fs-sm); color: var(--eb-muted); }
.eb-download__link { margin-left: auto; flex: 0 0 auto; color: var(--eb-primary); }
.eb-download__link svg { width: 22px; height: 22px; fill: currentColor; }

/* Két oszlop: tartalom + oldalsáv (aside CTA) */
.eb-with-aside { display: grid; grid-template-columns: 1fr 320px; gap: var(--eb-sp-7); align-items: start; }
.eb-aside { position: sticky; top: 100px; padding: var(--eb-sp-6); }
.eb-aside h3 { font-size: var(--eb-fs-h4); margin-bottom: var(--eb-sp-3); }
.eb-aside p { font-size: var(--eb-fs-sm); color: var(--eb-body); margin-bottom: var(--eb-sp-4); }

/* Kapcsolati / ajánlatkérő űrlap */
.eb-form { display: grid; gap: var(--eb-sp-4); }
.eb-field { display: grid; gap: 6px; }
.eb-field label { font-family: var(--eb-font-head); font-weight: 600; font-size: var(--eb-fs-sm); color: var(--eb-ink); }
.eb-field .req { color: var(--eb-primary); }
.eb-input, .eb-select, .eb-textarea { width: 100%; padding: 11px 14px; font-size: var(--eb-fs-body); color: var(--eb-ink); background: var(--eb-canvas); border: 1.5px solid var(--eb-line); border-radius: var(--eb-r-sm); transition: border-color var(--eb-ease), box-shadow var(--eb-ease); }
.eb-textarea { min-height: 130px; resize: vertical; }
.eb-input:focus, .eb-select:focus, .eb-textarea:focus { outline: none; border-color: var(--eb-primary); box-shadow: 0 0 0 3px var(--eb-primary-tint); }
.eb-field.has-error .eb-input, .eb-field.has-error .eb-select, .eb-field.has-error .eb-textarea { border-color: #d64545; }
.eb-field__error { font-size: var(--eb-fs-sm); color: #d64545; }
.eb-consent { display: flex; align-items: flex-start; gap: 10px; font-size: var(--eb-fs-sm); }
.eb-consent input { margin-top: 3px; }
.eb-form__note { font-size: var(--eb-fs-sm); color: var(--eb-muted); margin-top: var(--eb-sp-2); }

/* Állandó tájékoztató sáv az űrlap fölött: online küldés előkészítés alatt (nincs backend) */
.eb-formbanner { display: flex; flex-wrap: wrap; align-items: center; gap: var(--eb-sp-4); padding: var(--eb-sp-5); margin-bottom: var(--eb-sp-6); background: #fff7ea; border: 1px solid #f0d9a8; border-left: 4px solid #e0a02a; border-radius: var(--eb-r); }
.eb-formbanner__txt { flex: 1 1 260px; min-width: 0; }
.eb-formbanner__txt b { display: block; font-family: var(--eb-font-head); color: #8a5a0a; font-size: 1rem; margin-bottom: 4px; }
.eb-formbanner__txt p { font-size: var(--eb-fs-sm); color: var(--eb-body); margin: 0; }
.eb-formbanner__cta { display: flex; gap: var(--eb-sp-2); flex-wrap: wrap; flex: 0 0 auto; }
/* On-submit tájékoztató (NEM sikerüzenet) */
.eb-form__notice { padding: var(--eb-sp-4) var(--eb-sp-5); margin-top: var(--eb-sp-4); background: #fff7ea; border: 1px solid #f0d9a8; border-radius: var(--eb-r); color: var(--eb-ink); font-size: var(--eb-fs-sm); }
.eb-form__notice a { color: var(--eb-primary); font-weight: 600; text-decoration: underline; }

/* ============================================================
   PAGE-HERO BŐVÍTÉS (termékoldalak levegős hero-ja)
   ============================================================ */
.eb-pagehero--lg { padding-block: clamp(7rem, 5.5rem + 6vw, 10.5rem) clamp(2.5rem, 2rem + 2vw, 4rem); }
.eb-pagehero__eyebrow { display: inline-flex; align-items: center; gap: 10px; font-family: var(--eb-font-head); font-weight: 700; font-size: var(--eb-fs-xs); letter-spacing: .16em; text-transform: uppercase; color: var(--eb-primary); }
.eb-pagehero__eyebrow::before { content: ""; width: 30px; height: 2px; background: var(--eb-primary); border-radius: 2px; }
.eb-pagehero--lg h1 { font-size: clamp(2.3rem, 1.7rem + 2.8vw, 3.6rem); letter-spacing: -.01em; line-height: 1.05; margin-top: var(--eb-sp-4); text-wrap: balance; }
.eb-pagehero__actions { margin-top: var(--eb-sp-6); display: flex; gap: var(--eb-sp-3); flex-wrap: wrap; align-items: center; }

/* ============================================================
   ELEGÁNS AKCIÓ-LINK (kör-nyíl + felirat)
   ============================================================ */
.eb-actionlink { display: inline-flex; align-items: center; gap: .75rem; font-family: var(--eb-font-head); font-weight: 700; font-size: .9rem; letter-spacing: .04em; text-transform: uppercase; color: var(--eb-primary); }
.eb-actionlink__ic { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; border: 1.5px solid var(--eb-primary); color: var(--eb-primary); transition: background var(--eb-ease), color var(--eb-ease), transform var(--eb-ease); }
.eb-actionlink__ic svg { width: 16px; height: 16px; fill: currentColor; transition: transform var(--eb-ease); }
a:hover .eb-actionlink__ic, a:focus-visible .eb-actionlink__ic { background: var(--eb-primary); color: var(--eb-white); }
a:hover .eb-actionlink__ic svg, a:focus-visible .eb-actionlink__ic svg { transform: translateX(3px); }

/* ============================================================
   TERMÉKEINK HUB — váltakozó kép–szöveg feature-sorok
   ============================================================ */
.eb-featurelist { display: grid; gap: clamp(2.75rem, 2rem + 3.5vw, 6rem); }
.eb-feature {display: grid; grid-template-columns: 1.02fr .98fr; gap: clamp(1.75rem, 1rem + 4vw, 5rem); align-items: center; text-decoration: none; color: inherit; }
.eb-feature, .eb-feature__media, .eb-feature__body { min-width: 0; }
.eb-feature__media { position: relative; grid-column: 1; border-radius: var(--eb-r-xl); overflow: hidden; box-shadow: var(--eb-sh-lg); aspect-ratio: 3 / 2; background: var(--eb-primary-050); }
.eb-feature__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s var(--eb-ease); }
.eb-feature__media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(120deg, rgba(17,17,61,.20), transparent 55%); pointer-events: none; }
a.eb-feature:hover .eb-feature__media img, a.eb-feature:focus-visible .eb-feature__media img { transform: scale(1.045); }
.eb-feature__body { grid-column: 2; }
.eb-feature:nth-child(even) .eb-feature__media { grid-column: 2; }
.eb-feature:nth-child(even) .eb-feature__body { grid-column: 1; grid-row: 1; }
.eb-feature__num { font-family: var(--eb-font-head); font-weight: 700; font-size: var(--eb-fs-xs); letter-spacing: .18em; color: var(--eb-primary); }
.eb-feature__title { font-family: var(--eb-font-head); font-weight: 800; font-size: clamp(1.55rem, 1.2rem + 1.5vw, 2.3rem); line-height: 1.08; letter-spacing: .005em; text-transform: uppercase; color: var(--eb-navy); margin-top: var(--eb-sp-3); }
.eb-feature__desc { margin-top: var(--eb-sp-4); font-size: var(--eb-fs-lead); color: var(--eb-body); max-width: 46ch; }
.eb-feature__cta { margin-top: var(--eb-sp-5); }
@media (max-width: 820px) {
  .eb-feature {grid-template-columns: 1fr; gap: var(--eb-sp-4); }
  .eb-feature__media, .eb-feature:nth-child(even) .eb-feature__media { grid-column: 1; grid-row: 1; }
  .eb-feature__body, .eb-feature:nth-child(even) .eb-feature__body { grid-column: 1; grid-row: 2; }
  .eb-feature__title { font-size: clamp(1.4rem, 1.2rem + 2vw, 1.8rem); }
}

/* ============================================================
   PRÉMIUM TERMÉKKÁRTYA RÁCS (kategóriaoldalak)
   ============================================================ */
.eb-cardgrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr)); gap: clamp(1.5rem, 1rem + 1.75vw, 2.25rem); }
.eb-cardgrid--2 { grid-template-columns: repeat(auto-fill, minmax(min(100%, 440px), 1fr)); }
a.eb-pcard { position: relative; display: flex; flex-direction: column; overflow: hidden; text-decoration: none; color: inherit; background: var(--eb-white); border: 1px solid var(--eb-line); border-radius: var(--eb-r-lg); box-shadow: var(--eb-sh-sm); transition: transform var(--eb-ease), box-shadow var(--eb-ease), border-color var(--eb-ease); }
a.eb-pcard:hover, a.eb-pcard:focus-visible { transform: translateY(-8px); box-shadow: var(--eb-sh-lg); border-color: var(--eb-primary-100); }
.eb-pcard__media { position: relative; aspect-ratio: 4 / 3; overflow: hidden; background: var(--eb-primary-050); }
.eb-pcard__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .55s var(--eb-ease); }
.eb-pcard__media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, rgba(17,17,61,.30), rgba(17,17,61,0) 42%); opacity: .55; transition: opacity var(--eb-ease); }
a.eb-pcard:hover .eb-pcard__media img { transform: scale(1.06); }
a.eb-pcard:hover .eb-pcard__media::after { opacity: .8; }
.eb-pcard__body { display: flex; flex-direction: column; gap: .55rem; padding: clamp(1.25rem, 1.05rem + .6vw, 1.6rem); flex: 1 1 auto; }
.eb-pcard__title { font-family: var(--eb-font-head); font-weight: 700; font-size: var(--eb-fs-h4); color: var(--eb-navy); line-height: 1.18; text-wrap: balance; }
.eb-pcard__desc { font-size: var(--eb-fs-sm); color: var(--eb-body); margin: 0; flex: 1 1 auto; line-height: 1.55; }
.eb-pcard__cta { margin-top: .75rem; display: inline-flex; align-items: center; gap: .5rem; align-self: flex-start; font-family: var(--eb-font-head); font-weight: 700; font-size: .82rem; letter-spacing: .06em; text-transform: uppercase; color: var(--eb-primary); }
.eb-pcard__cta::after { content: ""; position: absolute; left: clamp(1.25rem, 1.05rem + .6vw, 1.6rem); bottom: clamp(1.1rem, 1rem + .5vw, 1.45rem); width: 0; height: 2px; background: var(--eb-primary); transition: width var(--eb-ease); }
a.eb-pcard:hover .eb-pcard__cta::after { width: 2.4rem; }
.eb-pcard__cta svg { width: 17px; height: 17px; fill: currentColor; transition: transform var(--eb-ease); }
a.eb-pcard:hover .eb-pcard__cta svg { transform: translateX(4px); }

/* Ajánlatkérő panel (pl. bejárati ajtók – kiegyensúlyozott, nem kitöltő elem) */
.eb-offercard { display: flex; flex-direction: column; justify-content: center; gap: .8rem; padding: clamp(1.75rem, 1.25rem + 2vw, 2.85rem); border-radius: var(--eb-r-lg); background: linear-gradient(150deg, var(--eb-primary-050), var(--eb-white)); border: 1px solid var(--eb-primary-100); box-shadow: var(--eb-sh-sm); }
.eb-offercard__ic { display: grid; place-items: center; width: 58px; height: 58px; border-radius: var(--eb-r); background: var(--eb-white); box-shadow: var(--eb-sh-sm); }
.eb-offercard__ic svg { width: 28px; height: 28px; fill: var(--eb-primary); }
.eb-offercard h2 { font-family: var(--eb-font-head); font-weight: 700; font-size: var(--eb-fs-h3); color: var(--eb-navy); line-height: 1.15; }
.eb-offercard p { color: var(--eb-body); margin: 0; }
.eb-offercard .eb-btn { margin-top: .4rem; align-self: flex-start; }

/* ============================================================
   TERMÉK-RÉSZLETOLDAL — prémium termékhero + rich prose + kapcsolódó
   ============================================================ */
.eb-prodhero { background: linear-gradient(180deg, var(--eb-primary-050), var(--eb-canvas)); padding-block: clamp(6.5rem, 5rem + 6vw, 9.5rem) clamp(2.5rem, 2rem + 2vw, 4rem); }
.eb-prodhero__grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(1.75rem, 1rem + 4vw, 4.5rem); align-items: center; }
.eb-prodhero__grid, .eb-prodhero__media, .eb-prodhero__body { min-width: 0; }
.eb-prodhero__media { position: relative; border-radius: var(--eb-r-xl); overflow: hidden; box-shadow: var(--eb-sh-lg); aspect-ratio: 4 / 3; background: var(--eb-primary-050); }
.eb-prodhero__media img { width: 100%; height: 100%; object-fit: cover; }
.eb-prodhero__eyebrow { display: inline-flex; align-items: center; gap: 8px; font-family: var(--eb-font-head); font-weight: 700; font-size: var(--eb-fs-xs); letter-spacing: .1em; text-transform: uppercase; color: var(--eb-primary); text-decoration: none; }
.eb-prodhero__eyebrow svg { width: 15px; height: 15px; fill: currentColor; transform: scaleX(-1); }
.eb-prodhero__eyebrow:hover { color: var(--eb-primary-700); }
.eb-prodhero h1 { font-size: clamp(1.9rem, 1.5rem + 2vw, 2.9rem); line-height: 1.08; margin-top: var(--eb-sp-3); text-wrap: balance; }
.eb-prodhero__lead { margin-top: var(--eb-sp-4); font-size: var(--eb-fs-lead); color: var(--eb-body); max-width: 52ch; }
.eb-prodhero__actions { margin-top: var(--eb-sp-6); display: flex; gap: var(--eb-sp-3); flex-wrap: wrap; align-items: center; }
.eb-prodhero .eb-crumbs { margin-bottom: var(--eb-sp-4); }

/* Rich prose (részletoldal törzs) — saját prémium tipográfia, checkmark-listák */
.eb-prose--rich > :first-child { margin-top: 0; }
.eb-prose--rich h2, .eb-prose--rich h3, .eb-prose--rich h4 { font-family: var(--eb-font-head); font-weight: 700; color: var(--eb-navy); margin: var(--eb-sp-6) 0 var(--eb-sp-3); line-height: 1.2; }
.eb-prose--rich h2 { font-size: var(--eb-fs-h3); }
.eb-prose--rich h3, .eb-prose--rich h4 { font-size: var(--eb-fs-h4); position: relative; padding-left: 16px; }
.eb-prose--rich h3::before, .eb-prose--rich h4::before { content: ""; position: absolute; left: 0; top: .18em; bottom: .18em; width: 4px; border-radius: 2px; background: linear-gradient(var(--eb-primary), var(--eb-primary-600)); }
.eb-prose--rich p { margin: var(--eb-sp-3) 0; color: var(--eb-body); line-height: 1.72; }
.eb-prose--rich strong { color: var(--eb-ink); }
.eb-prose--rich ul { list-style: none; margin: var(--eb-sp-4) 0; padding: 0; display: grid; gap: .65rem; }
.eb-prose--rich ul li { position: relative; padding-left: 32px; color: var(--eb-ink); line-height: 1.5; }
.eb-prose--rich ul li::before { content: "✓"; position: absolute; left: 0; top: 1px; display: grid; place-items: center; width: 21px; height: 21px; border-radius: 50%; background: var(--eb-primary); color: var(--eb-white); font-size: 12px; font-weight: 700; }
.eb-prose--rich img { border-radius: var(--eb-r); box-shadow: var(--eb-sh-sm); margin: var(--eb-sp-4) 0; max-width: 100%; height: auto; }

/* Kapcsolódó termékek strip */
.eb-cardgrid--sm { grid-template-columns: repeat(auto-fill, minmax(min(100%, 250px), 1fr)); }

/* ============================================================
   SZOLGÁLTATÁSOK — váltakozó kép–szöveg sorok SAJÁT SORSZÁM-PANELLEL
   (0 demo-SVG/ikon: a vizuális azonosító tisztán CSS + tipográfia)
   ============================================================ */
.eb-servicelist { display: grid; gap: clamp(2.75rem, 2rem + 3.5vw, 6rem); }
a.eb-service { display: grid; grid-template-columns: 1.02fr .98fr; gap: clamp(1.75rem, 1rem + 4vw, 5rem); align-items: center; text-decoration: none; color: inherit; }
a.eb-service, .eb-service__panel, .eb-service__body { min-width: 0; }
.eb-service__panel { grid-column: 1; position: relative; aspect-ratio: 3 / 2; border-radius: var(--eb-r-xl); overflow: hidden; background: linear-gradient(145deg, var(--eb-primary-050), var(--eb-white) 70%); border: 1px solid var(--eb-primary-100); box-shadow: var(--eb-sh-sm); display: grid; place-items: center; transition: box-shadow var(--eb-ease), transform var(--eb-ease); }
.eb-service__panel::before { content: attr(data-no); position: absolute; right: -.15em; bottom: -.28em; font-family: var(--eb-font-head); font-weight: 800; font-size: clamp(9rem, 6rem + 14vw, 17rem); line-height: 1; color: var(--eb-primary); opacity: .06; pointer-events: none; }
a.eb-service:hover .eb-service__panel, a.eb-service:focus-visible .eb-service__panel { box-shadow: var(--eb-sh); transform: translateY(-4px); }
.eb-service__no { position: relative; font-family: var(--eb-font-head); font-weight: 800; font-size: clamp(3.5rem, 2rem + 7vw, 6.5rem); line-height: 1; letter-spacing: -.02em; color: var(--eb-primary); text-align: center; }
.eb-service__no::after { content: ""; display: block; width: 54px; height: 4px; margin: 1rem auto 0; border-radius: 2px; background: linear-gradient(90deg, var(--eb-primary), var(--eb-primary-600)); }
.eb-service__body { grid-column: 2; }
a.eb-service:nth-child(even) .eb-service__panel { grid-column: 2; }
a.eb-service:nth-child(even) .eb-service__body { grid-column: 1; grid-row: 1; }
.eb-service__kicker { font-family: var(--eb-font-head); font-weight: 700; font-size: var(--eb-fs-xs); letter-spacing: .18em; text-transform: uppercase; color: var(--eb-primary); }
.eb-service__title { font-family: var(--eb-font-head); font-weight: 800; font-size: clamp(1.45rem, 1.1rem + 1.5vw, 2.15rem); line-height: 1.12; letter-spacing: .005em; text-transform: uppercase; color: var(--eb-navy); margin-top: var(--eb-sp-2); }
.eb-service__desc { margin-top: var(--eb-sp-4); font-size: var(--eb-fs-lead); color: var(--eb-body); max-width: 48ch; }
.eb-service__cta { margin-top: var(--eb-sp-5); }

/* Szolgáltatás-részletoldal hero (sorszám-panel + szöveg) */
.eb-service-hero { background: linear-gradient(180deg, var(--eb-primary-050), var(--eb-canvas)); padding-block: clamp(6.5rem, 5rem + 6vw, 9.5rem) clamp(2.5rem, 2rem + 2vw, 4rem); }
.eb-service-hero__grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(1.75rem, 1rem + 4vw, 4.5rem); align-items: center; }
.eb-service-hero__grid, .eb-service-hero__panel, .eb-service-hero__body { min-width: 0; }
.eb-service-hero__panel { position: relative; aspect-ratio: 1 / 1; border-radius: var(--eb-r-xl); overflow: hidden; background: linear-gradient(145deg, var(--eb-primary), var(--eb-navy)); box-shadow: var(--eb-sh-lg); display: grid; place-items: center; }
.eb-service-hero__panel::before { content: attr(data-no); position: absolute; right: -.1em; bottom: -.22em; font-family: var(--eb-font-head); font-weight: 800; font-size: clamp(9rem, 7rem + 12vw, 15rem); line-height: 1; color: #fff; opacity: .08; }
.eb-service-hero__no { position: relative; font-family: var(--eb-font-head); font-weight: 800; font-size: clamp(3.5rem, 2rem + 7vw, 6rem); line-height: 1; color: var(--eb-white); }
.eb-service-hero__no::after { content: ""; display: block; width: 54px; height: 4px; margin: 1rem auto 0; border-radius: 2px; background: rgba(255,255,255,.55); }
@media (max-width: 820px) {
  a.eb-service { grid-template-columns: 1fr; gap: var(--eb-sp-4); }
  .eb-service__panel, a.eb-service:nth-child(even) .eb-service__panel { grid-column: 1; grid-row: 1; aspect-ratio: 16 / 7; }
  .eb-service__body, a.eb-service:nth-child(even) .eb-service__body { grid-column: 1; grid-row: 2; }
  .eb-service-hero__grid { grid-template-columns: 1fr; gap: var(--eb-sp-5); }
  .eb-service-hero__panel { grid-row: 1; aspect-ratio: 16 / 8; max-width: 340px; }
}

@media (max-width: 820px) {
  .eb-prodhero__grid { grid-template-columns: 1fr; gap: var(--eb-sp-5); }
  .eb-prodhero__media { grid-row: 1; }
}

/* ============================================================
   GYIK — saját, akadálymentes accordion (progresszív: JS nélkül minden nyitva)
   ============================================================ */
.eb-acc { display: grid; gap: .75rem; max-width: 880px; }
.eb-acc__item { border: 1px solid var(--eb-line); border-radius: var(--eb-r-lg); background: var(--eb-white); box-shadow: var(--eb-sh-sm); transition: border-color var(--eb-ease), box-shadow var(--eb-ease); }
.eb-acc__item:has(.eb-acc__btn[aria-expanded="true"]) { border-color: var(--eb-primary-100); box-shadow: var(--eb-sh); }
.eb-acc__h { margin: 0; font-size: inherit; }
.eb-acc__btn { width: 100%; display: flex; align-items: center; gap: 1rem; justify-content: space-between; padding: clamp(1rem, .9rem + .4vw, 1.35rem) clamp(1.1rem, 1rem + .5vw, 1.6rem); background: none; border: 0; cursor: pointer; text-align: left; font-family: var(--eb-font-head); font-weight: 700; font-size: clamp(1rem, .95rem + .3vw, 1.15rem); color: var(--eb-navy); line-height: 1.35; }
.eb-acc__btn:hover { color: var(--eb-primary); }
.eb-acc__ic { flex: 0 0 auto; width: 34px; height: 34px; display: grid; place-items: center; border-radius: 50%; background: var(--eb-primary-050); color: var(--eb-primary); transition: transform var(--eb-ease), background var(--eb-ease), color var(--eb-ease); }
.eb-acc__ic svg { width: 18px; height: 18px; fill: currentColor; }
.eb-acc__btn[aria-expanded="true"] .eb-acc__ic { transform: rotate(45deg); background: var(--eb-primary); color: var(--eb-white); }
.eb-acc__body { padding: 0 clamp(1.1rem, 1rem + .5vw, 1.6rem) clamp(1.1rem, 1rem + .5vw, 1.5rem); color: var(--eb-body); line-height: 1.72; }
.eb-acc__body p { margin: 0; }
.eb-acc__panel[hidden] { display: none; }

/* ============================================================
   FEJLESZTÉSI TÁJÉKOZTATÓ SÁV — minden oldalon, a fix „pill" header alatt
   Teljes szélességű, sötét petrolkék; a padding-top a lebegő header alá húzza,
   így a szöveg a navigáció ALATT olvasható. A header-eltartást innentől a sáv
   adja → az első szekció felső térköze a szekció-ritmusra normalizálva (nincs dupla hézag).
   ============================================================ */
.eb-topnotice { background: #123a4f; color: #e8f2f8; padding-top: 90px; border-bottom: 1px solid rgba(255,255,255,.12); }
.eb-topnotice__in { max-width: var(--eb-container-wide); margin-inline: auto; padding: 10px var(--eb-gutter); }
.eb-topnotice p { margin: 0; text-align: center; font-size: clamp(.82rem, .78rem + .3vw, .95rem); line-height: 1.45; text-wrap: pretty; }
.eb-topnotice strong { font-weight: 700; color: #ffffff; }
.eb-hero__inner { padding-top: var(--eb-section); }
.eb-pagehero { padding-top: var(--eb-section); }

}

@layer responsive {
  @media (max-width: 900px) {
    .eb-with-aside { grid-template-columns: 1fr; }
    .eb-aside { position: static; }
  }
}


/* ============================================================
   Szolgáltatás-ikonok (saját, licencelt EPS-forrásból, mask-image)
   ============================================================ */
.eb-svc-stack { display: flex; flex-direction: column; align-items: center; gap: .6rem; position: relative; z-index: 1; }
.eb-svc-ic { display: block; width: clamp(2.4rem, 1.8rem + 2.6vw, 3.4rem); aspect-ratio: 1 / 1; -webkit-mask: var(--ic) center / contain no-repeat; mask: var(--ic) center / contain no-repeat; }
.eb-service-hero__panel .eb-svc-ic { background-color: var(--eb-white); }
.eb-service__panel .eb-svc-ic { background-color: var(--eb-primary); }


/* ============================================================
   Ár-konfiguráció választó (tablist) + műszaki adatpanel
   Saját, akadálymentes profilváltó. Progresszív: JS nélkül minden
   panel látszik; a JS a kényelmi kapcsolást adja hozzá.
   ============================================================ */
.eb-backlink { margin-bottom: var(--eb-sp-5); font-family: var(--eb-font-head); font-weight: 700; font-size: var(--eb-fs-sm); }
.eb-backlink a { color: var(--eb-primary); text-decoration: none; }
.eb-backlink a:hover { color: var(--eb-primary-700); text-decoration: underline; }

.eb-artabs { margin-top: var(--eb-sp-6); }
.eb-artabs__list {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--eb-sp-3);
  margin: 0; padding: 0; list-style: none;
}
.eb-artab {
  display: flex; flex-direction: column; gap: .15rem; text-align: left; width: 100%;
  padding: var(--eb-sp-4); border: 1.5px solid var(--eb-line); border-radius: var(--eb-r);
  background: var(--eb-surface); color: var(--eb-body); position: relative;
  font-family: var(--eb-font-body);
  transition: border-color var(--eb-ease), box-shadow var(--eb-ease), background var(--eb-ease), transform var(--eb-ease);
}
.eb-artab strong { font-family: var(--eb-font-head); font-size: 1rem; color: var(--eb-ink); line-height: 1.25; }
.eb-artab span { font-size: var(--eb-fs-sm); color: var(--eb-muted); }
.eb-artab:hover { border-color: var(--eb-primary-100); box-shadow: var(--eb-sh-sm); transform: translateY(-2px); }
.eb-artab[aria-selected="true"] {
  border-color: var(--eb-primary); background: var(--eb-primary-050);
  box-shadow: 0 6px 16px var(--eb-primary-tint);
}
.eb-artab[aria-selected="true"] strong { color: var(--eb-primary-700); }
.eb-artab[aria-selected="true"]::after {
  content: ""; position: absolute; left: var(--eb-sp-4); right: var(--eb-sp-4); bottom: -1.5px; height: 3px;
  border-radius: var(--eb-pill); background: linear-gradient(90deg, var(--eb-primary), var(--eb-primary-600));
}

.eb-artabs__panel { margin-top: var(--eb-sp-5); }
.eb-artabs__panel:focus-visible { outline: 2px solid var(--eb-primary); outline-offset: 4px; border-radius: var(--eb-r); }
/* JS-off elválasztó: egymás alatti panelek között finom felső vonal (a másodiktól) */
.eb-artabs:not(.is-ready) .eb-artabs__panel + .eb-artabs__panel { border-top: 1px dashed var(--eb-line); padding-top: var(--eb-sp-6); }

/* Műszaki adatpanel */
.eb-spec {
  background: var(--eb-surface); border: 1px solid var(--eb-line); border-left: 4px solid var(--eb-primary);
  border-radius: var(--eb-r); padding: var(--eb-sp-5); margin-bottom: var(--eb-sp-5);
}
.eb-spec__title { font-family: var(--eb-font-head); color: var(--eb-ink); font-size: var(--eb-fs-h4); margin: 0 0 var(--eb-sp-4); display: flex; align-items: center; gap: var(--eb-sp-3); flex-wrap: wrap; }
.eb-spec__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 var(--eb-sp-6); margin: 0; }
.eb-spec__row { display: grid; grid-template-columns: 132px 1fr; gap: var(--eb-sp-3); padding: .45rem 0; border-bottom: 1px solid var(--eb-line-2); margin: 0; }
.eb-spec__row dt { font-family: var(--eb-font-head); font-size: var(--eb-fs-xs); font-weight: 700; letter-spacing: .07em; text-transform: uppercase; color: var(--eb-primary); align-self: center; margin: 0; }
.eb-spec__row dd { margin: 0; color: var(--eb-body); align-self: center; }

.eb-chip { display: inline-block; font-family: var(--eb-font-head); font-size: var(--eb-fs-xs); font-weight: 700; letter-spacing: .03em; color: var(--eb-primary-700); background: var(--eb-primary-100); padding: .28em .85em; border-radius: var(--eb-pill); }

/* Konfigurációhoz tartozó PDF-blokk */
.eb-artabs__pdf { margin-top: var(--eb-sp-6); }
.eb-artabs__pdf > h3 { font-size: var(--eb-fs-h4); margin: 0 0 var(--eb-sp-3); color: var(--eb-ink); }
.eb-artabs__more { margin-top: var(--eb-sp-5); font-family: var(--eb-font-head); font-weight: 700; font-size: var(--eb-fs-sm); }
.eb-artabs__more a { color: var(--eb-primary); }
.eb-artabs__more a:hover { color: var(--eb-primary-700); }

@media (max-width: 860px) {
  .eb-artabs__list { grid-template-columns: repeat(2, 1fr); }
  .eb-spec__grid { grid-template-columns: 1fr; }
}
@media (max-width: 520px) {
  .eb-artabs__list { grid-template-columns: 1fr; }
  .eb-spec { padding: var(--eb-sp-4); }
  .eb-spec__row { grid-template-columns: 1fr; gap: 0; padding: .5rem 0; }
  .eb-spec__row dd { padding-top: .15rem; }
}


/* ============================================================
   Árkategória-kártyák (az /arak hub részletes kártyái)
   Saját komponens: kép + címke, leírás, elválasztó, infósorok,
   elsődleges CTA + másodlagos „Termék bemutatása" link.
   ============================================================ */
.eb-catgrid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--eb-sp-5); }
.eb-catcard {
  display: flex; flex-direction: column; overflow: hidden;
  background: var(--eb-surface); border: 1px solid var(--eb-line); border-radius: var(--eb-r-lg);
  box-shadow: var(--eb-sh-sm);
  transition: transform var(--eb-ease), box-shadow var(--eb-ease), border-color var(--eb-ease);
}
.eb-catcard:hover { transform: translateY(-6px); box-shadow: var(--eb-sh-lg); border-color: var(--eb-primary-100); }
.eb-catcard:focus-within { border-color: var(--eb-primary); box-shadow: var(--eb-sh); }
.eb-catcard__media { position: relative; aspect-ratio: 4 / 3; overflow: hidden; background: var(--eb-primary-050); }
.eb-catcard__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .55s var(--eb-ease); }
.eb-catcard:hover .eb-catcard__media img { transform: scale(1.05); }
.eb-catcard__badge {
  position: absolute; top: var(--eb-sp-3); left: var(--eb-sp-3); z-index: 1;
  font-family: var(--eb-font-head); font-weight: 700; font-size: var(--eb-fs-xs); letter-spacing: .04em;
  color: var(--eb-white); background: var(--eb-primary); padding: .4em 1em; border-radius: var(--eb-pill);
  box-shadow: 0 4px 12px rgba(17, 17, 61, .28);
}
.eb-catcard__badge--offer { background: var(--eb-navy); }
.eb-catcard__body { display: flex; flex-direction: column; flex: 1 1 auto; padding: clamp(1.25rem, 1.05rem + .6vw, 1.6rem); }
.eb-catcard__title { font-family: var(--eb-font-head); font-weight: 800; font-size: var(--eb-fs-h4); color: var(--eb-navy); line-height: 1.18; text-transform: uppercase; letter-spacing: .01em; text-wrap: balance; }
.eb-catcard__desc { font-size: var(--eb-fs-sm); color: var(--eb-body); line-height: 1.55; margin-top: var(--eb-sp-3); }
.eb-catcard__div { border: 0; border-top: 1px solid var(--eb-line); margin: var(--eb-sp-4) 0; }
.eb-catcard__list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: .4rem; }
.eb-catcard__list li { position: relative; padding-left: 1.35em; font-size: var(--eb-fs-sm); color: var(--eb-body); }
.eb-catcard__list li::before { content: ""; position: absolute; left: 0; top: .52em; width: 7px; height: 7px; border-radius: 50%; background: var(--eb-primary); }
.eb-catcard__actions { margin-top: auto; padding-top: var(--eb-sp-5); display: flex; flex-direction: column; align-items: flex-start; gap: .7rem; }
.eb-catcard__more { font-family: var(--eb-font-head); font-weight: 700; font-size: var(--eb-fs-sm); color: var(--eb-primary); position: relative; }
.eb-catcard__more::after { content: ""; position: absolute; left: 0; bottom: -2px; width: 0; height: 2px; background: var(--eb-primary); transition: width var(--eb-ease); }
.eb-catcard__more:hover::after, .eb-catcard__more:focus-visible::after { width: 100%; }
@media (max-width: 960px) { .eb-catgrid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .eb-catgrid { grid-template-columns: 1fr; } }


/* ============================================================
   Referencia-lightbox (saját, vanilla; progresszív: JS nélkül a
   linkek natívan működnek, a lightbox csak JS-sel jelenik meg)
   ============================================================ */
/* Kattintható kép + hover nagyítás-jelzés */
[data-eb-lightbox-item] { cursor: zoom-in; }
.eb-lb-trigger { position: relative; display: block; overflow: hidden; }
.eb-lb-trigger::after { content: ""; position: absolute; inset: 0; background: rgba(17, 17, 61, 0); transition: background var(--eb-ease); pointer-events: none; }
.eb-lb-trigger:hover::after { background: rgba(17, 17, 61, .14); }
.eb-refcard__media { position: relative; }
.eb-lb-trigger__zoom {
  position: absolute; top: .6rem; right: .6rem; z-index: 2;
  width: 2.3rem; height: 2.3rem; border-radius: 50%;
  background: rgba(17, 17, 61, .55) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='M15.5 15.5 21 21'/%3E%3Cpath d='M10.5 7.5v6'/%3E%3Cpath d='M7.5 10.5h6'/%3E%3C/svg%3E") center / 1.2rem no-repeat;
  opacity: 0; transform: scale(.8); pointer-events: none;
  box-shadow: 0 4px 12px rgba(17, 17, 61, .3);
  transition: opacity var(--eb-ease), transform var(--eb-ease);
}
.eb-lb-trigger:hover .eb-lb-trigger__zoom, .eb-lb-trigger:focus-visible .eb-lb-trigger__zoom,
.eb-refcard--hover:hover .eb-lb-trigger__zoom, .eb-refcard:focus-visible .eb-lb-trigger__zoom { opacity: 1; transform: scale(1); }
@media (hover: none) { .eb-lb-trigger__zoom { opacity: .9; transform: none; } }

/* Háttérgörgetés lezárása lightbox alatt */
html.eb-lb-open, html.eb-lb-open body { overflow: hidden; }

/* Overlay */
.eb-lb { position: fixed; inset: 0; z-index: 1000; display: flex; align-items: center; justify-content: center; padding: clamp(.5rem, 2vw, 2rem); background: rgba(10, 12, 24, .92); opacity: 0; transition: opacity var(--eb-ease); }
.eb-lb.is-open { opacity: 1; }
.eb-lb__stage { margin: 0; max-width: 100%; max-height: 100%; display: flex; align-items: center; justify-content: center; }
.eb-lb__img { display: block; max-width: min(96vw, 1600px); max-height: 86vh; width: auto; height: auto; object-fit: contain; border-radius: var(--eb-r-sm); background: #fff; box-shadow: 0 30px 80px rgba(0, 0, 0, .5); }
.eb-lb__btn { position: absolute; display: grid; place-items: center; width: 3rem; height: 3rem; color: #fff; background: rgba(255, 255, 255, .10); border: 1px solid rgba(255, 255, 255, .25); border-radius: 50%; transition: background var(--eb-ease), transform var(--eb-ease); }
.eb-lb__btn:hover { background: rgba(255, 255, 255, .22); }
.eb-lb__btn svg { width: 1.5rem; height: 1.5rem; fill: currentColor; }
.eb-lb__close { top: clamp(.6rem, 2vw, 1.4rem); right: clamp(.6rem, 2vw, 1.4rem); }
.eb-lb__nav { top: 50%; transform: translateY(-50%); }
.eb-lb__nav--prev { left: clamp(.4rem, 2vw, 1.4rem); }
.eb-lb__nav--next { right: clamp(.4rem, 2vw, 1.4rem); }
.eb-lb__nav--prev:hover, .eb-lb__nav--next:hover { transform: translateY(-50%) scale(1.07); }
.eb-lb__counter { position: absolute; bottom: clamp(.5rem, 2vw, 1.2rem); left: 50%; transform: translateX(-50%); margin: 0; color: rgba(255, 255, 255, .85); font-family: var(--eb-font-head); font-weight: 600; font-size: var(--eb-fs-sm); letter-spacing: .05em; }
@media (max-width: 560px) {
  .eb-lb__btn { width: 2.6rem; height: 2.6rem; }
  .eb-lb__btn svg { width: 1.3rem; height: 1.3rem; }
  .eb-lb__nav--prev { left: .3rem; } .eb-lb__nav--next { right: .3rem; }
  .eb-lb__img { max-height: 80vh; }
}


/* ============================================================
   Hero-slider (saját, vanilla; a demó rotáló heróját reprodukálja)
   Grid-stack keresztfade — a magasságot a legmagasabb slide adja.
   ============================================================ */
.eb-heroslider { position: relative; overflow: hidden; background: var(--eb-ink); }
.eb-heroslider__viewport { display: grid; }
.eb-heroslide {
  grid-area: 1 / 1; position: relative; min-width: 0;
  opacity: 0; visibility: hidden;
  transition: opacity .8s var(--eb-ease), visibility 0s linear .8s;
}
.eb-heroslide.is-active { opacity: 1; visibility: visible; transition: opacity .8s var(--eb-ease); z-index: 1; }
.eb-heroslide__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.eb-heroslide__overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(17,17,61,.88) 0%, rgba(17,17,61,.70) 38%, rgba(17,17,61,.34) 66%, rgba(17,17,61,.12) 100%); }
.eb-heroslide__content { position: relative; z-index: 1; padding-block: clamp(4.5rem, 3.6rem + 8vw, 8.5rem); }
.eb-heroslide__panel { max-width: 640px; color: #fff; }
.eb-heroslide__eyebrow { display: inline-flex; align-items: center; gap: 8px; font-family: var(--eb-font-head); font-weight: 700; font-size: var(--eb-fs-xs); letter-spacing: .1em; text-transform: uppercase; color: #fff; background: rgba(255,255,255,.14); border: 1px solid rgba(255,255,255,.28); padding: 6px 14px; border-radius: var(--eb-pill); }
.eb-heroslide__eyebrow svg { width: 14px; height: 14px; fill: currentColor; }
.eb-heroslide__title { color: #fff; font-size: var(--eb-fs-h1); margin-top: var(--eb-sp-4); text-wrap: balance; }
.eb-heroslide__list { margin-top: var(--eb-sp-5); display: grid; gap: var(--eb-sp-3); list-style: none; padding: 0; }
.eb-heroslide__list li { display: flex; align-items: center; gap: 12px; font-weight: 600; color: rgba(255,255,255,.94); }
.eb-heroslide__list svg { flex: 0 0 auto; width: 22px; height: 22px; fill: var(--eb-primary-100); }
.eb-heroslide__actions { margin-top: var(--eb-sp-6); display: flex; gap: var(--eb-sp-3); flex-wrap: wrap; }
/* aktív slide finom belépő-mozgása */
.eb-heroslide__panel > * { opacity: 0; transform: translateY(14px); }
.eb-heroslide.is-active .eb-heroslide__panel > * { opacity: 1; transform: none; transition: opacity .6s var(--eb-ease), transform .6s var(--eb-ease); }
.eb-heroslide.is-active .eb-heroslide__panel > *:nth-child(2) { transition-delay: .08s; }
.eb-heroslide.is-active .eb-heroslide__panel > *:nth-child(3) { transition-delay: .16s; }
.eb-heroslide.is-active .eb-heroslide__panel > *:nth-child(4) { transition-delay: .24s; }

/* Vezérlők */
.eb-heroslider__controls { position: absolute; left: 0; right: 0; bottom: clamp(1rem, 3vw, 2rem); z-index: 3; }
.eb-heroslider__controls .eb-container { display: flex; align-items: center; justify-content: center; gap: 1rem; }
.eb-heroslider__dots { display: flex; align-items: center; gap: 2px; }
.eb-heroslider__dot { width: 44px; height: 44px; display: grid; place-items: center; background: none; border: 0; cursor: pointer; }
.eb-heroslider__dot::before { content: ""; width: 10px; height: 10px; border-radius: var(--eb-pill); background: rgba(255,255,255,.5); transition: width var(--eb-ease), background var(--eb-ease); }
.eb-heroslider__dot:hover::before { background: rgba(255,255,255,.85); }
.eb-heroslider__dot[aria-current="true"]::before { width: 30px; background: #fff; }

@media (max-width: 640px) {
  .eb-heroslide__overlay { background: linear-gradient(180deg, rgba(17,17,61,.62) 0%, rgba(17,17,61,.78) 100%); }
  .eb-heroslide__content { padding-bottom: clamp(5.5rem, 5rem + 6vw, 7rem); }
  .eb-heroslide__panel { max-width: none; }
}
@media (prefers-reduced-motion: reduce) {
  .eb-heroslide, .eb-heroslide.is-active, .eb-heroslide__panel > *, .eb-heroslide.is-active .eb-heroslide__panel > * { transition: none !important; }
}

/* Főoldal: a hero-kép a viewport tetejétől fusson, a fejléc + tájékoztató sáv
   fölé rétegezve. A header (fixed, z:100) és a tájékoztató sáv (z:90) a kép fölött.
   Csak a főoldalra (.eb-home) hat — más oldalak tájékoztató sávja változatlan. */
/* Tájékoztató sáv: kifinomult sötétkék→áttetsző kékes gradient, amely a hero
   overlayébe olvad (nincs tömör sötét sáv). */
.eb-home .eb-topnotice {
  position: absolute; inset: 0 0 auto 0; z-index: 90; padding-top: 84px;
  background: linear-gradient(180deg, rgba(6,27,58,.95) 0%, rgba(8,37,77,.80) 52%, rgba(11,63,115,.30) 84%, rgba(19,90,138,0) 100%);
  border-bottom: 0;
}
.eb-home .eb-heroslide__content {
  /* a tájékoztató-sáv fedése + finom lejjebb-tolás (mobil ~40px → desktop ~80px),
     hogy a szövegblokk optikailag a hero közepére kerüljön; a blokk belső
     térközei változatlanok, mindhárom dián azonos a pozíció */
  padding-top: calc(var(--eb-notice-h, 9rem) + clamp(1.25rem, 2.5vw, 2.25rem) + clamp(40px, 8vw, 80px));
  padding-bottom: clamp(4.5rem, 4rem + 4vw, 7rem);
}
/* Nagyobb hero-magasság desktopon → a képből ~10-15%-kal több látszik (kisebb vágás), torzítás nélkül */
.eb-home .eb-heroslider__viewport { min-height: clamp(560px, 92vh, 850px); }
/* Egységes, visszafogott sötétkék–liláskék overlay, a bal oldalon erősebb a szöveg mögött */
.eb-home .eb-heroslide__overlay { background: linear-gradient(100deg, rgba(6,27,58,.93) 0%, rgba(8,37,77,.82) 30%, rgba(11,63,115,.54) 55%, rgba(19,90,138,.26) 78%, rgba(19,90,138,.05) 100%); }
@media (max-width: 640px) {
  .eb-home .eb-heroslide__overlay { background: linear-gradient(180deg, rgba(6,27,58,.44) 0%, rgba(8,37,77,.68) 48%, rgba(11,63,115,.82) 100%); }
}

/* ============================================================
   ÁRAJÁNLATKÉRŐ LANDING — fókuszált, kompakt űrlap-elrendezés
   Csak a /arajanlatkeres oldal használja. Additív, saját eb-quote-*
   osztályok; a meglévő .eb-form / .eb-field / .eb-consent / gombok
   változatlanul működnek (JS-bekötés érintetlen).
   ============================================================ */
.eb-quote {
  position: relative;
  /* kompakt felső térköz: a folyó .eb-topnotice sáv már elvégzi a fixed-header
     offsetet, így nincs szükség nagy üres hero-területre */
  padding-block: clamp(1.75rem, 1.25rem + 2vw, 3rem) var(--eb-section);
  /* diszkrét „wallpaper": halvány pontháló + finom kékes átmenet;
     a fehér űrlapkártya tömör, így mögötte a felület tiszta és olvasható */
  background:
    radial-gradient(rgba(42,113,160,.05) 1.3px, transparent 1.4px) 0 0 / 22px 22px,
    linear-gradient(180deg, var(--eb-primary-050) 0%, var(--eb-canvas) 60%);
}

.eb-quote__head { max-width: 64ch; margin-bottom: clamp(1.5rem, 1.1rem + 1.6vw, 2.25rem); }
.eb-quote__head h1 { margin-top: var(--eb-sp-3); }
.eb-quote__lead { margin-top: var(--eb-sp-3); font-size: var(--eb-fs-lead); color: var(--eb-body); }

/* 2 oszlop: űrlap ~66% / kapcsolat ~34% */
.eb-quote__grid { display: grid; grid-template-columns: minmax(0, 1.95fr) minmax(0, 1fr); gap: clamp(1.25rem, .85rem + 1.6vw, 2rem); align-items: start; }
.eb-quote__main { min-width: 0; }

/* Bizalom-sor az űrlapkártya fölött */
.eb-quote__trust { list-style: none; display: flex; flex-wrap: wrap; gap: .5rem .625rem; margin: 0 0 var(--eb-sp-4); padding: 0; }
.eb-quote__trust li { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; font-family: var(--eb-font-head); font-weight: 600; font-size: var(--eb-fs-sm); color: var(--eb-primary-700); background: #fff; border: 1px solid var(--eb-primary-100); border-radius: var(--eb-pill); box-shadow: var(--eb-sh-sm); }
.eb-quote__trust svg { width: 18px; height: 18px; fill: var(--eb-primary); flex: 0 0 auto; }

/* Fehér, enyhén árnyékos, lekerekített űrlapkártya (belső padding ~32–40px) */
.eb-quote__card { background: #fff; border: 1px solid var(--eb-line); border-radius: var(--eb-r-lg); box-shadow: var(--eb-sh); padding: clamp(1.5rem, 1.1rem + 1.7vw, 2.5rem); }

/* Textarea: arányos magasság, ne tűnjön túlméretesnek */
.eb-quote .eb-textarea { min-height: 128px; }
/* Nagyobb, kényelmes érintőfelület a hozzájárulás-jelölőn */
.eb-quote .eb-consent input { width: 20px; height: 20px; margin-top: 1px; flex: 0 0 auto; }

/* Beküldő blokk: teljes szélességű, hangsúlyos CTA a checkbox alatt */
.eb-quote__actions { margin-top: var(--eb-sp-2); }
.eb-quote__actions .eb-btn { width: 100%; }
.eb-quote__actions .eb-form__note { text-align: center; }

/* Kapcsolat-kártya (aside): halvány kékes háttér, kiemelt telefon-CTA */
.eb-quote__aside { position: sticky; top: 100px; background: linear-gradient(180deg, var(--eb-primary-050), #ffffff); border: 1px solid var(--eb-primary-100); border-radius: var(--eb-r-lg); box-shadow: var(--eb-sh-sm); padding: clamp(1.35rem, 1rem + 1.3vw, 1.9rem); }
.eb-quote__asidetitle { font-size: var(--eb-fs-h4); color: var(--eb-ink); }
.eb-quote__asidelead { margin-top: var(--eb-sp-2); font-size: var(--eb-fs-sm); color: var(--eb-body); }
.eb-quote__call { width: 100%; margin-top: var(--eb-sp-4); }
.eb-quote__contact { list-style: none; margin: var(--eb-sp-5) 0 0; padding: var(--eb-sp-5) 0 0; border-top: 1px solid var(--eb-primary-100); display: grid; gap: var(--eb-sp-4); }
.eb-quote__contact li { display: flex; align-items: flex-start; gap: 12px; }
.eb-quote__contact svg { width: 20px; height: 20px; fill: var(--eb-primary); flex: 0 0 auto; margin-top: 2px; }
.eb-quote__contact span { display: flex; flex-direction: column; font-size: var(--eb-fs-sm); color: var(--eb-body); min-width: 0; }
.eb-quote__contact b { font-family: var(--eb-font-head); color: var(--eb-ink); }
.eb-quote__contact a { word-break: break-word; }

/* Reszponzív: egy oszlop, sorrend cím → űrlap → kapcsolat */
@media (max-width: 860px) {
  .eb-quote__grid { grid-template-columns: 1fr; }
  .eb-quote__aside { position: static; }
}
@media (max-width: 480px) {
  .eb-quote__trust li { width: 100%; }
}

/* ============================================================
   JAVÍTÁS — gombok a prose-szövegben
   A `.eb-prose a { color: var(--eb-primary); text-decoration: underline }`
   (magasabb specificitás: 0,0,1,1) felülírta a `.eb-btn--primary` fehér
   szövegszínét (0,0,1,0), így a primary gomb kék szövege eltűnt a kék
   háttéren. Ezek a szabályok unlayered-ek, ezért minden layered
   `.eb-prose a` szabályt legyőznek, és visszaadják a gomb saját megjelenését.
   (A hiba pre-existing volt; nem tartalmi/oldal-módosítás, csak CSS.)
   ============================================================ */
.eb-prose a.eb-btn { text-decoration: none; }
.eb-prose a.eb-btn--primary,
.eb-prose a.eb-btn--primary:hover,
.eb-prose a.eb-btn--light:hover,
.eb-prose a.eb-btn--ghost:hover { color: var(--eb-white); }
.eb-prose a.eb-btn--ghost,
.eb-prose a.eb-btn--light { color: var(--eb-primary); }
