/* happyteeth.hu — konverziós landing-réteg (2026-09-02, a felhasználó
   konverziós briefjei alapján, lásd CLAUDE.md "Landing-oldal —
   konverziós brief"). A MEGOSZTOTT style.css tokenjeire épül a
   bejelentkező kártyánál (--accent, .btn, .auth-card — VÁLTOZATLANUL,
   hogy a belépés ugyanúgy nézzen ki, mint mindenhol az appban), de a
   marketing-részekhez SAJÁT palettát és gomb-osztályt (.mkt-btn)
   használ, hogy a landing arculata NE írja felül a teljes app UI-ját.

   Paletta: PONTOSAN a felhasználó által megadott tokenek (nem
   ad-hoc hex a komponensekben) — lásd CLAUDE.md a kontraszt-mérési
   eredményekért (WCAG AA). */

:root{
  --mkt-brand-50:#F1F8FD;
  --mkt-brand-100:#DCEEFA;
  --mkt-brand-200:#B8DBF3;
  --mkt-brand-300:#7FBEE8;
  --mkt-brand-400:#4A9BD6;
  --mkt-brand-500:#2E7FBE;
  --mkt-brand-600:#1F639C;
  --mkt-brand-700:#17507F;
  --mkt-canvas:#FBFAF7;
  --mkt-surface:#FFFFFF;
  --mkt-ink:#0E2436;
  --mkt-ink-soft:#4A6072;
  --mkt-accent:#E8734A;
  --mkt-growth:#17916F;
  --mkt-display-font:"Fraunces","Georgia",serif;
  --mkt-ease:cubic-bezier(0.16,1,0.3,1);
}

body{background:var(--bg);}

/* ---------- gombok ---------- */
.mkt-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
  padding:.85rem 1.6rem;border-radius:10px;font-weight:700;font-size:.98rem;
  border:1.5px solid transparent;cursor:pointer;font-family:inherit;
  transition:background-color .12s ease-out,border-color .12s ease-out,transform .12s ease-out,box-shadow .12s ease-out;
  text-decoration:none;white-space:nowrap;position:relative;
}
.mkt-btn:hover{transform:translateY(-1px);}
.mkt-btn:active{transform:scale(.98) translateY(0);}
.mkt-btn-primary{background:var(--mkt-brand-700);color:#fff;box-shadow:0 1px 2px rgba(14,36,54,.15);}
.mkt-btn-primary:hover{background:var(--mkt-brand-600);}
/* fehér-alapú változat sötét (--mkt-ink) hátterű szekciókhoz — így a
   gomb SOHA nem a tiltott korall-akcentussal fest, mindig a
   brand-700 "család" tagja marad, csak invertálva a sötét blokkon. */
.mkt-btn-primary-inverse{background:#fff;color:var(--mkt-brand-700);box-shadow:0 1px 2px rgba(0,0,0,.15);}
.mkt-btn-primary-inverse:hover{background:var(--mkt-brand-50);}
/* nav / másodlagos gomb — körvonalas, hogy a hero elsődleges gombja
   maradjon az egyetlen kitöltött, "hangos" CTA a nyitó képernyőn. */
.mkt-btn-secondary{background:transparent;border-color:var(--mkt-brand-600);color:var(--mkt-brand-700);}
.mkt-btn-secondary:hover{background:var(--mkt-brand-50);}
.mkt-btn-ghost-dark{background:transparent;border-color:var(--line);color:var(--ink);}
.mkt-btn-ghost-dark:hover{background:var(--surface-2);}
.mkt-btn[disabled]{opacity:.55;cursor:default;transform:none;}
.mkt-btn-sm{padding:.55rem 1.15rem;font-size:.85rem;}
.mkt-btn-spin{
  display:inline-block;width:14px;height:14px;border-radius:50%;
  border:2px solid currentColor;border-top-color:transparent;
  animation:mkt-spin .6s linear infinite;
}
@keyframes mkt-spin{ to{transform:rotate(360deg);} }

/* ---------- nav ---------- */
.mkt-nav{
  position:sticky;top:0;z-index:50;
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
  padding:1.1rem 1.5rem;background:transparent;
  transition:background-color .2s ease-out,box-shadow .2s ease-out,border-color .2s ease-out;
  border-bottom:1px solid transparent;
}
/* SZÁNDÉKOSAN nincs backdrop-blur — a felhasználó explicit kérésére,
   teljesítmény miatt. Egyszerű, tömör háttérszín scroll után. */
.mkt-nav.is-solid{background:var(--mkt-canvas);border-bottom-color:var(--line);box-shadow:var(--shadow);}
.mkt-nav-inner{max-width:1180px;margin:0 auto;width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;}
.mkt-nav .mkt-brand{display:flex;align-items:center;gap:.55rem;font-weight:800;font-size:1.05rem;color:var(--mkt-ink);}
.mkt-nav .mkt-logo-img{width:30px;height:30px;border-radius:7px;display:block;}
.mkt-nav-links{display:flex;align-items:center;gap:1.5rem;}
.mkt-nav-links a{color:var(--mkt-ink-soft);text-decoration:none;font-size:.9rem;font-weight:600;}
.mkt-nav-links a:hover{color:var(--mkt-ink);}
.mkt-nav-cta-row{display:flex;align-items:center;gap:1.1rem;}

/* "Regisztráció"/"Belépés" legördülők (2026-09-04) — a Clerri mintáját
   követve: a nav-ból választva páciens/rendelő között, NEM egy azonnal
   látható, funkcionális bejelentkező kártya a hero-ban. */
.mkt-nav-dropdown{position:relative;}
.mkt-nav-dropdown-trigger{
  background:none;border:none;padding:.3rem 0;color:var(--mkt-ink-soft);text-decoration:none;
  font-size:.85rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:.35rem;font-family:inherit;
}
.mkt-nav-dropdown-trigger:hover{color:var(--mkt-ink);}
.mkt-nav-caret{font-size:.55rem;}
.mkt-nav-dropdown-panel{
  position:absolute;top:calc(100% + 10px);right:0;background:var(--mkt-surface);border:1px solid var(--line);
  border-radius:var(--radius);box-shadow:var(--shadow-lg);min-width:180px;overflow:hidden;z-index:40;
}
.mkt-nav-dropdown-item{
  display:block;width:100%;background:none;border:none;text-align:left;padding:.75rem 1rem;
  font-size:.85rem;font-family:inherit;color:var(--mkt-ink);cursor:pointer;
}
.mkt-nav-dropdown-item:hover{background:var(--mkt-brand-50);}
@media (max-width:860px){
  .mkt-nav-links{display:none;}
}
/* Mobilon a "Regisztráció ▾"/"Belépés ▾" legördülők + a "Kérek egy
   bemutatót" gomb már nem fér el egy sorban a márkajelzés mellett
   (2026-09-04, valódi túlcsordulás — Playwright-tesztelés közben
   találtuk meg). A nav-beli elsődleges CTA-gomb keskeny képernyőn
   elrejtve — a hero SAJÁT, közvetlenül a nav alatt látható elsődleges
   CTA-ja ÉS a görgetés után megjelenő mkt-sticky-cta sáv (lásd
   initScrollBehaviour()) így is lefedi ugyanezt a célt, a brief
   "legalább 5 CTA-hely" előírása (7 hely) a DOM-ban változatlanul
   megvan, csak ezen a szélességen egy vizuálisan elrejtett példány. */
@media (max-width:560px){
  .mkt-nav{padding:.9rem 1rem;}
  .mkt-nav-cta-row{gap:.5rem;}
  .mkt-nav-dropdown-trigger{font-size:.8rem;gap:.25rem;}
  .mkt-nav-cta-row > .mkt-btn{display:none;}
}

/* ---------- hero — világos vászon-háttér, a sötét blokk csak a záró CTA-nál ---------- */
.mkt-hero{background:var(--mkt-canvas);}
.mkt-hero-grid{
  max-width:1180px;margin:0 auto;padding:2.5rem 1.5rem 3.5rem;
  display:grid;grid-template-columns:1.15fr .85fr;gap:3rem;align-items:start;
}
.mkt-hero-copy .mkt-eyebrow{
  display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
  color:var(--mkt-brand-700);background:var(--mkt-brand-100);padding:.35rem .8rem;border-radius:999px;margin-bottom:1.2rem;
}
.mkt-hero-copy h1{
  font-family:var(--mkt-display-font);font-size:clamp(2.1rem,4.4vw,3.2rem);line-height:1.08;
  margin:0 0 1.1rem;font-weight:600;letter-spacing:-.01em;color:var(--mkt-ink);
}
.mkt-hero-copy p.mkt-sub{font-size:1.08rem;color:var(--mkt-ink-soft);line-height:1.6;margin:0 0 1.9rem;max-width:52ch;}
.mkt-hero-copy .cta-row{display:flex;gap:.9rem;flex-wrap:wrap;margin-bottom:2.2rem;}

.mkt-counter-widget{
  background:var(--mkt-surface);border:1px solid var(--line);border-radius:14px;padding:1.1rem 1.3rem;
  max-width:420px;box-shadow:var(--shadow);
}
.mkt-counter-label{font-size:.8rem;color:var(--mkt-ink-soft);margin-bottom:.3rem;}
.mkt-counter-value{font-family:var(--mkt-display-font);font-size:1.9rem;font-weight:600;color:var(--mkt-ink);font-variant-numeric:tabular-nums;}
.mkt-counter-disclaimer{font-size:.72rem;color:var(--mkt-ink-soft);margin-top:.4rem;opacity:.85;}

.mkt-honest-proof{margin-top:1.4rem;font-size:.88rem;color:var(--mkt-ink-soft);}

/* A hero jobb oldali kártyája MÁR NEM funkcionális bejelentkező kártya
   (lásd public/landing.js heroVisualHTML() komment) — tisztán
   illusztratív mini-előnézet. */
.mkt-hero-visual-card{
  background:var(--mkt-surface);border:1px solid var(--line);border-radius:var(--radius);
  padding:1.4rem;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:1.1rem;
}
.mkt-hero-visual-list{display:flex;flex-direction:column;gap:.5rem;}
.mkt-hero-visual-list .mkt-mock-card{display:flex;align-items:center;justify-content:space-between;gap:.6rem;font-size:.78rem;padding:.6rem .75rem;}

/* Rendelő-kód beviteli modal ("Regisztráció → mint páciens") */
.mkt-modal-backdrop{
  position:fixed;inset:0;background:rgba(15,23,32,.55);display:flex;align-items:center;justify-content:center;
  padding:1.2rem;z-index:100;
}
.mkt-modal-card{
  background:var(--mkt-surface);border-radius:var(--radius);box-shadow:var(--shadow-lg);
  padding:1.8rem;max-width:380px;width:100%;position:relative;
}
.mkt-modal-close{
  position:absolute;top:.7rem;right:.7rem;background:none;border:none;font-size:1.4rem;line-height:1;
  color:var(--mkt-ink-soft);cursor:pointer;padding:.3rem;
}
.mkt-modal-close:hover{color:var(--mkt-ink);}
.mkt-modal-card h3{margin:0 0 .5rem;font-family:var(--mkt-display-font);font-size:1.25rem;font-weight:600;color:var(--mkt-ink);}

/* ---------- általános szekció ---------- */
.mkt-section{max-width:1180px;margin:0 auto;padding:4rem 1.5rem;}
.mkt-section h2{
  font-family:var(--mkt-display-font);font-size:clamp(1.5rem,2.6vw,2.1rem);text-align:center;
  margin:0 0 .7rem;font-weight:600;letter-spacing:-.01em;color:var(--mkt-ink);
}
.mkt-section .mkt-lead{text-align:center;color:var(--mkt-ink-soft);max-width:60ch;margin:0 auto 2.4rem;font-size:1rem;}

/* ---------- probléma ---------- */
.mkt-problem-list{max-width:62ch;margin:0 auto;display:flex;flex-direction:column;gap:1.1rem;}
.mkt-problem-item{
  display:flex;gap:.9rem;align-items:flex-start;font-size:1.08rem;line-height:1.55;color:var(--mkt-ink);
  padding:1rem 1.2rem;background:var(--mkt-surface);border:1px solid var(--line);border-radius:var(--radius);
}
.mkt-problem-item .mkt-quote-mark{font-family:var(--mkt-display-font);font-size:1.8rem;color:var(--mkt-accent);line-height:1;flex:none;}

/* ---------- hogyan működik ---------- */
.mkt-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem;}
.mkt-step{position:relative;}
.mkt-step-num{
  font-family:var(--mkt-display-font);font-size:.85rem;font-weight:600;color:var(--mkt-brand-600);
  letter-spacing:.04em;margin-bottom:.6rem;
}
.mkt-step h3{margin:0 0 .4rem;font-size:1rem;font-weight:700;color:var(--mkt-ink);}
.mkt-step p{margin:0 0 1rem;color:var(--mkt-ink-soft);font-size:.88rem;line-height:1.55;}

/* mini UI-mockupok — saját CSS-doboz, NEM stock fotó */
.mkt-mock{
  border:1px solid var(--line);border-radius:10px;background:var(--mkt-surface);padding:.7rem;box-shadow:var(--shadow);
  height:120px;display:flex;flex-direction:column;gap:.4rem;justify-content:center;
}
.mkt-mock-row{display:flex;align-items:center;gap:.5rem;}
.mkt-mock-dot{width:8px;height:8px;border-radius:50%;background:var(--mkt-brand-200);flex:none;}
.mkt-mock-bar{height:8px;border-radius:4px;background:var(--mkt-brand-50);flex:1;}
.mkt-mock-bar.is-accent{background:var(--mkt-brand-400);}
.mkt-mock-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;}
.mkt-mock-cell{aspect-ratio:1;border-radius:2px;background:var(--mkt-brand-50);}
.mkt-mock-cell.is-filled{background:var(--mkt-brand-400);}
.mkt-mock-card{border:1px solid var(--line);border-radius:6px;padding:.4rem .5rem;font-size:.68rem;color:var(--mkt-ink-soft);background:var(--mkt-surface);}
.mkt-mock-badge{display:inline-block;font-size:.62rem;font-weight:700;padding:.1rem .4rem;border-radius:999px;background:var(--mkt-brand-100);color:var(--mkt-brand-700);}

/* ---------- számok / bizonyíték ---------- */
.mkt-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem;}
.mkt-metric-card{background:var(--mkt-surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem;box-shadow:var(--shadow);}
.mkt-metric-num{font-family:var(--mkt-display-font);font-size:2.2rem;font-weight:600;color:var(--mkt-growth);margin-bottom:.3rem;font-variant-numeric:tabular-nums;}
.mkt-metric-label{font-size:.9rem;font-weight:600;color:var(--mkt-ink);margin-bottom:.9rem;}
.mkt-metric-source{font-size:.72rem;color:var(--mkt-ink-soft);margin-top:.8rem;line-height:1.5;}

/* ---------- kalkulátor ---------- */
.mkt-calc{
  max-width:900px;margin:0 auto;background:var(--mkt-surface);border:1px solid var(--line);border-radius:var(--radius);
  box-shadow:var(--shadow-lg);padding:2.2rem;
}
.mkt-calc-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.6rem;margin-bottom:1.8rem;}
.mkt-calc-field label{display:block;font-size:.85rem;color:var(--mkt-ink-soft);margin-bottom:.6rem;font-weight:600;}
.mkt-calc-field input[type="range"]{
  width:100%;accent-color:var(--mkt-brand-600);height:44px;padding:16px 0;
  /* 44px magas érintési sáv (a csúszka maga vékonyabb) — mobilon ujjal is jól kezelhető, a brief min. 44px-et kér. */
}
.mkt-calc-field input[type="number"]{
  width:100%;padding:.7rem .8rem;border:1px solid var(--line);border-radius:8px;font-family:inherit;font-size:1rem;
  background:var(--mkt-surface);color:var(--mkt-ink);min-height:44px;
}
.mkt-calc-field .mkt-calc-value{font-weight:700;color:var(--mkt-brand-700);font-variant-numeric:tabular-nums;}
.mkt-calc-result{
  text-align:center;padding:1.6rem;background:var(--mkt-brand-50);border-radius:12px;
}
.mkt-calc-result-label{font-size:.85rem;color:var(--mkt-ink-soft);margin-bottom:.4rem;}
.mkt-calc-result-value{font-family:var(--mkt-display-font);font-size:2.6rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--mkt-growth);}

/* összehasonlító oszlopdiagram: "jelenlegi" vs "tagsággal" */
.mkt-calc-compare{display:flex;gap:2rem;justify-content:center;align-items:flex-end;margin-top:1.4rem;height:100px;}
.mkt-calc-bar-col{display:flex;flex-direction:column;align-items:center;gap:.5rem;width:110px;}
.mkt-calc-bar{width:56px;border-radius:6px 6px 0 0;transition:height .5s var(--mkt-ease);}
.mkt-calc-bar.is-current{background:var(--mkt-brand-200);}
.mkt-calc-bar.is-membership{background:var(--mkt-growth);}
.mkt-calc-bar-label{font-size:.74rem;color:var(--mkt-ink-soft);text-align:center;line-height:1.3;}

.mkt-calc-cta{text-align:center;margin-top:1.8rem;overflow:hidden;max-height:0;opacity:0;transition:max-height .4s var(--mkt-ease),opacity .4s var(--mkt-ease);}
.mkt-calc-cta.is-visible{max-height:120px;opacity:1;margin-top:1.8rem;}

/* ---------- kinek való ---------- */
.mkt-audience-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.6rem;}
.mkt-audience-card{background:var(--mkt-surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.8rem;box-shadow:var(--shadow);}
.mkt-audience-card h3{font-family:var(--mkt-display-font);font-size:1.3rem;font-weight:600;margin:0 0 .3rem;color:var(--mkt-ink);}
.mkt-audience-card .mkt-audience-sub{color:var(--mkt-ink-soft);font-size:.88rem;margin-bottom:1.1rem;}
.mkt-audience-list{list-style:none;margin:0 0 1.4rem;padding:0;display:flex;flex-direction:column;gap:.6rem;}
.mkt-audience-list li{display:flex;gap:.6rem;align-items:flex-start;font-size:.9rem;color:var(--mkt-ink);line-height:1.5;}
.mkt-audience-list .mkt-check{flex:none;color:var(--mkt-growth);font-weight:700;}

/* ---------- GYIK ---------- */
.mkt-faq-list{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:.7rem;}
.mkt-faq-item{border:1px solid var(--line);border-radius:10px;background:var(--mkt-surface);overflow:hidden;}
.mkt-faq-q{
  width:100%;text-align:left;padding:1.1rem 1.3rem;background:none;border:none;cursor:pointer;
  font-family:inherit;font-size:.96rem;font-weight:700;color:var(--mkt-ink);
  display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:44px;
}
.mkt-faq-icon{flex:none;font-size:1.1rem;color:var(--mkt-brand-600);transition:transform .2s var(--mkt-ease);}
.mkt-faq-item.is-open .mkt-faq-icon{transform:rotate(45deg);}
.mkt-faq-a{padding:0 1.3rem 1.1rem;color:var(--mkt-ink-soft);font-size:.9rem;line-height:1.6;max-width:68ch;}

/* ---------- záró CTA — az EGYETLEN sötét (--mkt-ink) blokk ---------- */
.mkt-final-cta{background:var(--mkt-ink);color:#fff;text-align:center;padding:4.5rem 1.5rem;}
.mkt-final-cta h2{
  font-family:var(--mkt-display-font);font-size:clamp(1.7rem,3.4vw,2.4rem);font-weight:600;
  margin:0 0 1rem;max-width:36ch;margin-left:auto;margin-right:auto;color:#fff;
}
.mkt-final-cta-risks{
  display:flex;gap:1.6rem;justify-content:center;flex-wrap:wrap;margin-top:1.8rem;
  font-size:.82rem;color:rgba(255,255,255,.72);
}
.mkt-final-cta-risks span{display:flex;align-items:center;gap:.4rem;}
.mkt-final-cta-risks .mkt-dot{width:5px;height:5px;border-radius:50%;background:var(--mkt-brand-300);display:inline-block;}

/* ---------- lead-űrlap ---------- */
.mkt-form-wrap{
  max-width:520px;margin:0 auto;background:var(--mkt-surface);border:1px solid var(--line);
  border-radius:var(--radius);box-shadow:var(--shadow);padding:2rem;
}
.mkt-form-success{text-align:center;padding:1.2rem 0;}
.mkt-form-success .mkt-check-big{
  width:52px;height:52px;border-radius:50%;background:var(--mkt-brand-50);color:var(--mkt-growth);
  display:flex;align-items:center;justify-content:center;font-size:1.6rem;font-weight:700;margin:0 auto 1rem;
}
.mkt-consent-row{display:flex;gap:.6rem;align-items:flex-start;margin:.9rem 0 1.1rem;font-size:.82rem;color:var(--mkt-ink-soft);line-height:1.5;}
.mkt-consent-row input{margin-top:.2rem;flex:none;width:18px;height:18px;}
.mkt-consent-row a{color:var(--mkt-ink);}
.mkt-disclaimer-box{
  max-width:60ch;margin:1.6rem auto 0;text-align:center;font-size:.76rem;color:var(--mkt-ink-soft);line-height:1.5;
}

/* ---------- footer ---------- */
.mkt-footer{background:var(--surface-2);border-top:1px solid var(--line);}
.mkt-footer-inner{max-width:1180px;margin:0 auto;padding:2.4rem 1.5rem;}
.mkt-footer-links{display:flex;gap:1.5rem;flex-wrap:wrap;justify-content:center;margin-bottom:1.2rem;}
.mkt-footer-links a{color:var(--mkt-ink-soft);text-decoration:none;font-size:.85rem;}
.mkt-footer-links a:hover{color:var(--mkt-ink);}
.mkt-footer-legal{
  max-width:70ch;margin:0 auto;text-align:center;font-size:.75rem;color:var(--mkt-ink-soft);line-height:1.6;
}
.mkt-footer-copy{text-align:center;font-size:.78rem;color:var(--mkt-ink-soft);margin-top:1rem;}

/* ---------- cookie sáv — "Elutasítom" UGYANOLYAN hangsúlyos, mint az "Elfogadom" ---------- */
.mkt-cookie-bar{
  position:fixed;left:0;right:0;bottom:0;z-index:90;background:var(--mkt-ink);color:#fff;
  padding:1.1rem 1.5rem calc(1.1rem + env(safe-area-inset-bottom));box-shadow:0 -4px 16px rgba(0,0,0,.2);
  display:flex;align-items:center;justify-content:center;gap:1.5rem;flex-wrap:wrap;
}
.mkt-cookie-bar p{margin:0;font-size:.85rem;max-width:52ch;color:rgba(255,255,255,.78);}
.mkt-cookie-bar p a{color:#fff;}
.mkt-cookie-actions{display:flex;gap:.7rem;flex:none;}
/* mindkét gomb .mkt-btn-primary-inverse/.mkt-btn-secondary-inverse
   PÁROSAN egyenlő vizuális súllyal — egyik sincs "elrejtve" */
.mkt-btn-secondary-inverse{background:transparent;border-color:rgba(255,255,255,.5);color:#fff;}
.mkt-btn-secondary-inverse:hover{background:rgba(255,255,255,.1);}

/* ---------- mobil sticky CTA ---------- */
.mkt-sticky-cta{
  position:fixed;left:0;right:0;bottom:0;z-index:80;background:var(--mkt-ink);
  padding:.8rem 1rem calc(.8rem + env(safe-area-inset-bottom));
  display:none;box-shadow:0 -4px 16px rgba(0,0,0,.2);
  transform:translateY(100%);transition:transform .2s var(--mkt-ease);
}
.mkt-sticky-cta.is-visible{transform:translateY(0);}
.mkt-sticky-cta .mkt-btn{width:100%;min-height:48px;}
@media (max-width:760px){
  .mkt-sticky-cta{display:block;}
}

/* ---------- reszponzív ---------- */
@media (max-width:900px){
  .mkt-hero-grid{grid-template-columns:1fr;gap:2rem;}
  .mkt-hero-login{order:-1;}
  .mkt-steps{grid-template-columns:1fr;}
  .mkt-metrics{grid-template-columns:1fr;}
  .mkt-audience-grid{grid-template-columns:1fr;}
  .mkt-calc-grid{grid-template-columns:1fr;}
}
@media (max-width:760px){
  .mkt-hero-copy h1{font-size:1.85rem;}
  .mkt-nav{padding:1rem;}
  .mkt-final-cta-risks{flex-direction:column;align-items:center;gap:.6rem;}
  .mkt-calc-compare{gap:1rem;}
}

/* ---------- jogi vázlat-oldalak (/adatkezeles/, /aszf/, /impresszum/) ---------- */
.legal-wrap{max-width:760px;margin:0 auto;padding:3rem 1.5rem 4rem;}
.legal-back{color:var(--mkt-ink-soft);text-decoration:none;font-size:.85rem;display:inline-block;margin-bottom:1.5rem;}
.legal-back:hover{color:var(--mkt-ink);}
.legal-draft-banner{
  background:var(--warn-soft);border:1px solid var(--warn);border-radius:var(--radius);
  padding:1rem 1.2rem;margin-bottom:2rem;font-size:.88rem;color:var(--warn);line-height:1.55;
}
.legal-wrap h1{font-family:var(--mkt-display-font);font-size:1.8rem;margin:0 0 1.5rem;color:var(--mkt-ink);}
.legal-wrap h2{font-size:1.1rem;margin:2rem 0 .6rem;color:var(--mkt-ink);}
.legal-wrap p{color:var(--mkt-ink-soft);line-height:1.65;font-size:.92rem;}
