/*
 * Vállalati egészségbiztosítások landing — vm-megoldasok.css
 * Scope: oldal .vb-page jelenlétében (medicare-vallalati-egeszsegbiztositasok).
 */

/* ========================= FULL-BLEED CONTENT WRAP ========================= */
body.subpage-fallback-t1:has(.vb-page) #fallbackSecBody > .wrap,
body.subpage-fallback-t2:has(.vb-page) #fallbackSecBody > .wrap,
body.subpage-fallback-t3:has(.vb-page) #fallbackSecBody > .wrap,
body:has(.vb-page) .composed-page-main > .composed-full-bleed > .wrap,
body:has(.vb-page) .composed-page-main .composed-full-bleed #fallbackSecBody > .wrap {
  max-width: none !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
body.subpage-fallback-t1:has(.vb-page) #fallbackSecBody,
body.subpage-fallback-t2:has(.vb-page) #fallbackSecBody,
body.subpage-fallback-t3:has(.vb-page) #fallbackSecBody {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Landing typography (ne törje a site headert) */
.wp-import-content:has(.vb-page),
.wp-import-content:has(.vb-page) .vb-page,
.wp-import-content:has(.vb-page) .vb-page * {
  font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}
.wp-import-content:has(.vb-page) {
  --brand: #4A8EA6;
  --brand-dark: #3A7A94;
  --brand-light: #6BB3CC;
  --brand-pale: #E8F4F8;
  --brand-ice: #F2F8FA;
  --navy: #1E3A50;
  --navy-deep: #142536;
  --bg: #EDF1F5;
  --bg-warm: #F5F7FA;
  --white: #FFFFFF;
  --text: #2C3E50;
  --text-mid: #5A6B7D;
  --text-soft: #8A99A8;
  --border: #DBE2EA;
  --border-soft: #E8ECF0;
  --accent: #E8B14C;
  --accent-pale: #FBF3DF;
  --coral: #E58A78;
  --coral-pale: #FBE7E1;
  --gold: #C9A24B;
  --gold-pale: #F6EBC9;
  --shadow-sm: 0 2px 8px rgba(30,58,80,0.06);
  --shadow-md: 0 6px 24px rgba(30,58,80,0.10);
  --shadow-lg: 0 14px 44px rgba(30,58,80,0.14);
  color: var(--text);
  background: var(--bg-warm);
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  text-wrap: pretty;
}
.wp-import-content:has(.vb-page) a { color: inherit; text-decoration: none; }
.wp-import-content:has(.vb-page) button { font-family: inherit; cursor: pointer; }
.wp-import-content:has(.vb-page) input,
.wp-import-content:has(.vb-page) select,
.wp-import-content:has(.vb-page) textarea { font-family: inherit; }

/* quote form embed */
.vb-page .form-card .wf-dyn { width: 100%; }
.vb-page .form-card .wf-dyn__form { display: grid; gap: 14px; }
.vb-page .vb-quote-fallback { margin: 0; }


  .vb-page .wrap,
  .wp-import-content .vb-page .wrap {
    width: 100% !important;
    max-width: min(var(--layout-max, 1680px), calc(100% - 2 * var(--layout-pad-x, clamp(14px, 4vw, 48px)))) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    /* mc-layout-unified .wrap { padding-bottom: 50px } felülírása — ne legyen hatalmas rés a szekciók között */
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    padding-left: var(--layout-pad-x, clamp(14px, 4vw, 48px)) !important;
    padding-right: var(--layout-pad-x, clamp(14px, 4vw, 48px)) !important;
    box-sizing: border-box;
  }


  /* ========================= INTRO (under standard pr-hero) ========================= */
  .vb-intro {
    padding: 20px 0 8px;
  }
  .vb-intro__lead {
    font-size: 15px;
    line-height: 1.65;
    color: var(--text-mid);
    max-width: none;
    width: 100%;
    margin: 0 0 10px;
  }
  .vb-intro__lead--soft {
    color: var(--text-mid);
  }
  .vb-intro__lead strong {
    color: var(--navy);
    font-weight: 700;
  }

  /* ========================= SUBNAV ========================= */
  .vb-subnav {
    padding: 20px 0 12px;
  }
  .vb-subnav__hd {
    display: grid;
    grid-template-columns: 1fr;
    gap: 14px;
    align-items: end;
    margin-bottom: 14px;
  }
  .vb-subnav__hd:has(> :nth-child(2)) {
    grid-template-columns: minmax(0,1.3fr) minmax(0,1fr);
    gap: 28px;
  }
  @media (max-width: 900px) {
    .vb-subnav__hd,
    .vb-subnav__hd:has(> :nth-child(2)) { grid-template-columns: 1fr; gap: 14px; align-items: start; }
  }
  .vb-subnav__hd h2 {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: clamp(22px, 2.6vw, 30px);
    line-height: 1.18;
    letter-spacing: -0.015em;
    color: var(--navy);
  }
  .vb-subnav__hd h2 em { font-style: normal; font-weight: 800; color: var(--brand); }
  .vb-subnav__sub {
    font-size: 15px; line-height: 1.7;
    color: var(--text-mid);
    max-width: 460px;
    align-self: end;
  }

  .subnav-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 12px;
  }
  @media (max-width: 1200px) { .subnav-grid { grid-template-columns: repeat(4, 1fr); } }
  @media (max-width: 900px) { .subnav-grid { grid-template-columns: repeat(3, 1fr); } }
  @media (max-width: 640px) { .subnav-grid { grid-template-columns: repeat(2, 1fr); } }

  .subnav-card {
    position: relative;
    border: none;
    border-radius: 18px;
    min-height: 180px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 0;
    overflow: hidden;
    isolation: isolate;
    cursor: pointer;
    background-color: var(--navy);
    transition: transform .35s cubic-bezier(.2,.7,.2,1), box-shadow .35s ease;
    box-shadow: var(--shadow-sm);
  }
  .subnav-card__img {
    position: absolute; inset: 0;
    background-size: cover;
    background-position: center;
    transition: transform .6s cubic-bezier(.2,.7,.2,1);
    z-index: -2;
  }
  .subnav-card::before {
    content: '';
    position: absolute; inset: 0;
    background: linear-gradient(180deg, rgba(20,37,54,0) 0%, rgba(28,66,99,0) 38%, rgba(28,80,110,0.55) 70%, rgba(20,55,82,0.92) 100%);
    z-index: -1;
    transition: background .35s ease;
  }
  .subnav-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow-lg);
  }
  .subnav-card:hover .subnav-card__img {
    transform: scale(1.08);
  }
  .subnav-card:hover::before {
    background: linear-gradient(180deg, rgba(20,37,54,0) 0%, rgba(36,140,153,0.12) 38%, rgba(36,120,140,0.6) 70%, rgba(20,55,82,0.95) 100%);
  }
  .subnav-card__label {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 14px;
    line-height: 1.2;
    color: #fff;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    padding: 18px 18px 18px;
    text-shadow: 0 1px 8px rgba(0,0,0,0.4);
  }
  .subnav-card__arr {
    position: absolute;
    top: 16px; right: 16px;
    width: 34px; height: 34px;
    border-radius: 50%;
    background: rgba(255,255,255,0.18);
    backdrop-filter: blur(6px);
    border: 1px solid rgba(255,255,255,0.28);
    color: #fff;
    display: flex; align-items: center; justify-content: center;
    transition: all .3s ease;
  }
  .subnav-card__arr svg { width: 13px; height: 13px; }
  .subnav-card:hover .subnav-card__arr {
    background: #fff;
    color: var(--brand-dark);
    transform: rotate(-45deg);
  }

  /* First card uses the same treatment as the others */
  .subnav-card__pin {
    display: none;
  }

  /* ========================= WHY MEDICARE ========================= */
  .vb-why {
    padding: 20px 0 12px;
  }
  .why-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
  }
  @media (max-width: 1100px) { .why-grid { grid-template-columns: repeat(2, 1fr); } }
  @media (max-width: 560px) { .why-grid { grid-template-columns: 1fr; } }

  .why-card {
    position: relative;
    background: #fff;
    border: 1px solid var(--border-soft);
    border-radius: 18px;
    padding: 24px 24px 22px;
    transition: all .3s ease;
    overflow: hidden;
    display: flex; flex-direction: column;
    min-height: 160px;
  }
  .why-card:hover {
    transform: translateY(-3px);
    border-color: var(--brand-light);
    box-shadow: var(--shadow-md);
  }
  .why-card__icon {
    width: 40px; height: 40px;
    border-radius: 11px;
    background: var(--brand-pale);
    color: var(--brand-dark);
    display: flex; align-items: center; justify-content: center;
    margin-bottom: 16px;
    transition: all .3s ease;
  }
  .why-card:hover .why-card__icon {
    background: var(--brand); color: #fff;
    transform: scale(1.06);
  }
  .why-card__icon svg { width: 20px; height: 20px; }
  .why-card h4 {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 14px;
    line-height: 1.35;
    color: var(--navy);
    margin: 0;
    letter-spacing: -0.005em;
  }
  .why-card p {
    font-size: 13px;
    line-height: 1.55;
    color: var(--text-mid);
  }

  /* Spotlight card — full row */
  .why-spot {
    margin-top: 16px;
    background-color: #19324a;
    background-image:
      radial-gradient(circle at 85% 30%, rgba(107,179,204,0.32), transparent 55%),
      linear-gradient(135deg, var(--navy-deep) 0%, var(--navy) 60%, #2A5A75 100%);
    color: #fff;
    border-radius: 20px;
    padding: 20px clamp(16px, 3vw, 28px);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 16px 28px;
    border: 1px solid rgba(255,255,255,0.08);
    text-align: left;
  }
  .why-spot__txt {
    flex: 1 1 280px;
    min-width: 0;
    max-width: none;
    margin: 0;
    text-align: left;
  }
  .why-spot__txt h3 {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: clamp(20px, 2.2vw, 26px);
    line-height: 1.2;
    letter-spacing: -0.015em;
    margin: 0 0 8px;
    color: #fff;
  }
  .why-spot__txt h3 em { font-style: normal; font-weight: 800; color: var(--brand-light); }
  .why-spot__txt p {
    font-size: 15px;
    line-height: 1.6;
    color: rgba(255,255,255,0.85);
    margin: 0;
  }
  .why-spot__cta {
    display: flex; flex-wrap: wrap;
    gap: 10px;
    margin-top: 0;
    justify-content: flex-end;
    flex: 0 1 auto;
  }
  .why-spot__mini {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
  }
  .why-spot__mini-item {
    padding: 16px 18px;
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(255,255,255,0.14);
    border-radius: 14px;
    backdrop-filter: blur(8px);
  }
  .why-spot__mini-item strong {
    display: block;
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 22px;
    color: #fff;
    line-height: 1;
    margin-bottom: 6px;
    letter-spacing: -0.01em;
  }
  .why-spot__mini-item strong em { color: var(--brand-light); font-style: normal; font-weight: 500; }
  .why-spot__mini-item span {
    font-size: 12px;
    font-weight: 600;
    color: rgba(255,255,255,0.72);
    letter-spacing: 0.2px;
  }

  /* ========================= TIERED PACKAGES ========================= */
  .vb-tiers {
    padding: 20px 0 12px;
  }
  .tier-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
  }
  @media (max-width: 1100px) { .tier-grid { grid-template-columns: repeat(2, 1fr); } }
  @media (max-width: 560px) { .tier-grid { grid-template-columns: 1fr; } }

  .tier {
    position: relative;
    background: #fff;
    border: 1px solid var(--border-soft);
    border-radius: 22px;
    overflow: hidden;
    transition: all .35s cubic-bezier(.2,.7,.2,1);
    display: flex; flex-direction: column;
    isolation: isolate;
  }
  .tier:hover {
    transform: translateY(-6px);
    box-shadow: var(--shadow-lg);
  }
  .tier__head {
    position: relative;
    height: 160px;
    background-size: cover;
    background-position: center;
    background-color: var(--brand-pale);
    overflow: hidden;
    display: flex; align-items: center; justify-content: center;
  }
  .tier__head::before {
    content: '';
    position: absolute; inset: 0;
    background: linear-gradient(180deg, rgba(20,37,54,0.05) 0%, rgba(20,37,54,0.3) 100%);
  }
  .tier__head-band {
    position: absolute;
    left: 0; right: 0;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255,255,255,0.92);
    padding: 14px 16px;
    backdrop-filter: blur(6px);
    text-align: center;
  }
  .tier__name {
    font-family: 'Poppins', sans-serif;
    font-weight: 800;
    font-size: 24px;
    letter-spacing: 0.04em;
    color: var(--navy);
    line-height: 1;
    text-transform: uppercase;
  }
  .tier__name span { color: var(--brand); font-weight: 600; font-style: normal; }

  .tier__tagline {
    display: inline-block;
    margin: 18px 22px 0;
    padding: 4px 12px;
    background: var(--brand-pale);
    color: var(--brand-dark);
    border-radius: 999px;
    font-size: 10.5px;
    font-weight: 800;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    width: fit-content;
  }
  .tier__body {
    padding: 16px 22px 22px;
    display: flex; flex-direction: column;
    flex: 1;
  }
  .tier__feats {
    list-style: none;
    margin: 0; padding: 0;
    display: flex; flex-direction: column;
    gap: 10px;
    flex: 1;
  }
  .tier__feats li {
    position: relative;
    padding-left: 24px;
    font-size: 13.5px;
    line-height: 1.5;
    color: var(--navy);
    font-weight: 500;
  }
  .tier__feats li::before {
    content: '';
    position: absolute;
    left: 0; top: 7px;
    width: 14px; height: 14px;
    border-radius: 50%;
    background-color: var(--brand);
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>");
    background-size: 9px 9px;
    background-repeat: no-repeat;
    background-position: center;
  }

  /* Tier color variants */
  .tier--coral .tier__head-band { background: rgba(229,138,120,0.88); }
  .tier--coral .tier__name { color: #fff; }
  .tier--coral .tier__name span { color: rgba(255,255,255,0.85); }
  .tier--coral .tier__tagline { background: var(--coral-pale); color: #a44a39; }

  .tier--white .tier__head-band { background: rgba(255,255,255,0.92); }
  .tier--white .tier__name { color: var(--brand); }
  .tier--white .tier__tagline { background: var(--brand-pale); color: var(--brand-dark); }

  .tier--blue .tier__head-band { background: rgba(74,142,166,0.92); }
  .tier--blue .tier__name { color: #fff; }
  .tier--blue .tier__name span { color: var(--brand-light); }
  .tier--blue .tier__tagline { background: var(--brand-pale); color: var(--brand-dark); }

  .tier--gold .tier__head-band { background: rgba(201,162,75,0.92); }
  .tier--gold .tier__name { color: #fff; }
  .tier--gold .tier__name span { color: #fdf5d3; }
  .tier--gold .tier__tagline { background: var(--gold-pale); color: #7c5e1f; }
  .tier--gold {
    border-color: rgba(201,162,75,0.5);
  }
  .tier--gold::before {
    content: 'Legteljesebb';
    position: absolute;
    top: 14px; right: 14px;
    z-index: 2;
    padding: 5px 10px;
    background: linear-gradient(135deg, var(--gold) 0%, #b18e36 100%);
    color: #fff;
    border-radius: 999px;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.6px;
    text-transform: uppercase;
    box-shadow: 0 6px 18px rgba(201,162,75,0.4);
  }

  /* ========================= ADDONS (3-up) ========================= */
  .vb-addons {
    padding: 16px 0 12px;
  }
  .addon-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
  }
  @media (max-width: 980px) { .addon-grid { grid-template-columns: 1fr; } }

  .addon {
    background: #fff;
    border: 1px solid var(--border-soft);
    border-radius: 22px;
    overflow: hidden;
    transition: all .35s cubic-bezier(.2,.7,.2,1);
    display: flex; flex-direction: column;
  }
  .addon:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-md);
    border-color: var(--brand-light);
  }
  .addon__head {
    position: relative;
    height: 180px;
    background-size: cover;
    background-position: center;
    overflow: hidden;
  }
  .addon__head::after {
    content: '';
    position: absolute; inset: 0;
    background: linear-gradient(180deg, rgba(20,37,54,0.1) 0%, rgba(20,37,54,0.55) 100%);
  }
  .addon__name {
    position: absolute;
    left: 0; right: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1;
    background: rgba(255,255,255,0.92);
    padding: 12px 16px;
    text-align: center;
    backdrop-filter: blur(6px);
    font-family: 'Poppins', sans-serif;
    font-weight: 800;
    font-size: 20px;
    letter-spacing: 0.04em;
    color: var(--navy);
    line-height: 1;
    text-transform: uppercase;
  }
  .addon__body {
    padding: 22px 24px 22px;
  }
  .addon__feats {
    list-style: none;
    display: flex; flex-direction: column;
    gap: 12px;
  }
  .addon__feats li {
    position: relative;
    padding-left: 24px;
    font-size: 13.5px;
    line-height: 1.55;
    color: var(--text-mid);
  }
  .addon__feats li::before {
    content: '';
    position: absolute;
    left: 0; top: 6px;
    width: 14px; height: 14px;
    border-radius: 50%;
    background: var(--brand-pale);
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234A8EA6' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>");
    background-size: 9px 9px;
    background-repeat: no-repeat;
    background-position: center;
  }
  .addon__feats li strong { color: var(--navy); font-weight: 600; }

  /* tinted variants on the band */
  .addon--kp .addon__name { background: rgba(74,142,166,0.92); color: #fff; }
  .addon--em .addon__name { background: rgba(229,138,120,0.92); color: #fff; }
  .addon--uc .addon__name { background: rgba(255,255,255,0.92); color: var(--navy); }
  .addon--wd .addon__name { background: rgba(255,255,255,0.92); color: var(--brand); }
  .addon--ft .addon__name { background: rgba(74,142,166,0.92); color: #fff; }
  .addon--onc .addon__name { background: rgba(201,162,75,0.92); color: #fff; }

  /* ========================= FORM ========================= */
  .vb-form {
    padding: 16px 0 24px;
  }
  .form-card {
    background: #fff;
    border: 1px solid var(--border-soft);
    border-radius: 28px;
    padding: clamp(20px, 3vw, 32px);
    box-shadow: var(--shadow-sm);
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr);
    gap: 28px;
    align-items: start;
  }
  @media (max-width: 980px) {
    .form-card { grid-template-columns: 1fr; gap: 20px; }
  }
  .form-card__intro {
    position: sticky; top: 32px;
  }
  @media (max-width: 980px) { .form-card__intro { position: static; } }
    .form-card__intro h2 {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: clamp(22px, 2.4vw, 30px);
    line-height: 1.18;
    letter-spacing: -0.015em;
    color: var(--navy);
    margin-bottom: 14px;
  }
  .form-card__intro h2 em { font-style: normal; font-weight: 800; color: var(--brand); }
  .form-card__intro p {
    font-size: 14.5px;
    line-height: 1.7;
    color: var(--text-mid);
    margin-bottom: 16px;
  }
  .form-card__intro p strong { color: var(--navy); font-weight: 600; }
  .form-card__extra {
    margin-top: 14px;
    font-size: 13px;
    line-height: 1.55;
    color: var(--text-mid);
  }
  .form-card__intro .note {
    margin-top: 22px;
    padding: 16px 18px;
    background: var(--brand-pale);
    border-left: 3px solid var(--brand);
    border-radius: 0 12px 12px 0;
    font-size: 13px;
    line-height: 1.6;
    color: var(--navy);
  }
  .form-card__intro .note b { color: var(--brand-dark); }

  .quote-form {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
  }
  @media (max-width: 700px) { .quote-form { grid-template-columns: 1fr; } }
  .qf-field {
    display: flex; flex-direction: column;
    gap: 6px;
  }
  .qf-field--full { grid-column: 1 / -1; }
  .qf-field label {
    font-size: 12px;
    font-weight: 700;
    color: var(--navy);
    letter-spacing: 0.2px;
  }
  .qf-field label .req { color: var(--coral); margin-left: 2px; }
  .qf-field input,
  .qf-field select,
  .qf-field textarea {
    padding: 13px 16px;
    background-color: var(--bg-warm);
    border: 1px solid var(--border-soft);
    border-radius: 12px;
    font-size: 14px;
    color: var(--text);
    transition: all .2s ease;
  }
  .qf-field input:hover,
  .qf-field select:hover,
  .qf-field textarea:hover { border-color: var(--brand-light); }
  .qf-field input:focus,
  .qf-field select:focus,
  .qf-field textarea:focus {
    outline: none;
    border-color: var(--brand);
    background-color: #fff;
    box-shadow: 0 0 0 4px rgba(74,142,166,0.12);
  }
  .qf-field textarea {
    min-height: 110px;
    resize: vertical;
    font-family: inherit;
  }
  .qf-submit {
    grid-column: 1 / -1;
    margin-top: 6px;
    display: flex; flex-wrap: wrap;
    gap: 14px;
    align-items: center;
    justify-content: space-between;
  }
  .btn-primary, .btn-ghost {
    display: inline-flex; align-items: center; justify-content: center; gap: 10px;
    padding: 16px 28px;
    border: none; border-radius: 999px;
    font-size: 13.5px; font-weight: 700;
    letter-spacing: 0.3px;
    transition: all .25s ease;
    cursor: pointer;
  }
  .btn-primary {
    background: linear-gradient(135deg, var(--navy) 0%, var(--navy-deep) 100%);
    color: #fff;
    box-shadow: 0 10px 26px rgba(30,58,80,0.25);
  }
  .btn-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 36px rgba(30,58,80,0.32);
  }
  .btn-primary svg { transition: transform .25s ease; }
  .btn-primary:hover svg { transform: translateX(4px); }
  .btn-light {
    background: linear-gradient(135deg, #fff 0%, #e8f4f8 100%);
    color: var(--navy);
    box-shadow: 0 10px 30px rgba(0,0,0,0.25);
  }
  .btn-light:hover {
    transform: translateY(-2px);
    box-shadow: 0 16px 40px rgba(107,179,204,0.4);
  }
  .btn-ghost {
    background: rgba(255,255,255,0.06);
    color: #fff;
    border: 1px solid rgba(255,255,255,0.22);
  }
  .btn-ghost:hover {
    background: rgba(255,255,255,0.12);
    border-color: rgba(255,255,255,0.4);
    transform: translateY(-2px);
  }
  .qf-disclaimer {
    font-size: 11.5px;
    color: var(--text-soft);
    line-height: 1.55;
    max-width: 320px;
  }

  /* ========================= CTA BAND ========================= */
  .vb-cta {
    padding: 12px 0 24px;
  }
  .cta-band {
    position: relative;
    background-color: var(--navy);
    background-image:
      radial-gradient(circle at 80% 30%, rgba(107,179,204,0.35), transparent 55%),
      radial-gradient(circle at 20% 70%, rgba(74,142,166,0.22), transparent 55%),
      linear-gradient(135deg, var(--navy-deep) 0%, var(--navy) 50%, #2A5A75 100%);
    border-radius: 24px;
    padding: 18px clamp(16px, 3vw, 28px);
    color: #fff;
    overflow: hidden;
    isolation: isolate;
    margin: 0;
  }
  .cta-band::before {
    content: '';
    position: absolute; inset: -1px;
    border-radius: inherit;
    border: 1px solid rgba(255,255,255,0.08);
    pointer-events: none; z-index: -1;
  }
  .cta-band__inner {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 16px 28px;
    text-align: left;
  }
  .cta-band__copy {
    flex: 1 1 280px;
    min-width: 0;
    max-width: none;
    text-align: left;
  }
  .cta-band h2 {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: clamp(20px, 2.4vw, 28px);
    line-height: 1.15;
    letter-spacing: -0.015em;
    margin: 0 0 6px;
    color: #fff !important;
  }
  .cta-band h2 em { font-style: normal; font-weight: 800; color: var(--brand-light) !important; }
  .cta-band p {
    font-size: 15px; line-height: 1.65;
    color: rgba(255,255,255,0.85) !important;
    max-width: none;
    margin: 0;
  }
  .cta-band__actions {
    display: flex; flex-wrap: wrap; gap: 10px;
    justify-content: flex-end;
    flex: 0 1 auto;
  }

  /* ========================= REVEAL ========================= */
  /* CSS fallback only when JS hasn't taken over — see <html class="no-js"> */
  .no-js .reveal {
    opacity: 0; transform: translateY(24px);
    transition: opacity .8s cubic-bezier(.2,.7,.2,1), transform .8s cubic-bezier(.2,.7,.2,1);
  }
  .no-js .reveal.is-visible { opacity: 1; transform: translateY(0); }

  @media (max-width: 760px) {
    .vb-subnav { padding: 16px 0 10px; }
    .vb-why { padding: 16px 0 10px; }
    .vb-tiers { padding: 16px 0 10px; }
    .vb-addons { padding: 16px 0 16px; }
    .vb-form { padding: 16px 0 32px; }
    .vb-cta { padding: 4px 0 20px; }
    .cta-band { padding: 16px 18px; }
    .why-spot,
    .cta-band__inner {
      flex-direction: column;
      align-items: flex-start;
    }
    .why-spot__cta,
    .cta-band__actions {
      justify-content: flex-start;
      width: 100%;
    }
  }

/*
 * composed-page tpl-prose a/strong !important felülírása:
 * sötét fotó/sáv háttereken a szöveg legyen fehér, ne brand-dark / navy.
 */
body.subpage-fallback-t1 .tpl-section--white .tpl-prose a.subnav-card,
body.subpage-fallback-t2 .tpl-section--white .tpl-prose a.subnav-card,
body.subpage-fallback-t3 .tpl-section--white .tpl-prose a.subnav-card,
body.subpage-fallback-t1 .tpl-section--white .tpl-prose a.subnav-card :is(.subnav-card__label, .subnav-card__arr, span, div, svg),
body.subpage-fallback-t2 .tpl-section--white .tpl-prose a.subnav-card :is(.subnav-card__label, .subnav-card__arr, span, div, svg),
body.subpage-fallback-t3 .tpl-section--white .tpl-prose a.subnav-card :is(.subnav-card__label, .subnav-card__arr, span, div, svg),
.wp-import-content a.subnav-card,
.wp-import-content a.subnav-card .subnav-card__label,
.wp-import-content a.subnav-card .subnav-card__arr {
  color: #fff !important;
  text-decoration: none !important;
  font-weight: 700;
}

body.subpage-fallback-t1 .tpl-section--white .tpl-prose a.subnav-card:hover .subnav-card__arr,
body.subpage-fallback-t2 .tpl-section--white .tpl-prose a.subnav-card:hover .subnav-card__arr,
body.subpage-fallback-t3 .tpl-section--white .tpl-prose a.subnav-card:hover .subnav-card__arr,
.wp-import-content a.subnav-card:hover .subnav-card__arr {
  color: var(--brand-dark, #3a7a94) !important;
}

/* Vállalatoknak badge — navy + fehér, mint a többi oldalon */
body.subpage-fallback-t1 .tpl-section--white .tpl-prose .section-hd__eyebrow,
body.subpage-fallback-t2 .tpl-section--white .tpl-prose .section-hd__eyebrow,
body.subpage-fallback-t3 .tpl-section--white .tpl-prose .section-hd__eyebrow,
.wp-import-content .section-hd__eyebrow {
  color: #fff !important;
}
body.subpage-fallback-t1 .tpl-section--white .tpl-prose .section-hd__eyebrow span,
body.subpage-fallback-t2 .tpl-section--white .tpl-prose .section-hd__eyebrow span,
body.subpage-fallback-t3 .tpl-section--white .tpl-prose .section-hd__eyebrow span,
.wp-import-content .section-hd__eyebrow span {
  color: #fff !important;
  background: var(--navy, #1e3a50) !important;
}

/* Hero / why-spot / CTA sötét sávok — composed tpl-prose navy/text !important felülírása */
body.subpage-fallback-t1 .tpl-section--white .tpl-prose .why-spot,
body.subpage-fallback-t2 .tpl-section--white .tpl-prose .why-spot,
body.subpage-fallback-t3 .tpl-section--white .tpl-prose .why-spot,
body.subpage-fallback-t1 .tpl-section--white .tpl-prose .why-spot :is(h1, h2, h3, h4, p, li, span, div, strong, b, em, a, label),
body.subpage-fallback-t2 .tpl-section--white .tpl-prose .why-spot :is(h1, h2, h3, h4, p, li, span, div, strong, b, em, a, label),
body.subpage-fallback-t3 .tpl-section--white .tpl-prose .why-spot :is(h1, h2, h3, h4, p, li, span, div, strong, b, em, a, label),
body.subpage-fallback-t1 .tpl-section--white .tpl-prose .vb-hero :is(h1, h2, p, span, div, strong, b, em, a, label),
body.subpage-fallback-t2 .tpl-section--white .tpl-prose .vb-hero :is(h1, h2, p, span, div, strong, b, em, a, label),
body.subpage-fallback-t3 .tpl-section--white .tpl-prose .vb-hero :is(h1, h2, p, span, div, strong, b, em, a, label),
body.subpage-fallback-t1 .tpl-section--white .tpl-prose .cta-band :is(h2, p, span, div, strong, b, em, a, label),
body.subpage-fallback-t2 .tpl-section--white .tpl-prose .cta-band :is(h2, p, span, div, strong, b, em, a, label),
body.subpage-fallback-t3 .tpl-section--white .tpl-prose .cta-band :is(h2, p, span, div, strong, b, em, a, label),
.wp-import-content .why-spot,
.wp-import-content .why-spot :is(h3, p, span, div, strong, b, a),
.wp-import-content .vb-hero :is(h1, .vb-hero__lead, .vb-hero__eyebrow, .vb-crumb, .vb-crumb a, .vb-crumb span, strong),
.wp-import-content .vb-hero__side-card :is(strong, span),
.wp-import-content .cta-band :is(h2, p, a) {
  color: #fff !important;
}
.wp-import-content .vb-hero h1 em,
.wp-import-content .why-spot__txt h3 em,
.wp-import-content .cta-band h2 em,
.wp-import-content .vb-hero__side-card strong em,
.wp-import-content .why-spot__mini-item strong em {
  color: var(--brand-light, #6bb3cc) !important;
}
.wp-import-content .why-spot__mini-item strong {
  color: #fff !important;
}
.wp-import-content .vb-hero__lead,
.wp-import-content .vb-hero__side-card span,
.wp-import-content .why-spot__txt p,
.wp-import-content .why-spot__mini-item span,
.wp-import-content .cta-band p,
.wp-import-content .vb-crumb,
.wp-import-content .vb-crumb a {
  color: rgba(255, 255, 255, 0.85) !important;
}
.wp-import-content .vb-crumb span:last-child,
.wp-import-content .vb-hero__lead strong,
.wp-import-content .vb-hero__eyebrow,
.wp-import-content .why-spot__txt h3,
.wp-import-content .cta-band h2 {
  color: #fff !important;
}
/* Fehér CTA gomb: sötét szöveg a fehér háttéren */
body.subpage-fallback-t1 .tpl-section--white .tpl-prose .why-spot a.btn-light,
body.subpage-fallback-t2 .tpl-section--white .tpl-prose .why-spot a.btn-light,
body.subpage-fallback-t3 .tpl-section--white .tpl-prose .why-spot a.btn-light,
body.subpage-fallback-t1 .tpl-section--white .tpl-prose .vb-hero a.btn-light,
body.subpage-fallback-t2 .tpl-section--white .tpl-prose .vb-hero a.btn-light,
body.subpage-fallback-t3 .tpl-section--white .tpl-prose .vb-hero a.btn-light,
body.subpage-fallback-t1 .tpl-section--white .tpl-prose .cta-band a.btn-light,
body.subpage-fallback-t2 .tpl-section--white .tpl-prose .cta-band a.btn-light,
body.subpage-fallback-t3 .tpl-section--white .tpl-prose .cta-band a.btn-light,
.wp-import-content .why-spot a.btn-light,
.wp-import-content .vb-hero a.btn-light,
.wp-import-content .cta-band a.btn-light {
  color: var(--brand-dark, #3a7a94) !important;
}

/* Tier / addon névsávok — fehér a színes sávokon */
.wp-import-content .tier--coral .tier__name,
.wp-import-content .tier--coral .tier__name span,
.wp-import-content .tier--blue .tier__name,
.wp-import-content .tier--gold .tier__name,
.wp-import-content .addon--kp .addon__name,
.wp-import-content .addon--em .addon__name,
.wp-import-content .addon--ft .addon__name,
.wp-import-content .addon--onc .addon__name {
  color: #fff !important;
}
.wp-import-content .tier--blue .tier__name span {
  color: var(--brand-light, #6bb3cc) !important;
}
.wp-import-content .tier--gold .tier__name span {
  color: #fdf5d3 !important;
}

/* Ghost gombok sötét háttéren */
body.subpage-fallback-t1 .tpl-section--white .tpl-prose .vb-hero a.btn-ghost,
body.subpage-fallback-t2 .tpl-section--white .tpl-prose .vb-hero a.btn-ghost,
body.subpage-fallback-t3 .tpl-section--white .tpl-prose .vb-hero a.btn-ghost,
body.subpage-fallback-t1 .tpl-section--white .tpl-prose .why-spot a.btn-ghost,
body.subpage-fallback-t2 .tpl-section--white .tpl-prose .why-spot a.btn-ghost,
body.subpage-fallback-t3 .tpl-section--white .tpl-prose .why-spot a.btn-ghost,
body.subpage-fallback-t1 .tpl-section--white .tpl-prose .cta-band a.btn-ghost,
body.subpage-fallback-t2 .tpl-section--white .tpl-prose .cta-band a.btn-ghost,
body.subpage-fallback-t3 .tpl-section--white .tpl-prose .cta-band a.btn-ghost,
.wp-import-content .vb-hero a.btn-ghost,
.wp-import-content .why-spot a.btn-ghost,
.wp-import-content .cta-band a.btn-ghost {
  color: #fff !important;
  border-color: rgba(255, 255, 255, 0.55) !important;
}
