:root {
  --bk-accent:#D2B39C;
  --bk-accent-dark:#8A5E45;
  --bk-accent-soft:#F7EFE8;
  --bk-accent-xsoft:#FFF7F1;
  --bk-border:#E7DDD6;
  --bk-text:#121212;
  --bk-muted:#575757;
  --bk-card:#fff;
  --bk-navy:#061C30;
  --bk-success:#187247;
  --bk-danger:#B3261E;
}

body.bk-modal-open { overflow: hidden; }

.bk-stepapp, .bk-stepapp * { box-sizing: border-box; }
.bk-stepapp {
  --bk-container-max: 1180px;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--bk-text);
  background:
    radial-gradient(circle at 8% 0%, rgba(210,179,156,.23), transparent 30%),
    linear-gradient(180deg,#f8f1eb 0%,#ede4dd 100%);
  padding: clamp(18px, 3vw, 34px) 16px;
  border-radius: 0;
}
.bk-stepapp__inner { max-width: var(--bk-container-max); margin: 0 auto; }
.bk-stepapp--wide .bk-stepapp__inner { max-width: 1440px; }
.bk-stepapp--embedded { background: transparent; padding: 0; }
.bk-stepapp--stacked .bk-stepapp__hero { grid-template-columns: 1fr; }
.bk-stepapp__header {
  background:#fff;
  border:1px solid var(--bk-border);
  border-radius:30px;
  box-shadow:0 18px 55px rgba(18,18,18,.09);
  padding:clamp(22px,4vw,36px);
  margin-bottom:24px;
}
.bk-stepapp__header--hidden { display:none; }
.bk-stepapp__header h1 {
  margin:0 0 10px;
  font-size:clamp(34px,4vw,56px);
  line-height:1.04;
  letter-spacing:-.05em;
}
.bk-stepapp__header p { margin:0; color:var(--bk-muted); font-size:17px; line-height:1.6; }
.bk-stepapp__eyebrow {
  display:inline-flex;
  border:1px solid #ead8ca;
  border-radius:999px;
  padding:8px 13px;
  color:var(--bk-accent-dark);
  font-size:13px;
  font-weight:950;
  margin-bottom:14px;
  background:#fff;
}
.bk-stepapp__hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(340px,420px);
  gap:26px;
  align-items:center;
  margin-bottom:26px;
}
.bk-stepapp__copy {
  background:#fff;
  border:1px solid var(--bk-border);
  border-radius:30px;
  box-shadow:0 18px 55px rgba(18,18,18,.09);
  padding:clamp(24px,4vw,42px);
}
.bk-stepapp__copy h2 {
  margin:0 0 14px;
  font-size:clamp(34px,4.4vw,58px);
  line-height:1.03;
  letter-spacing:-.05em;
}
.bk-stepapp__copy p { margin:0; color:var(--bk-muted); font-size:18px; line-height:1.6; }
.bk-stepapp__chips {
  margin-top:18px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.bk-stepapp__chips span {
  border:1px solid var(--bk-border);
  border-radius:999px;
  padding:10px 12px;
  background:#fffaf6;
  font-weight:850;
  font-size:13px;
  color:#4d3b32;
  text-align:center;
}
.bk-stepapp__frame {
  width:100%;
  max-width:390px;
  margin:0 auto;
  background:#fff;
  border:1px solid var(--bk-border);
  border-radius:34px;
  box-shadow:0 24px 70px rgba(18,18,18,.12);
  overflow:hidden;
}
.bk-stepapp__top {
  background:radial-gradient(circle at 15% 0%, rgba(255,255,255,.22), transparent 32%), var(--bk-navy);
  color:#fff;
  padding:22px 22px 18px;
}
.bk-stepapp__top h2 { margin:0 0 8px; font-size:26px; line-height:1.08; letter-spacing:-.04em; color:#fff; }
.bk-stepapp__top p { margin:0; color:rgba(255,255,255,.75); font-size:14px; line-height:1.45; }
.bk-stepapp__progress { padding:16px 22px 0; background:#fff; }
.bk-stepapp__progress-label { display:flex; justify-content:space-between; color:var(--bk-muted); font-size:12px; font-weight:850; margin-bottom:8px; }
.bk-stepapp__progress-bar { height:8px; border-radius:999px; background:#eadfd7; overflow:hidden; }
.bk-stepapp__progress-bar div { height:100%; width:20%; border-radius:999px; background:var(--bk-accent); transition:.25s ease; }
.bk-stepapp__dots { display:flex; gap:6px; margin-top:12px; }
.bk-stepapp__dots span { flex:1; height:6px; border-radius:999px; background:#eadfd7; }
.bk-stepapp__dots span.is-active { background:var(--bk-accent); }
.bk-stepapp__body { padding:18px 22px 22px; min-height:456px; }
.bk-stepapp__step { display:none; }
.bk-stepapp__step.is-active { display:block; }
.bk-stepapp__step h3 {
  margin:0 0 10px;
  font-size:28px;
  line-height:1.08;
  letter-spacing:-.045em;
}
.bk-stepapp__step p { margin:0 0 18px; color:var(--bk-muted); font-size:15px; line-height:1.5; }
.bk-field { margin-bottom:15px; }
.bk-field label { display:flex; justify-content:space-between; gap:12px; font-size:14px; line-height:1.2; font-weight:950; margin-bottom:7px; }
.bk-field input, .bk-field select {
  width:100%;
  height:58px;
  border:1px solid var(--bk-border);
  border-radius:18px;
  padding:0 15px;
  font-size:20px;
  font-weight:900;
  color:var(--bk-text);
  background:#fff;
  outline:none;
}
.bk-field small { display:block; color:var(--bk-muted); margin-top:7px; font-size:12.5px; line-height:1.4; }
.bk-stepapp__choices { display:grid; grid-template-columns:1fr; gap:10px; margin-bottom:15px; }
.bk-stepapp__choice {
  appearance:none;
  width:100%;
  border:1px solid var(--bk-border);
  background:#fff;
  color:var(--bk-text);
  border-radius:20px;
  padding:15px;
  text-align:left;
  cursor:pointer;
}
.bk-stepapp__choice.is-active { background:var(--bk-accent-soft); border-color:var(--bk-accent); box-shadow:0 10px 24px rgba(210,179,156,.18); }
.bk-stepapp__choice strong { display:block; font-size:16px; line-height:1.25; margin-bottom:4px; }
.bk-stepapp__choice span { display:block; color:var(--bk-muted); font-size:13px; line-height:1.35; }
.bk-stepapp__mode { display:none; }
.bk-stepapp__mode.is-active { display:block; }
.bk-stepapp__actions { display:grid; grid-template-columns:auto 1fr; gap:10px; margin-top:18px; }
.bk-btn {
  appearance:none;
  border:0;
  border-radius:18px;
  padding:15px 16px;
  font-size:16px;
  font-weight:950;
  cursor:pointer;
  color:#111;
  background:var(--bk-accent);
  box-shadow:0 12px 26px rgba(210,179,156,.22);
  text-align:center;
  text-decoration:none;
}
.bk-btn.secondary { background:#fff; border:1px solid var(--bk-border); box-shadow:none; }
.bk-error { display:none; padding:11px 13px; border-radius:14px; background:#fff1f0; color:#9d1c14; border:1px solid #ffd0cc; font-weight:800; margin-bottom:12px; }
.bk-error.show { display:block; }
.bk-stepapp__result-callout { border:1px solid #dce9df; background:#f3fbf6; border-radius:24px; padding:18px; margin-bottom:14px; }
.bk-stepapp__result-callout h3 { margin:0 0 8px; font-size:30px; line-height:1.05; letter-spacing:-.05em; }
.bk-stepapp__result-callout h3 strong { color:var(--bk-success); }
.bk-stepapp__result-callout p { margin:0; color:#3f5046; font-size:15px; line-height:1.45; }
.bk-stepapp__mini-metrics { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:14px; }
.bk-stepapp__cta-stack { display:grid; gap:9px; margin-top:12px; }
.bk-stepapp__details-btn {
  width:100%;
  border:1px solid var(--bk-border);
  background:#fff;
  border-radius:18px;
  padding:13px;
  font-weight:950;
  cursor:pointer;
}
.bk-stepapp__details {
  margin-top:26px;
  background:#fff;
  border:1px solid var(--bk-border);
  border-radius:30px;
  padding:clamp(18px,3vw,26px);
  box-shadow:0 18px 55px rgba(18,18,18,.09);
  scroll-margin-top:120px;
}
.bk-stepapp__details-head { display:grid; grid-template-columns:1fr auto; gap:18px; align-items:center; margin-bottom:18px; }
.bk-stepapp__details-head h2 { margin:0 0 8px; font-size:clamp(30px,4vw,46px); line-height:1.05; letter-spacing:-.05em; }
.bk-stepapp__details-head p { margin:0; color:var(--bk-muted); line-height:1.55; font-size:16px; }
.bk-stepapp__badge { border:1px solid #ead8ca; background:var(--bk-accent-xsoft); border-radius:999px; padding:11px 14px; color:var(--bk-accent-dark); font-weight:950; white-space:nowrap; }
.bk-stepapp__timeline { display:grid; grid-template-columns:1fr 1fr 1fr; gap:14px; margin-bottom:20px; }
.bk-stage { border:1px solid var(--bk-border); border-radius:24px; background:#fff; padding:18px; position:relative; overflow:hidden; }
.bk-stage::before { content:attr(data-step-label); position:absolute; right:14px; top:12px; color:rgba(210,179,156,.32); font-size:54px; line-height:1; font-weight:950; }
.bk-stage h3 { position:relative; margin:0 0 9px; font-size:24px; line-height:1.1; letter-spacing:-.035em; }
.bk-stage p { position:relative; margin:0 0 14px; color:var(--bk-muted); line-height:1.48; font-size:14px; }
.bk-stage--win { background:radial-gradient(circle at 12% 0%, rgba(24,114,71,.12), transparent 40%), #fff; border-color:#cfe4d8; }
.bk-stage--win h3 strong { color:var(--bk-success); }
.bk-stage__lines { display:grid; gap:8px; position:relative; }
.bk-stage__line { display:flex; justify-content:space-between; gap:12px; border-top:1px solid #f0e6df; padding-top:8px; font-size:14px; color:var(--bk-muted); }
.bk-stage__line strong { color:var(--bk-text); text-align:right; white-space:nowrap; }
.bk-stage__line strong.bk-good, .bk-good { color:var(--bk-success)!important; }
.bk-stage__line strong.bk-bad, .bk-bad { color:var(--bk-danger)!important; }
.bk-stepapp__section-title { margin:22px 0 10px; font-size:34px; letter-spacing:-.04em; }
.bk-stepapp__tiles { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; margin:18px 0; }
.bk-tile { appearance:none; border:1px solid var(--bk-border); background:#fff; color:var(--bk-text); border-radius:22px; padding:17px; text-align:left; cursor:pointer; min-height:130px; transition:.18s ease; }
.bk-tile.is-active, .bk-tile:hover { background:var(--bk-accent-soft); border-color:var(--bk-accent); transform:translateY(-1px); }
.bk-tile strong { display:block; font-size:16px; line-height:1.22; margin-bottom:7px; }
.bk-tile span { display:block; color:var(--bk-muted); font-size:13.5px; line-height:1.38; }
.bk-panel { display:none; border:1px solid var(--bk-border); border-radius:24px; padding:20px; background:#fff; scroll-margin-top:120px; }
.bk-panel.is-active { display:block; }
.bk-panel h3 { margin:0 0 10px; font-size:30px; line-height:1.08; letter-spacing:-.04em; }
.bk-panel p { margin:0 0 14px; color:var(--bk-muted); line-height:1.55; }
.bk-pill-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.bk-pill { border:1px solid var(--bk-border); border-radius:18px; padding:15px; background:#fff; }
.bk-pill span { display:block; color:var(--bk-muted); font-size:13px; font-weight:850; }
.bk-pill strong { display:block; margin-top:6px; font-size:22px; letter-spacing:-.025em; }
.bk-prepay-form, .bk-download-box { display:grid; grid-template-columns:1fr 1fr auto; gap:12px; align-items:end; margin:14px 0; border:1px solid #ead8ca; border-radius:22px; padding:14px; background:#fffaf6; }
.bk-download-box { grid-template-columns:1fr auto; }
.bk-table-wrap { overflow:auto; border:1px solid var(--bk-border); border-radius:18px; margin-top:14px; }
.bk-table-wrap table { border-collapse:collapse; width:100%; min-width:760px; background:#fff; }
.bk-table-wrap th, .bk-table-wrap td { border-bottom:1px solid var(--bk-border); padding:11px; text-align:right; font-size:13px; white-space:nowrap; }
.bk-table-wrap th { background:#fff7f1; text-transform:uppercase; font-size:11px; letter-spacing:.06em; }
.bk-table-wrap th:first-child, .bk-table-wrap td:first-child { text-align:left; }
.bk-inline-cta { margin-top:14px; position:relative; }
.bk-stepapp__bottom-cta { margin-top:20px; border-radius:24px; background:var(--bk-navy); color:#fff; padding:20px; display:flex; justify-content:space-between; align-items:center; gap:16px; }
.bk-stepapp__bottom-cta h3 { margin:0 0 5px; font-size:25px; letter-spacing:-.035em; color:#fff; }
.bk-stepapp__bottom-cta p { margin:0; color:rgba(255,255,255,.72); line-height:1.45; }
.bk-stepapp__bottom-cta .bk-btn { background:#fff; color:#111; white-space:nowrap; }

.bk-modal { position:fixed; inset:0; z-index:100000; display:none; align-items:center; justify-content:center; padding:10px; background:rgba(6,28,48,.68); backdrop-filter:blur(7px); }
.bk-modal.is-active { display:flex; }
.bk-modal__card { width:min(460px,100%); height:min(760px,94vh); max-height:94vh; background:#fff; border-radius:28px; box-shadow:0 30px 90px rgba(0,0,0,.35); overflow:hidden; display:flex; flex-direction:column; }
.bk-modal__head { flex:0 0 auto; padding:14px 16px; background:var(--bk-accent-soft); border-bottom:1px solid var(--bk-border); display:flex; align-items:center; justify-content:space-between; gap:12px; }
.bk-modal__head h3 { margin:0; font-size:18px; line-height:1.15; letter-spacing:-.03em; padding-right:6px; }
.bk-modal__close { width:40px; height:40px; flex:0 0 40px; border:0; border-radius:50%; background:#fff; font-size:26px; line-height:1; cursor:pointer; font-weight:900; }
.bk-modal__body { flex:1 1 auto; overflow:hidden; background:#fff; display:flex; justify-content:center; }
.bk-modal__body iframe { width:360px; max-width:100%; height:100%; min-height:0; border:0; margin:0 auto; display:block; }

@media(max-width:1100px){
  .bk-stepapp__hero { grid-template-columns:1fr; }
  .bk-stepapp__timeline { grid-template-columns:1fr; }
  .bk-stepapp__tiles { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .bk-prepay-form, .bk-download-box { grid-template-columns:1fr; }
  .bk-stepapp__details-head { grid-template-columns:1fr; }
}
@media(max-width:700px){
  .bk-stepapp { padding:18px 10px 58px; }
  .bk-stepapp__header, .bk-stepapp__copy, .bk-stepapp__details { border-radius:22px; padding:18px; }
  .bk-stepapp__copy h2 { font-size:34px; }
  .bk-stepapp__copy p { font-size:16px; }
  .bk-stepapp__chips { grid-template-columns:1fr; }
  .bk-stepapp__frame { max-width:none; border-radius:26px; }
  .bk-stepapp__top { padding:20px 18px 16px; }
  .bk-stepapp__progress { padding:15px 18px 0; }
  .bk-stepapp__body { padding:18px; }
  .bk-stepapp__mini-metrics, .bk-pill-grid { grid-template-columns:1fr; }
  .bk-stepapp__tiles { grid-template-columns:1fr; }
  .bk-tile { min-height:auto; border-radius:20px; padding:15px; transform:none!important; }
  .bk-stepapp__bottom-cta { display:block; }
  .bk-stepapp__bottom-cta .bk-btn { width:100%; margin-top:14px; }
  .bk-modal { padding:0; align-items:stretch; justify-content:stretch; }
  .bk-modal__card { width:100%; height:100dvh; max-height:100dvh; border-radius:0; }
  .bk-modal__head { padding:12px 14px; }
  .bk-modal__head h3 { font-size:16px; line-height:1.12; }
  .bk-modal__close { width:38px; height:38px; flex-basis:38px; font-size:24px; }
  .bk-modal__body iframe { width:360px; max-width:100%; height:100%; }
}
@media(max-width:380px){
  .bk-modal__body iframe { width:100%; }
}


/* v1.6.1 élesítés: prototípus chipek elrejtése és csempék olvasható tördelése */
.bk-stepapp__chips {
  display: none !important;
}

.bk-stepapp__tiles {
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)) !important;
  align-items: stretch;
}

.bk-tile {
  min-width: 0;
  min-height: 128px;
  overflow: hidden;
  display: block;
}

.bk-tile strong,
.bk-tile span {
  white-space: normal !important;
  overflow-wrap: anywhere;
  word-break: normal;
  hyphens: auto;
}

.bk-tile strong {
  font-size: 15px;
  line-height: 1.25;
}

.bk-tile span {
  font-size: 13px;
  line-height: 1.42;
}

@media (min-width: 1180px) {
  .bk-stepapp__tiles {
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important;
  }
}

@media (max-width: 900px) {
  .bk-stepapp__tiles {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 620px) {
  .bk-stepapp__tiles {
    grid-template-columns: 1fr !important;
  }

  .bk-tile {
    min-height: auto;
  }
}


/* v1.6.2 mobil/Elementor hardening */
.bk-stepapp {
  overflow-x: hidden !important;
  max-width: 100% !important;
}

.bk-stepapp__inner,
.bk-stepapp__hero,
.bk-stepapp__details,
.bk-stepapp__frame,
.bk-stepapp__copy,
.bk-stepapp__body,
.bk-panel,
.bk-stage {
  min-width: 0 !important;
  max-width: 100% !important;
}

.bk-stepapp__chips {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
}

/* Csempék: soha ne csússzanak ki oldalra, ne folyjanak össze */
.bk-stepapp__tiles {
  width: 100% !important;
  max-width: 100% !important;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)) !important;
  gap: 12px !important;
  overflow: visible !important;
}

.bk-tile {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 124px !important;
  border-radius: 22px !important;
  padding: 16px !important;
  background: #fff !important;
  color: var(--bk-text) !important;
  border: 1px solid var(--bk-border) !important;
  overflow: hidden !important;
  white-space: normal !important;
}

.bk-tile.is-active,
.bk-tile:hover,
.bk-tile:focus {
  background: var(--bk-accent-soft) !important;
  border-color: var(--bk-accent) !important;
}

.bk-tile strong,
.bk-tile span,
.bk-stepapp__choice strong,
.bk-stepapp__choice span {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
  hyphens: auto !important;
  text-shadow: none !important;
}

.bk-tile strong {
  color: var(--bk-text) !important;
  font-size: 15.5px !important;
  line-height: 1.25 !important;
}

.bk-tile span {
  color: var(--bk-muted) !important;
  font-size: 13.2px !important;
  line-height: 1.42 !important;
}

/* Választógombok: ne legyen barna blokk fehér szöveggel, mindig olvasható legyen */
.bk-stepapp__choice {
  background: #fff !important;
  color: var(--bk-text) !important;
  border: 1px solid var(--bk-border) !important;
  border-radius: 20px !important;
}

.bk-stepapp__choice.is-active,
.bk-stepapp__choice:hover,
.bk-stepapp__choice:focus {
  background: var(--bk-accent-soft) !important;
  border-color: var(--bk-accent) !important;
}

.bk-stepapp__choice strong {
  color: var(--bk-text) !important;
}

.bk-stepapp__choice span {
  color: var(--bk-muted) !important;
}

/* Fő gomb színe Bankkatalógus, ne külső narancs override legyen */
.bk-stepapp .bk-btn:not(.secondary),
.bk-stepapp button.bk-btn:not(.secondary) {
  background: var(--bk-accent) !important;
  color: #111 !important;
}

.bk-stepapp__bottom-cta .bk-btn {
  background: #fff !important;
  color: #111 !important;
}

/* Popup iframe: mobilon teljes szélességű, vízszintes kilógás nélkül */
.bk-modal__body {
  overflow: hidden !important;
  width: 100% !important;
}

.bk-modal__body iframe {
  display: block !important;
  width: 100% !important;
  max-width: 360px !important;
  min-width: 0 !important;
  height: 100% !important;
  border: 0 !important;
}

@media (max-width: 900px) {
  .bk-stepapp__tiles {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 700px) {
  .bk-stepapp {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  .bk-stepapp__copy,
  .bk-stepapp__details,
  .bk-stepapp__header {
    width: 100% !important;
  }

  .bk-stepapp__tiles {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .bk-tile {
    min-height: auto !important;
    padding: 14px 15px !important;
  }

  .bk-tile strong {
    font-size: 17px !important;
  }

  .bk-tile span {
    font-size: 13.5px !important;
  }

  .bk-stepapp__choice {
    padding: 15px !important;
  }

  .bk-modal__card {
    width: 100vw !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
  }

  .bk-modal__body iframe {
    width: 100% !important;
    max-width: 360px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (max-width: 380px) {
  .bk-modal__body iframe {
    max-width: 100% !important;
  }
}


/* v1.6.3 éles frontend: nincs felső bemutató kártya, a kalkulátor induljon rögtön */
.bk-stepapp__header,
.bk-stepapp__copy,
.bk-stepapp__chips,
.bk-stepapp__eyebrow {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
}

.bk-stepapp__hero {
  display: block !important;
  margin: 0 auto 26px auto !important;
  padding: 0 !important;
}

.bk-stepapp__frame {
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Gombok: minden pluginon belüli gomb legyen ténylegesen lekerekített */
.bk-stepapp button,
.bk-stepapp .bk-btn,
.bk-stepapp button.bk-btn,
.bk-stepapp__actions .bk-btn,
.bk-stepapp__cta-stack .bk-btn,
.bk-stepapp__details-btn,
.bk-stepapp__choice,
.bk-tile,
.bk-download-box .bk-btn,
.bk-prepay-form .bk-btn,
.bk-inline-cta .bk-btn,
.bk-stepapp__bottom-cta .bk-btn {
  border-radius: 24px !important;
  -webkit-border-radius: 24px !important;
  overflow: hidden !important;
}

.bk-modal__close {
  border-radius: 999px !important;
  -webkit-border-radius: 999px !important;
}

.bk-stepapp__actions .bk-btn,
.bk-stepapp__cta-stack .bk-btn,
.bk-inline-cta .bk-btn,
.bk-prepay-form .bk-btn,
.bk-download-box .bk-btn,
.bk-stepapp__bottom-cta .bk-btn {
  background: var(--bk-accent) !important;
  color: #111 !important;
  border: 1px solid var(--bk-accent) !important;
  box-shadow: 0 12px 26px rgba(210,179,156,.22) !important;
}

.bk-stepapp__actions .bk-btn.secondary {
  background: #fff !important;
  color: #111 !important;
  border: 1px solid var(--bk-border) !important;
}

.bk-stepapp__details-btn {
  background: #fff !important;
  color: #111 !important;
  border: 1px solid var(--bk-border) !important;
  box-shadow: none !important;
}

.bk-stepapp__bottom-cta .bk-btn {
  background: #fff !important;
  color: #111 !important;
  border-color: #fff !important;
}

.bk-stepapp__choice,
.bk-tile {
  background: #fff !important;
  color: var(--bk-text) !important;
  border: 1px solid var(--bk-border) !important;
}

.bk-stepapp__choice.is-active,
.bk-stepapp__choice:hover,
.bk-stepapp__choice:focus,
.bk-tile.is-active,
.bk-tile:hover,
.bk-tile:focus {
  background: var(--bk-accent-soft) !important;
  border-color: var(--bk-accent) !important;
}

@media (max-width: 700px) {
  .bk-stepapp {
    padding-top: 0 !important;
  }

  .bk-stepapp__hero {
    margin-top: 0 !important;
  }

  .bk-stepapp__frame {
    border-radius: 28px !important;
    -webkit-border-radius: 28px !important;
  }

  .bk-stepapp__actions {
    grid-template-columns: 1fr 1fr !important;
  }

  .bk-stepapp__actions .bk-btn {
    width: 100% !important;
  }
}


/* v1.6.4 célzott mobil javítások */

/* Popup fejléc: ne legyen szöveg, csak stabil jobb felső X */
.bk-modal__head--close-only {
  min-height: 56px !important;
  height: 56px !important;
  padding: 8px 12px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  background: var(--bk-accent-soft) !important;
  border-bottom: 1px solid var(--bk-border) !important;
}

.bk-modal__head--close-only h3,
.bk-modal__head h3 {
  display: none !important;
}

.bk-modal__close {
  position: static !important;
  margin-left: auto !important;
  margin-right: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  flex: 0 0 44px !important;
  border-radius: 999px !important;
  padding: 0 !important;
  line-height: 1 !important;
  text-align: center !important;
}

/* A modal body az új, kisebb fejléc alatti teljes helyet használja */
.bk-modal__body {
  height: calc(100% - 56px) !important;
}

/* Részletek blokk: csak cím, nincs magyarázó szöveg/címke */
.bk-stepapp__details-head--simple {
  display: block !important;
  margin-bottom: 18px !important;
}

.bk-stepapp__details-head--simple h2 {
  margin: 0 !important;
}

.bk-stepapp__details-head--simple p,
.bk-stepapp__details-head--simple .bk-stepapp__badge,
.bk-stepapp__badge {
  display: none !important;
}

/* Gombszöveg középre és ne csússzon ki */
.bk-stepapp .bk-btn,
.bk-stepapp button.bk-btn,
.bk-stepapp__details-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  line-height: 1.18 !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  min-height: 56px !important;
  padding: 14px 18px !important;
}

.bk-stepapp__actions {
  align-items: stretch !important;
}

.bk-stepapp__actions .bk-btn {
  width: 100% !important;
  min-width: 0 !important;
}

/* Mobilon a vissza/részletek gombpár egyforma és olvasható */
@media (max-width: 700px) {
  .bk-stepapp__actions {
    grid-template-columns: 1fr 1fr !important;
    gap: 12px !important;
  }

  .bk-stepapp__actions .bk-btn {
    font-size: 15.5px !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  .bk-modal__head--close-only {
    min-height: 54px !important;
    height: 54px !important;
    padding: 8px 12px !important;
  }

  .bk-modal__close {
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    flex-basis: 42px !important;
    font-size: 26px !important;
  }

  .bk-modal__body {
    height: calc(100% - 54px) !important;
  }
}

/* v1.6.5 – szemelyi-hitel.hu arculati réteg */
.bk-stepapp {
  --bk-accent:#ee6c4d;
  --bk-accent-dark:#d85133;
  --bk-accent-soft:#fff1ed;
  --bk-accent-xsoft:#fff8f6;
  --bk-border:#cbd9e6;
  --bk-text:#172b3a;
  --bk-muted:#526574;
  --bk-card:#fff;
  --bk-navy:#0d3b66;
  font-family:Manrope,Arial,sans-serif;
  color:var(--bk-text);
  background:linear-gradient(180deg,#f3f7ff 0%,#fff 100%);
}

.bk-stepapp__frame,
.bk-stepapp__details,
.bk-stage,
.bk-panel,
.bk-pill,
.bk-table-wrap {
  border:2px solid var(--bk-border);
  box-shadow:0 17px 40px rgba(13,59,102,.09);
}

.bk-stepapp__frame { border-radius:24px; }
.bk-stepapp__top { background:linear-gradient(135deg,#082b4b,#0d3b66); }
.bk-stepapp__progress-bar,
.bk-stepapp__dots span { background:#e5edf5; }
.bk-stepapp__progress-bar div,
.bk-stepapp__dots span.is-active { background:var(--bk-accent); }

.bk-field input,
.bk-field select {
  border:2px solid var(--bk-border);
  border-radius:12px;
  color:var(--bk-text);
}
.bk-field input:focus,
.bk-field select:focus {
  border-color:var(--bk-accent);
  box-shadow:0 0 0 4px rgba(238,108,77,.16);
}

.bk-stepapp .bk-btn:not(.secondary),
.bk-stepapp button.bk-btn:not(.secondary),
.bk-stepapp__actions .bk-btn,
.bk-stepapp__cta-stack .bk-btn,
.bk-inline-cta .bk-btn,
.bk-prepay-form .bk-btn,
.bk-download-box .bk-btn {
  background:var(--bk-accent)!important;
  color:#fff!important;
  border-color:var(--bk-accent)!important;
  box-shadow:0 12px 25px rgba(238,108,77,.24)!important;
}
.bk-stepapp .bk-btn:not(.secondary):hover,
.bk-stepapp button.bk-btn:not(.secondary):hover {
  background:var(--bk-accent-dark)!important;
  border-color:var(--bk-accent-dark)!important;
  transform:translateY(-2px);
}
.bk-stepapp__actions .bk-btn.secondary,
.bk-stepapp__details-btn {
  background:#fff!important;
  color:var(--bk-navy)!important;
  border:2px solid var(--bk-border)!important;
}

.bk-stepapp__choice,
.bk-tile {
  border:2px solid var(--bk-border)!important;
  border-radius:18px!important;
  box-shadow:0 12px 28px rgba(13,59,102,.07);
}
.bk-stepapp__choice.is-active,
.bk-stepapp__choice:hover,
.bk-stepapp__choice:focus,
.bk-tile.is-active,
.bk-tile:hover,
.bk-tile:focus {
  background:#f3f7ff!important;
  border-color:var(--bk-navy)!important;
  box-shadow:0 17px 34px rgba(13,59,102,.12);
}
.bk-stepapp__bottom-cta { background:linear-gradient(135deg,#082b4b,#0d3b66); }
.bk-stepapp__bottom-cta .bk-btn {
  background:#fff!important;
  color:var(--bk-navy)!important;
  border-color:#fff!important;
}
.bk-prepay-form,
.bk-download-box,
.bk-table-wrap th { background:#f3f7ff; border-color:var(--bk-border); }
.bk-modal { background:rgba(8,43,75,.72); }
.bk-modal__head--close-only { background:#f3f7ff!important; }

@media(max-width:700px) {
  .bk-stepapp { padding:0 14px 48px!important; }
  .bk-stepapp__body { padding:20px 18px 22px; }
  .bk-stepapp__step h3 { font-size:26px; }
  .bk-field input,.bk-field select { height:54px; font-size:18px; }
}

/* v1.6.6 – kompakt, fokalt lepesenkenti felulet */
.bk-stepapp {
  padding:clamp(18px,3vw,34px) 16px 48px!important;
}

.bk-stepapp__hero {
  margin-bottom:0!important;
}

.bk-stepapp__frame {
  width:min(100%,860px)!important;
  max-width:860px!important;
  border-radius:26px!important;
  box-shadow:0 22px 54px rgba(13,59,102,.12)!important;
}

.bk-stepapp__top {
  padding:22px 28px 20px!important;
}

.bk-stepapp__top h2 {
  font-size:clamp(25px,2.6vw,32px)!important;
  letter-spacing:-.025em!important;
}

.bk-stepapp__top p {
  max-width:680px;
  font-size:16px!important;
  line-height:1.55!important;
}

.bk-stepapp__progress {
  padding:18px 28px 0!important;
}

.bk-stepapp__progress-label {
  align-items:center;
  margin-bottom:10px!important;
  font-size:14px!important;
}

.bk-stepapp__progress-label [data-bk-step-short] {
  padding:5px 10px;
  border-radius:999px;
  background:#f3f7ff;
  color:var(--bk-navy);
}

.bk-stepapp__progress-bar {
  height:7px!important;
}

.bk-stepapp__dots {
  display:none!important;
}

.bk-stepapp__body {
  min-height:330px!important;
  padding:24px 28px 26px!important;
}

.bk-stepapp__step {
  width:100%;
  max-width:680px;
  margin:0 auto;
}

.bk-stepapp__step h3 {
  margin-bottom:10px!important;
  color:var(--bk-navy);
  font-size:clamp(27px,3vw,34px)!important;
  line-height:1.12!important;
  letter-spacing:-.035em!important;
}

.bk-stepapp__step > p {
  max-width:650px;
  margin-bottom:20px!important;
  font-size:16px!important;
  line-height:1.58!important;
}

.bk-field {
  max-width:560px;
  margin-bottom:16px!important;
}

.bk-field label {
  font-size:15px!important;
  line-height:1.35!important;
}

.bk-field input,
.bk-field select {
  height:58px!important;
  font-size:20px!important;
}

.bk-field small {
  display:inline-flex!important;
  margin-top:9px!important;
  padding:6px 10px;
  border-radius:999px;
  background:#f3f7ff;
  color:var(--bk-muted)!important;
  font-size:13px!important;
}

.bk-stepapp__choices {
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
}

.bk-stepapp__choice {
  min-height:108px;
  padding:17px!important;
}

.bk-stepapp__choice strong {
  font-size:17px!important;
}

.bk-stepapp__choice span {
  font-size:14px!important;
}

.bk-stepapp__actions {
  width:100%;
  max-width:620px;
  grid-template-columns:minmax(120px,.32fr) minmax(220px,.68fr)!important;
  gap:12px!important;
  margin:22px auto 0!important;
}

.bk-stepapp__actions .bk-btn {
  min-height:54px!important;
  font-size:17px!important;
}

.bk-stepapp__body:has(.bk-stepapp__step[data-step="1"].is-active) .bk-stepapp__actions {
  max-width:360px;
  grid-template-columns:1fr!important;
  margin-left:auto!important;
  margin-right:0!important;
}

.bk-stepapp__body:has(.bk-stepapp__step[data-step="1"].is-active) [data-bk-prev] {
  display:none!important;
}

.bk-stepapp__body:has(.bk-stepapp__step[data-step="5"].is-active) .bk-stepapp__actions {
  display:none!important;
}

.bk-stepapp__body:has(.bk-stepapp__step[data-step="6"].is-active) .bk-stepapp__actions {
  display:none!important;
}

.bk-stepapp__step--handoff {
  max-width:none!important;
}

.bk-handoff {
  display:grid;
  grid-template-columns:minmax(0,1fr) 378px;
  gap:24px;
  align-items:start;
}

.bk-handoff__summary {
  padding:10px 0 0;
}

.bk-handoff__eyebrow {
  display:inline-flex;
  margin-bottom:12px;
  color:#f56b4c;
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
}

.bk-handoff__summary h3,
.bk-handoff__form-head h3 {
  color:#092f55!important;
}

.bk-handoff__summary>p,
.bk-handoff__form-head p {
  color:#627386;
  font-size:14px;
  line-height:1.55;
}

.bk-handoff__metrics {
  display:grid;
  gap:9px;
  margin:20px 0;
}

.bk-handoff__metrics>div {
  display:grid;
  gap:3px;
  padding:13px 15px;
  border-radius:13px;
  background:#f3f7fc;
}

.bk-handoff__metrics span {
  color:#0d4777;
  font-size:20px;
  font-weight:950;
}

.bk-handoff__metrics span.is-negative {
  color:var(--bk-danger);
}

.bk-handoff__metrics small {
  color:#627386;
  font-size:12px;
  font-weight:750;
}

.bk-handoff__list {
  display:grid;
  gap:10px;
  margin:0;
  padding:0;
  list-style:none;
}

.bk-handoff__list li {
  display:flex;
  align-items:center;
  gap:10px;
  color:#092f55;
  font-size:14px;
  font-weight:800;
}

.bk-handoff__list i {
  display:grid;
  place-items:center;
  width:25px;
  height:25px;
  border-radius:8px;
  background:#0d4777;
  color:#fff;
  font-size:12px;
  font-style:normal;
}

.bk-handoff__back {
  margin-top:20px;
  padding:0;
  border:0;
  background:transparent;
  color:#0d4777;
  font-size:14px;
  font-weight:850;
  text-decoration:underline;
  text-underline-offset:4px;
  cursor:pointer;
}

.bk-handoff__form {
  padding:16px 8px 8px;
  border:2px solid #b8cde1;
  border-radius:20px;
  background:#fff;
  box-shadow:0 18px 42px rgba(9,47,85,.11);
}

.bk-handoff__form-head {
  padding:0 10px 14px;
}

.bk-handoff__form-head>span {
  color:#f56b4c;
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
}

.bk-handoff__form-head h3 {
  margin:5px 0 7px!important;
  font-size:23px!important;
}

.bk-handoff__form-head p {
  margin:0!important;
}

.bk-handoff__iframe {
  width:362px;
  max-width:100%;
  height:642px;
  margin:0 auto;
  border:1px solid #c9d5e2;
  border-radius:16px;
  overflow:hidden;
  background:#91989e;
}

.bk-handoff__iframe iframe {
  display:block;
  width:360px;
  max-width:100%;
  height:640px;
  border:0;
  background:#91989e;
}

.bk-handoff__loading {
  padding:30px 15px;
  color:#fff;
  font-size:14px;
  font-weight:800;
  text-align:center;
}

.bk-handoff__disclaimer {
  margin:20px 0 0!important;
  color:#708093!important;
  font-size:12px!important;
  line-height:1.5!important;
  text-align:center;
}

.bk-stepapp__result-callout {
  border:2px solid #cfe4d8!important;
  box-shadow:0 14px 30px rgba(24,114,71,.08);
}

.bk-stepapp__details {
  display:none!important;
  width:100%;
  margin-top:28px!important;
}

.bk-stepapp__details.is-open {
  display:block!important;
}

@media (min-width:1101px) {
  .bk-stepapp__tiles {
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
  }

  .bk-tile {
    min-height:142px!important;
    padding:16px 14px!important;
  }
}

@media (max-width:700px) {
  .bk-stepapp {
    padding:0 10px 40px!important;
  }

  .bk-stepapp__frame {
    border-radius:22px!important;
  }

  .bk-stepapp__top {
    padding:19px 18px 17px!important;
  }

  .bk-stepapp__top h2 {
    font-size:25px!important;
  }

  .bk-stepapp__top p {
    font-size:15px!important;
  }

  .bk-stepapp__progress {
    padding:15px 18px 0!important;
  }

  .bk-stepapp__progress-label {
    font-size:13px!important;
  }

  .bk-stepapp__body {
    min-height:0!important;
    padding:20px 18px 22px!important;
  }

  .bk-stepapp__step h3 {
    font-size:27px!important;
  }

  .bk-stepapp__step > p {
    font-size:16px!important;
  }

  .bk-stepapp__choices {
    grid-template-columns:1fr!important;
  }

  .bk-stepapp__choice {
    min-height:auto;
  }

  .bk-stepapp__actions {
    max-width:none;
    grid-template-columns:minmax(96px,.38fr) minmax(160px,.62fr)!important;
  }

  .bk-stepapp__body:has(.bk-stepapp__step[data-step="1"].is-active) .bk-stepapp__actions {
    max-width:none;
  }

  .bk-stepapp__details {
    margin-top:18px!important;
  }
}

@media (max-width:820px) {
  .bk-handoff {
    grid-template-columns:1fr;
  }

  .bk-handoff__form {
    width:min(100%,390px);
    margin:0 auto;
  }
}

/* v1.6.7 – ures mezok, peldaertekek es mezoszintu hibak */
.bk-field input::placeholder,
.bk-field select::placeholder {
  color:#7a8a98!important;
  font-weight:650!important;
  opacity:1!important;
}

.bk-field.has-error input,
.bk-field.has-error select {
  border-color:var(--bk-danger)!important;
  background:#fffafa!important;
  box-shadow:0 0 0 4px rgba(179,38,30,.12)!important;
}

.bk-field-error {
  display:flex;
  align-items:flex-start;
  gap:7px;
  margin-top:9px;
  padding:9px 11px;
  border:1px solid #f1b5b0;
  border-radius:10px;
  background:#fff1f0;
  color:var(--bk-danger);
  font-size:14px;
  font-weight:800;
  line-height:1.4;
}

.bk-field-error::before {
  content:"!";
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:19px;
  height:19px;
  flex:0 0 19px;
  border-radius:50%;
  background:var(--bk-danger);
  color:#fff;
  font-size:12px;
  line-height:1;
}

.bk-error.show {
  border:2px solid #f1b5b0;
  background:#fff1f0;
  color:var(--bk-danger);
  font-size:15px;
}
