
    /* ─── TOKENS ──────────────────────────────────────────── */
    :root {
      --cream:        #F7F2EB;
      --ivory:        #FDFAF6;
      --dark:     #2A2620;
      --dark-60:  rgba(42,38,32,0.72);
      --dark-30:  rgba(42,38,32,0.46);
      --dark-10:  rgba(42,38,32,0.08);
      --gold:         #B89968;
      --gold-light:   #D4B077;
      --gold-pale:    rgba(184,153,104,0.12);
      --rose:         #C49A8E;
      --highlight:    #F0E6D6;
      --mid-gray:     #8A8378;
      --gold-text:    #806844;
      --gold-deep:    #806844;
      --error:        #9a3b2e;
      --error-bg:     #fbeeec;
      --fs-h1:      clamp(2rem, 5vw, 3.25rem);
      --fs-h2:      clamp(1.5rem, 3.5vw, 2.25rem);
      --fs-h3:      clamp(1.2rem, 2.5vw, 1.5rem);
      --fs-body:    clamp(1rem, 1.05vw, 1.0625rem);
      --fs-small:   0.875rem;
      --fs-eyebrow: 0.8125rem;
      --warm-white:   #FEFCF9;

      --font-display: 'Marcellus', Georgia, serif;
      --font-sans:    'Mulish', 'Helvetica Neue', 'Helvetica', sans-serif;

      --space-xs:   0.5rem;
      --space-sm:   1rem;
      --space-md:   2rem;
      --space-lg:   4rem;
      --space-xl:   7rem;
      --space-2xl:  11rem;

      --radius-sm:  4px;
      --radius-md:  12px;

      --transition: 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    }

    /* ─── RESET ───────────────────────────────────────────── */
    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
    html { scroll-behavior: smooth; -webkit-font-smoothing: antialiased; }
    body {
      background: var(--ivory);
      color: var(--dark);
      font-family: var(--font-sans);
      font-weight: 300;
      font-size: 15px;
      line-height: 1.7;
      overflow-x: hidden;
    }
    img { display: block; max-width: 100%; }
    a { text-decoration: none; color: inherit; }
    button { border: none; background: none; cursor: pointer; font-family: inherit; }
    ul { list-style: none; }

    /* ─── TYPOGRAPHY ──────────────────────────────────────── */
    .display-xl {
      font-family: var(--font-display);
      font-size: clamp(3.2rem, 7vw, 6.5rem);
      font-weight: 400;
      line-height: 1.05;
      letter-spacing: -0.01em;
    }
    .display-lg {
      font-family: var(--font-display);
      font-size: clamp(2.4rem, 5vw, 4.2rem);
      font-weight: 400;
      line-height: 1.1;
    }
    .display-md {
      font-family: var(--font-display);
      font-size: clamp(1.8rem, 3vw, 2.8rem);
      font-weight: 400;
      line-height: 1.15;
    }
    .display-sm {
      font-family: var(--font-display);
      font-size: clamp(1.4rem, 2.2vw, 1.9rem);
      font-weight: 400;
      line-height: 1.2;
    }
    .label {
      font-family: var(--font-sans);
      font-size: 0.65rem;
      font-weight: 400;
      letter-spacing: 0.2em;
      text-transform: uppercase;
      color: var(--gold);
    }
    .body-text {
      font-size: 0.875rem;
      line-height: 1.75;
      color: var(--dark-60);
      max-width: 52ch;
    }
    em { font-style: normal; font-family: inherit; font-size: inherit; font-weight: 600; color: var(--dark); background: linear-gradient(transparent 58%, rgba(184,153,104,0.45) 58%); }
    h1 em, h2 em, h3 em, .v5-hero__accent em, .closer__essence em, .statement-band em { background: none; font-weight: inherit; color: var(--gold-deep); }
    .legal em { font-style: italic; font-family: var(--font-display); background: none; color: inherit; }
    .cta-banner em, .footer em, .v5-statstrip em { color: var(--gold-light); }

    /* ─── LAYOUT ──────────────────────────────────────────── */
    .container {
      max-width: 1260px;
      margin: 0 auto;
      padding: 0 2rem;
    }
    .section {
      padding: var(--space-xl) 0;
    }
    .section--sm {
      padding: var(--space-lg) 0;
    }
    .grid-2 {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: var(--space-lg);
      align-items: center;
    }
    .grid-3 {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: var(--space-md);
    }

    /* ─── DIVIDER ─────────────────────────────────────────── */
    .divider {
      width: 40px;
      height: 1px;
      background: var(--gold);
      margin: 1.25rem 0;
    }
    .divider--center { margin: 1.25rem auto; }

    /* ─── NAV ─────────────────────────────────────────────── */
    .nav {
      position: fixed;
      top: 0; left: 0; right: 0;
      z-index: 100;
      padding: 1.5rem 2rem;
      display: flex;
      align-items: center;
      justify-content: space-between;
      /* Világos "scrim" alapból (Heni-jelzés 2026-07-19: fotós hero fölött a sötét nav-szöveg
         beleolvadt a háttérbe). Sima krémszínű lap-tetőn (a legtöbb aloldalon) gyakorlatilag
         észrevehetetlen — világos a világoson. 3. kör: a korábbi két, elhalványuló/közepes
         próba (PR #25, #26) fotónként még mindig nem volt megbízható — most
         majdnem ugyanolyan erős, mint a bizonyítottan jól működő .nav.scrolled háttér (.95),
         hogy MINDEN fotón garantáltan olvasható legyen a szöveg, nem csak a legtöbbön. */
      background: rgba(253,250,246,.92);
      transition: background var(--transition), backdrop-filter var(--transition), padding var(--transition);
    }
    .nav.scrolled {
      background: rgba(253,250,246,0.95);
      backdrop-filter: blur(12px);
      -webkit-backdrop-filter: blur(12px);
      padding: 1rem 2rem;
      box-shadow: 0 1px 0 var(--dark-10);
    }
    .nav__logo {
      font-family: var(--font-display);
      font-size: 1.25rem;
      font-weight: 500;
      letter-spacing: 0.04em;
      color: var(--dark);
    }
    .nav__links {
      display: flex;
      gap: 2.5rem;
      align-items: center;
    }
    .nav__link {
      font-size: 0.7rem;
      font-weight: 500;
      letter-spacing: 0.15em;
      text-transform: uppercase;
      color: var(--dark-60);
      transition: color 0.2s;
    }
    .nav__link:hover { color: var(--dark); }
    .nav__cta {
      font-family: var(--font-display);
      font-size: 0.95rem;
      font-weight: 400;
      letter-spacing: 0.02em;
      text-transform: none;
      padding: 0.75rem 1.75rem;
      border: 1px solid var(--dark);
      color: var(--dark);
      transition: all 0.2s;
    }
    .nav__cta:hover {
      background: var(--dark);
      color: var(--ivory);
    }

    /* ─── HERO ────────────────────────────────────────────── */
    .hero {
      min-height: 100svh;
      display: grid;
      grid-template-columns: 1fr 1fr;
      position: relative;
      overflow: hidden;
    }
    .hero__content {
      display: flex;
      flex-direction: column;
      justify-content: flex-end;
      padding: 0 2rem var(--space-xl) 2rem;
      padding-left: max(2rem, calc((100vw - 1260px)/2 + 2rem));
      position: relative;
      z-index: 2;
    }
    .hero__eyebrow {
      display: flex;
      align-items: center;
      gap: 1rem;
      margin-bottom: 1.75rem;
    }
    .hero__eyebrow-line {
      width: 32px;
      height: 1px;
      background: var(--gold);
    }
    .hero__title {
      font-family: var(--font-display);
      font-size: clamp(2.0rem, 6vw, 6rem);
      font-weight: 300;
      line-height: 1.05;
      letter-spacing: -0.01em;
      margin-bottom: 2rem;
      overflow-wrap: break-word;
    }
    .hero__title strong {
      font-weight: 500;
      display: block;
    }
    .hero__subtitle {
      font-size: 0.875rem;
      line-height: 1.75;
      color: var(--dark-60);
      max-width: 44ch;
      margin-bottom: 3rem;
    }
    .hero__actions {
      display: flex;
      gap: 1.5rem;
      align-items: center;
      flex-wrap: wrap;
    }
    .hero__meta {
      position: absolute;
      right: 2.5rem;
      bottom: var(--space-xl);
      writing-mode: vertical-rl;
      text-orientation: mixed;
      transform: rotate(180deg);
      font-size: 0.6rem;
      letter-spacing: 0.2em;
      text-transform: uppercase;
      color: var(--dark-30);
    }
    .hero__image {
      position: relative;
      overflow: hidden;
      background: var(--cream);
    }
    .hero__image-inner {
      position: absolute;
      inset: 0;
      background: linear-gradient(135deg, #E8DFD0 0%, #D4C9B6 40%, #C4B9A4 100%);
    }
    .hero__image-label {
      position: absolute;
      bottom: var(--space-xl);
      left: 2.5rem;
      font-size: 0.6rem;
      letter-spacing: 0.2em;
      text-transform: uppercase;
      color: rgba(255,255,255,0.5);
    }
    /* grain overlay on hero image */
    .hero__image::after {
      content: '';
      position: absolute;
      inset: 0;
      background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");
      background-size: 200px 200px;
      pointer-events: none;
      z-index: 1;
    }
    /* floating pill */
    .hero__pill {
      position: absolute;
      top: 30%;
      left: -1.5rem;
      z-index: 3;
      background: var(--ivory);
      border: 1px solid var(--dark-10);
      padding: 1.25rem 1.5rem;
      max-width: 220px;
      box-shadow: 0 20px 60px rgba(0,0,0,0.08);
    }
    .hero__pill-label { font-size: 0.6rem; letter-spacing: 0.18em; text-transform: uppercase; color: var(--gold); margin-bottom: 0.4rem; }
    .hero__pill-text { font-family: var(--font-display); font-size: 1rem; line-height: 1.3; }

    /* ─── BUTTONS ─────────────────────────────────────────── */
    .btn-primary {
      display: inline-flex;
      align-items: center;
      gap: 0.75rem;
      padding: 1rem 2.25rem;
      background: var(--dark);
      color: var(--ivory);
      font-family: var(--font-sans);
      font-family: var(--font-display);
      font-size: 0.95rem;
      font-weight: 400;
      letter-spacing: 0.02em;
      text-transform: none;
      transition: background var(--transition);
    }
    .btn-primary:hover { background: #2e2a26; }
    .btn-primary svg { flex-shrink: 0; }
    .btn-ghost {
      display: inline-flex;
      align-items: center;
      gap: 0.75rem;
      font-family: var(--font-display);
      font-size: 0.95rem;
      font-weight: 400;
      letter-spacing: 0.02em;
      text-transform: none;
      color: var(--dark-60);
      padding-bottom: 2px;
      border-bottom: 1px solid var(--dark-30);
      transition: color 0.2s, border-color 0.2s;
    }
    .btn-ghost:hover { color: var(--dark); border-color: var(--dark); }
    .btn-gold {
      display: inline-flex;
      align-items: center;
      gap: 0.75rem;
      padding: 1rem 2.25rem;
      background: var(--gold);
      color: var(--ivory);
      font-family: var(--font-display);
      font-size: 0.95rem;
      font-weight: 400;
      letter-spacing: 0.02em;
      text-transform: none;
      transition: background var(--transition);
    }
    .btn-gold:hover { background: #a0803d; }

    /* ─── INTRO STRIP ─────────────────────────────────────── */
    .intro-strip {
      background: var(--dark);
      padding: 2.5rem 0;
      overflow: hidden;
    }
    .intro-strip__inner {
      display: flex;
      gap: 4rem;
      align-items: center;
      justify-content: center;
      flex-wrap: wrap;
    }
    .intro-strip__item {
      display: flex;
      align-items: center;
      gap: 1rem;
    }
    .intro-strip__num {
      font-family: var(--font-display);
      font-size: 2rem;
      font-weight: 300;
      color: var(--gold);
      line-height: 1;
    }
    .intro-strip__label {
      font-size: 0.65rem;
      letter-spacing: 0.14em;
      text-transform: uppercase;
      color: rgba(255,255,255,0.5);
      line-height: 1.5;
    }
    .intro-strip__sep {
      width: 1px;
      height: 2.5rem;
      background: rgba(255,255,255,0.12);
    }

    /* ─── ABOUT / DIFFERENTIATOR ──────────────────────────── */
    .differentiator {
      padding: var(--space-xl) 0;
      background: var(--ivory);
    }
    .diff-table {
      display: grid;
      grid-template-columns: 1fr auto 1fr;
      gap: 0;
      margin-top: var(--space-lg);
      border: 1px solid var(--dark-10);
    }
    .diff-col {
      padding: 2.5rem;
    }
    .diff-col--center {
      padding: 2.5rem 3rem;
      background: var(--dark);
      color: var(--ivory);
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      text-align: center;
      border-left: none;
      border-right: none;
    }
    .diff-col--center .label { color: var(--gold-light); }
    .diff-col-title {
      font-family: var(--font-display);
      font-size: 1.1rem;
      font-weight: 400;
      color: var(--dark-60);
      margin-bottom: 1.5rem;
    }
    .diff-col--center .diff-col-title {
      color: rgba(255,255,255,0.5);
    }
    .diff-item {
      display: flex;
      align-items: flex-start;
      gap: 0.75rem;
      padding: 0.6rem 0;
      border-bottom: 1px solid var(--dark-10);
      font-size: 0.8rem;
      color: var(--dark-60);
    }
    .diff-item:last-child { border-bottom: none; }
    .diff-item--positive {
      color: var(--dark);
    }
    .diff-item .icon {
      width: 16px;
      height: 16px;
      flex-shrink: 0;
      margin-top: 2px;
    }
    .diff-col--center .diff-item {
      color: rgba(255,255,255,0.85);
      border-bottom-color: rgba(255,255,255,0.1);
    }
    .diff-col--center .diff-item:last-child { border-bottom: none; }

    /* Középső doboz interaktivitás */
    .diff-col--center { cursor: pointer; transition: all var(--transition); }
    .diff-col--center:hover { background: #222018; }
    .diff-center-cta { font-size: 0.62rem; font-weight: 500; letter-spacing: 0.14em; text-transform: uppercase; color: var(--gold-light); margin-top: 1.2rem; opacity: 0.6; transition: opacity 0.3s, gap 0.2s; display: inline-flex; align-items: center; gap: 0.35rem; }
    .diff-col--center:hover .diff-center-cta { opacity: 1; gap: 0.6rem; }

    /* ─── PROTOCOL MODAL ─── */
    .pm-overlay { position: fixed; inset: 0; z-index: 2000; background: rgba(10,8,6,0.72); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); display: flex; align-items: center; justify-content: center; opacity: 0; pointer-events: none; transition: opacity 0.35s ease; }
    .pm-overlay.open { opacity: 1; pointer-events: auto; }
    .pm-box { background: var(--dark); color: #fff; max-width: 760px; width: calc(100% - 3rem); max-height: 90vh; overflow-y: auto; padding: 3rem 3.5rem; position: relative; transform: scale(0.96) translateY(8px); transition: transform 0.4s cubic-bezier(0.16,1,0.3,1); }
    .pm-overlay.open .pm-box { transform: scale(1) translateY(0); }
    .pm-close { position: absolute; top: 1.2rem; right: 1.2rem; width: 36px; height: 36px; display: flex; align-items: center; justify-content: center; color: rgba(255,255,255,0.35); font-size: 1.1rem; cursor: pointer; transition: color 0.2s; border: 1px solid rgba(255,255,255,0.08); background: none; }
    .pm-close:hover { color: #fff; border-color: rgba(255,255,255,0.2); }
    .pm-label { font-family: var(--font-sans); font-size: 0.58rem; font-weight: 600; letter-spacing: 0.2em; text-transform: uppercase; color: var(--gold-light); margin-bottom: 0.5rem; }
    .pm-divider { width: 2.5rem; height: 1px; background: var(--gold); opacity: 0.4; margin-bottom: 1.2rem; }
    .pm-title { font-family: var(--font-display); font-size: clamp(1.6rem, 3vw, 2.2rem); font-weight: 300; line-height: 1.15; margin-bottom: 0.5rem; }
    .pm-desc { font-size: 0.82rem; color: rgba(255,255,255,0.45); line-height: 1.7; margin-bottom: 2rem; max-width: 48ch; }
    .pm-phases { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: rgba(255,255,255,0.06); margin-bottom: 2rem; }
    .pm-phase { background: var(--dark); padding: 1.5rem; }
    .pm-phase__num { font-family: var(--font-display); font-size: 1.6rem; color: var(--gold); opacity: 0.5; margin-bottom: 0.15rem; line-height: 1; }
    .pm-phase__name { font-family: var(--font-display); font-size: 1.1rem; font-weight: 400; margin-bottom: 0.6rem; letter-spacing: 0.02em; }
    .pm-phase__tech { font-size: 0.68rem; font-weight: 500; letter-spacing: 0.06em; color: var(--gold-light); margin-bottom: 0.5rem; }
    .pm-phase__desc { font-size: 0.75rem; color: rgba(255,255,255,0.4); line-height: 1.6; }
    .pm-footer { display: flex; align-items: center; justify-content: space-between; padding-top: 1.5rem; border-top: 1px solid rgba(255,255,255,0.06); }
    .pm-footer__text { font-size: 0.78rem; color: rgba(255,255,255,0.35); font-style: normal; font-family: var(--font-display); }
    .pm-footer__btn { display: inline-flex; align-items: center; gap: 0.5rem; padding: 0.75rem 1.6rem; border: 1px solid var(--gold); color: var(--gold-light); font-size: 0.6rem; font-weight: 500; letter-spacing: 0.15em; text-transform: uppercase; transition: all 0.2s; background: none; font-family: var(--font-sans); }
    .pm-footer__btn:hover { background: var(--gold); color: var(--dark); }

    /* ─── PROTOCOL STRIP ─────────────────────────────────── */
    .protocol-strip {
      background: var(--cream);
      padding: 1.8rem 0;
      border-top: 1px solid var(--dark-10);
    }
    .protocol-strip__inner {
      display: flex;
      align-items: center;
      gap: 1.2rem;
    }
    .protocol-strip__title {
      white-space: nowrap;
      font-size: 1.3rem;
    }
    .protocol-strip__sep {
      color: var(--dark-30);
      font-size: 0.9rem;
    }
    .protocol-strip__desc {
      font-size: 0.8rem;
      color: var(--dark-60);
      line-height: 1.5;
    }
    .protocol-strip__btn {
      margin-left: auto;
      white-space: nowrap;
      font-family: var(--font-sans);
      font-size: 0.6rem;
      font-weight: 500;
      letter-spacing: 0.14em;
      text-transform: uppercase;
      color: var(--gold);
      padding: 0.6rem 1.4rem;
      border: 1px solid var(--gold);
      transition: all 0.2s;
      flex-shrink: 0;
    }
    .protocol-strip__btn:hover {
      background: var(--gold);
      color: #fff;
    }

    /* ─── INDICATIONS ─────────────────────────────────────── */
    .indications {
      padding: var(--space-xl) 0;
    }
    .indications-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 1px;
      background: var(--dark-10);
      margin-top: var(--space-lg);
    }
    a.indication-card { text-decoration: none; color: inherit; display: block; }
    .indication-card {
      background: var(--ivory);
      padding: 2rem 1.75rem;
      transition: background var(--transition);
      cursor: pointer;
    }
    .indication-card:hover { background: var(--cream); }
    .indication-card__area {
      font-family: var(--font-display);
      font-size: 1.25rem;
      font-weight: 400;
      margin-bottom: 0.5rem;
    }
    .indication-card__combo {
      font-size: 0.68rem;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      color: var(--gold);
    }

    /* ─── TECHNOLOGY ──────────────────────────────────────── */
    .technology {
      background: var(--dark);
      padding: var(--space-xl) 0;
      color: var(--ivory);
      position: relative;
      overflow: hidden;
    }
    .technology::before {
      content: 'ULTIMA';
      position: absolute;
      right: -2rem;
      top: 50%;
      transform: translateY(-50%);
      font-family: var(--font-display);
      font-size: 20vw;
      font-weight: 300;
      color: rgba(255,255,255,0.03);
      pointer-events: none;
      white-space: nowrap;
    }
    .tech-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: var(--space-lg);
      align-items: center;
    }
    .tech-content .label { color: var(--gold-light); }
    .tech-features {
      margin-top: var(--space-md);
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 1.5rem;
    }
    .tech-feature {
      padding: 1.5rem;
      border: 1px solid rgba(255,255,255,0.08);
      transition: border-color 0.2s;
    }
    .tech-feature:hover { border-color: rgba(255,255,255,0.18); }
    .tech-feature__title {
      font-family: var(--font-display);
      font-size: 1.05rem;
      font-weight: 400;
      color: var(--ivory);
      margin-bottom: 0.4rem;
    }
    .tech-feature__desc {
      font-size: 0.775rem;
      color: rgba(255,255,255,0.45);
      line-height: 1.65;
    }
    .tech-visual {
      position: relative;
      height: 520px;
      background: rgba(255,255,255,0.04);
      border: 1px solid rgba(255,255,255,0.08);
      display: flex;
      align-items: center;
      justify-content: center;
      overflow: hidden;
    }
    .tech-visual__label {
      position: absolute;
      bottom: 1.5rem;
      left: 1.5rem;
      font-size: 0.6rem;
      letter-spacing: 0.18em;
      text-transform: uppercase;
      color: rgba(255,255,255,0.25);
    }
    /* animated rings */
    .ring {
      position: absolute;
      border-radius: 50%;
      border: 1px solid rgba(184,153,104,0.2);
      animation: pulse-ring 4s ease-in-out infinite;
    }
    .ring:nth-child(1) { width: 160px; height: 160px; animation-delay: 0s; }
    .ring:nth-child(2) { width: 260px; height: 260px; animation-delay: 0.8s; }
    .ring:nth-child(3) { width: 360px; height: 360px; animation-delay: 1.6s; }
    .ring:nth-child(4) { width: 460px; height: 460px; animation-delay: 2.4s; border-color: rgba(184,153,104,0.06); }
    @keyframes pulse-ring {
      0%, 100% { opacity: 0.4; transform: scale(1); }
      50% { opacity: 1; transform: scale(1.02); }
    }
    .ring-core {
      width: 80px; height: 80px;
      border-radius: 50%;
      background: radial-gradient(circle, rgba(184,153,104,0.4) 0%, rgba(184,153,104,0.1) 60%, transparent 100%);
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 0.58rem;
      letter-spacing: 0.18em;
      text-transform: uppercase;
      color: var(--gold-light);
      text-align: center;
      line-height: 1.4;
    }

    /* ─── PROTOCOL TREATMENTS ─────────────────────────────── */
    .treatments {
      padding: var(--space-xl) 0;
      background: var(--cream);
    }
    .treatments-header {
      display: flex;
      justify-content: space-between;
      align-items: flex-end;
      margin-bottom: var(--space-lg);
    }
    .treatments-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 1.5px;
      background: var(--dark-10);
    }
    a.treatment-card { text-decoration: none; color: inherit; display: block; }
    .treatment-card {
      background: var(--ivory);
      padding: 2.5rem 2rem;
      position: relative;
      overflow: hidden;
      transition: background var(--transition);
      cursor: default;
    }
    .treatment-card:hover { background: var(--warm-white); }
    .treatment-card:first-child {
      background: var(--dark);
      color: var(--ivory);
    }
    .treatment-card:first-child:hover { background: #1f1c19; }
    .treatment-card__badge {
      display: inline-block;
      font-size: 0.58rem;
      font-weight: 600;
      letter-spacing: 0.18em;
      text-transform: uppercase;
      padding: 0.3rem 0.75rem;
      border: 1px solid var(--dark-30);
      color: var(--dark-60);
      margin-bottom: 1.25rem;
    }
    .treatment-card:first-child .treatment-card__badge {
      border-color: rgba(255,255,255,0.2);
      color: rgba(255,255,255,0.6);
    }
    .treatment-card__title {
      font-family: var(--font-display);
      font-size: 1.5rem;
      font-weight: 400;
      margin-bottom: 0.75rem;
    }
    .treatment-card:first-child .treatment-card__title {
      font-size: 2rem;
    }
    .treatment-card__desc {
      font-size: 0.8rem;
      line-height: 1.7;
      color: var(--dark-60);
      margin-bottom: 1.5rem;
    }
    .treatment-card:first-child .treatment-card__desc {
      color: rgba(255,255,255,0.5);
    }
    .treatment-card__targets {
      display: flex;
      flex-wrap: wrap;
      gap: 0.4rem;
    }
    .treatment-card__target {
      font-size: 0.6rem;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      padding: 0.25rem 0.6rem;
      background: var(--gold-pale);
      color: var(--gold);
    }
    .treatment-card:first-child .treatment-card__target {
      background: rgba(184,153,104,0.15);
    }

    /* ─── OBSERV PROMO ──────────────────────────────────────── */
    .observ-promo-section {
      padding: var(--space-xl) 0;
      background: var(--dark);
      color: var(--ivory);
      position: relative;
      overflow: hidden;
    }
    .observ-promo-section::before {
      content: 'OBSERV';
      position: absolute;
      right: -1rem;
      top: 50%;
      transform: translateY(-50%);
      font-family: var(--font-display);
      font-size: 14vw;
      font-weight: 300;
      color: rgba(255,255,255,0.015);
      pointer-events: none;
      white-space: nowrap;
    }
    .observ-promo__grid {
      display: grid;
      grid-template-columns: 1.2fr 1fr;
      gap: 5rem;
      align-items: center;
      position: relative;
      z-index: 1;
    }
    .observ-promo__label { color: var(--gold-light); }
    .observ-promo__title {
      font-family: var(--font-display);
      font-size: clamp(2.2rem, 4vw, 3.5rem);
      font-weight: 400;
      line-height: 1.1;
      margin: 1.25rem 0 1.5rem;
    }
    .observ-promo__title em { color: var(--gold-light); }
    .observ-promo__desc {
      font-size: 0.875rem;
      font-weight: 300;
      line-height: 1.8;
      color: rgba(255,255,255,0.5);
      max-width: 48ch;
      margin-bottom: 2rem;
    }
    .observ-promo__badge {
      display: inline-flex;
      align-items: center;
      gap: 0.6rem;
      padding: 0.75rem 1.25rem;
      background: rgba(184,153,104,0.08);
      border: 1px solid rgba(184,153,104,0.2);
      margin-bottom: 2rem;
    }
    .observ-promo__badge-dot {
      width: 6px; height: 6px;
      border-radius: 50%;
      background: var(--gold);
      animation: blink 2s ease-in-out infinite;
    }
    .observ-promo__badge-text {
      font-size: 0.68rem;
      font-weight: 600;
      letter-spacing: 0.15em;
      text-transform: uppercase;
      color: var(--gold-light);
    }
    .observ-modes-mini {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 1px;
      background: rgba(255,255,255,0.06);
    }
    .observ-mode-mini {
      background: var(--dark);
      padding: 1.25rem 1.5rem;
      transition: background 0.3s;
    }
    .observ-mode-mini:hover { background: rgba(255,255,255,0.03); }
    .observ-mode-mini__title {
      font-family: var(--font-display);
      font-size: 0.95rem;
      font-weight: 500;
      color: var(--ivory);
      margin-bottom: 0.2rem;
    }
    .observ-mode-mini__desc {
      font-size: 0.7rem;
      font-weight: 300;
      color: rgba(255,255,255,0.35);
    }
    @media (max-width: 1024px) {
      .observ-promo__grid { grid-template-columns: 1fr; gap: 3rem; }
    }

    /* ─── CLINICAL PROGRAMS ───────────────────────────────── */
    .clinical {
      padding: var(--space-xl) 0;
      background: var(--ivory);
    }
    .clinical-inner {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: var(--space-lg);
      align-items: center;
    }
    .clinical-badge {
      display: inline-flex;
      align-items: center;
      gap: 0.5rem;
      font-size: 0.6rem;
      letter-spacing: 0.18em;
      text-transform: uppercase;
      color: var(--gold);
      margin-bottom: 1.5rem;
    }
    .clinical-badge::before {
      content: '';
      display: block;
      width: 6px; height: 6px;
      border-radius: 50%;
      background: var(--gold);
      animation: blink 2s ease-in-out infinite;
    }
    @keyframes blink { 0%, 100% { opacity: 1; } 50% { opacity: 0.3; } }
    .clinical-perks {
      margin-top: var(--space-md);
      display: flex;
      flex-direction: column;
      gap: 0.75rem;
    }
    .clinical-perk {
      display: flex;
      align-items: center;
      gap: 1rem;
      padding: 1rem 1.25rem;
      border: 1px solid var(--dark-10);
      font-size: 0.8rem;
    }
    .clinical-perk__num {
      font-family: var(--font-display);
      font-size: 1.2rem;
      color: var(--gold);
      min-width: 2rem;
    }
    .clinical-form {
      background: var(--cream);
      padding: 3rem;
      border: 1px solid var(--dark-10);
    }
    .clinical-form .label { margin-bottom: 1.5rem; display: block; }
    .form-group {
      margin-bottom: 1.25rem;
    }
    .form-group label {
      display: block;
      font-size: 0.65rem;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      color: var(--dark-60);
      margin-bottom: 0.4rem;
    }
    .form-group input,
    .form-group select,
    .form-group textarea {
      width: 100%;
      background: var(--ivory);
      border: 1px solid var(--dark-10);
      padding: 0.85rem 1rem;
      font-family: var(--font-sans);
      font-size: 0.825rem;
      color: var(--dark);
      outline: none;
      transition: border-color 0.2s;
      appearance: none;
    }
    .form-group input:focus,
    .form-group select:focus,
    .form-group textarea:focus {
      border-color: var(--gold);
    }
    .form-group textarea { resize: none; height: 80px; }
    .form-note {
      font-size: 0.68rem;
      color: var(--dark-30);
      margin-top: 1rem;
      text-align: center;
    }

    /* ─── TESTIMONIALS ────────────────────────────────────── */
    .testimonials {
      padding: var(--space-xl) 0;
      background: var(--cream);
    }
    .testimonials-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: var(--space-md);
      margin-top: var(--space-lg);
    }
    .testimonial-card {
      padding: 2.5rem;
      background: var(--ivory);
      border: 1px solid var(--dark-10);
      position: relative;
    }
    .testimonial-card__stars {
      color: var(--gold);
      font-size: 0.7rem;
      letter-spacing: 0.15em;
      margin-bottom: 1.25rem;
    }
    .testimonial-card__quote {
      font-family: var(--font-display);
      font-size: 1.1rem;
      font-weight: 400;
      line-height: 1.55;
      color: var(--dark);
      margin-bottom: 1.5rem;
    }
    .testimonial-card__author {
      font-size: 0.65rem;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      color: var(--dark-30);
    }
    .testimonial-card::before {
      content: '"';
      font-family: var(--font-display);
      font-size: 6rem;
      line-height: 1;
      color: var(--gold-pale);
      position: absolute;
      top: 1rem;
      right: 1.5rem;
      pointer-events: none;
    }

    /* ─── CTA BANNER ──────────────────────────────────────── */
    .cta-banner {
      padding: var(--space-xl) 0;
      background: var(--dark);
      text-align: center;
      color: var(--ivory);
      position: relative;
      overflow: hidden;
    }
    .cta-banner::before {
      content: '';
      position: absolute;
      inset: 0;
      background: radial-gradient(ellipse 60% 80% at 50% 50%, rgba(184,153,104,0.06) 0%, transparent 70%);
      pointer-events: none;
    }
    /* Finom arany fény-átvillanás a sötét záró CTA-sávon (egységes prémium akcentus minden oldalon) */
    .cta-banner::after {
      content: '';
      position: absolute;
      top: 0; bottom: 0; left: 0;
      width: 55%;
      background: linear-gradient(105deg, transparent 0%, rgba(184,153,104,0.16) 50%, transparent 100%);
      transform: translateX(-200%);
      animation: lightsweep 6.5s ease-in-out infinite;
      pointer-events: none;
    }
    @media (prefers-reduced-motion: reduce) { .cta-banner::after { animation: none; opacity: 0; } }
    .cta-banner .label { color: var(--gold-light); }
    .cta-banner__title {
      font-family: var(--font-display);
      font-size: clamp(2.5rem, 5vw, 4.5rem);
      font-weight: 300;
      line-height: 1.08;
      margin: 1.25rem 0 1rem;
    }
    .cta-banner__subtitle {
      font-size: 0.875rem;
      color: rgba(255,255,255,0.45);
      max-width: 45ch;
      margin: 0 auto 2.5rem;
    }
    .cta-banner__actions {
      display: flex;
      gap: 1.25rem;
      justify-content: center;
      flex-wrap: wrap;
    }
    .btn-outline-light {
      display: inline-flex;
      align-items: center;
      gap: 0.75rem;
      padding: 1rem 2.25rem;
      border: 1px solid rgba(255,255,255,0.25);
      color: rgba(255,255,255,0.6);
      font-family: var(--font-display);
      font-size: 0.95rem;
      font-weight: 400;
      letter-spacing: 0.02em;
      text-transform: none;
      transition: all 0.2s;
    }
    .btn-outline-light:hover {
      border-color: rgba(255,255,255,0.5);
      color: var(--ivory);
    }

    /* ─── UTILITY CLASSES (inline style replacements) ──── */
    .max-w-18ch { max-width: 18ch; }
    .max-w-60ch { max-width: 60ch; }
    .max-w-48ch { max-width: 48ch; }
    .text-center { text-align: center; }
    .mx-auto { margin-left: auto; margin-right: auto; }
    .mt-sm { margin-top: 1.25rem; }
    .mt-md { margin-top: var(--space-md); }
    .color-ivory { color: var(--ivory); }
    .color-muted-light { color: rgba(255,255,255,0.5); }
    .color-muted-lighter { color: rgba(255,255,255,0.4); }
    .divider--gold-light { background: var(--gold-light); }
    .diff-center-title { color: var(--ivory); margin-bottom: 0.5rem; }
    .diff-center-desc { font-size: 0.75rem; color: rgba(255,255,255,0.4); max-width: 18ch; text-align: center; line-height: 1.7; }
    /* (protocol-timeline-box removed — replaced by protocol-strip) */
    .cta-center { text-align: center; margin-top: 2.5rem; }
    .body-text--spaced { margin-top: 1rem; }
    .tech-desc { font-size: 0.875rem; line-height: 1.75; color: rgba(255,255,255,0.5); max-width: 48ch; margin-top: 1.25rem; }
    .tech-cta { margin-top: 2rem; }
    .divider--center-extra { margin: 1.25rem auto; }

    /* ─── FOOTER ──────────────────────────────────────────── */
    .footer {
      background: var(--dark);
      border-top: 1px solid rgba(255,255,255,0.06);
      padding: var(--space-lg) 0 var(--space-md);
      color: rgba(255,255,255,0.7);
    }
    .footer__grid {
      display: grid;
      grid-template-columns: 2fr 1fr 1fr 1fr;
      gap: var(--space-md);
      padding-bottom: var(--space-lg);
      border-bottom: 1px solid rgba(255,255,255,0.06);
    }
    .footer__logo {
      font-family: var(--font-display);
      font-size: 1.25rem;
      color: var(--ivory);
      margin-bottom: 0.75rem;
    }
    .footer__tagline { font-size: 0.82rem; line-height: 1.75; max-width: 30ch; margin-bottom: 1.25rem; color: rgba(255,255,255,0.62); }
    .footer__contact { margin-top: 0.5rem; }
    .footer__contact-item { font-size: 0.8rem; line-height: 1.9; color: rgba(255,255,255,0.78); }
    .footer__col-title {
      font-size: 0.68rem;
      letter-spacing: 0.18em;
      text-transform: uppercase;
      color: var(--gold-light);
      margin-bottom: 1.25rem;
    }
    .footer__link {
      display: block;
      font-size: 0.82rem;
      color: rgba(255,255,255,0.76);
      margin-bottom: 0.6rem;
      transition: color 0.2s;
    }
    .footer__link:hover { color: rgba(255,255,255,0.95); }
    .footer__link--inline { margin: 0; }
    .footer__bottom {
      padding-top: var(--space-md);
      display: flex;
      justify-content: space-between;
      align-items: center;
      font-size: 0.74rem;
    }
    .footer__legal {
      display: flex;
      gap: 1.5rem;
    }

    /* ─── SCROLL ANIMATIONS ───────────────────────────────── */
    .reveal {
      opacity: 0;
      transform: translateY(42px);
      transition: opacity 0.85s cubic-bezier(0.22,0.61,0.36,1),
                  transform 0.85s cubic-bezier(0.22,0.61,0.36,1);
    }
    .reveal.visible {
      opacity: 1;
      transform: translateY(0);
    }
    .reveal-delay-1 { transition-delay: 0.1s; }
    .reveal-delay-2 { transition-delay: 0.2s; }
    .reveal-delay-3 { transition-delay: 0.3s; }
    .reveal-delay-4 { transition-delay: 0.4s; }

    /* ─── TRUST STRIP ────────────────────────────────────── */
    .trust-strip {
      background: var(--cream);
      padding: 1.25rem 0;
      border-bottom: 1px solid rgba(42,38,32,0.06);
    }
    .trust-strip__inner {
      display: flex;
      gap: 1.5rem;
      align-items: center;
      justify-content: center;
      flex-wrap: wrap;
    }
    .trust-strip__item {
      font-family: var(--font-sans);
      font-size: 0.68rem;
      font-weight: 500;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      color: var(--dark-60);
    }
    .trust-strip__sep {
      color: var(--gold);
      font-size: 0.8rem;
    }

    /* ─── RESPONSIVE ──────────────────────────────────────── */
    @media (max-width: 1024px) {
      .hero { grid-template-columns: minmax(0, 1fr); min-height: 85svh; }
      .hero__image { display: none; }
      .hero__content { padding-top: 8rem; justify-content: flex-start; }
      .hero__pill { display: none; }
      .grid-2, .grid-3 { grid-template-columns: 1fr; }
      .protocol-pillars { grid-template-columns: 1fr; }
      .indications-grid { grid-template-columns: repeat(2,1fr); }
      .tech-grid { grid-template-columns: 1fr; }
      .tech-visual { display: none; }
      .treatments-header { flex-direction: column; align-items: flex-start; gap: 1rem; }
      .treatments-grid { grid-template-columns: 1fr; }
      .treatment-card:first-child { grid-column: span 1; }
      .clinical-inner { grid-template-columns: 1fr; }
      .testimonials-grid { grid-template-columns: 1fr 1fr; }
      .footer__grid { grid-template-columns: 1fr 1fr; }
      .diff-table { grid-template-columns: 1fr; }
      .diff-col--center { border: none; }
      .pm-box { padding: 2.5rem 2rem; }
    }
    @media (max-width: 680px) {
      .nav__links { gap: 1.25rem; }   /* 7. kör: a mobil-elrejtést a hamburger váltja (lásd NAV-7K réteg) */
      .hero { min-height: 80svh; }
      .indications-grid { grid-template-columns: 1fr; }
      .testimonials-grid { grid-template-columns: 1fr; }
      .footer__grid { grid-template-columns: 1fr; }
      .cta-banner__actions { flex-direction: column; align-items: center; }
      .intro-strip__inner { gap: 2rem; }
      .intro-strip__sep { display: none; }
      .hero__actions { flex-direction: column; align-items: flex-start; }
      .pm-phases { grid-template-columns: 1fr; }
      .pm-box { padding: 2rem 1.5rem; }
      .pm-footer { flex-direction: column; gap: 1rem; text-align: center; }
      .protocol-strip__inner { flex-wrap: wrap; justify-content: center; text-align: center; }
      .protocol-strip__sep { display: none; }
      .protocol-strip__btn { margin-left: 0; }
    }

    /* ─── MERGE: NAV nyelvváltó ──────────────────────────── */
    .nav__right { display: flex; align-items: center; gap: 1.5rem; }
    .lang-switch { display: flex; align-items: center; gap: 0.4rem; font-size: 0.62rem; font-weight: 600; letter-spacing: 0.12em; }
    .lang-switch .lang-active { color: var(--dark); }
    .lang-switch .lang-sep { color: var(--dark-30); }
    .lang-switch .lang-dis { color: var(--dark-30); cursor: not-allowed; }

    /* ─── MERGE: HERO ajánlat + trust-sor ────────────────── */
    .hero__accent { font-family: var(--font-display); font-style: normal; color: var(--gold); font-size: clamp(1.05rem, 2.2vw, 1.45rem); margin-top: 0.5rem; max-width: 42ch; }
    .hero__offer { margin-top: 0.75rem; color: var(--gold-text); font-weight: 500; font-size: 0.82rem; max-width: 46ch; }
    .hero__trust { margin-top: 1.75rem; font-size: 0.64rem; font-weight: 500; letter-spacing: 0.14em; text-transform: uppercase; color: var(--dark-30); }

    /* ─── MERGE: FAQ (AEO) ───────────────────────────────── */
    .faq-section { padding: var(--space-xl) 0; background: var(--ivory); }
    .faq-list { max-width: 800px; margin: var(--space-lg) auto 0; }
    .faq-item { border-bottom: 1px solid var(--dark-10); }
    .faq-item:first-child { border-top: 1px solid var(--dark-10); }
    .faq-q { font-family: var(--font-display); font-size: 1.15rem; font-weight: 400; color: var(--dark); padding: 1.5rem 2.5rem 1.5rem 0; cursor: pointer; position: relative; list-style: none; transition: color 0.2s; }
    .faq-q::-webkit-details-marker { display: none; }
    .faq-q::after { content: '+'; position: absolute; right: 0.25rem; top: 50%; transform: translateY(-50%); font-family: var(--font-display); font-size: 1.6rem; color: var(--gold); transition: transform var(--transition); line-height: 1; }
    .faq-item[open] .faq-q::after { content: '–'; }
    .faq-q:hover { color: var(--gold); }
    .faq-a { padding: 0 2.5rem 1.75rem 0; }
    .faq-a p { font-size: 0.875rem; line-height: 1.8; color: var(--dark-60); max-width: 64ch; }
    .faq-a a { color: var(--gold-text); border-bottom: 1px solid var(--gold); }

    /* ─── MERGE: KONTAKT (cím + térkép + űrlap) ──────────── */
    .contact-section { padding: var(--space-xl) 0; background: var(--cream); }
    .contact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-lg); align-items: start; }
    .contact-address { font-style: normal; margin-top: var(--space-md); }
    .contact-address p { font-size: 0.9rem; line-height: 1.6; margin-bottom: 0.5rem; color: var(--dark); }
    .contact-address a { color: var(--dark); border-bottom: 1px solid var(--dark-10); transition: border-color 0.2s; }
    .contact-address a:hover { border-color: var(--gold); }
    .contact-address .contact-hours { font-size: 0.78rem; color: var(--dark-60); margin-top: 0.75rem; }
    .contact-map { width: 100%; height: 260px; border: 1px solid var(--dark-10); margin-top: var(--space-md); filter: grayscale(0.3) contrast(1.05); }
    .contact-form-wrap { position: relative; }
    .contact-submit { width: 100%; justify-content: center; margin-top: 0.5rem; }
    .form-success { background: var(--ivory); border: 1px solid var(--dark-10); padding: 3rem; text-align: center; }
    .form-success__check { width: 48px; height: 48px; margin: 0 auto 1.25rem; border-radius: 50%; background: var(--gold-pale); color: var(--gold); display: flex; align-items: center; justify-content: center; font-size: 1.4rem; }
    .form-success__text { font-family: var(--font-display); font-size: 1.2rem; color: var(--dark); margin-bottom: 1.5rem; }

    /* ─── MERGE: GDPR consent + honeypot (Melinda 4) ─── */
    .gdpr-consent { display: flex; gap: 0.6rem; align-items: flex-start; margin: 1.25rem 0 0.25rem; font-size: 0.78rem; line-height: 1.6; color: var(--dark-60); cursor: pointer; }
    .gdpr-consent input { margin-top: 0.2rem; accent-color: var(--gold); flex-shrink: 0; }
    .gdpr-consent a { color: var(--gold-text); border-bottom: 1px solid var(--gold); }
    .honeypot { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

    /* ─── MERGE: Lead-magnet (Melinda 5/8 — újrahasznosítható) ─── */
    .lead-magnet { padding: var(--space-lg) 0; }
    .lead-magnet__card { display: grid; grid-template-columns: 180px 1fr; gap: var(--space-md); background: var(--highlight); border: 1px solid var(--gold-pale); padding: 2.5rem; max-width: 880px; margin: 0 auto; align-items: center; }
    .lead-magnet__visual { aspect-ratio: 3/4; background: linear-gradient(135deg, var(--gold-pale), var(--cream)); border: 1px solid var(--gold-pale); }
    .lead-magnet__eyebrow { font-size: 0.62rem; letter-spacing: 0.14em; text-transform: uppercase; color: var(--gold); }
    .lead-magnet__title { font-family: var(--font-display); font-size: 1.55rem; font-weight: 500; color: var(--dark); margin: 0.4rem 0 0.6rem; }
    .lead-magnet__desc { font-size: 0.86rem; line-height: 1.7; color: var(--dark-60); margin-bottom: 1.25rem; }
    .lead-magnet__form { display: flex; flex-wrap: wrap; gap: 0.6rem; align-items: center; }
    .lead-magnet__form input[type="email"] { flex: 1; min-width: 220px; padding: 0.7rem 1rem; border: 1px solid var(--dark-10); background: var(--ivory); font-family: var(--font-sans); font-size: 0.85rem; color: var(--dark); }
    .lead-magnet__form .gdpr-consent { flex-basis: 100%; margin: 0.5rem 0 0; }
    .lead-magnet__microcopy { flex-basis: 100%; font-size: 0.7rem; color: #6B6459; margin: 0.25rem 0 0; }   /* a11y AA: sötétített meleg-szürke (a --mid-gray #8A8378 <4.5:1 volt a highlight-on) */
    .lead-magnet__success { padding: 1.5rem 0 0; text-align: center; font-family: var(--font-display); font-size: 1.1rem; color: var(--gold); }

    /* ─── a11y: látható billentyűzet-fókusz (FINAL-CHECKLIST #31) ─── */
    a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, summary:focus-visible, [tabindex]:focus-visible { outline: 2px solid var(--gold); outline-offset: 2px; }
    @media (max-width: 680px) { .lead-magnet__card { grid-template-columns: 1fr; padding: 1.75rem; } .lead-magnet__visual { display: none; } }

    /* ─── MERGE: Founder (Heni) szekció (Melinda 6) ─── */
    .founder-section { padding: var(--space-xl) 0; background: var(--cream); }
    .founder-grid { display: grid; grid-template-columns: 0.8fr 1fr; gap: var(--space-lg); align-items: center; }
    .founder-visual { aspect-ratio: 4/5; background: linear-gradient(135deg, var(--gold-pale), var(--highlight)); border: 1px solid var(--gold-pale); }
    .founder-quote { font-family: var(--font-display); font-size: 1.6rem; font-weight: 400; font-style: normal; line-height: 1.4; color: var(--dark); border-left: 2px solid var(--gold); padding-left: 1rem; margin: 1rem 0 1.5rem; }
    .founder-content p { font-size: 0.9rem; line-height: 1.8; color: var(--dark-60); margin-bottom: 1rem; max-width: 60ch; }
    .founder-name { font-family: var(--font-display); font-size: 1rem; color: var(--dark) !important; margin-top: 1.5rem !important; }
    .founder-label { margin: 0; }   /* a11y-04: h2.label margin-reset (a founder-section programozott címe) */
    /* ─── MERGE: 5 alapelv (Melinda 7) ─── */
    .principles-section { padding: var(--space-xl) 0; background: var(--ivory); }
    .principles-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 1.5rem; margin-top: var(--space-lg); }
    .principle { padding: 1.5rem 1rem; border-top: 2px solid var(--gold-pale); }
    .principle__n { font-family: var(--font-display); font-size: 1.4rem; color: var(--gold); margin-bottom: 0.75rem; }
    .principle h3 { font-family: var(--font-display); font-size: 1.05rem; font-weight: 500; color: var(--dark); margin-bottom: 0.5rem; }
    .principle p { font-size: 0.78rem; line-height: 1.6; color: var(--dark-60); }
    @media (max-width: 900px) { .founder-grid { grid-template-columns: 1fr; } .principles-grid { grid-template-columns: repeat(2, 1fr); } }
    @media (max-width: 680px) { .principles-grid { grid-template-columns: 1fr; } }

    /* ─── MERGE: Sticky mobil CTA + arany telefon-FAB (Melinda 3b; a WhatsApp szövegként a footer/kontaktban) ─────────── */
    .sticky-mobile-cta { position: fixed; left: 0; right: 0; bottom: 0; padding: 10px 12px; background: rgba(253,250,246,0.96); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); box-shadow: 0 -1px 0 var(--dark-10); display: none; z-index: 60; }
    .sticky-mobile-cta .btn-gold { width: 100%; justify-content: center; }
    @media (max-width: 680px) {
      body { overflow-x: clip; }   /* biztonsági: nincs vízszintes scroll mobilon */
      .sticky-mobile-cta { display: block; }
      .contact-grid { grid-template-columns: 1fr; }
      .nav__right .lang-switch { display: none; }
      .nav, .nav.scrolled { padding-left: 1.25rem; padding-right: 1.25rem; }
      .nav__cta { display: none; }   /* mobilon a sticky-mobile-cta + telefon-FAB viszi a CTA-t (Melinda: minimalizált header) */
      .hero__content { min-width: 0; max-width: 100vw; box-sizing: border-box; padding-left: 1.25rem !important; padding-right: 1.25rem; }
      .hero__title { font-size: 1.6rem; max-width: 100%; }   /* mobil-hero: garantáltan elfér a viewportban */
      .hero__title br { display: none; }   /* a fix sortörések helyett természetes tördelés */
    }
    @media (max-width: 1024px) {
      .contact-grid { grid-template-columns: 1fr; gap: var(--space-md); }
    }

    /* ─── Cookie Consent (kanonikus Shape-szöveg + Consent Mode v2) ───
       A.10.4: két EGYENRANGÚ gomb (azonos méret + kontraszt, a „Csak a szükségesek" NEM halvány link);
       az „Elfogadom" glow-t kap (jogilag kritikus gomb); tap-target min. 44px. A SZÖVEG Vanda-OK, változatlan. */
    .cookie-banner { position: fixed; left: 16px; right: 16px; bottom: 24px; max-width: 420px; background: var(--warm-white); border: 1px solid var(--dark-10); padding: 1.5rem; box-shadow: 0 20px 60px rgba(0,0,0,0.16); z-index: 62; display: none; flex-direction: column; gap: 1rem; }
    .cookie-banner.show { display: flex; animation: cookie-in 0.5s cubic-bezier(0.16,1,0.3,1); }
    @keyframes cookie-in { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: none; } }
    .cookie-banner__text { font-size: 0.8rem; line-height: 1.7; color: var(--dark-60); }
    .cookie-banner__text a { color: var(--gold-text); border-bottom: 1px solid var(--gold); }
    .cookie-banner__actions { display: flex; gap: 0.75rem; }
    .cookie-banner__btn { flex: 1; min-height: 42px; padding: 0.6rem 1rem; font-family: var(--font-sans); font-size: 0.82rem; font-weight: 500; letter-spacing: 0.04em; cursor: pointer; transition: all 0.2s; border-radius: 999px; }
    .cookie-banner__btn--accept { background: var(--gold); color: var(--cream); border: 1px solid var(--gold); }
    .cookie-banner__btn--accept:hover { background: var(--gold-deep); border-color: var(--gold-deep); }
    .cookie-banner__btn--essential { background: var(--dark); color: var(--cream); border: 1px solid var(--dark); }
    .cookie-banner__btn--essential:hover { background: #3a352e; }
    @media (prefers-reduced-motion: reduce) { .cookie-banner__btn--accept { animation: none; } .cookie-banner.show { animation: none; } }
    @media (max-width: 680px) { .cookie-banner { left: 12px; right: 12px; bottom: 150px; max-width: none; } }

    /* ─── SKIP-LINK (a11y: bypass blocks, WCAG 2.4.1) ─── */
    .skip-link { position: absolute; left: -9999px; top: 0; z-index: 2000; background: var(--dark); color: #fff; padding: 0.6rem 1rem; border-radius: 0 0 0.4rem 0; font-weight: 500; }
    .skip-link:focus { left: 0; }

    /* ═══ MELINDA v5 KOMPONENSEK ═══ */
    /* Part of the Protocol badge (Melinda 3.6) — dark-on-gold a kontrasztért */
    .part-of-protocol-badge { display:inline-block; padding:4px 12px; background:var(--gold); color:var(--dark); font-family:var(--font-sans); font-size:0.58rem; font-weight:700; text-transform:uppercase; letter-spacing:0.12em; border-radius:9999px; }

    /* GHL booking-widget (CSAK /konzultacio) — a valós naptár-iframe kerete. Mobil: max-width:100% az overflow ellen. */
    .booking-embed { background: var(--ivory); border: 1px solid var(--dark-10); min-height: 720px; overflow: hidden; max-width: 760px; margin: var(--space-lg) auto 0; }
    .booking-embed iframe { width: 100%; max-width: 100%; border: 0; display: block; min-height: 720px; }
    .booking-fallback { padding: 2rem; text-align: center; color: var(--dark-60); }

    /* v5 HERO (egységes minta: overline → H1 → 1 alcím → max 2 CTA) */
    .v5-hero { padding: calc(var(--space-xl) + 2rem) 0 var(--space-xl); background: var(--ivory); text-align: center; }
    .v5-hero .container { max-width: 860px; }
    .v5-hero__title { font-family: var(--font-display); font-size: clamp(2rem, 5vw, 3.6rem); font-weight: 300; line-height: 1.1; letter-spacing: -0.01em; color: var(--dark); margin: 1.25rem 0 0; overflow-wrap: break-word; }
    .v5-hero__accent { font-family: var(--font-display); font-style: normal; font-size: clamp(1.1rem, 2.4vw, 1.6rem); color: var(--gold); margin: 0.75rem 0 0; }
    .v5-hero__sub { font-size: 0.95rem; line-height: 1.8; color: var(--dark-60); max-width: 58ch; margin: 1.5rem auto 0; }
    .v5-hero__facts { list-style: none; display: flex; flex-wrap: wrap; justify-content: center; gap: 0.5rem 1.5rem; margin: 1.5rem auto 0; max-width: 56ch; }
    .v5-hero__facts li { position: relative; font-size: 0.8rem; color: var(--dark-60); padding-left: 1.1rem; }
    .v5-hero__facts li::before { content: '·'; position: absolute; left: 0.2rem; color: var(--gold); font-weight: 500; }
    /* Záró összefoglaló (closer) — sötét, központozott, arany keretes finálé; sorok egyenként úsznak be */
    .closer { position: relative; background: var(--dark); color: #F7F2EB; border-radius: 20px; padding: 4.4rem 3rem; margin-top: var(--space-md); overflow: hidden; text-align: center; }
    .closer::before { content: ""; position: absolute; inset: 16px; border: 1px solid rgba(184,153,104,0.32); border-radius: 13px; pointer-events: none; }
    .closer__eyebrow { display: block; font-size: 0.7rem; letter-spacing: 0.3em; text-transform: uppercase; color: var(--gold); margin-bottom: 1.5rem; }
    .closer__essence { font-family: var(--font-display); font-size: clamp(1.55rem, 3.1vw, 2.3rem); font-weight: 400; line-height: 1.28; color: #fff; max-width: 24ch; margin: 0 auto; letter-spacing: -0.01em; }
    .closer__rule { display: block; width: 48px; height: 1px; background: var(--gold); margin: 1.9rem auto 0; }
    .closer__list { max-width: 600px; margin: 2.6rem auto 0; display: flex; flex-direction: column; gap: 1.9rem; }
    .closer__lab { display: block; font-size: 0.64rem; letter-spacing: 0.28em; text-transform: uppercase; color: var(--gold); margin-bottom: 0.55rem; }
    .closer__txt { font-size: 1.06rem; line-height: 1.55; color: rgba(247,242,235,0.9); max-width: 46ch; margin: 0 auto; }
    .closer__close { font-family: var(--font-display); font-size: clamp(1.05rem, 1.6vw, 1.25rem); line-height: 1.5; color: var(--gold); max-width: 38ch; margin: 2.8rem auto 0; }
    @media (max-width: 680px) { .closer { padding: 3rem 1.5rem; } .closer__list { gap: 1.5rem; } }
    /* Lifestyle-galéria a kezelés-oldalon (life-grid) — valódi portrék, fotóhely helyett */
    .life-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; margin-top: var(--space-lg); }
    .life-grid img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; border-radius: 14px; display: block; box-shadow: 0 6px 20px rgba(42,38,32,0.07); }
    @media (max-width: 760px) { .life-grid { grid-template-columns: repeat(2, 1fr); gap: 0.7rem; } }
    /* GLOBÁLIS szekció-térköz + cream-blokk háttér (eddig csak a kezelés-oldalak inline CSS-éből jött → /hileft, /observ, /mask összelógott) */
    .tech-section { padding: 90px 0; }
    .tech-section--cream { background: #F7F1E6; }
    @media (max-width: 760px) { .tech-section { padding: 58px 0; } }
    /* Kezelés-oldali média: néma loop-videó (álló) + valódi fotó */
    .treat-video { max-width: 380px; margin: 0 auto; border-radius: 18px; overflow: hidden; box-shadow: 0 16px 44px rgba(42,38,32,0.14); }
    .treat-video video { width: 100%; display: block; }
    .treat-img { max-width: 780px; margin: 0 auto; border-radius: 16px; overflow: hidden; box-shadow: 0 12px 34px rgba(42,38,32,0.10); }
    .treat-img img { width: 100%; display: block; }
    /* Hullámhossz-hierarchia táblázat (HILEFT) */
    .wave-intro { max-width: 64ch; margin: 0 auto; text-align: center; color: rgba(42,38,32,0.82); line-height: 1.7; }
    .wave-wrap { overflow-x: auto; margin-top: var(--space-lg); border: 1px solid var(--gold-pale); border-radius: 14px; }
    .wave-table { width: 100%; border-collapse: collapse; font-size: 0.92rem; min-width: 560px; }
    .wave-table th, .wave-table td { text-align: left; padding: 0.95rem 1.1rem; border-bottom: 1px solid var(--gold-pale); vertical-align: top; }
    .wave-table tbody tr:last-child td { border-bottom: none; }
    .wave-table thead th { font-family: var(--font-sans); font-size: 0.64rem; letter-spacing: 0.16em; text-transform: uppercase; color: var(--gold-deep); border-bottom: 1px solid var(--gold); background: rgba(184,153,104,0.06); }
    .wave-table td:first-child { font-family: var(--font-display); color: var(--dark); white-space: nowrap; }
    .wave-table td.wave-c { text-align: center; }
    .wave-table th.wave-c { text-align: center; }
    .wave-yes { display: inline-flex; align-items: center; justify-content: center; width: 1.5rem; height: 1.5rem; border-radius: 50%; background: rgba(184,153,104,0.16); color: var(--gold-deep); font-weight: 700; font-size: 0.9rem; }
    .wave-no { color: rgba(42,38,32,0.26); font-size: 1.1rem; }
    .wave-table .wave-hi td:first-child::before { content: "°5"; color: var(--gold); margin-right: 0.4rem; }
    .wave-table .wave-hi .wave-yes { background: var(--gold); color: #fff; }
    /* HILEFT-sor: finom fény-átvillanás (a háttéren mozgó fénycsík) */
    .wave-table .wave-hi td { color: var(--dark); font-weight: 500; background-image: linear-gradient(100deg, rgba(184,153,104,0.16) 0%, rgba(184,153,104,0.16) 38%, rgba(214,184,126,0.55) 50%, rgba(184,153,104,0.16) 62%, rgba(184,153,104,0.16) 100%); background-size: 280% 100%; animation: wave-shimmer 5s ease-in-out infinite; }
    @keyframes wave-shimmer { 0% { background-position: 130% 0; } 55%, 100% { background-position: -30% 0; } }
    @media (prefers-reduced-motion: reduce) { .wave-table .wave-hi td { animation: none; background-image: none; background: rgba(184,153,104,0.16); } }
    @media (max-width: 600px) { .wave-table { font-size: 0.84rem; } }
    /* Spektrum-kártyák — visszafogott, földes tónusok; vékony bal-szegély (a hatás a hős, nem a nm) */
    .spec-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; margin-top: var(--space-lg); }
    .spec-card { position: relative; background: #fff; border: 1px solid var(--gold-pale); border-radius: 14px; padding: 1.6rem 1.5rem 1.5rem 1.9rem; overflow: hidden; transition: transform .35s ease, box-shadow .35s ease; }
    .spec-card:hover { transform: translateY(-4px); box-shadow: 0 14px 32px rgba(42,38,32,0.10); }
    .spec-card__bar { position: absolute; left: 0; top: 0; bottom: 0; width: 3px; height: auto; opacity: 0.85; }
    .spec-card__meta { display: inline-flex; align-items: center; gap: .5rem; font-size: 0.66rem; letter-spacing: 0.14em; text-transform: uppercase; color: var(--gold-deep); }
    .spec-card__meta::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: currentColor; opacity: 0.55; }
    .spec-card__benefit { font-family: var(--font-display); font-weight: 400; font-size: 1.18rem; color: var(--dark); margin: 0.5rem 0 0.5rem; line-height: 1.28; }
    .spec-card__layer { font-size: 0.85rem; color: rgba(42,38,32,0.7); margin: 0; line-height: 1.5; }
    .spec-card--hi { border-color: var(--gold); background: linear-gradient(180deg, #FFFDF8, #FBF6EC); box-shadow: 0 0 0 1px var(--gold), 0 12px 32px rgba(184,153,104,0.18); }
    .spec-card--hi .spec-card__meta { color: var(--gold-deep); }
    .spec-card--hi .spec-card__bar { width: 4px; opacity: 1; }
    /* ÁTVILLANÓ FÉNY (lightsweep) — finom, mozgó fénycsík; az ULTIMA-kártyákon és a HILEFT-soron */
    .lightsweep { position: relative; overflow: hidden; }
    .lightsweep::after { content: ""; position: absolute; top: 0; bottom: 0; left: 0; width: 60%; pointer-events: none; background: linear-gradient(105deg, transparent 0%, rgba(255,255,255,0.62) 50%, transparent 100%); transform: translateX(-180%); animation: lightsweep 5s ease-in-out infinite; }
    @keyframes lightsweep { 0% { transform: translateX(-180%); } 55%, 100% { transform: translateX(320%); } }
    @media (prefers-reduced-motion: reduce) { .lightsweep::after { animation: none; opacity: 0; } }
    /* Finom, nagy U monogram a sötét „statement" sávon (Melinda 2026-06-20) */
    .statement-band { position: relative; overflow: hidden; }
    .statement-band > .container { position: relative; z-index: 1; }
    .statement-band__u { position: absolute; right: 3%; top: 50%; transform: translateY(-50%); font-family: var(--font-display); font-size: clamp(11rem, 26vw, 24rem); line-height: 1; color: rgba(184,153,104,0.07); pointer-events: none; z-index: 0; user-select: none; }
    /* Maszk prémium-jellemző kártyák — ikonos, elegánsabb (nem sima doboz) */
    .mfeat-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1.1rem; max-width: 880px; margin: 0 auto; }
    .mfeat { position: relative; background: #fff; border: 1px solid var(--gold-pale); border-radius: 16px; padding: 1.9rem 1.8rem; transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease; }
    .mfeat:hover { transform: translateY(-4px); box-shadow: 0 16px 36px rgba(42,38,32,0.09); border-color: rgba(184,153,104,0.4); }
    .mfeat__ico { display: inline-flex; align-items: center; justify-content: center; width: 46px; height: 46px; border-radius: 50%; background: var(--gold-pale); color: var(--gold-deep); margin-bottom: 1.1rem; }
    .mfeat__ico svg { width: 23px; height: 23px; }
    .mfeat__t { font-family: var(--font-display); font-weight: 400; font-size: 1.22rem; color: var(--dark); margin: 0 0 .5rem; line-height: 1.2; }
    .mfeat__d { font-size: 0.92rem; color: rgba(42,38,32,0.72); line-height: 1.6; margin: 0; }
    @media (max-width: 560px) { .mfeat-grid { grid-template-columns: 1fr; } }
    .spec-cards--4 { grid-template-columns: repeat(4, 1fr); }
    @media (max-width: 760px) { .spec-cards { grid-template-columns: 1fr 1fr; } }
    @media (max-width: 900px) { .spec-cards--4 { grid-template-columns: 1fr 1fr; } }
    @media (max-width: 480px) { .spec-cards, .spec-cards--4 { grid-template-columns: 1fr; } }
    /* Előtte–utána (globális, hogy a /hileft-en is működjön) */
    .ba-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; max-width: 60rem; margin: 2.5rem auto 0; }
    .ba-pair { display: grid; grid-template-columns: 1fr 1fr; gap: .5rem; margin: 0; }
    .ba-slot { position: relative; aspect-ratio: 4/5; background: var(--cream); border: 1px solid var(--dark-10); border-radius: 10px; }
    .ba-slot::after { content: attr(data-ba); position: absolute; left: .7rem; top: .6rem; font-size: 0.6rem; letter-spacing: .12em; text-transform: uppercase; color: var(--gold-deep); }
    @media (max-width: 640px) { .ba-grid { grid-template-columns: 1fr; } }
    /* Typewriter („gépelős”) hero-H1 — Melinda 2026-06-17 */
    .v5-typed { min-height: 2.4em; }
    .v5-typed .tw { display: block; }
    .v5-typed .tw--gold { color: var(--gold-deep); }
    .tw-caret { display: inline-block; width: 3px; height: 0.92em; background: var(--gold); margin-left: 6px; vertical-align: -0.06em; animation: twblink 1s step-end infinite; }
    .tw-caret--done { animation: twblink 1.4s step-end infinite; }
    @keyframes twblink { 0%, 100% { opacity: 1; } 50% { opacity: 0; } }
    @media (prefers-reduced-motion: reduce) { .tw-caret { animation: none; } }
    /* Prominens, elegáns kulcsinfó-sor a hero alján — osztott, dobozok nélkül (Melinda 2026-06-17) */
    .v5-hero__keyfacts { list-style: none; display: inline-flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 0.4rem 0; margin: 2rem auto 0; max-width: 62ch; padding: 0; }
    .v5-hero__keyfacts li { position: relative; font-size: 0.96rem; font-weight: 500; color: var(--dark); padding: 0 1.5rem; line-height: 1.4; }
    .v5-hero__keyfacts li + li::before { content: ""; position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 1px; height: 1.15em; background: var(--gold); }
    @media (max-width: 600px) { .v5-hero__keyfacts { flex-direction: column; gap: 0.5rem; } .v5-hero__keyfacts li { padding: 0; font-size: 0.9rem; } .v5-hero__keyfacts li + li::before { display: none; } }
    .v5-hero__actions { display: flex; flex-wrap: wrap; gap: 1rem; justify-content: center; margin-top: 2.25rem; }
    .v5-hero__trust { margin-top: 1.75rem; font-size: 0.64rem; font-weight: 500; letter-spacing: 0.14em; text-transform: uppercase; color: var(--dark-30); }

    /* v5 TRUST-STRIP (egy sor) */
    .v5-trust { background: var(--cream); padding: 1.4rem 0; border-top: 1px solid var(--dark-10); border-bottom: 1px solid var(--dark-10); }
    .v5-trust .container { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 0.6rem 1rem; text-align: center; }
    .v5-trust__item { font-size: 0.78rem; color: var(--dark-60); letter-spacing: 0.02em; }
    .v5-trust__sep { color: var(--gold); }

    /* v5 STAT-STRIP (pl. /hileft — 3 stat, 36% NÉLKÜL) */
    .v5-statstrip { background: var(--dark); color: var(--ivory); padding: 2.25rem 0; }
    .v5-stat-row { display: flex; flex-wrap: wrap; justify-content: center; gap: 1rem 3rem; }
    .v5-stat { font-family: var(--font-display); font-size: clamp(1.1rem, 2.4vw, 1.5rem); font-weight: 300; color: var(--gold-light); letter-spacing: 0.02em; }

    /* v5 KÁRTYA-GRID (indikációk + info) */
    .v5-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; margin-top: var(--space-lg); }
    .v5-card { display: block; text-decoration: none; color: inherit; background: var(--ivory); border: 1px solid var(--dark-10); padding: 2rem 1.75rem; transition: all var(--transition); }
    a.v5-card:hover { background: var(--cream); border-color: var(--gold-pale); transform: translateY(-2px); }
    .v5-card__n { font-family: var(--font-display); font-size: 1.4rem; color: var(--gold); margin-bottom: 0.6rem; line-height: 1; }
    .v5-card__t { font-family: var(--font-display); font-size: 1.15rem; font-weight: 500; color: var(--dark); margin-bottom: 0.6rem; }
    .v5-card__d { font-size: 0.95rem; line-height: 1.75; color: var(--dark-60); }
    /* „Neked való, ha…” — 2x2 dizájnos kártyák (need-grid) */
    .need-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.1rem; margin-top: var(--space-lg); }
    .need-card { position: relative; background: #fff; border: 1px solid rgba(184,153,104,0.22); border-radius: 14px; padding: 1.9rem 1.9rem 1.9rem 2.4rem; overflow: hidden; box-shadow: 0 1px 0 rgba(184,153,104,0.06); transition: all var(--transition); }
    .need-card::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 4px; background: linear-gradient(180deg, var(--prepare), var(--treat), var(--recover)); opacity: 0.7; }
    .need-card:hover { transform: translateY(-4px); border-color: rgba(184,153,104,0.45); box-shadow: 0 14px 32px rgba(42,38,32,0.10); }
    .need-card__mk { display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 34px; border-radius: 50%; border: 1px solid var(--gold); color: var(--gold-deep); font-family: var(--font-display); font-size: 0.95rem; margin-bottom: 1rem; }
    .need-card__t { font-family: var(--font-display); font-size: 1.18rem; font-weight: 500; color: var(--dark); margin-bottom: 0.5rem; line-height: 1.3; }
    .need-card__d { font-size: 0.95rem; line-height: 1.7; color: rgba(42,38,32,0.82); }
    @media (max-width: 680px) { .need-grid { grid-template-columns: 1fr; } }
    /* „Ahogy kibontakozik az eredmény” — letisztult, modern vízszintes idővonal (htl) */
    .htl { position: relative; display: grid; gap: 2.2rem; margin-top: calc(var(--space-lg) + 0.5rem); padding-top: 10px; }
    .htl::before { content: ""; position: absolute; top: 6px; left: var(--htl-edge, 12%); right: var(--htl-edge, 12%); height: 1px; background: linear-gradient(90deg, transparent, var(--gold) 8%, var(--gold) 92%, transparent); opacity: 0.5; z-index: 0; }
    .htl-item { position: relative; z-index: 1; text-align: center; padding: 0 1.1rem; }
    .htl-dot { position: relative; z-index: 1; display: block; width: 11px; height: 11px; border-radius: 50%; background: var(--gold); margin: 0 auto 1.7rem; }
    .htl-dot::after { content: ""; position: absolute; inset: -6px; border-radius: 50%; border: 1px solid var(--gold-pale); }
    .htl-idx { display: block; font-size: 0.7rem; letter-spacing: 0.22em; color: var(--gold-deep); margin-bottom: 0.7rem; }
    .htl-t { font-family: var(--font-display); font-size: 1.24rem; font-weight: 400; color: var(--dark); margin-bottom: 0.55rem; line-height: 1.3; letter-spacing: -0.01em; }
    .htl-d { font-size: 0.92rem; line-height: 1.7; color: rgba(42,38,32,0.8); max-width: 30ch; margin: 0 auto; }
    @media (max-width: 760px) {
      .htl { grid-template-columns: 1fr !important; gap: 0; padding: 0 0 0 28px; }
      .htl::before { top: 4px; bottom: 4px; left: 4px; right: auto; width: 1px; height: auto; }
      .htl-item { text-align: left; padding: 0 0 2rem 1.4rem; }
      .htl-item:last-child { padding-bottom: 0; }
      .htl-dot { position: absolute; left: -28px; top: 4px; margin: 0; }
      .htl-idx { margin-bottom: 0.4rem; }
      .htl-d { margin: 0; max-width: none; }
    }
    /* Felhasználási területek — 2-oszlopos lista-rács, fotó nélkül (use-grid) */
    .use-intro { text-align: center; max-width: 60ch; margin: 0 auto; font-size: 1rem; line-height: 1.7; color: rgba(42,38,32,0.82); }
    .use-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 0 2.6rem; margin-top: var(--space-lg); }
    .use-card { display: flex; gap: 1rem; align-items: flex-start; padding: 1.25rem 0; border-top: 1px solid var(--gold-pale); }
    .use-mk { flex: none; width: 8px; height: 8px; border-radius: 50%; background: var(--gold); margin-top: 0.5rem; box-shadow: 0 0 0 4px var(--gold-pale); }
    .use-t { font-family: var(--font-display); font-size: 1.08rem; font-weight: 500; color: var(--dark); margin-bottom: 0.28rem; line-height: 1.3; }
    .use-d { font-size: 0.9rem; line-height: 1.6; color: rgba(42,38,32,0.78); }
    @media (max-width: 680px) { .use-grid { grid-template-columns: 1fr; gap: 0; } }
    /* „Az eredmény íve” — csúsztatott (zegzugos) idősáv, beépített Prepare/Recover fázisokkal (jtl) */
    .jtl { position: relative; display: grid; grid-auto-flow: column; align-items: stretch; margin-top: calc(var(--space-lg) + 0.5rem); }
    .jtl::before { content: ""; position: absolute; top: 50%; left: var(--htl-edge, 8%); right: var(--htl-edge, 8%); height: 1px; background: linear-gradient(90deg, transparent, var(--prepare) 12%, var(--treat) 50%, var(--recover) 88%, transparent); opacity: 0.6; transform: translateY(-50%); z-index: 0; }
    .jtl-item { position: relative; z-index: 1; display: grid; grid-template-rows: 1fr 26px 1fr; min-height: 250px; padding: 0 0.9rem; text-align: center; }
    .jtl-card { grid-row: 1; align-self: end; padding-bottom: 1.7rem; }
    .jtl-item:nth-child(even) .jtl-card { grid-row: 3; align-self: start; padding-bottom: 0; padding-top: 1.7rem; }
    .jtl-dot { grid-row: 2; justify-self: center; align-self: center; position: relative; width: 12px; height: 12px; border-radius: 50%; background: var(--treat); }
    .jtl-dot::after { content: ""; position: absolute; inset: -6px; border-radius: 50%; border: 1px solid var(--gold-pale); }
    .jtl-item.ph-p .jtl-dot { background: var(--prepare); }
    .jtl-item.ph-r .jtl-dot { background: var(--recover); }
    .jtl-item.ph-n .jtl-dot { background: var(--gold); }
    .jtl-item.ph-n .jtl-kick { color: var(--gold-deep); }
    .jtl-kick { display: block; font-size: 0.64rem; letter-spacing: 0.2em; text-transform: uppercase; margin-bottom: 0.55rem; }
    .jtl-rn { font-family: var(--font-display); font-size: 0.98rem; letter-spacing: 0.06em; }
    .jtl-item.ph-p .jtl-kick { color: var(--prepare); }
    .jtl-item.ph-r .jtl-kick { color: var(--recover); }
    .jtl-t { display: block; font-family: var(--font-display); font-size: 1.16rem; font-weight: 400; color: var(--dark); margin-bottom: 0.4rem; line-height: 1.3; letter-spacing: -0.01em; }
    .jtl-t--link { text-decoration: none; transition: color var(--transition); }
    .jtl-item.ph-p .jtl-t--link:hover { color: var(--prepare); }
    .jtl-item.ph-r .jtl-t--link:hover { color: var(--recover); }
    .jtl-d { font-size: 0.88rem; line-height: 1.62; color: rgba(42,38,32,0.78); max-width: 27ch; margin: 0 auto; }
    .jtl-go { display: inline-block; margin-top: 0.6rem; font-size: 0.66rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(--gold-deep); text-decoration: none; }
    .jtl-go:hover { color: var(--dark); }
    @media (max-width: 820px) {
      .jtl { grid-auto-flow: row !important; grid-template-columns: 1fr !important; align-items: start; padding-left: 30px; margin-top: var(--space-lg); }
      .jtl::before { top: 6px; bottom: 6px; left: 5px; right: auto; width: 1px; height: auto; background: linear-gradient(180deg, var(--prepare), var(--treat), var(--recover)); transform: none; }
      .jtl-item { display: block; min-height: 0; text-align: left; padding: 0 0 2.1rem 1.4rem; }
      .jtl-item:last-child { padding-bottom: 0; }
      .jtl-card, .jtl-item:nth-child(even) .jtl-card { padding: 0; align-self: auto; }
      .jtl-dot { position: absolute; left: -30px; top: 5px; }
      .jtl-d { max-width: none; }
    }
    .v5-card__link { display: inline-block; margin-top: 1rem; font-size: 0.62rem; font-weight: 500; letter-spacing: 0.12em; text-transform: uppercase; color: var(--gold); }

    /* v5 TREATMENT (árazott kezelés-kártya, badge-dzsel) */
    .v5-tx-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; margin-top: var(--space-lg); }
    .v5-tx { display: block; text-decoration: none; color: inherit; background: var(--ivory); border: 1px solid var(--dark-10); padding: 1.75rem; transition: all var(--transition); }
    a.v5-tx:hover { background: var(--cream); border-color: var(--gold-pale); transform: translateY(-2px); }
    .v5-tx .part-of-protocol-badge { margin-bottom: 1rem; }
    .v5-tx__name { font-family: var(--font-display); font-size: 1.2rem; font-weight: 500; color: var(--dark); margin-bottom: 0.4rem; }
    .v5-tx__price { font-family: var(--font-display); font-size: 1rem; color: var(--gold); margin-bottom: 0.6rem; }
    .v5-tx__meta { font-size: 0.8rem; line-height: 1.6; color: var(--dark-60); }
    .v5-tx__link { display: inline-block; margin-top: 1rem; font-size: 0.62rem; font-weight: 500; letter-spacing: 0.12em; text-transform: uppercase; color: var(--gold); }
    /* Sötét kezelés-kártya (pl. ULTIMA Men) — markáns, férfias kontraszt */
    .v5-tx--dark { background: var(--dark); border-color: var(--dark); }
    a.v5-tx--dark:hover { background: #322c24; border-color: var(--gold); }
    .v5-tx--dark .v5-tx__name { color: #fff; }
    .v5-tx--dark .v5-tx__price { color: var(--gold); }
    .v5-tx--dark .v5-tx__meta { color: rgba(255,255,255,0.68); }
    .v5-tx--dark .v5-tx__link { color: var(--gold); }
    .v5-tx--dark .part-of-protocol-badge { color: rgba(255,255,255,0.85); border-color: rgba(255,255,255,0.28); }

    /* v5 STEP-TIMELINE (Mire számíthat? / Hogyan zajlik?) */
    .v5-steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem; margin-top: var(--space-lg); counter-reset: v5step; }
    .v5-step { position: relative; padding-top: 1rem; border-top: 2px solid var(--gold-pale); }
    .v5-step__n { font-family: var(--font-display); font-size: 1.6rem; color: var(--gold); line-height: 1; margin-bottom: 0.75rem; }
    .v5-step__t { font-family: var(--font-display); font-size: 1.05rem; font-weight: 500; color: var(--dark); margin-bottom: 0.5rem; }
    .v5-step__d { font-size: 0.8rem; line-height: 1.7; color: var(--dark-60); }

    /* v5 FÉNYMÓD-GRID (Observ 8 mód) */
    .v5-fm-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--dark-10); margin-top: var(--space-lg); border: 1px solid var(--dark-10); }
    .v5-fm { background: var(--ivory); padding: 1.5rem 1.25rem; }
    .v5-fm__t { font-family: var(--font-display); font-size: 1rem; color: var(--dark); margin-bottom: 0.3rem; }
    .v5-fm__d { font-size: 0.74rem; line-height: 1.6; color: var(--dark-60); }

    /* v5 TESTIMONIALOK (3 kártya — Vanda-placeholder) */
    .v5-testi-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; margin-top: var(--space-lg); }
    .v5-testi { background: var(--ivory); border: 1px solid var(--dark-10); padding: 2rem; display: flex; flex-direction: column; }
    .v5-testi__q { font-family: var(--font-display); font-size: 1rem; font-style: normal; border-left: 2px solid var(--gold); padding-left: 0.9rem; line-height: 1.6; color: var(--dark); margin: 0 0 1.5rem; }
    .v5-testi__q::before { content: '“'; color: var(--gold); font-size: 1.5rem; margin-right: 2px; }
    .v5-testi__c { margin-top: auto; }
    .v5-testi__name { display: block; font-family: var(--font-display); font-size: 0.95rem; color: var(--dark); }
    .v5-testi__tx { display: block; font-size: 0.7rem; letter-spacing: 0.08em; text-transform: uppercase; color: var(--gold); margin-top: 0.25rem; }

    /* v5 PROTOCOL-FILTER (szűrő-sáv) */
    .protocol-filter { display: flex; flex-wrap: wrap; justify-content: center; gap: 0.6rem; max-width: 900px; margin: 0 auto var(--space-lg); }
    .filter-btn { font-family: var(--font-sans); font-size: 0.66rem; font-weight: 500; letter-spacing: 0.1em; text-transform: uppercase; color: var(--dark-60); background: none; border: 1px solid var(--dark-10); padding: 0.6rem 1.3rem; cursor: pointer; transition: all 0.2s; border-radius: 9999px; }
    .filter-btn:hover { border-color: var(--gold); color: var(--dark); }
    .filter-btn.active { background: var(--gold); border-color: var(--gold); color: var(--dark); }

    /* v5 FÁZIS-TAG + szűrhető kártya */
    .v5-phases { display: flex; flex-wrap: wrap; gap: 0.4rem; margin: 0.75rem 0; }
    .v5-phase { font-size: 0.58rem; font-weight: 500; letter-spacing: 0.08em; text-transform: uppercase; color: var(--gold); border: 1px solid var(--gold-pale); padding: 2px 8px; border-radius: 4px; }
    .v5-fc-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }
    .v5-fc { display: block; text-decoration: none; color: inherit; background: var(--ivory); border: 1px solid var(--dark-10); padding: 1.75rem; transition: all var(--transition); }
    a.v5-fc:hover { background: var(--cream); border-color: var(--gold-pale); transform: translateY(-2px); }
    .v5-fc .part-of-protocol-badge { margin-bottom: 0.9rem; }
    .v5-fc__t { font-family: var(--font-display); font-size: 1.15rem; font-weight: 500; color: var(--dark); margin-bottom: 0.5rem; }
    .v5-fc__d { font-size: 0.8rem; line-height: 1.7; color: var(--dark-60); }
    .v5-fc__tags { display: flex; flex-wrap: wrap; gap: 0.35rem; margin-top: 0.75rem; }
    .v5-fc__tag { font-size: 0.62rem; color: var(--dark-60); background: var(--cream); border: 1px solid var(--dark-10); padding: 2px 8px; border-radius: 4px; }

    /* v5 PDF lead-magnet grid (email-gate) */
    .v5-pdf-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.5rem; margin-top: var(--space-lg); }
    .v5-pdf { background: var(--highlight); border: 1px solid var(--gold-pale); padding: 2rem; }
    .v5-pdf__cover { aspect-ratio: 16/9; background: linear-gradient(135deg, var(--gold-pale), var(--cream)); border: 1px solid var(--gold-pale); margin-bottom: 1.25rem; }
    .v5-pdf__t { font-family: var(--font-display); font-size: 1.2rem; font-weight: 500; color: var(--dark); margin: 0.4rem 0 0.5rem; }
    .v5-pdf__d { font-size: 0.82rem; line-height: 1.7; color: var(--dark-60); margin-bottom: 1.25rem; }
    .v5-pdf__form { display: flex; flex-wrap: wrap; gap: 0.6rem; }
    .v5-pdf__form input[type="email"] { flex: 1; min-width: 180px; padding: 0.7rem 1rem; border: 1px solid var(--dark-10); background: var(--ivory); font-family: var(--font-sans); font-size: 0.85rem; color: var(--dark); }
    .v5-pdf__form .gdpr-consent { flex-basis: 100%; margin: 0.25rem 0 0; }
    .v5-form { width: 100%; }

    /* v5 reszponzív */
    @media (max-width: 980px) {
      .v5-grid, .v5-tx-grid, .v5-testi-grid, .v5-fc-grid { grid-template-columns: repeat(2, 1fr); }
      .v5-steps { grid-template-columns: repeat(2, 1fr); }
      .v5-fm-grid { grid-template-columns: repeat(2, 1fr); }
      .v5-pdf-grid { grid-template-columns: 1fr; }
    }
    @media (max-width: 640px) {
      .v5-grid, .v5-tx-grid, .v5-testi-grid, .v5-fc-grid, .v5-steps, .v5-fm-grid { grid-template-columns: 1fr; }
      .v5-hero { padding: calc(var(--space-lg) + 2rem) 0 var(--space-lg); }
    }

    /* ═══ v5 MOBIL-HARDENING — vízszintes overflow-fix (2026-06-08 vizuál-audit: 29 finding) ═══ */
    /* (1) hosszú magyar szavak törjenek (bőrdiagnosztika, szülész-nőgyógyász…) — globális, mindig */
    h1, h2, h3, h4, h5, p, li, a, blockquote,
    .display-xl, .display-lg, .display-md, .display-sm,
    .hero__title, .hero__accent, .observ-promo__title, .cta-banner__title,
    .v5-hero__title, .v5-hero__accent, .v5-hero__sub, .v5-card__t, .v5-card__d, .pm-title {
      overflow-wrap: break-word; hyphens: auto;
    }
    /* legal-oldalak: a fix-nav alá tolás (H1-átfedés-fix) + olvasható ritmus (a reveal kivéve a generátorban) */
    .legal { padding: 8rem 0 6rem; }
    .legal .container { max-width: 820px; }
    .legal h1 { margin-bottom: 1.5rem; }
    .legal h2 { font-size: 1.3rem; margin: 2.25rem 0 0.75rem; }
    .legal p, .legal li { line-height: 1.8; }
    /* a11y + biztonság: reduced-motion esetén a reveal sose rejtsen tartalmat */
    @media (prefers-reduced-motion: reduce) { .reveal { opacity: 1 !important; transform: none !important; } }
    /* (2) heading-clamp alsó határa túl nagy 390px-en → mobil-méret + (3) trust-strip/cookie wrap */
    @media (max-width: 480px) {
      .container { padding-left: 1.25rem; padding-right: 1.25rem; }
      .hero h1, .hero__content h1, .hero__title, .display-xl { font-size: clamp(2.0rem, 8.5vw, 2.7rem); }
      .display-lg, .observ-promo__title, .cta-banner__title { font-size: clamp(1.75rem, 7vw, 2.3rem); }
      .display-md { font-size: clamp(1.4rem, 6vw, 1.9rem); }
      .v5-hero__title { font-size: clamp(1.65rem, 7vw, 2.1rem); }
      .v5-hero__accent, .hero__accent { font-size: 1.1rem; }
      .trust-strip__inner { flex-wrap: wrap; gap: 0.4rem 1rem; }
      .cookie-banner__actions { flex-direction: column; }
      .cookie-banner__actions > * { width: 100%; }
    }


    /* ═══ V7 DESIGN-SYSTEM RÉTEG (Krisztián 4-etap · Sablon A.1–A.10 · 2026-06-11) ═══ */
    /* A.1 — folyékony típus-skála: H1 = 32→52px ("nem ordít", A.10.2); Marcellus 400-as, letter-spacing +0.01em */
    body { font-size: var(--fs-body); line-height: 1.65; }
    .container { max-width: 1120px; }
    h1, h2, h3, h4 { font-family: var(--font-display); font-weight: 400; letter-spacing: 0.01em; }
    .display-xl, .v5-hero__title { font-size: var(--fs-h1); font-weight: 400; line-height: 1.12; letter-spacing: 0.01em; }
    .display-lg, .cta-banner__title { font-size: var(--fs-h2); font-weight: 400; line-height: 1.15; }
    .display-md { font-size: var(--fs-h3); }
    .display-sm { font-size: clamp(1.1rem, 2vw, 1.35rem); }

    /* A.1/A.10.3 — eyebrow 13px + A.10.1: arany szöveg világoson CSAK gold-deep (4.7:1 AA) */
    .label { font-size: var(--fs-eyebrow); letter-spacing: 0.14em; color: var(--gold-deep); }
    .cta-banner .label, .footer .label, .v5-statstrip .label, .observ-promo-section .label { color: var(--gold-light); }
    .v5-card__n, .v5-card__link, .v5-tx__price, .v5-tx__link, .v5-step__n, .v5-testi__tx,
    .lead-magnet__eyebrow, .lead-magnet__success, .principle__n, .intro-strip__num, .clinical-perk__num,
    .indication-card__combo, .treatment-card__target, .hero__pill-label, .hub-card__cat { color: var(--gold-deep); }
    .v5-phase { color: var(--gold-deep); border-color: rgba(128,104,68,0.35); }
    .v5-hero__accent { color: var(--gold-deep); font-style: normal; }

    /* A.3 — gomb-rendszer: pill, Mulish 600 / 14.5px, tap-target 44px (A.10.2) */
    .btn-gold, .btn-ghost, .btn-outline-light {
      border-radius: 999px; font-family: var(--font-sans); font-size: 0.90625rem; font-weight: 500;
      letter-spacing: 0.05em; text-transform: none; padding: 0.8rem 1.8rem; min-height: 44px;
      align-items: center; transition: transform 0.15s ease, background 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease, color 0.2s ease;
    }
    .btn-gold { background: var(--gold); color: var(--cream); }
    .btn-gold:hover { background: var(--gold-deep); transform: translateY(-1px); }
    .btn-ghost { background: transparent; color: var(--dark); border: 1px solid var(--gold); padding-bottom: 0.8rem; }
    .btn-ghost:hover { background: var(--highlight); color: var(--dark); border-color: var(--gold); }
    .btn-outline-light { border: 1px solid rgba(255,255,255,0.35); color: rgba(255,255,255,0.85); }
    .btn-outline-light:hover { border-color: rgba(255,255,255,0.7); color: #fff; }
    /* Pulzáló arany CTA-glow — Melinda 2026-06-26 (felváltja a statikus .btn-glow + dead tub-glow párost). */
    @keyframes btn-pulse { 0%, 100% { box-shadow: 0 0 0 0 rgba(184,153,104,0); } 50% { box-shadow: 0 0 0 8px rgba(184,153,104,0.28), 0 4px 18px rgba(184,153,104,0.35); } }
    .btn-glow { animation: btn-pulse 2.4s ease-in-out infinite; }
    .btn-glow:hover { animation: none; box-shadow: 0 4px 22px rgba(184,153,104,0.5); }
    @media (prefers-reduced-motion: reduce) { .btn-glow { animation: none; box-shadow: 0 5px 18px rgba(184,153,104,0.18); } }
    /* Logó-monogram a fejlécben (U) — CSS-only, minden oldalon; a valódi logó-fájl ezt cserélheti (7. kör 2026-06-14, Melinda) */
    .nav__logo { display: inline-flex; align-items: center; gap: 11px; }
    .nav__logo::before { content: ""; width: 34px; height: 34px; background: url(/assets/images/logo-u.webp) center/contain no-repeat; flex-shrink: 0; }

    /* A.2 — divider 48px, scrollra berajzolódik (reveal-en belül); kártya-hover -6px + lágy árnyék */
    .divider { width: 48px; }
    .reveal .divider { width: 0; transition: width 0.8s ease 0.15s; }
    .reveal.visible .divider { width: 48px; }
    @media (prefers-reduced-motion: reduce) { .reveal .divider { width: 48px; transition: none; } }
    a.v5-card:hover, a.v5-tx:hover, a.v5-fc:hover, a.hub-card:hover, a.related-card:hover { transform: translateY(-6px); box-shadow: 0 14px 36px rgba(42,38,32,0.08); }

    /* A.6 — fotó-hely (placeholder) konvenció */
    .photo { background: repeating-linear-gradient(135deg, #efe7d8, #efe7d8 14px, #ece2d0 14px, #ece2d0 28px);
      border: 1px solid rgba(184,153,104,0.4); border-radius: 16px; display: flex; flex-direction: column;
      align-items: center; justify-content: center; gap: 8px; color: var(--gold-deep); text-align: center; padding: 24px; min-height: 240px; }
    .photo svg { width: 34px; height: 34px; stroke: var(--gold-deep); fill: none; stroke-width: 1.2; opacity: 0.75; }
    .photo .pl { font-size: 12.5px; letter-spacing: 0.06em; text-transform: uppercase; }
    .photo .pl small { display: block; text-transform: none; letter-spacing: 0; font-size: 12px; color: var(--mid-gray); margin-top: 3px; }

    /* A.7 — űrlap-állapotok (hírlevél/lead-magnet; a konzultáció = GHL-widget) */
    .field-error { color: var(--error); font-size: 0.85rem; margin-top: 0.35rem; font-family: var(--font-sans); }
    .field--invalid input, .field--invalid textarea { border-color: var(--error); box-shadow: 0 0 0 3px rgba(154,59,46,0.12); }
    .form-status { font-family: var(--font-sans); padding: 0.9rem 1.1rem; border-radius: 8px; font-size: 0.95rem; }
    .form-status--success { background: var(--highlight); color: var(--dark); border-left: 3px solid var(--gold); }
    .form-status--error { background: var(--error-bg); color: #6b2a20; border-left: 3px solid var(--error); }
    .btn-gold[aria-busy="true"] { opacity: 0.7; pointer-events: none; }
    .btn-gold[aria-busy="true"]::after { content: ""; display: inline-block; width: 0.9em; height: 0.9em; margin-left: 0.6em;
      border: 2px solid currentColor; border-right-color: transparent; border-radius: 50%; vertical-align: -0.1em; animation: tub-spin 0.7s linear infinite; }
    @keyframes tub-spin { to { transform: rotate(360deg); } }
    @media (prefers-reduced-motion: reduce) { .btn-gold[aria-busy="true"]::after { animation: none; } }
    /* booking-skeleton (handoff 5.4 — a GHL-iframe lassan tölt) */
    .booking-skeleton { min-height: 520px; background: linear-gradient(90deg, #f0e6d6 25%, #f7f2eb 50%, #f0e6d6 75%);
      background-size: 200% 100%; animation: tub-shimmer 1.4s infinite; border-radius: 12px; }
    @keyframes tub-shimmer { to { background-position: -200% 0; } }
    @media (prefers-reduced-motion: reduce) { .booking-skeleton { animation: none; } }

    /* A.5 — footer kontakt-ikonok (emoji-csere): hajszálvonal-stílus, halvány jelenlét */
    .footer__contact-item svg { width: 15px; height: 15px; stroke: var(--gold); fill: none; stroke-width: 1.1; stroke-linecap: round; opacity: 0.72; vertical-align: -2px; margin-right: 7px; }

    /* terv 3.11 — sticky mobil sáv: 2 gomb (Konzultáció glow + Hívj); a FAB kivezetve */
    .sticky-mobile-cta { gap: 10px; }
    @media (max-width: 680px) { .sticky-mobile-cta { display: flex; } }
    .sticky-mobile-cta .btn-gold { flex: 1; width: auto; justify-content: center; }
    .sticky-mobile-cta .btn-ghost { justify-content: center; flex-shrink: 0; }

    /* A.10.2 — mobil H1 vissza a token-skálára (a v5-hardening 1.65rem-jét a Marcellus-skála váltja: min 2rem = 32px) */
    @media (max-width: 480px) {
      .v5-hero__title { font-size: var(--fs-h1); }
      .display-lg, .cta-banner__title { font-size: var(--fs-h2); }
    }

    /* ═══ AUDIT-FIXEK (2026-06-11 cáfoló-köri audit — megerősített findingok) ═══ */
    /* #32: a hyphens:auto márkaszavakat tört a címsorokban ("Be-auty", "Ob-serv") → címsorban nincs auto-elválasztás,
       az overflow-wrap:break-word marad védőhálónak; a body-szöveg hyphens:auto-ja érintetlen */
    h1, h2, h3, h4, h5, .display-xl, .display-lg, .display-md, .display-sm,
    .hero__title, .v5-hero__title, .cta-banner__title, .observ-promo__title { hyphens: manual; }
    /* #2: sticky ≤64px (A.10.2) + tartalom-kompenzáció, hogy a footer jogi linkjeit ne takarja (A.10.4) */
    .sticky-mobile-cta { padding: 8px 12px; }
    .sticky-mobile-cta .btn-gold, .sticky-mobile-cta .btn-ghost { padding-top: 0.55rem; padding-bottom: 0.55rem; min-height: 44px; }
    @media (max-width: 680px) { body { padding-bottom: 76px; } }
    /* #4: FAQ-hover arany → gold-deep (A.10.1) */
    .faq-q:hover { color: var(--gold-deep); }
    /* #6: reduced-motion alatt a smooth scroll is kikapcsol */
    @media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
    /* #27: a jogi oldalak Vanda-verbatim táblázatai ne tágítsák a mobil-viewportot (CSS-keret, a SZÖVEG változatlan) */
    .legal table { width: 100%; table-layout: fixed; border-collapse: collapse; }
    .legal td, .legal th { overflow-wrap: anywhere; }
    /* #29: related ('Olvasd el még') base-stílus — eddig csak hover-szabálya volt */
    .related-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; margin-top: var(--space-lg); }
    .related-card { position: relative; display: block; text-decoration: none; color: inherit; background: #fff; border: 1px solid rgba(184,153,104,0.22); border-radius: 14px; padding: 2rem 1.75rem 2.2rem; overflow: hidden; box-shadow: 0 1px 0 rgba(184,153,104,0.06); transition: all var(--transition); }
    .related-card::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: linear-gradient(90deg, var(--prepare), var(--treat), var(--recover)); opacity: 0.55; transition: opacity .4s ease; }
    .related-card:hover { transform: translateY(-4px); border-color: rgba(184,153,104,0.45); box-shadow: 0 14px 32px rgba(42,38,32,0.10); }
    .related-card:hover::before { opacity: 1; }
    .related-card__t { font-family: var(--font-display); font-size: 1.28rem; color: var(--dark); margin-bottom: 0.55rem; line-height: 1.25; }
    .related-card__d { font-size: 0.92rem; line-height: 1.65; color: rgba(42,38,32,0.82); }
    .related-card::after { content: "Részletek →"; display: block; margin-top: 1.15rem; font-family: var(--font-sans); font-size: 0.76rem; letter-spacing: 0.08em; text-transform: uppercase; color: var(--gold-deep); transition: letter-spacing .3s ease; }
    .related-card:hover::after { letter-spacing: 0.14em; }
    @media (max-width: 980px) { .related-grid { grid-template-columns: 1fr; } }
    /* #30: konzultáció klinika+térkép grid — class-alapú, mobilon 1 oszlop (az inline 1fr 1fr kivezetve a _b2-ből) */
    .v5-clinic-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; align-items: start; }
    @media (max-width: 680px) { .v5-clinic-grid { grid-template-columns: 1fr; gap: 2rem; } }
    /* #33: footer jogi sor mobilon oszlopba, a linkek elválasztás nélkül */
    .footer__legal a { hyphens: none; }
    @media (max-width: 680px) { .footer__bottom { flex-direction: column; gap: 1rem; align-items: flex-start; } }
    /* #34: hero-trust sor kontraszt (1.85:1 volt) → gold-deep (4.7:1) + nagyobb méret */
    .v5-hero__trust { color: var(--gold-deep); font-size: 0.75rem; }

    /* ═══ 6. KÖR RÉTEG (2026-06-12 — B-hero + A-modell + nyelvi minimum) ═══ */
    /* IDÉZET-KÁNON (Melinda 06-12): álló Marcellus + arany hajszálvonal bal-szegély — a dőlt Marcellus TILOS */
    .tub-quote { font-family: var(--font-display); font-style: normal; font-size: 1.05rem; line-height: 1.55; color: var(--dark); border-left: 2px solid var(--gold); padding-left: 14px; margin: 0 0 6px; max-width: 48ch; }
    .tub-quote-sig { font-size: 0.8rem; color: var(--mid-gray); letter-spacing: 0.03em; margin: 0.4rem 0 1.1rem; }
    /* „Szakmai háttér" accordion (Nyelvi-Keret 1.) — ide költöznek az nm/EMS/gép-adatok a vásárlói útról */
    .szakmai-hatter { max-width: 820px; margin: 0 auto; background: var(--ivory); border: 1px solid var(--dark-10); }
    .szakmai-hatter .szh__summary { cursor: pointer; list-style: none; padding: 1.4rem 3.4rem 1.4rem 1.75rem; font-family: var(--font-display); font-size: 1.1rem; color: var(--dark); position: relative; }
    .szakmai-hatter .szh__summary::-webkit-details-marker { display: none; }
    .szakmai-hatter .szh__summary::after { content: '+'; position: absolute; right: 1.75rem; top: 50%; transform: translateY(-50%); font-family: var(--font-display); font-size: 1.4rem; color: var(--gold-deep); transition: transform 0.25s; }
    .szakmai-hatter[open] .szh__summary::after { transform: translateY(-50%) rotate(45deg); }
    @media (prefers-reduced-motion: reduce) { .szakmai-hatter .szh__summary::after { transition: none; } }
    .szh__body { padding: 0 1.75rem 1.5rem; }
    .szh__row { padding: 0.9rem 0; border-top: 1px solid var(--dark-10); }
    .szh__t { font-family: var(--font-display); font-size: 1rem; color: var(--dark); margin-bottom: 0.35rem; }
    .szh__d { font-size: 0.85rem; line-height: 1.7; color: var(--dark-60); }
    /* footer 4 link-oszlop (IA 6–7.: Kezelések saját oszlop) — saját breakpoint-okkal, hogy a base media-szabályait ne üsse el mobilon */
    .footer__grid { grid-template-columns: 2fr 1fr 1fr 1fr 1fr; }
    @media (max-width: 1080px) { .footer__grid { grid-template-columns: 1fr 1fr; } }
    @media (max-width: 640px) { .footer__grid { grid-template-columns: 1fr; } }
    /* 404-oldal */
    .nf-section { padding: calc(var(--space-xl) + 3rem) 0 var(--space-xl); text-align: center; }
    .nf-section .nf-code { font-family: var(--font-display); font-size: clamp(3.5rem, 10vw, 6rem); color: var(--gold); line-height: 1; }
    .nf-section h1 { font-size: var(--fs-h2); margin: 1rem 0 0.75rem; }
    .nf-section p { max-width: 52ch; margin: 0 auto 2rem; color: var(--dark-60); }
    .nf-section .nf-actions { display: flex; flex-wrap: wrap; gap: 1rem; justify-content: center; }


    /* ═══ NAV-7K — MOBIL HAMBURGER (lyuk #1) ═══
       Asztali: .nav__menu = display:contents → a 3-elemű space-between elrendezés VÁLTOZATLAN; a burger rejtett.
       Mobil (≤680px): a .nav__menu lenyíló panel a nav alatt, a burger nyitja (aria-expanded + Escape + link-klikk zár). */
    .nav__menu { display: contents; }
    .nav__burger { display: none; background: none; border: none; cursor: pointer; padding: 8px; margin-left: auto; -webkit-tap-highlight-color: transparent; }
    .nav__burger span { display: block; width: 22px; height: 2px; background: var(--dark); margin: 4px 0; border-radius: 2px; transition: transform 0.25s, opacity 0.25s; }
    @media (max-width: 680px) {
      .nav__burger { display: block; }
      .nav__menu {
        display: flex; flex-direction: column; gap: 1.5rem; align-items: flex-start;
        position: absolute; top: 100%; left: 0; right: 0;
        background: var(--ivory); border-bottom: 1px solid var(--dark-10);
        padding: 1.5rem 2rem; box-shadow: 0 24px 48px -24px rgba(42,38,32,0.45);
        transform: translateY(-12px); opacity: 0; visibility: hidden;
        transition: transform 0.25s, opacity 0.25s, visibility 0.25s;
      }
      .nav--open .nav__menu { transform: none; opacity: 1; visibility: visible; }
      .nav__links { display: flex; flex-direction: column; gap: 1.25rem; align-items: flex-start; }
      .nav__right { display: flex; flex-direction: column; gap: 1rem; align-items: flex-start; }
      /* cáfoló-kör P1 (kánon LYUK #1): a Konzultáció CTA + lang-switch VISSZA a panelbe — felülírja a base
         ≤680px `.nav__cta{display:none}` + `.lang-switch{display:none}` rejtését (a panelt a .nav__menu visibility kezeli zárva) */
      .nav__cta { display: inline-flex; }
      .nav__right .lang-switch { display: flex; }
      .nav--open .nav__burger span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
      .nav--open .nav__burger span:nth-child(2) { opacity: 0; }
      .nav--open .nav__burger span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }
    }
    @media (prefers-reduced-motion: reduce) { .nav__menu, .nav__burger span { transition: none; } }

    /* ═══ FÁZIS-MÉRŐ (lyuk #4/5 · a "Part of the Protocol" badge helyett) ═══
       Halvány fázis-tónusok (Melinda kérése: arany/rózsás/zöldes) — VIZUÁL NEM VÉGLEGES, Melinda csiszolja.
       7. kör (2026-06-14, Melinda): a ZÖLD KIVÉVE (nem brand). 8. kör (2026-06-16, Melinda): a 3 szín túl hasonló volt,
       jobban szét kell húzni — meleg paletta, zöld NÉLKÜL: Prepare = arany #B89968 · Treat = terrakotta #C0764F ·
       Recover = szilva/mályva #8C5A6E. Három tisztán eltérő meleg árnyalat (sárga / narancs-agyag / rózsa-szilva). */
    :root { --prepare: #B89968; --treat: #C0764F; --recover: #8C5A6E; }
    .stepmeter { display: inline-flex; align-items: center; gap: 0; flex-wrap: wrap; }
    .stepmeter .sm { display: inline-flex; align-items: center; gap: 8px; text-decoration: none; padding-right: 14px; }
    .stepmeter .sm:not(:last-child)::after { content: ""; width: 22px; height: 1px; background: rgba(184,153,104,0.4); margin-left: 4px; }
    .stepmeter .sm i { display: flex; align-items: center; justify-content: center; border-radius: 50%; background: var(--ivory); border: 1.5px solid #D8CDBA; font-family: var(--font-display); font-style: normal; color: #bcb3a4; flex: 0 0 auto; transition: background 0.25s, border-color 0.25s, color 0.25s; }
    .stepmeter .sm:nth-child(1) i { width: 26px; height: 26px; font-size: 12px; }
    .stepmeter .sm:nth-child(2) i { width: 32px; height: 32px; font-size: 14px; }
    .stepmeter .sm:nth-child(3) i { width: 38px; height: 38px; font-size: 16px; }
    .stepmeter .sm b { font-family: var(--font-sans); font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; font-weight: 500; color: #bcb3a4; white-space: nowrap; }
    .stepmeter .sm.on.p i { background: var(--prepare); border-color: var(--prepare); color: #fff; } .stepmeter .sm.on.p b { color: var(--prepare); }
    .stepmeter .sm.on.t i { background: var(--treat); border-color: var(--treat); color: #fff; } .stepmeter .sm.on.t b { color: var(--treat); }
    .stepmeter .sm.on.r i { background: var(--recover); border-color: var(--recover); color: #fff; } .stepmeter .sm.on.r b { color: var(--recover); }
    .stepmeter a.sm { cursor: pointer; }
    a.sm:hover i { transform: translateY(-2px); } a.sm:hover b { text-decoration: underline; }
    /* kattinthatóság-jelzés: az inaktív korong is a saját fázis-színére vált hoverre (Melinda 2026-06-17) */
    .stepmeter a.sm.p:hover i { border-color: var(--prepare); color: var(--prepare); }
    .stepmeter a.sm.t:hover i { border-color: var(--treat); color: var(--treat); }
    .stepmeter a.sm.r:hover i { border-color: var(--recover); color: var(--recover); }
    .stepmeter a.sm.p:hover b { color: var(--prepare); } .stepmeter a.sm.t:hover b { color: var(--treat); } .stepmeter a.sm.r:hover b { color: var(--recover); }
    .stepmeter-label { font-size: 14px; color: var(--mid-gray); letter-spacing: 0.03em; margin-top: 10px; }
    .stepmeter-label b { font-family: var(--font-sans); font-weight: 500; color: var(--dark); }
    @media (max-width: 760px) { .stepmeter .sm b { display: none; } .stepmeter .sm { padding-right: 8px; } .stepmeter .sm:not(:last-child)::after { width: 14px; } }

    /* ═══ HOGYAN ILLESZKEDIK — fázis-idővonal ("itt vagy") ═══ */
    .flow-section { position: relative; overflow: hidden; }
    .flow-wm { position: absolute; right: 4%; top: 50%; transform: translateY(-50%); font-family: var(--font-display); font-size: clamp(8rem, 22vw, 18rem); line-height: 1; color: transparent; -webkit-text-stroke: 1px rgba(184,153,104,0.16); user-select: none; pointer-events: none; z-index: 0; }
    .flow-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; position: relative; margin-top: 8px; z-index: 1; }
    .flow-grid::before { content: ""; position: absolute; top: 21px; left: 14%; right: 14%; height: 1px; background: linear-gradient(90deg, var(--prepare), var(--treat), var(--recover)); }
    .flow-step { text-align: center; padding: 0 12px; text-decoration: none; color: inherit; }
    .flow-step .fdot { width: 44px; height: 44px; border-radius: 50%; border: 1px solid; background: var(--ivory); display: flex; align-items: center; justify-content: center; margin: 0 auto 12px; font-family: var(--font-display); font-size: 14px; position: relative; z-index: 1; }
    .flow-step.p .fdot { border-color: var(--prepare); color: var(--prepare); } .flow-step.t .fdot { border-color: var(--treat); color: var(--treat); } .flow-step.r .fdot { border-color: var(--recover); color: var(--recover); }
    .flow-step .fph { font-size: 12px; letter-spacing: 0.16em; text-transform: uppercase; font-weight: 500; margin-bottom: 5px; }
    .flow-step.p .fph { color: var(--prepare); } .flow-step.t .fph { color: var(--treat); } .flow-step.r .fph { color: var(--recover); }
    .flow-step h3 { font-family: var(--font-display); font-weight: 400; font-size: 1.05rem; margin-bottom: 4px; }
    .flow-step p { font-size: 15px; color: var(--dark-60); line-height: 1.7; }
    a.flow-step:hover .fdot { transform: translateY(-2px); box-shadow: 0 6px 16px rgba(42,38,32,0.1); }
    .flow-step.me .fdot { box-shadow: 0 0 0 0 rgba(184,153,104,0.5); animation: dotpulse 2.6s ease-in-out infinite; position: relative; }
    .flow-step.me .fdot::after { content: "Itt vagy"; position: absolute; bottom: calc(100% + 8px); left: 50%; transform: translateX(-50%); background: var(--dark); color: var(--ivory); font-family: var(--font-sans); font-size: 10px; letter-spacing: 0.08em; text-transform: uppercase; font-weight: 500; padding: 4px 10px; border-radius: 999px; white-space: nowrap; }
    @keyframes dotpulse { 0%,100% { box-shadow: 0 0 0 0 rgba(184,153,104,0.45); } 50% { box-shadow: 0 0 0 7px rgba(184,153,104,0); } }
    @media (prefers-reduced-motion: reduce) { .flow-step.me .fdot { animation: none; } }
    @media (max-width: 760px) { .flow-grid { grid-template-columns: 1fr; gap: 1.5rem; } .flow-grid::before { display: none; } .flow-wm { display: none; } }

    /* ═══ MIVEL KOMBINÁLHATÓ — építőkő-kártyák (kereszt-link) ═══ */
    .combo-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-top: var(--space-md); }
    .combo-card { position: relative; overflow: hidden; background: var(--highlight); border-radius: 12px; padding: 16px 18px; text-decoration: none; color: inherit; transition: transform 0.2s, box-shadow 0.2s; display: block; }
    .combo-card::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: var(--gold-pale); }
    .combo-card.ph-p::before { background: var(--prepare); } .combo-card.ph-t::before { background: var(--treat); } .combo-card.ph-r::before { background: var(--recover); }
    .combo-card__num { position: absolute; top: 12px; right: 16px; font-family: var(--font-display); font-size: 2rem; line-height: 1; opacity: 0.3; }
    .combo-card.ph-p .combo-card__num { color: var(--prepare); } .combo-card.ph-t .combo-card__num { color: var(--treat); } .combo-card.ph-r .combo-card__num { color: var(--recover); }
    .combo-card:hover { transform: translateY(-3px); box-shadow: 0 12px 28px rgba(42,38,32,0.08); }
    .combo-card .ck { font-size: 10.5px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--gold-deep); font-weight: 500; }
    .combo-card .ck.p { color: var(--prepare); } .combo-card .ck.t { color: var(--treat); } .combo-card .ck.r { color: var(--recover); }
    .combo-card h3 { font-family: var(--font-display); font-weight: 400; font-size: 1.05rem; margin: 4px 0; }
    .combo-card p { font-size: 12.5px; color: var(--dark-60); line-height: 1.55; }
    .combo-card .cgo { font-size: 12.5px; color: var(--gold-deep); font-weight: 500; margin-top: 8px; display: inline-block; }
    @media (max-width: 760px) { .combo-grid { grid-template-columns: 1fr; } }
    .combo-note { text-align: center; margin: 1.4rem auto 0; max-width: 60ch; font-size: 0.92rem; line-height: 1.7; color: rgba(42,38,32,0.78); }
    .combo-note b { color: var(--dark); font-weight: 600; }
    .combo-note a { color: var(--gold-deep); text-decoration: none; border-bottom: 1px solid rgba(184,153,104,0.4); }
    .combo-note a:hover { border-bottom-color: var(--gold-deep); }

    /* ═══ ÁR-SÁV (pricebar) ═══ */
    .pricebar { display: flex; justify-content: space-between; align-items: center; gap: 20px; background: var(--ivory); border: 1px solid var(--dark-10); border-radius: 14px; padding: 22px 26px; flex-wrap: wrap; }
    .pricebar .pb-price { font-family: var(--font-display); font-size: 1.4rem; color: var(--gold-deep); }
    .pricebar .pb-price small { display: block; font-family: var(--font-sans); font-size: 12px; color: var(--mid-gray); }

    /* ═══ SPEC-KAPSZULA (hero pill-ek) ═══ */
    .spec-caps { display: flex; flex-wrap: wrap; gap: 8px; margin: 1.25rem 0 0; justify-content: center; }
    .spec-caps span { background: var(--ivory); border: 1px solid var(--dark-10); border-radius: 999px; padding: 9px 15px; font-size: 13px; }
    .spec-caps b { font-family: var(--font-display); color: var(--gold-deep); }

    /* ═══ GYIK 3+lenyíló ("További kérdések") ═══ */
    .faq-more[hidden] { display: none; }
    .faq-more-toggle { background: none; border: none; cursor: pointer; font-family: var(--font-sans); font-weight: 500; color: var(--gold-deep); border-bottom: 1px solid rgba(184,153,104,0.5); padding: 0 0 2px; margin-top: 1.25rem; font-size: 0.9rem; }

    /* ═══ TREATMENT-HERO (7-blokkos kezelés-oldal hero — EGYOSZLOPOS, középre rendezett, fotóhely nélkül) ═══ */
    .treatment-hero { padding: calc(var(--space-xl) + 1rem) 0 var(--space-lg); }
    .treatment-hero--center .th-text { max-width: 52rem; margin: 0 auto; text-align: center; }
    .th-cat { margin-bottom: 1rem; }
    .th-h1 { font-family: var(--font-display); font-weight: 400; font-size: clamp(2rem, 4.4vw, 3.1rem); line-height: 1.13; margin-bottom: 0.4rem; overflow-wrap: break-word; text-wrap: balance; }
    .th-h1 em { font-style: normal; color: var(--gold-deep); }
    .th-alt { font-size: 13px; letter-spacing: 0.06em; color: var(--gold-deep); font-weight: 500; margin-bottom: 1.1rem; }
    .th-lead { color: var(--dark-60); font-size: 15px; line-height: 1.65; margin-bottom: 1.4rem; max-width: 46ch; margin-left: auto; margin-right: auto; }
    .treatment-hero--center .spec-caps { justify-content: center; margin: 0 auto 1.5rem; }
    .treatment-hero--center .stepmeter { margin: 0.25rem auto 0; }
    .th-cta { margin-top: 1.5rem; }


    .mi-split{display:grid;grid-template-columns:1.05fr .95fr;gap:3rem;align-items:center;max-width:64rem;margin:0 auto}
    .mi-split .mi-text .label{margin-bottom:.6rem}
    .mi-split .mi-text h2{font-family:var(--font-display);font-weight:400;margin:0 0 1rem;line-height:1.15}
    .mi-split .mi-text p{color:rgba(42,38,32,0.82);line-height:1.7;margin:0 0 1rem;font-size:0.98rem}
    .mi-photo{aspect-ratio:4/5;border-radius:16px;background:linear-gradient(160deg,#F4EDE2,#EAE0D2);border:1px solid rgba(184,153,104,0.3);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.55rem;box-shadow:inset 0 0 0 1px rgba(255,255,255,0.45)}
    .mi-photo svg{width:30px;height:30px;stroke:var(--gold-deep);fill:none;stroke-width:1.1;opacity:.65}
    .mi-photo span{font-size:0.64rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-deep);opacity:.8}
    .mi-photo--img{aspect-ratio:auto;background:none;box-shadow:none;overflow:hidden;padding:0;border-radius:16px;align-self:center}
    .mi-photo--img img{width:100%;height:auto;display:block}
    @media(max-width:820px){.mi-split{grid-template-columns:1fr;gap:1.8rem}.mi-photo{max-width:22rem;width:100%;margin:0 auto}}
    .kstep-list{max-width:60rem;margin:2.5rem auto 0}
    .kstep{display:grid;grid-template-columns:auto 1fr;gap:1.8rem;align-items:start;padding:1.7rem 0;border-top:1px solid var(--dark-10)}
    .kstep:last-child{border-bottom:1px solid var(--dark-10)}
    .kstep__n{font-family:var(--font-display);font-size:2.3rem;line-height:1;color:rgba(184,153,104,0.5);min-width:2.6rem}
    .kstep__t{font-family:var(--font-display);font-weight:400;font-size:1.25rem;margin:.15rem 0 .45rem;line-height:1.2}
    .kstep__d{color:rgba(42,38,32,0.82);line-height:1.66;font-size:0.96rem;margin:0}
    .bft{max-width:64rem;margin:2.5rem auto 0;display:flex;flex-direction:column;gap:1.5rem}
    .bft-row{display:grid;grid-template-columns:1fr 1fr;border-radius:16px;overflow:hidden;border:1px solid rgba(184,153,104,0.22)}
    .bft-row__text{background:var(--cream);padding:2.6rem 2.4rem;display:flex;flex-direction:column;justify-content:center}
    .bft-row__ico{width:48px;height:48px;border-radius:50%;border:1px solid rgba(184,153,104,0.55);display:flex;align-items:center;justify-content:center;margin-bottom:1.1rem}
    .bft-row__ico svg{width:23px;height:23px;stroke:var(--gold-deep);fill:none;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
    .bft-row__t{font-family:var(--font-display);font-weight:400;font-size:1.42rem;line-height:1.15;margin:0 0 .85rem;color:var(--dark)}
    .bft-row__divider{width:36px;height:1px;background:var(--gold);margin:0 0 1.05rem}
    .bft-row__d{color:rgba(42,38,32,0.8);line-height:1.7;font-size:0.98rem;margin:0}
    .bft-row__more{display:inline-block;margin-top:1.1rem;font-size:0.8rem;letter-spacing:.03em;color:var(--gold-deep);text-decoration:none;border-bottom:1px solid rgba(184,153,104,0.45);padding-bottom:2px;transition:border-color .2s}
    .bft-row__more:hover{border-color:var(--gold-deep)}
    .bft-row__photo{background:linear-gradient(160deg,#EEE6D9,#E2D8C8);min-height:300px;display:flex;align-items:center;justify-content:center;overflow:hidden}
    .bft-row__photo span{font-size:0.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-deep);opacity:.75}
    .bft-row__photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.1s cubic-bezier(.22,.61,.36,1),filter .6s ease;filter:saturate(0.92) brightness(0.98)}
    .bft-row--img:hover .bft-row__photo img{transform:scale(1.06);filter:saturate(1) brightness(1.05)}
    .bft-row:nth-child(even) .bft-row__text{order:2}
    @media(max-width:760px){.bft-row{grid-template-columns:1fr}.bft-row:nth-child(even) .bft-row__text{order:0}.bft-row__photo{min-height:220px}}
    /* MOBIL: ahol valódi kép van, a szöveg világos fátylon ül a képen (Melinda választása: 3-as) — 2026-06-18 */
    @media(max-width:760px){
      .bft-row--img{position:relative;border:none;min-height:340px}
      .bft-row--img .bft-row__photo{position:absolute;inset:0;min-height:0}
      .bft-row--img .bft-row__photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,250,243,0.35) 0%,rgba(255,250,243,0.85) 100%);transition:opacity .55s ease}
      .bft-row--img:active .bft-row__photo::after{opacity:0.45}
      .bft-row--img:active .bft-row__photo img{transform:scale(1.04)}
      .bft-row--img .bft-row__text{position:relative;z-index:1;order:0;background:transparent;justify-content:flex-end;padding:1.6rem 1.5rem}
      .bft-row--img .bft-row__t{color:var(--dark)}
      .bft-row--img .bft-row__d{color:rgba(42,38,32,0.85)}
      .bft-row--img .bft-row__ico{border-color:rgba(184,153,104,0.6);background:rgba(255,255,255,0.4)}
      .bft-row--img .bft-row__ico svg{stroke:var(--gold-deep)}
      .bft-row--img .bft-row__divider{background:var(--gold)}
    }
    .chl-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;max-width:64rem;margin:2.5rem auto 0}
    .chl-card{background:#fff;border:1px solid var(--dark-10);border-radius:16px;padding:2.1rem 2rem;display:flex;flex-direction:column}
    .chl-card__head{display:flex;gap:1rem;align-items:flex-start;margin-bottom:.9rem}
    .chl-card__n{font-family:var(--font-display);font-size:1.7rem;line-height:1;color:rgba(184,153,104,0.55);flex:none}
    .chl-card__t{font-family:var(--font-display);font-weight:400;font-size:1.32rem;line-height:1.15;margin:0 0 .25rem}
    .chl-card__k{font-size:0.64rem;letter-spacing:.13em;text-transform:uppercase;color:var(--gold-deep);margin:0}
    .chl-card__d{color:rgba(42,38,32,0.74);line-height:1.65;font-size:0.95rem;margin:0 0 1.1rem}
    .chl-card__sol{border-left:2px solid var(--gold);background:var(--cream);border-radius:0 10px 10px 0;padding:.95rem 1.15rem;color:rgba(42,38,32,0.82);line-height:1.6;font-size:0.92rem;margin-top:auto}
    @media(max-width:760px){.chl-grid{grid-template-columns:1fr}}


    :root{
      --dark-60: rgba(42,38,32,0.88);   /* body-szöveg: 0.72 → 0.88 (olvashatóbb) */
      --dark-30: rgba(42,38,32,0.6);    /* meta/kistext: 0.46 → 0.6 */
      --mid-gray: #6E6759;              /* halvány szürke → sötétebb, kontrasztosabb */
    }
    /* Komponens-szövegek, amelyek fix rgba-t használnak (nem tokenből) — egységesen sötétebbre */
    .bft-row__d, .kstep__d, .mi-split .mi-text p, .chl-card__d, .hub-card__d { color: rgba(42,38,32,0.9) !important; }
    .bft-row__photo span, .mi-photo span { color: var(--gold-deep); opacity: 1; }
    /* Sötét „statement" sáv — vizuális ritmus + magas kontraszt (Melinda 2026-06-17) */
    .statement-band { background: var(--dark); padding: var(--space-xl) 0; text-align: center; }
    .statement-band .container { max-width: 46rem; }
    .statement-band .label { color: var(--gold-light); }
    .statement-band__t { font-family: var(--font-display); font-weight: 400; font-size: clamp(1.45rem, 3vw, 2.25rem); line-height: 1.32; color: #F3ECDF; margin: 1rem auto 0; text-wrap: balance; }
    .statement-band__t em { color: var(--gold-light); font-style: normal; }
    .statement-band__cta { display: inline-block; margin-top: 1.5rem; font-family: var(--font-sans); font-size: 0.9rem; letter-spacing: 0.03em; color: var(--gold-light); text-decoration: none; border-bottom: 1px solid rgba(212,176,119,0.5); padding-bottom: 3px; transition: border-color 0.2s, color 0.2s; }
    .statement-band__cta:hover { color: #F3ECDF; border-color: #F3ECDF; }


    /* === Robusztusság + Melinda mobil-fix — a port során a megosztott rétegbe emelve (2026-06-27) === */
    /* qf-ikonok méretezése itt, NEM csak az oldal-egyedi inline blokkban (egyes export-oldalak — pl. ultima-shape — kihagyták → óriás ikon). */
    .qf-ico { width: 14px; height: 14px; flex: none; }
    .qf-item > svg { width: 14px; height: 14px; flex: none; }
    /* Mobil: inline fix-px rácsok egyoszloposra + képek skálázása (Melinda, e73be8a5). */
    @media (max-width: 768px) {
      [style*="grid-template-columns"] { grid-template-columns: 1fr !important; }
      .pphase-grid, .obs-split { grid-template-columns: 1fr !important; }
      .pphase-grid > *, .obs-split > * { min-width: 0 !important; }
      img { max-width: 100% !important; height: auto !important; }
      /* .photo helyőrző: a min-height:240px + inline aspect-ratio:16/9 kombó 426,7px intrinzik
         szélességet kényszerít → 390-es viewport szétfeszül (14 blog-oldal, CDP-mért, PRE-EXISTING).
         Mobilon a ratio-s helyőrzőnél a min-height enged, a ratio megmarad (2026-07-02). */
      .photo[style*="aspect-ratio"] { min-height: 0; }
    }
    /* === A11y kontraszt-emelés (2026-07-14 cáfoló-kör): WCAG AA 4,5:1 alá esett szövegek ===
       - .cta-banner__subtitle: rgba(255,255,255,.45) = 4,25:1 a sötét sávon → .62
       - .jtl-combo__label: 9,6px uppercase rgba(80,70,55,.45) ≈ 2,2:1 → .78 (inline-t üt, ezért !important)
       - .wave-no: 1,69:1, közel láthatatlan „–" a hasonlító-táblában → .55 */
    .cta-banner__subtitle { color: rgba(255,255,255,0.62); }
    .jtl-combo__label { color: rgba(80,70,55,0.78) !important; }
    .wave-no { color: rgba(42,38,32,0.55); }


/* — Inline CTA strip: light ivory band + gold dust + cursor light — */
.cta-strip{position:relative;overflow:hidden;background:var(--ivory);border-top:1px solid rgba(184,153,104,.4);border-bottom:1px solid rgba(184,153,104,.4);}
.cta-strip::before{content:"";position:absolute;inset:0;background:radial-gradient(220px 220px at var(--mx,50%) var(--my,50%),rgba(184,153,104,.16),transparent 70%);opacity:0;transition:opacity .5s ease;pointer-events:none;z-index:1;}
.cta-strip:hover::before{opacity:1;}
.cta-strip__fx{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1;}
.cta-strip .container{position:relative;z-index:2;}
.cta-strip__lead{position:relative;padding-left:1.2rem;}
.cta-strip__lead::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:1.5em;border-radius:3px;background:linear-gradient(180deg,var(--gold-light),var(--gold));box-shadow:0 0 12px rgba(184,153,104,.45);}
.cta-strip__kick{display:block;font-family:var(--font-sans,'Mulish',sans-serif);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:#a0803d;font-weight:600;margin-bottom:.45rem;}
@media (prefers-reduced-motion:reduce){.cta-strip__fx{display:none;}}
.btn-liquid{position:relative;overflow:hidden;border:none;color:#2a2208 !important;background:linear-gradient(100deg,#8a6d34,#d9b76a 18%,#f3e2af 32%,#c79a4f 48%,#e7c97f 64%,#a87f3c 82%,#d9b76a);background-size:300% 100%;animation:liquidflow 7s ease-in-out infinite;box-shadow:0 1px 0 rgba(255,250,230,.6) inset,0 -2px 6px rgba(90,60,15,.3) inset,0 8px 22px rgba(140,100,30,.35);text-shadow:0 1px 0 rgba(255,250,230,.45);transition:transform .25s cubic-bezier(.2,.8,.2,1),box-shadow .25s;will-change:transform;}
.btn-liquid:hover{background:linear-gradient(100deg,#8a6d34,#d9b76a 18%,#f3e2af 32%,#c79a4f 48%,#e7c97f 64%,#a87f3c 82%,#d9b76a);box-shadow:0 1px 0 rgba(255,250,230,.75) inset,0 -2px 8px rgba(90,60,15,.4) inset,0 12px 30px rgba(140,100,30,.5);}
@keyframes liquidflow{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
.btn-liquid::after{content:"";position:absolute;top:0;bottom:0;left:-60%;width:42%;background:linear-gradient(105deg,transparent,rgba(255,252,240,.7),transparent);transform:skewX(-18deg);animation:liquidsheen 4.2s ease-in-out infinite;pointer-events:none;}
@keyframes liquidsheen{0%,52%{left:-60%}100%{left:150%}}
/* — Statement band: tiszta fotó + keskeny lágy csík — */
.sb-rich{position:relative;overflow:hidden;background:var(--dark);display:flex;align-items:center;min-height:440px;padding:0;text-align:left;}
.sb-rich .sb-photo{position:absolute;top:0;right:0;bottom:0;width:56%;overflow:hidden;}
.sb-rich .sb-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 14%;}
.sb-rich .sb-seam{position:absolute;top:0;bottom:0;left:32%;width:36%;background:linear-gradient(to right,var(--dark) 0%,var(--dark) 40%,rgba(42,38,32,0) 100%);pointer-events:none;z-index:1;}
.sb-rich .sb-text{position:relative;z-index:2;max-width:30rem;margin:0;text-align:left;}
.sb-rich .sb-text .statement-band__t{margin-left:0;margin-right:0;}
@media(max-width:820px){
  .sb-rich{flex-direction:column;align-items:stretch;min-height:0;}
  .sb-rich .sb-photo{position:relative;width:100%;height:300px;}
  .sb-rich .sb-photo img{object-position:center 12%;}
  .sb-rich .sb-seam{top:160px;bottom:auto;left:0;right:0;width:auto;height:150px;background:linear-gradient(to bottom,rgba(42,38,32,0) 0%,var(--dark) 86%);}
  .sb-rich .sb-text{margin-top:0;padding-bottom:2.6rem;text-align:left;}
}
/* — Team cards — */
.vteam-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.6rem;max-width:42rem;margin:2.2rem auto 0;}
.vteam-card__pic{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 18%;border-radius:14px;display:block;margin-bottom:1rem;}
.vteam-card__role{display:block;font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:.4rem;}
.vteam-card__n{font-family:'Marcellus',Georgia,serif;font-size:1.1rem;color:var(--dark);margin:0 0 .5rem;line-height:1.25;}
.vteam-card__t{font-size:.85rem;color:var(--dark-60);line-height:1.55;margin:0 0 .8rem;}
.vteam-card__go{font-size:.78rem;letter-spacing:.04em;color:var(--gold);font-weight:600;text-decoration:none;}
.vteam-card__go:hover{color:var(--dark);}
@media(max-width:560px){.vteam-grid{grid-template-columns:1fr;gap:1.4rem;max-width:24rem;}}

/* — Ultima step photo cards — */
.ufstep-grid{margin-top:1.4rem !important;}
.ufstep{aspect-ratio:3/4;}
@media(max-width:560px){.ufstep-grid{max-width:420px;grid-template-columns:1fr !important;}.ufstep{aspect-ratio:16/10;}}

/* === Globális tömör függőleges ritmus — minden oldalra (kérésre) === */
.faq-section,.cta-banner,.lead-magnet{padding-top:36px;padding-bottom:36px;}
.faq-list{margin-top:1.6rem;}
.divider--center{margin-top:.7rem;margin-bottom:.7rem;}
.need-grid,.bft-mini,.bft,.kstep-list{margin-top:1.4rem;}
.vteam-grid,.jtl{margin-top:1.6rem;}
.szh__body{padding-top:0;}
@media(max-width:760px){.faq-section,.cta-banner,.lead-magnet{padding-top:26px;padding-bottom:26px;}}
/* SZABÁLY: a "Lépésről lépésre" (és hasonló) fotós lépés-kártyák mobilon SOHA nem egymás mellett — mindig egymás alá, 1 oszlopban — 2026-06-28 */
@media(max-width:760px){.kstep-photogrid{grid-template-columns:1fr !important;max-width:380px !important;margin-left:auto !important;margin-right:auto !important;}}
/* — GLOBÁLIS qf-strip (gyors-tények csík) — minden kezelés-oldalra, hogy a piktogramok ne legyenek óriások — */
.qf-strip{background:var(--dark,#2A2620);border-top:1px solid rgba(184,153,104,.15);border-bottom:1px solid rgba(184,153,104,.15);padding:.9rem 0;}
.qf-strip__inner{max-width:900px;margin:0 auto;padding:0 1.5rem;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.5rem .1rem;}
.qf-item{display:flex;align-items:center;gap:.45rem;padding:.3rem .8rem;color:rgba(247,242,235,.65);}
.qf-ico{width:14px;height:14px;flex-shrink:0;stroke:var(--gold);}
.qf-label{font-size:.72rem;letter-spacing:.06em;color:rgba(247,242,235,.65);white-space:nowrap;}
.qf-sep{width:1px;height:14px;background:rgba(184,153,104,.25);flex-shrink:0;margin:0 .1rem;}

/* ── NAV DROPDOWNS ─── */
.nav__has-sub{position:relative}
.nav__has-sub > .nav__link::after{content:"▾";font-size:.7em;margin-left:.35em;opacity:.7;display:inline-block}
.nav__sub{list-style:none;position:absolute;top:100%;left:0;width:max-content;min-width:180px;max-width:280px;background:rgba(253,250,246,.98);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(42,38,32,.08);border-radius:10px;box-shadow:0 16px 40px rgba(42,38,32,.14);padding:.5rem;margin:.4rem 0 0;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .2s ease,transform .2s ease,visibility .2s;z-index:120}
.nav__has-sub:hover .nav__sub,.nav__has-sub:focus-within .nav__sub{opacity:1;visibility:visible;transform:translateY(0)}
.nav__sublink{display:block;padding:.55rem .7rem;border-radius:7px;font-size:.78rem;letter-spacing:.04em;color:#2A2620;text-decoration:none;transition:background .15s ease,color .15s ease}
.nav__sublink:hover{background:#F0E6D6;color:#806844}
@media(max-width:860px){.nav__sub{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:none;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;padding:.2rem 0 .2rem 1rem;margin:.2rem 0}.nav__has-sub > .nav__link::after{display:none}}

/* — Tiszta hozzáadások (a generátor rétegeiből hiányoztak, csak Melinda v3-jában voltak) — */
    /* Hero másodlagos „Vissza a kezelésekhez" — mindig kisebb, visszafogott (mobilon is) */
    .v5-hero__actions .btn-ghost, .th-cta .btn-ghost { font-size: 0.74rem; letter-spacing: 0.04em; padding: 0.5rem 1rem; }
    /* Az eredmény íve — végigfutó vonal + sorban kizoomoló pöttyök (Melinda 2026-06-28) */
    .jtl::after { content: ""; position: absolute; top: 50%; left: var(--htl-edge, 8%); height: 2px; width: 0; transform: translateY(-50%); background: linear-gradient(90deg, var(--prepare), var(--treat) 50%, var(--recover)); box-shadow: 0 0 10px rgba(184,153,104,0.55); border-radius: 2px; opacity: 0; transition: width 2s cubic-bezier(.4,0,.1,1), opacity .4s ease; pointer-events: none; z-index: 0; }
    .jtl.is-live::after { width: calc(100% - 2 * var(--htl-edge, 8%)); opacity: 1; }
    .jtl-dot { transition: transform .5s ease, box-shadow .5s ease; }
    .jtl.is-live .jtl-dot { animation: jtlPop .8s cubic-bezier(.34,1.4,.5,1) var(--jtl-d, 0s) both; }
    .jtl.is-live .jtl-dot::after { animation: jtlRing 1s ease-out var(--jtl-d, 0s) both; }
    .jtl-item:nth-child(1) { --jtl-d: .15s; } .jtl-item:nth-child(2) { --jtl-d: .6s; } .jtl-item:nth-child(3) { --jtl-d: 1.05s; } .jtl-item:nth-child(4) { --jtl-d: 1.5s; }
    @keyframes jtlPop { 0% { transform: scale(1.7); box-shadow: 0 0 0 4px rgba(184,153,104,0.3); } 55% { transform: scale(.9); } 100% { transform: scale(1); box-shadow: 0 0 0 0 rgba(184,153,104,0); } }
    @keyframes jtlRing { 0% { transform: scale(.5); opacity: .85; border-color: var(--gold); } 100% { transform: scale(2); opacity: 0; border-color: var(--gold); } }
    @media (max-width: 820px) {
      .jtl::after { top: 6px; bottom: auto; left: 5px; right: auto; width: 1px !important; height: 0; transform: none; background: linear-gradient(180deg, var(--prepare), var(--treat), var(--recover)); transition: height 2s cubic-bezier(.4,0,.1,1), opacity .4s ease; }
      .jtl.is-live::after { height: calc(100% - 12px); width: 1px !important; }
    }
    @media (prefers-reduced-motion: reduce) {
      .jtl::after { transition: none; width: calc(100% - 2 * var(--htl-edge, 8%)); opacity: 1; }
      .jtl.is-live .jtl-dot, .jtl.is-live .jtl-dot::after { animation: none; }
    }

/* — Megosztott-réteg → a JÓVÁHAGYOTT Melinda v3-export értékére igazítva — */
    .divider { margin: 0.8rem 0; }
    /* a fenti shorthand a --center auto-ját is kinullázná (cáfoló-kör P1, 2026-07-02: 528 hely / 99 oldal) →
       a --center kaszkád-győztese explicit a Melinda-végérték: 0.7rem függőleges + auto középre */
    .divider--center { margin: 0.7rem auto; }
    .tech-section { padding: 36px 0; }
    @media (max-width: 760px) { .tech-section { padding: 26px 0; } }
    .szakmai-hatter .szh__summary { cursor: pointer; list-style: none; padding: 0.85rem 3rem 0.85rem 1.4rem; font-family: var(--font-display); font-size: 0.98rem; color: var(--dark); position: relative; }
    .th-cta { margin-top: 0.4rem; display: flex; gap: 0.8rem; flex-wrap: wrap; justify-content: center; align-items: center; }
    /* btn-glow: PULZÁLÓ (Krisztián-döntés 2026-07-02) — a V7-réteg btn-pulse animációja él,
       itt nincs felülírás. (A v3-export statikusa 2026-07-01–02 között élt, tudatosan leváltva.) */
